From d285c3113ffac94abe2ced1cc90d2cc6fb890009 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 8 Jul 2025 17:07:50 +0300 Subject: [PATCH 001/270] init mow plant harvest blueprint --- .../beanstalk/facets/farm/TractorFacet.sol | 2 +- .../ecosystem/MowPlantHarvestBlueprint.sol | 196 ++++++++++++++++++ contracts/interfaces/IBeanstalk.sol | 26 +++ 3 files changed, 223 insertions(+), 1 deletion(-) create mode 100644 contracts/ecosystem/MowPlantHarvestBlueprint.sol diff --git a/contracts/beanstalk/facets/farm/TractorFacet.sol b/contracts/beanstalk/facets/farm/TractorFacet.sol index b5561e63..216f82d1 100644 --- a/contracts/beanstalk/facets/farm/TractorFacet.sol +++ b/contracts/beanstalk/facets/farm/TractorFacet.sol @@ -121,7 +121,7 @@ contract TractorFacet is Invariable, ReentrancyGuard { } /** - * @notice Destroy existing blueprint + * @notice Destroy existing blueprint by incrementing the nonce to type(uint256).max */ function cancelBlueprint( LibTractor.Requisition calldata requisition diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol new file mode 100644 index 00000000..cda429b1 --- /dev/null +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -0,0 +1,196 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {TractorHelpers} from "./TractorHelpers.sol"; +import {PerFunctionPausable} from "./PerFunctionPausable.sol"; +import {BeanstalkPrice} from "./price/BeanstalkPrice.sol"; +import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; + +/** + * @title MowPlantHarvestBlueprint + * @author DefaultJuice + * @notice Contract for mowing, planting and harvesting with Tractor, with a number of conditions + */ +contract MowPlantHarvestBlueprint is PerFunctionPausable { + uint256 internal constant STALK_PER_BEAN = 1e10; + + IBeanstalk public immutable beanstalk; + TractorHelpers public immutable tractorHelpers; + + /** + * @notice Struct to hold operator parameters + * @param whitelistedOperators What operators are allowed to execute the blueprint + * @param tipAddress Address to send tip to + * @param operatorTipAmount Amount of tip to pay to operator + */ + struct OperatorParams { + address[] whitelistedOperators; + address tipAddress; + int256 operatorTipAmount; + } + + constructor( + address _beanstalk, + address _owner, + address _tractorHelpers + ) PerFunctionPausable(_owner) { + beanstalk = IBeanstalk(_beanstalk); + tractorHelpers = TractorHelpers(_tractorHelpers); + } + + + function mowPlantHarvestBlueprint() external payable whenFunctionNotPaused { + // get order hash + bytes32 orderHash = beanstalk.getCurrentBlueprintHash(); + // get the tractor user + address account = beanstalk.tractorUser(); + + // get the user state from the protocol + ( + uint256 totalClaimableStalk, + uint256 totalPlantableBeans, + uint256[] memory harvestablePlots + ) = _getUserState(account); + + // validate params and revert early if invalid + _validateParams(); + + // Execute the withdrawal plan to withdraw the tip amount + // note: This is overkill just to withdraw the tip but whatever + // tractorHelpers.withdrawBeansFromSources( + // vars.account, + // params.sowParams.sourceTokenIndices, + // vars.totalBeansNeeded, + // params.sowParams.maxGrownStalkPerBdv, + // slippageRatio, + // LibTransfer.To.INTERNAL, + // vars.withdrawalPlan + // ); + + // Tip the operator with the withdrawn beans + // tractorHelpers.tip( + // vars.beanToken, + // vars.account, + // vars.tipAddress, + // params.opParams.operatorTipAmount, + // LibTransfer.From.INTERNAL, + // LibTransfer.To.INTERNAL + // ); + + // if user can mow, try to mow + // this could be changed to a threshold as absolute value of claimable stalk + // or to a percentage of total user stalk + // note: prob want this to be conditional aka the user decides to claim if he has claimable stalk + // to avoid paying the tip for a marginal benefit. (could this be season based?) + if (totalClaimableStalk > 0) beanstalk.mowAll(account); + + // if user can plant, try to plant + // this could be changed to a threshold as an absolute value + // (or to a percentage of total portfolio size?) + // note: generally people would want to plant if they have any amount of plantable beans + // to get the compounding effect when printing + if (totalPlantableBeans > 0) beanstalk.plant(); + + // if user can harvest, try to harvest + // note: execute when harvestable pods are at least x? + // note: for sure one parameter should be if to redeposit to the silo or not + // note: if not deposited,for sure one parameter should be where the pinto should be sent (internal or external balance) + if (harvestablePlots.length > 0) { + beanstalk.harvest(beanstalk.activeField(), harvestablePlots, LibTransfer.To.INTERNAL); + } + } + + /** + * @notice helper function to get the user state to compare against parameters + */ + function _getUserState( + address account + ) + internal + view + returns ( + uint256 totalClaimableStalk, + uint256 totalPlantableBeans, + uint256[] memory harvestablePlots + ) + { + // get whitelisted tokens + address[] memory whitelistedTokens = beanstalk.getWhitelistedTokens(); + + // check how much claimable stalk the user by all whitelisted tokens combined + uint256[] memory grownStalks = beanstalk.balanceOfGrownStalkMultiple( + account, + whitelistedTokens + ); + + // sum it to get total claimable grown stalk + for (uint256 i = 0; i < grownStalks.length; i++) { + totalClaimableStalk += grownStalks[i]; + } + + // check if user has plantable beans + // increment total claimable stalk with stalk gained from plantable beans + totalPlantableBeans = beanstalk.balanceOfEarnedBeans(account); + // note: this should be counted towards the total only if the conditions for planting are met + totalClaimableStalk += totalPlantableBeans * STALK_PER_BEAN; + + // check if user has harvestable beans + // note: when harvesting, beans are not auto-deposited so no stalk is gained + harvestablePlots = userHarvestablePods(account); + + return (totalClaimableStalk, totalPlantableBeans, harvestablePlots); + } + + /** + * @notice helper function to get the total harvestable pods for a user + * @param account The address of the user + * @return harvestablePlots The harvestable plot ids for the user + */ + function userHarvestablePods( + address account + ) internal view returns (uint256[] memory harvestablePlots) { + // Get all plots for the user in the field + IBeanstalk.Plot[] memory plots = beanstalk.getPlotsFromAccount(account, beanstalk.activeField()); + uint256 harvestableIndex = beanstalk.harvestableIndex(beanstalk.activeField()); + + // First, count how many plots are at least partially harvestable + uint256 count; + for (uint256 i = 0; i < plots.length; i++) { + uint256 startIndex = plots[i].index; + uint256 plotPods = plots[i].pods; + if (startIndex < harvestableIndex) { + count++; + } + } + + // Allocate the array + harvestablePlots = new uint256[](count); + uint256 j = 0; + + // Now, fill the array and sum pods + for (uint256 i = 0; i < plots.length; i++) { + uint256 startIndex = plots[i].index; + uint256 plotPods = plots[i].pods; + + if (startIndex + plotPods <= harvestableIndex) { + // Fully harvestable + harvestablePlots[j++] = startIndex; + } else if (startIndex < harvestableIndex) { + // Partially harvestable + harvestablePlots[j++] = startIndex; + } + } + + return harvestablePlots; + } + + /** + * @notice Validates the initial parameters for the mow, plant and harvest operation + * params The MowPlantHarvestBlueprintStruct containing all parameters for the mow, plant and harvest operation + */ + function _validateParams() internal view { + // check if params are valid, whatever we decide + } +} diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index b132e036..88eb2104 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -37,6 +37,11 @@ interface IBeanstalk { uint128 bdv; } + struct Plot { + uint256 index; + uint256 pods; + } + struct Implementation { address target; bytes4 selector; @@ -140,6 +145,12 @@ interface IBeanstalk { function plant() external payable returns (uint256); + function harvest( + uint256 fieldId, + uint256[] calldata plots, + LibTransfer.To mode + ) external payable returns (uint256 beansHarvested); + function sowWithMin( uint256 beans, uint256 minTemperature, @@ -147,6 +158,14 @@ interface IBeanstalk { LibTransfer.From mode ) external payable returns (uint256 pods); + function getPlotsFromAccount(address account, uint256 fieldId) external view returns (Plot[] memory plots); + + function mowAll(address account) external payable; + + function activeField() external view returns (uint256); + + function harvestableIndex(uint256 fieldId) external view returns (uint256); + function stemTipForToken(address token) external view returns (int96 _stemTip); function sunriseBlock() external view returns (uint64); @@ -228,4 +247,11 @@ interface IBeanstalk { external view returns (WhitelistStatus[] memory _whitelistStatuses); + + function balanceOfGrownStalkMultiple( + address account, + address[] memory tokens + ) external view returns (uint256[] memory grownStalks); + + function balanceOfEarnedBeans(address account) external view returns (uint256 beans); } From 7e4bca03f95efde16122914342b6309440003cd2 Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 9 Jul 2025 12:28:22 +0300 Subject: [PATCH 002/270] progress until stack too deep --- .../ecosystem/MowPlantHarvestBlueprint.sol | 178 ++++++++++++++---- 1 file changed, 141 insertions(+), 37 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index cda429b1..7d27460a 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -14,6 +14,58 @@ import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol" * @notice Contract for mowing, planting and harvesting with Tractor, with a number of conditions */ contract MowPlantHarvestBlueprint is PerFunctionPausable { + /** + * @notice Event emitted when a mow, plant and harvest order is complete, or no longer executable due to min sow being less than min sow per season + * @param blueprintHash The hash of the blueprint + * @param publisher The address of the publisher + * @param totalAmountMowed The amount of beans mowed + * @param totalAmountPlanted The amount of beans planted + * @param totalAmountHarvested The amount of beans harvested + */ + event MowPlantHarvestOrderComplete( + bytes32 indexed blueprintHash, + address indexed publisher, + uint256 totalAmountMowed, + uint256 totalAmountPlanted, + uint256 totalAmountHarvested + ); + + /** + * @notice Main struct for mow, plant and harvest blueprint + * @param mowPlantHarvestParams Parameters related to mow, plant and harvest + * @param opParams Parameters related to operators + */ + struct MowPlantHarvestBlueprintStruct { + MowPlantHarvestParams mowPlantHarvestParams; + OperatorParams opParams; + } + + /** + * @notice Struct to hold mow, plant and harvest parameters + * @param minMowAmount The stalk threshold to mow + * @param minPlantAmount The earned beans threshold to plant + * @param minHarvestAmount The bean threshold to harvest + * --------------------------------------------------------- + * @param sourceTokenIndices Indices of source tokens to withdraw from + * @param maxGrownStalkPerBdv Maximum grown stalk per BDV allowed + * @param slippageRatio The price slippage ratio for a lp token withdrawal. + * Only applicable for lp token withdrawals. + * todo: add more parameters here if needed and validate them + */ + struct MowPlantHarvestParams { + // Regular parameters for mow, plant and harvest + uint256 minMowAmount; + uint256 minPlantAmount; + uint256 minHarvestAmount; + // Withdrawal plan parameters for tipping + uint8[] sourceTokenIndices; + uint256 maxGrownStalkPerBdv; + uint256 slippageRatio; + } + + // Mapping to track the last executed season for each order hash + mapping(bytes32 orderHash => uint32 lastExecutedSeason) public orderLastExecutedSeason; + uint256 internal constant STALK_PER_BEAN = 1e10; IBeanstalk public immutable beanstalk; @@ -40,64 +92,98 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { tractorHelpers = TractorHelpers(_tractorHelpers); } + /// @dev main entry point + function mowPlantHarvestBlueprint( + MowPlantHarvestBlueprintStruct calldata params + ) external payable whenFunctionNotPaused { + ////////////////////// Validation //////////////////////// - function mowPlantHarvestBlueprint() external payable whenFunctionNotPaused { // get order hash bytes32 orderHash = beanstalk.getCurrentBlueprintHash(); // get the tractor user address account = beanstalk.tractorUser(); + // get the tip address + address tipAddress = params.opParams.tipAddress; // get the user state from the protocol ( uint256 totalClaimableStalk, uint256 totalPlantableBeans, + uint256 totalHarvestablePods, uint256[] memory harvestablePlots ) = _getUserState(account); - // validate params and revert early if invalid - _validateParams(); + // validate blueprint + _validateBlueprint(orderHash); + + // validate order params and revert early if invalid + _validateParams(params); + + // if tip address is not set, set it to the operator + if (tipAddress == address(0)) tipAddress = beanstalk.operator(); + + ////////////////////// Withdrawal Plan and Tip //////////////////////// + + // Check if enough beans are available using getWithdrawalPlan + LibTractorHelpers.WithdrawalPlan memory tempPlan; + LibTractorHelpers.WithdrawalPlan memory plan = tractorHelpers + .getWithdrawalPlanExcludingPlan( + account, + params.mowPlantHarvestParams.sourceTokenIndices, + uint256(params.opParams.operatorTipAmount), + params.mowPlantHarvestParams.maxGrownStalkPerBdv, + tempPlan // Passed in plan is empty + ); // Execute the withdrawal plan to withdraw the tip amount - // note: This is overkill just to withdraw the tip but whatever - // tractorHelpers.withdrawBeansFromSources( - // vars.account, - // params.sowParams.sourceTokenIndices, - // vars.totalBeansNeeded, - // params.sowParams.maxGrownStalkPerBdv, - // slippageRatio, - // LibTransfer.To.INTERNAL, - // vars.withdrawalPlan - // ); + tractorHelpers.withdrawBeansFromSources( + account, + params.mowPlantHarvestParams.sourceTokenIndices, + uint256(params.opParams.operatorTipAmount), + params.mowPlantHarvestParams.maxGrownStalkPerBdv, + params.mowPlantHarvestParams.slippageRatio, + LibTransfer.To.INTERNAL, + plan + ); // Tip the operator with the withdrawn beans - // tractorHelpers.tip( - // vars.beanToken, - // vars.account, - // vars.tipAddress, - // params.opParams.operatorTipAmount, - // LibTransfer.From.INTERNAL, - // LibTransfer.To.INTERNAL - // ); + tractorHelpers.tip( + beanstalk.getBeanToken(), + account, + tipAddress, + params.opParams.operatorTipAmount, + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); + + ////////////////////// Mow, Plant and Harvest //////////////////////// + + // note: in case the user has harvestable pods or plantable beans, generally the blueprint should be executed + // in this case, we should check for those 2 scenarios first and proceed if the conditions are met // if user can mow, try to mow // this could be changed to a threshold as absolute value of claimable stalk // or to a percentage of total user stalk // note: prob want this to be conditional aka the user decides to claim if he has claimable stalk // to avoid paying the tip for a marginal benefit. (could this be season based?) - if (totalClaimableStalk > 0) beanstalk.mowAll(account); + if (totalClaimableStalk > params.mowPlantHarvestParams.minMowAmount) { + beanstalk.mowAll(account); + } // if user can plant, try to plant // this could be changed to a threshold as an absolute value // (or to a percentage of total portfolio size?) // note: generally people would want to plant if they have any amount of plantable beans // to get the compounding effect when printing - if (totalPlantableBeans > 0) beanstalk.plant(); + if (totalPlantableBeans > params.mowPlantHarvestParams.minPlantAmount) { + beanstalk.plant(); + } // if user can harvest, try to harvest // note: execute when harvestable pods are at least x? // note: for sure one parameter should be if to redeposit to the silo or not // note: if not deposited,for sure one parameter should be where the pinto should be sent (internal or external balance) - if (harvestablePlots.length > 0) { + if (totalHarvestablePods > params.mowPlantHarvestParams.minHarvestAmount) { beanstalk.harvest(beanstalk.activeField(), harvestablePlots, LibTransfer.To.INTERNAL); } } @@ -113,6 +199,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { returns ( uint256 totalClaimableStalk, uint256 totalPlantableBeans, + uint256 totalHarvestablePods, uint256[] memory harvestablePlots ) { @@ -138,21 +225,25 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // check if user has harvestable beans // note: when harvesting, beans are not auto-deposited so no stalk is gained - harvestablePlots = userHarvestablePods(account); + (totalHarvestablePods, harvestablePlots) = _userHarvestablePods(account); - return (totalClaimableStalk, totalPlantableBeans, harvestablePlots); + return (totalClaimableStalk, totalPlantableBeans, totalHarvestablePods, harvestablePlots); } /** - * @notice helper function to get the total harvestable pods for a user + * @notice Helper function to get the total harvestable pods and plots for a user * @param account The address of the user + * @return totalHarvestablePods The total amount of harvestable pods * @return harvestablePlots The harvestable plot ids for the user */ - function userHarvestablePods( + function _userHarvestablePods( address account - ) internal view returns (uint256[] memory harvestablePlots) { + ) internal view returns (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) { // Get all plots for the user in the field - IBeanstalk.Plot[] memory plots = beanstalk.getPlotsFromAccount(account, beanstalk.activeField()); + IBeanstalk.Plot[] memory plots = beanstalk.getPlotsFromAccount( + account, + beanstalk.activeField() + ); uint256 harvestableIndex = beanstalk.harvestableIndex(beanstalk.activeField()); // First, count how many plots are at least partially harvestable @@ -177,20 +268,33 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { if (startIndex + plotPods <= harvestableIndex) { // Fully harvestable harvestablePlots[j++] = startIndex; + totalHarvestablePods += plotPods; } else if (startIndex < harvestableIndex) { // Partially harvestable harvestablePlots[j++] = startIndex; + totalHarvestablePods += harvestableIndex - startIndex; } } - return harvestablePlots; + return (totalHarvestablePods, harvestablePlots); } - /** - * @notice Validates the initial parameters for the mow, plant and harvest operation - * params The MowPlantHarvestBlueprintStruct containing all parameters for the mow, plant and harvest operation - */ - function _validateParams() internal view { - // check if params are valid, whatever we decide + /// @dev validates the parameters for the mow, plant and harvest operation + function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal view { + require( + params.mowPlantHarvestParams.sourceTokenIndices.length > 0, + "Must provide at least one source token" + ); + + /// todo: add more validation here depending on the parameters + } + + /// @dev validates info related to the blueprint such as the order hash and the last executed season + function _validateBlueprint(bytes32 orderHash) internal view { + require(orderHash != bytes32(0), "No active blueprint, function must run from Tractor"); + require( + orderLastExecutedSeason[orderHash] < beanstalk.time().current, + "Blueprint already executed this season" + ); } } From 582b043b8e61805645bf0780ad7cd7ca153cf325 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 10 Jul 2025 10:52:25 +0300 Subject: [PATCH 003/270] fix stack doo deep, split user state validation --- .../ecosystem/MowPlantHarvestBlueprint.sol | 110 ++++++++++++++---- 1 file changed, 87 insertions(+), 23 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 7d27460a..3dd420c1 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -40,6 +40,11 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { OperatorParams opParams; } + // we want them to mow continuously from a protocol perspective + // the user wants to mow when the system is about to print (good point) + // for planting--> use min pinto amount to plant --> or as a % of tip compared to pinto planted + // for harvesting --> plots are partially harvestable. do we want to harvest partial plots? + /** * @notice Struct to hold mow, plant and harvest parameters * @param minMowAmount The stalk threshold to mow @@ -83,6 +88,17 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { int256 operatorTipAmount; } + struct MowPlantHarvestLocalVars { + bytes32 orderHash; + address account; + address tipAddress; + uint256 totalClaimableStalk; + uint256 totalPlantableBeans; + uint256 totalHarvestablePods; + uint256[] harvestablePlots; + LibTractorHelpers.WithdrawalPlan plan; + } + constructor( address _beanstalk, address _owner, @@ -96,31 +112,34 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { function mowPlantHarvestBlueprint( MowPlantHarvestBlueprintStruct calldata params ) external payable whenFunctionNotPaused { + // Initialize local variables + MowPlantHarvestLocalVars memory vars; + ////////////////////// Validation //////////////////////// // get order hash - bytes32 orderHash = beanstalk.getCurrentBlueprintHash(); + vars.orderHash = beanstalk.getCurrentBlueprintHash(); // get the tractor user - address account = beanstalk.tractorUser(); + vars.account = beanstalk.tractorUser(); // get the tip address - address tipAddress = params.opParams.tipAddress; + vars.tipAddress = params.opParams.tipAddress; - // get the user state from the protocol + // get the user state from the protocol and validate against params ( - uint256 totalClaimableStalk, - uint256 totalPlantableBeans, - uint256 totalHarvestablePods, - uint256[] memory harvestablePlots - ) = _getUserState(account); + vars.totalClaimableStalk, + vars.totalPlantableBeans, + vars.totalHarvestablePods, + vars.harvestablePlots + ) = _getAndValidateUserState(vars.account, params); // validate blueprint - _validateBlueprint(orderHash); + _validateBlueprint(vars.orderHash); // validate order params and revert early if invalid _validateParams(params); // if tip address is not set, set it to the operator - if (tipAddress == address(0)) tipAddress = beanstalk.operator(); + if (vars.tipAddress == address(0)) vars.tipAddress = beanstalk.operator(); ////////////////////// Withdrawal Plan and Tip //////////////////////// @@ -128,7 +147,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { LibTractorHelpers.WithdrawalPlan memory tempPlan; LibTractorHelpers.WithdrawalPlan memory plan = tractorHelpers .getWithdrawalPlanExcludingPlan( - account, + vars.account, params.mowPlantHarvestParams.sourceTokenIndices, uint256(params.opParams.operatorTipAmount), params.mowPlantHarvestParams.maxGrownStalkPerBdv, @@ -137,7 +156,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // Execute the withdrawal plan to withdraw the tip amount tractorHelpers.withdrawBeansFromSources( - account, + vars.account, params.mowPlantHarvestParams.sourceTokenIndices, uint256(params.opParams.operatorTipAmount), params.mowPlantHarvestParams.maxGrownStalkPerBdv, @@ -149,8 +168,8 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // Tip the operator with the withdrawn beans tractorHelpers.tip( beanstalk.getBeanToken(), - account, - tipAddress, + vars.account, + vars.tipAddress, params.opParams.operatorTipAmount, LibTransfer.From.INTERNAL, LibTransfer.To.INTERNAL @@ -166,8 +185,8 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // or to a percentage of total user stalk // note: prob want this to be conditional aka the user decides to claim if he has claimable stalk // to avoid paying the tip for a marginal benefit. (could this be season based?) - if (totalClaimableStalk > params.mowPlantHarvestParams.minMowAmount) { - beanstalk.mowAll(account); + if (vars.totalClaimableStalk > params.mowPlantHarvestParams.minMowAmount) { + beanstalk.mowAll(vars.account); } // if user can plant, try to plant @@ -175,7 +194,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // (or to a percentage of total portfolio size?) // note: generally people would want to plant if they have any amount of plantable beans // to get the compounding effect when printing - if (totalPlantableBeans > params.mowPlantHarvestParams.minPlantAmount) { + if (vars.totalPlantableBeans > params.mowPlantHarvestParams.minPlantAmount) { beanstalk.plant(); } @@ -183,11 +202,58 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // note: execute when harvestable pods are at least x? // note: for sure one parameter should be if to redeposit to the silo or not // note: if not deposited,for sure one parameter should be where the pinto should be sent (internal or external balance) - if (totalHarvestablePods > params.mowPlantHarvestParams.minHarvestAmount) { - beanstalk.harvest(beanstalk.activeField(), harvestablePlots, LibTransfer.To.INTERNAL); + if (vars.totalHarvestablePods > params.mowPlantHarvestParams.minHarvestAmount) { + beanstalk.harvest( + beanstalk.activeField(), + vars.harvestablePlots, + LibTransfer.To.INTERNAL + ); } } + /** + * @notice Helper function to get the user state and validate against parameters + * @param account The address of the user + * @param params The parameters for the mow, plant and harvest operation + * @return totalClaimableStalk The total amount of claimable stalk + * @return totalPlantableBeans The total amount of plantable beans + * @return totalHarvestablePods The total amount of harvestable pods + */ + function _getAndValidateUserState( + address account, + MowPlantHarvestBlueprintStruct calldata params + ) + internal + view + returns ( + uint256 totalClaimableStalk, + uint256 totalPlantableBeans, + uint256 totalHarvestablePods, + uint256[] memory harvestablePlots + ) + { + // get user state + ( + totalClaimableStalk, + totalPlantableBeans, + totalHarvestablePods, + harvestablePlots + ) = _getUserState(account); + + // validate params - only revert if none of the conditions are met + bool canMow = totalClaimableStalk >= params.mowPlantHarvestParams.minMowAmount; + bool canPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; + bool canHarvest = totalHarvestablePods >= params.mowPlantHarvestParams.minHarvestAmount; + + require( + canMow || canPlant || canHarvest, + "None of the mow, plant or harvest conditions are met" + ); + + // return user state + return (totalClaimableStalk, totalPlantableBeans, totalHarvestablePods, harvestablePlots); + } + /** * @notice helper function to get the user state to compare against parameters */ @@ -250,7 +316,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 count; for (uint256 i = 0; i < plots.length; i++) { uint256 startIndex = plots[i].index; - uint256 plotPods = plots[i].pods; if (startIndex < harvestableIndex) { count++; } @@ -280,12 +345,11 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } /// @dev validates the parameters for the mow, plant and harvest operation - function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal view { + function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal pure { require( params.mowPlantHarvestParams.sourceTokenIndices.length > 0, "Must provide at least one source token" ); - /// todo: add more validation here depending on the parameters } From 2bb95c5afa9f86073d03c6e65b35033b71ed4fc4 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 10 Jul 2025 14:30:39 +0300 Subject: [PATCH 004/270] add more parameters, redeposit if needed, notes --- .../ecosystem/MowPlantHarvestBlueprint.sol | 66 ++++++++++++------- 1 file changed, 43 insertions(+), 23 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 3dd420c1..12053597 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -40,10 +40,28 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { OperatorParams opParams; } - // we want them to mow continuously from a protocol perspective - // the user wants to mow when the system is about to print (good point) - // for planting--> use min pinto amount to plant --> or as a % of tip compared to pinto planted - // for harvesting --> plots are partially harvestable. do we want to harvest partial plots? + + /////////////////////// Parameters notes //////////////////////// + // Mow: + // We want them to mow continuously from a protocol perspective for stalk to be as real time as possible + // The user wants to mow when the system is about to print (what does that mean? maybe a deltaB threshold?) + //////////////////////////////////////////////////////////////// + // Plant: + // Generally people would want to plant if they have any amount of plantable beans + // to get the compounding effect when printing. + // One simple parameter is a min plant amount as a threshold after which the user would want to plant. + // We can protect against them losing money from tips so that a new parameter should be + // to plant if the plantable beans are more than the tip amount. + // Or whether the tip is a minimum percentage of the plantable beans. + //////////////////////////////////////////////////////////////// + // Harvest: + // Plots are partially harvestable. Do we want to harvest partial plots? + // One parameter could be whether to harvest partial plots or not. + // For sure one parameter should be if to redeposit to the silo or not. + // Again, like planting, we can protect against them losing money from tips so that a new parameter should be + // to harvest if the harvested beans are more than the tip amount. + // Or whether the tip is a minimum percentage of the harvested beans. + //////////////////////////////////////////////////////////////// /** * @notice Struct to hold mow, plant and harvest parameters @@ -62,6 +80,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 minMowAmount; uint256 minPlantAmount; uint256 minHarvestAmount; + // Harvest specific parameters + bool shouldRedeposit; + // Where to send the harvested beans (only applicable if shouldRedeposit is false from a user pov) + LibTransfer.To harvestDestination; // Withdrawal plan parameters for tipping uint8[] sourceTokenIndices; uint256 maxGrownStalkPerBdv; @@ -144,14 +166,13 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ////////////////////// Withdrawal Plan and Tip //////////////////////// // Check if enough beans are available using getWithdrawalPlan - LibTractorHelpers.WithdrawalPlan memory tempPlan; LibTractorHelpers.WithdrawalPlan memory plan = tractorHelpers .getWithdrawalPlanExcludingPlan( vars.account, params.mowPlantHarvestParams.sourceTokenIndices, uint256(params.opParams.operatorTipAmount), params.mowPlantHarvestParams.maxGrownStalkPerBdv, - tempPlan // Passed in plan is empty + vars.plan // Passed in plan is empty ); // Execute the withdrawal plan to withdraw the tip amount @@ -178,36 +199,35 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ////////////////////// Mow, Plant and Harvest //////////////////////// // note: in case the user has harvestable pods or plantable beans, generally the blueprint should be executed - // in this case, we should check for those 2 scenarios first and proceed if the conditions are met + // in this case, we should check for those 2 scenarios first and proceed if the conditions are met. + // If plant or harvest are executed, we should mow by default. - // if user can mow, try to mow - // this could be changed to a threshold as absolute value of claimable stalk - // or to a percentage of total user stalk - // note: prob want this to be conditional aka the user decides to claim if he has claimable stalk - // to avoid paying the tip for a marginal benefit. (could this be season based?) + // if user should mow, try to mow if (vars.totalClaimableStalk > params.mowPlantHarvestParams.minMowAmount) { beanstalk.mowAll(vars.account); } - // if user can plant, try to plant - // this could be changed to a threshold as an absolute value - // (or to a percentage of total portfolio size?) - // note: generally people would want to plant if they have any amount of plantable beans - // to get the compounding effect when printing + // if user should plant, try to plant if (vars.totalPlantableBeans > params.mowPlantHarvestParams.minPlantAmount) { beanstalk.plant(); } - // if user can harvest, try to harvest - // note: execute when harvestable pods are at least x? - // note: for sure one parameter should be if to redeposit to the silo or not - // note: if not deposited,for sure one parameter should be where the pinto should be sent (internal or external balance) + // if user should harvest, try to harvest and redeposit if desired if (vars.totalHarvestablePods > params.mowPlantHarvestParams.minHarvestAmount) { - beanstalk.harvest( + uint256 harvestedPods = beanstalk.harvest( beanstalk.activeField(), vars.harvestablePlots, - LibTransfer.To.INTERNAL + params.mowPlantHarvestParams.harvestDestination ); + + // if the user wants to redeposit, pull them from the harvest destination and deposit into silo + if (params.mowPlantHarvestParams.shouldRedeposit) { + beanstalk.deposit( + beanstalk.getBeanToken(), + harvestedPods, + params.mowPlantHarvestParams.harvestDestination + ); + } } } From 4be908155094e91e01aab34ebc137a1a10bd10ea Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 10 Jul 2025 14:48:49 +0300 Subject: [PATCH 005/270] remove duplicate logic, update last executed season --- .../ecosystem/MowPlantHarvestBlueprint.sol | 92 ++++++++++++------- 1 file changed, 58 insertions(+), 34 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 12053597..85c256b8 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -40,7 +40,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { OperatorParams opParams; } - /////////////////////// Parameters notes //////////////////////// // Mow: // We want them to mow continuously from a protocol perspective for stalk to be as real time as possible @@ -51,7 +50,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // to get the compounding effect when printing. // One simple parameter is a min plant amount as a threshold after which the user would want to plant. // We can protect against them losing money from tips so that a new parameter should be - // to plant if the plantable beans are more than the tip amount. + // to plant if the plantable beans are more than the tip amount. // Or whether the tip is a minimum percentage of the plantable beans. //////////////////////////////////////////////////////////////// // Harvest: @@ -59,9 +58,11 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // One parameter could be whether to harvest partial plots or not. // For sure one parameter should be if to redeposit to the silo or not. // Again, like planting, we can protect against them losing money from tips so that a new parameter should be - // to harvest if the harvested beans are more than the tip amount. + // to harvest if the harvested beans are more than the tip amount. // Or whether the tip is a minimum percentage of the harvested beans. //////////////////////////////////////////////////////////////// + // General: + // If someone plants or harvests, we should mow by default. /** * @notice Struct to hold mow, plant and harvest parameters @@ -93,8 +94,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // Mapping to track the last executed season for each order hash mapping(bytes32 orderHash => uint32 lastExecutedSeason) public orderLastExecutedSeason; - uint256 internal constant STALK_PER_BEAN = 1e10; - IBeanstalk public immutable beanstalk; TractorHelpers public immutable tractorHelpers; @@ -110,6 +109,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { int256 operatorTipAmount; } + /** + * @notice Local variables for the mow, plant and harvest function + * @dev Used to avoid stack too deep errors + */ struct MowPlantHarvestLocalVars { bytes32 orderHash; address account; @@ -117,6 +120,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 totalClaimableStalk; uint256 totalPlantableBeans; uint256 totalHarvestablePods; + bool shouldMow; + bool shouldPlant; + bool shouldHarvest; uint256[] harvestablePlots; LibTractorHelpers.WithdrawalPlan plan; } @@ -151,7 +157,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { vars.totalClaimableStalk, vars.totalPlantableBeans, vars.totalHarvestablePods, - vars.harvestablePlots + vars.harvestablePlots, + vars.shouldMow, + vars.shouldPlant, + vars.shouldHarvest ) = _getAndValidateUserState(vars.account, params); // validate blueprint @@ -198,37 +207,38 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ////////////////////// Mow, Plant and Harvest //////////////////////// - // note: in case the user has harvestable pods or plantable beans, generally the blueprint should be executed - // in this case, we should check for those 2 scenarios first and proceed if the conditions are met. - // If plant or harvest are executed, we should mow by default. + // Check if user should harvest or plant + // In the case a harvest or plant is executed, mow by default + if (vars.shouldPlant || vars.shouldHarvest) vars.shouldMow = true; - // if user should mow, try to mow - if (vars.totalClaimableStalk > params.mowPlantHarvestParams.minMowAmount) { - beanstalk.mowAll(vars.account); - } + // Execute operations in order: mow first (if needed), then plant, then harvest + if (vars.shouldMow) beanstalk.mowAll(vars.account); - // if user should plant, try to plant - if (vars.totalPlantableBeans > params.mowPlantHarvestParams.minPlantAmount) { - beanstalk.plant(); - } + // Plant if the conditions are met + if (vars.shouldPlant) beanstalk.plant(); - // if user should harvest, try to harvest and redeposit if desired - if (vars.totalHarvestablePods > params.mowPlantHarvestParams.minHarvestAmount) { + // Harvest if the conditions are met + if (vars.shouldHarvest) { uint256 harvestedPods = beanstalk.harvest( beanstalk.activeField(), vars.harvestablePlots, params.mowPlantHarvestParams.harvestDestination ); + // Determine the deposit mode based on the harvest destination + LibTransfer.From depositMode = params.mowPlantHarvestParams.harvestDestination == + LibTransfer.To.EXTERNAL + ? LibTransfer.From.EXTERNAL + : LibTransfer.From.INTERNAL; + // if the user wants to redeposit, pull them from the harvest destination and deposit into silo if (params.mowPlantHarvestParams.shouldRedeposit) { - beanstalk.deposit( - beanstalk.getBeanToken(), - harvestedPods, - params.mowPlantHarvestParams.harvestDestination - ); + beanstalk.deposit(beanstalk.getBeanToken(), harvestedPods, depositMode); } } + + // Update the last executed season for this blueprint + updateLastExecutedSeason(vars.orderHash, beanstalk.time().current); } /** @@ -249,7 +259,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 totalClaimableStalk, uint256 totalPlantableBeans, uint256 totalHarvestablePods, - uint256[] memory harvestablePlots + uint256[] memory harvestablePlots, + bool shouldMow, + bool shouldPlant, + bool shouldHarvest ) { // get user state @@ -261,21 +274,31 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ) = _getUserState(account); // validate params - only revert if none of the conditions are met - bool canMow = totalClaimableStalk >= params.mowPlantHarvestParams.minMowAmount; - bool canPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; - bool canHarvest = totalHarvestablePods >= params.mowPlantHarvestParams.minHarvestAmount; + shouldMow = totalClaimableStalk >= params.mowPlantHarvestParams.minMowAmount; + shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; + shouldHarvest = totalHarvestablePods >= params.mowPlantHarvestParams.minHarvestAmount; require( - canMow || canPlant || canHarvest, + shouldMow || shouldPlant || shouldHarvest, "None of the mow, plant or harvest conditions are met" ); // return user state - return (totalClaimableStalk, totalPlantableBeans, totalHarvestablePods, harvestablePlots); + return ( + totalClaimableStalk, + totalPlantableBeans, + totalHarvestablePods, + harvestablePlots, + shouldMow, + shouldPlant, + shouldHarvest + ); } /** * @notice helper function to get the user state to compare against parameters + * @dev Increasing the total claimable stalk when planting or harvesting does not really matter + * since we mow by default if we plant or harvest */ function _getUserState( address account @@ -304,13 +327,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } // check if user has plantable beans - // increment total claimable stalk with stalk gained from plantable beans totalPlantableBeans = beanstalk.balanceOfEarnedBeans(account); - // note: this should be counted towards the total only if the conditions for planting are met - totalClaimableStalk += totalPlantableBeans * STALK_PER_BEAN; // check if user has harvestable beans - // note: when harvesting, beans are not auto-deposited so no stalk is gained (totalHarvestablePods, harvestablePlots) = _userHarvestablePods(account); return (totalClaimableStalk, totalPlantableBeans, totalHarvestablePods, harvestablePlots); @@ -381,4 +400,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { "Blueprint already executed this season" ); } + + /// @dev updates the last executed season for a given order hash + function updateLastExecutedSeason(bytes32 orderHash, uint32 season) internal { + orderLastExecutedSeason[orderHash] = season; + } } From cd61661896cb5acd2481eade83d882a3d3a99bcf Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 10 Jul 2025 14:52:24 +0300 Subject: [PATCH 006/270] mode validation and more notes --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 85c256b8..54ba4daa 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -63,6 +63,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { //////////////////////////////////////////////////////////////// // General: // If someone plants or harvests, we should mow by default. + // Do we add a function to simulate execution of multiple blueprints + // like in {SowBlueprint.validateParamsAndReturnBeanstalkStateArray}? + //////////////////////////////////////////////////////////////// /** * @notice Struct to hold mow, plant and harvest parameters @@ -83,7 +86,8 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 minHarvestAmount; // Harvest specific parameters bool shouldRedeposit; - // Where to send the harvested beans (only applicable if shouldRedeposit is false from a user pov) + // Where to send the harvested beans + // (only applicable if shouldRedeposit is false from a user pov) LibTransfer.To harvestDestination; // Withdrawal plan parameters for tipping uint8[] sourceTokenIndices; @@ -389,7 +393,12 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { params.mowPlantHarvestParams.sourceTokenIndices.length > 0, "Must provide at least one source token" ); - /// todo: add more validation here depending on the parameters + // enforce that the harvest destination is either internal or external + require( + params.mowPlantHarvestParams.harvestDestination == LibTransfer.To.INTERNAL || + params.mowPlantHarvestParams.harvestDestination == LibTransfer.To.EXTERNAL, + "Invalid harvest destination" + ); } /// @dev validates info related to the blueprint such as the order hash and the last executed season From 589fa0863de473a267c1d0a5dd352dcd65dd6fa3 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 11 Jul 2025 13:30:41 +0300 Subject: [PATCH 007/270] minor fixes --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 54ba4daa..1e887207 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -86,7 +86,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 minHarvestAmount; // Harvest specific parameters bool shouldRedeposit; - // Where to send the harvested beans + // Where to send the harvested beans // (only applicable if shouldRedeposit is false from a user pov) LibTransfer.To harvestDestination; // Withdrawal plan parameters for tipping @@ -213,6 +213,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // Check if user should harvest or plant // In the case a harvest or plant is executed, mow by default + // note: plant() does mow but only the bean token, harvest() does not mow if (vars.shouldPlant || vars.shouldHarvest) vars.shouldMow = true; // Execute operations in order: mow first (if needed), then plant, then harvest @@ -223,7 +224,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // Harvest if the conditions are met if (vars.shouldHarvest) { - uint256 harvestedPods = beanstalk.harvest( + uint256 harvestedBeans = beanstalk.harvest( beanstalk.activeField(), vars.harvestablePlots, params.mowPlantHarvestParams.harvestDestination @@ -237,7 +238,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // if the user wants to redeposit, pull them from the harvest destination and deposit into silo if (params.mowPlantHarvestParams.shouldRedeposit) { - beanstalk.deposit(beanstalk.getBeanToken(), harvestedPods, depositMode); + beanstalk.deposit(beanstalk.getBeanToken(), harvestedBeans, depositMode); } } From c8b7280d240e3982bdec68299aff8c2f56f8f44a Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 14 Jul 2025 10:24:44 +0300 Subject: [PATCH 008/270] smart mow, test setup --- .../ecosystem/MowPlantHarvestBlueprint.sol | 71 ++++------- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 112 ++++++++++++++++++ test/foundry/utils/TractorHelper.sol | 87 ++++++++++++++ 3 files changed, 225 insertions(+), 45 deletions(-) create mode 100644 test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 1e887207..708a1717 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -14,6 +14,9 @@ import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol" * @notice Contract for mowing, planting and harvesting with Tractor, with a number of conditions */ contract MowPlantHarvestBlueprint is PerFunctionPausable { + /// @dev Buffer to check if the protocol is close to printing + uint256 public constant SMART_MOW_BUFFER = 1 minutes; + /** * @notice Event emitted when a mow, plant and harvest order is complete, or no longer executable due to min sow being less than min sow per season * @param blueprintHash The hash of the blueprint @@ -40,33 +43,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { OperatorParams opParams; } - /////////////////////// Parameters notes //////////////////////// - // Mow: - // We want them to mow continuously from a protocol perspective for stalk to be as real time as possible - // The user wants to mow when the system is about to print (what does that mean? maybe a deltaB threshold?) - //////////////////////////////////////////////////////////////// - // Plant: - // Generally people would want to plant if they have any amount of plantable beans - // to get the compounding effect when printing. - // One simple parameter is a min plant amount as a threshold after which the user would want to plant. - // We can protect against them losing money from tips so that a new parameter should be - // to plant if the plantable beans are more than the tip amount. - // Or whether the tip is a minimum percentage of the plantable beans. - //////////////////////////////////////////////////////////////// - // Harvest: - // Plots are partially harvestable. Do we want to harvest partial plots? - // One parameter could be whether to harvest partial plots or not. - // For sure one parameter should be if to redeposit to the silo or not. - // Again, like planting, we can protect against them losing money from tips so that a new parameter should be - // to harvest if the harvested beans are more than the tip amount. - // Or whether the tip is a minimum percentage of the harvested beans. - //////////////////////////////////////////////////////////////// - // General: - // If someone plants or harvests, we should mow by default. - // Do we add a function to simulate execution of multiple blueprints - // like in {SowBlueprint.validateParamsAndReturnBeanstalkStateArray}? - //////////////////////////////////////////////////////////////// - /** * @notice Struct to hold mow, plant and harvest parameters * @param minMowAmount The stalk threshold to mow @@ -81,14 +57,8 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { */ struct MowPlantHarvestParams { // Regular parameters for mow, plant and harvest - uint256 minMowAmount; uint256 minPlantAmount; uint256 minHarvestAmount; - // Harvest specific parameters - bool shouldRedeposit; - // Where to send the harvested beans - // (only applicable if shouldRedeposit is false from a user pov) - LibTransfer.To harvestDestination; // Withdrawal plan parameters for tipping uint8[] sourceTokenIndices; uint256 maxGrownStalkPerBdv; @@ -227,19 +197,11 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 harvestedBeans = beanstalk.harvest( beanstalk.activeField(), vars.harvestablePlots, - params.mowPlantHarvestParams.harvestDestination + LibTransfer.To.INTERNAL ); - // Determine the deposit mode based on the harvest destination - LibTransfer.From depositMode = params.mowPlantHarvestParams.harvestDestination == - LibTransfer.To.EXTERNAL - ? LibTransfer.From.EXTERNAL - : LibTransfer.From.INTERNAL; - - // if the user wants to redeposit, pull them from the harvest destination and deposit into silo - if (params.mowPlantHarvestParams.shouldRedeposit) { - beanstalk.deposit(beanstalk.getBeanToken(), harvestedBeans, depositMode); - } + // pull from the harvest destination and deposit into silo + beanstalk.deposit(beanstalk.getBeanToken(), harvestedBeans, LibTransfer.From.INTERNAL); } // Update the last executed season for this blueprint @@ -279,7 +241,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ) = _getUserState(account); // validate params - only revert if none of the conditions are met - shouldMow = totalClaimableStalk >= params.mowPlantHarvestParams.minMowAmount; + // generally, i would say users want to mow if enough stalk has accumulated + // even if the protocol is not close to printing so a minMowAmoun or something similar is not unreasonable here + shouldMow = _incomingPrintSeason(); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; shouldHarvest = totalHarvestablePods >= params.mowPlantHarvestParams.minHarvestAmount; @@ -300,6 +264,23 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ); } + /** + * @notice Check if the protocol is close to printing by checking the twaDeltaB and the time until next season + * @dev Used to determine if the user should mow to get advantage of the increase in stalk. + * note: Assumes sunrise is called at the top of the hour. + * @return bool True if the protocol is close to printing, false otherwise + */ + function _incomingPrintSeason() internal view returns (bool) { + IBeanstalk.Season memory seasonInfo = beanstalk.time(); + // if the time until next season is more than 1 minute, return false + if (block.timestamp + SMART_MOW_BUFFER > seasonInfo.timestamp + seasonInfo.period) + return false; + + // if the totalDeltaB is positive, return true + // todo: i think we need to do what we do in sunrise here to get the twaDeltaB + return beanstalk.totalDeltaB() > 0; + } + /** * @notice helper function to get the user state to compare against parameters * @dev Increasing the total claimable stalk when planting or harvesting does not really matter diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol new file mode 100644 index 00000000..6b7bd48f --- /dev/null +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -0,0 +1,112 @@ +// SPDX-License-Identifier: MIT +pragma solidity >=0.6.0 <0.9.0; +pragma abicoder v2; + +import {TestHelper, LibTransfer, C, IMockFBeanstalk} from "test/foundry/utils/TestHelper.sol"; +import {MockToken} from "contracts/mocks/MockToken.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {TractorHelpers} from "contracts/ecosystem/TractorHelpers.sol"; +import {SowBlueprintv0} from "contracts/ecosystem/SowBlueprintv0.sol"; +import {PriceManipulation} from "contracts/ecosystem/PriceManipulation.sol"; +import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; +import {TractorHelper} from "test/foundry/utils/TractorHelper.sol"; +import {BeanstalkPrice} from "contracts/ecosystem/price/BeanstalkPrice.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; +import {MowPlantHarvestBlueprint} from "contracts/ecosystem/MowPlantHarvestBlueprint.sol"; + +contract MowPlantHarvestBlueprintTest is TractorHelper { + address[] farmers; + PriceManipulation priceManipulation; + BeanstalkPrice beanstalkPrice; + + + + function setUp() public { + initializeBeanstalkTestState(true, false); + farmers = createUsers(2); + + // Deploy PriceManipulation (unused here but needed for TractorHelpers) + priceManipulation = new PriceManipulation(address(bs)); + vm.label(address(priceManipulation), "PriceManipulation"); + + // Deploy BeanstalkPrice (unused here but needed for TractorHelpers) + beanstalkPrice = new BeanstalkPrice(address(bs)); + vm.label(address(beanstalkPrice), "BeanstalkPrice"); + + // Deploy TractorHelpers with PriceManipulation address + tractorHelpers = new TractorHelpers( + address(bs), + address(beanstalkPrice), + address(this), + address(priceManipulation) + ); + vm.label(address(tractorHelpers), "TractorHelpers"); + + // Deploy MowPlantHarvestBlueprint with TractorHelpers address + mowPlantHarvestBlueprint = new MowPlantHarvestBlueprint( + address(bs), + address(this), + address(tractorHelpers) + ); + vm.label(address(mowPlantHarvestBlueprint), "MowPlantHarvestBlueprint"); + + setTractorHelpers(address(tractorHelpers)); + setMowPlantHarvestBlueprint(address(mowPlantHarvestBlueprint)); + + addLiquidityToWell( + BEAN_ETH_WELL, + 10000e6, // 10,000 Beans + 10 ether // 10 ether. + ); + + addLiquidityToWell( + BEAN_WSTETH_WELL, + 10010e6, // 10,010 Beans + 10 ether // 10 ether. + ); + } + + // Break out the setup into a separate function + // function setupMowPlantHarvestBlueprintTest( + // bool shouldMow, // if should mow, set up conditions for mowing + // bool shouldPlant, // if should plant, set up conditions for planting + // bool shouldHarvest // if should harvest, set up conditions for harvesting + // ) internal returns (TestState memory) { + // TestState memory state; + // state.user = farmers[0]; + // state.operator = address(this); + // state.beanToken = bs.getBeanToken(); + // state.initialUserBeanBalance = IERC20(state.beanToken).balanceOf(state.user); + // state.initialOperatorBeanBalance = bs.getInternalBalance(state.operator, state.beanToken); + // state.sowAmount = 1000e6; // 1000 BEAN + // state.tipAmount = 10e6; // 10 BEAN + // state.initialSoil = 100000e6; // 100,000 BEAN + + // // For test case 6, we need to deposit more than initialSoil + // uint256 extraAmount = state.initialSoil + 1e6; + + // // Setup initial conditions with extra amount for test case 6 + // // Mint 2x the amount to ensure we have enough for all test cases + // mintTokensToUser(state.user, state.beanToken, (extraAmount + uint256(state.tipAmount)) * 2); + + // vm.prank(state.user); + // IERC20(state.beanToken).approve(address(bs), type(uint256).max); + + // bs.setSoilE(state.initialSoil); + + // vm.prank(state.user); + // bs.deposit( + // state.beanToken, + // extraAmount + uint256(state.tipAmount), + // uint8(LibTransfer.From.EXTERNAL) + // ); + + // // For farmer 1, deposit 1000e6 beans, and mint them 1000e6 beans + // mintTokensToUser(farmers[1], state.beanToken, 1000e6); + // vm.prank(farmers[1]); + // bs.deposit(state.beanToken, 1000e6, uint8(LibTransfer.From.EXTERNAL)); + + // return state; + // } +} diff --git a/test/foundry/utils/TractorHelper.sol b/test/foundry/utils/TractorHelper.sol index 406f1fa4..47084f64 100644 --- a/test/foundry/utils/TractorHelper.sol +++ b/test/foundry/utils/TractorHelper.sol @@ -6,11 +6,13 @@ import {TestHelper, LibTransfer, C, IMockFBeanstalk} from "test/foundry/utils/Te import {SowBlueprintv0} from "contracts/ecosystem/SowBlueprintv0.sol"; import {TractorHelpers} from "contracts/ecosystem/TractorHelpers.sol"; import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; +import {MowPlantHarvestBlueprint} from "contracts/ecosystem/MowPlantHarvestBlueprint.sol"; contract TractorHelper is TestHelper { // Add this at the top of the contract TractorHelpers internal tractorHelpers; SowBlueprintv0 internal sowBlueprintv0; + MowPlantHarvestBlueprint internal mowPlantHarvestBlueprint; enum SourceMode { PURE_PINTO, @@ -26,6 +28,10 @@ contract TractorHelper is TestHelper { sowBlueprintv0 = SowBlueprintv0(_sowBlueprintv0); } + function setMowPlantHarvestBlueprint(address _mowPlantHarvestBlueprint) internal { + mowPlantHarvestBlueprint = MowPlantHarvestBlueprint(_mowPlantHarvestBlueprint); + } + function createRequisitionWithPipeCall( address account, bytes memory pipeCallData, @@ -144,6 +150,8 @@ contract TractorHelper is TestHelper { }); } + //////////////////////////// SowBlueprintv0 //////////////////////////// + // Helper function that takes SowAmounts struct function setupSowBlueprintv0Blueprint( address account, @@ -269,4 +277,83 @@ contract TractorHelper is TestHelper { // Return the encoded farm call return abi.encodeWithSelector(IMockFBeanstalk.advancedFarm.selector, calls); } + + //////////////////////////// MowPlantHarvestBlueprint //////////////////////////// + + function setupMowPlantHarvestBlueprint( + address account, + SourceMode sourceMode + ) + internal + returns ( + IMockFBeanstalk.Requisition memory, + MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory params + ) + { + + // build struct params (TODO: modify and implement based on desired parameters) + // params = createMowPlantHarvestBlueprintStruct( + // uint8(sourceMode), + // sowAmounts, + // minTemp, + // operatorTipAmount, + // tipAddress, + // maxPodlineLength, + // maxGrownStalkLimitPerBdv, + // runBlocksAfterSunrise, + // address(tractorHelpers), + // address(bs) + // ); + + // create pipe call data + bytes memory pipeCallData = createMowPlantHarvestBlueprintCallData(params); + + // create requisition + IMockFBeanstalk.Requisition memory req = createRequisitionWithPipeCall( + account, + pipeCallData, + address(bs) + ); + + // publish requisition + vm.prank(account); + bs.publishRequisition(req); + + return (req, params); + } + + + // TODO: modify and implement based on desired parameters + // function createMowPlantHarvestBlueprintStruct( + // uint8 sourceMode, + // SowBlueprintv0.SowAmounts memory sowAmounts, + // uint256 minTemp, + // int256 operatorTipAmount, + // address tipAddress + // ) internal view returns (MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory) {} + + + /// @dev this is good to go + function createMowPlantHarvestBlueprintCallData( + MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory params + ) internal view returns (bytes memory) { + // create the mowPlantHarvestBlueprint pipe call + IMockFBeanstalk.AdvancedPipeCall[] memory pipes = new IMockFBeanstalk.AdvancedPipeCall[](1); + + pipes[0] = IMockFBeanstalk.AdvancedPipeCall({ + target: address(mowPlantHarvestBlueprint), + callData: abi.encodeWithSelector(MowPlantHarvestBlueprint.mowPlantHarvestBlueprint.selector, params), + clipboard: hex"0000" + }); + + // wrap the pipe calls in a farm call + IMockFBeanstalk.AdvancedFarmCall[] memory calls = new IMockFBeanstalk.AdvancedFarmCall[](1); + calls[0] = IMockFBeanstalk.AdvancedFarmCall({ + callData: abi.encodeWithSelector(IMockFBeanstalk.advancedPipe.selector, pipes, 0), + clipboard: "" + }); + + // return the encoded farm call + return abi.encodeWithSelector(IMockFBeanstalk.advancedFarm.selector, calls); + } } From e50d39d35064cc5be7a8b3e1f7a6afefb770b641 Mon Sep 17 00:00:00 2001 From: nickkatsios Date: Wed, 16 Jul 2025 16:15:32 +0300 Subject: [PATCH 009/270] finalize blueprint, initial tests --- .../ecosystem/MowPlantHarvestBlueprint.sol | 101 ++++++----- contracts/interfaces/IBeanstalk.sol | 2 + .../ecosystem/MowPlantHarvestBlueprint.t.sol | 169 ++++++++++++------ test/foundry/utils/TractorHelper.sol | 103 ++++++++--- 4 files changed, 249 insertions(+), 126 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 708a1717..f2d111f0 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -14,24 +14,9 @@ import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol" * @notice Contract for mowing, planting and harvesting with Tractor, with a number of conditions */ contract MowPlantHarvestBlueprint is PerFunctionPausable { - /// @dev Buffer to check if the protocol is close to printing - uint256 public constant SMART_MOW_BUFFER = 1 minutes; - /** - * @notice Event emitted when a mow, plant and harvest order is complete, or no longer executable due to min sow being less than min sow per season - * @param blueprintHash The hash of the blueprint - * @param publisher The address of the publisher - * @param totalAmountMowed The amount of beans mowed - * @param totalAmountPlanted The amount of beans planted - * @param totalAmountHarvested The amount of beans harvested - */ - event MowPlantHarvestOrderComplete( - bytes32 indexed blueprintHash, - address indexed publisher, - uint256 totalAmountMowed, - uint256 totalAmountPlanted, - uint256 totalAmountHarvested - ); + /// @dev Buffer for operators to check if the protocol is close to printing + uint256 public constant SMART_MOW_BUFFER = 5 minutes; /** * @notice Main struct for mow, plant and harvest blueprint @@ -45,19 +30,23 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { /** * @notice Struct to hold mow, plant and harvest parameters - * @param minMowAmount The stalk threshold to mow + * @param minMowAmount The minimum total claimable stalk threshold to mow + * @param mintwaDeltaB The minimum twaDeltaB to mow if the protocol is close to printing * @param minPlantAmount The earned beans threshold to plant * @param minHarvestAmount The bean threshold to harvest - * --------------------------------------------------------- + * ----------------------------------------------------------- * @param sourceTokenIndices Indices of source tokens to withdraw from * @param maxGrownStalkPerBdv Maximum grown stalk per BDV allowed - * @param slippageRatio The price slippage ratio for a lp token withdrawal. + * @param slippageRatio The price slippage ratio for lp token withdrawal. * Only applicable for lp token withdrawals. - * todo: add more parameters here if needed and validate them */ struct MowPlantHarvestParams { - // Regular parameters for mow, plant and harvest + // Mow + uint256 minMowAmount; + uint256 mintwaDeltaB; + // Plant uint256 minPlantAmount; + // Harvest uint256 minHarvestAmount; // Withdrawal plan parameters for tipping uint8[] sourceTokenIndices; @@ -110,20 +99,19 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { tractorHelpers = TractorHelpers(_tractorHelpers); } - /// @dev main entry point + /** + * @notice Main entry point for the mow, plant and harvest blueprint + * @param params The parameters for the mow, plant and harvest operation + */ function mowPlantHarvestBlueprint( MowPlantHarvestBlueprintStruct calldata params ) external payable whenFunctionNotPaused { // Initialize local variables MowPlantHarvestLocalVars memory vars; - ////////////////////// Validation //////////////////////// - - // get order hash + // Validate vars.orderHash = beanstalk.getCurrentBlueprintHash(); - // get the tractor user vars.account = beanstalk.tractorUser(); - // get the tip address vars.tipAddress = params.opParams.tipAddress; // get the user state from the protocol and validate against params @@ -146,8 +134,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // if tip address is not set, set it to the operator if (vars.tipAddress == address(0)) vars.tipAddress = beanstalk.operator(); - ////////////////////// Withdrawal Plan and Tip //////////////////////// - + // Withdrawal Plan and Tip // Check if enough beans are available using getWithdrawalPlan LibTractorHelpers.WithdrawalPlan memory plan = tractorHelpers .getWithdrawalPlanExcludingPlan( @@ -179,11 +166,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { LibTransfer.To.INTERNAL ); - ////////////////////// Mow, Plant and Harvest //////////////////////// - + // Mow, Plant and Harvest // Check if user should harvest or plant // In the case a harvest or plant is executed, mow by default - // note: plant() does mow but only the bean token, harvest() does not mow if (vars.shouldPlant || vars.shouldHarvest) vars.shouldMow = true; // Execute operations in order: mow first (if needed), then plant, then harvest @@ -241,9 +226,11 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ) = _getUserState(account); // validate params - only revert if none of the conditions are met - // generally, i would say users want to mow if enough stalk has accumulated - // even if the protocol is not close to printing so a minMowAmoun or something similar is not unreasonable here - shouldMow = _incomingPrintSeason(); + shouldMow = _checkSmartMowConditions( + params.mowPlantHarvestParams.mintwaDeltaB, + params.mowPlantHarvestParams.minMowAmount, + totalClaimableStalk + ); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; shouldHarvest = totalHarvestablePods >= params.mowPlantHarvestParams.minHarvestAmount; @@ -265,20 +252,26 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } /** - * @notice Check if the protocol is close to printing by checking the twaDeltaB and the time until next season - * @dev Used to determine if the user should mow to get advantage of the increase in stalk. + * @notice Check smart mow conditions to trigger a mow + * @dev A smart mow happens when the protocol is about to print + * and the user has enough claimable stalk such as he gets more yield. * note: Assumes sunrise is called at the top of the hour. - * @return bool True if the protocol is close to printing, false otherwise + * @return bool True if the user should smart mow, false otherwise */ - function _incomingPrintSeason() internal view returns (bool) { + function _checkSmartMowConditions( + uint256 mintwaDeltaB, + uint256 minMowAmount, + uint256 totalClaimableStalk + ) internal view returns (bool) { IBeanstalk.Season memory seasonInfo = beanstalk.time(); - // if the time until next season is more than 1 minute, return false + + // if the time until next season is more than the buffer, return false if (block.timestamp + SMART_MOW_BUFFER > seasonInfo.timestamp + seasonInfo.period) return false; - // if the totalDeltaB is positive, return true + // if the totalDeltaB and totalClaimableStalk are both greater than the min amount, return true // todo: i think we need to do what we do in sunrise here to get the twaDeltaB - return beanstalk.totalDeltaB() > 0; + return beanstalk.totalDeltaB() > int256(mintwaDeltaB) && totalClaimableStalk > minMowAmount; } /** @@ -370,17 +363,29 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } /// @dev validates the parameters for the mow, plant and harvest operation - function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal pure { + function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal view { require( params.mowPlantHarvestParams.sourceTokenIndices.length > 0, "Must provide at least one source token" ); - // enforce that the harvest destination is either internal or external + // Check if the executing operator (msg.sender) is whitelisted require( - params.mowPlantHarvestParams.harvestDestination == LibTransfer.To.INTERNAL || - params.mowPlantHarvestParams.harvestDestination == LibTransfer.To.EXTERNAL, - "Invalid harvest destination" + tractorHelpers.isOperatorWhitelisted(params.opParams.whitelistedOperators), + "Operator not whitelisted" ); + // Validate that minPlantAmount and minHarvestAmount result in profit + if (params.opParams.operatorTipAmount >= 0) { + require( + params.mowPlantHarvestParams.minPlantAmount > + uint256(params.opParams.operatorTipAmount), + "Min plant amount must be greater than operator tip amount" + ); + require( + params.mowPlantHarvestParams.minHarvestAmount > + uint256(params.opParams.operatorTipAmount), + "Min harvest amount must be greater than operator tip amount" + ); + } } /// @dev validates info related to the blueprint such as the order hash and the last executed season diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 88eb2104..80bd9ccd 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -145,6 +145,8 @@ interface IBeanstalk { function plant() external payable returns (uint256); + function totalDeltaB() external view returns (int256); + function harvest( uint256 fieldId, uint256[] calldata plots, diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 6b7bd48f..fc25aa65 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -14,13 +14,25 @@ import {BeanstalkPrice} from "contracts/ecosystem/price/BeanstalkPrice.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; import {MowPlantHarvestBlueprint} from "contracts/ecosystem/MowPlantHarvestBlueprint.sol"; +import "forge-std/console.sol"; contract MowPlantHarvestBlueprintTest is TractorHelper { address[] farmers; PriceManipulation priceManipulation; BeanstalkPrice beanstalkPrice; - + uint256 STALK_DECIMALS = 1e10; + uint256 constant MAX_GROWN_STALK_PER_BDV = 1000e16; // Stalk is 1e16 + + struct TestState { + address user; + address operator; + address beanToken; + uint256 initialUserBeanBalance; + uint256 initialOperatorBeanBalance; + uint256 mintAmount; + int256 tipAmount; + } function setUp() public { initializeBeanstalkTestState(true, false); @@ -54,59 +66,110 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { setTractorHelpers(address(tractorHelpers)); setMowPlantHarvestBlueprint(address(mowPlantHarvestBlueprint)); - addLiquidityToWell( - BEAN_ETH_WELL, - 10000e6, // 10,000 Beans - 10 ether // 10 ether. - ); - - addLiquidityToWell( - BEAN_WSTETH_WELL, - 10010e6, // 10,010 Beans - 10 ether // 10 ether. - ); + // Advance season to grow stalk + advanceSeason(); } // Break out the setup into a separate function - // function setupMowPlantHarvestBlueprintTest( - // bool shouldMow, // if should mow, set up conditions for mowing - // bool shouldPlant, // if should plant, set up conditions for planting - // bool shouldHarvest // if should harvest, set up conditions for harvesting - // ) internal returns (TestState memory) { - // TestState memory state; - // state.user = farmers[0]; - // state.operator = address(this); - // state.beanToken = bs.getBeanToken(); - // state.initialUserBeanBalance = IERC20(state.beanToken).balanceOf(state.user); - // state.initialOperatorBeanBalance = bs.getInternalBalance(state.operator, state.beanToken); - // state.sowAmount = 1000e6; // 1000 BEAN - // state.tipAmount = 10e6; // 10 BEAN - // state.initialSoil = 100000e6; // 100,000 BEAN - - // // For test case 6, we need to deposit more than initialSoil - // uint256 extraAmount = state.initialSoil + 1e6; - - // // Setup initial conditions with extra amount for test case 6 - // // Mint 2x the amount to ensure we have enough for all test cases - // mintTokensToUser(state.user, state.beanToken, (extraAmount + uint256(state.tipAmount)) * 2); - - // vm.prank(state.user); - // IERC20(state.beanToken).approve(address(bs), type(uint256).max); - - // bs.setSoilE(state.initialSoil); - - // vm.prank(state.user); - // bs.deposit( - // state.beanToken, - // extraAmount + uint256(state.tipAmount), - // uint8(LibTransfer.From.EXTERNAL) - // ); - - // // For farmer 1, deposit 1000e6 beans, and mint them 1000e6 beans - // mintTokensToUser(farmers[1], state.beanToken, 1000e6); - // vm.prank(farmers[1]); - // bs.deposit(state.beanToken, 1000e6, uint8(LibTransfer.From.EXTERNAL)); - - // return state; - // } + function setupMowPlantHarvestBlueprintTest( + bool shouldMow, // if should mow, set up conditions for mowing + bool shouldPlant, // if should plant, set up conditions for planting + bool shouldHarvest, // if should harvest, set up conditions for harvesting + bool abovePeg // if above peg, set up conditions for above peg + ) internal returns (TestState memory) { + // Create test state + TestState memory state; + state.user = farmers[0]; + state.operator = address(this); + state.beanToken = bs.getBeanToken(); + state.initialUserBeanBalance = IERC20(state.beanToken).balanceOf(state.user); + state.initialOperatorBeanBalance = bs.getInternalBalance(state.operator, state.beanToken); + state.mintAmount = 100000e6; + state.tipAmount = 10e6; // 10 BEAN + + // Mint 2x the amount to ensure we have enough for all test cases + mintTokensToUser(state.user, state.beanToken, state.mintAmount); + + vm.prank(state.user); + IERC20(state.beanToken).approve(address(bs), type(uint256).max); + + vm.prank(state.user); + bs.deposit(state.beanToken, state.mintAmount, uint8(LibTransfer.From.EXTERNAL)); + + // For farmer 1, deposit 1000e6 beans, and mint them 1000e6 beans + mintTokensToUser(farmers[1], state.beanToken, 1000e6); + vm.prank(farmers[1]); + bs.deposit(state.beanToken, 1000e6, uint8(LibTransfer.From.EXTERNAL)); + + // Add liquidity to manipulate deltaB + if (abovePeg) { + addLiquidityToWell( + BEAN_ETH_WELL, + 10000e6, // 10,000 Beans + 11 ether // 10 ether. + ); + addLiquidityToWell( + BEAN_WSTETH_WELL, + 10010e6, // 10,010 Beans + 11 ether // 10 ether. + ); + } else { + addLiquidityToWell( + BEAN_ETH_WELL, + 10000e6, // 10,000 Beans + 10 ether // 10 ether. + ); + addLiquidityToWell( + BEAN_WSTETH_WELL, + 10000e6, // 10,010 Beans + 10 ether // 10 ether. + ); + } + + return state; + } + + // Advance to the next season and update oracles + function advanceSeason() internal { + warpToNextSeasonTimestamp(); + bs.sunrise(); + updateAllChainlinkOraclesWithPreviousData(); + } + + /////////////////////////// TESTS /////////////////////////// + + function test_mowPlantHarvestBlueprint_smartMow() public { + // Setup test state + TestState memory state = setupMowPlantHarvestBlueprintTest(true, true, true, true); + + // Advance season to grow stalk + advanceSeason(); + + // get user state before mow see SiloGettersFacet + uint256 userGrownStalk = bs.balanceOfGrownStalk(state.user, state.beanToken); + console.log("userGrownStalk before mow", userGrownStalk); + + // log totalDeltaB + console.log("totalDeltaB", bs.totalDeltaB()); + + // Setup mowPlantHarvestBlueprint + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + type(uint256).max, // minPlantAmount + type(uint256).max, // minHarvestAmount + state.operator, // tipAddress + state.tipAmount, // operatorTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); + + executeRequisition(state.operator, req, address(bs)); + + // get user state after mow see SiloGettersFacet + uint256 userGrownStalkAfterMow = bs.balanceOfGrownStalk(state.user, state.beanToken); + // assert that this is 0 (all the grown stalk was mowed) + assertEq(userGrownStalkAfterMow, 0); + } } diff --git a/test/foundry/utils/TractorHelper.sol b/test/foundry/utils/TractorHelper.sol index 47084f64..36d7c5a5 100644 --- a/test/foundry/utils/TractorHelper.sol +++ b/test/foundry/utils/TractorHelper.sol @@ -282,7 +282,14 @@ contract TractorHelper is TestHelper { function setupMowPlantHarvestBlueprint( address account, - SourceMode sourceMode + SourceMode sourceMode, + uint256 minMowAmount, + uint256 mintwaDeltaB, + uint256 minPlantAmount, + uint256 minHarvestAmount, + address tipAddress, + int256 operatorTipAmount, + uint256 maxGrownStalkPerBdv ) internal returns ( @@ -290,20 +297,17 @@ contract TractorHelper is TestHelper { MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory params ) { - - // build struct params (TODO: modify and implement based on desired parameters) - // params = createMowPlantHarvestBlueprintStruct( - // uint8(sourceMode), - // sowAmounts, - // minTemp, - // operatorTipAmount, - // tipAddress, - // maxPodlineLength, - // maxGrownStalkLimitPerBdv, - // runBlocksAfterSunrise, - // address(tractorHelpers), - // address(bs) - // ); + // build struct params + params = createMowPlantHarvestBlueprintStruct( + uint8(sourceMode), + minMowAmount, + mintwaDeltaB, + minPlantAmount, + minHarvestAmount, + tipAddress, + operatorTipAmount, + maxGrownStalkPerBdv + ); // create pipe call data bytes memory pipeCallData = createMowPlantHarvestBlueprintCallData(params); @@ -322,16 +326,62 @@ contract TractorHelper is TestHelper { return (req, params); } - - // TODO: modify and implement based on desired parameters - // function createMowPlantHarvestBlueprintStruct( - // uint8 sourceMode, - // SowBlueprintv0.SowAmounts memory sowAmounts, - // uint256 minTemp, - // int256 operatorTipAmount, - // address tipAddress - // ) internal view returns (MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory) {} + // Creates and returns the struct params for the mowPlantHarvestBlueprint + function createMowPlantHarvestBlueprintStruct( + uint8 sourceMode, + uint256 minMowAmount, + uint256 mintwaDeltaB, + uint256 minPlantAmount, + uint256 minHarvestAmount, + address tipAddress, + int256 operatorTipAmount, + uint256 maxGrownStalkPerBdv + ) internal view returns (MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory) { + // Create default whitelisted operators array with msg.sender + address[] memory whitelistedOps = new address[](3); + whitelistedOps[0] = msg.sender; + whitelistedOps[1] = tipAddress; + whitelistedOps[2] = address(this); + + // Create array with single index for the token based on source mode + uint8[] memory sourceTokenIndices = new uint8[](1); + if (sourceMode == uint8(SourceMode.PURE_PINTO)) { + sourceTokenIndices[0] = tractorHelpers.getTokenIndex( + IMockFBeanstalk(address(bs)).getBeanToken() + ); + } else if (sourceMode == uint8(SourceMode.LOWEST_PRICE)) { + sourceTokenIndices[0] = type(uint8).max; + } else { + // LOWEST_SEED + sourceTokenIndices[0] = type(uint8).max - 1; + } + + // Create MowPlantHarvestParams struct + MowPlantHarvestBlueprint.MowPlantHarvestParams + memory mowPlantHarvestParams = MowPlantHarvestBlueprint.MowPlantHarvestParams({ + minMowAmount: minMowAmount, + mintwaDeltaB: mintwaDeltaB, + minPlantAmount: minPlantAmount, + minHarvestAmount: minHarvestAmount, + sourceTokenIndices: sourceTokenIndices, + maxGrownStalkPerBdv: maxGrownStalkPerBdv, + slippageRatio: 0.01e18 // 1% + }); + // Create OperatorParams struct + MowPlantHarvestBlueprint.OperatorParams memory opParams = MowPlantHarvestBlueprint + .OperatorParams({ + whitelistedOperators: whitelistedOps, + tipAddress: tipAddress, + operatorTipAmount: operatorTipAmount + }); + + return + MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct({ + mowPlantHarvestParams: mowPlantHarvestParams, + opParams: opParams + }); + } /// @dev this is good to go function createMowPlantHarvestBlueprintCallData( @@ -342,7 +392,10 @@ contract TractorHelper is TestHelper { pipes[0] = IMockFBeanstalk.AdvancedPipeCall({ target: address(mowPlantHarvestBlueprint), - callData: abi.encodeWithSelector(MowPlantHarvestBlueprint.mowPlantHarvestBlueprint.selector, params), + callData: abi.encodeWithSelector( + MowPlantHarvestBlueprint.mowPlantHarvestBlueprint.selector, + params + ), clipboard: hex"0000" }); From 85bfb303d6655ca81ea654cc796630bb3168a6ff Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 16 Jul 2025 20:54:00 +0300 Subject: [PATCH 010/270] smart mow test, fix buffer bug --- .../ecosystem/MowPlantHarvestBlueprint.sol | 22 +++-- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 86 +++++++++++-------- 2 files changed, 68 insertions(+), 40 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index f2d111f0..4cca6e7f 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -7,6 +7,7 @@ import {TractorHelpers} from "./TractorHelpers.sol"; import {PerFunctionPausable} from "./PerFunctionPausable.sol"; import {BeanstalkPrice} from "./price/BeanstalkPrice.sol"; import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; +import "forge-std/console.sol"; /** * @title MowPlantHarvestBlueprint @@ -14,7 +15,6 @@ import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol" * @notice Contract for mowing, planting and harvesting with Tractor, with a number of conditions */ contract MowPlantHarvestBlueprint is PerFunctionPausable { - /// @dev Buffer for operators to check if the protocol is close to printing uint256 public constant SMART_MOW_BUFFER = 5 minutes; @@ -125,6 +125,17 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { vars.shouldHarvest ) = _getAndValidateUserState(vars.account, params); + console.log("--------------------------------"); + console.log("vars.totalClaimableStalk", vars.totalClaimableStalk); + console.log("vars.totalPlantableBeans", vars.totalPlantableBeans); + console.log("vars.totalHarvestablePods", vars.totalHarvestablePods); + for (uint256 i = 0; i < vars.harvestablePlots.length; i++) { + console.log("vars.harvestablePlots[", i, "]", vars.harvestablePlots[i]); + } + console.log("vars.shouldMow", vars.shouldMow); + console.log("vars.shouldPlant", vars.shouldPlant); + console.log("vars.shouldHarvest", vars.shouldHarvest); + // validate blueprint _validateBlueprint(vars.orderHash); @@ -236,7 +247,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { require( shouldMow || shouldPlant || shouldHarvest, - "None of the mow, plant or harvest conditions are met" + "MowPlantHarvestBlueprint: None of the order conditions are met" ); // return user state @@ -265,12 +276,11 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ) internal view returns (bool) { IBeanstalk.Season memory seasonInfo = beanstalk.time(); - // if the time until next season is more than the buffer, return false - if (block.timestamp + SMART_MOW_BUFFER > seasonInfo.timestamp + seasonInfo.period) - return false; + // if the time until next season is more than the buffer don't mow, too early + uint256 nextSeasonExpectedTimestamp = seasonInfo.timestamp + seasonInfo.period; + if (nextSeasonExpectedTimestamp - block.timestamp > SMART_MOW_BUFFER) return false; // if the totalDeltaB and totalClaimableStalk are both greater than the min amount, return true - // todo: i think we need to do what we do in sunrise here to get the twaDeltaB return beanstalk.totalDeltaB() > int256(mintwaDeltaB) && totalClaimableStalk > minMowAmount; } diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index fc25aa65..8dc8aed1 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -72,9 +72,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // Break out the setup into a separate function function setupMowPlantHarvestBlueprintTest( - bool shouldMow, // if should mow, set up conditions for mowing - bool shouldPlant, // if should plant, set up conditions for planting - bool shouldHarvest, // if should harvest, set up conditions for harvesting + bool setupPlant, // if setupPlant, set up conditions for planting + bool setupHarvest, // if setupHarvest, set up conditions for harvesting bool abovePeg // if above peg, set up conditions for above peg ) internal returns (TestState memory) { // Create test state @@ -102,28 +101,29 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { bs.deposit(state.beanToken, 1000e6, uint8(LibTransfer.From.EXTERNAL)); // Add liquidity to manipulate deltaB - if (abovePeg) { - addLiquidityToWell( - BEAN_ETH_WELL, - 10000e6, // 10,000 Beans - 11 ether // 10 ether. - ); - addLiquidityToWell( - BEAN_WSTETH_WELL, - 10010e6, // 10,010 Beans - 11 ether // 10 ether. - ); - } else { - addLiquidityToWell( - BEAN_ETH_WELL, - 10000e6, // 10,000 Beans - 10 ether // 10 ether. - ); - addLiquidityToWell( - BEAN_WSTETH_WELL, - 10000e6, // 10,010 Beans - 10 ether // 10 ether. - ); + addLiquidityToWell( + BEAN_ETH_WELL, + abovePeg ? 10000e6 : 10010e6, // 10,000 Beans if above peg, 10,010 Beans if below peg + abovePeg ? 11 ether : 10 ether // 11 eth if above peg, 10 ether. if below peg + ); + addLiquidityToWell( + BEAN_WSTETH_WELL, + abovePeg ? 10000e6 : 10010e6, // 10,010 Beans if above peg, 10,000 Beans if below peg + abovePeg ? 11 ether : 10 ether // 11 eth if above peg, 10 ether. if below peg + ); + + if (setupPlant) { + // advance season 2 times to get rid of germination + advanceSeason(); + advanceSeason(); + } + + if (setupHarvest) { + // set soil to 1000e6 + bs.setSoilE(1000e6); + // sow 1000e6 beans + vm.prank(state.user); + bs.sow(1000e6, 0, uint8(LibTransfer.From.EXTERNAL)); } return state; @@ -140,17 +140,21 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function test_mowPlantHarvestBlueprint_smartMow() public { // Setup test state - TestState memory state = setupMowPlantHarvestBlueprintTest(true, true, true, true); + // setupPlant: false, setupHarvest: false, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(false, false, true); - // Advance season to grow stalk + // Advance season to grow stalk but not enough to plant advanceSeason(); + vm.warp(block.timestamp + 1 seconds); - // get user state before mow see SiloGettersFacet + // get user state before mow uint256 userGrownStalk = bs.balanceOfGrownStalk(state.user, state.beanToken); - console.log("userGrownStalk before mow", userGrownStalk); - - // log totalDeltaB - console.log("totalDeltaB", bs.totalDeltaB()); + // assert user has grown stalk + assertGt(userGrownStalk, 0, "user should have grown stalk to mow"); + // get user total stalk before mow + uint256 userTotalStalkBeforeMow = bs.balanceOfStalk(state.user); + // assert totalDeltaB is greater than 0 + assertGt(bs.totalDeltaB(), 0, "totalDeltaB should be greater than 0"); // Setup mowPlantHarvestBlueprint (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( @@ -164,12 +168,26 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { state.tipAmount, // operatorTipAmount MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); + + // Try to execute before the last minutes of the season, expect revert + vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); + executeRequisition(state.operator, req, address(bs)); + // Try to execute after the last minutes of the season + vm.warp(bs.getNextSeasonStart() - 1 seconds); executeRequisition(state.operator, req, address(bs)); - // get user state after mow see SiloGettersFacet + // assert all grown stalk was mowed uint256 userGrownStalkAfterMow = bs.balanceOfGrownStalk(state.user, state.beanToken); - // assert that this is 0 (all the grown stalk was mowed) assertEq(userGrownStalkAfterMow, 0); + + // get user total stalk after mow + uint256 userTotalStalkAfterMow = bs.balanceOfStalk(state.user); + // assert the user total stalk has increased + assertGt( + userTotalStalkAfterMow, + userTotalStalkBeforeMow, + "userTotalStalk should have increased" + ); } } From 96b39c3c8253b61279ac7f159087ee5d1ccf610d Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 18 Jul 2025 11:58:05 +0300 Subject: [PATCH 011/270] complete tests,cleanup --- .../ecosystem/MowPlantHarvestBlueprint.sol | 61 +-- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 350 +++++++++++++++++- 2 files changed, 354 insertions(+), 57 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 4cca6e7f..9c2c17e8 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -5,9 +5,7 @@ import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {TractorHelpers} from "./TractorHelpers.sol"; import {PerFunctionPausable} from "./PerFunctionPausable.sol"; -import {BeanstalkPrice} from "./price/BeanstalkPrice.sol"; import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; -import "forge-std/console.sol"; /** * @title MowPlantHarvestBlueprint @@ -33,7 +31,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { * @param minMowAmount The minimum total claimable stalk threshold to mow * @param mintwaDeltaB The minimum twaDeltaB to mow if the protocol is close to printing * @param minPlantAmount The earned beans threshold to plant - * @param minHarvestAmount The bean threshold to harvest + * @param minHarvestAmount The total harvestable pods threshold to harvest * ----------------------------------------------------------- * @param sourceTokenIndices Indices of source tokens to withdraw from * @param maxGrownStalkPerBdv Maximum grown stalk per BDV allowed @@ -54,12 +52,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 slippageRatio; } - // Mapping to track the last executed season for each order hash - mapping(bytes32 orderHash => uint32 lastExecutedSeason) public orderLastExecutedSeason; - - IBeanstalk public immutable beanstalk; - TractorHelpers public immutable tractorHelpers; - /** * @notice Struct to hold operator parameters * @param whitelistedOperators What operators are allowed to execute the blueprint @@ -90,6 +82,13 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { LibTractorHelpers.WithdrawalPlan plan; } + // Mapping to track the last executed season for each order hash + mapping(bytes32 orderHash => uint32 lastExecutedSeason) public orderLastExecutedSeason; + + // Contracts + IBeanstalk public immutable beanstalk; + TractorHelpers public immutable tractorHelpers; + constructor( address _beanstalk, address _owner, @@ -116,26 +115,12 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // get the user state from the protocol and validate against params ( - vars.totalClaimableStalk, - vars.totalPlantableBeans, - vars.totalHarvestablePods, vars.harvestablePlots, vars.shouldMow, vars.shouldPlant, vars.shouldHarvest ) = _getAndValidateUserState(vars.account, params); - console.log("--------------------------------"); - console.log("vars.totalClaimableStalk", vars.totalClaimableStalk); - console.log("vars.totalPlantableBeans", vars.totalPlantableBeans); - console.log("vars.totalHarvestablePods", vars.totalHarvestablePods); - for (uint256 i = 0; i < vars.harvestablePlots.length; i++) { - console.log("vars.harvestablePlots[", i, "]", vars.harvestablePlots[i]); - } - console.log("vars.shouldMow", vars.shouldMow); - console.log("vars.shouldPlant", vars.shouldPlant); - console.log("vars.shouldHarvest", vars.shouldHarvest); - // validate blueprint _validateBlueprint(vars.orderHash); @@ -208,9 +193,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { * @notice Helper function to get the user state and validate against parameters * @param account The address of the user * @param params The parameters for the mow, plant and harvest operation - * @return totalClaimableStalk The total amount of claimable stalk - * @return totalPlantableBeans The total amount of plantable beans - * @return totalHarvestablePods The total amount of harvestable pods + * @return harvestablePlots The harvestable plot ids for the user, if any + * @return shouldMow True if the user should mow + * @return shouldPlant True if the user should plant + * @return shouldHarvest True if the user should harvest */ function _getAndValidateUserState( address account, @@ -219,9 +205,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { internal view returns ( - uint256 totalClaimableStalk, - uint256 totalPlantableBeans, - uint256 totalHarvestablePods, uint256[] memory harvestablePlots, bool shouldMow, bool shouldPlant, @@ -230,10 +213,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { { // get user state ( - totalClaimableStalk, - totalPlantableBeans, - totalHarvestablePods, - harvestablePlots + uint256 totalClaimableStalk, + uint256 totalPlantableBeans, + uint256 totalHarvestablePods, + uint256[] memory harvestablePlots ) = _getUserState(account); // validate params - only revert if none of the conditions are met @@ -250,16 +233,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { "MowPlantHarvestBlueprint: None of the order conditions are met" ); - // return user state - return ( - totalClaimableStalk, - totalPlantableBeans, - totalHarvestablePods, - harvestablePlots, - shouldMow, - shouldPlant, - shouldHarvest - ); + return (harvestablePlots, shouldMow, shouldPlant, shouldHarvest); } /** @@ -281,6 +255,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { if (nextSeasonExpectedTimestamp - block.timestamp > SMART_MOW_BUFFER) return false; // if the totalDeltaB and totalClaimableStalk are both greater than the min amount, return true + // This also guards against double dipping the blueprint after planting or harvesting since stalk will be 0 return beanstalk.totalDeltaB() > int256(mintwaDeltaB) && totalClaimableStalk > minMowAmount; } diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 8dc8aed1..7be20fb6 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -21,6 +21,9 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { PriceManipulation priceManipulation; BeanstalkPrice beanstalkPrice; + event Plant(address indexed account, uint256 beans); + event Harvest(address indexed account, uint256 fieldId, uint256[] plots, uint256 beans); + uint256 STALK_DECIMALS = 1e10; uint256 constant MAX_GROWN_STALK_PER_BDV = 1000e16; // Stalk is 1e16 @@ -83,7 +86,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { state.beanToken = bs.getBeanToken(); state.initialUserBeanBalance = IERC20(state.beanToken).balanceOf(state.user); state.initialOperatorBeanBalance = bs.getInternalBalance(state.operator, state.beanToken); - state.mintAmount = 100000e6; + state.mintAmount = 110000e6; // 100k for deposit, 10k for sow state.tipAmount = 10e6; // 10 BEAN // Mint 2x the amount to ensure we have enough for all test cases @@ -93,7 +96,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { IERC20(state.beanToken).approve(address(bs), type(uint256).max); vm.prank(state.user); - bs.deposit(state.beanToken, state.mintAmount, uint8(LibTransfer.From.EXTERNAL)); + bs.deposit(state.beanToken, state.mintAmount - 10000e6, uint8(LibTransfer.From.EXTERNAL)); // For farmer 1, deposit 1000e6 beans, and mint them 1000e6 beans mintTokensToUser(farmers[1], state.beanToken, 1000e6); @@ -121,21 +124,25 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { if (setupHarvest) { // set soil to 1000e6 bs.setSoilE(1000e6); - // sow 1000e6 beans + // sow 1000e6 beans 2 times of 500e6 each + vm.prank(state.user); + bs.sow(500e6, 0, uint8(LibTransfer.From.EXTERNAL)); vm.prank(state.user); - bs.sow(1000e6, 0, uint8(LibTransfer.From.EXTERNAL)); + bs.sow(500e6, 0, uint8(LibTransfer.From.EXTERNAL)); + // print users plots + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount( + state.user, + bs.activeField() + ); + for (uint256 i = 0; i < plots.length; i++) { + console.log("plots[i].index", plots[i].index); + console.log("plots[i].pods", plots[i].pods); + } } return state; } - // Advance to the next season and update oracles - function advanceSeason() internal { - warpToNextSeasonTimestamp(); - bs.sunrise(); - updateAllChainlinkOraclesWithPreviousData(); - } - /////////////////////////// TESTS /////////////////////////// function test_mowPlantHarvestBlueprint_smartMow() public { @@ -159,7 +166,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // Setup mowPlantHarvestBlueprint (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( state.user, // account - SourceMode.PURE_PINTO, + SourceMode.PURE_PINTO, // sourceMode for tip 1 * STALK_DECIMALS, // minMowAmount (1 stalk) 10e6, // mintwaDeltaB type(uint256).max, // minPlantAmount @@ -168,12 +175,12 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { state.tipAmount, // operatorTipAmount MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); - + // Try to execute before the last minutes of the season, expect revert vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); executeRequisition(state.operator, req, address(bs)); - // Try to execute after the last minutes of the season + // Try to execute after in last minutes of the season vm.warp(bs.getNextSeasonStart() - 1 seconds); executeRequisition(state.operator, req, address(bs)); @@ -190,4 +197,319 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { "userTotalStalk should have increased" ); } + + function test_mowPlantHarvestBlueprint_plant() public { + // Setup test state + // setupPlant: true, setupHarvest: false, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, true); + + // get user total stalk before plant + uint256 userTotalStalkBeforePlant = bs.balanceOfStalk(state.user); + // assert user has grown stalk + assertGt(userTotalStalkBeforePlant, 0, "user should have grown stalk to plant"); + // get user total bdv before plant + uint256 userTotalBdvBeforePlant = bs.balanceOfDepositedBdv(state.user, state.beanToken); + // assert user has the initial bdv + assertEq(userTotalBdvBeforePlant, 100000e6, "user should have the initial bdv"); + // assert that the user has earned beans + assertGt(bs.balanceOfEarnedBeans(state.user), 0, "user should have earned beans to plant"); + + // Case 1: minPlantAmount is less than operator tip amount, reverts + { + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 1e6, // minPlantAmount < 10e6 (operator tip amount) + type(uint256).max, // minHarvestAmount + state.operator, // tipAddress + state.tipAmount, // operatorTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); + + // Execute requisition, expect revert + vm.expectRevert("Min plant amount must be greater than operator tip amount"); + executeRequisition(state.operator, req, address(bs)); + } + + // Case 2: plantable beans is less than minPlantAmount, reverts + { + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + type(uint256).max, // minPlantAmount > (total plantable beans) + type(uint256).max, // minHarvestAmount + state.operator, // tipAddress + state.tipAmount, // operatorTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); + + // Execute requisition, expect revert + vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); + executeRequisition(state.operator, req, address(bs)); + } + + // Case 3: minPlantAmount is greater than operator tip amount, executes + { + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount > 10e6 (operator tip amount) + type(uint256).max, // minHarvestAmount + state.operator, // tipAddress + state.tipAmount, // operatorTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); + + // Execute requisition, expect plant event + vm.expectEmit(); + emit Plant(state.user, 1933023687); + executeRequisition(state.operator, req, address(bs)); + + // get user total stalk after plant + uint256 userTotalStalkAfterPlant = bs.balanceOfStalk(state.user); + // assert the user total stalk has increased from mowing and planting + assertGt( + userTotalStalkAfterPlant, + userTotalStalkBeforePlant, + "userTotalStalk should have increased" + ); + + // get user total bdv after plant + uint256 userTotalBdvAfterPlant = bs.balanceOfDepositedBdv(state.user, state.beanToken); + // assert the user total bdv has increased as a result of the yield + assertGt( + userTotalBdvAfterPlant, + userTotalBdvBeforePlant, + "userTotalBdv should have increased" + ); + } + } + + function test_mowPlantHarvestBlueprint_harvest() public { + // Setup test state + // setupPlant: false, setupHarvest: true, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true); + + // take snapshot to return on case 3 + uint256 snapshot = vm.snapshot(); + + // advance season to print beans + advanceSeason(); + + // get user total bdv before harvest + uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); + // assert user has the initial bdv + assertEq(userTotalBdvBeforeHarvest, 100000e6, "user should have the initial bdv"); + // assert user has harvestable pods + (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) = _userHarvestablePods( + state.user + ); + assertGt(totalHarvestablePods, 0, "user should have harvestable pods to harvest"); + + // Case 1: minHarvestAmount is less than operator tip amount, reverts + { + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount + 1e6, // minHarvestAmount < 10e6 (operator tip amount) + state.operator, // tipAddress + state.tipAmount, // operatorTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); + + // Execute requisition, expect revert + vm.expectRevert("Min harvest amount must be greater than operator tip amount"); + executeRequisition(state.operator, req, address(bs)); + } + + // Case 2: partial harvest of 1 plot + { + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount + 11e6, // minHarvestAmount > 10e6 (operator tip amount) + state.operator, // tipAddress + state.tipAmount, // operatorTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); + + // Execute requisition, expect harvest event + vm.expectEmit(); + emit Harvest(state.user, bs.activeField(), harvestablePlots, 488088481); + executeRequisition(state.operator, req, address(bs)); + + // get user total bdv after harvest + uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv( + state.user, + state.beanToken + ); + // assert the user total bdv has decreased as a result of the harvest + assertGt( + userTotalBdvAfterHarvest, + userTotalBdvBeforeHarvest, + "userTotalBdv should have decreased" + ); + + // assert user harvestable pods is 0 + ( + uint256 totalHarvestablePodsAfterHarvest, + uint256[] memory harvestablePlotsAfterHarvest + ) = _userHarvestablePods(state.user); + + assertEq( + totalHarvestablePodsAfterHarvest, + 0, + "user should have no harvestable pods after harvest" + ); + assertEq( + harvestablePlotsAfterHarvest.length, + 0, + "user should have no harvestable plots after harvest" + ); + } + + // revert to snapshot to original state + vm.revertTo(snapshot); + + // // Case 3: full harvest of 2 plots + { + // add even more liquidity to well to print more beans and clear the podline + addLiquidityToWell(BEAN_ETH_WELL, 10000e6, 20 ether); + addLiquidityToWell(BEAN_WSTETH_WELL, 10000e6, 20 ether); + + // advance season to print beans + advanceSeason(); + + // assert user has harvestable pods + (, uint256[] memory harvestablePlots) = _userHarvestablePods( + state.user + ); + assertEq(harvestablePlots.length, 2, "user should have 2 harvestable plots"); + + // get user total bdv before harvest + uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv( + state.user, + state.beanToken + ); + + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount + 11e6, // minHarvestAmount > 10e6 (operator tip amount) + state.operator, // tipAddress + state.tipAmount, // operatorTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); + + // Execute requisition, expect harvest event + vm.expectEmit(); + emit Harvest(state.user, bs.activeField(), harvestablePlots, 1000100000); + executeRequisition(state.operator, req, address(bs)); + + // get user total bdv after harvest + uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv( + state.user, + state.beanToken + ); + // assert the user total bdv has decreased as a result of the harvest + assertGt( + userTotalBdvAfterHarvest, + userTotalBdvBeforeHarvest, + "userTotalBdv should have decreased" + ); + + // get user plots + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount( + state.user, + bs.activeField() + ); + // assert the user has no plots left + assertEq(plots.length, 0, "user should have no plots left"); + // assert the user has no harvestable pods + ( + uint256 totalHarvestablePodsAfterHarvest, + uint256[] memory harvestablePlotsAfterHarvest + ) = _userHarvestablePods(state.user); + assertEq( + totalHarvestablePodsAfterHarvest, + 0, + "user should have no harvestable pods after harvest" + ); + assertEq( + harvestablePlotsAfterHarvest.length, + 0, + "user should have no harvestable plots after harvest" + ); + // assert the bdv of the user increased + assertGt( + bs.balanceOfDepositedBdv(state.user, state.beanToken), + userTotalBdvBeforeHarvest, + "userTotalBdv should have increased" + ); + } + } + + /////////////////////////// HELPER FUNCTIONS /////////////////////////// + + /// @dev Helper function to get the total harvestable pods and plot indexes for a user + function _userHarvestablePods( + address account + ) internal view returns (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) { + // Get all plots for the user in the field + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(account, bs.activeField()); + uint256 harvestableIndex = bs.harvestableIndex(bs.activeField()); + + // First, count how many plots are at least partially harvestable + uint256 count; + for (uint256 i = 0; i < plots.length; i++) { + uint256 startIndex = plots[i].index; + if (startIndex < harvestableIndex) { + count++; + } + } + + // Allocate the array + harvestablePlots = new uint256[](count); + uint256 j = 0; + + // Now, fill the array and sum pods + for (uint256 i = 0; i < plots.length; i++) { + uint256 startIndex = plots[i].index; + uint256 plotPods = plots[i].pods; + + if (startIndex + plotPods <= harvestableIndex) { + // Fully harvestable + harvestablePlots[j++] = startIndex; + totalHarvestablePods += plotPods; + } else if (startIndex < harvestableIndex) { + // Partially harvestable + harvestablePlots[j++] = startIndex; + totalHarvestablePods += harvestableIndex - startIndex; + } + } + + return (totalHarvestablePods, harvestablePlots); + } + + /// @dev Advance to the next season and update oracles + function advanceSeason() internal { + warpToNextSeasonTimestamp(); + bs.sunrise(); + updateAllChainlinkOraclesWithPreviousData(); + } } From 5a01e3c6bc514d0d65d540fc4e775a52e60244ee Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 18 Jul 2025 09:07:05 +0000 Subject: [PATCH 012/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/interfaces/IBeanstalk.sol | 5 ++++- test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol | 4 +--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 80bd9ccd..62639194 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -160,7 +160,10 @@ interface IBeanstalk { LibTransfer.From mode ) external payable returns (uint256 pods); - function getPlotsFromAccount(address account, uint256 fieldId) external view returns (Plot[] memory plots); + function getPlotsFromAccount( + address account, + uint256 fieldId + ) external view returns (Plot[] memory plots); function mowAll(address account) external payable; diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 7be20fb6..b708cc86 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -393,9 +393,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { advanceSeason(); // assert user has harvestable pods - (, uint256[] memory harvestablePlots) = _userHarvestablePods( - state.user - ); + (, uint256[] memory harvestablePlots) = _userHarvestablePods(state.user); assertEq(harvestablePlots.length, 2, "user should have 2 harvestable plots"); // get user total bdv before harvest From 775cf7d2513e5690e7303c6acdd34c0a7036b6aa Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 31 Jul 2025 14:54:30 +0300 Subject: [PATCH 013/270] recreate beanstalk field setup --- .../init/shipments/InitReplaymentField.sol | 74 + hardhat.config.js | 17 + .../data/beanstalkPlots.json | 9965 +++++++++++++++++ .../populateBeanstalkField.js | 54 + 4 files changed, 10110 insertions(+) create mode 100644 contracts/beanstalk/init/shipments/InitReplaymentField.sol create mode 100644 scripts/beanstalkShipments/data/beanstalkPlots.json create mode 100644 scripts/beanstalkShipments/populateBeanstalkField.js diff --git a/contracts/beanstalk/init/shipments/InitReplaymentField.sol b/contracts/beanstalk/init/shipments/InitReplaymentField.sol new file mode 100644 index 00000000..df3d7a83 --- /dev/null +++ b/contracts/beanstalk/init/shipments/InitReplaymentField.sol @@ -0,0 +1,74 @@ +/* + SPDX-License-Identifier: MIT +*/ + +pragma solidity ^0.8.20; +import "contracts/libraries/LibAppStorage.sol"; +import "forge-std/console.sol"; + +/** + * @title InitReplaymentField + * @dev Initializes the beanstalk repayment field + **/ +contract InitReplaymentField { + uint256 constant REPAYMENT_FIELD_ID = 1; + + event FieldAdded(uint256 fieldId); + event ReplaymentPlotAdded(address indexed account, uint256 indexed plotIndex, uint256 pods); + + struct Plot { + uint256 podIndex; + uint256 podAmounts; + } + struct ReplaymentPlotData { + address account; + Plot[] plots; + } + + function init(ReplaymentPlotData[] calldata accountPlots) external { + // create new field + initReplaymentField(); + console.log("new field created"); + // populate the field to recreate the beanstalk podline + initReplaymentPlots(accountPlots); + } + + /** + * @notice Create new field, mimics the addField function in FieldFacet.sol + * @dev Harvesting is handled in LibReceiving.sol + */ + function initReplaymentField() internal { + AppStorage storage s = LibAppStorage.diamondStorage(); + // make sure this is only called once to create the beanstalk field + if (s.sys.fieldCount == 2) return; + uint256 fieldId = s.sys.fieldCount; + s.sys.fieldCount++; + console.log("new fieldId", fieldId); + emit FieldAdded(fieldId); + } + + /** + * @notice Re-initializes the repayment field with a reconstructed Beanstalk Podline. + * @param accountPlots the plots for each account + */ + function initReplaymentPlots(ReplaymentPlotData[] calldata accountPlots) internal { + AppStorage storage s = LibAppStorage.diamondStorage(); + for (uint i; i < accountPlots.length; i++) { + for (uint j; j < accountPlots[i].plots.length; j++) { + uint256 podIndex = accountPlots[i].plots[j].podIndex; + uint256 podAmount = accountPlots[i].plots[j].podAmounts; + s.accts[accountPlots[i].account].fields[REPAYMENT_FIELD_ID].plots[ + podIndex + ] = podAmount; + s.accts[accountPlots[i].account].fields[REPAYMENT_FIELD_ID].plotIndexes.push( + podIndex + ); + // Set the plot index after the push to ensure length is > 0. + s.accts[accountPlots[i].account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = + s.accts[accountPlots[i].account].fields[REPAYMENT_FIELD_ID].plotIndexes.length - + 1; + emit ReplaymentPlotAdded(accountPlots[i].account, podIndex, podAmount); + } + } + } +} diff --git a/hardhat.config.js b/hardhat.config.js index a589440c..84b8427d 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -36,6 +36,9 @@ const { task } = require("hardhat/config"); const { upgradeWithNewFacets, decodeDiamondCutAction } = require("./scripts/diamond.js"); const { resolveDependencies } = require("./scripts/resolveDependencies"); const { getFacetBytecode, compareBytecode } = require("./test/hardhat/utils/bytecode"); +const { + populateBeanstalkField +} = require("./scripts/beanstalkShipments/populateBeanstalkField.js"); //////////////////////// TASKS //////////////////////// @@ -1919,6 +1922,20 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m console.log("-----------------------------------"); }); +task("populateBeanstalkField", "Populates the beanstalk field with data from beanstalkPlots.json") + .setAction(async () => { + console.log("🌱 Starting Beanstalk field population..."); + const verbose = true; + + // Use the diamond deployer as the account + const account = await impersonateSigner(L2_PCM); + await mintEth(account.address); + + await populateBeanstalkField(L2_PINTO, account, verbose); + + console.log("āœ… Beanstalk field recreation completed successfully!"); + }); + //////////////////////// CONFIGURATION //////////////////////// module.exports = { diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json new file mode 100644 index 00000000..27a079b1 --- /dev/null +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -0,0 +1,9965 @@ +[ + [ + "0x00427C81629Cd592Aa068B0290425261cbB8Eba2", + [ + ["219512522113151", "7223908"], + ["219512529337059", "31759311271"], + ["220260780240981", "50970469725"], + ["220412639240355", "224945750526"], + ["296987641383543", "196600091571"], + ["297520012461425", "323552874641"] + ] + ], + ["0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97", [["259307845556208", "26788151839"]]], + [ + "0x00aaEa7B4dC89E4a4fACDa32da496ba5D8E1216d", + [ + ["213624545642929", "162190000000"], + ["247198969775858", "122194014367"], + ["259351838616547", "177840000000"], + ["275095398755606", "131880000000"], + ["325890072651230", "60578809843"], + ["325568349528199", "202965998727"], + ["325964705941059", "90135360000"] + ] + ], + [ + "0x01914D6E47657d6A7893F84Fc84660dc5aec08b6", + [ + ["222137414538585", "59835371765"], + ["264869362106309", "331258939473"], + ["281473918555928", "35022592719"] + ] + ], + [ + "0x01e82e6c90fa599067E1F59323064055F5007A26", + [ + ["311759016079886", "9835054149"], + ["332692990408590", "11996796641"] + ] + ], + ["0x0255b20571acc2e1708ADE387b692360537F9e89", [["309578044631862", "64992665273"]]], + ["0x0259D65954DfbD0735E094C9CdACC256e5A29dD4", [["225503555091497", "13153879503"]]], + [ + "0x028afa72DADB6311107c382cF87504F37F11D482", + [ + ["92823059143567", "10000000000"], + ["92809491258727", "13567884840"], + ["150109842699563", "260798082000"], + ["226891435159870", "134261600000"], + ["464738314284991", "1204607540000"] + ] + ], + ["0x029D058CFdBE37eb93949e4143c516557B89EB3c", [["656330490962897", "13019870000"]]], + ["0x02A527084F5E73AF7781846762c8753aCD096461", [["334429009280382", "48981431387"]]], + [ + "0x02df7e960FFda6Db4030003D1784A7639947d200", + [ + ["263229307052066", "89570739830"], + ["367992576479833", "89814117243"], + ["640248688742909", "32004132279"], + ["700509338012799", "1029829519"], + ["705148261261814", "5592069316"], + ["715901934912710", "204556800000"] + ] + ], + [ + "0x0399ecFbb2a9D0D520738b3179FA685cD5c6D692", + [ + ["326115054051340", "4512552964"], + ["326066593794316", "40827127085"] + ] + ], + [ + "0x0440bDd684444f1433f3d1E0208656abF9993C52", + [ + ["373925950027664", "45302318890"], + ["582169824919253", "42943568151"] + ] + ], + [ + "0x047B22BFE547d29843c825dbcBd9E0168649d631", + [ + ["293603662086844", "5000000000"], + ["339785493449995", "5000000000"] + ] + ], + [ + "0x05Dc8E95a479dDA8C8Fc5a27Eb825f5042048937", + [ + ["242099536238542", "48687410197"], + ["267130014958056", "441400000000"], + ["372014214928944", "130307882672"] + ] + ], + [ + "0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8", + [ + ["209220519528131", "11650000023"], + ["231708174808450", "128204242520"], + ["231341219356809", "42212058637"], + ["234388087920671", "76785972127"], + ["235139368197334", "88530245061"], + ["235466496070620", "89069724637"], + ["242220953693190", "176370890696"], + ["274834294245546", "232473608236"], + ["298577221698411", "80785205928"], + ["360005402458005", "110000000022"], + ["403141541165007", "89548106083"], + ["439287718752073", "64814486924"], + ["446851712935884", "64017873961"], + ["456666382031303", "13450636839"] + ] + ], + [ + "0x072Fa8a20fA621665B94745A8075073ceAdFE1DC", + [ + ["293793662086844", "1258344408"], + ["451881155731609", "2694713257"], + ["625899610647771", "14602525520"] + ] + ], + ["0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122", [["288633732961858", "18305090101"]]], + [ + "0x083aA7FF9AE00099471902178bf2fda4e6aC14Bf", + [ + ["115734261815618", "1373342955832"], + ["572446942692513", "4995900000000"] + ] + ], + ["0x0872FcfE9C10993c0e55bb0d0c61c327933D6549", [["506164338357844", "3929400000000"]]], + ["0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b", [["205258499222763", "93939450745"]]], + [ + "0x0933F554312C7bcB86dF896c46A44AC2381383D1", + [ + ["66077490832749", "4285968142"], + ["137158194248376", "70534236366"], + ["137090927995303", "33932867140"], + ["700800480278284", "16260418699"], + ["698385571290683", "91670658400"], + ["698332329637545", "44433251272"], + ["829917360405126", "346152924157"], + ["831739833955659", "286285987606"], + ["832112764722655", "143688821720"], + ["840288530083841", "375150000000"], + ["835325809463925", "312721607422"], + ["842562968278458", "379600000000"], + ["843131470697234", "451981999254"], + ["843824641428214", "419849681838"], + ["846649026246732", "872694086398"], + ["848001786853259", "1183774050841"], + ["852055421577128", "1106707810652"], + ["855295769925501", "1147301756523"], + ["853162129387780", "624274000000"], + ["856443385149023", "724139532487"], + ["863516863753396", "80990864682"], + ["864828654618078", "1511781533128"], + ["869937363903103", "32924291737"], + ["859649756244601", "1449652715577"], + ["869398936159740", "289613602687"], + ["867688984695408", "1537161274244"], + ["857252181498994", "2163507174639"], + ["910859102244013", "3670278368"], + ["874871142303705", "1573900000000"], + ["907004994946789", "647085248223"], + ["908175569183219", "1015442311180"], + ["910862772522381", "7048310149752"], + ["917911082672133", "799024050000"], + ["922786592900977", "31158988487"], + ["927165331055095", "464894511809"], + ["927997461195550", "33054418018"] + ] + ], + [ + "0x0968d6491823b97446220081C511328d8d9Fb61D", + [ + ["260751601304940", "55851479923"], + ["252900231373437", "10149461593"] + ] + ], + ["0x09Ad186D43615aa3131c6064538aF6E0A643Ce12", [["716821446204135", "84542994300"]]], + [ + "0x09Bc3c127ED4c491880c2A250d6d034696cb5fC1", + [ + ["117206229423574", "125474075"], + ["711678653676332", "1644150213"], + ["714806519970192", "1746693893"] + ] + ], + [ + "0x0b8e605A7446801ae645e57de5AAbbc251cD1e3c", + [ + ["81428887071705", "861309250"], + ["117244875106467", "12681413672"], + ["117389926837876", "1552792281176"], + ["122360416208513", "21058843918"], + ["168002025206659", "66666666666"], + ["159942186473321", "356881824000"], + ["200834733464584", "33077610000"], + ["211471591689415", "14981210723"], + ["221003663002392", "42005288414"], + ["629670321709709", "18284615400"], + ["656219287275397", "7641038500"], + ["691674298786863", "2555702594"], + ["695260557505474", "2024888736"], + ["692926487441468", "1674567409"], + ["823185181303215", "181400000000"] + ] + ], + ["0x0baBD9Eba4c7C739Edd2dBCd6de0b7C483068948", [["242202028393123", "18925300067"]]], + [ + "0x0C040E41b5b17374b060872295cBE10Ec8954550", + [ + ["154125130757084", "9964227433"], + ["829906387458599", "1310476723"] + ] + ], + [ + "0x0ccBCaA60D8b59bDf751B70Ee623d58c609170ac", + [ + ["695317982276603", "1210963754"], + ["695495577990844", "2959780489"], + ["696086990150023", "1355977905"] + ] + ], + [ + "0x0DE299534957329688a735d03961dBd848A5f87f", + [ + ["698249185306444", "5830146448"], + ["698115995386371", "56157982228"], + ["700134813855459", "65168474382"] + ] + ], + ["0x0e109847630A42fc85E1D47040ACAd1803078DCc", [["710118154870377", "984567024"]]], + ["0x0e40Cf5c020ADa54351699a004fAEbE5e709a3A2", [["510095548540793", "1877710176"]]], + ["0x0e4D2c272f192bCC5ef7Bb3D8A09bdA087652162", [["922232828111947", "94606769"]]], + ["0x0E9a7280741E9B018beb5Fe409e6e21689F3B8EF", [["404800573112562", "555555555"]]], + [ + "0x0f26F792fB89daF87A10a40f57eD1a0093b74Ad7", + [ + ["221202055914502", "98509439990"], + ["263964858351524", "89002945570"] + ] + ], + ["0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59", [["802402236468190", "991516800"]]], + [ + "0x0f5F4b5b7ca352cf4F5f2fc1Ac8A9889DECc4fCB", + [ + ["218827625606992", "90796678203"], + ["379279622042320", "95195252943"] + ] + ], + [ + "0x0F7aFAa9DAC8F9ada59a25fa02AA6Ab32E56b145", + [ + ["230011236251843", "78593971335"], + ["451858242743572", "22912988037"], + ["467318943712484", "20158944528"], + ["640173287406938", "19113929431"] + ] + ], + [ + "0x0FBF5E9C8D7cB0AeDd6F02Df0018178099c7d76A", + [ + ["327131631314518", "26954073714"], + ["327094716728275", "28823695338"], + ["343639296408424", "38293655362"] + ] + ], + [ + "0x1083D7254E01beCd64C3230612BF20E14010d646", + [ + ["122238087814012", "1"], + ["321145443111092", "10000000000"], + ["332845052284373", "145150909249"], + ["367967369691693", "25206788140"], + ["451648835683720", "38976000000"], + ["647509468720119", "42000000"], + ["647781216014808", "50000000000"], + ["704173271318565", "1850039534"], + ["804469632628451", "15655978265"] + ] + ], + [ + "0x10bf1Dcb5ab7860baB1C3320163C6dddf8DCC0e4", + [ + ["296438422246501", "43811488957"], + ["345456176278838", "7622833600000"], + ["381366697898472", "1248107035238"], + ["472919334210993", "3440214113127"] + ] + ], + ["0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", [["422363385300603", "2406000000"]]], + ["0x11D86e9F9C2a1cF597b974E50C660316c92215AA", [["635286832458963", "18405369858"]]], + [ + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", + [ + ["742807303929456", "7527748761"], + ["803378843060369", "375414"] + ] + ], + ["0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186", [["625914213173291", "1165879450"]]], + [ + "0x12f1412fECBf2767D10031f01D772d618594Ea28", + [ + ["467315572517841", "1685616675"], + ["467317258134516", "1685577968"], + ["513189588115820", "27897692308"] + ] + ], + ["0x1348EA8E35236AA0769b91ae291e7291117bf15C", [["61618647066095", "616643076"]]], + ["0x13b1ddb38c80327257Bdcb0e321c834401399967", [["705511785947571", "2502367588"]]], + [ + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", + [ + ["206627322508711", "42841247573"], + ["206670163756284", "42783848059"] + ] + ], + ["0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", [["122213630970075", "2500000000"]]], + [ + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", + [ + ["685372001238017", "203615000"], + ["695900937229816", "1040000000"], + ["707860938916827", "2437432840"], + ["733380425581158", "2387375166"], + ["733480004003187", "421577971"], + ["743115143767009", "291165686"], + ["799284353729748", "20323399607"], + ["821599947215732", "1145095488"], + ["901681090548064", "1108572912315"] + ] + ], + ["0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b", [["219659688648330", "1610099875"]]], + ["0x14A9034C185f04a82FdB93926787f713024c1d04", [["921105492232241", "122609442232"]]], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + [ + ["843583452824618", "64162381017"], + ["889722682869114", "157785618045"] + ] + ], + [ + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", + [ + ["61618622471895", "24594200"], + ["94355302482701", "903943566"], + ["859415870473872", "8915991349"] + ] + ], + ["0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", [["708120196123286", "18"]]], + [ + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", + [ + ["684773211540053", "529063312964"], + ["672857205023752", "10622053659968"] + ] + ], + [ + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", + [ + ["74037039934810", "69000000000"], + ["88792768518840", "11430287315"], + ["213111754387101", "102043966209"], + ["263318877791896", "109329481723"], + ["278018963436918", "109550000000"], + ["285095759529751", "215672515793"], + ["282425872557291", "303606880000"], + ["311239099542108", "136745811108"], + ["320232726795024", "213600000000"], + ["387729356992496", "56701527977"], + ["398441539093275", "524000000000"], + ["392948920651510", "77550000000"], + ["593725791584083", "74008715512"], + ["612092351995102", "77710549315"], + ["612276454284417", "77448372715"], + ["611896253513734", "154323271198"], + ["641596173549000", "385627368167"], + ["649980355544877", "24416902119"], + ["649973165211557", "7190333320"], + ["652682099895575", "192654267895"], + ["704814323609845", "9539096044"], + ["704800692794098", "6908969226"], + ["704182741158592", "6077435843"], + ["704807601763324", "6721846521"] + ] + ], + ["0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21", [["288960520307671", "45528525078"]]], + [ + "0x15e6e23b97D513ac117807bb88366f00fE6d6e17", + [ + ["582212768487404", "1766705104317"], + ["559365222387574", "437186238884"], + ["591550466739965", "35719340050"], + ["591607575479537", "125209382874"] + ] + ], + ["0x15e83602FDE900DdDdafC07bB67E18F64437b21e", [["325833631808009", "47834854016"]]], + [ + "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", + [ + ["133704865469102", "357542100000"], + ["150370640781563", "1175500000023"], + ["426551529912775", "1865083098796"], + ["450168730809845", "1434547698166"], + ["666997267147860", "390832131713"], + ["809445084704397", "2915005876762"] + ] + ], + [ + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", + [ + ["170675709922115", "200302309"], + ["697016479267143", "8122037505"], + ["696972363184307", "920876600"], + ["707948630301958", "4169534646"], + ["767020132229302", "622068"], + ["828631931683650", "48133673"] + ] + ], + ["0x16785ca8422Cb4008CB9792fcD756ADbEe42878E", [["328431316120274", "20209787690"]]], + ["0x168c6aC0268a29c3C0645917a4510ccd73F4D923", [["733779102875875", "29376243060"]]], + ["0x16942d62E8ad78A9026E41Fab484C265FC90b228", [["221885504514381", "3293294269"]]], + [ + "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d", + [ + ["921035792719039", "2259704612"], + ["921102463475874", "3028756367"], + ["921452930531316", "3253278012"], + ["978072441547137", "14518741904"] + ] + ], + [ + "0x183be3011809A2D41198e528d2b20Cc91b4C9665", + [ + ["275066767853782", "791280000"], + ["276925106918842", "266104007323"], + ["275067559133782", "27839621824"] + ] + ], + ["0x184CbD89E91039E6B1EF94753B3fD41c55e40888", [["829727454479103", "3341098908"]]], + ["0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", [["829217258503469", "329449782"]]], + [ + "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD", + [ + ["319211641505303", "167225426282"], + ["320733140604175", "361835231607"] + ] + ], + [ + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", + [ + ["94344360039302", "221122"], + ["228817042094650", "7229528214"], + ["380204596964305", "251763737525"], + ["386789692157768", "87903418092"], + ["399077581172535", "30560719176"], + ["467294667649600", "20904868241"], + ["545522025241359", "25643572670"], + ["568793551054470", "72403522735"], + ["584654701827488", "42093860151"], + ["592872384656832", "42662135276"], + ["628826602399709", "9489375000"], + ["628614673024709", "9489375000"], + ["626799392488540", "18978750000"], + ["632125035347047", "9489375000"], + ["632336964722047", "9489375000"], + ["640792340953260", "76688553531"], + ["650139403697488", "54681668957"], + ["667388099279573", "65298375971"], + ["685733468508954", "39404468562"], + ["706552794352109", "386055000000"], + ["708996860813003", "13807475000"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["61549737588069", "1377517"], + ["137157571042349", "19169818"], + ["697954540486029", "17394829"], + ["710903001207054", "225355921"], + ["803070610911920", "92867236"], + ["802857174622935", "1485847896"], + ["803070518758042", "92153878"], + ["802855790884669", "1383738266"], + ["803032956871681", "10465635"], + ["802854130822523", "841394646"], + ["803032967337316", "5645699"], + ["803032946626183", "10245498"], + ["803171251410912", "435226"], + ["803688154585644", "1417000000"], + ["803672696597725", "270820"], + ["803675374247341", "10795914"], + ["803674115618545", "1258079286"], + ["803671606642827", "717824824"], + ["803688154562070", "23574"], + ["804851839851309", "811945"], + ["803672696868545", "1418750000"], + ["803671492278192", "114364635"], + ["804842695055238", "470214653"], + ["803675385043255", "13800216"], + ["803078202347988", "569000000"], + ["803620273889824", "568300000"], + ["804851218959878", "620891431"], + ["804485288606716", "5992389"], + ["803672324467651", "372130074"], + ["804843913642525", "227807703"], + ["804843165269891", "748372634"], + ["804485294599105", "3305213"], + ["803675373697831", "549510"], + ["805534475323045", "26650792"], + ["820973810757086", "53934662"], + ["805534446918497", "28404548"], + ["805891135943172", "1401250000"], + ["820890206310756", "383411"], + ["820922375604392", "819071019"], + ["820975559130399", "304771266"], + ["820950339134311", "342360149"], + ["805861697362172", "1401250000"], + ["820949807899505", "80837003"], + ["805534420438067", "26480430"], + ["820974880153665", "87772583"], + ["820977309418061", "195479514"], + ["805892537193172", "1402000000"], + ["820974622042147", "53840934"], + ["820993666918630", "33837399"], + ["820993505230366", "5976553"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["820994173068216", "45526410"], + ["821073396083259", "37991124"], + ["821073540860163", "33378"], + ["820994358612014", "53414936"], + ["820993500016554", "5213812"], + ["820993511206919", "21553814"], + ["820993495899937", "4116617"], + ["820993700756029", "2739149"], + ["821073540366841", "51906"], + ["820994056469831", "42017555"], + ["820978816410967", "16253699"], + ["821069504835549", "107661120"], + ["821069774714254", "1297000000"], + ["821064034478928", "45905339"], + ["821072969452540", "241078908"], + ["821069302460527", "38630505"], + ["821073529008485", "11358356"], + ["821069750025068", "24689186"], + ["821069412658261", "26325085"], + ["821071071714254", "1897738286"], + ["821073359455743", "36627516"], + ["821068921363414", "23725468"], + ["821069709418405", "40606663"], + ["820994454025062", "993492"], + ["821096921778762", "87943134"], + ["821073730703338", "1560798"], + ["821073959413996", "87607044"], + ["821073540893541", "59927806"], + ["821074210355186", "91379524"], + ["821073730634519", "68819"], + ["821098529503011", "178428925"], + ["821074864848932", "17689777"], + ["821074343843606", "42970660"], + ["821096135891960", "89244217"], + ["821096499863651", "19970712"], + ["821097993225516", "11106068"], + ["821097160102704", "52891473"], + ["821074425330645", "36709909"], + ["821074827381965", "17764676"], + ["821074146140978", "64214208"], + ["821073600821347", "129787486"], + ["821074634544550", "136593205"], + ["821096519834363", "40621903"], + ["821074462040554", "37022875"], + ["821099172593160", "63434690"], + ["821097090423746", "34810751"], + ["821095944425893", "191466067"], + ["821097009721896", "80701850"], + ["821098004331584", "754844"], + ["821074301734710", "42108896"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["821074386814266", "38516379"], + ["821097939418858", "53806658"], + ["821097531737407", "84942957"], + ["821099789501546", "15686626"], + ["821074998918921", "1264250000"], + ["821097386793728", "87498268"], + ["821095918304742", "5871934"], + ["821074606368827", "9283973"], + ["821096719830430", "28296198"], + ["821074777933198", "7586684"], + ["821074771137755", "6795443"], + ["821096560456266", "53101794"], + ["821097125234497", "34868207"], + ["821074134076500", "12027360"], + ["821098301224132", "85630651"], + ["821096426623230", "73240421"], + ["821074960591003", "38327918"], + ["821073872376148", "87037848"], + ["821098707931936", "123574577"], + ["821096341659648", "84963582"], + ["821096666668672", "53161758"], + ["821096834639421", "87139341"], + ["821074047021040", "87055460"], + ["821074882538709", "19315364"], + ["821074845146641", "19702291"], + ["821074499063429", "37059712"], + ["821095912506750", "5797992"], + ["821074615652800", "174300"], + ["821097701927878", "77422809"], + ["821074921273738", "19518970"], + ["821099566249860", "2958794"], + ["821074785519882", "20897127"], + ["821097779350687", "79919576"], + ["821099445427640", "96930960"], + ["821074615827100", "18717450"], + ["821099769730455", "19771091"], + ["821099092664851", "79928309"], + ["821099640622401", "64736772"], + ["821097859270263", "80148595"], + ["821099236027850", "209399790"], + ["821097616680364", "85247514"], + ["821074940792708", "19798295"], + ["821098005086428", "86600675"], + ["821096613558060", "53110612"], + ["821098386854783", "53709030"], + ["821099542358600", "23891260"], + ["821099740942536", "28787919"], + ["821074806417009", "20964956"], + ["821099576246308", "64376093"], + ["821073732264136", "53380815"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["821074901854073", "19419665"], + ["821074536123141", "37098116"], + ["821098178122526", "44248597"], + ["821098440563813", "88939198"], + ["821099705359173", "35583363"], + ["821073730608833", "25686"], + ["821095911438790", "1067960"], + ["821096748126628", "86512793"], + ["821095924176676", "20249217"], + ["821482818446346", "53690506"], + ["821100289021688", "104148749"], + ["821483083307179", "17275264"], + ["821483026409370", "36974408"], + ["821483136545125", "11536310"], + ["821486583148010", "54141970"], + ["821100646167491", "55455079"], + ["821482800427408", "18018938"], + ["821483104880745", "2606436"], + ["821482980796998", "45612372"], + ["821486777181018", "70867493"], + ["821486706630195", "70550823"], + ["821101071162242", "54726591"], + ["821100497627822", "39466456"], + ["821482872136852", "22923031"], + ["821482351457491", "935137"], + ["821100393170437", "104457385"], + ["821483100582443", "696496"], + ["821486529201123", "53946887"], + ["821099980903638", "100272607"], + ["821483102582399", "2298346"], + ["821483063383778", "19923401"], + ["821483113598516", "470384"], + ["821486848048511", "24481635"], + ["821483101278939", "1303460"], + ["821486925050950", "53846437"], + ["821486637289980", "69340215"], + ["821486475267611", "53933512"], + ["821099893528805", "87374833"], + ["821482895059883", "21080639"], + ["821482353283335", "934897"], + ["821482354218232", "1008171"], + ["821482935336484", "45460514"], + ["821482348876348", "2581143"], + ["821482356166815", "444260593"], + ["821482327568473", "21307875"], + ["821482916140522", "19195962"], + ["821486978897387", "54081133"], + ["821486421403049", "53864562"], + ["821482355226403", "940412"], + ["821482352392628", "890707"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["821483114068900", "11175759"], + ["821100591554021", "54613470"], + ["821100185007919", "104013769"], + ["821100537094278", "54459743"], + ["821483125244659", "11300466"], + ["821101125888833", "53864309"], + ["823423973305397", "111320920"], + ["823424084626317", "53936630"], + ["822986878246566", "27685781"], + ["821599574901006", "785942"], + ["821599575686948", "1144304"], + ["822986595429986", "17079412"], + ["822986701919933", "43935728"], + ["822986647297190", "13476875"], + ["822986745855661", "53726319"], + ["821599576831252", "1310135"], + ["822936449523294", "160545"], + ["822986831149317", "19442054"], + ["822986799581980", "31567337"], + ["823424576246663", "29618432"], + ["822986674258965", "27660968"], + ["823424192573832", "54033702"], + ["823424489256825", "86989838"], + ["822990062504016", "17618940"], + ["824070121174749", "53517184"], + ["823424738820253", "88554558"], + ["824070174691933", "53566454"], + ["823424300661581", "54159010"], + ["824069836027334", "55156263"], + ["822986549458933", "22956002"], + ["824070444601847", "2889658"], + ["822986572414935", "23015051"], + ["822936449683839", "429708"], + ["822990132831068", "1133750000"], + ["822937163889264", "457637"], + ["824069912397647", "52319596"], + ["822986612509398", "34787792"], + ["823424354820591", "53483677"], + ["824055940006049", "1123500000"], + ["824069781850021", "54177313"], + ["823424246607534", "54054047"], + ["822936450113547", "618377"], + ["822990080122956", "52708112"], + ["823424605865095", "53514750"], + ["823424138562947", "54010885"], + ["824055825790314", "98431377"], + ["822986660774065", "13484900"], + ["824070447491505", "46035569"], + ["824055924221691", "15784358"], + ["823424659379845", "79440408"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["824070228258387", "54362634"], + ["824070344363474", "100238373"], + ["822986520514896", "28944037"], + ["822986905932347", "14517084"], + ["824069964717243", "156457506"], + ["822947849664869", "984887"], + ["823968318915582", "1124000000"], + ["822936450731924", "835669"], + ["822986850591371", "27655195"], + ["825006225227225", "11924506"], + ["825006468327689", "78649"], + ["825005874918558", "87811"], + ["825005658772315", "46564085"], + ["824583181650333", "3194591"], + ["825006577963887", "2881442"], + ["825006224809492", "65545"], + ["825006470584497", "53679679"], + ["825008324010622", "11118127"], + ["825008313350567", "10660055"], + ["825006624615481", "60410828"], + ["825006225073575", "153650"], + ["825006685026309", "36230820"], + ["825008294645463", "7227368"], + ["825033678345863", "10530035"], + ["825005856065368", "18853190"], + ["824932206771837", "53478200"], + ["825033578931622", "18842007"], + ["825005796722553", "390583"], + ["825006365807399", "43889485"], + ["825006224781119", "28373"], + ["825008301872831", "11477736"], + ["825006463334702", "4992987"], + ["825006721257129", "71702191"], + ["825033704209239", "8970126"], + ["825033560913072", "18018550"], + ["825027253641430", "63786254"], + ["825027317427684", "64002031"], + ["825028414024846", "37968961"], + ["825005705336400", "53551433"], + ["825006215052127", "9728992"], + ["825033699604155", "4605084"], + ["825006052442158", "53513899"], + ["825027416163511", "861786"], + ["825006363677016", "2130383"], + ["825033513835500", "29092593"], + ["825033542928093", "17984979"], + ["825033676427114", "1918749"], + ["825033688875898", "10728257"], + ["825005758887833", "37834720"], + ["825006224875037", "92711"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["825033646015171", "17883715"], + ["825005875006369", "46267543"], + ["825006409696884", "53637818"], + ["825005852215332", "1578152"], + ["825006580845329", "43770152"], + ["824932260250037", "54572785"], + ["825033614462497", "15727180"], + ["825006237151731", "19203818"], + ["824836809853556", "1115750000"], + ["825005921273912", "59141147"], + ["825033597773629", "16688868"], + ["825033663898886", "12528228"], + ["824921401736038", "1116000000"], + ["825027417025297", "10162644"], + ["825028404780931", "9243915"], + ["825006524264176", "53699711"], + ["825033630189677", "15825494"], + ["825005797113136", "55102196"], + ["825005998968976", "53473182"], + ["825008287492407", "7153056"], + ["825006224967748", "105827"], + ["825067558948101", "15087847"], + ["825039551308902", "73796314"], + ["825039504519447", "8829644"], + ["825106731909933", "3016979"], + ["825107423828909", "9143544"], + ["825082488040390", "11935751"], + ["825082476575324", "11465066"], + ["825107295406571", "8620088"], + ["825082442949234", "11007680"], + ["825107451802680", "10373808"], + ["825073357786952", "15498278"], + ["825073373285230", "24830243"], + ["825104716202541", "85094056"], + ["825112083243955", "11304378"], + ["825112116754925", "9837030"], + ["825082533722670", "9765854"], + ["825107370206540", "10828154"], + ["825104801296597", "85627588"], + ["825082543488524", "9797075"], + ["825112094548333", "11337518"], + ["825107393267880", "12897667"], + ["825107388578228", "4689652"], + ["825109923435429", "8984999"], + ["825109932420428", "9076772"], + ["825107442385795", "9416885"], + ["825107333368766", "9543362"], + ["825039541252327", "10056575"], + ["825112071969838", "10372838"], + ["825107432972453", "9413342"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["825112082342676", "901279"], + ["825082453956914", "11282748"], + ["825107406165547", "8815547"], + ["825107352523424", "9636433"], + ["825109914552345", "8883084"], + ["825039516660288", "12163802"], + ["825107362159857", "8046683"], + ["825082465239662", "11335662"], + ["825082525740435", "7982235"], + ["825107462176488", "19789932"], + ["825106738018377", "557388194"], + ["825107304026659", "29342107"], + ["825106734926912", "3091465"], + ["825112127692784", "66658"], + ["825112127759442", "73073"], + ["825112126591955", "1100829"], + ["825082553285599", "1044500000"], + ["825107342912128", "9611296"], + ["825082499976141", "12877546"], + ["825039528824090", "12428237"], + ["825107381034694", "7543534"], + ["825039513349091", "3311197"], + ["825082512853687", "12886748"], + ["825073398115473", "24944523"], + ["825185822014682", "9213207"], + ["825188991096414", "8204048"], + ["825185812810597", "9204085"], + ["825114848852115", "11006773"], + ["825112271009857", "45138194"], + ["825187298818780", "5496270"], + ["825188026838625", "255180"], + ["825185194550203", "9063092"], + ["825187304315050", "361195"], + ["825112249678795", "7945168"], + ["825187305448349", "696608867"], + ["825185222525166", "12814935"], + ["825188066592264", "33393007"], + ["825114859858888", "328433"], + ["825112376293263", "8506342"], + ["825112244034340", "5644455"], + ["825185799663761", "10969416"], + ["825114837914603", "10937512"], + ["825188027093805", "8969278"], + ["825114860187321", "10334991"], + ["825112145330613", "347778"], + ["825188015302767", "11535858"], + ["825185235340101", "13040915"], + ["825188045366876", "9999166"], + ["825112235743643", "8290697"], + ["825187304676245", "772104"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["825112145010853", "319760"], + ["825112144830222", "75873"], + ["825187276354073", "11163969"], + ["825188100720648", "10266010"], + ["825189009033104", "10150423"], + ["825188065375580", "1216684"], + ["825185772618353", "12804398"], + ["825112364296535", "11996728"], + ["825188099985271", "735377"], + ["825185810633177", "2177420"], + ["825112318014638", "9980195"], + ["825112225187279", "10556364"], + ["825112316148051", "1866587"], + ["825185764598778", "8019575"], + ["825112214730127", "10457152"], + ["825112144906095", "104758"], + ["825112128246593", "16583629"], + ["825112327994833", "5750227"], + ["825188999300462", "9732642"], + ["825188055366042", "10009538"], + ["825187287518042", "11300738"], + ["825188011107595", "4195172"], + ["825112257623963", "13385894"], + ["825112127832515", "414078"], + ["825188002057216", "9050379"], + ["825188036063083", "9303793"], + ["825185785422751", "14241010"], + ["825112353389886", "10906649"], + ["825112333745060", "9795651"], + ["825580659335921", "895341231"], + ["825581644328084", "1617109"], + ["825583171953653", "9988705"], + ["825229215284291", "17982514"], + ["825581646847068", "8786495"], + ["825583266459628", "428167"], + ["825581664430557", "483474928"], + ["825583118348577", "3844352"], + ["825580627747359", "10260665"], + ["825581590448673", "5437824"], + ["825460171990725", "945750000"], + ["825583190922994", "9308598"], + ["825229233266805", "18573856"], + ["825581612327272", "4836310"], + ["825244315254643", "10253563"], + ["825242377255158", "8992681"], + ["825581554677152", "3190831"], + ["825244308547528", "6707115"], + ["825242386247839", "943500000"], + ["825583209566861", "7550863"], + ["825581595886497", "1634581"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["825583109990132", "8013962"], + ["825581655633563", "8796994"], + ["825583267817775", "591362"], + ["825242371019283", "6235875"], + ["825583248122282", "808524"], + ["825582204265419", "19005242"], + ["825243329747839", "943500000"], + ["825583200231592", "9335269"], + ["825582167236116", "18030442"], + ["825583161486214", "10467439"], + ["825583181942358", "8980636"], + ["825581597521078", "30412"], + ["825583265627702", "188453"], + ["825244378205323", "940750000"], + ["825583141596235", "9503988"], + ["825580648451835", "10884086"], + ["825583267324776", "492999"], + ["825581605623348", "6703924"], + ["825582157851364", "9384752"], + ["825583243439223", "4683059"], + ["825581597551490", "6680863"], + ["825583266060401", "399227"], + ["825581619511113", "2444950"], + ["825583266887795", "436981"], + ["825581617163582", "2347531"], + ["825583248930806", "16696896"], + ["825581565974232", "8125848"], + ["825583132097489", "9498746"], + ["825240859481990", "944000000"], + ["825586067955203", "9556834"], + ["825582185266558", "18998861"], + ["827241682390579", "905500000"], + ["825580617739998", "10007361"], + ["825581621956063", "2595517"], + ["825582147905485", "9945879"], + ["825583217117724", "4906079"], + ["825583265816155", "244246"], + ["825581574100080", "8140742"], + ["825580638008024", "10443811"], + ["825581604232353", "1390995"], + ["825583151100223", "10385991"], + ["825583222023803", "8991244"], + ["825581582240822", "8207851"], + ["825583123163974", "8933515"], + ["825583118004094", "344483"], + ["825244273247839", "35299689"], + ["825581624551580", "5693285"], + ["825566910071858", "946000000"], + ["825581630244865", "7659096"], + ["825244325508206", "52697117"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["825581645945193", "901875"], + ["825583231015047", "12424176"], + ["829112200225422", "53768852"], + ["829112309346999", "47061647"], + ["829134222111169", "88216460"], + ["829113555241771", "129427752"], + ["829112093912242", "52737476"], + ["829133985483437", "65591706"], + ["829112253994274", "55352725"], + ["829113466908646", "88333125"], + ["829133930861943", "54621494"], + ["829112146649718", "53575704"], + ["829133852675919", "78186024"], + ["829134051075143", "81397820"], + ["829134132472963", "89638206"], + ["829112356408646", "1110500000"], + ["829132731425561", "1121250000"], + ["829186461004640", "132785034"], + ["829135193420574", "88084070"], + ["829188134239460", "87910416"], + ["829185573423485", "119219224"], + ["829135017343885", "88031169"], + ["829188309833608", "86467952"], + ["829134310327629", "85936196"], + ["829186593789674", "149829249"], + ["829185449045229", "124378256"], + ["829187693806944", "86928993"], + ["829187780735937", "86484069"], + ["829188222149876", "87683732"], + ["829135105375054", "88045520"], + ["829187604974711", "88832233"], + ["829183942530034", "1118250000"], + ["829189006615252", "123265068"], + ["829187954236880", "88333175"], + ["829186329362814", "131641826"], + ["829188918427997", "88187255"], + ["829135369663422", "1111500000"], + ["829186070168158", "129567688"], + ["829185813411655", "128280239"], + ["829185316296360", "132748869"], + ["829188830084449", "88343548"], + ["829188042570055", "91669405"], + ["829185060781957", "128513841"], + ["829185189295798", "127000562"], + ["829188657245410", "86397690"], + ["829188743643100", "86441349"], + ["829135281504644", "88157182"], + ["829188482895673", "86619651"], + ["829188569515324", "87730086"], + ["829187434127434", "83536024"] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + ["829187517663458", "87311253"], + ["829187867220006", "87016874"], + ["829185692642709", "120768946"], + ["829134396263825", "88956801"], + ["829188396301560", "86594113"], + ["829186199735846", "129626968"], + ["920968356254447", "1695263"], + ["920968354641147", "1613300"], + ["920968314518884", "19836791"], + ["906983573530786", "3559343229"], + ["906995344962388", "1723984401"], + ["920968312735493", "169491"], + ["906987132874015", "4963424782"], + ["920756437449865", "22832250"], + ["920968334355675", "20285472"], + ["920968312904984", "1613900"], + ["920968357949710", "1781388"], + ["920887612562705", "1614400"], + ["906992096298797", "3248663591"], + ["920968359731098", "9760866"], + ["920968312574043", "161450"], + ["921032077741323", "1025355734"], + ["921033913769314", "325809885"], + ["921038052423810", "169472"], + ["921228157944019", "189471"], + ["921228157765182", "178837"], + ["921234916621567", "158770"], + ["921234916780337", "168264"], + ["921234927690661", "188829"], + ["921228157596346", "168836"], + ["921234927512430", "178231"] + ] + ], + ["0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", [["273849569531660", "405214898001"]]], + ["0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C", [["782079849018782", "15067225270"]]], + [ + "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", + [ + ["704261722238546", "40000000000"], + ["705035364874150", "3366190225"] + ] + ], + ["0x1a368885B299D51E477c2737E0330aB35529154a", [["380108286748272", "96310216033"]]], + [ + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", + [ + ["137326674947492", "4483509093"], + ["685851937459713", "131393988394"], + ["697024601304648", "9135365741"], + ["697437775548568", "8420726212"], + ["700775956537639", "24523740645"] + ] + ], + ["0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b", [["231383431415446", "17764281739"]]], + [ + "0x1aD66517368179738f521AF62E1acFe8816c22a4", + [ + ["99853968145381", "4046506513"], + ["695325992991875", "3652730115"], + ["695567344648276", "6190991388"], + ["700553830319668", "10000000000"], + ["702015571595271", "43494915041"], + ["741936420806118", "7644571244"] + ] + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + [ + ["214829631163034", "531500000"], + ["281320507868691", "187950000"], + ["291068019486498", "6322304733"], + ["291074341791231", "8363898233"], + ["340197326378415", "3937395000"], + ["340201263773415", "5849480200"] + ] + ], + [ + "0x1d264de8264a506Ed0E88E5E092131915913Ed17", + [ + ["710372916011430", "4669501379"], + ["857167591329417", "84590167390"] + ] + ], + ["0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", [["842942611006904", "29578830513"]]], + [ + "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974", + [ + ["133627550205856", "15344851129"], + ["315350882670410", "134379000000"], + ["592915046792108", "52512241871"] + ] + ], + [ + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", + [ + ["61562303026931", "736682080"], + ["221828136095026", "19581291457"], + ["462669721238188", "5331732217"] + ] + ], + [ + "0x1faD27B543326E66185b7D1519C4E3d234D54A9C", + [ + ["64930655802639", "1000000000"], + ["99189665085461", "10000000000"] + ] + ], + [ + "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb", + [ + ["392840471543149", "14540205488"], + ["398071126756837", "6716741513"], + ["399504324312896", "12611715224"], + ["397292891284114", "11093799305"] + ] + ], + [ + "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e", + [ + ["716942471194887", "110759009"], + ["803620842189824", "50650088368"] + ] + ], + [ + "0x2032d6Fa962f05b05a648d0492936DCf879b0646", + [ + ["228771788234887", "21180650802"], + ["249938635416148", "7159870568"], + ["250294538522919", "22812490844"], + ["281320695833261", "12020746267"] + ] + ], + [ + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", + [ + ["170713622328250", "1273885350"], + ["695948584939839", "2308620655"] + ] + ], + ["0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa", [["698245289553297", "3895753147"]]], + ["0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A", [["437461460697730", "6429254333"]]], + [ + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", + [ + ["437606570634752", "8428341425"], + ["742839943057312", "10245080960"], + ["787226641244792", "14602599487"], + ["920389666843550", "16570064186"] + ] + ], + [ + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", + [ + ["696118400377928", "93881590000"], + ["696390462795444", "89275000000"] + ] + ], + [ + "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", + [ + ["203059138411712", "14065000000"], + ["687187720700622", "125719249019"] + ] + ], + ["0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", [["710861186022257", "44876189"]]], + ["0x234831d4CFF3B7027E0424e23F019657005635e1", [["828631129842715", "229602422"]]], + [ + "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6", + [ + ["263523134379428", "268265834079"], + ["262966718164117", "262588887949"], + ["281320695818691", "14570"] + ] + ], + ["0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3", [["980155130122492", "1124719481"]]], + [ + "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2", + [ + ["122998461837356", "5201831386928"], + ["143946577539573", "311908399084"], + ["433523087906845", "2871900000000"] + ] + ], + ["0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", [["247712146323222", "8569224376"]]], + ["0x25d5Eb0603f36c47A53529b6A745A0805467B21F", [["360425196306582", "22010000022"]]], + ["0x2612C1bc597799dc2A468D6537720B245f956A22", [["710259438675628", "220044920"]]], + [ + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", + [ + ["61563039709011", "27751913384"], + ["61593222078156", "25323470663"], + ["66060152220501", "10898078686"], + ["61648981202377", "9564346441"], + ["61619517190894", "9028357925"], + ["404658386198455", "26569428177"], + ["642274093954569", "762766666666"], + ["705542895589909", "32"], + ["705675547635492", "32"], + ["708681724403578", "80311"], + ["708952399044253", "15368221875"], + ["709082741118137", "11699675781"], + ["709291212913029", "13655200000"], + ["709347439213312", "15127645459"], + ["709666160545746", "17"], + ["709193550480848", "12204390625"], + ["709272537420605", "11488750000"], + ["709798762004166", "17910660356"], + ["709565927452452", "15524432405"], + ["709448642373724", "9068714111"], + ["709519360962721", "17199921875"], + ["709832451486322", "13031467277"], + ["710259658720548", "12668079062"], + ["710216373550628", "13380625000"], + ["715686280190677", "213185000000"], + ["716612673098656", "154938000000"], + ["724130728209805", "28"], + ["731398662872567", "195093286581"], + ["732333253261855", "9227239745"], + ["727657124370114", "294971062419"], + ["726830253055101", "20"], + ["725748414871523", "22"], + ["727380002538907", "277121831207"], + ["731042086156263", "168992222694"], + ["731837568659148", "8315794130"], + ["731394902132721", "3760739846"], + ["737690489286855", "10140222821"], + ["738090306566255", "84887658705"], + ["735419833187604", "214257648238"], + ["738427291895993", "55297098356"], + ["738366631249616", "60660646377"], + ["737675295276992", "6694533342"], + ["735119029084049", "266985351613"], + ["737774106233717", "19717534095"], + ["737712297743554", "13349099640"], + ["737725646843194", "14641791657"], + ["737880402037428", "125608"], + ["737740288634851", "16023438417"], + ["738895804821131", "178586879475"], + ["738008371366470", "722460698"], + ["737068710241966", "89647628696"], + ["738175194224960", "75519741929"], + ["738524398333463", "36138699789"], + ["737700629509676", "11668233878"], + ["739074391700606", "293860207608"], + ["737756312073268", "17794160449"], + ["737880402163036", "55278924469"], + ["738307428818841", "59202430775"], + ["738301297012603", "6131806238"], + ["736400779315349", "1265309093"], + ["735119028696809", "387240"], + ["737836127332839", "21993061317"], + ["738640414051466", "3551817566"], + ["738654516482322", "4793787549"], + ["738643965869032", "10550613290"], + ["738659310269871", "236335204805"], + ["737815111588058", "21015744781"], + ["738592082310195", "28108721786"], + ["739368251908214", "675575202780"], + ["738482588994349", "41809339114"], + ["737681989810334", "8499476521"], + ["743974168385462", "85872956797"], + ["743955184287039", "17833430647"], + ["744197737757592", "122395826143"], + ["744060041342259", "137696415333"] + ] + ], + ["0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9", [["327967567546864", "216644999935"]]], + ["0x277FC128D042B081F3EE99881802538E05af8c43", [["328333232198974", "8634054720"]]], + ["0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", [["372144522811616", "6238486940"]]], + ["0x284A2d22620974fb416D866c18a1f3c848E7b7Bc", [["705496908203154", "103407742"]]], + [ + "0x2894457502751d0F92ed1e740e2c8935F879E8AE", + [ + ["79181663733943", "1000000000"], + ["203073203411712", "10000000000"], + ["805893939193172", "18206372000"] + ] + ], + [ + "0x28A40076496E02a9A527D7323175b15050b6C67c", + [ + ["334829097598457", "16557580124"], + ["387601437023181", "118292810725"], + ["386877977352762", "19498214619"], + ["467293763330601", "499650000"], + ["467294262980601", "404668999"], + ["467293358294911", "405035690"] + ] + ], + [ + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", + [ + ["221777246378393", "30093729527"], + ["698890211517596", "380793557160"], + ["827563810470578", "15422132619"] + ] + ], + [ + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", + [ + ["94315784595936", "500000000"], + ["128563965237372", "10000000000"], + ["215055564317691", "838565448"], + ["343715937685335", "17250582700"], + ["586801021039009", "70060393479"], + ["656570877675397", "80085100000"], + ["692022316776958", "196063966"], + ["933890397372094", "70125007621"] + ] + ], + [ + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", + [ + ["79180247523918", "50364336"], + ["79180297888254", "1232512356"] + ] + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + [ + ["102501954174380", "727522"], + ["128226216485074", "15"], + ["148977930843610", "80437"], + ["152104384211317", "3"], + ["214830162663034", "67407"], + ["293611035386569", "5451263"], + ["437618210865065", "37387"] + ] + ], + [ + "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3", + [ + ["228686945368367", "84842866520"], + ["221807340107920", "18253993180"], + ["695319193240357", "1715232990"] + ] + ], + [ + "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20", + [ + ["112258411436508", "25356695159"], + ["263947015910096", "17842441406"], + ["469175726963278", "10000317834"] + ] + ], + [ + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", + [ + ["137157590212167", "604036207"], + ["741446611708485", "5002669630"], + ["821312920063558", "729833339"], + ["821599578141387", "369074345"] + ] + ], + ["0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F", [["319161563141827", "42247542366"]]], + [ + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", + [ + ["120398763619406", "29229453541"], + ["158400229731856", "40869054933"], + ["220214680240981", "46100000000"], + ["218650633799644", "21334750070"], + ["250337223186833", "13412667204"], + ["250317351013763", "19872173070"] + ] + ], + [ + "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65", + [ + ["136646790866113", "38308339380"], + ["179413897805761", "23400000000"], + ["304469817107076", "5071931149"], + ["306056665523358", "46513491853"], + ["380716182729701", "99704140012"], + ["392657303338426", "121345718040"] + ] + ], + ["0x2bF046A052942B53Ca6746de4D3295d8f10d4562", [["802121584517836", "14660252551"]]], + [ + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", + [ + ["122151582473796", "21700205805"], + ["152142215023622", "21825144968"], + ["258887076658969", "3504136084"], + ["274559382467978", "19297575823"], + ["288926011153180", "34509154491"], + ["288386214068649", "8838791596"], + ["296984074670057", "2631578947"], + ["709144573278794", "1982509180"] + ] + ], + [ + "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3", + [ + ["89188612146804", "1259635749"], + ["139698958414857", "5603412867"], + ["168574996066331", "4363527272"] + ] + ], + [ + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", + [ + ["197741309098473", "1516327182560"], + ["241741906106343", "58781595885"], + ["633216085030316", "30150907500"], + ["625915379052741", "14382502530"], + ["631225253506278", "30150907500"], + ["630116234823378", "30150907500"], + ["627304379068540", "30150907500"] + ] + ], + [ + "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", + [ + ["74749229982603", "2776257694900"], + ["408604736783604", "1543861200000"], + ["406479934660901", "1509530400000"] + ] + ], + ["0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", [["383419389986175", "94607705314"]]], + [ + "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", + [ + ["68544742212956", "194762233747"], + ["139777439869387", "138292382101"], + ["217225607502422", "320440448951"], + ["213337233708294", "194272213416"], + ["227025696759870", "165634345762"], + ["227191331105632", "162668432277"], + ["456124916429007", "290768602971"], + ["634891242227908", "53986261284"], + ["635923106362551", "682695875"] + ] + ], + [ + "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872", + [ + ["137344991789918", "7329461840"], + ["218767451487496", "60174119496"], + ["274414876662335", "21267206558"], + ["695993270293950", "70921562500"], + ["708568373266030", "15004452000"] + ] + ], + ["0x2e95A39eF19c5620887C0d9822916c0406E4E75e", [["220713870788997", "99821724986"]]], + [ + "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", + [ + ["387459570771954", "16541491227"], + ["526415018910475", "41138509764"], + ["592245119054672", "109538139161"], + ["622805751840879", "57729458645"], + ["638883364095374", "150501595883"], + ["635316611698426", "199863307838"], + ["652911295105315", "164341630162"] + ] + ], + ["0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", [["672838121314733", "19083709019"]]], + [ + "0x31188536865De4593040fAfC4e175E190518e4Ef", + [ + ["131603872797406", "42647602248"], + ["148484173674832", "23229244940"], + ["220311750710706", "25259530956"], + ["220337010241662", "75628998693"], + ["308556696776803", "39695519731"], + ["469526491720218", "20847822433"] + ] + ], + [ + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", + [ + ["246537104035457", "19585490430"], + ["260807452784863", "10849956649"], + ["262585984340010", "6841999986"], + ["717696969402676", "1550661150"], + ["733741602868295", "5000000000"] + ] + ], + ["0x3213977900A71e183818472e795c76aF8cbC3a3E", [["270753617517203", "2727243727"]]], + [ + "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e", + [ + ["112283768131667", "22097720000"], + ["139673550702857", "25407712000"], + ["146998232146379", "96590650000"], + ["154322443224517", "51428850000"], + ["231462925049457", "21861840000"], + ["221858374194381", "27130320000"], + ["259334633708047", "17204908500"], + ["271967769614181", "31699684500"], + ["310599804142918", "141114556811"], + ["456086409628758", "2656309347"], + ["513111301990969", "3362213720"] + ] + ], + [ + "0x32ddCe808c77E45411CE3Bb28404499942db02a7", + [ + ["218701606726030", "30301264175"], + ["733815599504575", "9156068040"] + ] + ], + [ + "0x33314cF610C14460d3c184a55363f51d609aa076", + [ + ["250294538522915", "4"], + ["311893596417090", "6"] + ] + ], + ["0x334bdeAA1A66E199CE2067A205506Bf72de14593", [["139710719558186", "1"]]], + [ + "0x334f12F269213371fb59b328BB6e182C875e04B2", + [ + ["231588064170741", "85849064810"], + ["248354501695683", "100639688860"], + ["296377664705848", "30184796751"], + ["593799800299595", "5098240000"] + ] + ], + ["0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", [["89552406100600", "1897354001"]]], + ["0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91", [["761165787154183", "6971971500"]]], + [ + "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327", + [ + ["263902250213507", "44765696589"], + ["335286193422314", "130932379038"] + ] + ], + [ + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", + [ + ["345401629709038", "21940000000"], + ["428483895698649", "159350000000"] + ] + ], + [ + "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30", + [ + ["387178819624322", "24"], + ["401291905968469", "1695292297"] + ] + ], + ["0x34a649fde43cE36882091A010aAe2805A9FcFf0d", [["695165389013847", "5482892893"]]], + ["0x34e642520F4487D7D0229c07f2EDe107966D385E", [["428480693333294", "3202365355"]]], + ["0x362FFA9F404A14F4E805A39D4985042932D42aFe", [["695262582394210", "2420032442"]]], + [ + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", + [ + ["131580722493380", "4716970693"], + ["128557679667004", "6285570368"], + ["128204663976106", "16604041484"], + ["335068393422314", "217800000000"], + ["382646826165944", "214258454662"], + ["490262408247583", "436815986689"], + ["594732756455189", "135734075338"], + ["608938108318525", "71050000000"], + ["706938849352109", "188831250000"] + ] + ], + [ + "0x36C3094E86CB89e33a74F7e4c10659dd9366538C", + [ + ["696374692545444", "5356500000"], + ["696088346127928", "19640500000"] + ] + ], + [ + "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B", + [ + ["79244791972952", "2184095098753"], + ["526508270867756", "4903200000000"] + ] + ], + ["0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc", [["592974120360191", "3940485943"]]], + [ + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", + [ + ["278393127641126", "73188666066"], + ["726112472837908", "75343043560"] + ] + ], + [ + "0x37435b30f92749e3083597E834d9c1D549e2494B", + [ + ["83260215467071", "5427633758309"], + ["93310404882687", "8433459586"], + ["99898772839152", "1565234930"], + ["137352321251758", "178773400000"], + ["147974607921074", "62444029452"], + ["148107367740690", "27307181096"], + ["149998662142740", "12050549452"], + ["154135094984517", "23198240000"], + ["179437297805761", "14166669028"], + ["202363107393544", "17100712995"], + ["244902569540416", "252870563194"], + ["247327990881148", "49195388116"], + ["333109345646753", "296688083935"], + ["413528667443932", "1024763326668"], + ["425068586175574", "1412385930810"], + ["421057363141931", "1288012208388"], + ["456721928796943", "654800000000"], + ["521866668811626", "4527500000000"], + ["498199672720798", "3840100000000"], + ["654538142212579", "563728148057"], + ["653094946017372", "666686929557"], + ["825461117740725", "105792331133"] + ] + ], + ["0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", [["401439474290340", "2715874656"]]], + [ + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", + [ + ["869970288194840", "3741772811"], + ["866535696635239", "271427897935"], + ["922214747736756", "18080297788"], + ["965933556186775", "185595194790"], + ["978397267549081", "195035742135"] + ] + ], + ["0x3800645f556ee583E20D6491c3a60E9c32744376", [["251638322154111", "44590358778"]]], + [ + "0x38AE800E603F61a43f3B02f5E429b44E32e01D84", + [ + ["711195120682837", "883672882"], + ["710377594992292", "12448041335"], + ["712614668536408", "3572292465"], + ["796591631208380", "38853572481"] + ] + ], + [ + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", + [ + ["92742421238598", "1422751578"], + ["117219099496678", "11945702437"], + ["122199613970823", "11265269800"] + ] + ], + [ + "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608", + [ + ["99858014651894", "4520835534"], + ["136897611492596", "2592066456"], + ["136878766211724", "8190484804"], + ["605251828216687", "90520524431"], + ["631117707256278", "75915000000"], + ["695313182010301", "4800266302"], + ["695524075062913", "4971925933"], + ["698264912932112", "5026085154"], + ["702361734822444", "6901957424"], + ["705272797202231", "6586391868"], + ["705202416720908", "8688260900"], + ["705395019165576", "12728017527"], + ["705157865912363", "6258715658"], + ["705181050592235", "5619908813"], + ["705375333507580", "9438007812"], + ["705364047968253", "11087897889"], + ["705310449390499", "5533430900"], + ["705218131104329", "9969767834"], + ["705228100872163", "5282898032"], + ["705346854956478", "9775619115"], + ["705356630575593", "7138145970"], + ["705241078348938", "11803118121"], + ["705164124628021", "3739040895"], + ["709831975562507", "475923815"], + ["711580953886503", "210712873"], + ["801573253128821", "37039953396"] + ] + ], + [ + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", + [ + ["203038971664231", "20166747481"], + ["208533010380793", "19708496282"], + ["214342235514041", "18867580234"], + ["221847717386483", "10656807898"], + ["457646593748283", "21196418023"], + ["457633342783031", "13250965252"] + ] + ], + [ + "0x3b55DF245d5350c4024Acc36259B3061d42140D2", + [ + ["120432824224250", "109032000000"], + ["456560487145391", "61940000000"], + ["489646437372828", "6682650000"], + ["491224405832142", "1727500000"], + ["733380311954748", "113626410"], + ["829537335482303", "10530972784"] + ] + ], + [ + "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", + [ + ["94418235832797", "1184036940"], + ["94515873100678", "4658475375814"], + ["488646672747958", "856500000000"], + ["469554291656606", "1123333332210"], + ["538401334313392", "3276576610442"], + ["820256228328824", "542512540896"] + ] + ], + [ + "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd", + [ + ["623014354044871", "194013000000"], + ["626605379053540", "194013435000"], + ["631931021912047", "192000000000"], + ["632346454097047", "194013435000"], + ["628836091774709", "194013435000"], + ["628420659589709", "194013435000"] + ] + ], + [ + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", + [ + ["132061597064555", "142530400862"], + ["272292480930970", "90969668386"], + ["605135759248823", "10532744358"], + ["714606511741964", "2382078228"], + ["714425356211522", "1462730442"], + ["909384163975898", "2974087025"] + ] + ], + [ + "0x3C087171AEBC50BE76A7C47cBB296928C32f5788", + [ + ["232071968893389", "148060901697"], + ["240834561073215", "176957775656"], + ["273198685502624", "14038264688"], + ["276348436775663", "16507846329"], + ["293608662086844", "2373299725"], + ["291555917362915", "1592559438"], + ["388970245888268", "13592654125"], + ["401594904125270", "17923920296"], + ["400960854974580", "224290993889"], + ["469488302761616", "10089000000"], + ["709340717966569", "6721246743"], + ["804727563868744", "2043540906"] + ] + ], + [ + "0x3C43674dfa916d791614827a50353fe65227B7f3", + [ + ["842972212731044", "90638399996"], + ["869226145969652", "112991072036"], + ["944663804228138", "82087297170"], + ["948099127272673", "80917313200"], + ["963440631623854", "2492924562921"], + ["972810760408474", "148249317984"] + ] + ], + ["0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", [["660246036031041", "69159694993"]]], + [ + "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B", + [ + ["68411548663700", "107872082286"], + ["128259870043852", "208750536344"], + ["258781546312438", "79560142678"], + ["568865954577205", "256843090229"], + ["567305224982194", "751200000000"], + ["612968450815212", "464523649777"] + ] + ], + [ + "0x3Cdf2F8681b778E97D538DBa517bd614f2108647", + [ + ["219766560873968", "96662646688"], + ["326650849478990", "70852648035"], + ["319977964011072", "94179890197"] + ] + ], + [ + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", + [ + ["300282934819341", "93978424610"], + ["386944141009871", "116109191366"], + ["401612828045566", "107540812013"] + ] + ], + ["0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", [["92734901265345", "4486265388"]]], + ["0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", [["621038458340633", "9516000000"]]], + ["0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", [["705252881467059", "18442405"]]], + ["0x3e2EfD7D46a1260b927f179bC9275f2377b00634", [["386528870598580", "11508897293"]]], + [ + "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB", + [ + ["623883983044871", "30150000000"], + ["710982397909733", "65015748"], + ["710635821671358", "36390839843"] + ] + ], + ["0x3e763998E3c70B15347D68dC93a9CA021385675d", [["708357952746096", "3184477709"]]], + [ + "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c", + [ + ["202159243561586", "70000039897"], + ["656514155462897", "56722212500"], + ["705474222079870", "5547402539"], + ["708353575375619", "4377370477"], + ["708684038809401", "7781608168"], + ["708511371562041", "6271703989"], + ["803962827988083", "14172500000"], + ["909366206902095", "17957073803"] + ] + ], + [ + "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0", + [ + ["416764948719656", "9985803845"], + ["416774934523501", "2373276277"], + ["416902272149649", "12535749497"] + ] + ], + [ + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", + [ + ["102413949065850", "521806033"], + ["296982540989531", "1533680526"], + ["592967559033979", "6561326212"], + ["723779316763287", "57172076"] + ] + ], + [ + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", + [ + ["708854521472745", "29699469080"], + ["829433630619951", "3507114838"] + ] + ], + [ + "0x400609FDd8FD4882B503a55aeb59c24a39d66555", + [ + ["74553264982603", "46140000000"], + ["446341746703841", "12793000337"] + ] + ], + ["0x404a75f728D7e89197C61c284d782EC246425aa6", [["945086995481420", "171169191653"]]], + [ + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", + [ + ["743245546219702", "389208674898"], + ["744894234735558", "643482107799"], + ["789657062113970", "486415703664"], + ["851449379923934", "129057167288"] + ] + ], + [ + "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8", + [ + ["345423569709038", "32606569800"], + ["705867886947037", "427917192"] + ] + ], + [ + "0x41BF3C5167494cbCa4C08122237C1620A78267Ab", + [ + ["128603895931097", "125375746500"], + ["685772872977516", "14701274232"], + ["691676854489457", "2249157051"], + ["692838111629231", "1277169126"], + ["692929975508877", "3476565097"], + ["692941779124889", "7418551539"], + ["695151454126450", "4493860181"], + ["695147638966758", "3815159692"], + ["692017679493751", "4637283207"], + ["695295658855598", "4202744958"], + ["695323520554039", "2472437836"], + ["693843932605355", "17060602162"], + ["695299861600556", "6931782754"], + ["692933452073974", "5257772247"], + ["692695940824572", "2612709957"], + ["694039788947775", "9755905834"], + ["692182113769658", "1713785306"], + ["695550242936683", "6913927217"], + ["695901994583961", "8523970000"], + ["695881539093182", "1490458288"], + ["697196941652053", "221549064473"], + ["696997247759665", "3485021203"], + ["702858042601852", "8198117831"], + ["704873501697621", "7303537619"], + ["705411302503968", "7914873408"], + ["708682555509296", "1483300105"], + ["742964651758786", "494751015"], + ["743634754894600", "1132140582"], + ["767164728701903", "98080531002"], + ["802846944438520", "162218835"], + ["921520997838854", "56073594"] + ] + ], + [ + "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B", + [ + ["147919863131313", "38576992385"], + ["268363814516270", "17459074945"], + ["264466082689960", "44485730835"], + ["261754319708378", "27121737219"], + ["271086501127643", "193338988216"], + ["270186280182000", "19654542435"], + ["271034820513194", "51680614449"], + ["269301143071389", "26535963154"], + ["268399237836887", "49984112432"], + ["276213342183140", "135094592523"], + ["278692779136242", "55156826488"], + ["276836153034185", "88953884657"], + ["274465632721341", "46929014315"], + ["274512561735656", "46820732322"], + ["276568529375494", "89335158945"], + ["278139497006944", "46290484227"], + ["274358433500095", "56443162240"], + ["273720745157586", "94239272075"], + ["274787697336752", "46596908794"], + ["276077956482957", "135385700183"], + ["276657864534439", "89207795460"], + ["276747072329899", "89080704286"], + ["282942685416418", "37911640587"], + ["298996135000218", "94970341987"], + ["299452335363542", "141765636262"], + ["300423799216114", "24269363626"], + ["294506433543883", "80126513749"], + ["299641994657323", "141406044017"], + ["300376913243951", "46885972163"], + ["308770747582197", "101040572048"], + ["301420143646298", "27327225251"], + ["301717993914740", "187694536015"], + ["302237953585736", "186820539992"], + ["472885514210993", "33820000000"], + ["476843636939438", "13370532569"], + ["476443335234120", "13544000000"], + ["472838087890628", "13606320365"], + ["472851694210993", "33820000000"], + ["472793192678897", "13677512381"], + ["476694923408706", "14725577338"], + ["476410283324120", "16915000000"], + ["476740429395415", "13378806625"], + ["476393368324120", "16915000000"], + ["470686834442758", "13862188950"], + ["476709648986044", "17399191046"], + ["476753808202040", "13380333313"], + ["476376458324120", "16910000000"], + ["476473809234120", "16930000000"], + ["476727048177090", "13381218325"], + ["476456879234120", "10158000000"], + ["476681533985845", "13389422861"], + ["476830043817916", "13593121522"], + ["476814000720125", "16043097791"], + ["476767188535353", "14715582102"], + ["476526026311782", "13548000000"], + ["476512478311782", "13548000000"], + ["489653120022828", "13268338278"], + ["476467037234120", "6772000000"], + ["476797954153690", "16046566435"], + ["476781904117455", "16050036235"], + ["476359548324120", "16910000000"], + ["476605785663811", "13564000000"], + ["636755258858843", "53257255812"], + ["634947490704343", "41982081237"], + ["802260426539360", "95195568422"], + ["829118124669523", "14606754787"], + ["832256453601930", "12764830824"], + ["851720002286071", "71074869547"], + ["929474144057024", "178880088846"], + ["930385128703633", "87734515234"], + ["930304797085243", "80331618390"], + ["961481676246016", "187169856894"], + ["973468864705385", "95736000000"], + ["978592303305840", "359610000000"] + ] + ], + ["0x41e2965406330A130e61B39d867c91fa86aA3bB8", [["699433319525762", "57972833670"]]], + [ + "0x4254e393674B85688414a2baB8C064FF96a408F1", + [ + ["140373758599368", "51965469308"], + ["204878133820660", "195601904457"] + ] + ], + ["0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7", [["504989340347547", "23385195001"]]], + ["0x43816d942FA5977425D2aF2a4Fc5Adef907dE010", [["805412332289879", "5598000000"]]], + ["0x4384f7916e165F0d24Ab3935965492229dfd50ea", [["710272326799610", "5043054"]]], + [ + "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7", + [ + ["251689318096142", "17822553583"], + ["446328959443385", "12787260456"] + ] + ], + [ + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", + [ + ["61549738965586", "12564061345"], + ["66071050299187", "1129385753"], + ["66084683858969", "85802365"], + ["89493924603539", "1000000000"], + ["89568109155898", "896325564"], + ["89586741115726", "1000000000"], + ["92749890045870", "25104421"], + ["89606142206304", "1000000000"], + ["89585741115726", "1000000000"], + ["89527912895560", "19090914955"], + ["89494924603539", "1000000000"], + ["89605142206304", "1000000000"], + ["89565741115726", "1109129488"], + ["89525732026030", "2180869530"], + ["89495924603539", "1000000000"], + ["89566850245214", "1206768540"], + ["89990067080414", "7671502446"], + ["93294280335746", "5644256527"], + ["94284798092453", "522412224"], + ["94307553242481", "8231353455"], + ["94382196115824", "9664144600"], + ["137135483729051", "12000000000"], + ["139746180078534", "22778336323"], + ["154373872074517", "3466008022725"], + ["921364339796830", "12817228360"], + ["922703259286471", "4987547355"], + ["922817751972186", "6378966633"], + ["927996250630513", "1210047061"], + ["944603246601626", "55249364508"], + ["944881620448876", "17679122867"], + ["945821272380507", "20022518305"], + ["948085336092963", "13791046304"] + ] + ], + [ + "0x4432e64624F4c64633466655de3D5132ad407343", + [ + ["61628862380956", "1624738693"], + ["61618545548819", "76923076"], + ["821101658296735", "53680953"], + ["822986972480458", "53575113"], + ["824010318367156", "45392997396"], + ["823969442915582", "40875451574"], + ["827241425521487", "256869092"] + ] + ], + [ + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", + [ + ["61648545548819", "435653558"], + ["89988300373488", "1549632000"], + ["89554303454601", "3071807226"], + ["89190107363598", "18536597032"] + ] + ], + [ + "0x448a549593020696455D9b5e25e0b0fB7a71201E", + [ + ["590991887858839", "72277031524"], + ["590928120113238", "13171499195"], + ["569124802887262", "48468507344"] + ] + ], + [ + "0x44db0002349036164dD46A04327201Eb7698A53e", + [ + ["705067763593576", "228851828"], + ["705502798541410", "3084780492"], + ["829201089289885", "2519675802"] + ] + ], + [ + "0x44E836EbFEF431e57442037b819B23fd29bc3B69", + [ + ["646581393623485", "590804533993"], + ["695599938930194", "1144842671"], + ["695501776617168", "167260560"], + ["695543510256949", "6732679734"], + ["695501943877728", "2955966531"], + ["695512938762284", "5232565604"], + ["696075873718427", "4648149312"], + ["705858500882729", "792144308"], + ["709223879936312", "4657050598"], + ["710313220526301", "11312622545"], + ["710890596051646", "11781355408"], + ["713607949326125", "3951780206"] + ] + ], + [ + "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975", + [ + ["319082831589442", "78731552385"], + ["370681278008540", "50532033501"], + ["700078321138764", "2100140818"], + ["705098297721786", "2093638974"], + ["704940465331886", "9000076282"], + ["704247096398388", "5070971174"] + ] + ], + ["0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4", [["828631128825075", "1017640"]]], + [ + "0x46387563927595f5ef11952f74DcC2Ce2E871E73", + [ + ["829846511525914", "10000000"], + ["829846531525914", "2694500000"] + ] + ], + ["0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", [["246715075632743", "4605813333"]]], + [ + "0x473812413b6A8267C62aB76095463546C1F65Dc7", + [ + ["828639443033247", "852570198"], + ["830263540434495", "143341492"] + ] + ], + ["0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88", [["265237981975245", "12907895307"]]], + [ + "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351", + [ + ["259529678616547", "522905317827"], + ["256031758190563", "678300326761"], + ["281819376088709", "526712108816"], + ["298162440271272", "216100000000"], + ["295386551285707", "86640000000"], + ["300557743646298", "862400000000"], + ["317098418695316", "641100000000"], + ["310383724516163", "216079626755"], + ["306272688094207", "240081188008"], + ["309368405952940", "209638678922"], + ["314039683991298", "1020962098385"], + ["316079324231878", "1019094463438"], + ["313180541202133", "859142789165"], + ["315728148525503", "351175706375"], + ["309740224516163", "643500000000"], + ["318621807701047", "188408991793"] + ] + ], + [ + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", + [ + ["326107420921401", "7633129939"], + ["372437557262985", "23542648323"], + ["491203694034272", "5342881647"], + ["541677910923834", "1936443717"], + ["538320230990357", "1925324510"], + ["538322156314867", "1928422141"], + ["538316385429670", "1918866314"], + ["520066176405445", "1840684464"], + ["538318304295984", "1926694373"], + ["569173271394606", "2021544393"], + ["569122797667434", "2005219828"], + ["699415923445631", "6170341451"], + ["701810722532552", "2884062719"], + ["704991321589283", "5109096170"], + ["704193891195373", "5052470551"], + ["708338583821234", "10179109779"] + ] + ], + ["0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0", [["323837562208542", "892676539"]]], + [ + "0x4949D9db8Af71A063971a60F918e3C63C30663d7", + [ + ["102269738789109", "132215385271"], + ["102501954174378", "2"], + ["231836379050970", "15353990995"], + ["232220029795086", "168884964002"], + ["321155443111092", "42584740555"] + ] + ], + [ + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", + [ + ["94356206426267", "653834157"], + ["273274348611777", "1113699755"], + ["340534562977258", "9627840936"], + ["381334859129242", "5543007376"] + ] + ], + ["0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9", [["384464921215267", "240943746648"]]], + [ + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", + [ + ["277375034850814", "21731842340"], + ["296407849502599", "30572743902"], + ["324072878595488", "856400000000"], + ["323838454885081", "234423710407"], + ["426480972106384", "32075676524"] + ] + ], + ["0x4A5867445A1Fa5F394268A521720D1d4E5609413", [["545618833854003", "2578100000000"]]], + [ + "0x4AAE8E210F814916778259840d635AA3e73A4783", + [ + ["262282827399224", "24321462040"], + ["709241915118695", "16950613281"] + ] + ], + [ + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", + [ + ["225726707768626", "2630224719"], + ["327123540423613", "8090890905"], + ["439357281114331", "1740766894"], + ["612589189650466", "25275274698"], + ["623709406044871", "5482000000"], + ["631424500162047", "5482750000"], + ["629688606325109", "5482750000"], + ["633041506532047", "5482750000"], + ["627756675724309", "5482750000"], + ["879856111198338", "160270131472"] + ] + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + [ + ["81437561439786", "42992538368"], + ["99862535487428", "36237351724"], + ["94257791920114", "22434511734"], + ["136980532734270", "91376117280"], + ["159403642280328", "225761417993"], + ["170650277451900", "25432470215"], + ["158441098786789", "962543493539"], + ["202236795677078", "25140924405"], + ["225788075776620", "656550874126"], + ["230527620752329", "84912848439"], + ["245812980700423", "320813397796"], + ["245290063643519", "57484083188"], + ["244468114736762", "94951829258"], + ["243873117256389", "594997480373"], + ["264591999368450", "277362737859"], + ["290518687428499", "59760464812"], + ["289824728523539", "435400000000"], + ["291701162610111", "434600000000"], + ["295594713621539", "433000000000"], + ["293385461135616", "136081851228"], + ["292135762610111", "403315212327"], + ["291462435362915", "93482000000"], + ["292539077822438", "434000000000"], + ["306807148489533", "429600000000"], + ["307534531511411", "429000000000"], + ["307963531511411", "593165265392"], + ["327752156718788", "31843087062"], + ["461662194675835", "1327936414"], + ["585531751934332", "277260761697"], + ["609159158318525", "2737095195209"], + ["637402105327627", "475735746580"], + ["638379095047777", "352964012203"], + ["639551741381407", "621546025531"], + ["635923789058426", "470264676707"], + ["639122987695460", "428753685947"], + ["640280692875188", "511648078072"], + ["660315195726034", "300681637829"], + ["684104916479212", "605799007104"], + ["672177055771691", "294537267480"], + ["683479258683720", "423020213781"], + ["667454434438950", "430288154881"], + ["672471593039171", "122585177924"], + ["683902278897501", "188613792398"], + ["694490977018951", "696785610"], + ["694052367570781", "3562084461"], + ["695329645721990", "4790574316"], + ["695182547027146", "732611220"], + ["694422525370066", "68451648885"], + ["693866692053279", "166637595618"], + ["695178951482488", "2029010620"], + ["695180980493108", "1566534038"], + ["692866453934719", "57278437068"], + ["694303135329365", "118340636454"], + ["695334436296306", "2600593701"], + ["695573535639664", "3241881404"], + ["695576777521068", "3785283994"], + ["695562803032106", "4541616170"], + ["697432033923536", "5741625032"], + ["700843104401500", "1002910636"], + ["699398564464776", "2789581992"], + ["704176342091293", "2168510045"], + ["700816740696983", "1841462496"], + ["702621629674311", "6670046454"], + ["701403925214530", "936457910"], + ["700563830319668", "197428820134"], + ["705028556298056", "6808576094"], + ["705074678452627", "6039028984"], + ["705497011610896", "5786930514"], + ["708291887614021", "3462235904"], + ["709850572553599", "508035028"], + ["741271056178179", "114648436337"], + ["802851048112675", "1341090085"], + ["805521569374354", "12851063713"], + ["805500672321690", "20897052664"], + ["843647615205635", "9770439640"], + ["871218020813975", "50684223342"] + ] + ], + ["0x4C3C27eB0C01088348132d6139F6d51FC592dDBD", [["371926248900676", "5564385258"]]], + ["0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", [["273212723767312", "53819165244"]]], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + [ + ["66034079644085", "26072576416"], + ["167968146767855", "4821011987"], + ["167975833875779", "1424576250"], + ["188697249274484", "929795062302"], + ["190556849399088", "10000000"], + ["189627044336786", "929805062302"], + ["251606893095686", "31429058425"], + ["340015587362641", "16930293743"], + ["376423657311762", "4230684000"], + ["376427887995762", "38949316540"], + ["733900548226895", "58636813154"], + ["736132449021350", "83138632015"], + ["740780496301284", "17303169600"], + ["803675398843471", "12755718599"], + ["805835350568739", "26346793433"] + ] + ], + [ + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", + [ + ["209254412543878", "613663117381"], + ["209911052571862", "676628312802"], + ["218410526376138", "136137390673"], + ["214098843114999", "202026433529"], + ["222087870737841", "49543800744"], + ["230089830223178", "413035848007"], + ["227445576327866", "492948149258"], + ["228253938295100", "433007073267"], + ["233750265340450", "637822580221"] + ] + ], + ["0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6", [["136916132809737", "8000000000"]]], + ["0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315", [["731385825209645", "9076923076"]]], + ["0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1", [["274296479205287", "54975000000"]]], + [ + "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45", + [ + ["208552718877075", "309692805971"], + ["891043664348577", "216642349742"] + ] + ], + ["0x4E2572d9161Fc58743A4622046Ca30a1fB538670", [["246669957392680", "45118240063"]]], + [ + "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a", + [ + ["233022638466349", "47575900440"], + ["228824271622864", "28977789728"], + ["250514638117388", "1355785855"], + ["306103179015211", "42559348679"], + ["403097227092330", "21768707480"] + ] + ], + [ + "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79", + [ + ["131559051342352", "21671151028"], + ["202589933549511", "25160811724"], + ["242744412209839", "256079218906"], + ["243240316234691", "540739337424"], + ["251733414248189", "148971205022"], + ["279527705475172", "371633895678"], + ["417135397206992", "1968851124565"], + ["519707376405445", "358800000000"], + ["624054575044871", "496100000000"], + ["703750451572212", "422340000000"] + ] + ], + [ + "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8", + [ + ["213225882295803", "38570577566"], + ["229437412992433", "17838668722"], + ["262153242867270", "39603521290"] + ] + ], + ["0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b", [["656258795032897", "12195297500"]]], + [ + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", + [ + ["139711719558187", "57126564"], + ["802853227348777", "903473746"], + ["802849301706017", "1213327771"], + ["829692129663541", "624282480"], + ["909418911973121", "29448441435"], + ["928113676311599", "39504417438"] + ] + ], + [ + "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", + [ + ["66084769661334", "1"], + ["92743843990176", "1"] + ] + ], + [ + "0x52c9A7E7D265A09Db125b7369BC7487c589a7604", + [ + ["139768958414857", "8481454530"], + ["139718958414857", "25000000000"], + ["250498439776055", "16198341333"], + ["723112643012217", "15472843550"] + ] + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + [ + ["94242216945909", "1640314930"], + ["94243857260839", "11391726558"], + ["93024220723498", "37500000000"], + ["148976459986468", "1470857142"], + ["215056402883139", "2840837091"], + ["279405824996797", "4894741242"], + ["717546656602676", "150312800000"], + ["725211130277729", "109968508060"], + ["720332948759398", "162851173415"], + ["741577899740575", "15612748908"], + ["741712375643656", "63765566607"], + ["825212953545374", "8432491225"], + ["847574024719777", "9733082256"], + ["847594550576406", "361176492977"], + ["870870615598864", "347405215111"], + ["910453013177991", "22264686170"], + ["892279719270314", "4961004225375"], + ["921456183873214", "64806240466"], + ["922557900488824", "67915110484"], + ["922648585940565", "54673315682"], + ["929042431231364", "85134432163"], + ["930800398036129", "270561010095"], + ["944443811786211", "80750086384"], + ["945326060123752", "82735987498"], + ["945672971137030", "148297525258"], + ["945841295296295", "206866376884"], + ["948418309837881", "528457624315"], + ["950258935863374", "150451249816"], + ["969544990032396", "495671778827"], + ["973232132319420", "101489503304"], + ["977065153662361", "556151437225"] + ] + ], + [ + "0x52E03B19b1919867aC9fe7704E850287FC59d215", + [ + ["188657736324783", "23"], + ["334429009280361", "21"] + ] + ], + [ + "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e", + [ + ["708664583038577", "8956445312"], + ["711043647124349", "1060562802"], + ["711090444872070", "926753565"], + ["711528414042753", "50000000000"], + ["725499911125635", "100000000000"], + ["725798493969922", "100000000000"] + ] + ], + [ + "0x533af56B4E0F3B278841748E48F61566E6C763D6", + [ + ["111532294106981", "684928780381"], + ["117107604771450", "98624652124"], + ["132204127465417", "1423422740439"], + ["147094822796379", "246473581350"], + ["203113891089056", "5305457400"], + ["229967836811843", "43399440000"], + ["274285570406087", "10908799200"], + ["457376728796943", "6712778652"], + ["458012106190750", "9297374844"], + ["456448245031978", "10622166178"], + ["465959758294911", "1333600000000"] + ] + ], + ["0x53bA90071fF3224AdCa6d3c7960Ad924796FED03", [["828936762063483", "5000266651"]]], + [ + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", + [ + ["66091818537568", "6537846472"], + ["149815249080456", "72107788456"], + ["206610169922313", "17152586398"], + ["704949465408168", "802012435"], + ["730967543838502", "74368755714"], + ["730867543838502", "93293333333"], + ["738250713966889", "50583045714"], + ["772314865779380", "1734187672072"] + ] + ], + [ + "0x53dC93b33d63094770A623406277f3B83a265588", + [ + ["92739387530733", "3033707865"], + ["133660720067889", "4063998521"], + ["133657386734556", "3333333333"], + ["149908190202244", "29006615802"], + ["149887356868912", "20833333332"], + ["742065258883047", "151308941294"], + ["746974806261819", "87924018978"], + ["760504851017218", "57060000000"], + ["782297039212616", "57100000000"] + ] + ], + [ + "0x540dC960E3e10304723bEC44D20F682258e705fC", + [ + ["704996430685453", "5230119599"], + ["705070629674462", "2570523222"], + ["705100391360760", "7816313681"], + ["705315982821432", "1966296013"], + ["705269716717549", "474329513"], + ["705170544685508", "3961074335"], + ["705649264449887", "4844042113"], + ["705644549719550", "4714730337"], + ["705638637875678", "5911843872"], + ["705694288615966", "2378948420"], + ["707892620324512", "3202908158"], + ["707711447642109", "4154745941"], + ["705839765264506", "4701268223"], + ["705663708702228", "3462430426"], + ["709860619088627", "9695779077"], + ["709816672664522", "19697985"], + ["725208702310644", "2427967085"] + ] + ], + [ + "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d", + [ + ["694049544853609", "2822717172"], + ["695557156863900", "5646168206"], + ["921521067108550", "160"], + ["921521067107910", "160"], + ["921521067108230", "160"], + ["921521067108070", "160"], + ["921521067108390", "160"], + ["921521067107750", "160"], + ["921521067107590", "160"], + ["921521067124608", "160"], + ["921521067124768", "160"] + ] + ], + ["0x553114377d81bC47E316E238a5fE310D60a06418", [["225765065776620", "23010000000"]]], + ["0x5540D536A128F584A652aA2F82FF837BeE6f5790", [["262899104239013", "17567638887"]]], + ["0x554B1Bd47B7d180844175cA4635880da8A3c70B9", [["92719137052691", "15764212654"]]], + ["0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", [["476539574311782", "66211352029"]]], + ["0x558C4aFf233f17Ac0d25335410fAEa0453328da8", [["66072179684940", "5311147809"]]], + [ + "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", + [ + ["148525943306600", "92368586236"], + ["144795264713117", "70656147044"] + ] + ], + ["0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE", [["328184212546799", "38563788377"]]], + ["0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95", [["253674859079781", "35159275827"]]], + [ + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", + [ + ["88687849225380", "104919293460"], + ["89939094932668", "49205440820"], + ["89833520918958", "34985445810"], + ["121701313315112", "16517000000"], + ["122130577367209", "10999922556"], + ["128511905229325", "45774437679"], + ["128573965237372", "29930693725"], + ["147734063636273", "164176600500"], + ["150079532661613", "5174776280"], + ["149577131077935", "5000000000"], + ["197235673741193", "505635357280"], + ["196748543248166", "176852411011"], + ["201269337108906", "15229041840"], + ["196687575224197", "60968023969"], + ["197052041001248", "183632739945"], + ["197040534186448", "11506814800"], + ["214853387728224", "7868244366"], + ["214841171589224", "12216139000"], + ["241628813824063", "18614866100"], + ["246719681446076", "67134250000"], + ["246852209885390", "45000000000"], + ["241647428690163", "94477416180"], + ["246556689525887", "113267866793"], + ["252122959858488", "156533816852"], + ["265250889870552", "292114744200"], + ["277275034850814", "100000000000"], + ["272603524644509", "234173311666"], + ["276375498948402", "19663672112"], + ["273566063183769", "50896592466"], + ["273616959776235", "36881868335"], + ["279257880223832", "85000000000"], + ["284738104868387", "23784920032"], + ["280694947371716", "7309432177"], + ["285595992983941", "56976941921"], + ["290578447893311", "40000000000"], + ["285515580199090", "69757866647"], + ["285668563948121", "91774095238"], + ["293653662086844", "84709072240"], + ["291312494362915", "79941000000"], + ["291292919964740", "19574398175"], + ["293753662086844", "40000000000"], + ["296679653218877", "89966016400"], + ["291392435362915", "70000000000"], + ["310830922064799", "33133321520"], + ["311189831215019", "27049203270"], + ["311876435247053", "17161170037"], + ["310914055386319", "235946386490"], + ["310904055386319", "10000000000"], + ["311222254540889", "16840000000"], + ["310744992009969", "67236052780"], + ["325432511445178", "9804554407"], + ["319203810684193", "7830821110"], + ["319959714387259", "14803898208"], + ["331595854679666", "26274622666"], + ["373971252346554", "40248448544"], + ["361632377443041", "34267517805"], + ["384105638332381", "26917828556"], + ["399516936028120", "443282416104"], + ["437626485206015", "18797185439"], + ["437618210902452", "8274303563"], + ["437614998976177", "3211888888"], + ["710119139437401", "19899717937"], + ["718459184932935", "153179376309"], + ["719838697445075", "167217199434"], + ["720141948118884", "33268342087"], + ["724130728209833", "379699841755"], + ["729490021235256", "103496806590"], + ["729633290769118", "23099271710"], + ["731342174747013", "43650433333"], + ["725898493969922", "98973775726"], + ["730154281080552", "82189769281"], + ["726280644476653", "280660104174"], + ["746864975690853", "109830570966"], + ["761097741854512", "68045299671"], + ["747062730280797", "67873369400"], + ["746411304830765", "221013829371"], + ["745537716843357", "2150034146"], + ["761172775008452", "1122080009786"], + ["744320133583735", "565341232663"], + ["745539866877503", "583900111083"], + ["742965146509801", "34376130558"], + ["769983398716151", "2331467063229"], + ["743648539618105", "199937039599"], + ["747309036197595", "4714572065"], + ["747130603650197", "178432547398"], + ["802850515033788", "533078887"], + ["781679783768247", "144562488635"], + ["782409627124817", "114544305063"], + ["802574068026435", "271967604583"], + ["803396168822726", "224105067098"], + ["803179095557485", "151582713093"], + ["820993315620312", "45278692"], + ["821101286458761", "1594793"], + ["821101430543039", "24690921"], + ["821101937883159", "39305197"], + ["821325582509465", "98401627464"], + ["821101395678970", "34864069"], + ["824055711364552", "114425762"], + ["824922517736038", "9689035799"], + ["825195758746986", "17132148668"], + ["825427269786405", "32902204320"], + ["827242587890579", "58974785104"], + ["828261310410658", "168190067886"], + ["910486711658689", "207036916985"], + ["889991400006036", "1052264342541"], + ["929277339762736", "107099547303"] + ] + ], + ["0x5775b780006cBaC39aA84432BC6157E11BC5f672", [["387060250201237", "25332961300"]]], + [ + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", + [ + ["65967965420834", "66114223251"], + ["66098356384040", "709218727"], + ["787251008279513", "27741210361"] + ] + ], + ["0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", [["848000115350590", "177450395"]]], + [ + "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00", + [ + ["695883029551470", "3618830978"], + ["695950893560494", "7385494623"] + ] + ], + [ + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", + [ + ["94293396462959", "11277021864"], + ["148982330924047", "90152601115"], + ["252613171398382", "9788460106"], + ["254434821130723", "42398880624"], + ["270756344760930", "42239183866"], + ["270896539738641", "138280774553"], + ["278466316307192", "26811333934"], + ["720710015864786", "150000000000"] + ] + ], + [ + "0x59229eFD5206968301ed67D5b08E1C39e0179897", + [ + ["404072352993016", "4560091570"], + ["921793706552858", "146130245088"] + ] + ], + ["0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", [["329343745789140", "98936672471"]]], + [ + "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef", + [ + ["61658545548819", "3231807785977"], + ["430683433278432", "1824524280000"], + ["569175292938999", "2758540080000"] + ] + ], + ["0x5A25455Cf1c5309FE746FD3904af00e766Eca65f", [["729235941744400", "207192309402"]]], + [ + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", + [ + ["695271790792853", "4848909225"], + ["708321754068675", "12287980322"], + ["708948464817453", "3934226800"], + ["708796658842213", "29135772559"] + ] + ], + [ + "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e", + [ + ["149072483525162", "14956941882"], + ["243000491428745", "25944797737"], + ["263428207273619", "16158945430"] + ] + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + [ + ["137147483729051", "10087313298"], + ["145676784599260", "12856872500"], + ["225413555091497", "77355000000"], + ["279342880223832", "62944772965"], + ["541679847367551", "26915995911"], + ["643671292393858", "20467308746"], + ["714211331211522", "214025000000"], + ["716942581953896", "156683400000"], + ["719538452967348", "151481732090"], + ["737968552803938", "13229284933"], + ["741385704614516", "59389696996"], + ["805487723131487", "12949190203"], + ["825189019183527", "6739563459"], + ["843062851131040", "68619328543"], + ["847583757896153", "10604585661"], + ["861299408827857", "1303886596053"], + ["870137869841213", "515797412273"], + ["920790983746076", "96628816629"], + ["920887614177105", "80698396938"], + ["921939836929069", "25000733085"], + ["922729202329928", "53711143255"], + ["944524561872595", "78684728679"], + ["945443590498240", "229380229313"], + ["947206303616773", "209848058617"], + ["948240209408970", "131847120287"], + ["970040661811660", "2098652407026"], + ["963144814415781", "295817208073"], + ["973144655632015", "50058887216"], + ["977621305099586", "451136446595"] + ] + ], + [ + "0x5c0ed0a799c7025D3C9F10c561249A996502a62F", + [ + ["829614178933391", "55862378283"], + ["829675447607975", "16682055566"], + ["829600752971773", "13425961618"] + ] + ], + [ + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", + [ + ["122210879240623", "2751729452"], + ["117231045199115", "2287841173"], + ["709185678005625", "3850108834"], + ["725599911125635", "50493335822"] + ] + ], + ["0x5C6cE0d90b085f29c089D054Ba816610a5d42371", [["311996527622013", "59395536292"]]], + ["0x5c9d09716404556646B0B4567Cb4621C18581f94", [["133684865469102", "20000000000"]]], + ["0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", [["218964552881591", "20828898066"]]], + [ + "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", + [ + ["228888276373773", "22900000000"], + ["229017432373773", "55944700000"], + ["299091105342205", "100073216296"], + ["371931813285934", "14439424263"], + ["387226628784840", "39015199159"], + ["386643583678456", "12665494224"], + ["392860263056712", "12750000000"], + ["456089065938105", "13280063140"], + ["456102346001245", "9294571287"], + ["456111640572532", "13275856475"], + ["649251520559057", "39546000000"], + ["649555340309057", "39546000000"], + ["649859160059057", "39546000000"], + ["648305367299057", "95701320000"] + ] + ], + [ + "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B", + [ + ["297373764711688", "38237815837"], + ["306238279513344", "34408580863"] + ] + ], + [ + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", + [ + ["290260128523539", "258558904960"], + ["333406033730688", "42383755833"], + ["374011500795098", "134100000000"], + ["704797749205879", "842769388"], + ["709284101979168", "7110933861"], + ["711627522099376", "471976956"] + ] + ], + [ + "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2", + [ + ["370904434739966", "43672091722"], + ["381131949645927", "109484641436"] + ] + ], + [ + "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391", + [ + ["327880245815221", "87321731643"], + ["929264027457555", "13312303253"] + ] + ], + ["0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", [["248278425109276", "4230389743"]]], + [ + "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA", + [ + ["590900855644397", "27264468841"], + ["590941291612433", "50596246406"] + ] + ], + ["0x6040FDCa7f81540A89D39848dFC393DfE36efb92", [["181299068052561", "32175706816"]]], + ["0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF", [["92833059143567", "64000000000"]]], + [ + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", + [ + ["130298704901115", "1194000000000"], + ["411691467443932", "1837200000000"], + ["419184163141931", "1873200000000"], + ["428643245698649", "1912200000000"], + ["446915730809845", "3253000000000"] + ] + ], + ["0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A", [["709654240841564", "1795068"]]], + [ + "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", + [ + ["264421523115184", "44559574776"], + ["269625341192993", "135909962633"], + ["260919467219945", "20307567726"], + ["285311432045544", "88646625543"], + ["283876777629530", "432111595595"], + ["299783400701340", "122335228001"], + ["304474889038225", "193838339361"], + ["742458599346747", "100824447648"], + ["827779695737087", "466125005645"], + ["928153180905365", "228905711977"], + ["944012313245132", "255298540903"] + ] + ], + [ + "0x6343B307C288432BB9AD9003B4230B08B56b3b82", + [ + ["251903256768189", "3001979267"], + ["289028801361236", "9098821991"], + ["328351535977992", "10019159841"], + ["379479400595098", "10004250325"], + ["400111921902968", "10015549677"], + ["422358375861038", "5009439565"], + ["461510084083867", "3004757667"], + ["461513088841534", "2922196166"], + ["469465622028508", "1693453752"], + ["469463777851148", "1844177360"], + ["608371674138774", "10048376141"] + ] + ], + [ + "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", + [ + ["490205291129867", "39624686375"], + ["902789663460379", "4019358849"] + ] + ], + [ + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", + [ + ["646576510127020", "2534228224"], + ["647775542417444", "5673597364"] + ] + ], + [ + "0x647bC16DCC2A3092A59a6b9F7944928d94301042", + [ + ["295492903609864", "101810011675"], + ["656467053262897", "47102200000"] + ] + ], + [ + "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", + [ + ["262307148861264", "68900140210"], + ["311844690009016", "25000000000"], + ["319694744863302", "183219147770"], + ["319974518285467", "3445725605"], + ["319378866931585", "200370650949"], + ["698269939017266", "5486788601"], + ["708080010466127", "1957663487"], + ["708348762931013", "4812444606"], + ["709470442458147", "11578312077"], + ["711257309223187", "3108966478"] + ] + ], + ["0x64e149a229fa88AaA2A2107359390F3b76E518AD", [["311801867615122", "42822393894"]]], + ["0x6525e122975C19CE287997E9BBA41AD0738cFcE4", [["469185727281112", "78748758703"]]], + ["0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8", [["469169645692260", "6081271018"]]], + [ + "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a", + [ + ["710902377407054", "623800000"], + ["712986468802101", "1653185142"], + ["712010342971048", "3081500000"], + ["715331904546867", "1550473112"], + ["711625667799376", "1854300000"], + ["714988393664085", "1610442418"], + ["711779293616445", "1110960000"], + ["712745678184382", "3827342044"], + ["712354471754667", "675422900"], + ["872327312792564", "12682309008"] + ] + ], + ["0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22", [["387342442778997", "11833992957"]]], + ["0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD", [["94333693372636", "10666666666"]]], + [ + "0x66B0115e839B954A6f6d8371DEe89dE90111C232", + [ + ["235887412728742", "45"], + ["255946320681059", "85437509504"], + ["251682912512889", "5514286863"], + ["251707140649725", "26273598464"], + ["251688426799752", "891296390"], + ["262541064560306", "29101504817"], + ["277816757413884", "83474118399"], + ["298658006904339", "81104453323"], + ["404034617704521", "33242114013"], + ["404076913084586", "29159870308"], + ["416519193744567", "62595004655"], + ["586571583807193", "41624181591"], + ["623763380044871", "120603000000"], + ["629995631193378", "120603630000"], + ["627334529976040", "120603630000"], + ["625929761555271", "120603630000"], + ["633095481400316", "120603630000"], + ["631255404413778", "120603630000"] + ] + ], + ["0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6", [["927634141843427", "362107628548"]]], + ["0x679B4172E1698579d562D1d8b4774968305b80b2", [["456659655291143", "6726740160"]]], + [ + "0x682864C9Bc8747c804A6137d6f0E8e087f49089e", + [ + ["825245318955323", "376300000"], + ["827241140670920", "103950567"], + ["829005991887487", "4494000"], + ["829849261295682", "54860000"], + ["829849250323682", "10972000"] + ] + ], + ["0x688b3a3771011145519bd8db845d0D0739351C5D", [["659295439819586", "297938099"]]], + [ + "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07", + [ + ["702368636779868", "3801049629"], + ["698477241949083", "3665297857"] + ] + ], + [ + "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3", + [ + ["120576014163896", "48580563120"], + ["120624594727016", "10000000"], + ["236967952962834", "639000700700"], + ["387389374771954", "17549000000"], + ["388995837042393", "200000000000"], + ["548233773854003", "8118000000000"], + ["520075759239909", "1509444773173"], + ["591077039421030", "60353499994"], + ["601154487873853", "1050580350517"], + ["602359789978270", "1053414238201"], + ["737664857987768", "2281535426"], + ["849185560908268", "1423950000000"] + ] + ], + [ + "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2", + [ + ["266985287159264", "23473305765"], + ["289572383709939", "26144594910"], + ["290871125843437", "196893643061"] + ] + ], + [ + "0x69e02D001146A86d4E2995F9eCf906265aA77d85", + [ + ["723782420675363", "41531785"], + ["801816935814506", "293208703330"], + ["910693748575674", "16363837424"], + ["892260306698253", "19412572061"] + ] + ], + ["0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", [["828677403443205", "1261346400"]]], + ["0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b", [["711381608801232", "893481478"]]], + [ + "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", + [ + ["93189072915315", "28148676958"], + ["211489859303178", "242948254181"], + ["221182031927169", "20023987333"], + ["222197249910350", "20000000000"], + ["403689213498540", "333305645984"], + ["405680677639939", "66850100000"], + ["405518022477439", "51504000000"], + ["424898303555329", "102337151992"], + ["422814590899875", "62680000000"], + ["439681618379353", "38488554613"], + ["430555445698649", "127987579783"], + ["456622427145391", "6712331491"], + ["458058652716143", "66231437063"], + ["463475654735836", "26916949971"], + ["591262392921024", "281553523845"], + ["637878727770943", "128350847807"], + ["656819002275397", "42417259406"], + ["691668792139952", "5506646911"], + ["685442174853017", "235481948284"], + ["695268369275534", "3421517319"], + ["692012436058817", "5243434934"], + ["695596967421239", "2971508955"], + ["696064281163562", "4637078134"], + ["701683952284740", "126770247812"], + ["700846296542750", "77913000000"], + ["704768182201422", "7174635902"], + ["708033476321816", "9652153237"], + ["742216567824341", "242031522406"], + ["741950256695293", "115002187754"], + ["853831018243357", "102830000000"], + ["889880468487159", "110931518877"], + ["907652080195012", "523488988207"] + ] + ], + [ + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", + [ + ["94280226431848", "64286521"], + ["637877841074207", "886696736"], + ["646579044355244", "2349268241"], + ["695601083772865", "1475264000"] + ] + ], + ["0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F", [["334136741601291", "21"]]], + ["0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd", [["692839388798357", "27065136362"]]], + ["0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10", [["458151359406665", "50261655503"]]], + [ + "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D", + [ + ["866340436151206", "72305318668"], + ["944757410088036", "82518671123"], + ["973088659433490", "55938224595"], + ["980412293238477", "76438100488"] + ] + ], + [ + "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9", + [ + ["260693811733755", "4"], + ["405968282894334", "479115910"], + ["702635645270584", "2916178314"], + ["702638561448898", "2749595885"], + ["704230618678845", "4222978151"], + ["705024084706300", "4471591756"], + ["704927005343980", "3171247947"], + ["705019150510765", "4934195535"], + ["704762610666287", "5571535135"], + ["704225423900982", "5194777863"], + ["705517174750652", "8012158467"], + ["705571425467837", "5546831538"], + ["705419217377376", "6411168248"], + ["705252899909464", "8655423354"], + ["705551004584645", "5047673478"], + ["707858424392398", "2514524429"], + ["709326511391600", "2827660397"], + ["709936181218249", "17620350"] + ] + ], + [ + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", + [ + ["696665004599178", "1027219504"], + ["697116362904669", "880116472"], + ["702641311044783", "5493342645"], + ["707895823232670", "1939941186"], + ["708074825616184", "3045363522"], + ["705684740198071", "2808417895"], + ["707878491491963", "903060349"], + ["828254386999438", "1001496834"], + ["828429500478544", "1890000000"], + ["829101708988206", "4444320090"] + ] + ], + ["0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", [["464596886728232", "4265691158"]]], + [ + "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54", + [ + ["392885437378366", "61934486285"], + ["469449946056586", "6779928792"] + ] + ], + [ + "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B", + [ + ["61549350441365", "387146704"], + ["829018632524342", "68608459317"] + ] + ], + [ + "0x702aA86601aBc776bEA3A8241688085125D75AE2", + [ + ["170626838120224", "23439331676"], + ["267008760465029", "33943660000"], + ["567294408626458", "3604981492"], + ["567298013607950", "7211374244"], + ["603413204216471", "10000615500"] + ] + ], + [ + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", + [ + ["218682312374564", "19294351466"], + ["705516377156968", "797593684"], + ["709411142167954", "5285515919"], + ["710442351641687", "18516226556"], + ["733761602868295", "17500007580"] + ] + ], + [ + "0x70a9c497536E98F2DbB7C66911700fe2b2550900", + [ + ["704984983922647", "518323846"], + ["705479769482409", "2255393372"], + ["705384771515392", "274579086"], + ["705363768721563", "279246690"], + ["705482024875781", "4452414623"], + ["705375135866142", "197641438"], + ["705447769709635", "289371263"], + ["705473141812266", "1080267604"], + ["738620191031981", "2857142857"], + ["742814831678217", "25111379095"], + ["978190849192258", "32052786097"] + ] + ], + ["0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793", [["401293601260766", "16127724193"]]], + [ + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", + [ + ["94281335351844", "4"], + ["102499194204221", "2693066940"], + ["102462180740541", "668874033"], + ["149986604795340", "1354378846"], + ["708889275835529", "25920905560"], + ["709741475815606", "33"], + ["709779995522042", "22959268"], + ["710313218247852", "2278449"], + ["710810990808327", "649539942"], + ["710365362375408", "19324702"], + ["710413791193783", "48009418"], + ["710822390348269", "448369312"], + ["711003673916281", "2584832868"], + ["803070703779156", "7498568832"], + ["800227279841768", "19781032784"], + ["821300790866980", "11891246578"] + ] + ], + ["0x70c65accB3806917e0965C08A4a7D6c72F17651A", [["828631979817405", "4117776465"]]], + [ + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", + [ + ["120624604727016", "504171940643"], + ["190556859399088", "467400000000"], + ["185619636324783", "3038100000000"], + ["264089423115184", "332100000000"] + ] + ], + [ + "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8", + [ + ["105106690780935", "960392727042"], + ["114544358382068", "560000421094"], + ["148866184915855", "29174580000"], + ["145171991099348", "88783500000"], + ["182184201611991", "595350750000"], + ["215059243720233", "722113163135"], + ["398232899093275", "208640000000"], + ["451987853690637", "1732376340000"], + ["486937201527958", "1709471220000"], + ["808379248863176", "1065835841221"] + ] + ], + [ + "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", + [ + ["373857817940092", "60865019612"], + ["457383441575595", "26041274600"], + ["586681698317766", "119322721243"], + ["578290870658268", "28582806091"], + ["622606759886341", "198991954538"], + ["608655832877662", "70107880058"], + ["627161253988540", "75915000000"], + ["623945764044871", "75915000000"], + ["630213595810878", "75915000000"], + ["625792064397771", "75915000000"], + ["633277867187816", "75915000000"], + ["733746602868295", "15000000000"] + ] + ], + ["0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", [["732098380453278", "112808577"]]], + [ + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", + [ + ["319877964011072", "81750376187"], + ["828245820742732", "5542244064"] + ] + ], + ["0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246", [["556468241468166", "10275174620"]]], + [ + "0x726C46B3E0d605ea8821712bD09686354175D448", + [ + ["103707589567835", "921515463464"], + ["369436700764088", "1085880660191"] + ] + ], + [ + "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2", + [ + ["152104384211320", "37830812302"], + ["246897209885390", "25083351878"], + ["250798015314250", "31883191886"], + ["260716468807561", "35132497379"], + ["335568346974366", "42917709597"], + ["392778649056466", "61822486683"] + ] + ], + [ + "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4", + [ + ["372150761298556", "57433012261"], + ["376596839455634", "136678730685"], + ["376791155233583", "93694962402"], + ["372553355419959", "1090720348401"], + ["454782599676511", "40057990877"] + ] + ], + [ + "0x74231623D8058Afc0a62f919742e15Af0fb299e5", + [ + ["93012561017070", "11659706427"], + ["152069659197493", "34725013824"], + ["296942140597416", "30400392115"] + ] + ], + [ + "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347", + [ + ["333947098307518", "165298148930"], + ["339545214559094", "240278890901"], + ["360355776306507", "69420000075"] + ] + ], + [ + "0x7568614a27117EeEB6E06022D74540c3C5749B84", + [ + ["270752393130403", "1224386800"], + ["373918682959704", "7267067960"], + ["405970755944204", "2000000000"], + ["708113716268815", "6479854471"], + ["713855849343230", "16139084611"] + ] + ], + [ + "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515", + [ + ["136889611492596", "8000000000"], + ["204495039904762", "10948490796"] + ] + ], + [ + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", + [ + ["236275109596786", "75138116495"], + ["248750069836807", "16717595903"] + ] + ], + ["0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000", [["73813424150780", "106416284126"]]], + ["0x76A63B4ffb5E4d342371e312eBe62078760E8589", [["643414473152684", "4410560000"]]], + ["0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc", [["701404861672440", "258412979"]]], + ["0x775B04CC1495447048313ddf868075f41F3bf3bB", [["384159922068708", "49257554759"]]], + ["0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B", [["335517175308668", "11429408683"]]], + ["0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D", [["548196933854003", "36840000000"]]], + ["0x78320e6082f9E831DD3057272F553e143dFe5b9c", [["61619455558487", "61632407"]]], + ["0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E", [["148192829238946", "31956558401"]]], + [ + "0x7893b13e58310cDAC183E5bA95774405CE373f83", + [ + ["709666160545763", "11543"], + ["709816692362507", "8278400000"], + ["709851080588627", "9538500000"], + ["709845482953599", "5089600000"], + ["709824970762507", "7004800000"], + ["709632896935250", "6104653206"], + ["709780018481310", "6969544474"], + ["709666160557306", "322894"], + ["709786988025784", "1319829324"], + ["710156635413020", "17894090000"], + ["710702844316130", "26412980000"], + ["710729895252028", "17274840000"], + ["710248073475628", "11365200000"], + ["710527849844805", "32614400000"], + ["710139704704688", "16447600000"], + ["710229754175628", "18319300000"], + ["710416736643243", "15081600000"], + ["710083968820377", "4875640000"], + ["711069412997151", "4642174919"], + ["710175409210628", "22636340000"], + ["710088844460377", "15070160000"], + ["710961593049733", "20804860000"], + ["710560464244805", "33988820000"], + ["710060413780377", "23555040000"], + ["710797859508327", "13131300000"], + ["710272331842664", "11990900000"], + ["711062754387151", "6658610000"], + ["710413839203201", "2827800000"], + ["711091371625635", "34628690000"], + ["710747170092028", "20654700000"], + ["711044707687151", "18046700000"], + ["710198045550628", "18328000000"], + ["712614668401086", "135322"], + ["722467139548715", "218560408342"], + ["869974029967651", "163839873562"], + ["872339995101572", "1285117945279"], + ["873625113046851", "1246029256854"], + ["918710106722133", "1634493779706"] + ] + ], + [ + "0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50", + [ + ["81489555435321", "4967300995"], + ["921019116580415", "11474760241"] + ] + ], + [ + "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E", + [ + ["384080962533404", "24675798977"], + ["401238525968469", "53380000000"], + ["401185145968469", "53380000000"] + ] + ], + ["0x7A63D7813039000e52Be63299D1302F1e03C7a6A", [["401442190164996", "9750291736"]]], + [ + "0x7A6530B0970397414192A8F86c91d1e1f870a5A6", + [ + ["170714896213600", "15454078646"], + ["705261555332818", "8161384731"] + ] + ], + ["0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", [["685794219209263", "41439894685"]]], + ["0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD", [["325881466662025", "8605989205"]]], + ["0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E", [["705875361414229", "213353964"]]], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + [ + ["799304677129355", "725867793824"], + ["800295495177172", "997011405679"], + ["801292506582851", "280746545970"] + ] + ], + ["0x7B2d2934868077d5E938EfE238De65E0830Cf186", [["115104358803162", "629903012456"]]], + [ + "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4", + [ + ["235588719194871", "281091996530"], + ["372208194310817", "225639161016"] + ] + ], + [ + "0x7bB955249d6f57345726569EA7131E2910CA9C0D", + [ + ["339069051603118", "98218175816"], + ["666906649212860", "85487500000"], + ["664705856853643", "199366926066"], + ["666107871110360", "45804202500"], + ["666487418512860", "85487500000"] + ] + ], + [ + "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc", + [ + ["733502153649619", "22359930276"], + ["735061538500731", "57490196078"] + ] + ], + [ + "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F", + [ + ["209868075661259", "42976910603"], + ["211201155017630", "101280926262"], + ["210587680884664", "17768345687"], + ["260829150583722", "90316636223"] + ] + ], + ["0x7c4430695c5F17161CA34D12A023acEbD6e6D35e", [["264511318157528", "35447202880"]]], + [ + "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3", + [ + ["290682958511741", "188167331696"], + ["288295221343358", "90992725291"] + ] + ], + [ + "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16", + [ + ["94255248987404", "2542932710"], + ["708924934892507", "2276035252"] + ] + ], + ["0x7D6261b4F9e117964210A8EE3a741499679438a0", [["255052991465844", "212363516752"]]], + [ + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + [ + ["102460599890959", "1580849582"], + ["102462849614574", "1537628217"], + ["708884220941825", "5054893704"], + ["709284026170605", "75808563"], + ["718024184685192", "48622222222"], + ["717249342317875", "50144887945"], + ["721155284440594", "42190522575"] + ] + ], + ["0x7eaF877B409740afa24226D4A448c980896Be795", [["670420999163189", "20074904153"]]], + ["0x7F82e84C2021a311131e894ceFf475047deD4673", [["684710715486316", "62496053737"]]], + ["0x80077CB3B35A6c30DC354469f63e0743eeff32D4", [["478564758595291", "4099200000000"]]], + [ + "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5", + [ + ["102469260126700", "5263157894"], + ["274436143868893", "12500000000"], + ["441742798428071", "10461930383"], + ["446779863150493", "16235000000"], + ["707924243183540", "6300493418"], + ["707970999567062", "6350838475"], + ["709428056372291", "14576284733"], + ["709506330452613", "13030510108"], + ["714426818941964", "24458875511"], + ["714608893820192", "119019649033"], + ["723153115855767", "79777206742"] + ] + ], + [ + "0x804Be57907807794D4982Bf60F8b86e9010A1639", + [ + ["145860635343358", "91448859303"], + ["137553610896101", "94753388776"] + ] + ], + [ + "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81", + [ + ["135308874736610", "25544672634"], + ["227353999537909", "87221043559"] + ] + ], + ["0x80a2527A444C4f2b57a247191cDF1308c9EB210D", [["828640296186909", "37106473488"]]], + [ + "0x81704Bce89289F64a4295134791848AaCd975311", + [ + ["705202370008774", "46712134"], + ["705315982821399", "33"] + ] + ], + ["0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19", [["298138328262598", "24112008674"]]], + [ + "0x81F3C0A3115e4F115075eE079A48717c7dfdA800", + [ + ["146134038045227", "17746542257"], + ["199333964622114", "21229490022"] + ] + ], + [ + "0x82F402847051BDdAAb0f5D4b481417281837c424", + [ + ["94282285351848", "2512740605"], + ["276370348620872", "5150327530"], + ["387201608784840", "25020000000"], + ["396976528945260", "10121780000"] + ] + ], + [ + "0x832fBA673d712fd5bC698a3326073D6674e57DF5", + [ + ["278669782994289", "22996141953"], + ["326721702127025", "23842558596"] + ] + ], + [ + "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751", + [ + ["643036863279717", "1000000"], + ["643036864279717", "9999000000"], + ["726830253055121", "272195102173"], + ["730462878657385", "215834194074"], + ["738560537033252", "31545276943"], + ["740043827110994", "570100000000"], + ["821482280174979", "640797"], + ["821101901297999", "36372829"], + ["821101711977688", "63916929"], + ["821101937670828", "212331"], + ["821312682113558", "237950000"], + ["821101855658162", "45639837"], + ["821101775894617", "34919933"], + ["821101855603559", "54603"], + ["821101810814550", "44762503"], + ["821101855577053", "26506"], + ["823424437815004", "31584894"], + ["822990014883491", "38655387"], + ["822989196101560", "20624528"], + ["822987173919481", "27291992"], + ["823424408304268", "29510736"], + ["822989155693672", "40407888"], + ["822987027313953", "18166203"], + ["822987045480156", "33655130"], + ["824069891183597", "21214050"], + ["822987079135286", "41246561"], + ["823424469399898", "35342"], + ["823424469435240", "19821585"], + ["822990053538878", "8965138"], + ["825005853919704", "2145664"], + ["825027381429715", "34733796"], + ["825027427187941", "2604448"], + ["825033476640521", "9831655"], + ["825033445546427", "5775330"], + ["825033467597797", "9042724"], + ["825006468406338", "2178159"], + ["825033459408195", "8189602"], + ["825033436900754", "8645673"], + ["825033486472176", "27363324"], + ["825005980415059", "18553917"], + ["825033451321757", "8086438"], + ["825033424020303", "12880451"], + ["825005853793484", "126220"], + ["825105289165956", "8299132"], + ["825037528705176", "12836178"], + ["825039495722685", "8796762"], + ["825107414981094", "8847815"], + ["825106717556077", "8074766"], + ["825105281248629", "7917327"], + ["825106649088791", "9446755"], + ["825104972670759", "9117332"], + ["825106668087124", "12158603"], + ["825106680245727", "17003737"], + ["825039477533361", "12803633"], + ["825106697249464", "20306613"], + ["825112105885851", "10869074"], + ["825105266403185", "7294661"], + ["825039465644397", "11888964"], + ["825105143717399", "4457574"], + ["825106631328688", "8329771"], + ["825106639658459", "9430332"], + ["825106621663222", "8438801"], + ["825106597820911", "7313583"], + ["825106630102023", "1226665"], + ["825106658535546", "9551578"], + ["825106613390999", "8272223"], + ["825039490336994", "5385691"], + ["825106605134494", "8256505"], + ["825105273697846", "7550783"], + ["825106725630843", "6279090"], + ["825188965095474", "1301076"], + ["825188968096661", "1809338"], + ["825188897180360", "5540593"], + ["825114818374627", "9752450"], + ["825188975782832", "7533814"], + ["825188868708913", "7814413"], + ["825114828127077", "9787526"], + ["825188935627843", "9288929"], + ["825188187447538", "75874729"], + ["825188884242039", "6432651"], + ["825188861072934", "7635979"], + ["825188138585647", "48861891"], + ["825188123571037", "15014610"], + ["825185212964534", "9560632"], + ["825112343540711", "9849175"], + ["825188957259484", "2894840"], + ["825188923225927", "12401916"], + ["825188902720953", "9367181"], + ["825188969905999", "2557221"], + ["825185203613295", "9351239"], + ["825188890674690", "6505670"], + ["825188853567267", "7505667"], + ["825188966396550", "1700111"], + ["825188110986658", "12584379"], + ["825188876523326", "7718713"], + ["825187265241764", "11112309"], + ["825188912088134", "11137793"], + ["825188944916772", "9390137"], + ["825188954306909", "1450847"], + ["825188983316646", "7779768"], + ["825188972463220", "3319612"], + ["825188955757756", "1501728"], + ["825188960154324", "4941150"], + ["825581557867983", "8106249"], + ["825581637903961", "6424123"], + ["825583122192929", "971045"], + ["828261310410621", "37"], + ["828261310038784", "371800"], + ["828261310410584", "37"], + ["828954488173016", "409264"], + ["828981794217123", "16635629"], + ["828954488582280", "6540080"] + ] + ], + [ + "0x8366bc75C14C481c93AaC21a11183807E1DE0630", + [ + ["137130130894736", "5352834315"], + ["147350708377729", "21743427538"], + ["214867751304001", "31920948003"], + ["709304868113029", "11538942187"], + ["718336098243492", "22663915925"] + ] + ], + [ + "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17", + [ + ["279944599116288", "90674071972"], + ["572188643809800", "208510236741"] + ] + ], + [ + "0x83C9EC651027e061BcC39485c1Fb369297bD428c", + [ + ["102745713763657", "961875804178"], + ["106565261640158", "303350065235"], + ["104629105031299", "477585749636"], + ["136183041698191", "463749167922"], + ["136685099205493", "129981759017"] + ] + ], + [ + "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", + [ + ["697101882989642", "594161902"], + ["699431659841853", "1659683909"], + ["710284322742664", "12127559908"] + ] + ], + ["0x8456f07Bed6156863C2020816063Be79E3bDAB88", [["373644075768360", "27881195737"]]], + [ + "0x848aB321B59da42521D10c07c2453870b9850c8A", + [ + ["737811992121289", "419955"], + ["737815110802113", "785945"] + ] + ], + ["0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b", [["469403825976872", "46120079714"]]], + [ + "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e", + [ + ["380616356873764", "99825855937"], + ["380516409078784", "99947794980"] + ] + ], + ["0x85971eb6073d28edF8f013221071bDBB9DEdA1af", [["256741264517324", "16839687137"]]], + [ + "0x85bBE859d13c5311520167AAD51482672EEa654b", + [ + ["113217768062616", "99058163147"], + ["157891684526120", "102770386747"], + ["234515818524861", "93706942656"], + ["422689668564485", "124922335390"], + ["456636119295578", "1342546167"], + ["456629139476882", "3355929998"], + ["461516011037700", "13305220778"], + ["469467315482260", "2037424295"], + ["476679527138286", "2006847559"], + ["505012725542548", "132685663226"], + ["639033865691257", "30085412412"], + ["897394349492390", "101381274964"], + ["978086960291670", "103888892461"] + ] + ], + [ + "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008", + [ + ["77525487677503", "1386508934563"], + ["513251371472285", "3565000000000"] + ] + ], + [ + "0x85Eada0D605d905262687Ad74314bc95837dB4F9", + [ + ["741235656825477", "8091023787"], + ["742761033370593", "7857742444"] + ] + ], + ["0x8675C7bc738b4771D29bd0d984c6f397326c9eC2", [["332990203193622", "198152825"]]], + ["0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c", [["821313649896897", "11932612568"]]], + [ + "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", + [ + ["801754549832839", "3880736646"], + ["830438768262888", "543636737"] + ] + ], + [ + "0x87316f7261E140273F5fC4162da578389070879F", + [ + ["94429360260424", "86512840254"], + ["122238087814013", "122328394500"], + ["695881538915987", "177195"], + ["712016403529785", "91918750000"], + ["723420876763287", "358440000000"], + ["727102448157294", "277554381613"], + ["727952095432533", "262793215966"], + ["728222220273967", "218769177704"] + ] + ], + ["0x876133657F5356e376B7ae27d251444727cE9488", [["829766411373307", "6878063205"]]], + [ + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", + [ + ["90543414329090", "2152396670739"], + ["93309924592273", "480290414"], + ["128226216485089", "33653558763"], + ["131492704901115", "66346441237"], + ["148710379059738", "155805856117"], + ["159629403698321", "312782775000"], + ["282346088197525", "79784359766"], + ["353079009878838", "188949798464"], + ["423275581520194", "792250000000"], + ["414599405770600", "24576000000"], + ["414568745770600", "30660000000"], + ["437645284146563", "1617000000000"], + ["451961075325496", "26778365141"], + ["455237154009110", "716760000000"], + ["451900125444866", "27097995630"], + ["457480724801136", "19925216963"], + ["457427195306595", "26723534157"], + ["457453918840752", "26805960384"], + ["458005469231061", "6636959689"], + ["464381804875284", "26771365896"], + ["568245966230253", "1891500000"], + ["612630768033573", "4512000000"], + ["634784742227908", "106500000000"], + ["650007751158601", "131652538887"], + ["661535564318412", "2363527378"], + ["700844107312136", "2189230614"], + ["767020132851370", "144595850533"], + ["802858660470831", "1456044898"], + ["802878197848987", "32651685550"], + ["802910849534537", "61004241338"], + ["804304083065472", "94910366676"], + ["803689571585644", "273256402439"], + ["804443262678514", "26369949937"], + ["804729611648932", "29793092327"], + ["804813293481956", "29401573282"], + ["805546618289044", "288732279695"] + ] + ], + [ + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", + [ + ["68739504446703", "5073919704077"], + ["118942719119052", "1456044500354"], + ["99916638465309", "2131906543178"], + ["231401195697185", "56571249769"], + ["410148597983604", "1506500000000"], + ["441820910507194", "3775193029045"], + ["502372458357585", "2601287700000"], + ["578319453464359", "3763750720000"], + ["693735126776002", "22758013200"], + ["806144582194197", "2234666668979"] + ] + ], + [ + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", + [ + ["228911176373773", "106256000000"], + ["888869492849811", "853190019303"], + ["888758709596303", "110783253508"] + ] + ], + [ + "0x88F09Bdc8e99272588242a808052eb32702f88D0", + [ + ["146158109178928", "840122967451"], + ["149582131077935", "233118002521"], + ["214300869548528", "41365965513"], + ["216128456883368", "375222322618"], + ["226444626650746", "439812976881"], + ["232632449431421", "351737246973"], + ["280035273188260", "267770208367"] + ] + ], + ["0x88F667664E61221160ddc0414868eF2f40e83324", [["411656965874384", "31369126849"]]], + ["0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1", [["406029207697903", "70954400000"]]], + [ + "0x891768B90Ea274e95B40a3a11437b0e98ae96493", + [ + ["603513735125781", "183217724421"], + ["641981800917167", "240857146192"], + ["641392513137474", "202078712746"], + ["704675567367290", "67704306110"], + ["707977350405537", "13082343750"], + ["707990432749287", "9963000000"], + ["708193702547054", "19836000000"], + ["708545172953530", "9033750000"], + ["708490332152346", "10074093750"], + ["708709415276862", "7345791596"], + ["709702070804995", "8173059019"], + ["716108861603690", "23536146483"], + ["714590509507475", "16002234489"], + ["713814719117064", "41130226166"], + ["760269338684328", "235512332890"], + ["871268705037317", "1021515561753"] + ] + ], + ["0x89979246e8764D8DCB794fC45F826437fDeC23b2", [["241628702712952", "111111111"]]], + [ + "0x8A30D3bb32291DBbB5F88F905433E499638387b7", + [ + ["685983331448107", "365063359304"], + ["782094916244052", "172940224850"], + ["851182956547742", "266340074594"] + ] + ], + ["0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9", [["234609525467517", "5892105020"]]], + [ + "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", + [ + ["93005074342273", "4909413452"], + ["385914550632686", "20381632106"], + ["398965539093275", "110785980662"] + ] + ], + [ + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", + [ + ["66081788208473", "25693"], + ["136924132809737", "55399924533"], + ["331554473841786", "6167341566"], + ["695408230038249", "1458416574"], + ["695504899844259", "8038918025"], + ["695812940661609", "14524410119"], + ["698080231296006", "5949833624"], + ["698039618818358", "43996256"] + ] + ], + ["0x8b08CA521FFbb87263Af2C6145E173c16576802d", [["334551383798769", "86252721548"]]], + [ + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", + [ + ["709132382080943", "12191197851"], + ["714451277817475", "1500000000"], + ["718072806907414", "10000000000"], + ["718009928907392", "5000000000"] + ] + ], + [ + "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048", + [ + ["708673539483889", "8159246655"], + ["718102416527369", "14666666666"], + ["740617842723123", "10109491684"] + ] + ], + ["0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5", [["334951569354608", "7974066988"]]], + [ + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", + [ + ["980115296480441", "39771142560"], + ["980488900027563", "42954878920"] + ] + ], + [ + "0x8BB07e694B421433c9545C0F3d75d99cc763d74A", + [ + ["262195704014171", "25133316533"], + ["323193045387977", "3613514390"], + ["491115786234272", "54054054054"] + ] + ], + [ + "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", + [ + ["262238461549774", "5955474760"], + ["278616474511101", "44350084857"], + ["300495692840673", "43020513083"], + ["360531330232687", "221104866853"], + ["387442021771954", "17549000000"], + ["387371825771954", "17549000000"], + ["422992090217744", "277218187043"], + ["584034391150919", "367508589170"], + ["928548201528738", "168927430163"], + ["931070959398996", "161251868752"] + ] + ], + ["0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", [["254336564840316", "21615842337"]]], + [ + "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1", + [ + ["297373743071688", "21640000"], + ["308596392296534", "97017435775"], + ["329164100531105", "43140000000"], + ["446842521140999", "6012500000"] + ] + ], + ["0x8C35933C469406C8899882f5C2119649cD5B617f", [["799197247444195", "87106285553"]]], + [ + "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9", + [ + ["381130967987486", "981658441"], + ["457667790166306", "3278000000"] + ] + ], + ["0x8D02496FA58682DB85034bCCCfE7Dd190000422e", [["404709443708715", "26811409430"]]], + [ + "0x8D06Ffb1500343975571cC0240152C413d803778", + [ + ["90033828014680", "509586314410"], + ["211752169796288", "436653263484"], + ["210605449230351", "595705787279"], + ["223863668889013", "737048150894"], + ["224600717039907", "717665153748"], + ["222221022428903", "738480151497"], + ["235932178253848", "323070981235"], + ["271654840686001", "62132577144"], + ["293833662086844", "204706266628"], + ["308871788154245", "275332296988"], + ["315060646089683", "290236580727"], + ["323099144507879", "30303030303"], + ["333448417486521", "438603533273"], + ["396658256087892", "13913764863"], + ["401405678290340", "33796000000"], + ["405644627639939", "18025000000"], + ["405662652639939", "18025000000"], + ["405962579975371", "5702918963"], + ["491105193635980", "10590000000"], + ["689983137640329", "372857584031"], + ["690355995224360", "216873485917"], + ["695771940661609", "20948977130"], + ["698278077032509", "4910026986"], + ["698480907246940", "258192517612"], + ["702703326884002", "154715717850"], + ["700309899918605", "199438094194"], + ["702651637444244", "5800000000"], + ["705045633064375", "10900958949"], + ["705038731064375", "6902000000"], + ["705300848161231", "9601229268"], + ["705128202045096", "8204345668"], + ["705458794131645", "14347680621"], + ["705186670501048", "8182865200"], + ["705136406390764", "11854871050"], + ["705525186909119", "6674520726"], + ["705174505759843", "6544832392"], + ["705194853366248", "7516642526"], + ["705448059080898", "10735050747"], + ["705435715654948", "12054054687"], + ["705654108492000", "6225710228"], + ["705745621252102", "14199853473"], + ["705771520865575", "12249630834"], + ["708000395749287", "17642812500"], + ["708043128475053", "8605864430"], + ["707887650660405", "4969664107"], + ["708280126020271", "11761593750"], + ["708213538547054", "23544562500"], + ["708746641646901", "19873525000"], + ["708175718015804", "17984531250"], + ["708295349849925", "9285468750"], + ["708248570021231", "15762838323"], + ["708927210927759", "7654771125"], + ["709107547604381", "24834476562"], + ["708967767266128", "29093546875"], + ["709037114700489", "12756105568"], + ["708656471918219", "8111120358"], + ["708130960123304", "9799080000"], + ["708500406246096", "6381630000"], + ["708634811376217", "6953600000"], + ["709146555787974", "10268964843"], + ["709639001588456", "15239253108"], + ["709362566858771", "10357224170"], + ["709235682916688", "3568208882"], + ["709416427683873", "7377849726"], + ["709381038693917", "8545778006"], + ["709758451338697", "21544183345"], + ["709612099124524", "20797810726"], + ["709316407055216", "10104336384"], + ["709163494680866", "11688871093"], + ["709744988161855", "8718470609"], + ["709400057015017", "6063060479"], + ["709372924082941", "8114610976"], + ["709545211846984", "20715605468"], + ["709391104055403", "8952959614"], + ["709889561783853", "23321057117"], + ["709879411202693", "10150581160"], + ["709912903719770", "23277498479"], + ["709581451884857", "21586449186"], + ["709957188557349", "20297082735"], + ["710785654392028", "12205116299"], + ["710342922187908", "22440187500"], + ["710018569682536", "41844097841"], + ["710365381700110", "7534311320"], + ["710822838717581", "11667351669"], + ["710390043033627", "23748160156"], + ["709936198838599", "20989718750"], + ["718361741853542", "97443079393"], + ["719276176344786", "82507217675"], + ["719115393745202", "80000000000"], + ["720495799932813", "174474635475"], + ["718870450032336", "84888584622"], + ["718760344309244", "35105723092"], + ["726187815881468", "92828595185"], + ["737811992541244", "3118260869"], + ["737793823767812", "18043478260"], + ["740879520624524", "234067235160"], + ["743000109315186", "12689035666"], + ["743973017717686", "1148082700"], + ["802971853775875", "61092850308"], + ["802860935738429", "17262110558"], + ["824932314822822", "33297747636"], + ["824837925603556", "44972105263"], + ["829778713100321", "67782688750"], + ["973684270734582", "2704904821499"] + ] + ], + ["0x8d5380a08b8010F14DC13FC1cFF655152e30998A", [["608725940757720", "77364415010"]]], + ["0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D", [["106067083507977", "58533046674"]]], + [ + "0x8d9261369E3BFba715F63303236C324D2E3C44eC", + [ + ["117233333040289", "5555555555"], + ["117257556520139", "115480969665"], + ["655120353318480", "1088800000000"], + ["870719619853486", "69000002695"] + ] + ], + [ + "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8", + [ + ["137270169498180", "5973245960"], + ["137268178757187", "1990740993"] + ] + ], + ["0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c", [["820978887802944", "14385817538"]]], + [ + "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051", + [ + ["222959502580400", "115150000000"], + ["263791400213507", "110850000000"] + ] + ], + [ + "0x8E22B0945051f9ca957923490FffC42732A602bb", + [ + ["695917448319033", "6276203466"], + ["695923724522499", "9827545588"], + ["697033736670389", "9070037632"], + ["697159656841267", "5542323541"], + ["699706549470903", "369705124715"], + ["698289186536396", "4699403170"], + ["701369314234277", "27324351801"], + ["698284067268339", "5119268057"], + ["699646656853662", "59892617241"], + ["701010253185886", "3286401254"], + ["699401354046768", "4087299849"], + ["701013539587140", "355774647137"], + ["704837317003787", "7208774373"], + ["704848646616244", "5569600000"], + ["704912255112090", "1707040042"], + ["704913962152132", "5763520000"], + ["704749192280484", "8939065419"], + ["704958239220603", "5039030716"], + ["704854216216244", "9742600000"], + ["704950267420603", "7971800000"], + ["704832300833263", "661959372"], + ["704743271673400", "2066888224"], + ["704823862705889", "2752359372"], + ["704908434262090", "3820850000"], + ["705622541638590", "1504381620"], + ["705605646638590", "16895000000"], + ["707715602388050", "7647120000"], + ["707730356808050", "10325700000"], + ["705783770496409", "10623920000"], + ["705868314864229", "7046550000"], + ["705675839438071", "8900760000"], + ["707723249508050", "7107300000"], + ["705859293027037", "8593920000"], + ["705844466532729", "7386500000"], + ["705759821105575", "11699760000"], + ["707778193169382", "13915200000"], + ["705851853032729", "6647850000"], + ["705794394416409", "17638053943"], + ["705812032470352", "9745450000"], + ["710811640348269", "10750000000"], + ["711350009201232", "31599600000"], + ["710103914620377", "14240250000"], + ["710767824792028", "17829600000"], + ["710672259601259", "30370700000"], + ["710861230898446", "29365153200"], + ["711309098171048", "39053700000"], + ["711126000315635", "23302500000"], + ["711235228730687", "22080492500"], + ["711006258749149", "37388375200"], + ["711150401482837", "44719200000"], + ["710982462925481", "21210990800"], + ["710594900602245", "39499055600"], + ["711074055172070", "16389700000"], + ["711449704368124", "45806000000"], + ["712355147177567", "123080000000"], + ["712481806801086", "132861600000"], + ["713123896840483", "92040000000"], + ["711850444523431", "77075000000"], + ["711495510368124", "30935000000"], + ["713221469052376", "106100900000"], + ["712619644184382", "126034000000"], + ["711930223971048", "80119000000"], + ["711382502282710", "33458400000"], + ["711780429194577", "67859000000"], + ["712988121987243", "131988500000"], + ["711581164599376", "44503200000"], + ["713329803146333", "110340000000"], + ["711680297826545", "35815000000"], + ["712235025954667", "119445800000"], + ["713443133026125", "164816300000"], + ["713611901106331", "199030000000"], + ["711417443920596", "30655350000"], + ["718612364309244", "147980000000"], + ["717855295202122", "145320000000"], + ["721223635100178", "275770000000"], + ["724867079710644", "341622600000"], + ["717402505658358", "139472000000"], + ["729030345417829", "198119000000"], + ["728842405859376", "185793800000"], + ["728650642810884", "189440000000"], + ["729841604714506", "188864000000"], + ["731593756159148", "243812500000"], + ["731845884453278", "252496000000"], + ["804265605566361", "38477499111"] + ] + ], + [ + "0x8E32736429d2F0a39179214C826DeeF5B8A37861", + [ + ["278493127641126", "2286050992"], + ["296972540989531", "10000000000"] + ] + ], + ["0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", [["94418147246757", "88586040"]]], + [ + "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3", + [ + ["709052524836762", "3641357127"], + ["718086779271095", "10106346172"], + ["801735193101157", "19356731682"], + ["824966510240842", "7849710807"] + ] + ], + ["0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab", [["705213144042951", "4987061378"]]], + [ + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", + [ + ["695195958241880", "624152515"], + ["695442580762530", "2917389996"], + ["695445498152526", "1608309723"] + ] + ], + ["0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", [["94009622936383", "64911823433"]]], + [ + "0x90a69b1a180f60c0059f149577919c778cE2b9e1", + [ + ["829209151461160", "449469381"], + ["829204999966258", "4151494524"], + ["829446392033349", "557834029"], + ["829692753946021", "1171046769"], + ["944745891526016", "11518551564"] + ] + ], + [ + "0x923CC3D985cE69a254458001097012cb33FAb601", + [ + ["310740918699729", "4073310240"], + ["383253252478861", "166137507314"], + ["545031168363462", "107641561256"], + ["805920059376678", "7566204130"] + ] + ], + [ + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", + [ + ["89618032979953", "4974815"], + ["404170048368756", "95838400000"] + ] + ], + [ + "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA", + [ + ["278660824595958", "8958398331"], + ["278495413692118", "302171"], + ["285760338043359", "22378"], + ["279425753131284", "80071865513"], + ["292973077822438", "306052702649"], + ["437645282391454", "1755109"], + ["441753260358454", "67650148740"], + ["462341867766454", "54089424183"], + ["456553811498690", "6675646701"], + ["705056534023324", "11229570252"], + ["705675547635524", "291802547"], + ["707909046213305", "8953406250"], + ["707939900864458", "8729437500"], + ["708157311703304", "18406312500"], + ["708716761068458", "11928928125"], + ["708367435933596", "17103187500"], + ["711279024189665", "30073981383"], + ["715683731202961", "2548987716"], + ["716106491712710", "2369890980"], + ["728465989451671", "100000000000"], + ["728565989451671", "84653359213"], + ["725997467745648", "115005092260"] + ] + ], + ["0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB", [["360447206306604", "56184744549"]]], + [ + "0x930836bA4242071FEa039732ff8bf18B8401403E", + [ + ["139743958414857", "2221663677"], + ["278604583755340", "11890755761"], + ["360261982782215", "93793524292"], + ["928108491041538", "5154270000"], + ["973209532669279", "22562763887"] + ] + ], + ["0x9383E26556018f0E14D8255C5020d58b3f480Dac", [["282849931909438", "88075053596"]]], + ["0x93d4E7442F62028ca0a44df7712c2d202dc214B9", [["214906704616754", "148859700937"]]], + ["0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f", [["179397038527663", "16859278098"]]], + ["0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa", [["99174348476492", "14316608969"]]], + [ + "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5", + [ + ["137323174947492", "3500000000"], + ["707970847379052", "152188010"], + ["707961113586604", "177292448"] + ] + ], + [ + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", + [ + ["630638025676278", "253050000000"], + ["624881262044871", "102495000000"], + ["627455133606040", "253050000000"], + ["629742581193378", "253050000000"], + ["633580413767816", "253050000000"], + ["656209287275397", "10000000000"], + ["733330425581158", "49886373590"], + ["803979834988083", "13729367592"], + ["803993564355675", "272041210686"] + ] + ], + [ + "0x9728444E6414E39d0F7F5389ca129B8abb4cB492", + [ + ["541706763363462", "3324405000000"], + ["692928162008877", "1813500000"], + ["704933743496239", "6721835647"] + ] + ], + ["0x97b60488997482C29748d6f4EdC8665AF4A131B5", [["79182663733943", "122517511"]]], + [ + "0x97E89f88407d375cCF90eC1B710B5A914eB784Af", + [ + ["262897259899044", "1844339969"], + ["281353761257841", "6971402273"], + ["325950651461073", "14054479986"], + ["372005710267490", "8504661454"] + ] + ], + [ + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", + [ + ["489503172747958", "9378468172"], + ["656343510832897", "15218730000"], + ["647244453263452", "50921590468"] + ] + ], + [ + "0x981793123af0E6126BEf8c8277Fdffec80eB13fd", + [ + ["710139039155338", "665549350"], + ["710156152304688", "483108332"], + ["710416667003201", "69640042"] + ] + ], + ["0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", [["730030468714506", "2552486513"]]], + [ + "0x988fB2064B42a13eb556DF79077e23AA4924aF20", + [ + ["157852242536462", "17313210068"], + ["279031628514856", "226251708976"] + ] + ], + ["0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60", [["379502238337329", "101752513973"]]], + [ + "0x989c235D8302fe906A84D076C24e51c1A7D44E3C", + [ + ["717247201282406", "2141035469"], + ["720949940194594", "142619335500"] + ] + ], + ["0x992C5a47F13AB085de76BD598ED3842c995bDf1c", [["832026119943265", "32781647269"]]], + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + [ + ["147408661742730", "1993398346"], + ["202229243601483", "3759398496"], + ["218675824291689", "1894286900"], + ["228853249412592", "7142857142"], + ["262192846388560", "2857625611"], + ["278599069070305", "4221510559"], + ["323129447538182", "1941820772"], + ["491169840288326", "7468303231"], + ["491098724602647", "6469033333"], + ["695614691375936", "1788298206"], + ["695397642950613", "10587087636"], + ["695610007215451", "857142857"], + ["698039662814614", "20630903371"], + ["702866240719683", "4335852529"], + ["709258865731976", "12056682276"], + ["733859755226895", "4306282320"], + ["740628963065844", "844417120"], + ["802386603411282", "95204051"], + ["819041521984281", "38494858016"], + ["825004989277175", "623293283"], + ["825212890895654", "62649720"], + ["825222508085322", "6707198969"], + ["829224235071542", "19256876112"], + ["909269815577087", "96391325008"], + ["909191011494399", "58373882896"], + ["921228158133490", "6689760000"] + ] + ], + ["0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b", [["828439202214961", "1824412499"]]], + ["0x99e8845841BDe89e148663A6420a98C47e15EbCe", [["729028199659376", "2145758453"]]], + ["0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221", [["251973284998916", "112457271309"]]], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + [ + ["89510924603539", "3696311380"], + ["88804623658517", "28428552478"], + ["92799491258727", "10000000000"], + ["92897059143567", "1262870028"], + ["93479526088450", "279480420"], + ["93502949921683", "10949720000"], + ["93475780742273", "3745346177"], + ["99794321820115", "24234066624"], + ["99900338074082", "765933376"], + ["99901104007458", "15534457850"], + ["99818555886739", "25000000000"], + ["102526475485235", "22053409145"], + ["102501954901902", "23121000000"], + ["121605681461652", "57688204600"], + ["102419600128737", "33333333333"], + ["121579887060227", "25794401425"], + ["133642895056985", "14491677571"], + ["137284240176635", "31663342271"], + ["131585439464073", "18433333333"], + ["137339158456585", "5833333333"], + ["147898240236773", "21622894540"], + ["139915732251488", "60000000000"], + ["168913405229341", "73418207324"], + ["150059373596047", "20159065566"], + ["168887121980757", "26283248584"], + ["228808276373773", "584126946"], + ["225516708971000", "209998797626"], + ["232984186678394", "38451787955"], + ["246786815696076", "65394189314"], + ["289564659594839", "5440000000"], + ["306145738363890", "43975873054"], + ["339939840320315", "61482926829"], + ["334112396456448", "24345144843"], + ["406194696480271", "11163284655"], + ["445827217638143", "109943584385"], + ["446158323304809", "85561000000"], + ["471022073498897", "1771119180000"], + ["531958943429670", "6357442000000"], + ["695386584509673", "11058440940"], + ["695792889638739", "51022870"], + ["741113587859684", "582008800"], + ["762294855018238", "4725277211064"], + ["747381568584998", "12828436637551"], + ["774054542997492", "7525989446089"], + ["803378718060369", "125000000"], + ["821423984136929", "58283867892"], + ["822991266581068", "193914722147"], + ["825311821748493", "110218533197"], + ["923695272794914", "3470058078836"], + ["934361112930082", "875826549"], + ["934361988756632", "8767124173450"], + ["934361988756631", "1"] + ] + ], + [ + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", + [ + ["89653878484825", "2368065675"], + ["89208646960630", "38853754100"], + ["710672212511201", "47090058"] + ] + ], + [ + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + [ + ["89518620914919", "104406740"], + ["94418146246757", "1000000"], + ["94429335603564", "1000000"], + ["94417944054697", "202192060"], + ["94429346603564", "13656860"], + ["94429336603564", "5000000"], + ["94429341603564", "5000000"], + ["122173282679601", "25689347322"], + ["137276142744140", "6856167984"], + ["491089182099072", "9542503575"], + ["623000903765131", "13450279740"], + ["704919725672132", "7279671848"], + ["708064389933233", "6157413604"], + ["708321346749708", "407318967"], + ["710377585512809", "9479483"], + ["711578414042753", "2539843750"], + ["712854585026426", "1673375675"], + ["714208188329582", "3142881940"], + ["729474974970791", "1702871488"], + ["737994621986537", "13348297600"], + ["761172759125683", "15882769"], + ["802189984737655", "11965994685"], + ["802403227984990", "170840041445"], + ["829437137736561", "500910625"] + ] + ], + [ + "0x9af623bE3d125536929F8978233622A7BFc3feF4", + [ + ["140425724068676", "1185063194630"], + ["249261881615002", "634988906630"] + ] + ], + [ + "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F", + [ + ["622863481299524", "18261807412"], + ["622881743106936", "22055244259"] + ] + ], + ["0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", [["723128115855767", "25000000000"]]], + [ + "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C", + [ + ["709010668288003", "106457720"], + ["709027482095723", "795636"] + ] + ], + ["0x9c211891aFFB1ce6CF8A3e537efbF2f948162204", [["639063951103669", "59036591791"]]], + [ + "0x9c695f16975b57f730727F30f399d110cFc71f10", + [ + ["61630487119649", "8058429169"], + ["61590791622395", "763789095"], + ["89506924603539", "474338291"], + ["695098214172154", "49424794604"], + ["693860993207517", "1303739940"], + ["695320908473347", "2612080692"], + ["760561911017218", "535830837294"], + ["782524171429880", "14658916075"], + ["801638457598809", "96735502348"], + ["887380987831155", "16970820644"], + ["946590324572539", "566999495822"] + ] + ], + [ + "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753", + [ + ["89997738582860", "1785516900"], + ["89999524099760", "266145543"], + ["137158194248374", "2"] + ] + ], + [ + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", + [ + ["592978060846134", "116351049553"], + ["594679038165266", "19753556385"], + ["605342348741118", "93587607857"] + ] + ], + [ + "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196", + [ + ["206586140823282", "24029099031"], + ["248705737408140", "27608467355"] + ] + ], + ["0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56", [["743635887035182", "12652582923"]]], + [ + "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", + [ + ["298040450428789", "1352237819"], + ["469547339542651", "1389648589"], + ["695587678882559", "2997137850"] + ] + ], + [ + "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE", + [ + ["203219196546565", "17901404645"], + ["490244915816242", "11930700081"] + ] + ], + ["0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", [["137282998912124", "1241264511"]]], + [ + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", + [ + ["149937196818046", "30000000000"], + ["157869555746530", "17128687218"], + ["290618447893311", "32886283743"], + ["462281867766454", "60000000000"], + ["670441074067342", "1735981704349"] + ] + ], + ["0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc", [["693287626526291", "132492430252"]]], + ["0xa03E8d9688844146867dEcb457A7308853699016", [["698739099764552", "210060204"]]], + ["0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", [["869688549762427", "3390839496"]]], + ["0xA0df63b73f3B8D4a8cE353833848D672e65Ad818", [["263964858351502", "22"]]], + [ + "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", + [ + ["343733188268035", "19163060173"], + ["456504925931714", "26717740160"] + ] + ], + [ + "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf", + [ + ["586374614958903", "196968848290"], + ["591732784862411", "61988431714"], + ["592665766471396", "206618185436"], + ["584597347753313", "57354074175"], + ["649365215309057", "136890000000"], + ["648084365999057", "136890000000"], + ["649669035059057", "136890000000"], + ["649061395559057", "136890000000"], + ["696380049045444", "10413750000"], + ["696107986627928", "10413750000"] + ] + ], + [ + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", + [ + ["146155109178928", "3000000000"], + ["167963234163137", "4912604718"], + ["157839880097242", "12362439220"], + ["149981793079726", "4811715614"], + ["705015385175915", "3765334850"] + ] + ], + [ + "0xA256Aa181aF9046995aF92506498E31E620C747a", + [ + ["272456937859503", "48907133253"], + ["311901125265412", "50223451852"] + ] + ], + [ + "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6", + [ + ["696561749381444", "96417000000"], + ["696318708480928", "55984064516"] + ] + ], + [ + "0xa31CFf6aA0af969b6d9137690CF1557908df861B", + [ + ["737858120394156", "22234228333"], + ["743140025593601", "122067507"], + ["747313755152217", "67813432781"], + ["743141224086061", "508189060"] + ] + ], + [ + "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e", + [ + ["74127145692389", "426119290214"], + ["134191110739869", "639498343615"], + ["207846103191459", "349624513178"], + ["208862411683046", "358107845085"], + ["206712947604343", "447994980945"], + ["223074652580400", "789016308613"], + ["253465436481692", "209422598089"], + ["248766787432710", "382459205759"], + ["266041311377691", "844577500760"], + ["281508941148647", "231048083326"], + ["323196658902367", "640903306175"], + ["368093557075637", "338382661514"], + ["585127875819252", "403876115080"], + ["705486477290404", "2333969425"], + ["821850284728166", "44211467824"], + ["829437638652865", "399538786"], + ["835638572607331", "69954674028"], + ["921521067359012", "34095737422"], + ["922782913474271", "3679385472"] + ] + ], + [ + "0xA46322948459845Bb5d895ED9C1fdd798692a1dA", + [ + ["218985381779657", "4473579144"], + ["281332716579528", "10453702941"] + ] + ], + ["0xa4f79238d3c5b146054C8221A85DC442Ad87b45D", [["711780404576445", "24618132"]]], + [ + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", + [ + ["241187757624377", "1317740918"], + ["241619965026016", "8737686936"] + ] + ], + ["0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", [["139710719558187", "1000000000"]]], + ["0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", [["238731986695824", "22497716826"]]], + ["0xa73329C4be0B6aD3b3640753c459526880E6C4a7", [["403136003365944", "5537799063"]]], + [ + "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2", + [ + ["288431410066080", "91254470715"], + ["302065553585736", "172400000000"] + ] + ], + [ + "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E", + [ + ["148507402919772", "18540386828"], + ["218918422285195", "46130596396"] + ] + ], + [ + "0xA92b09947ab93529687d937eDf92A2B44D2fD204", + [ + ["235586467178002", "2252016869"], + ["278219154129515", "100017300000"] + ] + ], + ["0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", [["708681698730544", "25673034"]]], + ["0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", [["403231089271090", "9515722669"]]], + [ + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", + [ + ["250261928573315", "32609949600"], + ["298384382115865", "41700155407"], + ["713327569952376", "2233193957"], + ["711927519523431", "2704447617"], + ["722990899426468", "96716493785"] + ] + ], + [ + "0xa9b13316697dEb755cd86585dE872ea09894EF0f", + [ + ["201284566150746", "4149923574"], + ["260100286611024", "18087016900"], + ["272837697956175", "10681995985"], + ["302528299402497", "842071924045"], + ["445692803648364", "115228517177"], + ["627762158474309", "18284615400"], + ["624983757044871", "18284000000"], + ["625280395544871", "18284615400"], + ["630619741060878", "18284615400"], + ["633833463767816", "18284615400"], + ["656246709678397", "12085354500"], + ["702059066510312", "65849399034"] + ] + ], + [ + "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c", + [ + ["92945174342273", "59900000000"], + ["93064499342273", "74875500000"], + ["93217221592273", "74875500000"], + ["624708831044871", "21876000000"], + ["630891075676278", "21876172500"], + ["627282502896040", "21876172500"], + ["625551730160271", "21876172500"], + ["630146385730878", "21876172500"], + ["633558537595316", "21876172500"] + ] + ], + [ + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", + [ + ["89999790245303", "7927293103"], + ["94415944052084", "2000002613"], + ["94304673484825", "2879757656"], + ["128200293224284", "4370751822"], + ["137130128894736", "2000000"], + ["288395052860245", "36357205835"], + ["285506736677232", "8843521858"], + ["408109401510596", "299504678878"], + ["451618826565681", "30009118039"], + ["451843231075363", "15011668209"], + ["557456706791285", "17563125222"], + ["557442225845432", "14480945853"], + ["643054965637173", "57230000000"], + ["643543740873303", "58387156830"], + ["635305237828821", "11373869605"], + ["707887449724785", "200935620"], + ["709228536986910", "7145929778"], + ["829479173734426", "97750210"], + ["861099408960178", "199999867679"], + ["920968369501809", "49999681340"], + ["922708246833826", "20955496102"], + ["927630225914484", "3915489816"], + ["929133119306605", "11148893919"], + ["929127565896265", "3760487192"], + ["929846368238126", "137089560126"], + ["943509118667439", "25123931061"] + ] + ], + [ + "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15", + [ + ["828441026627460", "5239569017"], + ["851852363441414", "1404119830"] + ] + ], + ["0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", [["147341296377729", "9412000000"]]], + [ + "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", + [ + ["92791463985345", "21750"], + ["851853767561244", "201654015884"], + ["866412741469874", "122955165365"] + ] + ], + [ + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", + [ + ["139712642473749", "1178558112"], + ["148981530924047", "800000000"], + ["148977930924047", "3600000000"], + ["148179920088261", "12909150685"] + ] + ], + [ + "0xABC508DdA7517F195e416d77C822A4861961947a", + [ + ["672694542217095", "108706000000"], + ["672594178217095", "5766000000"], + ["921041054593050", "61408881869"] + ] + ], + ["0xAbe1ee131c420b5687893518043C5df21E7Da28f", [["280303043396627", "257767294743"]]], + [ + "0xaBe78350f850924bAfF4B7139c17932d4c0560C5", + [ + ["231484786889457", "103277281284"], + ["247720715547598", "119796085879"] + ] + ], + [ + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", + [ + ["131666737241493", "394859823062"], + ["242148223648739", "26533824991"], + ["252954029308913", "32755674081"], + ["265543004614752", "466944255800"], + ["979644389443222", "103418450000"] + ] + ], + [ + "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", + [ + ["228792968885689", "10271881722"], + ["234464873892798", "50944632063"], + ["235282662007060", "51388130513"], + ["401945159569837", "13849594030"] + ] + ], + [ + "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0", + [ + ["457409482850195", "1310000000"], + ["608867358000586", "2624259160"] + ] + ], + [ + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", + [ + ["211331639575030", "98095645584"], + ["557962511788124", "787707309561"] + ] + ], + [ + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", + [ + ["718358762159417", "2979694125"], + ["719195393745202", "2015000000"], + ["718311098243492", "25000000000"], + ["733848878744335", "10876482560"], + ["731302174747013", "40000000000"], + ["728440989451671", "25000000000"], + ["725748414871545", "15403726711"] + ] + ], + ["0xafaAa25675447563a093BFae2d3Db5662ADf9593", [["698244652210039", "637343258"]]], + ["0xb13c60ee3eCEC5f689469260322093870aA1e842", [["326054841301059", "11752493257"]]], + ["0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106", [["709912882840970", "20878800"]]], + [ + "0xb338092f7eE37A5267642BaE60Ff514EB7088593", + [ + ["213531505921710", "93039721219"], + ["213786735642929", "185210230255"], + ["229073377073773", "364035918660"], + ["229455251661155", "142183392268"], + ["728840082810884", "2323048492"], + ["840663722030413", "16116959741"], + ["920778431941811", "12551804265"] + ] + ], + [ + "0xB345720Ab089A6748CCec3b59caF642583e308Bf", + [ + ["695625680694114", "2768287495"], + ["695933552068087", "15032871752"], + ["695875040256601", "2338659386"], + ["709457711087835", "12731370312"], + ["709482020770224", "10493080827"], + ["710324533148846", "18389039062"], + ["710296450302572", "16767945280"], + ["715517406503861", "43461762466"], + ["715487504402961", "29902100900"], + ["718000615202122", "9313705270"], + ["721499405100178", "14114087310"], + ["732825382006077", "231205357536"], + ["733056587363613", "252155202330"], + ["733527169616338", "214433251957"], + ["734615940653736", "273039002863"], + ["734375467884350", "240472769386"], + ["733959185040049", "210961749202"], + ["734170146789251", "205321095099"], + ["734888979656599", "172558844132"], + ["736369497945580", "31281369769"] + ] + ], + ["0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F", [["191324987903919", "508123258818"]]], + ["0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", [["252900231373433", "4"]]], + ["0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", [["225729337993345", "35727783275"]]], + [ + "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277", + [ + ["279023004179684", "8624335172"], + ["790143477817634", "291619601680"] + ] + ], + [ + "0xb53031b8E67293dC17659338220599F4b1F15738", + [ + ["280795609685940", "55265901"], + ["285782944886025", "40771987379"] + ] + ], + [ + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", + [ + ["144865920860161", "306070239187"], + ["459450774898205", "2054144320000"] + ] + ], + [ + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", + [ + ["66084769661335", "7048876233"], + ["716940669389169", "1801805718"] + ] + ], + [ + "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393", + [ + ["692591545312322", "104395512250"], + ["693420118956543", "81489498170"], + ["692698553534529", "139558094702"] + ] + ], + [ + "0xb63050875231622e99cd8eF32360f9c7084e50a7", + [ + ["207846098025288", "5166171"], + ["216896549205986", "99245868053"], + ["211429735220614", "18112431039"], + ["211329772423726", "1867151304"] + ] + ], + [ + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", + [ + ["214864041169245", "3710134756"], + ["740613927110994", "3915612129"], + ["746154046595561", "25233193029"], + ["741243747849264", "27308328915"], + ["902793682819228", "44866112401"] + ] + ], + [ + "0xB65a725e921f3feB83230Bd409683ff601881f68", + [ + ["311768851134035", "3441975352"], + ["311772293109387", "29574505735"] + ] + ], + [ + "0xb66924A7A23e22A87ac555c950019385A3438951", + [ + ["215781356883368", "347100000000"], + ["216503679205986", "392870000000"], + ["221413967553917", "100671341995"], + ["235334050137573", "132445933047"], + ["264053861297094", "35561818090"] + ] + ], + [ + "0xB73a795F4b55dC779658E11037e373d66b3094c7", + [ + ["425068244486778", "341688796"], + ["451687811683720", "134653071054"], + ["462395957190637", "134236764892"], + ["717100914282406", "146287000000"] + ] + ], + ["0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D", [["709239251125570", "332151166"]]], + [ + "0xb78003FCB54444E289969154A27Ca3106B3f41f6", + [ + ["225318382193655", "11278479258"], + ["252910380835030", "43648473883"], + ["446839983027105", "2538113894"], + ["456540458333457", "13353165233"], + ["623587942044871", "121464000000"], + ["626104340053540", "121464000000"], + ["631429982912047", "121464000000"], + ["629548857709709", "121464000000"], + ["627780443089709", "121464000000"], + ["632920042532047", "121464000000"] + ] + ], + ["0xB81D739df194fA589e244C7FF5a15E5C04978D0D", [["825251211700977", "389659428"]]], + ["0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B", [["382861084620606", "214690052512"]]], + [ + "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", + [ + ["122381475052431", "616986784925"], + ["247709563496291", "2582826931"], + ["254358180682653", "76640448070"] + ] + ], + [ + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1", + [ + ["310812228062749", "10002984280"], + ["711528267235947", "146806806"], + ["716767611098656", "1192390513"], + ["717401624017875", "881640483"], + ["774049053451452", "5489546040"], + ["805863098612172", "28037331000"], + ["821832492311173", "17792416993"] + ] + ], + [ + "0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711", + [ + ["205898204078203", "687936745079"], + ["245347547726707", "465422973716"], + ["245812970700423", "10000000"] + ] + ], + [ + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6", + [ + ["201458354078344", "217646800712"], + ["281739989231973", "79386856736"], + ["300448068579740", "47624260933"], + ["295229653187803", "142725497767"] + ] + ], + ["0xbC3A1D31eb698Cd3c568f88C13b87081462054A8", [["708095648692114", "173482798"]]], + [ + "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB", + [ + ["829110269987549", "1294270000"], + ["829108707937549", "1562050000"], + ["840777772674190", "3082627625"] + ] + ], + ["0xBd03118971755fC60e769C05067061ebf97064ba", [["720678752310386", "31263554400"]]], + [ + "0xbd0D7F2115C73576464689883Ce7257A3b4D8eC4", + [ + ["328320292096710", "12940102264"], + ["422918905448662", "73184769082"] + ] + ], + [ + "0xbD50a98a99438325067302D987ccebA3C7a8a296", + [ + ["136900203559052", "12993316305"], + ["709329339051997", "6123877877"], + ["710729257296130", "637955898"], + ["714013651617064", "1819712518"], + ["712234747014344", "278940323"], + ["713440143146333", "2989879792"], + ["712618240828873", "1403355509"], + ["746632318660136", "232657030717"], + ["741451614378115", "78825736666"], + ["805936845705483", "11382290617"] + ] + ], + ["0xBD874A4e472AEc2777a137788A0c7cC1e043E8D7", [["655101870360636", "18482957844"]]], + ["0xBe289902A13Ae7bA22524cb366B3C3666c10F38F", [["980156302633580", "127964411211"]]], + ["0xBe41D609ad449e5F270863bBdCFcE2c55D80d039", [["320166210969483", "13822416435"]]], + ["0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A", [["273275464185929", "60397999132"]]], + ["0xbf8A064c575093bf91674C5045E144A347EEe02E", [["279926667638567", "17931477721"]]], + [ + "0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD", + [ + ["643036860621235", "2658482"], + ["656209153318480", "133956917"] + ] + ], + [ + "0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e", + [ + ["61638545548819", "10000000000"], + ["340032517656384", "14808722031"] + ] + ], + ["0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb", [["113368183061335", "1176175320733"]]], + ["0xc06320d9028F851c6cE46e43F04aFF0A426F446c", [["591794773294125", "397510122725"]]], + [ + "0xc0985b8b744C63e23e4923264eFfaC7535E44f21", + [ + ["262274378621214", "8448778010"], + ["724808689235963", "42703247654"] + ] + ], + [ + "0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B", + [ + ["170675910224424", "1568445146"], + ["705338180288143", "212488219"], + ["705711760021846", "752753038"] + ] + ], + [ + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04", + [ + ["705090818684110", "4034021934"], + ["705505883321902", "5902625669"] + ] + ], + [ + "0xc18BAB9f644187505F391E394768949793e9894f", + [ + ["247853327750979", "170528981764"], + ["303370371326542", "89817845930"], + ["315703398038150", "24750487353"], + ["464439664065321", "13387683058"] + ] + ], + [ + "0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57", + [ + ["89248612146855", "243876574072"], + ["102048545008487", "221193780622"], + ["723779373935363", "3046740000"], + ["853974527806831", "7027118670"], + ["928717147372846", "7781921622"] + ] + ], + [ + "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d", + [ + ["828755702475588", "15527700000"], + ["829763387332558", "2965710000"], + ["931679348366271", "7619023341"], + ["973194749444164", "14772870000"] + ] + ], + ["0xc1F80163cC753f460A190643d8FCbb7755a48409", [["640869029506791", "292734203894"]]], + [ + "0xc22846cf4ACc22f38746792f59F319b216E3F338", + [ + ["102738799520478", "6914243179"], + ["106259218985936", "306042654222"], + ["339313664142821", "197210596655"] + ] + ], + [ + "0xc240D9f8d38F2bE93900C5e5D1Acc10D2CC7AbAc", + [ + ["648452995559057", "608400000000"], + ["707566423717109", "44836092000"] + ] + ], + [ + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", + [ + ["122141577289765", "10005184031"], + ["113207767929149", "10000133467"], + ["135044795879030", "10000746824"], + ["147958440123698", "10000266356"], + ["204545147643713", "15000651136"], + ["318116976414242", "14279057316"], + ["376767714073110", "23441160473"], + ["355995222525207", "18717725462"], + ["422345375350319", "13000510719"], + ["408549831537034", "15015000000"], + ["416504558917167", "14634827400"], + ["414553430770600", "15315000000"], + ["439271548752073", "16170000000"], + ["454822657667388", "16290000000"], + ["446312779443385", "16180000000"], + ["451883850444866", "16275000000"], + ["446370514284268", "16195000000"], + ["446740626173079", "16993320000"], + ["457410792850195", "16402456400"], + ["464432663361409", "7000703912"], + ["464601152419390", "2000375209"], + ["469264476039815", "2955630274"], + ["465956424294911", "3334000000"], + ["502183413563788", "12000847530"], + ["526396019531216", "12150844062"], + ["526394168811626", "1850719590"], + ["584696795687639", "25001126129"], + ["608368673405200", "3000733574"], + ["608363673389050", "5000016150"], + ["620998458200750", "40000139883"], + ["621630357262657", "25000547514"], + ["608358673352623", "5000036427"], + ["625002041044871", "139177000000"], + ["625141218044871", "139177500000"], + ["627901907089709", "139177500000"], + ["630480563560878", "139177500000"], + ["629409680209709", "139177500000"], + ["638007078618750", "63000942831"], + ["634757719179039", "21288581043"], + ["635864111161027", "58995201524"], + ["633851748383216", "139177500000"], + ["643602128030133", "35000228661"], + ["634732718757528", "25000421511"], + ["643226775637173", "35000191134"], + ["652874754163470", "36540941845"], + ["656270990330397", "12305240500"], + ["685693467795443", "40000713511"], + ["695887723732448", "5734247168"], + ["696072126729239", "3746989188"], + ["696068918241696", "3208487543"], + ["696064191856450", "89307112"], + ["695911315280125", "6133038908"], + ["696973284060907", "6680448394"], + ["697125870710905", "10754911306"], + ["697908756048625", "3074650514"], + ["697194966301885", "1975350168"], + ["697939412993466", "5738976938"], + ["697935084392083", "4328601383"], + ["697188652226938", "6314074947"], + ["697928635221077", "4055303570"], + ["697923689914115", "2241458357"], + ["697911830699139", "8864634973"], + ["698282987059495", "1080208844"], + ["697008965716356", "7513550787"], + ["697457726247208", "4277285793"], + ["698275425805867", "2365512357"], + ["697446196274780", "11529972428"], + ["698293885939566", "3573014871"], + ["699396785359005", "1779105771"], + ["699425316323075", "4262791526"], + ["702628299720765", "7345549819"], + ["700199982329841", "703007479"], + ["700210422078056", "3321184623"], + ["699343934151275", "314474508"], + ["699643899154203", "2757699459"], + ["700076254595618", "2066543146"], + ["698297458954437", "931625563"], + ["700213743262679", "90773857834"], + ["699341396601962", "2537549313"], + ["699344248625783", "52536733222"], + ["705280601276516", "4729098391"], + ["705233383770195", "7694578743"], + ["705270191047062", "2606155169"], + ["705279383594099", "1217682417"], + ["705317949117445", "5181153567"], + ["705323130271012", "4614678824"], + ["705566749386995", "2236741375"], + ["705875574768193", "1286803916"], + ["707759300681024", "5095772443"], + ["707879394552312", "1383172473"], + ["705876861572109", "675932780000"], + ["707917999619555", "1741026097"], + ["708264332859554", "15793160717"], + ["708506787876096", "4583685945"], + ["709094440793918", "5174884798"], + ["709027482891359", "9631809130"], + ["709049870806057", "2654030705"], + ["709210648802134", "6263894867"], + ["709423805533599", "4250838692"], + ["709189636394767", "3914086081"], + ["709732268222515", "2709517491"], + ["709741475815639", "3512346216"], + ["713810931106331", "3788010733"], + ["715156616006503", "2048540364"], + ["712013424471048", "2979058737"], + ["743115434932695", "5275645779"], + ["802847674131427", "654689120"], + ["828253656097284", "730902154"], + ["828941762423797", "11567074759"], + ["853933848243357", "40679563474"], + ["862603295423910", "100095973919"], + ["906298875689346", "16180260000"], + ["921314197483026", "50134195376"], + ["933873712724430", "16684472211"], + ["947720059043009", "17207595616"], + ["949056502324536", "96787778278"], + ["973059938511716", "28719576579"], + ["973453082747626", "15781954650"], + ["976540080919814", "7131234758"], + ["977035265323679", "9658190454"] + ] + ], + ["0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5", [["662669216662487", "181407469174"]]], + ["0xC37e2C0D1d60512cFcBe657B0B050f0c82060d1b", [["603440410903505", "73324222276"]]], + [ + "0xC3853C3A8fC9c454f59c9aeD2Fc6cfa1a41eB20E", + [ + ["559802408626458", "7492000000000"], + ["612626257033573", "4511000000"], + ["612621746033573", "4511000000"], + ["612617235033573", "4511000000"], + ["812360090581159", "6681431403122"] + ] + ], + [ + "0xc493AA1EA56dfe12E3DC665c46E1425BC3ee426F", + [ + ["934349602396467", "11510533615"], + ["934274510665946", "75091730521"] + ] + ], + ["0xC4B07F805707e19d482056261F3502Ce08343648", [["282808447027022", "15486010094"]]], + [ + "0xC4FF293174198e9AeB8f655673100EeEDcbBFb1a", + [ + ["290651334177054", "4"], + ["293528031483784", "75630603060"], + ["293611040837832", "42621249012"], + ["293753661785504", "301340"] + ] + ], + ["0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", [["711149302815635", "1098667202"]]], + [ + "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", + [ + ["446799565031974", "11558542555"], + ["446811123574529", "2568295359"], + ["446796098150493", "1284050989"], + ["446775368646919", "2247289304"], + ["446777615936223", "2247214270"], + ["451608639759036", "10186806645"], + ["446703287298426", "21634719148"], + ["446813691869888", "1926157217"], + ["446724922017574", "14044540659"], + ["446771515976335", "3852670584"], + ["446797382201482", "2182830492"], + ["445808032165541", "19185472602"], + ["446759314893752", "10274242898"], + ["456492891954949", "12033976765"], + ["456531643671874", "8814661583"], + ["464420620139310", "12043222099"], + ["469456725985378", "7051865770"], + ["513223938670492", "27432801793"], + ["594342495219921", "15800019853"], + ["653761632946929", "24571328348"] + ] + ], + ["0xC555347d2b369B074be94fE6F7Ae9Ab43966B884", [["704775356837324", "3307608864"]]], + [ + "0xC5581F1aE61E34391824779D505Ca127a4566737", + [ + ["148061887117192", "16666637666"], + ["148037051950526", "24835166666"], + ["148106901074024", "466666666"], + ["152264318876628", "419873133"], + ["387424472771954", "17549000000"], + ["568590284775745", "166129892955"], + ["568335841496795", "254443278950"], + ["829087613925271", "1693399184"], + ["829089307324455", "12401663706"], + ["844556659260005", "699592000000"], + ["853981554925501", "839680000000"], + ["978222901978355", "11020518971"] + ] + ], + [ + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F", + [ + ["725763818598256", "3473689961"], + ["725767292288217", "16729932626"], + ["733876061509215", "24486717680"], + ["740851194065444", "25988043120"], + ["802355622107782", "30981303500"], + ["782267856468902", "29182743714"], + ["803032972983015", "37545775027"], + ["803078771347988", "92480062924"], + ["806046552832480", "98029361717"], + ["903759452958415", "2390187809846"] + ] + ], + [ + "0xc6302894cd030601D5E1F65c8F504C83D5361279", + [ + ["102525075901902", "1399583333"], + ["741220479376083", "4151396937"] + ] + ], + [ + "0xC65F06b01E114414Aac120d54a2E56d2B75b1F85", + [ + ["221365023659870", "48943894047"], + ["228860392269734", "27884104039"], + ["250600807510613", "197207803637"], + ["277250339397938", "24695452876"], + ["296769619235277", "28239348266"], + ["312153408646865", "864512459822"], + ["384391845648207", "15025896"], + ["490961672234272", "127509864800"], + ["592192283416850", "52835637822"], + ["621047974340633", "15686547585"], + ["636879771184339", "455386821670"], + ["691462359431310", "185598910890"], + ["690572868710277", "889490721033"], + ["691654062924240", "7406808617"], + ["694500649981361", "74135096485"], + ["693501608454713", "32787945873"], + ["704463555730413", "94264084571"], + ["704557819814984", "117747552306"] + ] + ], + [ + "0xC6e76A8CA58b58A72116d73256990F6B54EDC096", + [ + ["526408170375278", "6848535197"], + ["640236298144951", "3786643566"] + ] + ], + [ + "0xc6Ee516b0426c7fCa0399EaA73438e087B967d57", + [ + ["106125616554651", "133602431285"], + ["201085473425602", "183863683304"] + ] + ], + [ + "0xC76d7eb6B13a8aDC5E93da2bD1ae4309806757c6", + [ + ["137315903518906", "3938428586"], + ["170709325803327", "4296524923"], + ["298378540271272", "5841844593"], + ["404801128668117", "6518016107"], + ["451952602171871", "8473153625"], + ["663281001462482", "71703585901"], + ["729476677842279", "13343392977"], + ["733824755572615", "24123171720"], + ["733808479118935", "7120385640"] + ] + ], + [ + "0xC7B42F99c63126B22858f4eEd636f805CFe82c91", + [ + ["710926897034111", "5075788"], + ["710594453064805", "447537440"], + ["710926902109899", "34690939834"], + ["710634399657845", "1422013513"] + ] + ], + ["0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9", [["705108207674441", "6108413155"]]], + ["0xC7c5a25141dfBB4eb586c58fE0f12efd5f999A2B", [["327783999805850", "96246009371"]]], + ["0xC7ED443D168A21f85e0336aa1334208e8Ee55C68", [["647295374853920", "162196409199"]]], + [ + "0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1", + [ + ["370731810042041", "172624697925"], + ["360503391051153", "27939181534"], + ["602205068224370", "154721753900"], + ["695616479674142", "7640019972"], + ["700200685337320", "9736740736"], + ["702596610560710", "19191681808"], + ["705001660805052", "10154937500"], + ["704892188844950", "11317504822"] + ] + ], + ["0xc83746C2da00F42bA46a8800812Cd0FdD483d24A", [["326745544685621", "14621832431"]]], + [ + "0xC89A6f24b352d35e783ae7C330462A3f44242E89", + [ + ["145620692516754", "56092082506"], + ["167972967779842", "1662797550"], + ["235869811191401", "17601537341"], + ["260462773844629", "222000000000"], + ["293794920431252", "38741655592"], + ["291557509922353", "97094321858"], + ["329442682461611", "645749915430"], + ["365396349829984", "2571019861709"], + ["370948106831688", "961279650599"], + ["362036348933971", "3360000896013"], + ["400178087176035", "137617079719"], + ["695896543103776", "4394126040"], + ["796630484780861", "52546699219"], + ["800247060874552", "48434302620"], + ["802386698615333", "15537852857"], + ["821292380697601", "8410169379"] + ] + ], + ["0xC95186f04B68cfec0D9F585D08C3b5697C858fe0", [["107032396306938", "4486622483613"]]], + [ + "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b", + [ + ["99852518660830", "1437789097"], + ["133665483117841", "19323965325"], + ["949006843151357", "49659144709"] + ] + ], + [ + "0xCa11d10CEb098f597a0CAb28117fC3465991a63c", + [ + ["334500032246897", "51351551872"], + ["339510874739476", "34339819618"], + ["335528604717351", "39742257015"], + ["356228879370364", "37362352211"], + ["385850075051403", "37345928668"], + ["402968433138340", "128793953990"], + ["461529316258478", "132878417357"], + ["464092855272732", "235308225358"], + ["463602802887409", "135260808947"], + ["513114664204689", "67231603439"], + ["519621679310053", "45295250000"] + ] + ], + [ + "0xcA210D9D38247495886a99034DdFF2d3312DA4e3", + [ + ["88939343887885", "249268258919"], + ["93157202342273", "14856250000"], + ["135054796625854", "254078110756"], + ["145726784599260", "133850744098"], + ["158145395697934", "254834033922"], + ["181067383560158", "231684492403"], + ["219863223520656", "202188482247"], + ["233070214366789", "512087118743"], + ["243026436226482", "213880008209"], + ["246133794098219", "175801604856"], + ["233582301485532", "167963854918"], + ["241800687702228", "175568451420"], + ["258241758043770", "191819355151"], + ["258433577398921", "347968913517"], + ["272848379952160", "337001078730"], + ["311869690009016", "6745238037"], + ["456458867198156", "34024756793"], + ["456415685031978", "32560000000"], + ["622979420373337", "15695221534"], + ["624021679044871", "32896000000"], + ["625759167897771", "32896500000"], + ["630447667060878", "32896500000"], + ["631084810756278", "32896500000"], + ["633353782187816", "32896500000"], + ["626970201238540", "32896500000"], + ["640243859396869", "2638341158"], + ["648221255999057", "84111300000"], + ["664905223779709", "3284158899"], + ["695173314015767", "5637466721"], + ["695602559036865", "7448178586"], + ["696259499200928", "59209280000"], + ["695518171327888", "5903735025"], + ["695467106462249", "28471528595"], + ["695426166696789", "8643272696"], + ["695529046988846", "8588394184"], + ["696080521867739", "6468282284"], + ["695447106462249", "20000000000"], + ["698255015452892", "3549072302"], + ["697182071282595", "971681987"], + ["698258586850647", "6326081465"], + ["697000732780868", "8232935488"], + ["698172153368599", "72498841440"], + ["699271094629306", "70301972656"], + ["699422093787082", "3222535993"], + ["700080929167959", "53884687500"], + ["702372437829497", "224172731213"], + ["704178510601338", "4230557254"], + ["704242041217758", "4579348454"], + ["704301722238546", "131685951867"], + ["704210645387913", "5554593027"], + ["705556052258123", "10697128872"], + ["705592675950611", "12970687979"], + ["705624046020210", "14591855468"], + ["705531861429845", "11034160064"], + ["707127680602109", "402840000000"], + ["705718829609617", "11609907184"], + ["708120196123304", "10764000000"], + ["709722752927279", "9515295236"], + ["720672401331113", "6350979273"], + ["720881401746678", "68538447916"], + ["743849710008778", "105474278261"], + ["743201020219702", "44526000000"], + ["821102020697601", "190360000000"] + ] + ], + [ + "0xcb1Fda8A2c50e57601aa129ba2981318E025F68E", + [ + ["328248386875502", "21497263680"], + ["328222776335176", "25610540326"] + ] + ], + ["0xCB85C8f60a34D2cB566CC0b0ce9e8Fd66C2d961F", [["326760166518052", "21410000000"]]], + ["0xcb89e2300E22Ec273F39e69E79E468723ad65158", [["825241803481990", "567537293"]]], + ["0xCba1A275e2D858EcffaF7a87F606f74B719a8A93", [["78911996612066", "268250911852"]]], + ["0xCE1Ef18B8c756E2A3bf24fF86DF3e2a4a442691e", [["668776657908591", "15320220000"]]], + [ + "0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0", + [ + ["231282042254873", "42278925645"], + ["708077870979706", "2139486421"], + ["976425187503346", "10261208678"], + ["976472218629212", "36776229843"] + ] + ], + [ + "0xCeD392A0B38EEdC1f127179D88e986452aCe6433", + [ + ["950025729152542", "66358992180"], + ["980284276067778", "127986754747"] + ] + ], + [ + "0xCF0dCc80F6e15604E258138cca455A040ecb4605", + [ + ["264510568420795", "749736733"], + ["694421475965819", "391574385"], + ["828631359445137", "572238513"], + ["829219468224175", "1708733210"], + ["973333622225279", "3541650000"], + ["980156263262177", "3344108"] + ] + ], + ["0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0", [["182105251296260", "78950315731"]]], + ["0xcfd9c9Ac52b4B6Fe30537803CaEb327daDD411bB", [["702615802242518", "5827431793"]]], + [ + "0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a", + [ + ["266009948870552", "10185616007"], + ["266020134486559", "21176891132"], + ["307530008746042", "4522765369"], + ["311578670193243", "40625041509"], + ["741445094311512", "1517396973"] + ] + ], + [ + "0xD00fB8efFeE21177df7871F285B379Bb03d8A8b5", + [ + ["787303159010592", "203162271017"], + ["825251601360405", "60220388088"] + ] + ], + [ + "0xd03c52B3256b5e102ce4BF6bB53d4Be9d9963838", + [ + ["106936454128405", "95942178533"], + ["106885110814498", "51343313907"], + ["128507679667004", "2777777777"], + ["199355194112136", "1055586732753"], + ["229597435053423", "370401758420"], + ["355572405876724", "13501951210"], + ["461504919218205", "5164865662"], + ["665822568547360", "42860013000"], + ["666572906012860", "46163250000"], + ["666153675312860", "46163250000"], + ["710174529503020", "879707608"], + ["801610293082217", "5814129257"], + ["828712132466378", "43570000000"], + ["828863938697501", "44540000000"], + ["828908478697501", "28283345400"], + ["830362645771060", "61845000000"], + ["830424490771060", "13020000000"], + ["830297545771060", "65100000000"], + ["830265015756485", "32530000000"], + ["840251035083841", "37495000000"], + ["840213540083841", "37495000000"], + ["840780855312982", "151000000000"], + ["840931855312982", "28419857376"], + ["902838548931629", "149541493389"], + ["930117308171481", "24205500000"], + ["963093044015781", "51770400000"], + ["976786112158391", "126520824627"], + ["976912632983018", "122632340661"] + ] + ], + [ + "0xD12570dEDa60976612Eeac099Fb843F2cc53c394", + [ + ["274262035066160", "23535339927"], + ["289006048832749", "22752528487"], + ["334654600033886", "24922015529"] + ] + ], + ["0xD130Ab894366e4376b1AfE3D52638a1087BE17F4", [["827241244621487", "180900000"]]], + [ + "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", + [ + ["705285330374907", "3789921580"], + ["705407747183103", "631861553"], + ["709406140263143", "5001904811"], + ["709406120075496", "20187647"] + ] + ], + ["0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0", [["148224785797347", "217652983"]]], + [ + "0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691", + [ + ["379489404845423", "10068277389"], + ["381321331069863", "4615615453"], + ["387719729833906", "9627158590"], + ["387097363491328", "2197410000"] + ] + ], + ["0xD1C5599677A46067267B273179d45959a606401D", [["328341866253694", "9669724298"]]], + ["0xD1F27c782978858A2937B147aa875391Bb8Fc278", [["202665556232120", "56750401947"]]], + ["0xD2594436a220e90495cb3066b24d37A8252Fac0c", [["196975395659177", "8639602506"]]], + ["0xD2aC889e89A2A9743Db24f6379ac045633E344D2", [["451822464754774", "20766320589"]]], + ["0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911", [["693155946760383", "37390765908"]]], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + [ + ["340001323247144", "1582439"], + ["388957611450048", "12634438220"], + ["737811867246072", "124875217"] + ] + ], + [ + "0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8", + [ + ["102555686894380", "183112626098"], + ["102548528894380", "7158000000"], + ["262691524971365", "117463196595"], + ["296027713621539", "255540375316"], + ["404268102048493", "41880000000"], + ["702870576572212", "879875000000"] + ] + ], + [ + "0xd30eB4f27aCac4d903a92A12a29f3fe758A6849c", + [ + ["93530777914483", "478845021900"], + ["424144199349794", "754104205535"], + ["663352705048383", "455513781363"], + ["708948305072321", "159745132"], + ["709205754871473", "4893930661"], + ["709788307855108", "216288453"] + ] + ], + [ + "0xd3FeeDc8E702A9F191737c0482b685b74Be48CFa", + [ + ["274448643868893", "16988852448"], + ["718117083194035", "19072704777"] + ] + ], + [ + "0xD441C97eF1458d847271f91714799007081494eF", + [ + ["277900231532283", "118731904635"], + ["275227278755606", "255020597678"], + ["299191178558501", "261156805041"], + ["368082390597076", "11166478561"], + ["408408906189474", "10970351806"] + ] + ], + ["0xD497Ed50BE7A80788898956f9a2677eDa71D027E", [["248733345875495", "16723961312"]]], + ["0xD4B5541B7d82C6284e54910aB6068dC218Da1D1C", [["491226133332142", "1565550000000"]]], + [ + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", + [ + ["326948938320474", "145778407801"], + ["326119566604304", "531282874686"], + ["386040742008352", "184511731281"] + ] + ], + [ + "0xD560fd84DAB03114C51448ab97AD82D21Cc3cEEc", + [ + ["89248611960630", "186225"], + ["760210005222549", "59333461779"], + ["743140147661108", "1076424953"], + ["742999939969117", "169346069"], + ["747313750769660", "4382557"], + ["829513920583470", "23414898833"], + ["829477282892375", "906241015"], + ["830437510771060", "1167009046"] + ] + ], + ["0xD567BEdb9EAe1DB39f0e704B79dF6dF7f846B9B0", [["313159159514394", "21381687739"]]], + ["0xd582359cC7c463aAd628936d7D1E31A20d6996f3", [["634989472785580", "297359673383"]]], + ["0xd5aE1639e5EF6Ecf241389894a289a7C0c398241", [["828971315411802", "5954962183"]]], + ["0xD5eFa6Ce5E86C813d5b016ABd10Bf311648D9FE8", [["458201621062168", "2644238087"]]], + ["0xD5Fe199029ee4626478D47caE4F6F68CEa142c4C", [["275482299353284", "183879103897"]]], + [ + "0xd61296bc2FEaE9Ed107aB37d8BAF12562f770Bd5", + [ + ["220964407867656", "39255134736"], + ["262455511024505", "85553535801"] + ] + ], + [ + "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427", + [ + ["89568057013754", "52142144"], + ["81480553978154", "9001457167"], + ["89989850005488", "217074926"], + ["122198972026923", "641943900"], + ["136886956696528", "2654796068"], + ["704246620566212", "475832176"], + ["704252167369562", "2606857506"], + ["709389584471923", "1519583480"], + ["711448099270596", "1605097528"], + ["716610697442076", "1975656580"], + ["716464555526674", "1461715402"], + ["802185093237974", "4891499681"], + ["804718414306922", "5447341871"], + ["829670041311674", "5406296301"], + ["829478189133390", "984601036"] + ] + ], + [ + "0xD6626eA482D804DDd83C6824284766f73A45D734", + [ + ["219270445353546", "2023493366"], + ["236255249235083", "18060301074"], + ["328279955533336", "40336563374"] + ] + ], + ["0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF", [["608381722514915", "274110362747"]]], + [ + "0xD6e91233068c81b0eB6aAc77620641F72d27a039", + [ + ["89611453141913", "4079835540"], + ["122079887289765", "3798086400"] + ] + ], + [ + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3", + [ + ["717541977658358", "4678944318"], + ["717099265353896", "1648928510"], + ["720316182669186", "16766090212"], + ["733480425581158", "21728068461"], + ["733308742565943", "21683015215"] + ] + ], + [ + "0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6", + [ + ["137071908851550", "19019143753"], + ["137319841947492", "3333000000"], + ["221825594101100", "2541993926"], + ["252607067837503", "6103560879"], + ["278128513436918", "10981000000"], + ["309147120451233", "20160241262"], + ["383565939191950", "4380730981"], + ["464408576241180", "12043898130"], + ["695265002426652", "3366848882"] + ] + ], + [ + "0xd722B7b165bb87c77207a4e0e690596234Cf1aB6", + [ + ["196984035261683", "56498924765"], + ["227938524477124", "315413817976"], + ["247129078873496", "69890902362"], + ["386225253739633", "48660000000"] + ] + ], + [ + "0xD79e92124A020410C238B23Fb93C95B2922d0B9E", + [ + ["160299068297321", "7664165865816"], + ["168986823436665", "1640014683559"], + ["172750719623363", "6646318904300"], + ["185619552361991", "83962792"], + ["182779552361991", "2840000000000"] + ] + ], + ["0xD87bc009C1Fd2d29A3f1dDF94e6529dEC1aFD7D3", [["305492349986784", "564315536574"]]], + ["0xD8c84eaC995150662CC052E6ac76Ec184fcF1122", [["977044923514850", "20230146794"]]], + [ + "0xD93cA8A20fE736C1a258134840b47526686D7307", + [ + ["117206354897649", "11371417669"], + ["139713821031861", "5137382996"], + ["708388223240861", "14647098985"], + ["708728894392214", "17747254687"], + ["709175183551959", "10494453652"], + ["714452777817475", "137731690000"] + ] + ], + [ + "0xD970Ba10ED5E88b678cd39FA37DaA765F6948733", + [ + ["203410780104759", "10000000000"], + ["380815886869713", "7392140365"] + ] + ], + [ + "0xD9E886861966Af24A09a4e34414E34aCfC497906", + [ + ["622903798351195", "78840756"], + ["622903877191951", "92219555"], + ["634541694896879", "47759145702"] + ] + ], + ["0xdAe3b4E9bA2F1bd8da873B7dd5a391781a8C1Ae4", [["218731907990205", "28885163958"]]], + ["0xdb215bA8D9bed3aACE91E23307Caa00A8c9211f1", [["328718971143710", "2005065961"]]], + [ + "0xdB4fBc231F1D2b3B4c3d9e1602C895806fb06278", + [ + ["149148148153096", "283779269760"], + ["216995795074039", "229812428383"], + ["248023856732743", "254568376533"], + ["277191210926165", "59128471773"], + ["313017921106687", "141238407707"], + ["387321141788740", "21300990257"], + ["520068017089909", "7742150000"], + ["697920695334112", "2994580003"] + ] + ], + ["0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c", [["910427813535356", "25199642635"]]], + [ + "0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661", + [ + ["81494522736316", "1765692730755"], + ["112324735805316", "883032123833"], + ["128811967747881", "1486737153234"], + ["139120611162062", "455109074924"], + ["414944772548783", "1479741690000"], + ["510097426250969", "3013875740000"], + ["605476509512623", "2882163840000"], + ["819080016842297", "1176211486527"] + ] + ], + [ + "0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D", + [ + ["74599404982603", "149825000000"], + ["203237097951210", "119851523542"], + ["219544288648330", "115400000000"], + ["249149246638469", "112634976533"], + ["270032140182000", "154140000000"] + ] + ], + [ + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584", + [ + ["61546432646158", "2917795207"], + ["93299924592273", "9531250000"], + ["93292924592273", "1355743473"], + ["730966592854235", "950984267"], + ["737880354622489", "47414939"], + ["746123766988586", "30279606975"], + ["803171251846138", "131493030"], + ["803171620143134", "232200706"], + ["803171852343840", "7243213645"], + ["803171383339168", "236803966"], + ["832104380901464", "8095756597"] + ] + ], + [ + "0xDC50cB21557c8A1F1161683FC2ec4Cf5829ef50C", + [ + ["301905688450755", "131801542813"], + ["456639477465638", "13452513599"], + ["456652929979237", "6725311906"] + ] + ], + ["0xDD0C3175A65f7a26078FFF161B8Be32068ff8723", [["980012575261775", "102716499306"]]], + [ + "0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8", + [ + ["205196258596006", "62240626757"], + ["203356949474752", "53830630007"] + ] + ], + ["0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78", [["235571347898002", "15119280000"]]], + ["0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f", [["829547866455087", "52886516686"]]], + [ + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", + [ + ["64921272802639", "9383000000"], + ["64931655802639", "1028006841446"], + ["99209665085461", "584656734654"], + ["99188665085461", "1000000000"], + ["99199665085461", "10000000000"], + ["152359464766828", "1157829451458"], + ["202419640845377", "170292704134"], + ["218631271970680", "19361828964"], + ["219272468846912", "240053266239"], + ["211732807557359", "19362238929"], + ["247623547197261", "86016299030"], + ["257603669095022", "243144086944"], + ["261781441445597", "192238041154"], + ["361565734447146", "66642995895"], + ["361379593720143", "90840629787"], + ["361470434349930", "95300097216"], + ["387301097707780", "20044080960"], + ["584721796813768", "406079005484"], + ["721197474963169", "26160137009"], + ["720868634724486", "12767022192"], + ["721092559530094", "62724910500"], + ["724851392483617", "15687227027"], + ["729593518041846", "39772727272"], + ["733382812956324", "97191046863"], + ["737315249724465", "169034757286"], + ["743012798350852", "102345416157"], + ["790435097419314", "405623000000"], + ["829339973518057", "84762579204"], + ["870858039851314", "12575747550"], + ["870788619856181", "69419995133"], + ["870653667253486", "65952600000"], + ["876445042303705", "3341648896777"], + ["879786691200482", "69419997856"], + ["910710112413098", "148989830915"], + ["902988090425018", "771362533397"], + ["921555169488753", "238537054269"], + ["929763019973649", "83348258680"], + ["929144268207731", "78882631651"], + ["930141513672610", "87269350362"], + ["943129112930082", "380005737357"], + ["944899299588614", "187695892447"], + ["946048161689217", "542162881249"], + ["949432131682143", "593597462776"], + ["973337260760015", "5991548366"], + ["973343252308381", "16933170970"], + ["976389175608743", "18754209891"], + ["976508994859055", "14800696613"] + ] + ], + [ + "0xdEBA22ef671936a5CB3964C8469fDC32cF745C0a", + [ + ["61658545548818", "1"], + ["61638545548818", "1"], + ["120541856224250", "34157939646"], + ["202380208106539", "39432738838"], + ["253292587795664", "172848686028"], + ["302450788949633", "49572290004"], + ["457671068166306", "334401064755"] + ] + ], + [ + "0xDFc6b16343F92c1347B6E9700aA6c5d9E34794A1", + [ + ["65959662644085", "2240249910"], + ["102468002753999", "1257372701"], + ["594868490530527", "3943680000"], + ["720860015864786", "8618859700"] + ] + ], + [ + "0xe0842049837F79732d688d0d080aCee30b93578B", + [ + ["344445589997019", "956039712019"], + ["343752351328208", "196317112545"] + ] + ], + [ + "0xE09c29F85079035709b0CF2839750bcF5DcdE163", + [ + ["89247500714730", "1111245900"], + ["94285320504677", "8075958282"], + ["94356860260424", "25000000000"], + ["148225450538261", "18335245199"], + ["864210604618078", "618050000000"], + ["899936270548064", "1744820000000"], + ["949153290507578", "257944663329"], + ["961873732295781", "1219311720000"] + ] + ], + [ + "0xe105EDc9d5E7B473251f91c3205bc62a6A30c446", + [ + ["737670614886875", "4631200000"], + ["737670607309781", "7577094"] + ] + ], + [ + "0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25", + [ + ["637335158006009", "66947321618"], + ["656952278005073", "108994425040"], + ["661206149419281", "329414899131"], + ["663272316569983", "8684892499"], + ["685302274853017", "69726385000"], + ["790840720419314", "53822522578"], + ["827579232603197", "200463133890"], + ["828954495524769", "16819887033"], + ["829136481171167", "47461345022"], + ["844477011416839", "7806418680"], + ["847521720333130", "52304367680"], + ["928382086617342", "166114705421"], + ["929983457798252", "133850337277"], + ["930228783025877", "76014058075"], + ["944267611786035", "176200000000"], + ["943637391804276", "167461718509"], + ["945258164673253", "67895438272"], + ["961337708227772", "143968018244"], + ["973360185479351", "92897267558"] + ] + ], + ["0xe1762431241FE126a800c308D60178AdFF2D966a", [["463738063696356", "3753371898"]]], + [ + "0xE1e98eAe1e00E692D77060237002a519E7e60b60", + [ + ["621150842686928", "145614575729"], + ["696691857800825", "125342100000"], + ["696841304150825", "125332100000"], + ["708651310288684", "62772574"], + ["854821234925501", "368865000000"], + ["866932564695408", "756420000000"], + ["869339137041688", "59799118052"] + ] + ], + [ + "0xE203096D7583E30888902b2608652c720D6C38da", + [ + ["360155861401497", "2821489902"], + ["383555642858478", "10296333472"], + ["695580562805062", "2156941193"] + ] + ], + [ + "0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41", + [ + ["685441274620458", "900232559"], + ["665942367310360", "165503800000"], + ["693843930503827", "2101528"], + ["692183827554964", "72951633394"] + ] + ], + [ + "0xE2bDaE527f99a68724B9D5C271438437FC2A4695", + [ + ["112307339619054", "2794515"], + ["698376762888817", "8808401866"], + ["710702630301259", "214014871"], + ["802852389202760", "838146017"] + ] + ], + [ + "0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C", + [ + ["113356338061335", "11845000000"], + ["203119196546456", "100000000109"], + ["258861106455116", "25970203853"], + ["653075636735477", "19309281895"], + ["702646804387428", "4833056816"], + ["708103280924912", "9424449262"], + ["921034239579199", "320918539"], + ["922232922946162", "466526164"], + ["929131326498583", "1792614924"] + ] + ], + [ + "0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3", + [ + ["89929989701768", "9105230900"], + ["296937641383543", "4499213873"], + ["729470812115440", "4162855351"], + ["729458509034872", "12303080568"], + ["740797799470884", "20388737000"], + ["801758430569485", "14539634819"] + ] + ], + [ + "0xE2EdD6Ba259A7a7543e76df6F3Eab80154Ff7982", + [ + ["225329660672913", "13525306090"], + ["247840511633477", "12816117502"], + ["260818302741512", "10847842210"], + ["284815597094697", "15136415374"] + ] + ], + ["0xE381CEb106717c176013AdFCE95F9957B5ea3dA9", [["787506321281609", "5224487265"]]], + ["0xE382de4893143c06007bA7929D9532bFF2140A3F", [["437467889952063", "87039194038"]]], + [ + "0xE3A2Ad75e3e9B893c8188030BA7f550FDfEeadac", + [ + ["612614464925164", "1500000000"], + ["705585044182153", "7631768458"] + ] + ], + [ + "0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6", + [ + ["61126608133951", "419824512207"], + ["467370365692260", "1799280000000"], + ["476858758595291", "1706000000000"], + ["953616207177781", "6772569963712"], + ["950409387113190", "3206820064591"] + ] + ], + [ + "0xE432225AB3A24D0328c1eb8934f12C2C664dBF1E", + [ + ["120427993072947", "4831151303"], + ["328720976209671", "16873650000"], + ["439359021881225", "128819998128"], + ["439352533238997", "4102512201"] + ] + ], + [ + "0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74", + [ + ["148225003450330", "447087931"], + ["147968440390054", "6167531020"], + ["148134674921786", "13825576144"], + ["139704561827724", "6157730462"], + ["168579359593603", "5868852168"], + ["149987959174186", "2191023676"], + ["170730350292246", "9469466929"], + ["157886684433748", "5000092372"], + ["149994207345112", "4454797628"], + ["254477220011347", "17271454497"], + ["379499473122812", "2765214517"], + ["376733518186319", "27270213991"], + ["709270922414252", "1598517724"], + ["710431818243243", "10533398444"], + ["731211078378957", "68703216153"] + ] + ], + [ + "0xE543357D4F0EB174CfC6BeD6Ef5E7Ab5762f1B2B", + [ + ["179457356901067", "701100000000"], + ["517220616160053", "2401063150000"] + ] + ], + [ + "0xE58E375Cc657e434e6981218A356fAC756b98097", + [ + ["634945228489192", "2262215151"], + ["708681724483889", "831025407"] + ] + ], + [ + "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14", + [ + ["211312573246375", "17199177351"], + ["309643037297135", "97187219028"], + ["643637128258794", "24771576854"], + ["685787574251748", "6644957515"], + ["695258134784897", "2422720577"], + ["695498537771333", "3238845835"], + ["699429579114601", "2080727252"], + ["704930176591927", "3566904312"], + ["705542895589941", "1335994704"], + ["705327744949836", "1969433094"], + ["711526445368124", "1821867823"], + ["730960837171835", "5755682400"], + ["733864061509215", "12000000000"], + ["909249385377295", "20430199792"], + ["906997068946789", "7926000000"], + ["950255493807696", "3442047582"], + ["978233922497326", "130394976890"] + ] + ], + [ + "0xe693eB739c0bE8c2bDD978C550B5D8b8022A8adA", + [ + ["207160942585288", "685155440000"], + ["239866896652370", "773610632731"], + ["394952475299977", "1546846439684"], + ["668791978128591", "1629021034598"], + ["825229251840661", "11607641329"], + ["829438403024944", "386609244"], + ["829456475181243", "20807711132"], + ["921964837662154", "249909693172"] + ] + ], + [ + "0xE6C459B2d9e8EafD205b74201Ce1988B28Bd2a1F", + [ + ["636463415640693", "2624718668"], + ["638778618685577", "29897283106"] + ] + ], + [ + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0", + [ + ["723782462207148", "348266002657"], + ["723232893062509", "130876975914"], + ["723363770038423", "57106724864"], + ["730236470849833", "226407807552"], + ["730033021201019", "17808983511"], + ["746179279788590", "50304977904"], + ["746229584766494", "181720064271"] + ] + ], + [ + "0xE7a9c882C15288E8FaDd3f84127bF89b04dF81b3", + [ + ["707772317525838", "5875643544"], + ["708070547346837", "4278269347"], + ["709056166193889", "8740549248"], + ["708915196741089", "9738151418"], + ["711415960682710", "1483237886"] + ] + ], + [ + "0xe846880530689a4f03dBd4B34F0CDbb405609de1", + [ + ["151546140781586", "45240683449"], + ["211447847651653", "23744037762"], + ["278191398417068", "27755712447"], + ["278319171429515", "73956211611"], + ["401397896408363", "7781881977"] + ] + ], + [ + "0xe86a6C1D778F22D50056a0fED8486127387741e2", + [ + ["625601011647771", "158156250000"], + ["630947814288717", "136996467561"], + ["624550675044871", "158156000000"], + ["630289510810878", "158156250000"], + ["627003097738540", "158156250000"], + ["633386678687816", "158156250000"] + ] + ], + ["0xe886eCE8dEA22C64592E16CE9c6060C354e0cB46", [["202261936601483", "101170792061"]]], + [ + "0xe8e8D10D48Bb4761E30A1A0C3f5705788E2Cf5Ca", + [ + ["278139494436918", "2570026"], + ["392873013056712", "12424321654"], + ["451927223440496", "25378731375"] + ] + ], + ["0xe9886487879Cf286a7a212C8CFe5A9a948ea1649", [["591543946444869", "6520295096"]]], + [ + "0xe9c6f6D44C546CdD54231e673Ba8b612972cdD07", + [ + ["247323106895278", "4883985870"], + ["247321163790225", "1943105053"] + ] + ], + [ + "0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C", + [ + ["422369792593674", "319875970811"], + ["705080717481611", "1710712273"] + ] + ], + [ + "0xe9F55fF0Ce2c086a02154E18d10696026aFC0E63", + [ + ["220864800670248", "99607197408"], + ["262808988167960", "88271731084"], + ["297184241475114", "189501596574"] + ] + ], + ["0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29", [["700841083224368", "2021177132"]]], + [ + "0xEaFc0e4AcF147e53398A4c9AE5F15950332Cce06", + [ + ["89621453141913", "32425342912"], + ["89569005481462", "16735634264"], + ["89492488720927", "1435882612"], + ["89557375261827", "8365853899"], + ["89762914919728", "50000000000"], + ["89868506364768", "61483337000"], + ["89812914919728", "20605999230"], + ["92753185885343", "2"], + ["89587741115726", "17401090578"], + ["94316284595936", "17408776700"], + ["93523899641683", "2864884005"], + ["93479828112110", "82051"], + ["93479828194161", "10000000000"], + ["94420088369042", "9247234522"], + ["93024220723497", "1"], + ["94304673484823", "2"], + ["99916638465308", "1"], + ["117233333040288", "1"], + ["121717830315112", "25000000000"], + ["133665283117840", "1"], + ["170709325803325", "2"], + ["211307962661460", "287750862"], + ["215059243720230", "3"], + ["225490910091497", "12645000000"], + ["228803240767411", "5035606362"], + ["230612533600768", "44175871750"], + ["222217249910350", "3772518553"], + ["250080784192909", "181144380406"], + ["248324937141955", "29564553728"], + ["288613470256820", "20262705038"], + ["300105735929341", "177198890000"], + ["295136017588075", "93635599728"], + ["310864055386319", "20000000000"], + ["311150001772809", "39829442210"], + ["310888767190944", "15288195375"], + ["470802960131879", "65965899719"], + ["609009158318525", "150000000000"], + ["695434809969485", "31"], + ["731385825180346", "29299"], + ["821101232524358", "53934403"], + ["821483107487181", "2893321"], + ["822987026055571", "1258382"] + ] + ], + [ + "0xEC4009A246789e37EA5278F5Cc8bF7Bc7f11A7D7", + [ + ["93012255546830", "305470240"], + ["334799194897789", "1160805666"], + ["708018038561787", "85072529"] + ] + ], + [ + "0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196", + [ + ["643691759702604", "1759031988"], + ["700304517120513", "5382798092"], + ["705167863668916", "1008381544"], + ["705168872050460", "1672635048"], + ["718082806907414", "3972363681"], + ["731279781595110", "5730104692"] + ] + ], + [ + "0xEd8440f3476073DF5077b5F97d34556fBd6c1AEA", + [ + ["463741817068254", "286363600173"], + ["463456140675342", "19514060494"] + ] + ], + [ + "0xedC24C8a0B98715C4c42f23fA1a966D68d71DA40", + [ + ["211302435943892", "5526717568"], + ["319044577338666", "19129436224"], + ["584404708321791", "2808475879"], + ["584401899740089", "2808581702"] + ] + ], + [ + "0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef", + [ + ["290651334177058", "16548755032"], + ["294349852765854", "14963282078"] + ] + ], + ["0xeE55F7F410487965aCDC4543DDcE241E299032A4", [["267042704125029", "87310833027"]]], + [ + "0xeE7840DAC7C3ec2cCDe49517fd3952e349997aB5", + [ + ["302438433985351", "12354964282"], + ["320180033385918", "52693409106"] + ] + ], + [ + "0xeEA71D769BE2028A276BBb5210eD87d2962E1bAD", + [ + ["383537829470381", "17813388097"], + ["472806870191278", "29448692596"] + ] + ], + ["0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee", [["829907742748562", "1740538415"]]], + ["0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C", [["335417125801352", "100049507316"]]], + [ + "0xF024e42Bc0d60a79c152425123949EC11d932275", + [ + ["709185678005611", "14"], + ["715901934912693", "17"], + ["712108322279785", "397390840"] + ] + ], + [ + "0xF05980BF83005362fdcBCB8F7A453fE40B669D96", + [ + ["152264738749761", "94726017067"], + ["199257636281033", "58350000000"], + ["201676000879056", "118322995425"] + ] + ], + [ + "0xf05b641229bB2aA63b205Ad8B423a390F7Ef05A7", + [ + ["131646520399654", "20160645556"], + ["147410655141076", "38582448637"], + ["145689762599260", "36912535650"], + ["150010712692192", "48660903855"], + ["149087440467044", "60707686052"], + ["151591381465035", "478277732458"], + ["261119533757206", "621486067097"], + ["269761251155626", "135599308194"], + ["269443642924650", "90918565015"], + ["270205934724435", "137288949299"], + ["269896850463820", "135289718180"], + ["271472590722853", "144178362548"], + ["271279840115859", "192750606994"], + ["260939774787671", "179758969535"], + ["269118192305090", "182950766299"], + ["278510774796017", "88294274288"], + ["275689125687825", "183278217511"], + ["272505844992756", "97679651753"], + ["275872403905336", "182746566692"], + ["283422171080743", "438574982507"], + ["284830733510071", "265026019680"], + ["284308889225125", "429215643262"], + ["282980597057005", "441574023738"], + ["296482233735458", "197419483419"], + ["307236748489533", "293260256509"], + ["306512769282215", "294379207318"], + ["309167280692495", "100626973782"], + ["301447470871549", "188376222726"], + ["476427198324120", "16136910000"], + ["636466040359361", "75566677988"], + ["828834434348843", "29504348658"], + ["840679860018230", "97912655960"], + ["866807124533174", "125440162234"], + ["929653024145870", "109995827779"], + ["930551858178263", "102347299471"], + ["930472863218867", "78994959396"], + ["943804853522785", "207459722347"], + ["944839928760398", "41691686706"], + ["960673641033362", "453667194410"], + ["960388777141493", "284863891869"], + ["961668846102910", "204886192871"], + ["973564600705385", "119670000000"], + ["978951913305840", "479480000000"] + ] + ], + [ + "0xF14Ee792bb979Aa08b5c65B1069A4209159d13fE", + [ + ["146151784587484", "3324591444"], + ["235555565795257", "15782102745"] + ] + ], + [ + "0xF18507A3D7907F2FDa0F80ea74b92707F67E0bd9", + [ + ["445596103536239", "32350000000"], + ["440689480358454", "1003780000000"] + ] + ], + [ + "0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657", + [ + ["385838586001830", "11489049573"], + ["385903097748650", "11452884036"], + ["505624972653336", "460124357137"], + ["612170062544417", "106391740000"], + ["621296457262657", "333900000000"], + ["656234734266897", "11975411500"], + ["666199838562860", "76938750000"], + ["665865428560360", "76938750000"], + ["666619069262860", "76938750000"] + ] + ], + ["0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22", [["516816371472285", "323395750214"]]], + ["0xF1cCFA46B1356589EC6361468f3520Aff95B21c3", [["697420059520285", "3701958291"]]], + [ + "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d", + [ + ["737664855304048", "2683720"], + ["741689220722814", "10364574980"] + ] + ], + [ + "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5", + [ + ["61628545548819", "316832137"], + ["738895717921316", "76304250"], + ["802110144517836", "11440000000"], + ["805917815776678", "2243600000"], + ["945408796120472", "34793830873"] + ] + ], + ["0xf28E9401310E13Cfd3ae0A9AF083af9101069453", [["168585228445771", "3"]]], + [ + "0xf295eCbE3cf6aB9fD521DFDF2B3ad296389d659F", + [ + ["139711776684751", "865788998"], + ["708384539121096", "3684119765"] + ] + ], + [ + "0xf2d67343cB0599317127591bcef979feaF32fF76", + [ + ["697933611972377", "1472419706"], + ["697933416557787", "195414590"] + ] + ], + [ + "0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e", + [ + ["218989855358801", "280589994745"], + ["584556940408913", "40407344400"] + ] + ], + [ + "0xF38762504B458dC12E404Ac42B5ab618A7c4c78A", + [ + ["386656249172680", "17268212989"], + ["400630877527787", "21128294603"], + ["401451940456732", "81063306091"] + ] + ], + [ + "0xf3999F964Ff170E2268Ba4c900e47d72313079c5", + [ + ["89615532977453", "2500002500"], + ["273268793056222", "5555555555"], + ["279410719738039", "15033393245"], + ["517139767222499", "80848937554"], + ["829694071521449", "33325500000"] + ] + ], + [ + "0xf3E52C9756a7Cc53F15895B11cc248B1694C3D81", + [ + ["218409662047787", "864328351"], + ["221514638895912", "194724915171"], + ["221888797808650", "199072929191"], + ["320446326795024", "286813809151"], + ["464603152794599", "135161490392"] + ] + ], + ["0xF4003979abEbEf7dEdCE0FcB0A8064617ba1cb6c", [["74020410789705", "16629145105"]]], + [ + "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F", + [ + ["250080014962140", "769230769"], + ["276364944621992", "5403998880"], + ["293753514977634", "146807870"], + ["310822231047029", "8691017770"], + ["787223231805791", "3409439001"] + ] + ], + [ + "0xf476f6c0c97d088C3A1Ec2a076218C22EDFE018D", + [ + ["383890351941264", "10839389709"], + ["383922594208774", "149609926949"] + ] + ], + [ + "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C", + [ + ["709010774745723", "16707350000"], + ["709064906743137", "17834375000"] + ] + ], + ["0xF4CEC45FcdeDFafAa6bcB66736bBd332Ce43bA23", [["502195414411318", "1365350"]]], + ["0xF50ABEF10CFcF99CdF69D52758799932933c3a80", [["213971945873184", "101563373991"]]], + [ + "0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3", + [ + ["709335462929874", "5255036695"], + ["725650404461457", "98010410066"] + ] + ], + [ + "0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2", + [ + ["66141501266485", "2270047397215"], + ["482663958595291", "4271250000000"] + ] + ], + ["0xf62dC438Cd36b0E51DE92808382d040883f5A2d3", [["211308250412322", "4322834053"]]], + [ + "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8", + [ + ["257846813181966", "394944861804"], + ["270343223673734", "364566745819"] + ] + ], + ["0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765", [["280606415159353", "88532212363"]]], + ["0xF7d48932f456e98d2FF824E38830E8F59De13f4A", [["93479805568870", "22543240"]]], + [ + "0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC", + [ + ["61619263709171", "191849316"], + ["92771013385345", "20450600000"], + ["92898322013595", "3312089446"], + ["92754013385345", "17000000000"], + ["92707474342273", "9142307692"], + ["94401235260424", "9375000000"], + ["94410610260424", "5333791660"], + ["99843555886739", "3867013493"], + ["122083685376165", "27444310590"], + ["122111129686755", "18658272727"], + ["117238888595844", "5985714285"], + ["121483199149673", "96687910554"], + ["128221268017590", "4942857142"], + ["128798021677597", "13946070284"], + ["128729271677597", "31250000000"], + ["147449237589713", "35577140258"], + ["148078553754858", "28347319166"], + ["147372451805267", "36209937463"], + ["148915974272183", "60485714285"], + ["149990150197862", "4057147250"], + ["167977258452029", "24766754630"], + ["209232169528154", "22243015724"], + ["196925395659177", "50000000000"], + ["228808860500719", "3226622831"], + ["251520088615611", "86804480075"], + ["251262086160636", "258002454975"], + ["252986784982994", "43802016663"], + ["265200621045782", "37360929463"], + ["262916671877900", "50046286217"], + ["280795664951841", "477438793550"], + ["291092919964740", "200000000000"], + ["339790493449995", "149346870320"], + ["355585907827934", "47251310108"], + ["340247326378415", "92984020589"], + ["355633159138042", "47223612281"], + ["376466837312302", "130000000000"], + ["800086797966843", "72666479808"], + ["824742416594055", "94393259501"], + ["824882897783818", "38503952220"] + ] + ], + [ + "0xf80cDe9FBB874500E8932de19B374Ab473E7d207", + [ + ["270798583944796", "97955793845"], + ["294038368353472", "311484412382"], + ["298003247413267", "37203015522"], + ["445691522219256", "1281429108"], + ["446769589136650", "1926839685"], + ["513217485808128", "6452862364"] + ] + ], + [ + "0xf973554fbA6059F4aF0e362fcf48AB8497eC1d8f", + [ + ["404067859818534", "4493174482"], + ["642222658063359", "51435891210"] + ] + ], + ["0xFa0A637616BC13a47210B17DB8DD143aA9389334", [["380456360701830", "60048376954"]]], + ["0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4", [["742850188138272", "114463620514"]]], + [ + "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d", + [ + ["79181530400610", "133333333"], + ["802846035631018", "508197502"], + ["802848330287155", "971418862"], + ["829773289436512", "5228000000"], + ["921414805868149", "38098790184"] + ] + ], + [ + "0xfaAe91b5d3C0378eE245E120952b21736F382c59", + [ + ["698115772691216", "222695155"], + ["708728689996583", "204395631"], + ["709099615678716", "7931925665"], + ["709156824752817", "6669928049"], + ["709536560884596", "8650962388"] + ] + ], + ["0xFaE9C276d513E6dC5060BB9bE5111c3124C4376c", [["376885779708970", "447000000000"]]], + [ + "0xFb00Fab6af5a0aCD8718557D34B52828Ae128D34", + [ + ["278747935962730", "275068216954"], + ["274254784429661", "7250636499"], + ["317850358107286", "266618306956"], + ["330088432377041", "1466041464745"] + ] + ], + [ + "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef", + [ + ["137331158456585", "8000000000"], + ["705544231584645", "6773000000"], + ["719100357414327", "15036330875"], + ["801777831126999", "39104687507"] + ] + ], + [ + "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", + [ + ["102401954174380", "1293137085"], + ["102414470871883", "5129256854"], + ["133664784066410", "499051430"], + ["148177920088261", "2000000000"], + ["214899672252004", "1862917241"], + ["437600907391454", "5663243298"] + ] + ], + ["0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55", [["707767802108906", "4515416932"]]], + [ + "0xfc22875F01ffeD27d6477983626E369844ff954C", + [ + ["707849276017590", "9148374808"], + ["709788524143561", "10237860605"], + ["709753706632464", "4744706233"], + ["722685699957057", "65999469411"] + ] + ], + [ + "0xFc748762F301229bCeA219B584Fdf8423D8060A1", + [ + ["147649097724683", "37794333837"], + ["230502866071185", "24754681144"], + ["221045668290806", "136363636363"], + ["383901191330973", "21402877801"], + ["402709718389025", "55060000000"], + ["399960218444224", "78790376700"], + ["737663715081254", "1140222794"], + ["737667139523194", "3467786587"] + ] + ], + [ + "0xfCA811318D6A0a118a7C79047D302E5B892bC723", + [ + ["408419876541280", "129954995754"], + ["426513047782908", "38482129867"], + ["594186621057387", "4109469597"], + ["559329306899163", "35915488411"], + ["596233940436378", "3374944845"], + ["698093282251665", "3681809550"], + ["697423761478576", "1922612548"], + ["697425684091124", "6349832412"], + ["697183042964582", "5609262356"], + ["697418490716526", "1568803759"], + ["697047696177892", "5575795077"], + ["698096964061215", "4196702182"], + ["698101160763397", "8949086569"], + ["697925931372472", "2703848605"], + ["700761259139802", "14697397837"], + ["700080421279582", "507888377"] + ] + ], + [ + "0xfcBa05D5556b6A450209A4c9E2fe9a259C84d50F", + [ + ["93333100742273", "142680000000"], + ["203420780104759", "862960981345"], + ["531411470867756", "9000000000"] + ] + ], + [ + "0xfD67bbb8b3980801e28b8D9c49fd9d1eA487087B", + [ + ["371946252710197", "616256912"], + ["371909386482287", "5151851478"] + ] + ], + [ + "0xFE09f953E10f3e6A9d22710cb6f743e4142321bd", + [ + ["137648364284877", "1472246877185"], + ["493976772720798", "4222900000000"], + ["656358729562897", "19616450000"] + ] + ], + [ + "0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7", + [ + ["135384416104099", "747968437372"], + ["267571414958056", "792399558214"], + ["407989465060901", "119936449695"], + ["463375342029222", "39496248802"], + ["464328163498090", "13423206781"], + ["825567856071858", "9576969494"] + ] + ], + ["0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f", [["921377157399744", "1908656103"]]], + [ + "0xfEc2248956179BF6965865440328D73bAC4eB6D2", + [ + ["73919840434906", "100570354799"], + ["88833052210995", "106291676890"], + ["134944397708617", "100398170413"], + ["353267959677302", "121744107111"], + ["582083204184359", "86620734894"], + ["696817199900825", "24104250000"], + ["696666031818682", "25825982143"], + ["843751794468356", "57770720876"], + ["844505675816708", "50190000000"], + ["850609510908268", "75944000000"], + ["869830739903103", "106624000000"] + ] + ], + [ + "0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943", + [ + ["446757619493079", "1695400673"], + ["446738966558233", "1659614846"] + ] + ], + [ + "0xFf4A6b6F1016695551355737d4F1236141ec018D", + [ + ["275666178457181", "22947230644"], + ["276055150472028", "22806010929"] + ] + ], + ["0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7", [["386897475567381", "46665442490"]]], + [ + "0xC997B8078A2c4AA2aC8e17589583173518F3bc94", + [ + ["921521054540522", "160"], + ["921521067107110", "160"], + ["921521057452817", "160"], + ["921521067107430", "160"], + ["921521055911956", "160"], + ["921521065767862", "160"], + ["921521056659950", "160"], + ["921521057453137", "160"], + ["921521053912448", "160"], + ["921521055206279", "160"], + ["921521057452977", "160"], + ["921521058293432", "160"], + ["921521067106950", "160"] + ] + ], + [ + "0xfF961eD9c48FBEbDEf48542432D21efA546ddb89", + [ + ["278495413994289", "15360801728"], + ["698298390580000", "33939057545"], + ["800030544923179", "56253043664"], + ["843809565189232", "15054264772"], + ["862922651882432", "594211870964"], + ["922824131039105", "871141743752"], + ["928724942845271", "317487796774"], + ["948946767655894", "60074607071"], + ["972673204896245", "137555494670"], + ["979747827188563", "264745198412"] + ] + ], + ["0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E", [["145586439347522", "209844262"]]], + ["0x5a34897A6c1607811Ae763350839720c02107682", [["829849331491739", "56918125000"]]], + [ + "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", + [ + ["725798462383772", "31586150"], + ["731041912594216", "173562047"], + ["738895660951316", "56970000"], + ["738895645474676", "15476640"] + ] + ], + [ + "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b", + [ + ["446848533640999", "3179294885"], + ["446823738027105", "3478109734"], + ["456637461841745", "2015623893"], + ["666276777312860", "210641200000"], + ["693767795503827", "76135000000"], + ["725784022220843", "14440162929"], + ["737958552803938", "10000000000"], + ["736285587653365", "83910292215"] + ] + ], + [ + "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f", + [ + ["830263701820170", "1295600000"], + ["832093433457838", "10866330177"], + ["843732436968356", "19357500000"], + ["844485217740720", "20255000000"] + ] + ], + ["0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E", [["89189871782553", "233215974"]]], + [ + "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", + [ + ["740627952214807", "1010851037"], + ["741114340898555", "5054528890"], + ["973020995561025", "14908452858"] + ] + ], + ["0x2E34723A04B9bb5938373DCFdD61410F43189246", [["128510457444781", "1447784544"]]], + [ + "0xc9931D499EcAA1AE3E1F46fc385E03f7a47C2E54", + [ + ["929223150841785", "2826954882"], + ["929242018796667", "22008658478"], + ["929225977796667", "16041000000"] + ] + ], + ["0xBd120e919eb05343DbA68863f2f8468bd7010163", [["829006199994809", "3696126503"]]], + ["0x9eD25251826C88122E16428CbB70e65a33E85B19", [["851163404918538", "19551629204"]]], + [ + "0xc80102BA8bFB97F2cD1b2B0dA158Dfe6200B33B3", + [ + ["260684773844629", "9037889126"], + ["296986706249004", "935134539"], + ["325360140162588", "38918733214"], + ["411688335001233", "1570000000"], + ["422365791300603", "798000000"] + ] + ], + ["0xcBF3d4AB955d0bE844DbAed50d3A6e94Ada97E8b", [["89190104998527", "2365071"]]], + [ + "0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0", + [ + ["228812087123550", "4954971100"], + ["250515993903243", "10157189840"], + ["262376049001474", "13448181940"], + ["297495649811425", "7878595540"], + ["387265643983999", "35453723781"], + ["469548729191240", "2084424649"], + ["470677624988816", "4109706945"], + ["470681734695761", "5099746997"], + ["476857007472007", "1751123284"], + ["510093738357844", "1810182949"], + ["691647958342200", "6104582040"], + ["694421867540204", "657829862"], + ["707740682508050", "2181092161"], + ["707792108369382", "14444964843"], + ["722432205171487", "34934377228"], + ["720670274568288", "2126762825"], + ["733524513579895", "2656036443"], + ["735386014435662", "20750304614"], + ["735406764740276", "13068447328"] + ] + ], + [ + "0x38f733Fb3180276bE19135B3878580126F32c5Ab", + [ + ["94419985260424", "103108618"], + ["828251362986796", "2293110488"], + ["828771230228142", "562218595"] + ] + ], + [ + "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf", + [ + ["848000403545262", "450790656"], + ["848000854335918", "932517247"] + ] + ], + ["0x82a8409a264ea933405f5Fe0c4011c3327626D9B", [["931232211328334", "48730138326"]]], + [ + "0xf6F46f437691b6C42cd92c91b1b7c251D6793222", + [ + ["741776141210263", "28424235201"], + ["920756460282115", "21971659696"] + ] + ], + [ + "0xB615e3E80f20beA214076c463D61B336f6676566", + [ + ["218760793154163", "6658333333"], + ["513181895808128", "7692307692"], + ["707530520602109", "35903115000"] + ] + ], + ["0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458", [["446838825122091", "1157905014"]]], + ["0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91", [["647238507263452", "5946000000"]]], + [ + "0x55179ffEFc2d49daB14BA15D25fb023408450409", + [ + ["90007738582860", "26089431820"], + ["285661889336665", "6674611456"], + ["285652969925862", "8919410803"], + ["285585338065737", "10654918204"], + ["293521542986844", "6488496940"], + ["293738371159084", "12502396040"], + ["311216880418289", "5374122600"], + ["310884055386319", "4711804625"], + ["572129929809800", "58714000000"], + ["825221386036599", "1122048723"], + ["827301562675683", "8473331791"] + ] + ], + [ + "0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4", + [ + ["801616107211474", "3001695871"], + ["801619108907345", "19348691464"] + ] + ], + [ + "0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c", + [ + ["636847008762039", "32762422300"], + ["666696008012860", "210641200000"], + ["897240723495689", "153625996701"], + ["920406236907736", "150200542274"], + ["906149640768261", "149234921085"] + ] + ], + [ + "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc", + [ + ["623914133044871", "31631000000"], + ["625867979397771", "31631250000"], + ["627250871646040", "31631250000"], + ["633246235937816", "31631250000"], + ["630168261903378", "31631250000"], + ["631193622256278", "31631250000"] + ] + ], + ["0x224e69025A2f705C8f31EFB6694398f8Fd09ac5C", [["828707206927635", "595189970"]]], + [ + "0xE42Ab6d6dC5cc1569802c26a25aF993eeF76cAA2", + [ + ["897495730767354", "30751377215"], + ["887397958651799", "66189217241"] + ] + ], + [ + "0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab", + [ + ["66081788234166", "2895624803"], + ["828678664933246", "28541134998"], + ["928030515655350", "77975000000"] + ] + ], + ["0x6D4ed8a1599DEe2655D51B245f786293E03d58f7", [["829909483286977", "4739952359"]]], + [ + "0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c", + [ + ["92718049689405", "1087363286"], + ["92753185885345", "827500000"], + ["89518725321659", "7006704371"], + ["93292097092273", "827500000"], + ["93309455842273", "468750000"], + ["93139374842273", "2827500000"] + ] + ], + [ + "0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25", + [ + ["65961902893995", "6062526839"], + ["79182786251454", "7536464852"], + ["88804198806155", "424852362"], + ["92749915150291", "3270735052"], + ["89667529136972", "14696511290"], + ["89618037954768", "3415187145"], + ["89664849254055", "2679882917"], + ["92791464007095", "8027251632"], + ["89738429009108", "24485910620"], + ["89607142206304", "4310935609"], + ["90007717538406", "21044454"], + ["99851702914852", "815745978"], + ["93172058592273", "17014323042"], + ["93061720723498", "2778618775"], + ["93513899641683", "5000000000"], + ["94344360260424", "10942222277"], + ["93526764525688", "4013388795"], + ["99853956449927", "11695454"], + ["93518899641683", "5000000000"], + ["93489828194161", "13121727522"], + ["102474523284594", "7918078619"], + ["112307342413569", "17393391747"], + ["117244874310129", "796338"], + ["102464387242791", "3615511208"], + ["102452933462070", "7666428889"], + ["131666681045210", "56196283"], + ["133684807083166", "58385936"], + ["128507585109607", "94557397"], + ["128760521677597", "30000000000"], + ["128226210874732", "5610342"], + ["148895359495855", "20614776328"], + ["145689641471760", "121127500"], + ["145726675134910", "109464350"], + ["150109707437893", "135261670"], + ["280560810691370", "45604467983"], + ["302500361239637", "27938162860"], + ["707863376349667", "4886194063"], + ["718096885617267", "5530910102"], + ["736285402938829", "184714536"], + ["743141962222302", "10000000000"], + ["824882897708819", "74999"], + ["897526482144569", "908406524078"], + ["906685007105154", "298566425632"], + ["920556437450010", "199999999855"], + ["891260306698319", "999999999934"], + ["947737266638625", "83959273729"], + ["947416151681051", "169349127003"], + ["961127308227772", "210400000000"], + ["976407929873421", "17257622755"], + ["976435448714174", "36769914561"] + ] + ], + ["0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df", [["787241243844279", "9764435234"]]], + ["0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6", [["396993916163233", "298975120881"]]], + [ + "0x0519425dD15902466e7F7FA332F7b664c5c03503", + [ + ["741804565445464", "131855360654"], + ["741593512489483", "95341770600"], + ["741530440114781", "47459625794"], + ["909387138062923", "31773910198"] + ] + ], + [ + "0x08Bf22fB93892583a815C598502b9B0a88124DAD", + [ + ["167974630577392", "1203298387"], + ["214824984432909", "4646730125"], + ["214861255972590", "2785196655"], + ["277396766693154", "135654646253"], + ["273266542932556", "2250123666"], + ["299905735929341", "200000000000"], + ["405009250178020", "483255914580"], + ["441693260358454", "49538069617"], + ["490827460900938", "134211333334"], + ["490699224234272", "111570000000"], + ["659059601095085", "135804736673"], + ["692180409380464", "905703602"], + ["695893457979616", "3085124160"], + ["800159464446651", "67815395117"], + ["803386254626770", "9914195956"], + ["803378843435783", "7411190987"], + ["805534501973837", "12116315207"] + ] + ], + ["0x82Ff15f5de70250a96FC07a0E831D3e391e47c48", [["829113684669523", "4440000000"]]], + [ + "0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746", + [ + ["256773707204461", "2774320296"], + ["828446266196477", "3894794928"], + ["828707802792097", "4324000000"], + ["828977278210961", "4516000000"], + ["829014107524072", "4525000000"] + ] + ], + [ + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", + [ + ["741699585297794", "12790345862"], + ["802201950732340", "58475807020"], + ["872290220599070", "10974488319"], + ["872308325991218", "18986801346"], + ["910475277864161", "11433794528"], + ["922625815607546", "7066180139"] + ] + ], + ["0x032865e6e27E90F465968ffc635900a4F7CEEB84", [["787511545768874", "4880443948"]]], + ["0xF493Fd087093522526b1fF0A14Ec79A1f77945cF", [["844505595006708", "80810000"]]], + ["0x09Ea3281Eeb7395DaD7851E7e37ad6aff9d68a4c", [["506085097010473", "17680578730"]]], + [ + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", + [ + ["92716616649965", "1433039440"], + ["741944065377362", "3527890346"], + ["872301195087389", "7130903829"] + ] + ], + [ + "0xF28df3a3924eEC94853b66dAaAce2c85e1EB24ca", + [ + ["271616769085401", "38071600600"], + ["641335218453068", "40691533200"], + ["688677161946845", "32873326128"], + ["689174241648861", "509503046565"], + ["689874807391924", "108330248405"], + ["686348394807411", "18107943895"], + ["691661469732857", "7322407095"], + ["687404158821438", "560773645183"], + ["686366502751306", "57077966234"], + ["691679103646508", "264187543819"], + ["689683744695426", "191062696498"], + ["686471231511801", "716489188821"], + ["694663168126846", "42152951000"], + ["693535758530681", "138626226222"], + ["693083416760383", "72530000000"], + ["695188857379843", "2422335517"], + ["693249722635591", "37903890700"], + ["695191279715360", "4678526520"], + ["695155947986631", "4442676388"], + ["695253546475556", "4588309341"], + ["691943291190327", "69144868490"], + ["704433408190413", "30147540000"], + ["708018123634316", "15352687500"], + ["724510428051588", "298261184375"] + ] + ], + [ + "0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a", + [ + ["623208367044871", "379575000000"], + ["632540467532047", "379575000000"], + ["628041084589709", "379575000000"], + ["629030105209709", "379575000000"], + ["631551446912047", "379575000000"], + ["626225804053540", "379575000000"] + ] + ], + [ + "0x6820572d10F8eC5B48694294F3FCFa1A640CFf40", + [ + ["291082705689464", "10214275276"], + ["340047326378415", "150000000000"], + ["340207113253615", "40213124800"] + ] + ], + [ + "0x49cE991352A44f7B50AF79b89a50db6289013633", + [ + ["214073509247175", "25333867824"], + ["213316892343591", "20341364703"], + ["240823369076303", "11191996912"], + ["250466009925474", "32429850581"] + ] + ], + ["0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371", [["66081776800891", "11407582"]]], + [ + "0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE", + [ + ["81429748380956", "7813058830"], + ["117217726315318", "1373181360"], + ["136979532734270", "1000000000"], + ["251882385453211", "20871314978"] + ] + ], + ["0x6B7F8019390Aa85b4A8679f963295D568098Cf51", [["66099065602767", "42435663718"]]], + ["0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4", [["68524742212956", "10000000000"]]], + ["0x0d619C8e3194b2aA5eddDdE5768c431bA76E27A4", [["79190322716306", "54469256646"]]], + [ + "0xB6CC924486681a1ca489639200dcEB4c41C283d3", + [ + ["64890353334796", "30919467843"], + ["147686892058520", "47171577753"], + ["168834068658194", "32372691975"], + ["152164040168590", "100278708038"], + ["168866441350169", "20680630588"], + ["250350635854037", "50441908776"], + ["393026470651510", "208972688693"] + ] + ], + [ + "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70", + [ + ["81429748380955", "1"], + ["202233002999979", "2326237721"], + ["202235329237700", "1466439378"], + ["218671968549714", "3855741975"], + ["694491673804561", "8976176800"] + ] + ], + ["0x632f3c0548f656c8470e2882582d02602CfF821C", [["68519420745986", "5321466970"]]], + ["0xE9D18dbFd105155eb367fcFef87eAaAFD15ea4B2", [["68534742212956", "10000000000"]]], + ["0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E", [["74106039934810", "21105757579"]]], + [ + "0x52f3F126342fca99AC76D7c8f364671C9bb3fC67", + [ + ["89656246550500", "8602703555"], + ["89507398941830", "3525661709"], + ["743848476657704", "1233351074"], + ["855190099925501", "105670000000"], + ["863597854618078", "612750000000"], + ["859424786465221", "224080000000"], + ["887758447796303", "1000261800000"], + ["909448360414556", "979453120800"], + ["921035333523306", "149236172"], + ["921034865451866", "308101440"], + ["921034560497738", "304954128"], + ["921035173553306", "159970000"], + ["921035482759478", "309959561"] + ] + ], + [ + "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921", + [ + ["92743843990177", "6046055693"], + ["634649380286759", "83338470769"] + ] + ], + ["0x12B9D75389409d119Dd9a96DF1D41092204e8f32", [["92695810999829", "11663342444"]]], + [ + "0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81", + [ + ["89208643960630", "3000000"], + ["122216130970075", "21956843937"], + ["684090892689899", "14023789313"] + ] + ], + ["0xC1E64944de6BEE91752431fF83507dCBd57E186b", [["89547003810515", "5402290085"]]], + ["0x399baf8F9AD4B3289d905f416bD3e245792C5fA6", [["93009983755725", "2271791105"]]], + [ + "0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545", + [ + ["94280290718369", "1044633475"], + ["704216199980940", "1586716252"] + ] + ], + ["0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0", [["99847422900232", "4030014620"]]], + [ + "0xD99f87535972Ba63B0fcE0bC2B3F7a2aF7193886", + [ + ["93318838342273", "14262400000"], + ["591137392921024", "125000000000"], + ["643048855332541", "3352496869"] + ] + ], + [ + "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6", + [ + ["94281335351848", "950000000"], + ["437580444503704", "20462887750"], + ["463414838278024", "12155421305"], + ["662850624131661", "16779875070"], + ["695537635383030", "5874873919"], + ["697945151970404", "9388515625"], + ["701398278226282", "5646988248"], + ["705660334202228", "3374500000"] + ] + ], + ["0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6", [["94255248987397", "7"]]], + ["0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b", [["94074534759816", "161247227588"]]], + [ + "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", + [ + ["106868611705393", "16499109105"], + ["148243785783460", "188352182040"], + ["311692403880222", "51857289010"], + ["328628658281539", "70064409829"], + ["328527449691073", "101208590466"], + ["634504902771992", "36792124887"], + ["931736156920528", "2137555078286"] + ] + ], + [ + "0x3a1Bc767d7442355E96BA646Ff83706f70518dAA", + [ + ["121663369666252", "37943648860"], + ["121742830315112", "337056974653"], + ["445937161222528", "221162082281"], + ["446243884304809", "68895138576"], + ["489859129059979", "346162069888"], + ["505145411205774", "63083410136"], + ["521589023122466", "200388674016"], + ["571933833018999", "196096790801"] + ] + ], + ["0xd80eC2F30FB3542F0577EeD01fBDCCF007257127", [["117373037489804", "16889348072"]]], + ["0xF3F03727e066B33323662ACa4BE939aFBE49d198", [["112305865851667", "1473767387"]]], + [ + "0x284f942F11a5046a5D11BCbEC9beCb46d1172512", + [ + ["112217222887362", "41188549146"], + ["319598229117213", "96515746089"] + ] + ], + ["0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303", [["121128776667659", "354422482014"]]], + [ + "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248", + [ + ["102482441363213", "16752841008"], + ["102501887271161", "66903217"], + ["325399058895802", "19569741057"] + ] + ], + [ + "0x6bDd8c55a23D432D34c276A87584b8A96C03717F", + [ + ["113316826225763", "19763851047"], + ["113336590076810", "19747984525"] + ] + ], + ["0x6A7E0712838A0b257C20e042cf9b6C5E910F221F", [["111519018790551", "13275316430"]]], + ["0x9A5d202C5384a032473b2370D636DcA39adcC28f", [["102403247311465", "10701754385"]]], + [ + "0xd5eF94eC1a13a9356C67CF9902B8eD22Ebd6A0f6", + [ + ["136132384541471", "50657156720"], + ["135334419409244", "49996694855"] + ] + ], + [ + "0x084a35aE3B2F2513FF92fab6ad2954A1DF418093", + [ + ["134838782590422", "105615118195"], + ["134830609083484", "8173506938"], + ["202891108289560", "15951445054"] + ] + ], + ["0x085656Bd50C53E7e93D19270546956B00711FE2B", [["134062407569102", "67047192458"]]], + ["0xE48436022460c33e32FC98391CD6442d55CD1c69", [["137265377825154", "810243080"]]], + [ + "0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2", + [ + ["128790521677597", "7500000000"], + ["387786058520473", "365524741141"], + ["388736379371138", "221232078910"] + ] + ], + [ + "0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714", + [ + ["137248134678148", "962826980"], + ["640240084788517", "3774608352"], + ["695877378915987", "4160000000"] + ] + ], + ["0x19CB3CfB44B052077E2c4dF7095900ce0b634056", [["137255763505128", "9614320026"]]], + [ + "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7", + [ + ["136815080964510", "63685247214"], + ["204505988395558", "39159248155"], + ["630912951848778", "13702657500"], + ["625573606332771", "27405315000"], + ["627237168988540", "13702657500"], + ["630199893153378", "13702657500"], + ["633544834937816", "13702657500"] + ] + ], + ["0xFA2a3c48b85D6790B943F645Abf35A1E12770D09", [["134129454761560", "61655978309"]]], + [ + "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43", + [ + ["128468620580196", "38964529411"], + ["887473260643431", "285187152872"] + ] + ], + [ + "0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22", + [ + ["137228728484742", "19406193406"], + ["630926654506278", "21159782439"], + ["695170871906740", "2442109027"], + ["698060293717985", "19937578021"], + ["700924209542750", "86043643136"], + ["701813606595271", "201965000000"] + ] + ], + [ + "0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb", + [ + ["137266188068234", "1990688953"], + ["704198943665924", "6711451596"] + ] + ], + ["0x84649973923f8d3565E8520171618588508983aF", [["137249097505128", "6666000000"]]], + ["0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6", [["148618311892836", "92067166902"]]], + ["0x1B89a08D82079337740e1cef68c571069725306e", [["148148500497930", "29419590331"]]], + ["0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3", [["139575720236986", "97830465871"]]], + ["0xE3546C83C06A298148214C8a25B4081d72a704B4", [["145540390549720", "40301967034"]]], + [ + "0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB", + [ + ["144776481763770", "18782949347"], + ["332990401346447", "19812902768"] + ] + ], + [ + "0xdF02A9ba6C6A5118CF259f01eD7A023A4599a945", + [ + ["139975732251488", "398026347880"], + ["181407955635376", "545096922836"], + ["232388914759088", "243534672333"], + ["231851733041965", "220235851424"], + ["241282142603223", "337822422793"] + ] + ], + [ + "0x6384F5369d601992309c3102ac7670c62D33c239", + [ + ["147555339912491", "93757812192"], + ["181331243759377", "76711875999"], + ["201794323874481", "364919687105"] + ] + ], + ["0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569", [["137531094651758", "22516244343"]]], + ["0xCd3F4c42552F24d5d8b1f508F8b8d138b01af53F", [["148432137965500", "52035709332"]]], + [ + "0xF074d66B602DaE945d261673B10C5d6197Ae5175", + [ + ["145260774599348", "93530736569"], + ["145952084202661", "181953842566"], + ["145354305335917", "186085213803"] + ] + ], + [ + "0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849", + [ + ["145580692516754", "5746830768"], + ["705712512774884", "6316834733"], + ["705687548615966", "6740000000"] + ] + ], + ["0x4932Ad7cde36e2aD8724f86648dF772D0413c39E", [["144258485938657", "517995825113"]]], + ["0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96", [["145586649191784", "34043324970"]]], + [ + "0x0c492D61651965E3096740306F8345516fCd8990", + [ + ["147484814729971", "70525182520"], + ["180281626769160", "785756790998"], + ["200410780844889", "350250000000"] + ] + ], + [ + "0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5", + [ + ["141610787263306", "2335790276267"], + ["191837226999990", "4850348224207"] + ] + ], + [ + "0x5004Be84E3C40fAf175218a50779b333B7c84276", + [ + ["168106479315294", "28997073991"], + ["282729479437291", "78967589731"] + ] + ], + ["0xbb9dDEE672BF27905663F49bf950090050C4e9ad", [["168493012264452", "81983801879"]]], + ["0x30d0DEb932b5535f792d359604D7341D1B357a35", [["153844244754703", "260797078423"]]], + [ + "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5", + [ + ["149431927422856", "145192655079"], + ["149577130077935", "1000000"], + ["149577120077935", "10000000"], + ["213270572343591", "46320000000"], + ["262592826339996", "98698631369"], + ["402001335542096", "273300000000"], + ["699491292359432", "152606794771"], + ["701405120085419", "176025000000"] + ] + ], + [ + "0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0", + [ + ["170679729221505", "29596581820"], + ["725321098785789", "178812339846"] + ] + ], + ["0x41954b53cFB5e4292223720cB3577d3ed885D4f7", [["157994454912867", "150940785067"]]], + ["0xcA580c4e991061D151021B13b984De73B183b06e", [["153786447955420", "57796799283"]]], + [ + "0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e", + [ + ["168340296598257", "152715666195"], + ["308693409732309", "77337849888"] + ] + ], + ["0x26f781D7f59c67BBd16acED83dB4ba90d1e47689", [["170677478669570", "2250551935"]]], + ["0x7C28205352AD687348578f9cB2AB04DE1DcaA040", [["168585228445774", "248840212420"]]], + [ + "0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce", + [ + ["180158456901067", "123169868093"], + ["188657736324806", "39512949678"], + ["231324321180518", "8450043391"], + ["221757890116192", "19356262201"], + ["225343185979003", "18026209521"], + ["231457766946954", "5158102503"], + ["231332771223909", "8448132900"], + ["242180107603542", "21920789581"], + ["242174757473730", "5350129812"], + ["268449221949319", "667581458244"], + ["294364816047932", "141617495951"], + ["299594100999804", "47893657519"], + ["294586560057632", "447408202484"] + ] + ], + ["0x57068722592FeD292Aa9fdfA186A156D00A87a59", [["153517294218286", "113668344638"]]], + [ + "0x922d012c7E8fCe3C46ac761179Bdb6d16246782D", + [ + ["150084707437893", "25000000000"], + ["685372204853017", "69069767441"] + ] + ], + [ + "0xdbC529316fe45F5Ce50528BF2356211051fB0F71", + [ + ["149967196818046", "14596261680"], + ["269534561489665", "90779703328"] + ] + ], + [ + "0x085E98CD14e00f9FC3E9F670e1740F954124e824", + [ + ["154158293224517", "164150000000"], + ["271915086191895", "52683422286"], + ["273185381030890", "13304471734"] + ] + ], + ["0x262126FD37D04321D7f824c8984976542fCA2C36", [["153684583303762", "101864651658"]]], + [ + "0xe1887385C1ed2d53782F0231D8032E4Ae570B3CE", + [ + ["168135476389285", "204820208972"], + ["168068691873325", "37787441969"] + ] + ], + ["0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151", [["153630962562924", "53620740838"]]], + [ + "0x0e9dc8fFc3a5A04A2Abdd5C5cBc52187E6653E42", + [ + ["170739819759175", "2010899864188"], + ["205352438673508", "545765404695"], + ["208195727704637", "337282676156"], + ["230656709472518", "111542849445"], + ["230768252321963", "513789932910"], + ["237606953663534", "133802493354"], + ["237740756156888", "772811138936"], + ["236350247713281", "617705249553"], + ["505208494615910", "416478037426"], + ["531420470867756", "1000000000"], + ["531421470867756", "5649346694"], + ["545138809924718", "383215316641"] + ] + ], + ["0x219312542D51cae86E47a1A18585f0bac6E6867B", [["154105041833126", "20088923958"]]], + [ + "0xEd52006B09b111dAa000126598ACD95F991692D6", + [ + ["201288716074320", "169638004024"], + ["191024259399088", "300728504831"], + ["253710018355608", "626546484708"] + ] + ], + ["0x136e6F25117aF5e5ff5d353dC41A0e91F013D461", [["205073735725117", "122522870889"]]], + ["0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52", [["202907059734614", "8228218644"]]], + ["0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb", [["200761030844889", "73702619695"]]], + ["0xF28841b27FD011475184aC5BECadd12a14667e04", [["191833111162737", "4115837253"]]], + ["0xcEB03369b7537eB3eCa2b2951DdfD6D032c01c41", [["199315986281033", "17978341081"]]], + [ + "0x1904e56D521aC77B05270caefB55E18033b9b520", + [ + ["202615094361235", "50461870885"], + ["220065412002903", "149268238078"] + ] + ], + [ + "0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE", + [ + ["204483741086104", "653648140"], + ["328476823472330", "50626218743"], + ["656403459612897", "30610750000"] + ] + ], + [ + "0x6AB3E708231eBc450549B37f8DDF269E789ed322", + [ + ["200867811074584", "217662351018"], + ["239092831941854", "567750000000"], + ["234774888197334", "364480000000"], + ["260118373627924", "323387400000"], + ["254494491465844", "558500000000"], + ["446815618027105", "8120000000"], + ["446827216136839", "11608985252"], + ["464453051748379", "17337534783"], + ["463426993699329", "29146976013"], + ["586613207988784", "68490328982"], + ["634288124330782", "7613761316"], + ["649502105309057", "53235000000"], + ["649805925059057", "53235000000"], + ["649198285559057", "53235000000"], + ["696254055525928", "5443675000"], + ["696501399481444", "53837773087"], + ["698739309824756", "150901692840"], + ["716905989198435", "34680190734"], + ["718136155898812", "26448621220"], + ["720175216460971", "140966208215"], + ["737010650241966", "58060000000"], + ["738009093827168", "81212739087"], + ["743151962222302", "49057997400"], + ["805417930289879", "8009578710"] + ] + ], + ["0x0c940e42D91FE16E0f0Eccc964b26dde7808ab5d", [["204834863294849", "43270525811"]]], + [ + "0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd", + [ + ["204560148294849", "274715000000"], + ["227441220581468", "4355746398"], + ["221300565354492", "64458305378"], + ["344360197916189", "85392080830"], + ["489666388361106", "192740698873"] + ] + ], + ["0x4497aAbaa9C178dc1525827b1690a3b8f3647457", [["202722306634067", "168801655493"]]], + ["0xc9EA118C809C72ccb561Dd227036ce3C88D892C2", [["202915287953258", "123683710973"]]], + ["0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8", [["203083203411712", "30687677344"]]], + ["0xD1373DfB5Ff412291C06e5dFe6b25be239DBcf3E", [["181953052558212", "152198738048"]]], + [ + "0xbFd7ddd26653A7706146895d6e314aF42f7B18D5", + [ + ["204489002275103", "6037629659"], + ["261741019824303", "13299884075"], + ["269327679034543", "115963890107"], + ["273814984429661", "34585101999"], + ["312146875547105", "6533099760"] + ] + ], + [ + "0xF352e5320291298bE60D00a015b27D3960F879FA", + [ + ["204484394734244", "4607540859"], + ["931280942124652", "35607756446"], + ["943534242598500", "103149205776"] + ] + ], + ["0xae0aAF5E7135058919aB10756C6CdD574a92e557", [["204283741086104", "200000000000"]]], + [ + "0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F", + [ + ["212188823059772", "718187220626"], + ["255265354982596", "669600000000"], + ["459187067180977", "131956563555"], + ["558750219097685", "579087801478"], + ["586881787286346", "4019068358051"], + ["635572332702096", "291778458931"], + ["636541607037349", "213651821494"] + ] + ], + ["0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C", [["218677718578589", "4593795975"]]], + [ + "0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d", + [ + ["212907010280398", "204744106703"], + ["491199224234272", "1718500000"] + ] + ], + [ + "0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B", + [ + ["217947462047787", "462200000000"], + ["217940532047787", "6930000000"], + ["491202661734272", "1032300000"], + ["491200942734272", "1719000000"] + ] + ], + [ + "0x8325D26d08DaBf644582D2a8da311D94DBD02A97", + [ + ["214830162730441", "11008858783"], + ["293750873555124", "2641422510"] + ] + ], + [ + "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714", + [ + ["220709260788997", "4610000000"], + ["220637584990881", "2305000000"] + ] + ], + ["0x54CE05973cFadd3bbACf46497C08Fc6DAe156521", [["211486572900138", "3286403040"]]], + ["0x07f7cA325221752380d6CdFBcFF9B5E5E9EC058F", [["219683298748205", "83262125763"]]], + ["0x2bDB0cB25Db0012dF643041B3490d163A1809eE6", [["218546663766811", "84608203869"]]], + [ + "0x406874Ac226662369d23B4a2B76313f3Cb8da983", + [ + ["214361103094275", "462937279977"], + ["399147164949892", "357159363004"] + ] + ], + ["0xF7cCA800424e518728F88D7FC3B67Ed6dFa0693C", [["214824040374252", "944058657"]]], + [ + "0x533ac5848d57672399a281b65A834d88B0b2dF45", + [ + ["214901535169245", "5169447509"], + ["231673913235551", "34261572899"] + ] + ], + [ + "0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5", + [ + ["213264452873369", "6119470222"], + ["268381273591215", "17964245672"] + ] + ], + ["0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5", [["219661298748205", "22000000000"]]], + ["0x354F7a379e9478Ad1734f5c48e856F89E309a597", [["213213798353310", "12083942493"]]], + [ + "0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5", + [ + ["220639889990881", "69370798116"], + ["401536968546834", "57935578436"] + ] + ], + [ + "0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235", + [ + ["217546047951373", "394484096414"], + ["242397324583886", "347087625953"] + ] + ], + ["0xaaEB726768606079484aa6b3715efEEC7E901D13", [["225361212188524", "52342902973"]]], + ["0x328e124cE7F35d9aCe181B2e2B4071f51779B363", [["220813692513983", "51108156265"]]], + [ + "0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04", + [ + ["221709363811083", "48526305109"], + ["298041802666608", "96525595990"], + ["326873031171634", "75907148840"], + ["326781576518052", "38978848813"] + ] + ], + ["0x058107C8b15Dd30eFF1c1d01Cf15bd68e6BEf26F", [["226884439627627", "6995532243"]]], + ["0xc59821CBF1A4590cF659E2BA74de9Bbf7612E538", [["238513567295824", "218419400000"]]], + ["0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e", [["235887412728787", "44765525061"]]], + [ + "0x7310E238f2260ff111a941059B023B3eBCF2D54e", + [ + ["235227898442395", "54763564665"], + ["251906258747456", "37329428702"] + ] + ], + ["0x7125B7C60Ec85F9aD33742D9362f6161d403EC92", [["246922293237268", "206785636228"]]], + [ + "0x8709DD5FE0F07219D8d4cd60735B58E2C3009073", + [ + ["234615417572537", "159470624797"], + ["251943588176158", "29696822758"] + ] + ], + [ + "0xc4c89a41Ad3050Bb82deE573833f76f2c449353e", + [ + ["240640507285101", "177374755656"], + ["249896870521632", "41764894516"] + ] + ], + ["0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A", [["246309595703075", "227508332382"]]], + [ + "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", + [ + ["238754484412650", "338347529204"], + ["239660581941854", "206297640000"] + ] + ], + ["0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F", [["245155440103610", "134623539909"]]], + [ + "0xE8c22A092593061D49d3Fbc2B5Ab733E82a66352", + [ + ["240817882040757", "5487035546"], + ["239866879581854", "17070516"], + ["244563066566020", "339502974396"], + ["285823716873404", "17130345477"], + ["399108141891711", "39023058181"], + ["456632495406880", "3623888698"], + ["583979473591721", "54917559198"] + ] + ], + [ + "0x06E6932ed7D7De9bcF5bD7a11723Dc698D813F7e", + [ + ["241189075365295", "11074540309"], + ["274351454205287", "6979294808"], + ["325771315526926", "14384938107"] + ] + ], + [ + "0xE3faBA780BDe12D3DFEB226A120aA4271f1D72B2", + [ + ["243781055572115", "71454221208"], + ["241976256153648", "123280084894"], + ["269116803407563", "1388897527"], + ["279505824996797", "21880478375"], + ["355680382750323", "126483466450"], + ["400152023455338", "26063720697"], + ["445628453536239", "63068683017"] + ] + ], + [ + "0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C", + [ + ["247377186269264", "1607000000"], + ["695624119694114", "1561000000"] + ] + ], + ["0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0", [["236273309536157", "1800060629"]]], + ["0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37", [["248282655499019", "42281642936"]]], + [ + "0xC21a7Fe78A0Fb9DF4Da21F2Ce78c76BdAe63e611", + [ + ["247378793269264", "244753927997"], + ["250829898506136", "432187654500"] + ] + ], + ["0xE67ae530c6578bCD59230EDac111Dd18eE47b344", [["243852509793323", "20607463066"]]], + ["0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31", [["241011518848871", "176238775506"]]], + ["0x0A7ED639830269B08eE845776E9b7a9EFD178574", [["255934954982596", "11365698463"]]], + [ + "0xbf9Db3564c22fd22FF30A8dB7f689D654Bf5F1fD", + [ + ["250043585667303", "36429294837"], + ["250401077762813", "64932162661"] + ] + ], + [ + "0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A", + [ + ["250526151093083", "74656417530"], + ["695628520661609", "143420000000"] + ] + ], + ["0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee", [["260693811733759", "22657073802"]]], + [ + "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D", + [ + ["252085742270225", "37217588263"], + ["693534396400586", "1362130095"], + ["695910518553961", "796726164"] + ] + ], + ["0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70", [["252279493675340", "327574162163"]]], + ["0x09DaDF51d403684A67886DB545AE1703d7856056", [["249945795286716", "97790380587"]]], + ["0x6fBDc235B6f55755BE1c0B554469633108E60608", [["253030586999657", "262000796007"]]], + [ + "0xD5351308c8Cb15ca93a8159325bFb392DC1e52aC", + [ + ["256758104204461", "15603000000"], + ["256710058517324", "31206000000"] + ] + ], + ["0xF4B2300e02977720D590353725e4a73a67250bf3", [["252622959858488", "277271514945"]]], + ["0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76", [["260441761027924", "21012816705"]]], + [ + "0x0846Bf78c84C11D58Bb2320Fc8807C1983A2797C", + [ + ["259218447065702", "44722720347"], + ["260052583934374", "47702676650"] + ] + ], + ["0x567dA563057BE92a42B0c14a765bFB1a3dD250be", [["259263169786049", "44675770159"]]], + [ + "0x3638570931B30FbBa478535A94D3f2ec1Cd802cB", + [ + ["258890580795053", "327866270649"], + ["266899609550289", "85677608975"] + ] + ], + ["0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3", [["256776481524757", "827187570265"]]], + ["0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09", [["248455141384543", "250596023597"]]], + [ + "0x7eFaC69750cc933e7830829474F86149A7DD8e35", + [ + ["261973680486751", "179562380519"], + ["261973679486751", "1000000"], + ["271999469298681", "293011632289"] + ] + ], + [ + "0x7c9551322a2e259830A7357e436107565EA79205", + [ + ["270707790419553", "44602710850"], + ["334808594828075", "20502770382"], + ["491177308591557", "21915642715"], + ["625298680160271", "253050000000"], + ["643112195637173", "114580000000"], + ["712108719670625", "126027343719"] + ] + ], + [ + "0x15682A522C149029F90108e2792A114E94AB4187", + [ + ["262244417024534", "9954888600"], + ["262254371913134", "20006708080"] + ] + ], + ["0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95", [["264546765360408", "45234008042"]]], + ["0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36", [["262220837330704", "17624219070"]]], + ["0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0", [["262389497183414", "66013841091"]]], + ["0xB5030cAc364bE50104803A49C30CCfA0d6A48629", [["271716973263145", "198112928750"]]], + ["0x61C562283B268F982ffa1334B643118eACF54480", [["266885888878451", "13720671838"]]], + [ + "0x09147d29d27E0c8122fC0b66Ff6Ca060Cda40aDc", + [ + ["263444366219049", "78768160379"], + ["340340310399004", "194252578254"] + ] + ], + ["0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f", [["262570166065123", "15818274887"]]], + [ + "0xDB2480a43C79126F93Bd5a825dc0CBa46d7C0612", + [ + ["273275462311532", "1874397"], + ["376596837312302", "2143332"] + ] + ], + [ + "0x0A0761a91009101a86B7a0D786dBbA744cE2E240", + [ + ["278185787491171", "5610925897"], + ["277532421339407", "4652629712"] + ] + ], + [ + "0xD49946B3dA0428fE4E69c5F4D6c4125e5D0bf942", + [ + ["277622676617792", "90144976522"], + ["277712821594314", "103935819570"] + ] + ], + [ + "0x80771B6DC16d2c8C291e84C8f6D820150567534C", + [ + ["274600967175715", "186730161037"], + ["274586709729354", "14257446361"] + ] + ], + [ + "0x0B7021897485cC2Db909866D78A1D82657A4be6F", + [ + ["273335862185061", "44063880952"], + ["318810216692840", "39073687143"] + ] + ], + ["0xCfCF5A55708Cd1Ae90fdcad70C7445073eB04d94", [["272383450599356", "73487260147"]]], + ["0x59b9540ee2A8b2ab527a5312Ab622582b884749B", [["274578680043801", "900000000"]]], + ["0xcD26f79e60fd260c867EEbAeAB45e021bAeCe92D", [["274579580043801", "7129685553"]]], + ["0xde8351633c96Ac16860a78D90D3311fa390182BF", [["277537073969119", "85602648673"]]], + [ + "0xD0126092d4292F8DC755E6d8eEE8106fbf84583D", + [ + ["276405260758386", "163268617108"], + ["285840847218881", "78077936614"] + ] + ], + [ + "0xEF64581Af57dFEc2722e618d4Dd5f3c9934C17De", + [ + ["273653841644570", "66903513016"], + ["386540379495873", "45687893013"] + ] + ], + ["0x368a5564F46Bd896C8b365A2Dd45536252008372", [["273379926066013", "186137117756"]]], + ["0x0F0520237DB57A05728fa0880F8f08A1fd57ccff", [["276395162620514", "10098137872"]]], + ["0x110dfBb05F447880B9B29206c1140C07372090dc", [["282823933037116", "25998872322"]]], + ["0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E", [["289524659324935", "40000269904"]]], + ["0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20", [["280702256803893", "3194476000"]]], + ["0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81", [["288652038051959", "273973101221"]]], + [ + "0xF8444CF11708d3901Ee7B981b204eD0c7130fB93", + [ + ["287670685386031", "624535957327"], + ["285918925155495", "793706626029"], + ["286712631781524", "958053604507"], + ["327268162978532", "483993740256"], + ["368431939737151", "1004761026937"] + ] + ], + [ + "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54", + [ + ["289603276344849", "221452178690"], + ["289037900183227", "435600000000"] + ] + ], + [ + "0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7", + [ + ["283862931443313", "13846186217"], + ["284761889788419", "53707306278"], + ["322288771602655", "767049891172"], + ["335611264683963", "3457786919155"] + ] + ], + ["0x97Ada2E26C06C263c68ECCe43756708d0f03D94A", [["281369121491336", "104797064592"]]], + ["0xc32B1e77879F3544e629261E711A0cc87ae01182", [["281343170282469", "10590975372"]]], + ["0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E", [["281360732660114", "8388831222"]]], + [ + "0x0e56C87075CD53477C497D5B5F68CdcA8605cBF7", + [ + ["283860746063250", "2185380063"], + ["311893596417096", "7528848316"] + ] + ], + ["0x90B113Cf662039394D28505f51f0B1B4678Cc3b5", [["280783044688644", "12564997296"]]], + [ + "0x019285701d4502df31141dF600A472c61c054e63", + [ + ["285400078671087", "106658006145"], + ["295033968260116", "102049327959"] + ] + ], + ["0x5edd743E40c978590d987c74912b9424B7258677", [["282938006963034", "4678453384"]]], + ["0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E", [["288522664536795", "90805720025"]]], + [ + "0xeeBF4Ea438D5216115577f9340cD4fB0EDD29BD9", + [ + ["279922610063052", "4057575515"], + ["334851860911256", "99708443352"] + ] + ], + ["0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287", [["280705451279893", "77593408751"]]], + [ + "0x49444e6d0b374f33c43D5d27c53d0504241B9553", + [ + ["289598528304849", "4748040000"], + ["325785700465033", "47931342976"], + ["333897831019794", "49267287724"], + ["372461099911308", "92255508651"] + ] + ], + ["0xF57c5533a9037E25E5688726fbccD03E09738aCd", [["290667882932090", "15075579651"]]], + ["0x3BD4c721C1b547Ea42F728B5a19eB6233803963E", [["279910575121973", "12034941079"]]], + [ + "0x99997957BF3c202446b1DCB1CAc885348C5b2222", + [ + ["285760338065737", "22606820288"], + ["298929583976174", "66551024044"] + ] + ], + ["0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a", [["289487146073469", "37513251466"]]], + [ + "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a", + [ + ["289473500183227", "13645890242"], + ["465942921824991", "13502469920"] + ] + ], + ["0x821bb6973FdA779183d22C9891f566B2e59C8230", [["279899339370850", "11235751123"]]], + [ + "0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190", + [ + ["289570099594839", "2284115100"], + ["325489589719323", "16145852467"] + ] + ], + ["0x4d26976EC64f11ce10325297363862669fCaAaD5", [["293290104729008", "95356406608"]]], + ["0x93b34d74a134b403450f993e3f2fb75B751fa3d6", [["296797858583543", "139782800000"]]], + [ + "0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E", + [ + ["300538713353756", "19030292542"], + ["296283253996855", "94410708993"], + ["297412002527525", "59063283900"], + ["295473191285707", "19712324157"] + ] + ], + ["0xe2282eA0D41b1a9D99B593e81D9adb500476C7C5", [["297959748228642", "43499184625"]]], + [ + "0xEC9F16FAacD809ED3EC90D22C92cE84C5C115FAC", + [ + ["297503528406965", "16484054460"], + ["297471065811425", "24584000000"] + ] + ], + ["0xDa12B5133e13e01d95f9a5BE0cc61496b17E5494", [["297843565336066", "116182892576"]]], + ["0xFe2da4E7e3675b00BE2Ff58c6a018Ed06237C81D", [["295372378685570", "14172600137"]]], + [ + "0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21", + [ + ["298739111357662", "190472618512"], + ["298426082271272", "34185829440"], + ["318131255471558", "490552229489"], + ["318849290379983", "195286958683"] + ] + ], + ["0x08b6e06F64f62b7255840329b2DDB592d6A2c336", [["293279130525087", "10974203921"]]], + ["0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54", [["291654604244211", "46558365900"]]], + ["0xdF3A7C30313779D3b6AA577A28456259226Ff452", [["298546668100712", "30553597699"]]], + ["0xFD7998c9c23aa865590fd3405F19c23423a0611B", [["298460268100712", "86400000000"]]], + [ + "0xD2927a91570146218eD700566DF516d67C5ECFAB", + [ + ["311239094540889", "5001219"], + ["461998949157639", "264918608815"] + ] + ], + [ + "0x5A803cD039d7c427AD01875990f76886cC574339", + [ + ["304668727377586", "823622609198"], + ["303460189172472", "1009627934604"] + ] + ], + ["0x5D177d3f4878038521936e6449C17BeCd2D10cBA", [["302037489993568", "28063592168"]]], + ["0x5F067841319aD19eD32c432ac69DcF32AC3a773F", [["301635847094275", "67319170048"]]], + ["0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1", [["311951348717264", "20080403416"]]], + ["0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca", [["317838397685316", "11960421970"]]], + ["0x0948934A39767226E1FfC53bd0B95efa90055178", [["311619295234752", "15991984586"]]], + ["0x27320AAc0E3bbc165E6048aFc0F28500091dca73", [["301703166264323", "14827650417"]]], + ["0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60", [["306189714236944", "1401270600"]]], + ["0x349E8490C47f42AB633D9392a077D6F1aF4d4c85", [["311971429120680", "25098501333"]]], + ["0x4588a155d63CFFC23b3321b4F99E8d34128B227a", [["317739518695316", "98878990000"]]], + ["0xcd1E27461aF28E23bd3e84eD87e2C9a281bF0d9F", [["312080923158305", "65952388800"]]], + ["0x34Aec84391B6602e7624363Df85Efe02A1FF35f5", [["309267907666277", "100498286663"]]], + ["0xd6E52faa29312cFda21a8a5962E8568b7cfe179a", [["302424774125728", "13659859623"]]], + ["0xd380b5Fed7b9BaAFF7521aA4cEfC257Db3043d26", [["311635287219338", "57116660884"]]], + ["0x220c12268c6f1744553f456c3BF161bd8b423662", [["311744261169232", "14754910654"]]], + ["0xE6375dF92796f95394a276E0BA4Efc4176D41D49", [["315485261670410", "218136367740"]]], + ["0xf5f165910e11496C2d1B3D46319a5A07f09Bf2D9", [["311375845353216", "202824840027"]]], + ["0xe4082AaCDEd950C0f21FEbAC03Aa6f48D15cd58D", [["306191115507544", "47164005800"]]], + ["0x997563ba8058E80f1E4dd5b7f695b5C2B065408e", [["312055923158305", "25000000000"]]], + [ + "0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f", + [ + ["323055821493827", "43323014052"], + ["328737849859671", "47689884851"] + ] + ], + ["0xae5c0ff6738cE54598C00ca3d14dC71176a9d929", [["327253599004877", "14563973655"]]], + ["0x215F97a79287BE4192990FCc4555F7a102a7D3DE", [["319063706774890", "19124814552"]]], + [ + "0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5", + [ + ["326820555366865", "52475804769"], + ["327158585388232", "95013616645"], + ["489512551216130", "133886156698"] + ] + ], + ["0x0690166a66626C670be8f1A09bcC4D23c0838D35", [["325551813699206", "16535828993"]]], + [ + "0x299e4B9591993c6001822baCF41aff63F9C1C93F", + [ + ["321198027851647", "794705201763"], + ["328785539744522", "150336454905"], + ["356266241722575", "2607932412299"], + ["358874174134874", "766254121133"] + ] + ], + ["0x26AFBbC659076B062548e8f46D424842Bc715064", [["320072143901269", "94067068214"]]], + ["0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb", [["325418628636859", "13882808319"]]], + ["0xbFC415Eb25AaCbEEf20aE5BC35f1F4CfdE9e3FC6", [["321992733053410", "296038549245"]]], + [ + "0xda333519D92b4D7a83DBAACB4fd7a31cDB4f24A4", + [ + ["324929278595488", "23097239478"], + ["325505735571790", "46078127416"] + ] + ], + ["0xF4a04D998A8d6Cf89C9328486a952874E50892DC", [["321094975835782", "50467275310"]]], + [ + "0xB3561671651455D2E8BF99d2f9E2257f2a313a2c", + [ + ["323131389358954", "61656029023"], + ["360752435099540", "96553480454"], + ["360158682891399", "103299890816"], + ["403118995799810", "17007566134"], + ["401959009163867", "42326378229"], + ["402764778389025", "53919698039"], + ["404743790158374", "56782954188"] + ] + ], + ["0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797", [["328269884139182", "10071394154"]]], + ["0xCB2d95308f1f7db3e53E4389A90798d3F7219a7e", [["325442315999585", "47273719738"]]], + [ + "0x08507B93B82152488512fe20Da7E42F4260D1209", + [ + ["328361555137833", "69760982441"], + ["379374817295263", "104583299835"] + ] + ], + [ + "0xF1F2581Bd9BBd76134d5f111cA5CFF0a9753FD8E", + [ + ["324952375834966", "138041583857"], + ["325090417418823", "269722743765"] + ] + ], + ["0x990cf47831822275a365e0C9239DC534b833922D", [["328463036730072", "3651796730"]]], + ["0x16b5e68f83684740b2DA481DB60EAb42362884b9", [["328466688526802", "10134945528"]]], + ["0x28aB25Bf7A691416445A85290717260971151eD2", [["328451525907964", "11510822108"]]], + ["0x317B157e02c3b5A16Efc3cc4eb26ACcC1cfF24e3", [["319579237582534", "18991534679"]]], + ["0x59dC1eaE22eEbD6CfbD144ee4b6f4048F8A59880", [["328698724407437", "20246736273"]]], + [ + "0x81eee01e854EC8b498543d9C2586e6aDCa3E2006", + [ + ["328965644144808", "198456386297"], + ["334136741601312", "292267679049"] + ] + ], + ["0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB", [["334679522049415", "119672848374"]]], + ["0x095CB8F5E61b69A0C2fE075A772bb953f2d11C2A", [["339210737506518", "102926636303"]]], + ["0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968", [["334477990711769", "22041535128"]]], + ["0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106", [["333010214249215", "99131397538"]]], + ["0xcc5b337cd28b330705e2949a3e28e7EcA33FABF3", [["344217839974187", "142357942002"]]], + [ + "0x3BD142a93adC0554C69395AAE69433A74CFFc765", + [ + ["328954715417202", "10928727606"], + ["386387360940641", "141509657939"] + ] + ], + ["0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6", [["343948668440753", "269171533434"]]], + ["0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb", [["343677590063786", "19176051379"]]], + ["0xDecaFa57F07292a338E59242AaC289594E6A0d68", [["332704987205231", "140065079142"]]], + ["0x82CFf592c2D9238f05E0007F240c81990f17F764", [["334800355703455", "8239124620"]]], + ["0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01", [["331560641183352", "35213496314"]]], + ["0xD11FaEdC6F7af5b05137A3F62cb836Ab0aE5dbb6", [["329207240531105", "136505258035"]]], + ["0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725", [["331622129302332", "1070861106258"]]], + ["0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE", [["340001324829583", "5337"]]], + [ + "0xaDd2955F0efC871902A7E421054DA7E6734d3DCA", + [ + ["340002929884824", "1605019105"], + ["340001324834920", "1605049904"] + ] + ], + ["0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1", [["340565553187713", "3073743220711"]]], + ["0xF6FE6b3f7792B0a3E3E92Fdbe42B381395C2BBd8", [["334637636520317", "16963513569"]]], + ["0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0", [["328935876199427", "18402625318"]]], + ["0x8bFe70E2D583f512E7248D67ACE918116B892aeA", [["339167269778934", "43467727584"]]], + ["0x201ad214891136FC37750029A14008D99B9ab814", [["334959543421596", "108850000718"]]], + ["0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB", [["333887021019794", "10810000000"]]], + ["0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf", [["340544190818194", "21362369519"]]], + ["0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209", [["353389703784413", "2182702092311"]]], + ["0xE4202F5919F22377dB816a5D04851557480921dF", [["343696766115165", "19171570170"]]], + [ + "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD", + [ + ["328954278824745", "436592457"], + ["334845655178581", "6205732675"], + ["376884850195985", "929512985"] + ] + ], + [ + "0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5", + [ + ["328698722691368", "1716069"], + ["650916041448649", "2588993459"] + ] + ], + ["0x0FF2FAa2294434919501475CF58117ee89e2729c", [["340004534903929", "11052458712"]]], + [ + "0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176", + [ + ["377332779708970", "1645388829"], + ["456719911973263", "2016823680"] + ] + ], + ["0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d", [["373671956964097", "185860975995"]]], + ["0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a", [["359920402458005", "85000000000"]]], + ["0x61C95fe68834db2d1f323bb85F0590690002a06d", [["359895402458005", "25000000000"]]], + ["0x2352FDd9A457c549D822451B4cD43203580a29d1", [["360910868412337", "468725307806"]]], + [ + "0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA", + [ + ["355806866216773", "187420307596"], + ["359874313037575", "21089420430"] + ] + ], + [ + "0x6b87460Ce18951D31A7175cAbE2f3fc449E54256", + [ + ["360115402458027", "38084213662"], + ["402818698087064", "46789171777"] + ] + ], + ["0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3", [["359857480112013", "16832925562"]]], + ["0xc390578437F7BdEe1F766Fdb00f641848bc19366", [["372433833471833", "3723791152"]]], + ["0xcB0838c828Ec4911f6a0ba48e58BC67a8c5f9c3f", [["360153486671689", "2374729808"]]], + ["0x3810EAcf5020D020B3317B559E59376c5d02dCB2", [["370593639163868", "87638844672"]]], + ["0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e", [["361666644960846", "9033860883"]]], + ["0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1", [["356013940250669", "214939119695"]]], + ["0x9D496BA09C9dDAE8de72F146DE012701a10400CC", [["359640428256007", "217051856006"]]], + [ + "0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D", + [ + ["380008273465850", "100013282422"], + ["386673517385669", "116174772099"] + ] + ], + [ + "0xe496c05e5E2a669cc60ab70572776ee22CA17F03", + [ + ["376760788400310", "6925672800"], + ["451603278508011", "5361251025"] + ] + ], + ["0xBF843F2AA6425952aE92760250503cE9930342b4", [["377334425097799", "91988886699"]]], + ["0xF4E3f1c01BD9A5398B92ac1B8bedb66ba4a2d627", [["370522581424279", "71057739589"]]], + ["0x532744D22891C4fccd5c4250D62894b3153667a7", [["374145600795098", "2278056516664"]]], + [ + "0x507165FF0417126930D7F79163961DE8Ff19c8b8", + [ + ["360848988579994", "61879832343"], + ["662609678589053", "59538073434"] + ] + ], + ["0x905B2Eb4B731B395E7517a4763CD829F6EC2f510", [["379996617045843", "11656420007"]]], + [ + "0x009A2534fd10c879D69daf4eE3000A6cb7E609Bb", + [ + ["355994286524369", "936000838"], + ["613741059534895", "12343626381"] + ] + ], + ["0x5084949C8f7bf350c646796B242010919f70898E", [["371914538333765", "11710566911"]]], + ["0xf152581b8cb486b24d73aD51e23a3Fd3E0222538", [["379603990851302", "392626194541"]]], + ["0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB", [["371946868967109", "58841300381"]]], + ["0x70C8eE0223D10c150b0db98A0423EC18Ec5aCa89", [["378893728297768", "94698329152"]]], + ["0x61e193e514DE408F57A648a641d9fcD412CdeD82", [["377426413984498", "1134976125606"]]], + ["0xF930b0A0500D8F53b2E7EFa4F7bCB5cc0c71067E", [["378561390110104", "332338187664"]]], + ["0xa48E7B26036360695be458D6904DE0892a5dB116", [["361675678821729", "360670112242"]]], + ["0xeEe59d723433a4b178fCD383CD936de9C8666111", [["384705864961915", "1132721039915"]]], + ["0xC252A841Af842a55b0F0b507f68f3864bf1C02b5", [["383092890554906", "160361923955"]]], + ["0x0be0eCC301a1c0175f07A66243cfF628c24DB852", [["387085583162537", "11780328791"]]], + ["0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e", [["383075774673118", "17115881788"]]], + ["0x9c7ac7abbD3EC00E1d4b330C497529166db84f63", [["384132556160937", "27365907771"]]], + ["0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5", [["384072204135723", "8758397681"]]], + ["0x70F11dbD21809EbCd4C6604581103506A6a8443A", [["385984597229597", "11444716102"]]], + ["0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4", [["385996041945699", "44584623736"]]], + [ + "0xe0E297e67191AF140BCa9E7c8dd9FfA7F57D3862", + [ + ["386877595575860", "381776902"], + ["422877270899875", "2595240610"], + ["422879866140485", "7669308177"] + ] + ], + ["0x5aB883168ab03c97239CEf348D5483FB2b57aFD9", [["380974686616344", "86992261142"]]], + ["0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D", [["384391860674103", "22464236574"]]], + ["0x0B297D1e15bd63e7318AF0224ebeA1883eA1B78b", [["381340402136618", "26295761854"]]], + ["0x26C08ce60A17a130f5483D50C404bDE46985bCaf", [["386273913739633", "113447201008"]]], + [ + "0x81696d556eeCDc42bED7C3b53b027de923cC5038", + [ + ["380859952352184", "14925453141"], + ["463502571685807", "36113082774"] + ] + ], + [ + "0xC2705469f7426E9EbE91e55095dCA2AdF19Bcbb2", + [ + ["387120303937976", "58515686346"], + ["456679832668142", "40079305121"], + ["470868926031598", "34468618803"], + ["470903394650401", "34452659711"] + ] + ], + ["0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af", [["381241434287363", "79896782500"]]], + [ + "0x33c0BCac5c1835fe9D52D35079F6617A22c6C431", + [ + ["387476112263181", "125324760000"], + ["389195837042393", "36648000000"], + ["572397154046541", "49788645972"], + ["594358295239774", "202654427854"], + ["613936695193580", "16210845885"], + ["614677841663135", "43736535200"], + ["636394053735133", "31060210793"] + ] + ], + [ + "0xDeaB5B36743feb01150e47Ad9FfD981b9d5b7E8a", + [ + ["387406923771954", "17549000000"], + ["388983838542393", "11998500000"] + ] + ], + ["0xCfD2b6487AFA4A30b79408cF57b2103348660a02", [["386586067388886", "57516289570"]]], + ["0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", [["381061678877486", "69289110000"]]], + ["0x7c12222e79e1a2552CaF92ce8dA063e188a7234F", [["388462281235108", "151078425653"]]], + [ + "0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB", + [ + ["387178819624346", "22789160494"], + ["401309728984959", "88167423404"], + ["696212281967928", "41773558000"], + ["696479737795444", "21661686000"] + ] + ], + ["0x568092fb0aA37027a4B75CFf2492Dbe298FcE650", [["383570319922931", "320032018333"]]], + ["0x68ca44eD5d5Df216D10B14c13D18395a9151224a", [["388151583261614", "298522321813"]]], + ["0x8264EA7b0b15a7AD9339F06666D7E339129C9482", [["382614804933710", "32021232234"]]], + ["0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48", [["380823279010078", "36673342106"]]], + ["0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3", [["385887420980071", "15676768579"]]], + ["0xbb595fEF3C86FE664836a5Ea6C6E549ECeA28dEe", [["380874877805325", "99808811019"]]], + ["0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E", [["388613359660761", "123019710377"]]], + [ + "0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22", + [ + ["385934932264792", "28234479163"], + ["458138123015409", "13236391256"] + ] + ], + ["0xbFc016652a6708b20ae850Ee92D2Ea23ccA5F31a", [["384284223137807", "107622510400"]]], + ["0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17", [["387354276771954", "17549000000"]]], + ["0x29e1A68927a46f42d3B82417A01645Ee23F86bD9", [["386040626569435", "115438917"]]], + ["0x08364bdB63045c391D33cb83d6AEd7582b94701d", [["383513997691489", "23831778892"]]], + ["0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97", [["381325946685316", "8912443926"]]], + ["0xECA7146bd5395A5BcAE51361989AcA45a87ae995", [["385963166743955", "21430485642"]]], + ["0xC9cE413f3761aB1Df6be145fe48Fc6c28A8DCc1a", [["384209179623467", "73933444962"]]], + [ + "0x829Ceb00fC74bD087b1e50d31ec628a90894cD52", + [ + ["384414324910677", "50596304590"], + ["416442088554138", "62470363029"], + ["428416613011571", "64080321723"] + ] + ], + [ + "0xAf93048424E9DBE29326AD1e1B00686760318f0D", + [ + ["387099560901328", "9082486597"], + ["603423204831971", "17206071534"] + ] + ], + ["0x843F293423895a837DBe3Dca561604e49410576C", [["387108643387925", "11660550051"]]], + ["0x66F1089eD7D915bC7c7055d2d226487362347d39", [["384283113068429", "1110069378"]]], + ["0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509", [["388450105583427", "12175651681"]]], + ["0x0C2301083B7f8021fB967C05a4C2fb1ab731C302", [["390704799840991", "23348488996"]]], + [ + "0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79", + [ + ["389232485042393", "1472314798598"], + ["390728148329987", "1929155008439"], + ["402274635542096", "435082846929"], + ["439720106933966", "969373424488"], + ["453720230030637", "1062369645874"], + ["605146291993181", "105536223506"] + ] + ], + ["0xCD4950a8Bd67123807dA21985F2d4C4553EA1523", [["400846418215399", "114436759181"]]], + ["0xE6A0D70CFe2BB97E39D37ED2549c25FA8C238B1A", [["400718076278698", "128341936701"]]], + [ + "0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC", + [ + ["401837348742701", "107810827136"], + ["404309982048493", "327389493912"] + ] + ], + ["0x2f89DB6B5E80C4849142789d777109D2F911F780", [["392855011748637", "5251308075"]]], + ["0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba", [["403240604993759", "448608504781"]]], + [ + "0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED", + [ + ["396986650725260", "3482540346"], + ["396990133265606", "3782897627"] + ] + ], + ["0xb0226e96c71F94C44d998CE1b34F6a47c3A82404", [["397303985083419", "767141673418"]]], + ["0xCAeEf0dFCF97641389F8673264b7AbAB25D17c99", [["400315704255754", "292270000000"]]], + ["0x6ab4566Df630Be242D3CD48777aa4CA19C635f56", [["400652005822390", "66070456308"]]], + ["0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256", [["400607974255754", "22903272033"]]], + [ + "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC", + [ + ["401533003762823", "3964784011"], + ["707611259809109", "15589908000"] + ] + ], + ["0x87834847477c82d340FCD37BE6b5524b4dF5e7c5", [["402865487258841", "6454277235"]]], + ["0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80", [["404106072954894", "63975413862"]]], + ["0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F", [["399076325073937", "1256098598"]]], + ["0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe", [["400121937452645", "30086002693"]]], + ["0xe9ef7E644405dD6BD1cbd1550444bBF6B2Bfc7C1", [["392947371864651", "1548786859"]]], + ["0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f", [["393235443340203", "325699631169"]]], + [ + "0xF4839123454F7A65f79edb514A977d0A443d9F91", + [ + ["396499321739661", "158934348231"], + ["396672169852755", "304359092505"], + ["398077843498350", "155055594925"], + ["493845501729151", "117060004485"] + ] + ], + ["0x8a178306ffF20fd120C6d96666F08AC7c8b31ded", [["402871941536076", "96491602264"]]], + ["0x81d8363845F96f94858Fac44A521117DADBfD837", [["393561142971372", "324629738694"]]], + ["0x04A9b41a1288871FB60c6d015F3489612d36EB48", [["394687355735732", "64363620944"]]], + ["0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14", [["401720368857579", "116979885122"]]], + ["0x08c16a9c76Df28eE6bf9764B761E7C4cE411E890", [["393885772710066", "801583025666"]]], + ["0x66D8293781eF24184aa9164878dfC0486cfa9Aac", [["404265886768756", "2215279737"]]], + [ + "0x9399943298b25632b21f4d1FA75DB0C5b8d457C5", + [ + ["404022519144524", "12098559997"], + ["406000821375295", "28386322608"] + ] + ], + ["0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E", [["404737495938253", "6294220121"]]], + [ + "0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490", + [ + ["405492506092600", "262152482"], + ["705094852706044", "3445015742"] + ] + ], + ["0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302", [["405874022206206", "23506738608"]]], + ["0xc40dcc52887e1F08c2c91Dcd650da630DE671bD7", [["404955105302992", "54144875028"]]], + [ + "0x3103c84c86a534a4f10C3823606F2a5b90923924", + [ + ["422366589300603", "3203293071"], + ["411689905001233", "1562442699"] + ] + ], + ["0xD5bFBD8FCD5eD15d3df952b0D34edA81FF04Dabe", [["406205859764926", "153923235884"]]], + ["0x699095648BBc658450a22E90DF34BD7e168FCedB", [["411655097983604", "1867890780"]]], + [ + "0x3798AE2cbC444ed5B5f4fb38344044977066D13F", + [ + ["405972755944204", "18931968095"], + ["437453984559649", "7476138081"] + ] + ], + ["0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA", [["406359783000810", "120151660091"]]], + ["0xec94F1645651C65f154F48779Db1F4C36911a56a", [["405569526477439", "75101162500"]]], + ["0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A", [["405991687912299", "9133462996"]]], + ["0x1a5280B471024622714DEc80344E2AC2823fd841", [["404684955626632", "24488082083"]]], + [ + "0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96", + [ + ["404929342948282", "25762354710"], + ["417074162881181", "61234325811"] + ] + ], + ["0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39", [["416914807899146", "159354982035"]]], + ["0xCF04b3328326b24A1903cBd8c6Cab8E607594342", [["404736255118145", "1240820108"]]], + ["0x08C1eBaC9aD1933E08718A790bc7D1026e588c9b", [["422887535448662", "31370000000"]]], + ["0xF75e363F695Eb259d00BFa90E2c2A35d3bFd585f", [["405828528337439", "31013750000"]]], + [ + "0x3983b24542E637030af57a6Ca117B96Fc42Ace10", + [ + ["406100162097903", "54716661232"], + ["419104248331557", "60400014733"] + ] + ], + ["0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4", [["414623981770600", "320790778183"]]], + [ + "0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6", + [ + ["416424514238783", "17574315355"], + ["620990777138369", "7681062381"], + ["650004772446996", "2978711605"] + ] + ], + ["0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0", [["406154878759135", "39817721136"]]], + ["0x2342670674C652157c1282d7E7F1bD7460EFa9E2", [["419164648346290", "19514795641"]]], + ["0x0A6f465033A42B1EC9D8Cd371386d124E9D3b408", [["404807760703809", "121582244473"]]], + ["0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91", [["416581788749222", "183159970434"]]], + [ + "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d", + [ + ["423269308404787", "6273115407"], + ["437554929146101", "25515357603"] + ] + ], + ["0x35a386D9B7517467a419DeC4af6FaFC4c669E788", [["405952555551214", "10024424157"]]], + ["0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714", [["416777307799778", "124964349871"]]], + ["0x686381d3D0162De16414A274ED5FbA9929d4B830", [["405897528944814", "55026606400"]]], + ["0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF", [["404807646684224", "114019585"]]], + ["0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74", [["404637371542405", "21014656050"]]], + ["0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3", [["424067831520194", "76367829600"]]], + ["0x2BeaB5818689309117AAfB0B89cd6F276C824D34", [["405492768245082", "25254232357"]]], + ["0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F", [["405968762010244", "1993933960"]]], + ["0x0fbb76b9B283Dd22eCbD402B82EbFA6807e44260", [["408564846537034", "39890246570"]]], + [ + "0x93A185CD1579c015043Af80da2D88C90240Ab3a9", + [ + ["425000640707321", "67603779457"], + ["531427120214450", "82596094458"], + ["643261775828307", "152697324377"] + ] + ], + ["0x2437Db820DE92d8DD64B524954fA0D160767c471", [["405859542087439", "14480118767"]]], + ["0x0b406697078c0C74e327856Fc57561a3A81FB925", [["439487841879353", "193776500000"]]], + [ + "0xd16C24e9CCDdcD7630Dd59856791253F789b1640", + [ + ["454838947667388", "398206341722"], + ["458856096476238", "330970704739"], + ["459319023744532", "131751153673"], + ["490256846516323", "5561731260"] + ] + ], + [ + "0xD73d566e1424674C12F1D45aEA023C419e6EfeF5", + [ + ["439262284146563", "9264605510"], + ["707897763173856", "1778910224"] + ] + ], + ["0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4", [["437428256972808", "25727586841"]]], + ["0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c", [["446386709284268", "316578014158"]]], + [ + "0x18ED928719A8951729fBD4dbf617B7968D940c7B", + [ + ["436394987906845", "1033269065963"], + ["432507957558432", "1015130348413"] + ] + ], + ["0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b", [["446354539704178", "15974580090"]]], + ["0x8A1B804543404477C19034593aCA22Ab699f0B7D", [["455953914009110", "132495619648"]]], + ["0xC8D71db19694312177B99fB5d15a1d295b22671A", [["458204265300255", "651831175983"]]], + ["0x2d0DDb67B7D551aFa7c8FA4D31F86DA9cc947450", [["462530193955529", "133555430770"]]], + [ + "0xebDA75C5e193BBB82377b77e3c62c0b323240307", + [ + ["458021403565594", "33140768588"], + ["458124884153206", "13238862203"] + ] + ], + ["0xeAB3981257d761d809E7036F498208F06ce0E5bb", [["458056744334182", "1908381961"]]], + ["0x33033E306c89Dc5b662f01e74B12623f9a39CCE4", [["462263867766454", "6000000000"]]], + ["0x5F0f6F695FebF386AA93126237b48c424961797B", [["463538684768581", "30263707163"]]], + ["0xDaD87a8cCe8D5B9C57e44ae28111034e2A39eD50", [["464341586704871", "40218170413"]]], + ["0x96b793d04E0D068083792E4D6E7780EEE50755Fa", [["464061872519163", "30982753569"]]], + ["0x47b2EFa18736C6C211505aEFd321bEC3AC3E8779", [["461663522612249", "132789821695"]]], + ["0x2C01E651a64387352EbAF860165778049031e190", [["462269867766454", "6000000000"]]], + ["0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0", [["458054544334182", "2200000000"]]], + ["0xf0ec8fFED51B4Ba996005F04d38c3dBeF3A92773", [["462663749386299", "5971851889"]]], + ["0xDf3e8B69943AD8278D198681175E6f93135CDDfC", [["464470389283162", "126497445070"]]], + [ + "0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df", + [ + ["461796312433944", "202636723695"], + ["470700696631708", "1940500171"], + ["469472885913127", "1776377083"], + ["469469352906555", "1766184702"], + ["469471119091257", "1766821870"], + ["472836318883874", "1769006754"], + ["469474662290210", "1776940468"], + ["521585204013082", "1909649071"], + ["521789411796482", "1913525664"], + ["521587113662153", "1909460313"] + ] + ], + ["0xD48E614c2CbAF0A588E8Be1BeD8675b35EEE93FC", [["462275867766454", "6000000000"]]], + [ + "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3", + [ + ["457500650018099", "132692764932"], + ["656283295570897", "12415183500"] + ] + ], + ["0xf6Dd6A99A970d627A3F0D673cb162F0fe3D03251", [["463568948475744", "33854411665"]]], + [ + "0xd42E21c0b98c6b7EDbE350bCeD787CE0B9644877", + [ + ["463368747590625", "6594438597"], + ["568316734551538", "14697178768"], + ["568331431730306", "4409766489"] + ] + ], + ["0x74382a61e2e053353BECBC71a45adD91c0C21347", [["462675052970405", "693694620220"]]], + ["0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362", [["464028180668427", "33691850736"]]], + [ + "0xd776347E2FD043Cb2903Fd6999533a07eD4D6B48", + [ + ["467339790249098", "30575443162"], + ["467339102657012", "687592086"] + ] + ], + ["0x46b7c8c6513818348beF33cc5638dDe99e5c9E74", [["469476439230678", "11863530938"]]], + ["0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228", [["476490739234120", "21739077662"]]], + ["0x97c46EeC87a51320c05291286f36689967834854", [["476619349663811", "60177474475"]]], + [ + "0x5355C2B0e056d032a4F11E096c235e9a59F5E6af", + [ + ["469498391761616", "28099958602"], + ["502195415776668", "177042580917"] + ] + ], + ["0xEEf102b4B5A2f714aFd7c00C94257D7379dc913E", [["469550813615889", "3478040717"]]], + [ + "0x7193b82899461a6aC45B528d48d74355F54E7F56", + [ + ["470702637131879", "100323000000"], + ["716295671103690", "1629422984"], + ["741119395427445", "101083948638"] + ] + ], + ["0x03fFDf41a57Fabf55C245F9175fc8644F8381C48", [["469267431670089", "67839692592"]]], + ["0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21", [["470937847310112", "84226188785"]]], + ["0x0ACe049e9378FfDbcFcb93AEE763d72A935038AE", [["469335271362681", "678503700"]]], + ["0xC25148EB441B3cAD327E2Ff9c45f317f087dF049", [["486935208595291", "1992932667"]]], + ["0x1FA517A273cC7e4305843DD136c09c8c370814be", [["469335949866381", "67876110491"]]], + ["0xc99c16815c5aEa507c2D8AeB1e69eed4CC8e4E56", [["502039772720798", "143640842990"]]], + ["0xF96A38c599D458fDb4BB1Cd6d4f22c9851427c61", [["493962561733636", "14210987162"]]], + [ + "0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C", + [ + ["526495525703189", "12745164567"], + ["595967650797840", "19231055968"] + ] + ], + [ + "0x21D4Df25397446300C02338f334d0D219ABcc9C3", + [ + ["531921340528773", "37602900897"], + ["556478516642786", "382964380420"], + ["531509716308908", "411624219865"], + ["556861481023206", "253709415566"], + ["596005613074562", "93233987544"], + ["613864088561276", "72606632304"], + ["613952906039465", "637060677585"], + ["634295738092098", "173997222406"] + ] + ], + ["0x1aA6F8B965d692c8162131F98219a6986DD10A83", [["491209036915919", "15368916223"]]], + ["0x76ce7A233804C5f662897bBfc469212d28D11613", [["493720658198961", "124843530190"]]], + ["0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76", [["490810794234272", "16666666666"]]], + ["0x51b2Adf97650A8D732380f2D04f5922D740122E3", [["491115783635980", "2598292"]]], + ["0x48F8738386D62948148D0483a68D692492e53904", [["556351773854003", "35654060356"]]], + ["0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529", [["521791325322146", "75343489480"]]], + [ + "0x120Be1406E6B46dDD7878EDC06069C811f608844", + [ + ["556387427914359", "67814142769"], + ["646143725856011", "44928801374"] + ] + ], + ["0xF7f1dAEc57991db325a4d24Ca72E96a2EdF3683d", [["519666974560053", "40401845392"]]], + ["0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9", [["556455242057128", "12999411038"]]], + ["0x09d8591fc4D4d483565bd0AD22ccBc8c6Dd0fF55", [["545547668814029", "71165039974"]]], + ["0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e", [["504973746057585", "15594289962"]]], + ["0xE223138F87fA7Bf30a98F86b974937ED487de9E5", [["492791683332142", "928974866819"]]], + ["0x21754dF1E545e836be345B0F56Cde2D8419a21B2", [["526456157420239", "39368282950"]]], + ["0xd14Cb607F99f9c5c9a47D1DEF59a02A3fBbf14Fd", [["538353942308571", "47392004821"]]], + ["0xb3F7DF25CB052052dF6d73d83EdBF6a2238c67de", [["593817993539695", "625506"]]], + [ + "0xD0ce08617E88D87696fDB034AF7Cc66f6ae2c203", + [ + ["593817994165201", "368626892186"], + ["634004669814871", "283454515911"] + ] + ], + ["0xBC0A7F1CB55d8f6eAdde498DbFE0FF2f78149A84", [["568772791444757", "20759609713"]]], + [ + "0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A", + [ + ["568256114535784", "60620015754"], + ["594190730526984", "60249402002"], + ["577442842692513", "49630409652"] + ] + ], + ["0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F", [["568107037724199", "138928506054"]]], + ["0xbB69c6d675Db063a543d6D8fdA4435025f93b828", [["568056424982194", "14275224982"]]], + [ + "0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7", + [ + ["585809012696029", "565602262874"], + ["593094411895687", "631379688396"], + ["594950942092362", "1016708705478"] + ] + ], + ["0xe4E51bb8cF044FBcdd6A0bb995a389dDa15fB94e", [["568247857730253", "8256805531"]]], + [ + "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e", + [ + ["592354657193833", "311109277563"], + ["557474269916507", "488241871617"], + ["584407516797670", "149423611243"] + ] + ], + [ + "0xBaD292Dbb933Aea623a3699621901A881E22FfAC", + [ + ["594560949667628", "88596535296"], + ["612635280033573", "333170781639"] + ] + ], + ["0x676B0Add3De8d340201F3F58F486beFEDCD609cD", [["568070700207176", "36337517023"]]], + ["0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2", [["593804898539595", "13095000100"]]], + ["0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F", [["577492473102165", "772670414147"]]], + ["0xcdeC732853019E9F287A9Fdf02f21cfd5eFa0436", [["594250979928986", "91515290935"]]], + ["0x9336a604077688Ae5bB9e18EbDF305d81d474817", [["568756414668700", "16376776057"]]], + [ + "0xFe1640549e9D79fE9ba298C8d165D3eD3ABFa951", + [ + ["586871081432488", "10705853858"], + ["591064164890363", "12874530667"] + ] + ], + ["0xB17fC3D59de766b659644241Dba722546E32b163", [["591586186080015", "21389399522"]]], + ["0x2817a8dFe9DCff27449C8C66Fa02e05530859B73", [["557115190438772", "327035406660"]]], + [ + "0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0", + [ + ["578265143516312", "25727141956"], + ["636425945808043", "37469832650"] + ] + ], + ["0xf9380E9F90aDE257C8F23d53817b33FBbF975a19", [["594649546202924", "29491962342"]]], + ["0xdDd607Ee226b65Ee1292bB2d67682b86cd024930", [["619722209120498", "31334924212"]]], + [ + "0xc76b280880686397F7b95AfC72B581b1a52e6Bad", + [ + ["608869982259746", "68126058779"], + ["608803305172730", "64052827856"] + ] + ], + [ + "0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27", + [ + ["599009603400904", "1727536772397"], + ["596237315381223", "1084177233275"], + ["597321492614498", "1688110786406"], + ["603696952850202", "1438806398621"] + ] + ], + ["0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F", [["596098847062106", "135093374272"]]], + ["0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C", [["614589966717050", "87874946085"]]], + [ + "0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f", + [ + ["614943878475358", "4769665935949"], + ["614943877475358", "1000000"] + ] + ], + ["0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9", [["594940109425366", "10832666996"]]], + ["0xac34CF8CF7497a570C9462F16C4eceb95750dd26", [["619713544411307", "8664709191"]]], + ["0x880bba07fA004b948D22f4492808b255d853DFFe", [["612050576784932", "41775210170"]]], + ["0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4", [["622903969411506", "48462729763"]]], + ["0xf4ACCDFA928bF863D097eCF4C4bB57ad77aa0cb2", [["622995115594871", "5788170260"]]], + ["0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6", [["622600228434741", "6531451600"]]], + ["0xed67448506A9C724E78bF42d5Cf35b4b617cE2F6", [["594872434210527", "67675214839"]]], + [ + "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c", + [ + ["623714888044871", "48492000000"], + ["629694089075109", "48492118269"], + ["627708183606040", "48492118269"], + ["626050365185271", "48492118269"], + ["631376008043778", "48492118269"], + ["633046989282047", "48492118269"] + ] + ], + ["0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c", [["595986881853808", "18731220754"]]], + ["0xDb8D484c46cE6B0bd00f38a51b299EB129928AC0", [["612353902657132", "3096343805"]]], + ["0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", [["612615964925164", "1270108409"]]], + ["0x03B431AC8c662a40765dbE98a0C44DecfF22067C", [["621063660888218", "87181798710"]]], + ["0xE043b38b90712bdFf29a2D930047FF9A56660b0F", [["605435936348975", "40573163648"]]], + [ + "0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5", + [ + ["600737140173301", "417347700552"], + ["614721578198335", "222299277023"] + ] + ], + ["0xd00eb0185dadcEcF6d75E23632eC4201d66a4CD1", [["622952432141269", "26988232068"]]], + [ + "0xcCA04Db4bbD395DFEC2B0c1b58550C38067C9849", + [ + ["622551358840364", "48869594377"], + ["656378346012897", "25113600000"] + ] + ], + ["0xf1608f6796E1b121674036691203C8ecE7516cC2", [["621655357810171", "896001030193"]]], + ["0xDC27b4a65F214743d68BEf4ba2004D4cCD6d7F65", [["613753403161276", "110685400000"]]], + ["0xd56e3E325133EFEd6B1687C88571b8a91e517ab0", [["612356999000937", "232190649529"]]], + [ + "0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2", + [ + ["613432974464989", "308085069906"], + ["638146861484331", "78820430185"], + ["638225681914516", "153413133261"] + ] + ], + ["0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F", [["619753544044710", "1237233093659"]]], + ["0x0EdAc71d6c67BFA7A4dDD79A75967D9c0984F1ce", [["594698791721651", "33964733538"]]], + ["0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13", [["624730707044871", "150555000000"]]], + ["0xE87CA36bcCA4dA5Ca25D92AF1E3B5755074565d6", [["626098857303540", "5482750000"]]], + [ + "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E", + [ + ["632235744722047", "101220000000"], + ["626818371238540", "151830000000"], + ["628624162399709", "101220000000"], + ["628725382399709", "101220000000"], + ["632134524722047", "101220000000"] + ] + ], + ["0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A", [["632123021912047", "2013435000"]]], + [ + "0x20627f29B05c9ecd191542677492213aA51d9A61", + [ + ["638070079561581", "76781922750"], + ["638732059059980", "46559625597"], + ["660875655326802", "330494092479"], + ["658594751095085", "464850000000"], + ["647457571263119", "51897457000"], + ["656861419534803", "90858470270"], + ["657061272430113", "903793388372"], + ["653786204275277", "378309194016"], + ["657965065818485", "629685276600"], + ["660615877363863", "259777962939"], + ["662867404006731", "166149576292"] + ] + ], + ["0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b", [["636425113945926", "831862117"]]], + ["0xA97661df0380FF3eB6214709A6926526E38a3f68", [["640192401336369", "43896808582"]]], + ["0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe", [["634589454042581", "59926244178"]]], + ["0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b", [["634779007760082", "5734467826"]]], + ["0xE3fEBd699133491dbf704A57b805bE1D284094Dd", [["643046863279717", "1992052824"]]], + ["0x5a57107A58A0447066C376b211059352B617c3BA", [["640246497738027", "2191004882"]]], + ["0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933", [["643524849940607", "17931960176"]]], + ["0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d", [["643542781900783", "312333420"]]], + ["0x94cf16A6C45474B05d383d8779479C69f0c5a07A", [["641250084410627", "85134042441"]]], + ["0xc1A5b1d88045be9e2F50A26D79FA54e25Dc31741", [["643543094234203", "646639100"]]], + [ + "0x2745a1f9774FF3b59cbDfC139c6f19f003392e2C", + [ + ["641594591850220", "1581698780"], + ["704175121358099", "1220733194"], + ["704745338561624", "1117067455"], + ["704188818594435", "5072600938"], + ["704759465754455", "3144911832"], + ["705568986128370", "2439339467"], + ["708112705374174", "1010894641"] + ] + ], + [ + "0x37d515Fa5DC710C588B93eC67DE42068090e3ED8", + [ + ["643693518734592", "1539351282905"], + ["645232870017497", "910855838514"], + ["646188654657385", "387855469635"], + ["651618749570258", "511974175317"], + ["650918630442108", "700119128150"], + ["650194085366445", "721956082204"] + ] + ], + ["0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b", [["643661899835648", "9392558210"]]], + [ + "0x04298C47FB301571e97496c3AE0E97711325CFaA", + [ + ["643418883712684", "105966227923"], + ["705576972299375", "8071882778"], + ["705667171132654", "8376502838"], + ["707828423199417", "14171818173"], + ["707806553334225", "21869865192"], + ["705696667564386", "8036081997"], + ["708237083109554", "11486911677"], + ["730050830184530", "103450896022"] + ] + ], + ["0xecEcd4D5f22a75307B10ebDd536Fc4Fa1696B0ED", [["634469735314504", "35167457488"]]], + ["0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50", [["641161763710685", "88320699942"]]], + ["0xBe9998830C38910EF83e85eB33C90DD301D5516e", [["638808515968683", "74848126691"]]], + ["0xe3D73DAaE939518c3853e0E8e532ae707cC1A436", [["643052207829410", "2757807763"]]], + [ + "0xe341D029A0541f84F53de23E416BeE8132101E48", + [ + ["641375909986268", "16603151206"], + ["656295710754397", "12525126500"], + ["688982432538611", "83887520358"], + ["686423580717540", "47650794261"], + ["689066320058969", "107921589892"], + ["692086906190526", "81937578138"], + ["692949197676428", "45883804745"], + ["694055929655242", "4229348834"], + ["693193337526291", "56385109300"], + ["694060159004076", "110714960415"], + ["692938709846221", "3069278668"], + ["692256779188358", "334766123964"], + ["694868935500203", "229278671951"], + ["695306793383310", "6388626991"], + ["694171502240791", "131633088574"], + ["693674384756903", "60742019099"], + ["692995081481173", "88335279210"], + ["694705321077846", "163614422357"], + ["692022512840924", "64393349602"], + ["695434809969516", "4297820073"], + ["695439107789589", "3472972941"], + ["696658206307928", "6798291250"], + ["695409688454823", "7808539974"], + ["695417496994797", "8669701992"], + ["695966151088158", "9121546150"], + ["695827465071728", "47575184873"], + ["695985258236411", "8012057539"], + ["695582719746255", "4959136304"], + ["695958279055117", "7872033041"], + ["695975272634308", "9985602103"], + ["696966638598682", "5724585625"], + ["697063213586620", "9618590625"], + ["698110109849966", "5662841250"], + ["697058891181929", "3855440625"], + ["697102477151544", "5700529375"], + ["697099026060267", "2856929375"], + ["697108177680919", "8185223750"], + ["696986907191849", "7861878125"], + ["697093680980892", "5345079375"], + ["697176379573845", "5691708750"], + ["702171479611194", "190255211250"], + ["702657540680252", "45786203750"], + ["699410768183716", "5155261915"] + ] + ], + ["0x0F1d41cc51e97DC9d0CAd80DC681777EED3675E3", [["647172198157478", "26005505974"]]], + [ + "0xE79cCABDbF2AA68fDae8D7Fc39654A62b07e12e3", + [ + ["649291066559057", "74148750000"], + ["649898706059057", "74148750000"], + ["648401068619057", "51926940000"], + ["649594886309057", "74148750000"] + ] + ], + [ + "0xc5581ef96bF2ab587306668fdd16E6ed7580c856", + [ + ["647831216014808", "253149984249"], + ["647509510720119", "250325018887"] + ] + ], + [ + "0xdc95f2Ec354b814Fc253846524b13b03be739Cd6", + [ + ["654164513469293", "373628743286"], + ["661537927845790", "525104885508"], + ["663103266591658", "169049978325"], + ["742559423794395", "201609576198"], + ["972139314219125", "533890656472"], + ["979431393566237", "202995680000"], + ["979634389246237", "10000000000"] + ] + ], + ["0x6223dd77dd5ED000592d7A8C745D68B2599C640D", [["656226928313897", "7805953000"]]], + ["0xF2Fb34C4323F9bf4a5c04fE277f96588dDE5316f", [["659295737757685", "32623039080"]]], + ["0x73c09f642C4252f02a7a22801b5555f4f2b7B955", [["656317745950397", "12745012500"]]], + ["0xFbDaA991B6C4e66581CFB0B11B513CA735cC0128", [["647768381299006", "7161118438"]]], + ["0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b", [["652130723745575", "551376150000"]]], + ["0x80915E89Ffe836216866d16Ec4F693053f205179", [["660239782498384", "6253532657"]]], + ["0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5", [["647198203663452", "40303600000"]]], + ["0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db", [["659328360796765", "29744016905"]]], + ["0x31b9084568783Fd9D47c733F3799567379015e6D", [["659195405831758", "100033987828"]]], + ["0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9", [["656434070362897", "32982900000"]]], + ["0x8a9C930896e453cA3D87f1918996423A589Dd529", [["660239781031041", "1467343"]]], + ["0x035bb6b7D76562320dFFb5ec23128ED1541823cf", [["647759835739006", "8545560000"]]], + [ + "0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C", + [ + ["659358104813670", "175120144248"], + ["659533224957918", "706556073123"] + ] + ], + ["0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB", [["656650962775397", "168039500000"]]], + ["0x58e4e9D30Da309624c785069A99709b16276B196", [["656308235880897", "9510069500"]]], + ["0x375C1DC69F05Ff526498C8aCa48805EeC52861d5", [["685835659103948", "1293514654"]]], + ["0x9D1334De1c51a46a9289D6258b986A267b09Ac18", [["685677656801301", "15810994142"]]], + ["0xDF2501f4181Cd63D41ECE0F4EDcf722eEAd58EbD", [["662063032731298", "546645857755"]]], + [ + "0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5", + [ + ["665479968547360", "342600000000"], + ["668086557908591", "690100000000"], + ["688037856465588", "318351804364"], + ["688356208269952", "320953676893"], + ["687964932466621", "72923998967"], + ["667884722593831", "201835314760"], + ["664908507938608", "571460608752"] + ] + ], + ["0x23b7413b721AB75FE7024E7782F9EdcE053f220C", [["667453397655544", "1036783406"]]], + [ + "0xb319c06c96F676110AcC674a2B608ddb3117f43B", + [ + ["672599944217095", "94598000000"], + ["697955818547979", "83800270379"], + ["713871988427841", "141663189223"], + ["711716112826545", "2695189900"], + ["716297300526674", "167255000000"], + ["715574293245379", "109437957582"], + ["715560868266327", "13424979052"], + ["718162604520032", "148493723460"], + ["717698520063826", "155690600000"], + ["721513519187488", "306309267806"], + ["718955338616958", "145018797369"], + ["719388450881073", "150002086275"], + ["719689934699438", "148762745637"], + ["722109403626677", "322801544810"] + ] + ], + [ + "0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e", + [ + ["663808218829746", "74690241246"], + ["663882909070992", "822947782651"] + ] + ], + ["0xDd6Ab3d27d63e7Ed502422918BBcc9D881c9F4B7", [["685842618961823", "9318497890"]]], + ["0xDBB493488991F070176367aF5c57De2B8de5aAb1", [["663033553583023", "65712528539"]]], + ["0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6", [["663099266111562", "4000480096"]]], + ["0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9", [["672803248217095", "34873097638"]]], + ["0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe", [["685836952618602", "5666343221"]]], + [ + "0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631", + [ + ["688710035272973", "272397265638"], + ["840960296451234", "1602671680567"], + ["845256251260005", "1392774986727"], + ["851578437109572", "141565176499"], + ["930741923476848", "58474432063"] + ] + ], + ["0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b", [["692925046604953", "1440836515"]]], + [ + "0x122de1514670141D4c22e5675010B6D65386a9F6", + [ + ["694574785077846", "88383049000"], + ["695196582394395", "56964081161"], + ["695183279638366", "5577741477"], + ["695337036890007", "49547619666"], + ["709442632657024", "6009716700"], + ["729443134053802", "15374981070"], + ["738623048174838", "17365876628"], + ["736215587653365", "69815285464"], + ["740877182108564", "2338515960"], + ["803330678270578", "48039789791"] + ] + ], + ["0x29841AfFE231392BF0826B85488e411C3E5B9cC4", [["692923732371787", "1314233166"]]], + ["0x38293902871C8ee22720A6553585F24De019c78e", [["694033329648897", "6459298878"]]], + ["0xe8AB75921D5F00cC982bE1e8A5Cf435e137319e9", [["693862296947457", "4395105822"]]], + ["0xd480B92941CBe5CeAA56fecED93CED8B76E59615", [["692181315084066", "798685592"]]], + ["0xE2Bf7C6c86921E404f3D2cEc649E2272A92c64fE", [["694170873964491", "628276300"]]], + ["0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408", [["692168843768664", "11565611800"]]], + [ + "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b", + [ + ["695276639702078", "19019153520"], + ["700510367842318", "43462477350"], + ["701396638586078", "1639640204"], + ["704238346156996", "3695060762"], + ["718014928907392", "9255777800"] + ] + ], + [ + "0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59", + [ + ["693757884789202", "9910714625"], + ["696555237254531", "6512126913"], + ["828436629940747", "2572274214"] + ] + ], + [ + "0xD9e38D3487298f9CFB2109f83d93196be5AD7Cd3", + [ + ["695628448981609", "71680000"], + ["697932690524647", "726033140"] + ] + ], + ["0xE1aac3d6e7ad06F19052768ee50ea3165ca1fe70", [["695610864358308", "3827017628"]]], + ["0x87A774178D49C919be273f1022de2ae106E2581e", [["695901977229816", "17354145"]]], + ["0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8", [["695886648382448", "1075350000"]]], + ["0x3489B1E99537432acAe2DEaDd3C289408401d893", [["695792940661609", "20000000000"]]], + [ + "0x40Da1406EeB71083290e2e068926F5FC8D8e0264", + [ + ["695590676020409", "6291400830"], + ["741114169868484", "71"], + ["803977000488083", "1417250000"], + ["803978417738083", "1417250000"] + ] + ], + [ + "0x90777294a457DDe6F7d297F66cCf30e1aD728997", + [ + ["696995360461084", "1887298581"], + ["696994769069974", "591391110"], + ["696979964509301", "6942682548"], + ["697053271972969", "5619208960"], + ["697042806708021", "4889469871"], + ["697165199164808", "4024217651"], + ["697084716091134", "8964889758"], + ["697062746622554", "466964066"], + ["697169223382459", "7156191386"], + ["697153359943473", "6296897794"], + ["697073357257058", "11358834076"], + ["697148038583227", "5321360246"], + ["697136625622211", "11412961016"], + ["701643270228234", "40682056506"], + ["701618207425246", "25062802988"] + ] + ], + ["0x326481a3b0C792Cc7DF1df0c8e76490B5ccd7031", [["697462003533001", "233865679687"]]], + ["0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E", [["698086181129630", "7101122035"]]], + [ + "0x7A1184786066077022F671957299A685b2850BD6", + [ + ["697072832177245", "525079813"], + ["697117243021141", "8627689764"] + ] + ], + [ + "0xDb22E2AC346617C2a7e20F5F0a49009F679cEED9", + [ + ["698258564525194", "22325453"], + ["704172791572212", "479746353"] + ] + ], + ["0xe78483c03249C1D5bb9687f3A95597f0c6360b84", [["697856064607657", "30000000000"]]], + ["0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402", [["697695869212688", "151773247545"]]], + ["0xeA747056c4a5d2A8398EC64425989Ebf099733E9", [["697847642460233", "8422147424"]]], + ["0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e", [["697954557880858", "1260667121"]]], + ["0x3A529A643e5b89555712B02e911AEC6add0d3188", [["698277791318224", "285714285"]]], + ["0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C", [["697886064607657", "22691440968"]]], + [ + "0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB", + [ + ["702124915909346", "46563701848"], + ["707868262543730", "10228948233"], + ["707901130338305", "7915875000"], + ["708439927839846", "23870625000"], + ["708766515171901", "30143670312"], + ["708825794614772", "28726857973"], + ["708587869047280", "20307375000"], + ["708608176422280", "26457093750"], + ["709603038334043", "9060790481"], + ["719197408745202", "37212168484"], + ["719358683562461", "29767318612"] + ] + ], + ["0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2", [["702657437444244", "103236008"]]], + [ + "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4", + [ + ["700818582159479", "22501064889"], + ["705073200197684", "1478254943"], + ["704779160700189", "3358027804"], + ["705082428193884", "8390490226"], + ["704963278251319", "4844561817"], + ["704968122813136", "10208237564"], + ["705289120296487", "6031653730"], + ["705153853331130", "4012581233"] + ] + ], + ["0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521", [["701581145085419", "37062339827"]]], + [ + "0x92e8E8760aBa91467A321230EF3ba081aD3998Fb", + [ + ["699405441346617", "5326837099"], + ["699271005074756", "89554550"] + ] + ], + [ + "0x4034adD1a1A750AA19142218A177D509b7A5448F", + [ + ["704863958816244", "4950268423"], + ["704885255076392", "6933768558"], + ["704787721387632", "1886219723"], + ["704220779674038", "4644226944"], + ["704785880545820", "1840841812"], + ["704985502246493", "5819342790"], + ["704829684434064", "2616399199"], + ["704832962792635", "4354211152"], + ["704880805235240", "4449841152"], + ["705011815742552", "3569433363"], + ["704782518727993", "3361817827"], + ["704903506349772", "4927912318"], + ["704844525778160", "4120838084"], + ["704793803859856", "3945346023"], + ["704826615065261", "3069368803"], + ["705067992445404", "2637229058"], + ["704254774227068", "6948011478"], + ["704758131345903", "1334408552"], + ["704217786697192", "2992976846"], + ["704789607607355", "4196252501"], + ["704746455629079", "2736651405"], + ["704868909084667", "4592612954"], + ["705114316087596", "5924684744"], + ["705124477705145", "3724339951"], + ["705297202258614", "3645902617"], + ["705120240772340", "2352760830"], + ["705385046094478", "6416440826"], + ["705122593533170", "1884171975"], + ["705408379044656", "2923459312"], + ["705211104981808", "2039061143"] + ] + ], + [ + "0xDdBee81969465Bf34C390bdbebb51693aa60872A", + [ + ["704205655117520", "4990270393"], + ["705338392776362", "8462180116"], + ["705425628545624", "10087109324"], + ["705391462535304", "3556630272"], + ["705329714382930", "8465905213"], + ["705488811259829", "8096943325"], + ["707930543676958", "9357187500"], + ["707880777724785", "6672000000"], + ["707742863600211", "1213482835"], + ["705832722517461", "7042747045"], + ["705704703646383", "7056375463"], + ["707744077083046", "6581626316"], + ["705730439516801", "15181735301"], + ["708081968129614", "13680562500"], + ["707952799836604", "8313750000"], + ["707842595017590", "6681000000"], + ["707961290879052", "9556500000"], + ["705821777920352", "10944597109"], + ["708051734339483", "12655593750"], + ["707764396453467", "3405655439"], + ["707750658709362", "8641971662"], + ["707919740645652", "4502537888"], + ["708095822174912", "7458750000"], + ["708418722714846", "21205125000"], + ["708554206703530", "14166562500"], + ["708527392045696", "1759220334"], + ["708140759203304", "16552500000"], + ["708334042048997", "4541772237"], + ["708583377718030", "4491329250"], + ["708402870339846", "15852375000"], + ["708529151266030", "16021687500"], + ["708691820417569", "6826288981"], + ["708934865698884", "13439373437"], + ["708698646706550", "10768570312"], + ["708641764976217", "9545312467"], + ["708651444037897", "5027880322"], + ["708486177656200", "4154496146"], + ["709492513851051", "13816601562"], + ["709710243864014", "12509063265"], + ["709688339552863", "13731252132"], + ["709671899958166", "6654318624"], + ["709666192852147", "5707106019"], + ["709678554276790", "9785276073"], + ["709734977740006", "6498075600"], + ["709654242636632", "11917909114"], + ["709870314867704", "9096334989"], + ["710460867868243", "33400921875"], + ["709977485640084", "41084042452"], + ["710903226562975", "23670471136"], + ["711348151871048", "1857330184"], + ["710844935768367", "16250253890"], + ["710834506069250", "10429699117"], + ["711196004355719", "39224374968"], + ["711260418189665", "18606000000"], + ["710494268790118", "33581054687"], + ["713215936840483", "5532211893"], + ["711718808016445", "60485600000"], + ["712749505526426", "105079500000"], + ["713120110487243", "3786353240"], + ["714990004106503", "166611900000"], + ["715333455019979", "151205600000"], + ["714727913469225", "78606500967"], + ["711848288194577", "2156328854"], + ["712856258402101", "130210400000"], + ["715158664546867", "173240000000"], + ["715484660619979", "2843782982"], + ["714808266664085", "180127000000"], + ["711627994076332", "50659600000"], + ["712478227177567", "3579623519"], + ["716466017242076", "144680200000"], + ["715899465190677", "2469722016"], + ["716132397750173", "163273353517"], + ["716768803489169", "52642714966"] + ] + ], + ["0xa7be8b7C4819eC8edd05178673575F76974B4EaA", [["704234841656996", "3504500000"]]], + ["0xAeB2914f66222Fa7Ad138e128a0575048Bc76032", [["704978331050700", "6652871947"]]], + ["0xDa90d355b1bd4d01F6124fEE7669090d4cbD5778", [["704798591975267", "2100818831"]]], + ["0x30beFd253Ca972800150dBA8114F7A4EF53183D9", [["704778664446188", "496254001"]]], + ["0x9C6f40999C82cd18f31421596Ca3b1C5C5083048", [["705514288315159", "2088841809"]]], + ["0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F", [["705295151950217", "2050308397"]]], + ["0x8687c54f8A431134cDE94Ae3782cB7cba9963D12", [["707626849717109", "84596400000"]]], + ["0x849eA9003Ba70e64D0de047730d47907762174C3", [["707899542084080", "1588254225"]]], + [ + "0xde13B8B32A0c7C1C300Cd4151772b7Ebd605660B", + [ + ["708361137223805", "6298709791"], + ["714079013772115", "129174557467"], + ["717299487205820", "102136812055"] + ] + ], + ["0x579De8E7dA10b45b43a24aC21dA8b1a3a9452D64", [["708463798464846", "22379191354"]]], + ["0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85", [["708651373061258", "70976639"]]], + ["0xf454a5753C12d990A79A69729d1B541a526cD7F5", [["708634633516030", "177860187"]]], + ["0x08e0F0DE1e81051826464043e7Ae513457B27a86", [["709239583276736", "2331841959"]]], + ["0xEa8f1607df5fd7e54BDd76a8Cb9dc4B0970089bD", [["709272520931976", "16488629"]]], + ["0x679AeE8b2fA079B23934A1afB2d7d48DD7244560", [["709216912697001", "6967239311"]]], + ["0x1298751f99f2f715178Cc58fB3779C55e91C26bC", [["709666160880200", "31971947"]]], + ["0xB0827d21e58354aa7ac05adFeb60861f85562376", [["709189528114459", "108280308"]]], + ["0x113560910CE2258559d7E1B38A4dD308C64d6D6a", [["714015471329582", "63542442533"]]], + [ + "0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3", + [ + ["723087615920253", "25027091964"], + ["824974359951649", "30629325526"], + ["829209600931636", "4437963"] + ] + ], + ["0xD0846D7D06f633b2Be43766E434eDf0acE9bA909", [["717854210663826", "1084538296"]]], + [ + "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8", + [ + ["721819828455294", "289575171383"], + ["722751699426468", "239200000000"], + ["732098493261855", "234760000000"], + ["729228464417829", "7477326571"], + ["735868541757303", "263907264047"], + ["736661905946701", "197622058472"], + ["735634090835842", "234450921461"], + ["737484284481751", "179430599503"], + ["737158357870662", "156891853803"], + ["736859528005173", "151122236793"], + ["736402044624442", "259861322259"] + ] + ], + ["0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234", [["718795450032336", "75000000000"]]], + [ + "0x2E40961fd5Abd053128D2e724a61260C30715934", + [ + ["719234620913686", "41555431100"], + ["720005914644509", "136033474375"], + ["732580722114908", "20082877176"], + ["737981782088871", "12839897666"], + ["737935681087505", "22871716433"], + ["740818188207884", "33005857560"], + ["740629807482964", "150688818320"], + ["786953833684661", "269398121130"], + ["781824346256882", "243235296262"], + ["782067581553144", "12267465638"], + ["805927625580808", "9220124675"], + ["921235054115922", "79143367104"] + ] + ], + [ + "0x48070111032FE753d1a72198d29b1811825A264e", + [ + ["729667797719886", "173806994620"], + ["732600804992084", "224577013993"], + ["730678712851459", "188830987043"], + ["732342480501600", "238241613308"], + ["726561304580827", "268948474274"] + ] + ], + ["0x4fE52118aeF6CE3916a27310019af44bbc64cc31", [["729656390040828", "11407679058"]]], + ["0xB651078d1856EB206fB090fd9101f537c33589c2", [["731285511699802", "16663047211"]]], + ["0x48e9E2F211371bD2462e44Af3d2d1aA610437f82", [["728214888648499", "7331625468"]]], + ["0x377f781195d494779a6CcC2AA5C9fF961C683A27", [["738895794225566", "10595565"]]], + ["0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a", [["738007970284137", "401082333"]]], + ["0x088374e1aDf3111F2b77Af3a06d1F9Af8298910b", [["737675246086875", "49190117"]]], + [ + "0x74E096E78789F31061Fc47F6950279A55C03288c", + [ + ["741947593267708", "2663427585"], + ["741688854260083", "366462731"] + ] + ], + ["0xc47214a1a269F5FE7BB5ce462a2df514De60118C", [["742768891113037", "38412816419"]]], + [ + "0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2", + [ + ["743120710578474", "19315015127"], + ["742999734096697", "205872420"], + ["742999522640359", "211456338"], + ["744885474816398", "8759919160"] + ] + ], + ["0xb3b0EFf26C982669a9BA47B31aC6b130A4721819", [["741114169868555", "171030000"]]], + [ + "0x8d98fFF066733b1867e83D1E9563dbe2ad93d933", + [ + ["743141732275121", "229947181"], + ["787609148721716", "501252464"] + ] + ], + [ + "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5", + [ + ["743974165800386", "2585076"], + ["802847562379845", "111751582"] + ] + ], + ["0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", [["741234744629846", "912195631"]]], + ["0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3", [["781580532443581", "43682114862"]]], + [ + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + [ + ["802846543828520", "400610000"], + ["802854972217169", "818667500"], + ["802847106657355", "455722490"], + ["802860116515729", "819222700"], + ["804713823453701", "4590853221"] + ] + ], + ["0x96E4FD50CD0A761528626fc072Da54ADFD2F8593", [["802848328820547", "1466608"]]], + [ + "0xde03A13dfeeE02912Ae07a40c09dB2f99d940b00", + [ + ["790894542941892", "46643670755"], + ["787278749489874", "24409520718"], + ["787516426212822", "92722508894"] + ] + ], + ["0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264", [["801772970204304", "4860922695"]]], + [ + "0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA", + [ + ["805425939868589", "11165929503"], + ["805437105798092", "33745270881"], + ["805470851068973", "16872062514"] + ] + ], + [ + "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", + [ + ["804723861648793", "3702219951"], + ["805404344665518", "7987624361"], + ["805912145565172", "5670211506"] + ] + ], + ["0x06849E470D08bAb98007ff0758C1215a2D750219", [["821672492311173", "160000000000"]]], + ["0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12", [["824965612570458", "897670384"]]], + ["0x4a52078E4706884fc899b2Df902c4D2d852BF527", [["825245695255323", "434385954"]]], + ["0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7", [["825422040281690", "5229504715"]]], + ["0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", [["825246129641277", "5082059700"]]], + [ + "0x5D02957cF469342084e42F9f4132403Ea4c5fE01", + [ + ["828636097593870", "3345435335"], + ["847955778737101", "44336089227"] + ] + ], + ["0x18D467c40568dE5D1Ca2177f576d589c2504dE73", [["828255388496272", "5921542512"]]], + ["0x4888c0030b743c17C89A8AF875155cf75dCfd1E1", [["828431390478544", "5239462203"]]], + ["0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3", [["828771792470419", "39768883344"]]], + ["0xf3dfdAf97eBda5556FCE939C4cf1CB1436138072", [["828811561503065", "22872714395"]]], + ["0x098616F858B4876Ff3BE60BA979d0f7620B53494", [["828995077896677", "10776000000"]]], + [ + "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", + [ + ["829455831521265", "643659978"], + ["973035905649934", "24032791791"] + ] + ], + ["0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E", [["829479271484636", "34649098834"]]], + ["0xfb9f3c5E44f15467066bCCF47026f2E2773bd3F0", [["829693924992790", "146528659"]]], + [ + "0x93C950E36f3C155B2141f1516b7ea5B6D15eD981", + [ + ["829730795586655", "32526495264"], + ["921379066108433", "35738780868"], + ["929384439310039", "89704746985"] + ] + ], + ["0xd9f3F28735fDa3bF7207D19b9aD36fCF2701E329", [["829846521525914", "10000000"]]], + ["0x86642f87887c1313f284DBEc47E79Dc06593b82e", [["829914412604502", "2853000000"]]], + ["0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B", [["832058901590534", "34510450293"]]], + [ + "0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674", + [ + ["830439369465102", "1300464490557"], + ["835708527309577", "4504970931573"], + ["832269218432754", "3056591031171"] + ] + ], + ["0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD", [["843657385645275", "75051323081"]]], + ["0x7Fe78b37A3F8168Cd60C6860d176D22b81181555", [["844244491110052", "232497931186"]]], + ["0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8", [["844505594006708", "1000000"]]], + ["0x925a3A49f8F831879ee7A848524cEfb558921874", [["850685454918538", "477950000000"]]], + ["0x77f2cC48fD7dD11211A64650938a0B4004eBe72b", [["853797557101674", "33461141683"]]], + ["0xd26Cc622697e8f6E580645094d62742EEc9bd4fc", [["862703391397829", "119260488699"]]], + ["0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b", [["862822651886528", "99999995904"]]], + ["0x6974611c9e1437D74c07b5F031779Fb88f19923E", [["869691940601923", "138799301180"]]], + ["0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06", [["898434888668647", "1501381879417"]]], + ["0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0", [["906535984748110", "149022357044"]]], + ["0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672", [["887464147869040", "9112774391"]]], + ["0xe182F132B7aB8639c3B2faEBa87f4c952B4b2319", [["920344600501839", "45066341711"]]], + ["0xEF57259351dfD3BcE1a215C4688Cc67e6DCb258B", [["906377715248110", "158269500000"]]], + ["0x39167e20B785B46EBd856CC86DDc615FeFa51E76", [["886877107069810", "503880761345"]]], + ["0x54e67cA4686b8189D1daB9578B073CDe78fDF874", [["880016381329810", "6860725740000"]]], + [ + "0xa714B49Ff1Bae62E141e6a05bb10356069C31518", + [ + ["921555163102528", "160"], + ["921521067323700", "160"], + ["921555163104442", "159"], + ["921555163103168", "160"], + ["921555163103008", "160"], + ["921555163100288", "160"], + ["921555163100928", "160"], + ["921555163101248", "160"], + ["921521067324980", "160"], + ["921555163103488", "159"], + ["921555163101728", "160"], + ["921555163103965", "159"], + ["921555163100128", "160"], + ["921555163101408", "160"], + ["921555163100608", "160"], + ["921555163101568", "160"], + ["921555163104124", "159"], + ["921521067323860", "160"], + ["921555163104919", "159"], + ["921555163104283", "159"], + ["921555163105078", "159"], + ["921521067324660", "160"], + ["921555163104601", "159"], + ["921555163101088", "160"], + ["921521067323540", "160"], + ["921555163103647", "159"], + ["921521067324340", "160"], + ["921555163102848", "160"], + ["921555163105873", "159"], + ["921521067323380", "160"], + ["921555163105237", "159"], + ["921555163105714", "159"], + ["921555163105555", "159"], + ["921555163106986", "159"], + ["921555163102208", "160"], + ["921521067324180", "160"], + ["921555163104760", "159"], + ["921555163102368", "160"], + ["921555163099968", "160"], + ["921555163101888", "160"], + ["921521067324500", "160"], + ["921555163106350", "159"], + ["921555163105396", "159"], + ["921521067352589", "160"], + ["921555163106827", "159"], + ["921555163103806", "159"], + ["921555163102688", "160"], + ["921521067324820", "160"], + ["921555163106032", "159"], + ["921555163106509", "159"], + ["921521067324020", "160"], + ["921555163100768", "160"], + ["921555163100448", "160"], + ["921555163106191", "159"], + ["921555163102048", "160"], + ["921555163107145", "159"], + ["921555163103328", "160"], + ["921555163106668", "159"], + ["921555169488121", "158"], + ["922214747355326", "158"], + ["921555169487489", "158"], + ["921555163517634", "159"], + ["921939836815561", "158"], + ["921555163517316", "159"], + ["921939836816035", "158"], + ["921555163517475", "159"], + ["921555163518270", "159"], + ["921555164366316", "158"], + ["922214747357064", "158"], + ["921939836815403", "158"], + ["922214747358644", "158"], + ["921555169487963", "158"], + ["921939836928595", "158"], + ["921555163519063", "158"], + ["921555163517793", "159"], + ["921555163518111", "159"], + ["922214747357696", "158"], + ["921555169488437", "158"], + ["922214747356590", "158"], + ["922214747355484", "158"], + ["922214747356274", "158"], + ["921939836816351", "158"], + ["921555163518905", "158"], + ["922214747358012", "158"], + ["921939836928911", "158"], + ["922214747358486", "158"], + ["921555163518747", "158"], + ["921939836815719", "158"], + ["922214747358328", "158"], + ["921555163518588", "159"], + ["922214747357380", "158"], + ["922214747356748", "158"], + ["922214747357854", "158"], + ["922214747356432", "158"], + ["922214747358170", "158"], + ["921555163518429", "159"], + ["921555169487805", "158"], + ["922214747357538", "158"], + ["921555169487647", "158"], + ["921555163517952", "159"], + ["921939836815245", "158"], + ["922214747355958", "158"], + ["921555169488279", "158"], + ["922214747356906", "158"], + ["922214747355800", "158"], + ["921555163519221", "158"], + ["921939836928753", "158"], + ["921939836928437", "158"], + ["921939836816193", "158"], + ["921555169488595", "158"], + ["921939836815087", "158"], + ["922214747357222", "158"], + ["922214747355642", "158"], + ["921939836815877", "158"], + ["922214747689971", "159"], + ["922214747689653", "159"], + ["922214747689493", "160"], + ["922214747690925", "159"], + ["922214747690448", "159"], + ["922214747689812", "159"], + ["922214747690607", "159"], + ["922214747690289", "159"], + ["922214747690766", "159"], + ["922214747689173", "160"], + ["922214747690130", "159"], + ["922214747689333", "160"], + ["922214747691084", "159"], + ["922214747691243", "159"], + ["922214747723175", "159"], + ["922214747692356", "159"], + ["922232922944735", "1110"], + ["922214747691561", "159"], + ["922232922941248", "158"], + ["922214747691402", "159"], + ["922214747724129", "159"], + ["922214747691720", "159"], + ["922214747723334", "159"], + ["922232922943625", "952"], + ["922214747723970", "159"], + ["922214747722855", "160"], + ["922232922941406", "158"], + ["922232922941564", "158"], + ["922214747723493", "159"], + ["922214747723811", "159"], + ["922214747692197", "159"], + ["922232922941722", "476"], + ["922214747692038", "159"], + ["922214747691879", "159"], + ["922214747723652", "159"], + ["922232922942198", "634"], + ["922233389472801", "1268"], + ["922232922942832", "793"], + ["922214747723015", "160"], + ["922233389491814", "158"], + ["922233389474703", "1427"], + ["922233389491498", "158"], + ["922233389485479", "2060"], + ["922233389479458", "1743"], + ["922233389482310", "1902"], + ["922233389491182", "158"], + ["922233389492446", "316"], + ["922233389493078", "158"], + ["922233389476922", "1585"], + ["922233389492762", "158"], + ["922233389488964", "2218"] + ] + ], + [ + "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf", + [ + ["922233389494026", "324510990839"], + ["931686967390427", "49189108815"], + ["948372056649332", "46252901321"], + ["948180044585873", "60164823097"] + ] + ], + ["0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d", [["922632881887979", "15704000000"]]], + ["0xE7cB38c67b4c07FfEA582bCa127fa5B4FFC568Fc", [["930654205477734", "87717999114"]]], + [ + "0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E", + [ + ["931316549943649", "362798420992"], + ["950092088204807", "163405602286"] + ] + ], + ["0xEfe609f34A17C919118C086F81d61ecA579AB2E7", [["933960523170146", "313987459495"]]], + ["0x9980234b18408E07C0F74aCE3dF940B02DD4095c", [["944658495966134", "5308261827"]]], + ["0xf730c862ADFE955Be6a7612E092C123Ba89F50c6", [["947821225912354", "264110000000"]]], + ["0x87104977d80256B00465d3411c6D93A63818723c", [["947585500813146", "134558229863"]]], + ["0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4", [["947157324068361", "48979547469"]]], + [ + "0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869", + [ + ["949411235551363", "20896050000"], + ["972959010985644", "61984567762"] + ] + ], + ["0x214e02A853dCAd01B2ab341e7827a656655A1B81", [["966119151381565", "3425838650831"]]], + ["0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1", [["976523795556384", "16285361281"]]], + ["0x23cAea94eB856767cf71a30824d72Ed5B93aA365", [["976547212156243", "238900000000"]]], + ["0x358B8a97658648Bcf81103b397D571A2FED677eE", [["978364317474455", "32949877099"]]] +] diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js new file mode 100644 index 00000000..ead45fac --- /dev/null +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -0,0 +1,54 @@ +const { upgradeWithNewFacets } = require("../diamond.js"); +const fs = require("fs"); +const { splitEntriesIntoChunksOptimized, updateProgress, retryOperation } = require("../../utils/read.js"); + +/** + * Populates the beanstalk field by reading data from beanstalkPlots.json + * and calling diamond upgrade with InitReplaymentField init script + * @param diamondAddress - The address of the diamond contract + * @param account - The account to use for the transaction + * @param verbose - Whether to log verbose output + */ +async function populateBeanstalkField(diamondAddress, account, verbose = false) { + console.log("-----------------------------------"); + console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots.\n"); + + // Read and parse the JSON file + const plotsPath = "./scripts/beanstalkShipments/data/beanstalkPlots.json"; + const rawPlotData = JSON.parse(fs.readFileSync(plotsPath)); + + // Split into chunks for processing + const targetEntriesPerChunk = 300; + const plotChunks = splitEntriesIntoChunksOptimized(rawPlotData, targetEntriesPerChunk); + console.log(`Starting to process ${plotChunks.length} chunks...`); + + for (let i = 0; i < plotChunks.length; i++) { + await updateProgress(i + 1, plotChunks.length); + if (verbose) { + console.log(`Processing chunk ${i + 1}/${plotChunks.length}`); + console.log(`Chunk contains ${plotChunks[i].length} accounts`); + console.log("-----------------------------------"); + } + + await retryOperation(async () => { + await upgradeWithNewFacets({ + diamondAddress: diamondAddress, + facetNames: [], // No new facets to deploy + initFacetName: "InitReplaymentField", + initArgs: [plotChunks[i]], // Pass the chunk as ReplaymentPlotData[] + verbose: verbose, + account: account + }); + }); + + if (verbose) { + console.log(`Completed chunk ${i + 1}/${plotChunks.length}`); + } + } + + console.log("āœ… Successfully populated Beanstalk field with all plots!"); +} + +module.exports = { + populateBeanstalkField +}; \ No newline at end of file From f5292d566427d8f5052681299e02e6d4c387a6a9 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 31 Jul 2025 16:41:02 +0300 Subject: [PATCH 014/270] make chunking optional --- hardhat.config.js | 6 +- .../populateBeanstalkField.js | 63 ++++++++++++------- 2 files changed, 46 insertions(+), 23 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index 84b8427d..eb4d213d 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -1923,15 +1923,17 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m }); task("populateBeanstalkField", "Populates the beanstalk field with data from beanstalkPlots.json") - .setAction(async () => { + .addOptionalParam("noChunking", "Whether to process all plots in one transaction") + .setAction(async (taskArgs) => { console.log("🌱 Starting Beanstalk field population..."); const verbose = true; + const noChunking = taskArgs.noChunking || true; // Use the diamond deployer as the account const account = await impersonateSigner(L2_PCM); await mintEth(account.address); - await populateBeanstalkField(L2_PINTO, account, verbose); + await populateBeanstalkField(L2_PINTO, account, verbose, noChunking); console.log("āœ… Beanstalk field recreation completed successfully!"); }); diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index ead45fac..ee686266 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -5,11 +5,12 @@ const { splitEntriesIntoChunksOptimized, updateProgress, retryOperation } = requ /** * Populates the beanstalk field by reading data from beanstalkPlots.json * and calling diamond upgrade with InitReplaymentField init script - * @param diamondAddress - The address of the diamond contract - * @param account - The account to use for the transaction - * @param verbose - Whether to log verbose output + * @param {string} diamondAddress - The address of the diamond contract + * @param {Object} account - The account to use for the transaction + * @param {boolean} verbose - Whether to log verbose output + * @param {boolean} noChunking - Whether to pass all plots in one transaction (default: false) */ -async function populateBeanstalkField(diamondAddress, account, verbose = false) { +async function populateBeanstalkField(diamondAddress, account, verbose = false, noChunking = true) { console.log("-----------------------------------"); console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots.\n"); @@ -17,36 +18,56 @@ async function populateBeanstalkField(diamondAddress, account, verbose = false) const plotsPath = "./scripts/beanstalkShipments/data/beanstalkPlots.json"; const rawPlotData = JSON.parse(fs.readFileSync(plotsPath)); - // Split into chunks for processing - const targetEntriesPerChunk = 300; - const plotChunks = splitEntriesIntoChunksOptimized(rawPlotData, targetEntriesPerChunk); - console.log(`Starting to process ${plotChunks.length} chunks...`); - - for (let i = 0; i < plotChunks.length; i++) { - await updateProgress(i + 1, plotChunks.length); - if (verbose) { - console.log(`Processing chunk ${i + 1}/${plotChunks.length}`); - console.log(`Chunk contains ${plotChunks[i].length} accounts`); - console.log("-----------------------------------"); - } + if (noChunking) { + // Process all plots in a single transaction + console.log("Processing all plots in a single transaction..."); + await retryOperation(async () => { await upgradeWithNewFacets({ diamondAddress: diamondAddress, facetNames: [], // No new facets to deploy initFacetName: "InitReplaymentField", - initArgs: [plotChunks[i]], // Pass the chunk as ReplaymentPlotData[] + initArgs: [rawPlotData], // Pass all plots as ReplaymentPlotData[] verbose: verbose, account: account }); }); - if (verbose) { - console.log(`Completed chunk ${i + 1}/${plotChunks.length}`); + console.log("āœ… Successfully populated Beanstalk field with all plots in one transaction!"); + + } else { + // Split into chunks for processing (similar to reseed3 pattern) + const targetEntriesPerChunk = 300; + const plotChunks = splitEntriesIntoChunksOptimized(rawPlotData, targetEntriesPerChunk); + console.log(`Starting to process ${plotChunks.length} chunks...`); + + for (let i = 0; i < plotChunks.length; i++) { + await updateProgress(i + 1, plotChunks.length); + if (verbose) { + console.log(`Processing chunk ${i + 1}/${plotChunks.length}`); + console.log(`Chunk contains ${plotChunks[i].length} accounts`); + console.log("-----------------------------------"); + } + + await retryOperation(async () => { + await upgradeWithNewFacets({ + diamondAddress: diamondAddress, + facetNames: [], // No new facets to deploy + initFacetName: "InitReplaymentField", + initArgs: [plotChunks[i]], // Pass the chunk as ReplaymentPlotData[] + verbose: verbose, + account: account + }); + }); + + if (verbose) { + console.log(`Completed chunk ${i + 1}/${plotChunks.length}`); + } } - } - console.log("āœ… Successfully populated Beanstalk field with all plots!"); + console.log("āœ… Successfully populated Beanstalk field with all plots!"); + } } module.exports = { From f5607a65e6fcdfd740c135fd0a7ef193477fc52d Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 31 Jul 2025 19:53:58 +0300 Subject: [PATCH 015/270] add unripe bdv distributor blueprint --- .../beanstalkShipments/UnripeDistributor.sol | 91 +++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol diff --git a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol new file mode 100644 index 00000000..b7ff01a8 --- /dev/null +++ b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol @@ -0,0 +1,91 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IBeanstalkWellFunction} from "contracts/interfaces/basin/IBeanstalkWellFunction.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; + +contract UnripeDistributor is ERC20, Ownable { + uint256 public constant PRECISION = 1e6; // 6 decimal precision + + /// @dev error thrown when the user tries to claim but has no unripe bdv tokens + error NoUnripeBdvTokens(); + + /// @dev error thrown when the user has already claimed in the current season + error AlreadyClaimed(); + + IBeanstalk public pintoProtocol; + IERC20 public pinto; + + struct UnripeReceiptBdvTokenData { + address receipient; + uint256 bdv; + } + + /// @dev tracks the last season a user claimed their unripe bdv tokens + /// @dev we should make the tokens soul-bound such that they cannot be transferred to prevent double claiming + mapping(address account => uint256 lastSeasonClaimed) public userLastSeasonClaimed; + + constructor( + address _pinto, + address _pintoProtocol + ) ERC20("UnripeBdvReceipt", "urBDV") Ownable(msg.sender) { + pinto = IERC20(_pinto); + pintoProtocol = IBeanstalk(_pintoProtocol); + } + + /** + * @notice Distribute unripe bdv tokens to the old beanstalk participants. + * Called in batches after deployment to make sure we don't run out of gas. + * @param unripeReceipts Array of UnripeReceiptBdvTokenData + */ + function distributeUnripeBdvTokens( + UnripeReceiptBdvTokenData[] memory unripeReceipts + ) external onlyOwner { + // just mint the tokens to the recipients + for (uint256 i = 0; i < unripeReceipts.length; i++) { + _mint(unripeReceipts[i].receipient, unripeReceipts[i].bdv); + } + } + + /** + * @notice Claim unripe bdv tokens for the user. Claim is pro rata based on the user's percentage ownership. + */ + function claimUnripeBdvTokens(address recipient, LibTransfer.To toMode) external { + // check if the user has claimed in the current season + if (userLastSeasonClaimed[msg.sender] == pintoProtocol.time().current) { + revert AlreadyClaimed(); + } + + // check if the user has any unripe bdv tokens + uint256 userUnripeBdv = balanceOf(msg.sender); + if (userUnripeBdv == 0) revert NoUnripeBdvTokens(); + + // calculate the amount of pintos to claim + uint256 userUnripeBdvBalance = balanceOf(msg.sender); + uint256 pintoToClaim = (userUnripeBdvBalance * PRECISION) / totalUnderlyingPinto(); + + // no need to burn here, the user will keep claiming pro rata until repayment is complete + // like a static pinto deposit system + + // send the underlying pintos to the user + // TODO: "From" here is wherever this contract receives the pintos from the shipments + pintoProtocol.transferToken(pinto, recipient, pintoToClaim, LibTransfer.From.INTERNAL, toMode); + + // update the last season claimed + userLastSeasonClaimed[msg.sender] = pintoProtocol.time().current; + } + + /// @dev tracks how many pintos have beed received by the diamond shipments + function totalUnderlyingPinto() public view returns (uint256) { + return pinto.balanceOf(address(this)); + } + + /// @dev override the decimals to 6 decimal places, like bdv + function decimals() public view override returns (uint8) { + return 6; + } +} From 2e0118ff6adcdab47b6c95e4d4d8767dcec68325 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 4 Aug 2025 10:21:49 +0300 Subject: [PATCH 016/270] unripe bdv token redemption with exchange rate --- .../beanstalkShipments/UnripeDistributor.sol | 78 ++++++++++++------- 1 file changed, 50 insertions(+), 28 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol index b7ff01a8..c87fd3bd 100644 --- a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol @@ -10,13 +10,11 @@ import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; contract UnripeDistributor is ERC20, Ownable { uint256 public constant PRECISION = 1e6; // 6 decimal precision + uint256 public constant MIN_SIZE = 1e6; // 1 Pinto /// @dev error thrown when the user tries to claim but has no unripe bdv tokens error NoUnripeBdvTokens(); - /// @dev error thrown when the user has already claimed in the current season - error AlreadyClaimed(); - IBeanstalk public pintoProtocol; IERC20 public pinto; @@ -25,9 +23,14 @@ contract UnripeDistributor is ERC20, Ownable { uint256 bdv; } - /// @dev tracks the last season a user claimed their unripe bdv tokens - /// @dev we should make the tokens soul-bound such that they cannot be transferred to prevent double claiming - mapping(address account => uint256 lastSeasonClaimed) public userLastSeasonClaimed; + /// @dev event emitted when user redeems bdv tokens for underlying pinto + event Redeemed(address indexed user, uint256 amount); + + /// @dev tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. + uint256 public totalDistributed; + + /// @dev tracks the total underlying pdv in the contract + uint256 public totalUnerlyingPdv; constructor( address _pinto, @@ -35,6 +38,8 @@ contract UnripeDistributor is ERC20, Ownable { ) ERC20("UnripeBdvReceipt", "urBDV") Ownable(msg.sender) { pinto = IERC20(_pinto); pintoProtocol = IBeanstalk(_pintoProtocol); + // Approve the Pinto Diamond to spend pinto tokens for deposits + pinto.approve(pintoProtocol, type(uint256).max); } /** @@ -48,38 +53,28 @@ contract UnripeDistributor is ERC20, Ownable { // just mint the tokens to the recipients for (uint256 i = 0; i < unripeReceipts.length; i++) { _mint(unripeReceipts[i].receipient, unripeReceipts[i].bdv); + totalDistributed += unripeReceipts[i].bdv; } } - /** - * @notice Claim unripe bdv tokens for the user. Claim is pro rata based on the user's percentage ownership. - */ - function claimUnripeBdvTokens(address recipient, LibTransfer.To toMode) external { - // check if the user has claimed in the current season - if (userLastSeasonClaimed[msg.sender] == pintoProtocol.time().current) { - revert AlreadyClaimed(); - } - - // check if the user has any unripe bdv tokens - uint256 userUnripeBdv = balanceOf(msg.sender); - if (userUnripeBdv == 0) revert NoUnripeBdvTokens(); + /// redeem bdv tokens for a portion of the underlying pdv + function redeem(address recipient, LibTransfer.To toMode) external { + // check if the user has any bdv tokens + uint256 userBalance = balanceOf(msg.sender); + if (userBalance == 0) revert NoUnripeBdvTokens(); - // calculate the amount of pintos to claim + // calculate the amount of pintos to redeem, pro rata based on the user's percentage ownership of the total distributed bdv tokens uint256 userUnripeBdvBalance = balanceOf(msg.sender); - uint256 pintoToClaim = (userUnripeBdvBalance * PRECISION) / totalUnderlyingPinto(); + uint256 pintoToRedeem = (userUnripeBdvBalance * PRECISION) / totalDistributed; - // no need to burn here, the user will keep claiming pro rata until repayment is complete - // like a static pinto deposit system + // burn the corresponding amount of unripe bdv tokens + _burn(msg.sender, userUnripeBdvBalance); // send the underlying pintos to the user - // TODO: "From" here is wherever this contract receives the pintos from the shipments - pintoProtocol.transferToken(pinto, recipient, pintoToClaim, LibTransfer.From.INTERNAL, toMode); - - // update the last season claimed - userLastSeasonClaimed[msg.sender] = pintoProtocol.time().current; + pintoProtocol.transferToken(pinto, recipient, pintoToRedeem, LibTransfer.From.INTERNAL, toMode); } - /// @dev tracks how many pintos have beed received by the diamond shipments + /// @dev tracks how many underlying pintos are available to redeem function totalUnderlyingPinto() public view returns (uint256) { return pinto.balanceOf(address(this)); } @@ -88,4 +83,31 @@ contract UnripeDistributor is ERC20, Ownable { function decimals() public view override returns (uint8) { return 6; } + + /** + * @notice Deposits distributed pintos to start earning yield, mows if needed + * @dev This function should be called before any redeeming of bdv tokens to update the underlying pdv. + */ + function claim() public { + // Check for newly received pintos, deposit them if needed + if (pinto.balanceOf(address(this)) > MIN_SIZE) { + (, uint256 bdv, ) = pintoProtocol.deposit( + address(pinto), + pinto.balanceOf(address(this)), + LibTransfer.From.EXTERNAL + ); + totalUnerlyingPdv += bdv; + } + + // Check for pinto yield from existing deposits, plant if needed + // Earned pinto also increases the total underlying pdv + if (pintoProtocol.balanceOfEarnedBeans(address(this)) > MIN_SIZE) { + (uint256 earnedPinto, ) = pintoProtocol.plant(); + totalUnerlyingPdv += earnedPinto; + } + // Attempt to mow if the protocol did not plant (planting invokes a mow). + else if (pintoProtocol.balanceOfGrownStalk(address(this), address(pinto)) > 0) { + pintoProtocol.mow(address(this), address(pinto)); + } + } } From 65092c330ee449ceb60439c07aa6a7d926646381 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 4 Aug 2025 10:49:26 +0300 Subject: [PATCH 017/270] remove depositing from unripe distribution --- .../beanstalkShipments/UnripeDistributor.sol | 78 ++++++++----------- 1 file changed, 32 insertions(+), 46 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol index c87fd3bd..bcad3c29 100644 --- a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol @@ -29,16 +29,13 @@ contract UnripeDistributor is ERC20, Ownable { /// @dev tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. uint256 public totalDistributed; - /// @dev tracks the total underlying pdv in the contract - uint256 public totalUnerlyingPdv; - constructor( address _pinto, address _pintoProtocol ) ERC20("UnripeBdvReceipt", "urBDV") Ownable(msg.sender) { pinto = IERC20(_pinto); pintoProtocol = IBeanstalk(_pintoProtocol); - // Approve the Pinto Diamond to spend pinto tokens for deposits + // Approve the Pinto Diamond to spend pinto tokens for transfers pinto.approve(pintoProtocol, type(uint256).max); } @@ -57,57 +54,46 @@ contract UnripeDistributor is ERC20, Ownable { } } - /// redeem bdv tokens for a portion of the underlying pdv - function redeem(address recipient, LibTransfer.To toMode) external { - // check if the user has any bdv tokens - uint256 userBalance = balanceOf(msg.sender); - if (userBalance == 0) revert NoUnripeBdvTokens(); - - // calculate the amount of pintos to redeem, pro rata based on the user's percentage ownership of the total distributed bdv tokens - uint256 userUnripeBdvBalance = balanceOf(msg.sender); - uint256 pintoToRedeem = (userUnripeBdvBalance * PRECISION) / totalDistributed; - + /** + * @notice Redeems a given amount of unripe bdv tokens for underlying pinto + * @param amount the amount of unripe bdv tokens to redeem + * @param recipient the address to send the underlying pinto to + * @param toMode the mode to send the underlying pinto in + */ + function redeem(uint256 amount, address recipient, LibTransfer.To toMode) external { + uint256 pintoToRedeem = unripeToUnerlyingPinto(amount); // burn the corresponding amount of unripe bdv tokens - _burn(msg.sender, userUnripeBdvBalance); - + _burn(msg.sender, amount); // send the underlying pintos to the user - pintoProtocol.transferToken(pinto, recipient, pintoToRedeem, LibTransfer.From.INTERNAL, toMode); + pintoProtocol.transferToken( + pinto, + recipient, + pintoToRedeem, + LibTransfer.From.EXTERNAL, + toMode + ); + } + + /** + * @dev Gets the amount of underlying pinto that corresponds to a given amount of unripe bdv tokens + * according to the current exchange rate. + * @param amount the amount of unripe bdv tokens to redeem + */ + function unripeToUnerlyingPinto(uint256 amount) public view returns (uint256) { + if (totalSupply() == 0) return 0; + return (amount * totalUnderlyingPinto()) / totalSupply(); } - /// @dev tracks how many underlying pintos are available to redeem + /** + * @dev Tracks how many underlying pintos are available to redeem + * @return the total amount of underlying pintos in the contract + */ function totalUnderlyingPinto() public view returns (uint256) { return pinto.balanceOf(address(this)); } - /// @dev override the decimals to 6 decimal places, like bdv + /// @dev override the decimals to 6 decimal places, BDV has 6 decimals function decimals() public view override returns (uint8) { return 6; } - - /** - * @notice Deposits distributed pintos to start earning yield, mows if needed - * @dev This function should be called before any redeeming of bdv tokens to update the underlying pdv. - */ - function claim() public { - // Check for newly received pintos, deposit them if needed - if (pinto.balanceOf(address(this)) > MIN_SIZE) { - (, uint256 bdv, ) = pintoProtocol.deposit( - address(pinto), - pinto.balanceOf(address(this)), - LibTransfer.From.EXTERNAL - ); - totalUnerlyingPdv += bdv; - } - - // Check for pinto yield from existing deposits, plant if needed - // Earned pinto also increases the total underlying pdv - if (pintoProtocol.balanceOfEarnedBeans(address(this)) > MIN_SIZE) { - (uint256 earnedPinto, ) = pintoProtocol.plant(); - totalUnerlyingPdv += earnedPinto; - } - // Attempt to mow if the protocol did not plant (planting invokes a mow). - else if (pintoProtocol.balanceOfGrownStalk(address(this), address(pinto)) > 0) { - pintoProtocol.mow(address(this), address(pinto)); - } - } } From 12e296c90d8f8842dcd0256443de438c00d5d452 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 4 Aug 2025 10:59:01 +0300 Subject: [PATCH 018/270] upgradeability + cleanup --- .../beanstalkShipments/UnripeDistributor.sol | 53 +++++++++---------- 1 file changed, 26 insertions(+), 27 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol index bcad3c29..4afee14e 100644 --- a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol @@ -4,50 +4,48 @@ pragma solidity ^0.8.20; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IBeanstalkWellFunction} from "contracts/interfaces/basin/IBeanstalkWellFunction.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; -import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import {ERC20Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; +import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; +import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; -contract UnripeDistributor is ERC20, Ownable { - uint256 public constant PRECISION = 1e6; // 6 decimal precision - uint256 public constant MIN_SIZE = 1e6; // 1 Pinto - - /// @dev error thrown when the user tries to claim but has no unripe bdv tokens - error NoUnripeBdvTokens(); +contract UnripeDistributor is Initializable, ERC20Upgradeable, OwnableUpgradeable { + struct UnripeBdvTokenData { + address receipient; + uint256 bdv; + } + /// @dev the Pinto Diamond contract IBeanstalk public pintoProtocol; + /// @dev the Pinto token IERC20 public pinto; - struct UnripeReceiptBdvTokenData { - address receipient; - uint256 bdv; - } + /// @dev Tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. + uint256 public totalDistributed; /// @dev event emitted when user redeems bdv tokens for underlying pinto - event Redeemed(address indexed user, uint256 amount); + event Redeemed(address indexed user, uint256 unripeBdvAmount, uint256 underlyingPintoAmount); - /// @dev tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. - uint256 public totalDistributed; + /// @custom:oz-upgrades-unsafe-allow constructor + constructor() { + _disableInitializers(); + } - constructor( - address _pinto, - address _pintoProtocol - ) ERC20("UnripeBdvReceipt", "urBDV") Ownable(msg.sender) { + function initialize(address _pinto, address _pintoProtocol) public initializer { + __ERC20_init("UnripeBdvToken", "urBDV"); + __Ownable_init(msg.sender); pinto = IERC20(_pinto); pintoProtocol = IBeanstalk(_pintoProtocol); // Approve the Pinto Diamond to spend pinto tokens for transfers - pinto.approve(pintoProtocol, type(uint256).max); + pinto.approve(_pintoProtocol, type(uint256).max); } /** * @notice Distribute unripe bdv tokens to the old beanstalk participants. * Called in batches after deployment to make sure we don't run out of gas. - * @param unripeReceipts Array of UnripeReceiptBdvTokenData + * @param unripeReceipts Array of UnripeBdvTokenData */ - function distributeUnripeBdvTokens( - UnripeReceiptBdvTokenData[] memory unripeReceipts - ) external onlyOwner { - // just mint the tokens to the recipients + function batchDistribute(UnripeBdvTokenData[] memory unripeReceipts) external onlyOwner { for (uint256 i = 0; i < unripeReceipts.length; i++) { _mint(unripeReceipts[i].receipient, unripeReceipts[i].bdv); totalDistributed += unripeReceipts[i].bdv; @@ -61,7 +59,7 @@ contract UnripeDistributor is ERC20, Ownable { * @param toMode the mode to send the underlying pinto in */ function redeem(uint256 amount, address recipient, LibTransfer.To toMode) external { - uint256 pintoToRedeem = unripeToUnerlyingPinto(amount); + uint256 pintoToRedeem = unripeToUnderlyingPinto(amount); // burn the corresponding amount of unripe bdv tokens _burn(msg.sender, amount); // send the underlying pintos to the user @@ -72,6 +70,7 @@ contract UnripeDistributor is ERC20, Ownable { LibTransfer.From.EXTERNAL, toMode ); + emit Redeemed(msg.sender, amount, pintoToRedeem); } /** @@ -79,7 +78,7 @@ contract UnripeDistributor is ERC20, Ownable { * according to the current exchange rate. * @param amount the amount of unripe bdv tokens to redeem */ - function unripeToUnerlyingPinto(uint256 amount) public view returns (uint256) { + function unripeToUnderlyingPinto(uint256 amount) public view returns (uint256) { if (totalSupply() == 0) return 0; return (amount * totalUnderlyingPinto()) / totalSupply(); } From 89887471176b680a0e106fefaa42af0ad8b6cde4 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 5 Aug 2025 18:31:56 +0300 Subject: [PATCH 019/270] modify shipment planner contract to account for 2 separate payback contracts for silo and fert --- contracts/ecosystem/ShipmentPlanner.sol | 135 +++++++++++++----- .../beanstalkShipments/UnripeDistributor.sol | 2 + contracts/interfaces/IBarnPayback.sol | 9 ++ contracts/interfaces/IPayback.sol | 2 + contracts/interfaces/ISiloPayback.sol | 9 ++ contracts/mocks/MockPayback.sol | 9 ++ contracts/mocks/MockUnripeDistributor.sol | 95 ++++++++++++ .../input/deploymentParams-pi-3.json | 20 +-- test/foundry/VerifyDeployment.t.sol | 2 +- .../ecosystem/BeanstalkShipmentsTest.t.sol | 32 +++++ test/foundry/utils/ShipmentDeployer.sol | 2 +- 11 files changed, 270 insertions(+), 47 deletions(-) create mode 100644 contracts/interfaces/IBarnPayback.sol create mode 100644 contracts/interfaces/ISiloPayback.sol create mode 100644 contracts/mocks/MockUnripeDistributor.sol create mode 100644 test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index f2caf9bc..dd35b28b 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -4,8 +4,9 @@ pragma solidity ^0.8.20; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {Season} from "contracts/beanstalk/storage/System.sol"; -import {IPayback} from "contracts/interfaces/IPayback.sol"; import {IBudget} from "contracts/interfaces/IBudget.sol"; +import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; +import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; /** * @notice Constraints of how many Beans to send to a given route at the current time. @@ -37,11 +38,12 @@ interface IBeanstalk { contract ShipmentPlanner { uint256 internal constant PRECISION = 1e18; - uint256 constant FIELD_POINTS = 48_500_000_000_000_000; - uint256 constant SILO_POINTS = 48_500_000_000_000_000; - uint256 constant BUDGET_POINTS = 3_000_000_000_000_000; - uint256 constant PAYBACK_FIELD_POINTS = 1_000_000_000_000_000; - uint256 constant PAYBACK_CONTRACT_POINTS = 2_000_000_000_000_000; + uint256 constant FIELD_POINTS = 48_500_000_000_000_000; // 48.5% + uint256 constant SILO_POINTS = 48_500_000_000_000_000; // 48.5% + uint256 constant BUDGET_POINTS = 3_000_000_000_000_000; // 3% + uint256 constant PAYBACK_FIELD_POINTS = 1_000_000_000_000_000; // 1% + uint256 constant PAYBACK_SILO_POINTS = 1_000_000_000_000_000; // 1% + uint256 constant PAYBACK_BARN_POINTS = 1_000_000_000_000_000; // 1% uint256 constant SUPPLY_BUDGET_FLIP = 1_000_000_000e6; @@ -100,11 +102,15 @@ contract ShipmentPlanner { uint256 paybackRatio = PRECISION - budgetMintRatio(); require(paybackRatio > 0); - (uint256 fieldId, address paybackContract) = abi.decode(data, (uint256, address)); + (uint256 fieldId, address siloPaybackContract, address barnPaybackContract) = abi.decode( + data, + (uint256, address, address) + ); (bool success, uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining( - paybackContract + siloPaybackContract, + barnPaybackContract ); - // If the contract does not exist yet. + // If the contracts do not exist yet, return the default points and cap. if (!success) { return ShipmentPlan({ @@ -113,16 +119,23 @@ contract ShipmentPlanner { }); } - // Add strict % limits. Silo will be paid off first. + // Add strict % limits. + // Order of payback based on size of debt is: + // 1. barn: fert will be paid off first + // 2. silo: silo will be paid off second + // 3. field: field will be paid off last uint256 points; uint256 cap = beanstalk.totalUnharvestable(fieldId); - if (barnRemaining == 0) { - points = PAYBACK_FIELD_POINTS + PAYBACK_CONTRACT_POINTS; + // silo is second thing to be paid off so if remaining is 0 then all points go to field + if (siloRemaining == 0) { + points = PAYBACK_FIELD_POINTS + PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS; cap = min(cap, (beanstalk.time().standardMintedBeans * 3) / 100); // 3% - } else if (siloRemaining == 0) { - points = PAYBACK_FIELD_POINTS + (PAYBACK_CONTRACT_POINTS * 1) / 4; + } else if (barnRemaining == 0) { + // if silo remaining is 0 then 1.5% of all mints goes to fert and 1.5% goes to the field + points = PAYBACK_FIELD_POINTS + ((PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS) * 1) / 4; cap = min(cap, (beanstalk.time().standardMintedBeans * 15) / 1000); // 1.5% } else { + // else, all are active and 1% of all mints goes to field, 1% goes to silo, 1% goes to fert points = PAYBACK_FIELD_POINTS; cap = min(cap, (beanstalk.time().standardMintedBeans * 1) / 100); // 1% } @@ -133,40 +146,87 @@ contract ShipmentPlanner { return ShipmentPlan({points: points, cap: beanstalk.totalUnharvestable(fieldId)}); } - /** - * @notice Get the current points and cap for payback shipments. - * @dev data param is unused data to configure plan details. - * @dev If the payback contract does not yet exist, mints are still allocated to it. - */ - function getPaybackPlan( + function getPaybackSiloPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { + // get the payback ratio to scale the points if needed uint256 paybackRatio = PRECISION - budgetMintRatio(); require(paybackRatio > 0); - - address paybackContract = abi.decode(data, (address)); + // perform a static call to the silo payback contract to get the remaining silo debt + (address siloPaybackContract, address barnPaybackContract) = abi.decode( + data, + (address, address) + ); (bool success, uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining( - paybackContract + siloPaybackContract, + barnPaybackContract ); - // If the contract does not exist yet, no cap. + // If the contracts do not exist yet, return the default points and cap. if (!success) { - return ShipmentPlan({points: PAYBACK_CONTRACT_POINTS, cap: type(uint256).max}); + return ShipmentPlan({points: PAYBACK_SILO_POINTS, cap: type(uint256).max}); } + // if silo is paid off, no need to send pinto to it. + if (siloRemaining == 0) return ShipmentPlan({points: 0, cap: siloRemaining}); + uint256 points; - uint256 cap = siloRemaining + barnRemaining; - // Add strict % limits. Silo will be paid off first. - if (siloRemaining == 0) { - points = (PAYBACK_CONTRACT_POINTS * 3) / 4; + uint256 cap = siloRemaining; + // if silo is not paid off and fert is paid off then we need to increase the + // the points that should go to the silo to 1,5% (finalAllocation = 1,5% to silo, 1,5% to field) + if (barnRemaining == 0) { + // half of the paid off fert points go to silo + points = PAYBACK_SILO_POINTS + (PAYBACK_BARN_POINTS / 2); // 1.5% cap = min(cap, (beanstalk.time().standardMintedBeans * 15) / 1000); // 1.5% } else { - points = PAYBACK_CONTRACT_POINTS; - cap = min(cap, (beanstalk.time().standardMintedBeans * 2) / 100); // 2% + // if silo is not paid off and fert is not paid off then just assign the regular 1% points + points = PAYBACK_SILO_POINTS; + cap = min(cap, (beanstalk.time().standardMintedBeans * 1) / 100); // 1% } - // Scale points by distance to threshold. + // Scale the points by the payback ratio points = (points * paybackRatio) / PRECISION; + return ShipmentPlan({points: points, cap: cap}); + } + + function getPaybackBarnPlan( + bytes memory data + ) external view returns (ShipmentPlan memory shipmentPlan) { + // get the payback ratio to scale the points if needed + uint256 paybackRatio = PRECISION - budgetMintRatio(); + require(paybackRatio > 0); + + // perform a static call to the fert payback contract to get the remaining fert debt + (address siloPaybackContract, address barnPaybackContract) = abi.decode( + data, + (address, address) + ); + (bool success, uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining( + siloPaybackContract, + barnPaybackContract + ); + if (!success) { + return ShipmentPlan({points: PAYBACK_SILO_POINTS, cap: type(uint256).max}); + } + // if fert is paid off, no need to send pintos to it. + if (barnRemaining == 0) return ShipmentPlan({points: 0, cap: barnRemaining}); + + uint256 points; + uint256 cap = barnRemaining; + // if fert is not paid off and silo is paid off then we need to increase the + // the points that should go to the fert to 1,5% (finalAllocation = 1,5% to barn, 1,5% to field) + if (siloRemaining == 0) { + // half of the paid off silo points go to fert + points = PAYBACK_BARN_POINTS + (PAYBACK_SILO_POINTS / 2); // 1.5% + cap = min(cap, (beanstalk.time().standardMintedBeans * 15) / 100); // 1.5% + } else { + // if fert is not paid off and silo is not paid off then just assign the regular 1% points + points = PAYBACK_BARN_POINTS; + cap = min(cap, (beanstalk.time().standardMintedBeans * 1) / 100); // 1% + } + + // Scale the points by the payback ratio + points = (points * paybackRatio) / PRECISION; return ShipmentPlan({points: points, cap: cap}); } @@ -193,15 +253,16 @@ contract ShipmentPlanner { } function paybacksRemaining( - address paybackContract + address siloPaybackContract, + address barnPaybackContract ) private view returns (bool totalSuccess, uint256 siloRemaining, uint256 barnRemaining) { - (bool success, bytes memory returnData) = paybackContract.staticcall( - abi.encodeWithSelector(IPayback.siloRemaining.selector) + (bool success, bytes memory returnData) = siloPaybackContract.staticcall( + abi.encodeWithSelector(ISiloPayback.siloRemaining.selector) ); totalSuccess = success; siloRemaining = success ? abi.decode(returnData, (uint256)) : 0; - (success, returnData) = paybackContract.staticcall( - abi.encodeWithSelector(IPayback.barnRemaining.selector) + (success, returnData) = barnPaybackContract.staticcall( + abi.encodeWithSelector(IBarnPayback.barnRemaining.selector) ); totalSuccess = totalSuccess && success; barnRemaining = success ? abi.decode(returnData, (uint256)) : 0; diff --git a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol index 4afee14e..aed21626 100644 --- a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol @@ -95,4 +95,6 @@ contract UnripeDistributor is Initializable, ERC20Upgradeable, OwnableUpgradeabl function decimals() public view override returns (uint8) { return 6; } + + // TODO: Add a siloRemaining function to check how much is left to pay off } diff --git a/contracts/interfaces/IBarnPayback.sol b/contracts/interfaces/IBarnPayback.sol new file mode 100644 index 00000000..3f5e9bfe --- /dev/null +++ b/contracts/interfaces/IBarnPayback.sol @@ -0,0 +1,9 @@ +//SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +// This is the interface for the fertilizer payback contract. +// It is used to get the remaining fertilizer debt. +interface IBarnPayback { + // The amount of Bean remaining to pay back barn. + function barnRemaining() external view returns (uint256); +} diff --git a/contracts/interfaces/IPayback.sol b/contracts/interfaces/IPayback.sol index c38b9f30..22ed87e8 100644 --- a/contracts/interfaces/IPayback.sol +++ b/contracts/interfaces/IPayback.sol @@ -1,6 +1,8 @@ //SPDX-License-Identifier: MIT pragma solidity ^0.8.20; + +// Note: Old Assumption that the Payback contract is just one interface IPayback { // The amount of Bean remaining to pay back silo. function siloRemaining() external view returns (uint256); diff --git a/contracts/interfaces/ISiloPayback.sol b/contracts/interfaces/ISiloPayback.sol new file mode 100644 index 00000000..96365530 --- /dev/null +++ b/contracts/interfaces/ISiloPayback.sol @@ -0,0 +1,9 @@ +//SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +// This is the interface for the unripe silo distributor payback contract. +// It is used to get the remaining silo debt. +interface ISiloPayback { + // The amount of Bean remaining to pay back silo. + function siloRemaining() external view returns (uint256); +} diff --git a/contracts/mocks/MockPayback.sol b/contracts/mocks/MockPayback.sol index 0c16c240..5cdbd137 100644 --- a/contracts/mocks/MockPayback.sol +++ b/contracts/mocks/MockPayback.sol @@ -5,6 +5,15 @@ pragma solidity ^0.8.20; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {IPayback} from "contracts/interfaces/IPayback.sol"; + +// TODO: This is an old assumpttion on how the payback contract will be used. +// We need to update this to reflect the new structure. +// We will have 2 payback contracts: +// 1 for unripe silo distributor +// 1 for fertilizer +// So the contract will be split into 2 contracts: +// 1 for unripe silo distributor with siloRemaining +// 1 for fertilizer with barnRemaining contract MockPayback is IPayback { uint256 constant INITIAL_REMAINING = 1_000_000_000e6; diff --git a/contracts/mocks/MockUnripeDistributor.sol b/contracts/mocks/MockUnripeDistributor.sol new file mode 100644 index 00000000..d8a1d985 --- /dev/null +++ b/contracts/mocks/MockUnripeDistributor.sol @@ -0,0 +1,95 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IBeanstalkWellFunction} from "contracts/interfaces/basin/IBeanstalkWellFunction.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; + + +// TODO: Change this with non redeemable tokens that claim before a transfer and indexes etc. +contract MockUnripeDistributor is ERC20, Ownable { + struct UnripeBdvTokenData { + address receipient; + uint256 bdv; + } + + /// @dev the Pinto Diamond contract + IBeanstalk public pintoProtocol; + /// @dev the Pinto token + IERC20 public pinto; + + /// @dev Tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. + uint256 public totalDistributed; + + /// @dev event emitted when user redeems bdv tokens for underlying pinto + event Redeemed(address indexed user, uint256 unripeBdvAmount, uint256 underlyingPintoAmount); + + constructor( + address _pinto, + address _pintoProtocol + ) ERC20("UnripeBdvToken", "urBDV") Ownable(msg.sender) { + pinto = IERC20(_pinto); + pintoProtocol = IBeanstalk(_pintoProtocol); + // Approve the Pinto Diamond to spend pinto tokens for transfers + pinto.approve(_pintoProtocol, type(uint256).max); + } + + /** + * @notice Distribute unripe bdv tokens to the old beanstalk participants. + * Called in batches after deployment to make sure we don't run out of gas. + * @param unripeReceipts Array of UnripeBdvTokenData + */ + function batchDistribute(UnripeBdvTokenData[] memory unripeReceipts) external onlyOwner { + for (uint256 i = 0; i < unripeReceipts.length; i++) { + _mint(unripeReceipts[i].receipient, unripeReceipts[i].bdv); + totalDistributed += unripeReceipts[i].bdv; + } + } + + /** + * @notice Redeems a given amount of unripe bdv tokens for underlying pinto + * @param amount the amount of unripe bdv tokens to redeem + * @param recipient the address to send the underlying pinto to + * @param toMode the mode to send the underlying pinto in + */ + function redeem(uint256 amount, address recipient, LibTransfer.To toMode) external { + uint256 pintoToRedeem = unripeToUnderlyingPinto(amount); + // burn the corresponding amount of unripe bdv tokens + _burn(msg.sender, amount); + // send the underlying pintos to the user + pintoProtocol.transferToken( + pinto, + recipient, + pintoToRedeem, + LibTransfer.From.EXTERNAL, + toMode + ); + emit Redeemed(msg.sender, amount, pintoToRedeem); + } + + /** + * @dev Gets the amount of underlying pinto that corresponds to a given amount of unripe bdv tokens + * according to the current exchange rate. + * @param amount the amount of unripe bdv tokens to redeem + */ + function unripeToUnderlyingPinto(uint256 amount) public view returns (uint256) { + if (totalSupply() == 0) return 0; + return (amount * totalUnderlyingPinto()) / totalSupply(); + } + + /** + * @dev Tracks how many underlying pintos are available to redeem + * @return the total amount of underlying pintos in the contract + */ + function totalUnderlyingPinto() public view returns (uint256) { + return pinto.balanceOf(address(this)); + } + + /// @dev override the decimals to 6 decimal places, BDV has 6 decimals + function decimals() public view override returns (uint8) { + return 6; + } +} diff --git a/scripts/deployment/parameters/input/deploymentParams-pi-3.json b/scripts/deployment/parameters/input/deploymentParams-pi-3.json index 226c0df9..adc4a98d 100644 --- a/scripts/deployment/parameters/input/deploymentParams-pi-3.json +++ b/scripts/deployment/parameters/input/deploymentParams-pi-3.json @@ -180,16 +180,20 @@ "data": "0x000000000000000000000000b0cdb715D8122bd976a30996866Ebe5e51bb18b0" }, { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", - "planSelector": "0x6fc9267a", - "recipient": "0x2", - "data": "0x00000000000000000000000000000000000000000000000000000000000000010000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" + // Call to make from + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", // ShipmentPlanner + "planSelector": "0x6fc9267a", // getPaybackFieldPlan + "recipient": "0x2", // FIELD RECEIPIENT, + "data": "0x00000000000000000000000000000000000000000000000000000000000000010000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" // DATA: abi.encode(fieldId, paybackContract) }, + // TODO: This needs changing since there will be 2 payback contracts. + // 1 for unripe silo distributor + // 1 for fertilizer { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", - "planSelector": "0x441d1e5b", - "recipient": "0x4", - "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", // ShipmentPlanner + "planSelector": "0x441d1e5b", // getPaybackPlan + "recipient": "0x4", // EXTERNAL_BALANCE + "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" // DATA: abi.encode(paybackContract) } ], "wellComponents": { diff --git a/test/foundry/VerifyDeployment.t.sol b/test/foundry/VerifyDeployment.t.sol index 2d023ec8..6a6c5254 100644 --- a/test/foundry/VerifyDeployment.t.sol +++ b/test/foundry/VerifyDeployment.t.sol @@ -515,7 +515,7 @@ contract Legacy_VerifyDeploymentTest is TestHelper { assertEq(uint8(routes[3].recipient), uint8(ShipmentRecipient.FIELD)); assertEq(routes[3].data, abi.encode(PAYBACK_FIELD_ID, PCM)); // payback contract (0x04) - assertEq(routes[4].planSelector, ShipmentPlanner.getPaybackPlan.selector); + // assertEq(routes[4].planSelector, ShipmentPlanner.getPaybackPlan.selector); assertEq(uint8(routes[4].recipient), uint8(ShipmentRecipient.EXTERNAL_BALANCE)); assertEq(routes[4].data, abi.encode(PCM)); } diff --git a/test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol b/test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol new file mode 100644 index 00000000..40d71be4 --- /dev/null +++ b/test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol @@ -0,0 +1,32 @@ +// SPDX-License-Identifier: MIT +pragma solidity >=0.6.0 <0.9.0; +pragma abicoder v2; + +import {TestHelper} from "test/foundry/utils/TestHelper.sol"; +import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; +import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; +import {MockUnripeDistributor} from "contracts/mocks/MockUnripeDistributor.sol"; + +contract BeanstalkShipmentsTest is TestHelper { + + MockUnripeDistributor unripeDistributor; + + // we need to: + // - 1. recreate a mock beanstalk repayment field with a mock podline + // - 2. deploy the unripe distributor (make a mock that is non upgradable for ease of testing) + // - 3. make sure shipments are set correctly in the initialization in ShipmentDeployer.sol + // - 4. get to a supply where the beanstalk shipments kick in + // - 5. make the system print, check distribution in each contract + // - 6. for each component, make sure everything is set correctly + function setUp() public { + initializeBeanstalkTestState(true, false); + + // add new field, init some plots (see sun.t.sol) + + // deploy unripe distributor + unripeDistributor = new MockUnripeDistributor(PINTO, BEANSTALK); + + // upddate routes here + setRoutes_all(); + } +} diff --git a/test/foundry/utils/ShipmentDeployer.sol b/test/foundry/utils/ShipmentDeployer.sol index 31719d6f..f16de961 100644 --- a/test/foundry/utils/ShipmentDeployer.sol +++ b/test/foundry/utils/ShipmentDeployer.sol @@ -194,7 +194,7 @@ contract ShipmentDeployer is Utils { planContract: shipmentPlanner, planSelector: IShipmentPlanner.getPaybackPlan.selector, recipient: IBeanstalk.ShipmentRecipient.EXTERNAL_BALANCE, - data: abi.encode(payback) + data: abi.encode(payback) // sends to payback contract }); vm.prank(deployer); From 27c422693a56dd1300ba0a7b0204d71184c4f80f Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 6 Aug 2025 18:35:43 +0300 Subject: [PATCH 020/270] init script for new routes, update task to handle deployment and initialization flow --- .../init/shipments/InitBeanstalkShipments.sol | 45 +++++++ .../init/shipments/InitReplaymentField.sol | 1 - .../beanstalkShipments/BarnPayback.sol | 0 ...{UnripeDistributor.sol => SiloPayback.sol} | 4 +- ...ipeDistributor.sol => MockSiloPayback.sol} | 2 +- hardhat.config.js | 54 ++++++-- .../data/unripeBdvTokens.json | 12 ++ .../data/updatedShipmentRoutes.json | 38 ++++++ scripts/beanstalkShipments/deployContracts.js | 124 ++++++++++++++++++ .../input/deploymentParams-pi-3.json | 20 ++- .../ecosystem/BeanstalkShipmentsTest.t.sol | 6 +- 11 files changed, 279 insertions(+), 27 deletions(-) create mode 100644 contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol create mode 100644 contracts/ecosystem/beanstalkShipments/BarnPayback.sol rename contracts/ecosystem/beanstalkShipments/{UnripeDistributor.sol => SiloPayback.sol} (95%) rename contracts/mocks/{MockUnripeDistributor.sol => MockSiloPayback.sol} (98%) create mode 100644 scripts/beanstalkShipments/data/unripeBdvTokens.json create mode 100644 scripts/beanstalkShipments/data/updatedShipmentRoutes.json create mode 100644 scripts/beanstalkShipments/deployContracts.js diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol new file mode 100644 index 00000000..f659604a --- /dev/null +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -0,0 +1,45 @@ +/* + SPDX-License-Identifier: MIT +*/ + +pragma solidity ^0.8.20; + +import "contracts/libraries/LibAppStorage.sol"; +import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; +import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; +import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; + +/** + * @title InitBeanstalkShipments modifies the existing routes to split the payback shipments into 2 routes. + * The first route is the silo payback contract and the second route is the barn payback contract. + **/ +contract InitBeanstalkShipments { + function init(ShipmentRoute[] calldata routes) external { + AppStorage storage s = LibAppStorage.diamondStorage(); + + // deploy the new shipment planner + address shipmentPlanner = address(new ShipmentPlanner(address(this), s.sys.bean)); + + // set the shipment routes + _resetShipmentRoutes(shipmentPlanner, routes); + } + + /** + * @notice Sets the shipment routes to the field, silo and dev budget. + * @dev Solidity does not support direct assignment of array structs to Storage. + */ + function _resetShipmentRoutes( + address shipmentPlanner, + ShipmentRoute[] calldata routes + ) internal { + AppStorage storage s = LibAppStorage.diamondStorage(); + // pop all the old routes that use the old shipment planner + while (s.sys.shipmentRoutes.length > 0) { + s.sys.shipmentRoutes.pop(); + } + // push the new routes that use the new shipment planner + for (uint256 i; i < routes.length; i++) { + s.sys.shipmentRoutes.push(routes[i]); + } + } +} diff --git a/contracts/beanstalk/init/shipments/InitReplaymentField.sol b/contracts/beanstalk/init/shipments/InitReplaymentField.sol index df3d7a83..ecdcefdb 100644 --- a/contracts/beanstalk/init/shipments/InitReplaymentField.sol +++ b/contracts/beanstalk/init/shipments/InitReplaymentField.sol @@ -43,7 +43,6 @@ contract InitReplaymentField { if (s.sys.fieldCount == 2) return; uint256 fieldId = s.sys.fieldCount; s.sys.fieldCount++; - console.log("new fieldId", fieldId); emit FieldAdded(fieldId); } diff --git a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol new file mode 100644 index 00000000..e69de29b diff --git a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol similarity index 95% rename from contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol rename to contracts/ecosystem/beanstalkShipments/SiloPayback.sol index aed21626..182c0289 100644 --- a/contracts/ecosystem/beanstalkShipments/UnripeDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -9,7 +9,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; -contract UnripeDistributor is Initializable, ERC20Upgradeable, OwnableUpgradeable { +contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { struct UnripeBdvTokenData { address receipient; uint256 bdv; @@ -45,7 +45,7 @@ contract UnripeDistributor is Initializable, ERC20Upgradeable, OwnableUpgradeabl * Called in batches after deployment to make sure we don't run out of gas. * @param unripeReceipts Array of UnripeBdvTokenData */ - function batchDistribute(UnripeBdvTokenData[] memory unripeReceipts) external onlyOwner { + function batchMint(UnripeBdvTokenData[] memory unripeReceipts) external onlyOwner { for (uint256 i = 0; i < unripeReceipts.length; i++) { _mint(unripeReceipts[i].receipient, unripeReceipts[i].bdv); totalDistributed += unripeReceipts[i].bdv; diff --git a/contracts/mocks/MockUnripeDistributor.sol b/contracts/mocks/MockSiloPayback.sol similarity index 98% rename from contracts/mocks/MockUnripeDistributor.sol rename to contracts/mocks/MockSiloPayback.sol index d8a1d985..811c8cae 100644 --- a/contracts/mocks/MockUnripeDistributor.sol +++ b/contracts/mocks/MockSiloPayback.sol @@ -10,7 +10,7 @@ import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; // TODO: Change this with non redeemable tokens that claim before a transfer and indexes etc. -contract MockUnripeDistributor is ERC20, Ownable { +contract MockSiloPayback is ERC20, Ownable { struct UnripeBdvTokenData { address receipient; uint256 bdv; diff --git a/hardhat.config.js b/hardhat.config.js index eb4d213d..064c9d21 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -39,6 +39,7 @@ const { getFacetBytecode, compareBytecode } = require("./test/hardhat/utils/byte const { populateBeanstalkField } = require("./scripts/beanstalkShipments/populateBeanstalkField.js"); +const { deployAndSetupContracts } = require("./scripts/beanstalkShipments/deployContracts.js"); //////////////////////// TASKS //////////////////////// @@ -1922,20 +1923,57 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m console.log("-----------------------------------"); }); -task("populateBeanstalkField", "Populates the beanstalk field with data from beanstalkPlots.json") - .addOptionalParam("noChunking", "Whether to process all plots in one transaction") +task("beanstalkShipments", "performs all actions to initialize the beanstalk shipments") + .addOptionalParam("noFieldChunking", "Whether to process all plots in one transaction") + .addOptionalParam("deploy", "Whether to deploy the new contracts") .setAction(async (taskArgs) => { - console.log("🌱 Starting Beanstalk field population..."); + console.log("🌱 Starting Beanstalk shipments initialization..."); const verbose = true; - const noChunking = taskArgs.noChunking || true; + const noFieldChunking = taskArgs.noFieldChunking || true; + const deploy = taskArgs.deploy || false; // Use the diamond deployer as the account - const account = await impersonateSigner(L2_PCM); - await mintEth(account.address); + const mock = true; + if (mock) { + owner = await impersonateSigner(L2_PCM); + await mintEth(owner.address); + } else { + owner = (await ethers.getSigners())[0]; + } - await populateBeanstalkField(L2_PINTO, account, verbose, noChunking); + // Step 0: Deploy all new contracts here and perform any actions before handing over ownership + let contracts = {}; + if (deploy) { + contracts = await deployAndSetupContracts({ + PINTO, + L2_PINTO, + L2_PCM, + owner, + verbose + }); + } + + // Step 1: Populate the beanstalk field + console.log("Populating beanstalk field..."); + await populateBeanstalkField(L2_PINTO, owner, verbose, noFieldChunking); + + // Step 2: Update the shipment routes + // Read the routes from the json file + const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; + const routes = JSON.parse(fs.readFileSync(routesPath)); + + // Refresh the shipment routes with the new routes + console.log("Refreshing shipment routes..."); + await upgradeWithNewFacets({ + diamondAddress: L2_PINTO, + facetNames: [], + initFacetName: "InitBeanstalkShipments", + initArgs: [routes], + verbose: verbose, + account: owner + }); - console.log("āœ… Beanstalk field recreation completed successfully!"); + console.log("āœ… Beanstalk shipments initialization completed successfully!"); }); //////////////////////// CONFIGURATION //////////////////////// diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json new file mode 100644 index 00000000..946a9313 --- /dev/null +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -0,0 +1,12 @@ +[ + ["0x1111111111111111111111111111111111111111", "1000000"], + ["0x2222222222222222222222222222222222222222", "5000000"], + ["0x3333333333333333333333333333333333333333", "10000000"], + ["0x4444444444444444444444444444444444444444", "2500000"], + ["0x5555555555555555555555555555555555555555", "7500000"], + ["0x6666666666666666666666666666666666666666", "15000000"], + ["0x7777777777777777777777777777777777777777", "3000000"], + ["0x8888888888888888888888888888888888888888", "12000000"], + ["0x9999999999999999999999999999999999999999", "6000000"], + ["0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", "20000000"] +] diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json new file mode 100644 index 00000000..6677f162 --- /dev/null +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -0,0 +1,38 @@ +[ + { + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planSelector": "0x7c655075", + "recipient": "0x1", + "data": "0x0000000000000000000000000000000000000000000000000000000000000000" + }, + { + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planSelector": "0x12e8d3ed", + "recipient": "0x2", + "data": "0x0000000000000000000000000000000000000000000000000000000000000000" + }, + { + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planSelector": "0x05655264", + "recipient": "0x3", + "data": "0x000000000000000000000000b0cdb715D8122bd976a30996866Ebe5e51bb18b0" + }, + { + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planSelector": "0x6fc9267a", + "recipient": "0x2", + "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" + }, + { + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planSelector": "0x441d1e5b", + "recipient": "0x4", + "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" + }, + { + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planSelector": "0x441d1e5b", + "recipient": "0x4", + "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" + } +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/deployContracts.js b/scripts/beanstalkShipments/deployContracts.js new file mode 100644 index 00000000..24a37925 --- /dev/null +++ b/scripts/beanstalkShipments/deployContracts.js @@ -0,0 +1,124 @@ +const fs = require("fs"); +const { upgrades } = require("hardhat"); + +// Deploys SiloPayback, BarnPayback, and ShipmentPlanner contracts +async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose = true }) { + if (verbose) { + console.log("Deploying Beanstalk shipment contracts..."); + } + + const siloPaybackFactory = await ethers.getContractFactory("SiloPayback"); + const siloPaybackContract = await upgrades.deployProxy(siloPaybackFactory, [PINTO, L2_PINTO], { + initializer: "initialize", + kind: "transparent" + }); + await siloPaybackContract.deployed(); + if (verbose) console.log("SiloPayback deployed to:", siloPaybackContract.address); + + const barnPaybackFactory = await ethers.getContractFactory("BarnPayback"); + const barnPaybackContract = await upgrades.deployProxy(barnPaybackFactory, [0], { + initializer: "initialize", + kind: "transparent" + }); + await barnPaybackContract.deployed(); + if (verbose) console.log("BarnPayback deployed to:", barnPaybackContract.address); + + const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner"); + const shipmentPlannerContract = await shipmentPlannerFactory.deploy(L2_PINTO, PINTO); + await shipmentPlannerContract.deployed(); + if (verbose) console.log("ShipmentPlanner deployed to:", shipmentPlannerContract.address); + + return { + siloPaybackContract, + barnPaybackContract, + shipmentPlannerContract + }; +} + +// Distributes unripe BDV tokens from JSON file to contract recipients +async function distributeUnripeBdvTokens({ + siloPaybackContract, + owner, + dataPath = "./scripts/beanstalkShipments/data/unripeBdvTokens.json", + verbose = true +}) { + if (verbose) console.log("Distributing unripe BDV tokens..."); + + try { + const unripeBdvTokens = JSON.parse(fs.readFileSync(dataPath)); + + const unripeReceipts = unripeBdvTokens.map(([recipient, bdv]) => ({ + receipient: recipient, + bdv: bdv + })); + + await siloPaybackContract.connect(owner).batchMint(unripeReceipts); + + if (verbose) console.log("Unripe BDV tokens distributed to old Beanstalk participants"); + } catch (error) { + console.error("Error distributing unripe BDV tokens:", error); + throw error; + } +} + +// Transfers ownership of both payback contracts to PCM +async function transferContractOwnership({ + siloPaybackContract, + barnPaybackContract, + L2_PCM, + verbose = true +}) { + if (verbose) console.log("Transferring ownership to PCM..."); + + await siloPaybackContract.transferOwnership(L2_PCM); + if (verbose) console.log("SiloPayback ownership transferred to PCM"); + + await barnPaybackContract.transferOwnership(L2_PCM); + if (verbose) console.log("BarnPayback ownership transferred to PCM"); +} + +// Logs deployed contract addresses +function logDeployedAddresses({ + siloPaybackContract, + barnPaybackContract, + shipmentPlannerContract +}) { + console.log("\nDeployed Contract Addresses:"); + console.log("- SiloPayback:", siloPaybackContract.address); + console.log("- BarnPayback:", barnPaybackContract.address); + console.log("- ShipmentPlanner:", shipmentPlannerContract.address); +} + +// Main function that orchestrates all deployment steps +async function deployAndSetupContracts(params) { + const { verbose = true } = params; + + const contracts = await deployShipmentContracts(params); + + await distributeUnripeBdvTokens({ + siloPaybackContract: contracts.siloPaybackContract, + owner: params.owner, + verbose + }); + + await transferContractOwnership({ + siloPaybackContract: contracts.siloPaybackContract, + barnPaybackContract: contracts.barnPaybackContract, + L2_PCM: params.L2_PCM, + verbose + }); + + if (verbose) { + logDeployedAddresses(contracts); + } + + return contracts; +} + +module.exports = { + deployShipmentContracts, + distributeUnripeBdvTokens, + transferContractOwnership, + logDeployedAddresses, + deployAndSetupContracts +}; diff --git a/scripts/deployment/parameters/input/deploymentParams-pi-3.json b/scripts/deployment/parameters/input/deploymentParams-pi-3.json index adc4a98d..9f53818b 100644 --- a/scripts/deployment/parameters/input/deploymentParams-pi-3.json +++ b/scripts/deployment/parameters/input/deploymentParams-pi-3.json @@ -180,20 +180,16 @@ "data": "0x000000000000000000000000b0cdb715D8122bd976a30996866Ebe5e51bb18b0" }, { - // Call to make from - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", // ShipmentPlanner - "planSelector": "0x6fc9267a", // getPaybackFieldPlan - "recipient": "0x2", // FIELD RECEIPIENT, - "data": "0x00000000000000000000000000000000000000000000000000000000000000010000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" // DATA: abi.encode(fieldId, paybackContract) + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planSelector": "0x6fc9267a", + "recipient": "0x2", + "data": "0x00000000000000000000000000000000000000000000000000000000000000010000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" }, - // TODO: This needs changing since there will be 2 payback contracts. - // 1 for unripe silo distributor - // 1 for fertilizer { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", // ShipmentPlanner - "planSelector": "0x441d1e5b", // getPaybackPlan - "recipient": "0x4", // EXTERNAL_BALANCE - "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" // DATA: abi.encode(paybackContract) + "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planSelector": "0x441d1e5b", + "recipient": "0x4", + "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" } ], "wellComponents": { diff --git a/test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol b/test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol index 40d71be4..5634fe7f 100644 --- a/test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol +++ b/test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol @@ -5,11 +5,11 @@ pragma abicoder v2; import {TestHelper} from "test/foundry/utils/TestHelper.sol"; import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; -import {MockUnripeDistributor} from "contracts/mocks/MockUnripeDistributor.sol"; +import {MockSiloPayback} from "contracts/mocks/MockSiloPayback.sol"; contract BeanstalkShipmentsTest is TestHelper { - MockUnripeDistributor unripeDistributor; + MockSiloPayback siloPayback; // we need to: // - 1. recreate a mock beanstalk repayment field with a mock podline @@ -24,7 +24,7 @@ contract BeanstalkShipmentsTest is TestHelper { // add new field, init some plots (see sun.t.sol) // deploy unripe distributor - unripeDistributor = new MockUnripeDistributor(PINTO, BEANSTALK); + siloPayback = new MockSiloPayback(PINTO, BEANSTALK); // upddate routes here setRoutes_all(); From 9bf06bced7738a0817b0c7187da767c6f7667658 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 7 Aug 2025 16:23:36 +0300 Subject: [PATCH 021/270] init silo payback implementation --- .../beanstalkShipments/SiloPayback.sol | 92 ++++++++++++++----- hardhat.config.js | 2 + 2 files changed, 73 insertions(+), 21 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 182c0289..4b551def 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -43,6 +43,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /** * @notice Distribute unripe bdv tokens to the old beanstalk participants. * Called in batches after deployment to make sure we don't run out of gas. + * @dev After distribution is complete "totalDistributed" will reflect the required pinto + * amount to pay off unripe. * @param unripeReceipts Array of UnripeBdvTokenData */ function batchMint(UnripeBdvTokenData[] memory unripeReceipts) external onlyOwner { @@ -58,37 +60,53 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { * @param recipient the address to send the underlying pinto to * @param toMode the mode to send the underlying pinto in */ - function redeem(uint256 amount, address recipient, LibTransfer.To toMode) external { - uint256 pintoToRedeem = unripeToUnderlyingPinto(amount); - // burn the corresponding amount of unripe bdv tokens - _burn(msg.sender, amount); + function claim(uint256 amount, address recipient, LibTransfer.To toMode) external { // send the underlying pintos to the user pintoProtocol.transferToken( pinto, recipient, pintoToRedeem, - LibTransfer.From.EXTERNAL, + LibTransfer.From.EXTERNAL, // External since pintos are sent to the contract toMode ); - emit Redeemed(msg.sender, amount, pintoToRedeem); + emit Claimed(msg.sender, amount, pintoToRedeem); } - /** - * @dev Gets the amount of underlying pinto that corresponds to a given amount of unripe bdv tokens - * according to the current exchange rate. - * @param amount the amount of unripe bdv tokens to redeem - */ - function unripeToUnderlyingPinto(uint256 amount) public view returns (uint256) { - if (totalSupply() == 0) return 0; - return (amount * totalUnderlyingPinto()) / totalSupply(); + /// @notice update the global index of earned rewards + function update() public { + uint256 totalSupply = pinto.balanceOf(address(this)); + if (totalSupply > 0) { + uint256 _balance = pinto.balanceOf(address(this)); + if (_balance > balance) { + uint256 _diff = _balance - balance; + if (_diff > 0) { + uint256 _ratio = _diff * 1e18 / totalSupply; + if (_ratio > 0) { + index = index + _ratio; + balance = _balance; + } + } + } + } } - /** - * @dev Tracks how many underlying pintos are available to redeem - * @return the total amount of underlying pintos in the contract - */ - function totalUnderlyingPinto() public view returns (uint256) { - return pinto.balanceOf(address(this)); + + /// @notice update the index for a user + /// @param recipient the user to update + function updateFor(address recipient) public { + update(); + uint256 _supplied = balanceOf(recipient); + if (_supplied > 0) { + uint256 _supplyIndex = supplyIndex[recipient]; + supplyIndex[recipient] = index; + uint256 _delta = index - _supplyIndex; + if (_delta > 0) { + uint256 _share = _supplied * _delta / 1e18; + claimable[recipient] += _share; + } + } else { + supplyIndex[recipient] = index; + } } /// @dev override the decimals to 6 decimal places, BDV has 6 decimals @@ -96,5 +114,37 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { return 6; } - // TODO: Add a siloRemaining function to check how much is left to pay off + function siloRemaining() public view returns (uint256) { + return totalDistributed; + } + + function _beforeTokenTransfer( + address from, + address to, + uint256 amount + ) internal override { + if (from != address(0) && to != address(0)) { + revert("SiloPayback: cannot transfer between addresses"); + } + } + + /** + * @dev override the transfer function to enforce claiming before transferring + */ + function transfer(address to, uint256 amount) public override returns (bool) { + _beforeTokenTransfer(msg.sender, to, amount); + return super.transfer(to, amount); + } + + /** + * @dev override the transferFrom function to enforce claiming before transferring + */ + function transferFrom( + address from, + address to, + uint256 amount + ) public override returns (bool) { + _beforeTokenTransfer(from, to, amount); + return super.transferFrom(from, to, amount); + } } diff --git a/hardhat.config.js b/hardhat.config.js index 064c9d21..2bc64690 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -1943,6 +1943,8 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi // Step 0: Deploy all new contracts here and perform any actions before handing over ownership let contracts = {}; + // todo: it might be better to deploy the proxies in the shipments init script and hardcode the addresses + // if we do that we still need to distribute the unripe bdv tokens and hand over ownership to the PCM from here if (deploy) { contracts = await deployAndSetupContracts({ PINTO, From 7547a3885da183253e27d3925d36c067a37551e2 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 7 Aug 2025 16:59:47 +0300 Subject: [PATCH 022/270] silo payback with staking-like functionality --- .../beanstalkShipments/SiloPayback.sol | 143 +++++++++++------- 1 file changed, 92 insertions(+), 51 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 4b551def..6a7e460f 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -22,9 +22,20 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev Tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. uint256 public totalDistributed; + /// @dev Tracks total received pinto from shipments. + uint256 public totalReceived; + + /// @dev Synthetix-style reward distribution variables + uint256 public rewardPerTokenStored; + mapping(address => uint256) public userRewardPerTokenPaid; + mapping(address => uint256) public rewards; /// @dev event emitted when user redeems bdv tokens for underlying pinto event Redeemed(address indexed user, uint256 unripeBdvAmount, uint256 underlyingPintoAmount); + /// @dev event emitted when user claims rewards + event Claimed(address indexed user, uint256 amount, uint256 rewards); + /// @dev event emitted when rewards are received from shipments + event RewardsReceived(uint256 amount, uint256 newIndex); /// @custom:oz-upgrades-unsafe-allow constructor constructor() { @@ -55,58 +66,47 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { } /** - * @notice Redeems a given amount of unripe bdv tokens for underlying pinto - * @param amount the amount of unripe bdv tokens to redeem - * @param recipient the address to send the underlying pinto to - * @param toMode the mode to send the underlying pinto in + * @notice Claims accumulated rewards for the caller + * @param recipient the address to send the rewards to + * @param toMode the mode to send the rewards in */ - function claim(uint256 amount, address recipient, LibTransfer.To toMode) external { - // send the underlying pintos to the user + function claim(address recipient, LibTransfer.To toMode) external updateReward(msg.sender) { + uint256 rewardsToClaim = rewards[msg.sender]; + require(rewardsToClaim > 0, "SiloPayback: no rewards to claim"); + + rewards[msg.sender] = 0; + + // Transfer the rewards to the recipient pintoProtocol.transferToken( pinto, recipient, - pintoToRedeem, - LibTransfer.From.EXTERNAL, // External since pintos are sent to the contract + rewardsToClaim, + LibTransfer.From.EXTERNAL, toMode ); - emit Claimed(msg.sender, amount, pintoToRedeem); + + emit Claimed(msg.sender, rewardsToClaim, rewardsToClaim); } - /// @notice update the global index of earned rewards - function update() public { - uint256 totalSupply = pinto.balanceOf(address(this)); - if (totalSupply > 0) { - uint256 _balance = pinto.balanceOf(address(this)); - if (_balance > balance) { - uint256 _diff = _balance - balance; - if (_diff > 0) { - uint256 _ratio = _diff * 1e18 / totalSupply; - if (_ratio > 0) { - index = index + _ratio; - balance = _balance; - } - } - } + + /// @notice Modifier to update rewards for an account + /// @param account The account to update rewards for + modifier updateReward(address account) { + if (account != address(0)) { + rewards[account] = earned(account); + userRewardPerTokenPaid[account] = rewardPerTokenStored; } + _; } - - /// @notice update the index for a user - /// @param recipient the user to update - function updateFor(address recipient) public { - update(); - uint256 _supplied = balanceOf(recipient); - if (_supplied > 0) { - uint256 _supplyIndex = supplyIndex[recipient]; - supplyIndex[recipient] = index; - uint256 _delta = index - _supplyIndex; - if (_delta > 0) { - uint256 _share = _supplied * _delta / 1e18; - claimable[recipient] += _share; - } - } else { - supplyIndex[recipient] = index; - } + /// @notice Calculate earned rewards for an account. + /// The pro-rata delta between the current rewardPerTokenStored and the user's userRewardPerTokenPaid + /// rewardPerTokenStored is the ratio of the total amount of rewards received to the total amount of tokens distributed. + /// Since tokens cannot be burned, this will only increase over time. + /// @param account The account to calculate rewards for + /// @return The total earned rewards + function earned(address account) public view returns (uint256) { + return ((balanceOf(account) * (rewardPerTokenStored - userRewardPerTokenPaid[account])) / 1e18) + rewards[account]; } /// @dev override the decimals to 6 decimal places, BDV has 6 decimals @@ -114,31 +114,72 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { return 6; } + /// @dev view function to get the remaining amount of silo payback tokens to be distributed function siloRemaining() public view returns (uint256) { - return totalDistributed; + return totalDistributed - totalReceived; + } + + /** + * @notice Receives Bean rewards from Beanstalk shipments + * @dev Called by the Beanstalk protocol to distribute rewards + * @param amount The amount of Bean rewards received + */ + function receiveRewards(uint256 amount) external { + require(msg.sender == address(pintoProtocol), "SiloPayback: only pinto protocol"); + require(amount > 0, "SiloPayback: amount must be greater than 0"); + + uint256 tokenTotalSupply = totalSupply(); + if (tokenTotalSupply > 0) { + rewardPerTokenStored += (amount * 1e18) / tokenTotalSupply; + totalReceived += amount; + } + + emit RewardsReceived(amount, rewardPerTokenStored); } + /** + * @notice View function to calculate pending rewards for a user + * @param user The address to check pending rewards for + * @return The amount of pending rewards + */ + function pendingRewards(address user) external view returns (uint256) { + return earned(user); + } + + /** + * @notice View function to get the total amount of rewards distributed + * @return The total rewards distributed since inception + */ + function totalRewardsDistributed() external view returns (uint256) { + return (rewardPerTokenStored * totalSupply()) / 1e18; + } + + /////////////////// Transfer Hooks /////////////////// + + /// @dev pre transfer hook to update rewards for both sender and receiver function _beforeTokenTransfer( address from, address to, uint256 amount - ) internal override { - if (from != address(0) && to != address(0)) { - revert("SiloPayback: cannot transfer between addresses"); + ) internal { + // Update rewards for both sender and receiver to prevent gaming + if (from != address(0)) { + rewards[from] = earned(from); + userRewardPerTokenPaid[from] = rewardPerTokenStored; + } + if (to != address(0)) { + rewards[to] = earned(to); + userRewardPerTokenPaid[to] = rewardPerTokenStored; } } - /** - * @dev override the transfer function to enforce claiming before transferring - */ + /// @dev need to override the transfer function to update rewards function transfer(address to, uint256 amount) public override returns (bool) { _beforeTokenTransfer(msg.sender, to, amount); return super.transfer(to, amount); } - /** - * @dev override the transferFrom function to enforce claiming before transferring - */ + /// @dev need to override the transferFrom function to update rewards function transferFrom( address from, address to, From bd62b3d25ae40208235dba5f8b6437ff37ea0a2e Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 8 Aug 2025 11:13:58 +0300 Subject: [PATCH 023/270] clean up silo payback --- .../beanstalkShipments/SiloPayback.sol | 150 +++++++++--------- 1 file changed, 71 insertions(+), 79 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 6a7e460f..5087efda 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -10,6 +10,7 @@ import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/Own import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { + /// @dev struct to store the unripe bdv token data for batch minting struct UnripeBdvTokenData { address receipient; uint256 bdv; @@ -25,18 +26,27 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev Tracks total received pinto from shipments. uint256 public totalReceived; - /// @dev Synthetix-style reward distribution variables + /// @dev Global accumulator tracking total rewards per token since contract inception (scaled by 1e18) uint256 public rewardPerTokenStored; + /// @dev Per-user checkpoint of rewardPerTokenStored at their last reward update (prevents double claiming) mapping(address => uint256) public userRewardPerTokenPaid; + /// @dev Per-user accumulated rewards ready to claim (updated on transfers/claims) mapping(address => uint256) public rewards; - /// @dev event emitted when user redeems bdv tokens for underlying pinto - event Redeemed(address indexed user, uint256 unripeBdvAmount, uint256 underlyingPintoAmount); /// @dev event emitted when user claims rewards event Claimed(address indexed user, uint256 amount, uint256 rewards); /// @dev event emitted when rewards are received from shipments event RewardsReceived(uint256 amount, uint256 newIndex); + /// @notice Modifier to update rewards for an account before a claim + modifier updateReward(address account) { + if (account != address(0)) { + rewards[account] = earned(account); + userRewardPerTokenPaid[account] = rewardPerTokenStored; + } + _; + } + /// @custom:oz-upgrades-unsafe-allow constructor constructor() { _disableInitializers(); @@ -65,6 +75,24 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { } } + /** + * @notice Receives Pinto rewards from shipments + * @dev Called by the protocol to distribute rewards and update state + * @param amount The amount of Pinto rewards received + */ + function receiveRewards(uint256 amount) external { + require(msg.sender == address(pintoProtocol), "SiloPayback: only pinto protocol"); + require(amount > 0, "SiloPayback: shipment amount must be greater than 0"); + + uint256 tokenTotalSupply = totalSupply(); + if (tokenTotalSupply > 0) { + rewardPerTokenStored += (amount * 1e18) / tokenTotalSupply; + totalReceived += amount; + } + + emit RewardsReceived(amount, rewardPerTokenStored); + } + /** * @notice Claims accumulated rewards for the caller * @param recipient the address to send the rewards to @@ -73,9 +101,9 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { function claim(address recipient, LibTransfer.To toMode) external updateReward(msg.sender) { uint256 rewardsToClaim = rewards[msg.sender]; require(rewardsToClaim > 0, "SiloPayback: no rewards to claim"); - + rewards[msg.sender] = 0; - + // Transfer the rewards to the recipient pintoProtocol.transferToken( pinto, @@ -84,108 +112,72 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { LibTransfer.From.EXTERNAL, toMode ); - - emit Claimed(msg.sender, rewardsToClaim, rewardsToClaim); - } - - /// @notice Modifier to update rewards for an account - /// @param account The account to update rewards for - modifier updateReward(address account) { - if (account != address(0)) { - rewards[account] = earned(account); - userRewardPerTokenPaid[account] = rewardPerTokenStored; - } - _; + emit Claimed(msg.sender, rewardsToClaim, rewardsToClaim); } - /// @notice Calculate earned rewards for an account. - /// The pro-rata delta between the current rewardPerTokenStored and the user's userRewardPerTokenPaid - /// rewardPerTokenStored is the ratio of the total amount of rewards received to the total amount of tokens distributed. - /// Since tokens cannot be burned, this will only increase over time. - /// @param account The account to calculate rewards for - /// @return The total earned rewards + /** + * @notice Calculate earned rewards for an account + * @dev Calculates the pro-rata share of rewards based on the delta between rewardPerTokenStored + * and userRewardPerTokenPaid. + * ------------------------------------------------------------ + * - `rewardPerTokenStored` represents the cumulative ratio of total rewards to total tokens, + * which monotonically increases since tokens cannot be burned and totalSupply is fixed. + * - `userRewardPerTokenPaid` is the checkpoint of rewardPerTokenStored at the last reward update. + * - `rewards` is the accumulated rewards of the user ready to claim. + * - `rewardPerTokenStored` can be at most 1e18 * totalSupply() since distribution is capped. + * ------------------------------------------------------------ + * @param account The account to calculate rewards for + * @return The total earned rewards for the account + */ function earned(address account) public view returns (uint256) { - return ((balanceOf(account) * (rewardPerTokenStored - userRewardPerTokenPaid[account])) / 1e18) + rewards[account]; - } - - /// @dev override the decimals to 6 decimal places, BDV has 6 decimals - function decimals() public view override returns (uint8) { - return 6; + return + ((balanceOf(account) * (rewardPerTokenStored - userRewardPerTokenPaid[account])) / + 1e18) + rewards[account]; } - /// @dev view function to get the remaining amount of silo payback tokens to be distributed + /// @dev get the remaining amount of silo payback tokens to be distributed, called by the planner function siloRemaining() public view returns (uint256) { return totalDistributed - totalReceived; } - /** - * @notice Receives Bean rewards from Beanstalk shipments - * @dev Called by the Beanstalk protocol to distribute rewards - * @param amount The amount of Bean rewards received - */ - function receiveRewards(uint256 amount) external { - require(msg.sender == address(pintoProtocol), "SiloPayback: only pinto protocol"); - require(amount > 0, "SiloPayback: amount must be greater than 0"); - - uint256 tokenTotalSupply = totalSupply(); - if (tokenTotalSupply > 0) { - rewardPerTokenStored += (amount * 1e18) / tokenTotalSupply; - totalReceived += amount; - } - - emit RewardsReceived(amount, rewardPerTokenStored); - } - - /** - * @notice View function to calculate pending rewards for a user - * @param user The address to check pending rewards for - * @return The amount of pending rewards - */ - function pendingRewards(address user) external view returns (uint256) { - return earned(user); - } - - /** - * @notice View function to get the total amount of rewards distributed - * @return The total rewards distributed since inception - */ - function totalRewardsDistributed() external view returns (uint256) { - return (rewardPerTokenStored * totalSupply()) / 1e18; - } - - /////////////////// Transfer Hooks /////////////////// + /////////////////// Transfer Hook and ERC20 overrides /////////////////// /// @dev pre transfer hook to update rewards for both sender and receiver - function _beforeTokenTransfer( - address from, - address to, - uint256 amount - ) internal { - // Update rewards for both sender and receiver to prevent gaming + function _beforeTokenTransfer(address from, address to, uint256 amount) internal { + if (from != address(0)) { + // capture any existing rewards for the sender, update their checkpoint to current global state rewards[from] = earned(from); userRewardPerTokenPaid[from] = rewardPerTokenStored; } + if (to != address(0)) { + // capture any existing rewards for the receiver, update their checkpoint to current global state rewards[to] = earned(to); userRewardPerTokenPaid[to] = rewardPerTokenStored; } + + // result: token balances change, but both parties have been + // "checkpointed" to prevent any reward manipulation through transfers + // claims happen when the users decide to claim. + // This way all claims can also happen in the internal balance. } - /// @dev need to override the transfer function to update rewards + /// @dev override the standard transfer function to update rewards function transfer(address to, uint256 amount) public override returns (bool) { _beforeTokenTransfer(msg.sender, to, amount); return super.transfer(to, amount); } - /// @dev need to override the transferFrom function to update rewards - function transferFrom( - address from, - address to, - uint256 amount - ) public override returns (bool) { + /// @dev override the standard transferFrom function to update rewards + function transferFrom(address from, address to, uint256 amount) public override returns (bool) { _beforeTokenTransfer(from, to, amount); return super.transferFrom(from, to, amount); } + + /// @dev override the decimals to 6 decimal places, BDV has 6 decimals + function decimals() public view override returns (uint8) { + return 6; + } } From fb4e29c35f3d6fddf7349bd40edd3590b6bfe348 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 8 Aug 2025 12:27:51 +0300 Subject: [PATCH 024/270] initial silo payback tests --- .../beanstalkShipments/SiloPayback.sol | 2 +- .../BeanstalkShipmentsTest.t.sol | 0 .../beanstalkShipments/SiloPayback.t.sol | 334 ++++++++++++++++++ 3 files changed, 335 insertions(+), 1 deletion(-) rename test/foundry/ecosystem/{ => beanstalkShipments}/BeanstalkShipmentsTest.t.sol (100%) create mode 100644 test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 5087efda..a91e7bef 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -28,7 +28,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev Global accumulator tracking total rewards per token since contract inception (scaled by 1e18) uint256 public rewardPerTokenStored; - /// @dev Per-user checkpoint of rewardPerTokenStored at their last reward update (prevents double claiming) + /// @dev Per-user checkpoint of rewardPerTokenStored at their last reward update to prevent double claiming mapping(address => uint256) public userRewardPerTokenPaid; /// @dev Per-user accumulated rewards ready to claim (updated on transfers/claims) mapping(address => uint256) public rewards; diff --git a/test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol similarity index 100% rename from test/foundry/ecosystem/BeanstalkShipmentsTest.t.sol rename to test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol new file mode 100644 index 00000000..c5ad7934 --- /dev/null +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -0,0 +1,334 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import "forge-std/Test.sol"; +import {TestHelper} from "test/foundry/utils/TestHelper.sol"; +import {SiloPayback} from "contracts/ecosystem/beanstalkShipments/SiloPayback.sol"; +import {MockToken} from "contracts/mocks/MockToken.sol"; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; + +/** + * @title SiloPayback Test Suite + * @notice Comprehensive test suite for the SiloPayback yield-bearing token contract + * @dev Tests the Synthetix-style reward distribution mechanism and gaming prevention + */ +contract SiloPaybackTest is TestHelper { + SiloPayback public siloPayback; + MockToken public pintoToken; + + // Test users + address public farmer1 = makeAddr("farmer1"); + address public farmer2 = makeAddr("farmer2"); + address public farmer3 = makeAddr("farmer3"); + address public owner = makeAddr("owner"); + + // Constants for testing + uint256 constant TOKEN_DECIMALS = 6; + uint256 constant PINTO_DECIMALS = 6; + uint256 constant PRECISION = 1e18; + uint256 constant INITIAL_MINT_AMOUNT = 1000e6; // 1000 tokens with 6 decimals + + event Claimed(address indexed user, uint256 amount, uint256 rewards); + event RewardsReceived(uint256 amount, uint256 newIndex); + + function setUp() public { + initializeBeanstalkTestState(true, false); + + // Deploy implementation contract + SiloPayback siloPaybackImpl = new SiloPayback(); + + // Encode initialization data + vm.startPrank(owner); + bytes memory data = abi.encodeWithSelector( + SiloPayback.initialize.selector, + address(BEAN), + address(BEANSTALK) + ); + + // Deploy proxy contract + TransparentUpgradeableProxy siloPaybackProxy = new TransparentUpgradeableProxy( + address(siloPaybackImpl), // implementation + owner, // initial owner + data // initialization data + ); + + vm.stopPrank(); + + // set the silo payback proxy + siloPayback = SiloPayback(address(siloPaybackProxy)); + + vm.label(farmer1, "farmer1"); + vm.label(farmer2, "farmer2"); + vm.label(farmer3, "farmer3"); + vm.label(owner, "owner"); + vm.label(address(siloPayback), "SiloPaybackProxy"); + } + + ////////////// Shipment receiving ////////////// + + function test_siloPaybackReceivePintoRewards() public { + // mint 400e6 and 600e6 to farmer1 and farmer2 + address[] memory recipients = new address[](2); + recipients[0] = farmer1; + recipients[1] = farmer2; + uint256[] memory amounts = new uint256[](2); + amounts[0] = 400e6; + amounts[1] = 600e6; + _mintTokensToUsers(recipients, amounts); + + // try to update state from non protocol, expect revert + vm.prank(farmer1); + vm.expectRevert(); + siloPayback.receiveRewards(100e6); + + // Send rewards to contract and call receiveRewards + uint256 rewardAmount = 100e6; // 10% of total supply + _sendRewardsToContract(rewardAmount); + uint256 expectedRewardPerToken = (rewardAmount * PRECISION) / siloPayback.totalSupply(); + + console.log("rewardPerTokenStored", siloPayback.rewardPerTokenStored()); + console.log("totalReceived", siloPayback.totalReceived()); + + // Check global reward state updated correctly + assertEq(siloPayback.rewardPerTokenStored(), expectedRewardPerToken); + assertEq(siloPayback.totalReceived(), rewardAmount); + + // check that total remaining is totalSupply - totalReceived (1000e6 - 100e6) + assertEq(siloPayback.siloRemaining(), 900e6); + } + + /////////////// Earned calculation /////////////// + + function test_siloPaybackEarnedCalculationMultipleUsers() public { + // Mint tokens: farmer1 40%, farmer2 60% + _mintTokensToUser(farmer1, 400e6); + _mintTokensToUser(farmer2, 600e6); + + // Send rewards + uint256 rewardAmount = 150e6; + _sendRewardsToContract(rewardAmount); + + // Check proportional rewards + assertEq(siloPayback.earned(farmer1), 60e6); // 40% of 150 + assertEq(siloPayback.earned(farmer2), 90e6); // 60% of 150 + + // Total should equal reward amount + assertEq(siloPayback.earned(farmer1) + siloPayback.earned(farmer2), rewardAmount); + } + + ////////////// Claim ////////////// + + // todo: add test to claim after 2 distributions have happened with 1 user claiming every season and one who doesnt + + function test_siloPaybackClaimMultipleUsers() public { + // Setup users with different balances + _mintTokensToUser(farmer1, 300e6); + _mintTokensToUser(farmer2, 700e6); + + // Send rewards + uint256 rewardAmount = 200e6; + _sendRewardsToContract(rewardAmount); + + uint256 farmer1Rewards = siloPayback.earned(farmer1); // 60 tokens + assertEq(farmer1Rewards, 60e6); + uint256 farmer2Rewards = siloPayback.earned(farmer2); // 140 tokens + assertEq(farmer2Rewards, 140e6); + + // farmer1 claims first + vm.prank(farmer1); + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); + + assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1Rewards); + assertEq(siloPayback.earned(farmer1), 0); + + // farmer2's earnings should be unaffected + assertEq(siloPayback.earned(farmer2), farmer2Rewards); + + // farmer2 claims + vm.prank(farmer2); + siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); + + assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2Rewards); + assertEq(siloPayback.earned(farmer2), 0); + + // assert no more underlying BEAN in the contract + assertEq(IERC20(BEAN).balanceOf(address(siloPayback)), 0); + } + + ////////////// Double claim and transfer logic ////////////// + + function test_siloPaybackTransferUpdatesRewards() public { + // Setup: farmer1 and farmer2 have tokens, rewards are distributed + _mintTokensToUser(farmer1, 500e6); // 50% of total supply + _mintTokensToUser(farmer2, 500e6); // 50% of total supply + + uint256 rewardAmount = 200e6; + _sendRewardsToContract(rewardAmount); + + uint256 farmer1EarnedBefore = siloPayback.earned(farmer1); + assertEq(farmer1EarnedBefore, 100e6); + uint256 farmer2EarnedBefore = siloPayback.earned(farmer2); + assertEq(farmer2EarnedBefore, 100e6); + + // farmer1 transfers tokens to farmer2 + vm.prank(farmer1); + siloPayback.transfer(farmer2, 200e6); + + // Check that rewards were captured for both users + // aka no matter if you transfer, your reward index is still the same + assertEq(siloPayback.earned(farmer1), farmer1EarnedBefore); + assertEq(siloPayback.earned(farmer2), farmer2EarnedBefore); + // check that the userRewardPerTokenPaid is updated to the latest checkpoint + assertEq(siloPayback.userRewardPerTokenPaid(farmer1), siloPayback.rewardPerTokenStored()); + assertEq(siloPayback.userRewardPerTokenPaid(farmer2), siloPayback.rewardPerTokenStored()); + + // Check balances updated + assertEq(siloPayback.balanceOf(farmer1), 300e6); + assertEq(siloPayback.balanceOf(farmer2), 700e6); + } + + function test_siloPaybackTransferPreventsDoubleClaiming() public { + // Scenario: farmer1 tries to game by transferring tokens to get more rewards + _mintTokensToUser(farmer1, 1000e6); + + // First round of rewards + _sendRewardsToContract(100e6); + uint256 firstRewards = siloPayback.earned(farmer1); + + // check that farmer3 balance is 0 and no rewards + assertEq(siloPayback.earned(farmer3), 0); + assertEq(siloPayback.balanceOf(farmer3), 0); + + // farmer1 transfers all tokens to another address he controls + vm.prank(farmer1); + siloPayback.transfer(farmer3, 1000e6); + + // check that farmer3 balance is increased to 1000e6 but rewards are still 0 + assertEq(siloPayback.earned(farmer3), 0); + assertEq(siloPayback.balanceOf(farmer3), 1000e6); + + // Second round of rewards + _sendRewardsToContract(100e6); + + // farmer1 should only have rewards from first round + // farmer3 should only have rewards from second round + assertEq(siloPayback.earned(farmer1), firstRewards); + assertEq(siloPayback.earned(farmer3), 100e6); // Only second round rewards + + // Total rewards should be conserved + assertEq(siloPayback.earned(farmer1) + siloPayback.earned(farmer3), 200e6); + } + + function test_siloPaybackTransferToNewUserStartsFreshRewards() public { + _mintTokensToUser(farmer1, 1000e6); + + // farmer1 earns rewards + _sendRewardsToContract(100e6); + + // Transfer to farmer3 (new user) + vm.prank(farmer1); + siloPayback.transfer(farmer3, 500e6); + + // farmer3 should have checkpoint synced but no earned rewards yet + assertEq(siloPayback.earned(farmer3), 0); + assertEq(siloPayback.userRewardPerTokenPaid(farmer3), siloPayback.rewardPerTokenStored()); + + // New rewards distributed + _sendRewardsToContract(200e6); + + // farmer3 should get rewards proportional to his balance + uint256 expectedfarmer3Rewards = (500e6 * 200e6) / 1000e6; // 50% of new rewards + assertEq(siloPayback.earned(farmer3), expectedfarmer3Rewards); + } + + ////////////// COMPLEX SCENARIOS ////////////// + + function test_siloPaybackMultipleRewardDistributionsAndClaims() public { + _mintTokensToUser(farmer1, 400e6); + _mintTokensToUser(farmer2, 600e6); + + // First reward distribution + _sendRewardsToContract(100e6); + uint256 farmer1Rewards1 = siloPayback.earned(farmer1); // 40 + uint256 farmer2Rewards1 = siloPayback.earned(farmer2); // 60 + + // farmer1 claims + vm.prank(farmer1); + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); + + // Second reward distribution + _sendRewardsToContract(200e6); + + // farmer1 should have new rewards, farmer2 should have accumulated + uint256 farmer1Rewards2 = siloPayback.earned(farmer1); // 80 (40% of 200) + uint256 farmer2Rewards2 = siloPayback.earned(farmer2); // 180 (60 + 120) + + assertEq(farmer1Rewards2, 80e6); + assertEq(farmer2Rewards2, 180e6); + + // Verify farmer1 received first claim + assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1Rewards1); + } + + function test_siloPaybackRewardsWithTransfersOverTime() public { + _mintTokensToUser(farmer1, 1000e6); + + // Initial rewards + _sendRewardsToContract(100e6); + + // Transfer half to farmer2 + vm.prank(farmer1); + siloPayback.transfer(farmer2, 500e6); + + // More rewards + _sendRewardsToContract(200e6); + + // farmer1 should have: 100 (from first round) + 100 (50% of second round) + // farmer2 should have: 0 (wasn't holder for first round) + 100 (50% of second round) + assertEq(siloPayback.earned(farmer1), 200e6); + assertEq(siloPayback.earned(farmer2), 100e6); + } + + ////////////// EDGE CASES AND ERROR CONDITIONS ////////////// + + // todo: pinto sent without total supply being 0 + // todo: precision with small amounts + + ////////////// HELPER FUNCTIONS ////////////// + + function _mintTokensToUsers(address[] memory recipients, uint256[] memory amounts) internal { + require(recipients.length == amounts.length, "Arrays must have equal length"); + SiloPayback.UnripeBdvTokenData[] memory receipts = new SiloPayback.UnripeBdvTokenData[]( + recipients.length + ); + for (uint256 i = 0; i < recipients.length; i++) { + receipts[i] = SiloPayback.UnripeBdvTokenData(recipients[i], amounts[i]); + } + vm.prank(owner); + siloPayback.batchMint(receipts); + } + + function _mintTokensToUser(address user, uint256 amount) internal { + SiloPayback.UnripeBdvTokenData[] memory receipts = new SiloPayback.UnripeBdvTokenData[](1); + receipts[0] = SiloPayback.UnripeBdvTokenData(user, amount); + vm.prank(owner); + siloPayback.batchMint(receipts); + } + + function _sendRewardsToContract(uint256 amount) internal { + deal(address(BEAN), address(siloPayback), amount, true); + + // Call receiveRewards to update the global state + vm.prank(BEANSTALK); + siloPayback.receiveRewards(amount); + } + + function logRewardState() internal { + console.log("rewardPerTokenStored: ", siloPayback.rewardPerTokenStored()); + console.log("totalReceived: ", siloPayback.totalReceived()); + console.log("totalSupply: ", siloPayback.totalSupply()); + } +} From bccd4a99c86daeb9431dbaf6193c3dca50b13c51 Mon Sep 17 00:00:00 2001 From: default-juice Date: Sat, 9 Aug 2025 17:09:42 +0300 Subject: [PATCH 025/270] unified fertizer contract with initialization of state --- .../beanstalkShipments/BarnPayback.sol | 492 ++++++++++++++++++ .../data/beanstalkFertilizer.json | 32 ++ .../beanstalkShipments/BarnPayback.t.sol | 0 .../beanstalkShipments/SiloPayback.t.sol | 6 +- 4 files changed, 525 insertions(+), 5 deletions(-) create mode 100644 scripts/beanstalkShipments/data/beanstalkFertilizer.json create mode 100644 test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol diff --git a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol index e69de29b..7d3ffb48 100644 --- a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol @@ -0,0 +1,492 @@ +/** + * SPDX-License-Identifier: MIT + **/ + +pragma solidity ^0.8.20; + +import {ERC1155Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC1155/ERC1155Upgradeable.sol"; +import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; +import {ReentrancyGuardUpgradeable} from "@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.sol"; +import {IERC1155Receiver} from "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol"; +import {LibRedundantMath128} from "contracts/libraries/Math/LibRedundantMath128.sol"; +import {LibRedundantMath256} from "contracts/libraries/Math/LibRedundantMath256.sol"; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; + +/** + * @author Publius + * @dev Fertilizer tailored implementation of the ERC-1155 standard. + * We rewrite transfer and mint functions to allow the balance transfer function be overwritten as well. + * Merged from multiple contracts: Fertilizer.sol, Internalizer.sol, Fertilizer1155.sol + * All metadata-related functionality has been removed. + */ +contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable { + using LibRedundantMath256 for uint256; + using LibRedundantMath128 for uint128; + + event ClaimFertilizer(uint256[] ids, uint256 beans); + + struct Balance { + uint128 amount; + uint128 lastBpf; + } + + /** + * @notice contains data per account for Fertilizer. + */ + struct AccountFertilizerData { + address account; + uint128 amount; + uint128 lastBpf; + } + + /** + * @notice Fertilizers contains the ids, accounts, amounts, and lastBpf of each Fertilizer. + * @dev fertilizerIds MUST be in ascending order. + * for each fert id --> all accounts --> amount, lastBpf + */ + struct Fertilizers { + uint128 fertilizerId; + AccountFertilizerData[] accountData; + } + + /** + * @notice contains data related to the system's fertilizer (static system). + * @param fertilizerIds Array of fertilizer IDs in ascending order. + * @param fertilizerAmounts Array of fertilizer amounts corresponding to each ID. + * @param fertilizedIndex The total number of Fertilizer Beans that have been fertilized. + * @param fertilizedPaidIndex The total number of Fertilizer Beans that have been sent out to users. + * @param bpf The cumulative Beans Per Fertilizer (bfp) minted over all Seasons. + * @param leftoverBeans Amount of Beans that have shipped to Fert but not yet reflected in bpf. + */ + struct SystemFertilizer { + uint128[] fertilizerIds; + uint256[] fertilizerAmounts; + uint256 fertilizedIndex; + uint256 fertilizedPaidIndex; + uint128 bpf; + uint256 leftoverBeans; + } + + // Storage + mapping(uint256 => mapping(address => Balance)) internal _balances; + SystemFertilizer internal fert; + IERC20 public pinto; + + //////////////////////////// Initialization //////////////////////////// + + /** + * @notice Initializes the contract, sets global fertilizer state, and batch mints all fertilizers. + * @param _pinto The address of the Pinto ERC20 token. + * @param systemFert The global fertilizer state data. + * @param fertilizerIds Array of fertilizer account data to initialize. + */ + function init( + address _pinto, + SystemFertilizer calldata systemFert, + Fertilizers[] calldata fertilizerIds + ) external initializer { + // Inheritance Inits + __ERC1155_init(""); + __Ownable_init(msg.sender); + __ReentrancyGuard_init(); + + // State Inits + pinto = IERC20(_pinto); + setFertilizerState(systemFert); + // Minting will happen after deployment due to potential gas limit issues + } + + /** + * @notice Sets the global fertilizer state. + * @param systemFert The fertilizer state data. + */ + function setFertilizerState(SystemFertilizer calldata systemFert) internal { + fert.fertilizerIds = systemFert.fertilizerIds; + fert.fertilizerAmounts = systemFert.fertilizerAmounts; + fert.fertilizedIndex = systemFert.fertilizedIndex; + fert.fertilizedPaidIndex = systemFert.fertilizedPaidIndex; + fert.bpf = systemFert.bpf; + fert.leftoverBeans = systemFert.leftoverBeans; + } + + /** + * @notice Batch mints fertilizers to all accounts and initializes balances. + * @param fertilizerIds Array of fertilizer data containing ids, accounts, amounts, and lastBpf. + */ + function mintFertilizers(Fertilizers[] calldata fertilizerIds) external onlyOwner { + for (uint i; i < fertilizerIds.length; i++) { + Fertilizers memory f = fertilizerIds[i]; + uint128 fid = f.fertilizerId; + + // Mint fertilizer to each holder + for (uint j; j < f.accountData.length; j++) { + if (!isContract(f.accountData[j].account)) { + _balances[fid][f.accountData[j].account].amount = f.accountData[j].amount; + _balances[fid][f.accountData[j].account].lastBpf = f.accountData[j].lastBpf; + + // this used to call beanstalkMint but amounts and balances are set directly here + // we also do not need to perform any checks since we are only minting once + // after deployment, no more beanstalk fertilizers will be distributed + _safeMint(f.accountData[j].account, fid, f.accountData[j].amount, ""); + + emit TransferSingle( + msg.sender, + address(0), + f.accountData[j].account, + fid, + f.accountData[j].amount + ); + } + } + } + } + + + function _safeMint(address to, uint256 id, uint256 amount, bytes memory data) internal virtual { + require(to != address(0), "ERC1155: mint to the zero address"); + + address operator = _msgSender(); + + _transfer(address(0), to, id, amount); + + emit TransferSingle(operator, address(0), to, id, amount); + + __doSafeTransferAcceptanceCheck(operator, address(0), to, id, amount, data); + } + + //////////////////////////// Transfer Functions //////////////////////////// + + function safeTransferFrom( + address from, + address to, + uint256 id, + uint256 amount, + bytes memory data + ) public virtual override { + require(to != address(0), "ERC1155: transfer to the zero address"); + require( + from == _msgSender() || isApprovedForAll(from, _msgSender()), + "ERC1155: caller is not owner nor approved" + ); + + address operator = _msgSender(); + + _beforeTokenTransfer( + operator, + from, + to, + __asSingletonArray(id), + __asSingletonArray(amount), + data + ); + + _transfer(from, to, id, amount); + + emit TransferSingle(operator, from, to, id, amount); + + __doSafeTransferAcceptanceCheck(operator, from, to, id, amount, data); + } + + /// @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) + function __asSingletonArray(uint256 element) private pure returns (uint256[] memory) { + uint256[] memory array = new uint256[](1); + array[0] = element; + return array; + } + + function safeBatchTransferFrom( + address from, + address to, + uint256[] memory ids, + uint256[] memory amounts, + bytes memory data + ) public virtual override { + require(ids.length == amounts.length, "ERC1155: ids and amounts length mismatch"); + require(to != address(0), "ERC1155: transfer to the zero address"); + require( + from == _msgSender() || isApprovedForAll(from, _msgSender()), + "ERC1155: transfer caller is not owner nor approved" + ); + + address operator = _msgSender(); + + _beforeTokenTransfer(operator, from, to, ids, amounts, data); + + for (uint256 i; i < ids.length; ++i) { + _transfer(from, to, ids[i], amounts[i]); + } + + emit TransferBatch(operator, from, to, ids, amounts); + + __doSafeBatchTransferAcceptanceCheck(operator, from, to, ids, amounts, data); + } + + function _transfer( + address from, + address to, + uint256 id, + uint256 amount + ) internal virtual { + uint128 _amount = uint128(amount); + if (from != address(0)) { + uint128 fromBalance = _balances[id][from].amount; + require(uint256(fromBalance) >= amount, "ERC1155: insufficient balance for transfer"); + _balances[id][from].amount = fromBalance - _amount; + } + _balances[id][to].amount = _balances[id][to].amount.add(_amount); + } + + /// @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) + function __doSafeTransferAcceptanceCheck( + address operator, + address from, + address to, + uint256 id, + uint256 amount, + bytes memory data + ) private { + if (isContract(to)) { + try IERC1155Receiver(to).onERC1155Received(operator, from, id, amount, data) returns ( + bytes4 response + ) { + if (response != IERC1155Receiver.onERC1155Received.selector) { + revert("ERC1155: ERC1155Receiver rejected tokens"); + } + } catch Error(string memory reason) { + revert(reason); + } catch { + revert("ERC1155: transfer to non ERC1155Receiver implementer"); + } + } + } + + /// @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) + function __doSafeBatchTransferAcceptanceCheck( + address operator, + address from, + address to, + uint256[] memory ids, + uint256[] memory amounts, + bytes memory data + ) private { + if (isContract(to)) { + try + IERC1155Receiver(to).onERC1155BatchReceived(operator, from, ids, amounts, data) + returns (bytes4 response) { + if (response != IERC1155Receiver.onERC1155BatchReceived.selector) { + revert("ERC1155: ERC1155Receiver rejected tokens"); + } + } catch Error(string memory reason) { + revert(reason); + } catch { + revert("ERC1155: transfer to non ERC1155Receiver implementer"); + } + } + } + + /** + * @notice handles state updates before a fertilizer transfer + * Following the 1155 design from OpenZeppelin Contracts < 5.x. + * @param from - the account to transfer from + * @param to - the account to transfer to + * @param ids - an array of fertilizer ids + */ + function _beforeTokenTransfer( + address, // operator, + address from, + address to, + uint256[] memory ids, + uint256[] memory, // amounts + bytes memory // data + ) internal virtual { + uint256 bpf = uint256(fert.bpf); + if (from != address(0)) _update(from, ids, bpf); + _update(to, ids, bpf); + } + + //////////////////////////// Claiming Functions (Update) //////////////////////////// + + /** + * @notice Allows users to claim their fertilized beans directly. + * @param ids - an array of fertilizer ids to claim + * @param mode - the balance to transfer Beans to; see {LibTransfer.To} + */ + function claimFertilized(uint256[] memory ids, LibTransfer.To mode) external { + uint256 amount = __update(msg.sender, ids, uint256(fert.bpf)); + if (amount > 0) { + fert.fertilizedPaidIndex += amount; + LibTransfer.sendToken(pinto, amount, msg.sender, mode); + } + } + + /** + * @notice Calculates and transfers the rewarded beans + * from a set of fertilizer ids to an account's internal balance + * @param account - the user to update + * @param ids - an array of fertilizer ids + * @param bpf - the beans per fertilizer + */ + function _update(address account, uint256[] memory ids, uint256 bpf) internal { + uint256 amount = __update(account, ids, bpf); + if (amount > 0) { + fert.fertilizedPaidIndex += amount; + LibTransfer.sendToken(pinto, amount, account, LibTransfer.To.INTERNAL); + } + } + + /** + * @notice Calculates and updates the amount of beans a user should receive + * given a set of fertilizer ids and the current outstanding total beans per fertilizer + * @param account - the user to update + * @param ids - the fertilizer ids + * @param bpf - the current beans per fertilizer + * @return beans - the amount of beans to reward the fertilizer owner + */ + function __update( + address account, + uint256[] memory ids, + uint256 bpf + ) internal returns (uint256 beans) { + for (uint256 i; i < ids.length; ++i) { + uint256 stopBpf = bpf < ids[i] ? bpf : ids[i]; + uint256 deltaBpf = stopBpf - _balances[ids[i]][account].lastBpf; + if (deltaBpf > 0) { + beans = beans.add(deltaBpf.mul(_balances[ids[i]][account].amount)); + _balances[ids[i]][account].lastBpf = uint128(stopBpf); + } + } + emit ClaimFertilizer(ids, beans); + } + + //////////////////////////// Getters //////////////////////////////// + + /** + * @notice Returns the balance of fertilized beans of a fertilizer owner given + a set of fertilizer ids + * @param account - the fertilizer owner + * @param ids - the fertilizer ids + * @return beans - the amount of fertilized beans the fertilizer owner has + */ + function balanceOfFertilized( + address account, + uint256[] memory ids + ) external view returns (uint256 beans) { + uint256 bpf = uint256(fert.bpf); + for (uint256 i; i < ids.length; ++i) { + uint256 stopBpf = bpf < ids[i] ? bpf : ids[i]; + uint256 deltaBpf = stopBpf - _balances[ids[i]][account].lastBpf; + beans = beans.add(deltaBpf.mul(_balances[ids[i]][account].amount)); + } + } + + /** + * @notice Returns the balance of unfertilized beans of a fertilizer owner given + a set of fertilizer ids + * @param account - the fertilizer owner + * @param ids - the fertilizer ids + * @return beans - the amount of unfertilized beans the fertilizer owner has + */ + function balanceOfUnfertilized( + address account, + uint256[] memory ids + ) external view returns (uint256 beans) { + uint256 bpf = uint256(fert.bpf); + for (uint256 i; i < ids.length; ++i) { + if (ids[i] > bpf) + beans = beans.add(ids[i].sub(bpf).mul(_balances[ids[i]][account].amount)); + } + } + + /** + @notice Returns the current beans per fertilizer + */ + function beansPerFertilizer() external view returns (uint128) { + return fert.bpf; + } + + /** + @notice Returns fertilizer amount for a given id + */ + function getFertilizer(uint128 id) external view returns (uint256) { + for (uint256 i = 0; i < fert.fertilizerIds.length; i++) { + if (fert.fertilizerIds[i] == id) { + return fert.fertilizerAmounts[i]; + } + } + return 0; + } + + function totalFertilizedBeans() external view returns (uint256) { + return fert.fertilizedIndex; + } + + function totalUnfertilizedBeans() public view returns (uint256) { + uint256 totalUnfertilized = 0; + for (uint256 i = 0; i < fert.fertilizerIds.length; i++) { + uint256 id = fert.fertilizerIds[i]; + uint256 amount = fert.fertilizerAmounts[i]; + if (id > fert.bpf) { + totalUnfertilized += (id - fert.bpf) * amount; + } + } + return totalUnfertilized; + } + + function totalFertilizerBeans() external view returns (uint256) { + return fert.fertilizedIndex + totalUnfertilizedBeans(); + } + + function rinsedSprouts() external view returns (uint256) { + return fert.fertilizedPaidIndex; + } + + function rinsableSprouts() external view returns (uint256) { + return fert.fertilizedIndex - fert.fertilizedPaidIndex; + } + + function leftoverBeans() external view returns (uint256) { + return fert.leftoverBeans; + } + + function name() external pure returns (string memory) { + return "Beanstalk Payback Fertilizer"; + } + + function symbol() external pure returns (string memory) { + return "bsFERT"; + } + + function balanceOf(address account, uint256 id) public view virtual override returns (uint256) { + require(account != address(0), "ERC1155: balance query for the zero address"); + return _balances[id][account].amount; + } + + function lastBalanceOf(address account, uint256 id) public view returns (Balance memory) { + require(account != address(0), "ERC1155: balance query for the zero address"); + return _balances[id][account]; + } + + function lastBalanceOfBatch( + address[] memory accounts, + uint256[] memory ids + ) external view returns (Balance[] memory balances) { + balances = new Balance[](accounts.length); + for (uint256 i; i < accounts.length; ++i) { + balances[i] = lastBalanceOf(accounts[i], ids[i]); + } + } + + function uri(uint256) public view virtual override returns (string memory) { + return ""; + } + + /// @notice Checks if an account is a contract. + function isContract(address account) internal view returns (bool) { + uint size; + assembly { + size := extcodesize(account) + } + return size > 0; + } +} diff --git a/scripts/beanstalkShipments/data/beanstalkFertilizer.json b/scripts/beanstalkShipments/data/beanstalkFertilizer.json new file mode 100644 index 00000000..e336486e --- /dev/null +++ b/scripts/beanstalkShipments/data/beanstalkFertilizer.json @@ -0,0 +1,32 @@ +[ + [ + "1334303", // id + [ + [ + "0xBd120e919eb05343DbA68863f2f8468bd7010163", // account + "161", // amount + "340802" // lastBpf + ] + ] + ], + [ + "1334880", + [ + [ + "0x97b60488997482C29748d6f4EdC8665AF4A131B5", + "128", + "340802" + ] + ] + ], + [ + "1334901", + [ + [ + "0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73", + "500", + "340802" + ] + ] + ] +] \ No newline at end of file diff --git a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol new file mode 100644 index 00000000..e69de29b diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index c5ad7934..1667bdd4 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -10,11 +10,7 @@ import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -/** - * @title SiloPayback Test Suite - * @notice Comprehensive test suite for the SiloPayback yield-bearing token contract - * @dev Tests the Synthetix-style reward distribution mechanism and gaming prevention - */ + contract SiloPaybackTest is TestHelper { SiloPayback public siloPayback; MockToken public pintoToken; From 1d52531fc3ebf47af116716ccdd489a694b3b7da Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 11 Aug 2025 15:41:24 +0300 Subject: [PATCH 026/270] integrate fertilizer deployment and distribution into main flow --- .../beanstalkShipments/BarnPayback.sol | 6 +- hardhat.config.js | 2 +- lib/openzeppelin-contracts | 2 +- lib/openzeppelin-contracts-upgradeable | 2 +- lib/prb-math | 2 +- ...r.json => beanstalkAccountFertilizer.json} | 0 .../data/beanstalkGlobalFertilizer.json | 220 + .../data/beanstalkPlots.json | 9648 +---------------- scripts/beanstalkShipments/deployContracts.js | 50 +- 9 files changed, 271 insertions(+), 9661 deletions(-) rename scripts/beanstalkShipments/data/{beanstalkFertilizer.json => beanstalkAccountFertilizer.json} (100%) create mode 100644 scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json diff --git a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol index 7d3ffb48..b44c5b17 100644 --- a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol @@ -14,7 +14,6 @@ import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; /** - * @author Publius * @dev Fertilizer tailored implementation of the ERC-1155 standard. * We rewrite transfer and mint functions to allow the balance transfer function be overwritten as well. * Merged from multiple contracts: Fertilizer.sol, Internalizer.sol, Fertilizer1155.sol @@ -489,4 +488,9 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } return size > 0; } + + /// @dev called by the ShipmentPlanner contract to determine how many pinto to send to the barn payback contract + function barnRemaining() external view returns (uint256) { + return totalUnfertilizedBeans(); + } } diff --git a/hardhat.config.js b/hardhat.config.js index 7cbd3ef5..19c28400 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2039,7 +2039,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi // Step 0: Deploy all new contracts here and perform any actions before handing over ownership let contracts = {}; - // todo: it might be better to deploy the proxies in the shipments init script and hardcode the addresses + // note: it might be better to deploy the proxies in the shipments init script and hardcode the addresses // if we do that we still need to distribute the unripe bdv tokens and hand over ownership to the PCM from here if (deploy) { contracts = await deployAndSetupContracts({ diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts index 10a776ba..d9933585 160000 --- a/lib/openzeppelin-contracts +++ b/lib/openzeppelin-contracts @@ -1 +1 @@ -Subproject commit 10a776bae653a3d388e75954d44bd34d746e2dda +Subproject commit d9933585b6c134589d6819909a932de4c1a0db7f diff --git a/lib/openzeppelin-contracts-upgradeable b/lib/openzeppelin-contracts-upgradeable index 7c8e9004..28b39d32 160000 --- a/lib/openzeppelin-contracts-upgradeable +++ b/lib/openzeppelin-contracts-upgradeable @@ -1 +1 @@ -Subproject commit 7c8e90046cdf3447971c201c1940d489fa2064bb +Subproject commit 28b39d323943eeb8ccb2c6342808dfb37ad1c514 diff --git a/lib/prb-math b/lib/prb-math index b8583d49..2c597391 160000 --- a/lib/prb-math +++ b/lib/prb-math @@ -1 +1 @@ -Subproject commit b8583d490b5f3a1017c09dd9568b45c736281d3e +Subproject commit 2c597391f16e5ada196aca3d77c81fd653574974 diff --git a/scripts/beanstalkShipments/data/beanstalkFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json similarity index 100% rename from scripts/beanstalkShipments/data/beanstalkFertilizer.json rename to scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json diff --git a/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json b/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json new file mode 100644 index 00000000..07ce9499 --- /dev/null +++ b/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json @@ -0,0 +1,220 @@ +[ + // ids + [ + "1334303", + "1334880", + "1334901", + "1334925", + "1335008", + "1335068", + "1335304", + "1336323", + "1337953", + "1338731", + "1348369", + "1363069", + "1363641", + "1418854", + "1553682", + "1593637", + "2078193", + "2313052", + "2373025", + "2382999", + "2412881", + "2452755", + "2482696", + "2492679", + "2502666", + "2687438", + "2702430", + "2767422", + "2811995", + "2871153", + "2886153", + "2891153", + "2901153", + "2921113", + "2945769", + "2955590", + "2975557", + "3005557", + "3015555", + "3045431", + "3060408", + "3095329", + "3125329", + "3130329", + "3164439", + "3223426", + "3268426", + "3278426", + "3293426", + "3303426", + "3308426", + "3313426", + "3328426", + "3338293", + "3343293", + "3363293", + "3383071", + "3393052", + "3398029", + "3413005", + "3418005", + "3423005", + "3428005", + "3433005", + "3438005", + "3439448", + "3441470", + "3441822", + "3443005", + "3443526", + "3445713", + "3446568", + "3447839", + "3447990", + "3450159", + "3452316", + "3452735", + "3452989", + "3455539", + "3457989", + "3458512", + "3458531", + "3461694", + "3462428", + "3463060", + "3465087", + "3465205", + "3466192", + "3467650", + "3468402", + "3468691", + "3470075", + "3470220", + "3471339", + "3471974", + "3472026", + "3472520", + "3476597", + "3480951", + "3485472", + "3490157", + "3495000", + "3500000", + "6000000" + ], + // amounts + [ + "161", + "128", + "500", + "941", + "50", + "499", + "73", + "78", + "39", + "116", + "803", + "323", + "499", + "50", + "10", + "260", + "844", + "912", + "2236", + "578", + "196", + "130", + "1000", + "65", + "20", + "51", + "1", + "597", + "45", + "1237", + "423", + "746", + "284", + "1500", + "101", + "500", + "342", + "283", + "997", + "955", + "564", + "451", + "5338", + "1918", + "606", + "1240", + "3040", + "2540", + "3020", + "97", + "1385", + "1395", + "5294", + "176", + "1764", + "256", + "337", + "399", + "476", + "9110", + "1471", + "54094", + "3434", + "526", + "2346", + "28808", + "21596", + "73300", + "12780", + "894", + "129893", + "47829", + "95931", + "8818", + "32160", + "51309", + "95601", + "607", + "4130", + "6564", + "654416", + "59400", + "2987", + "15741", + "55490", + "3095", + "28787", + "12030", + "122662", + "149224", + "100", + "7958", + "350230", + "130195", + "176919", + "201971", + "15388", + "15753", + "4383", + "11003", + "31160", + "3032", + "70842", + "14364122" + ], + "5654645373178", // index + "5654645373178", // paid index + "340802", // bpf + "0", // leftover beans +] diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json index 27a079b1..47714ca9 100644 --- a/scripts/beanstalkShipments/data/beanstalkPlots.json +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -315,9651 +315,5 @@ ["206627322508711", "42841247573"], ["206670163756284", "42783848059"] ] - ], - ["0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", [["122213630970075", "2500000000"]]], - [ - "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", - [ - ["685372001238017", "203615000"], - ["695900937229816", "1040000000"], - ["707860938916827", "2437432840"], - ["733380425581158", "2387375166"], - ["733480004003187", "421577971"], - ["743115143767009", "291165686"], - ["799284353729748", "20323399607"], - ["821599947215732", "1145095488"], - ["901681090548064", "1108572912315"] - ] - ], - ["0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b", [["219659688648330", "1610099875"]]], - ["0x14A9034C185f04a82FdB93926787f713024c1d04", [["921105492232241", "122609442232"]]], - [ - "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", - [ - ["843583452824618", "64162381017"], - ["889722682869114", "157785618045"] - ] - ], - [ - "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", - [ - ["61618622471895", "24594200"], - ["94355302482701", "903943566"], - ["859415870473872", "8915991349"] - ] - ], - ["0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", [["708120196123286", "18"]]], - [ - "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", - [ - ["684773211540053", "529063312964"], - ["672857205023752", "10622053659968"] - ] - ], - [ - "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", - [ - ["74037039934810", "69000000000"], - ["88792768518840", "11430287315"], - ["213111754387101", "102043966209"], - ["263318877791896", "109329481723"], - ["278018963436918", "109550000000"], - ["285095759529751", "215672515793"], - ["282425872557291", "303606880000"], - ["311239099542108", "136745811108"], - ["320232726795024", "213600000000"], - ["387729356992496", "56701527977"], - ["398441539093275", "524000000000"], - ["392948920651510", "77550000000"], - ["593725791584083", "74008715512"], - ["612092351995102", "77710549315"], - ["612276454284417", "77448372715"], - ["611896253513734", "154323271198"], - ["641596173549000", "385627368167"], - ["649980355544877", "24416902119"], - ["649973165211557", "7190333320"], - ["652682099895575", "192654267895"], - ["704814323609845", "9539096044"], - ["704800692794098", "6908969226"], - ["704182741158592", "6077435843"], - ["704807601763324", "6721846521"] - ] - ], - ["0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21", [["288960520307671", "45528525078"]]], - [ - "0x15e6e23b97D513ac117807bb88366f00fE6d6e17", - [ - ["582212768487404", "1766705104317"], - ["559365222387574", "437186238884"], - ["591550466739965", "35719340050"], - ["591607575479537", "125209382874"] - ] - ], - ["0x15e83602FDE900DdDdafC07bB67E18F64437b21e", [["325833631808009", "47834854016"]]], - [ - "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", - [ - ["133704865469102", "357542100000"], - ["150370640781563", "1175500000023"], - ["426551529912775", "1865083098796"], - ["450168730809845", "1434547698166"], - ["666997267147860", "390832131713"], - ["809445084704397", "2915005876762"] - ] - ], - [ - "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", - [ - ["170675709922115", "200302309"], - ["697016479267143", "8122037505"], - ["696972363184307", "920876600"], - ["707948630301958", "4169534646"], - ["767020132229302", "622068"], - ["828631931683650", "48133673"] - ] - ], - ["0x16785ca8422Cb4008CB9792fcD756ADbEe42878E", [["328431316120274", "20209787690"]]], - ["0x168c6aC0268a29c3C0645917a4510ccd73F4D923", [["733779102875875", "29376243060"]]], - ["0x16942d62E8ad78A9026E41Fab484C265FC90b228", [["221885504514381", "3293294269"]]], - [ - "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d", - [ - ["921035792719039", "2259704612"], - ["921102463475874", "3028756367"], - ["921452930531316", "3253278012"], - ["978072441547137", "14518741904"] - ] - ], - [ - "0x183be3011809A2D41198e528d2b20Cc91b4C9665", - [ - ["275066767853782", "791280000"], - ["276925106918842", "266104007323"], - ["275067559133782", "27839621824"] - ] - ], - ["0x184CbD89E91039E6B1EF94753B3fD41c55e40888", [["829727454479103", "3341098908"]]], - ["0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", [["829217258503469", "329449782"]]], - [ - "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD", - [ - ["319211641505303", "167225426282"], - ["320733140604175", "361835231607"] - ] - ], - [ - "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", - [ - ["94344360039302", "221122"], - ["228817042094650", "7229528214"], - ["380204596964305", "251763737525"], - ["386789692157768", "87903418092"], - ["399077581172535", "30560719176"], - ["467294667649600", "20904868241"], - ["545522025241359", "25643572670"], - ["568793551054470", "72403522735"], - ["584654701827488", "42093860151"], - ["592872384656832", "42662135276"], - ["628826602399709", "9489375000"], - ["628614673024709", "9489375000"], - ["626799392488540", "18978750000"], - ["632125035347047", "9489375000"], - ["632336964722047", "9489375000"], - ["640792340953260", "76688553531"], - ["650139403697488", "54681668957"], - ["667388099279573", "65298375971"], - ["685733468508954", "39404468562"], - ["706552794352109", "386055000000"], - ["708996860813003", "13807475000"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["61549737588069", "1377517"], - ["137157571042349", "19169818"], - ["697954540486029", "17394829"], - ["710903001207054", "225355921"], - ["803070610911920", "92867236"], - ["802857174622935", "1485847896"], - ["803070518758042", "92153878"], - ["802855790884669", "1383738266"], - ["803032956871681", "10465635"], - ["802854130822523", "841394646"], - ["803032967337316", "5645699"], - ["803032946626183", "10245498"], - ["803171251410912", "435226"], - ["803688154585644", "1417000000"], - ["803672696597725", "270820"], - ["803675374247341", "10795914"], - ["803674115618545", "1258079286"], - ["803671606642827", "717824824"], - ["803688154562070", "23574"], - ["804851839851309", "811945"], - ["803672696868545", "1418750000"], - ["803671492278192", "114364635"], - ["804842695055238", "470214653"], - ["803675385043255", "13800216"], - ["803078202347988", "569000000"], - ["803620273889824", "568300000"], - ["804851218959878", "620891431"], - ["804485288606716", "5992389"], - ["803672324467651", "372130074"], - ["804843913642525", "227807703"], - ["804843165269891", "748372634"], - ["804485294599105", "3305213"], - ["803675373697831", "549510"], - ["805534475323045", "26650792"], - ["820973810757086", "53934662"], - ["805534446918497", "28404548"], - ["805891135943172", "1401250000"], - ["820890206310756", "383411"], - ["820922375604392", "819071019"], - ["820975559130399", "304771266"], - ["820950339134311", "342360149"], - ["805861697362172", "1401250000"], - ["820949807899505", "80837003"], - ["805534420438067", "26480430"], - ["820974880153665", "87772583"], - ["820977309418061", "195479514"], - ["805892537193172", "1402000000"], - ["820974622042147", "53840934"], - ["820993666918630", "33837399"], - ["820993505230366", "5976553"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["820994173068216", "45526410"], - ["821073396083259", "37991124"], - ["821073540860163", "33378"], - ["820994358612014", "53414936"], - ["820993500016554", "5213812"], - ["820993511206919", "21553814"], - ["820993495899937", "4116617"], - ["820993700756029", "2739149"], - ["821073540366841", "51906"], - ["820994056469831", "42017555"], - ["820978816410967", "16253699"], - ["821069504835549", "107661120"], - ["821069774714254", "1297000000"], - ["821064034478928", "45905339"], - ["821072969452540", "241078908"], - ["821069302460527", "38630505"], - ["821073529008485", "11358356"], - ["821069750025068", "24689186"], - ["821069412658261", "26325085"], - ["821071071714254", "1897738286"], - ["821073359455743", "36627516"], - ["821068921363414", "23725468"], - ["821069709418405", "40606663"], - ["820994454025062", "993492"], - ["821096921778762", "87943134"], - ["821073730703338", "1560798"], - ["821073959413996", "87607044"], - ["821073540893541", "59927806"], - ["821074210355186", "91379524"], - ["821073730634519", "68819"], - ["821098529503011", "178428925"], - ["821074864848932", "17689777"], - ["821074343843606", "42970660"], - ["821096135891960", "89244217"], - ["821096499863651", "19970712"], - ["821097993225516", "11106068"], - ["821097160102704", "52891473"], - ["821074425330645", "36709909"], - ["821074827381965", "17764676"], - ["821074146140978", "64214208"], - ["821073600821347", "129787486"], - ["821074634544550", "136593205"], - ["821096519834363", "40621903"], - ["821074462040554", "37022875"], - ["821099172593160", "63434690"], - ["821097090423746", "34810751"], - ["821095944425893", "191466067"], - ["821097009721896", "80701850"], - ["821098004331584", "754844"], - ["821074301734710", "42108896"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["821074386814266", "38516379"], - ["821097939418858", "53806658"], - ["821097531737407", "84942957"], - ["821099789501546", "15686626"], - ["821074998918921", "1264250000"], - ["821097386793728", "87498268"], - ["821095918304742", "5871934"], - ["821074606368827", "9283973"], - ["821096719830430", "28296198"], - ["821074777933198", "7586684"], - ["821074771137755", "6795443"], - ["821096560456266", "53101794"], - ["821097125234497", "34868207"], - ["821074134076500", "12027360"], - ["821098301224132", "85630651"], - ["821096426623230", "73240421"], - ["821074960591003", "38327918"], - ["821073872376148", "87037848"], - ["821098707931936", "123574577"], - ["821096341659648", "84963582"], - ["821096666668672", "53161758"], - ["821096834639421", "87139341"], - ["821074047021040", "87055460"], - ["821074882538709", "19315364"], - ["821074845146641", "19702291"], - ["821074499063429", "37059712"], - ["821095912506750", "5797992"], - ["821074615652800", "174300"], - ["821097701927878", "77422809"], - ["821074921273738", "19518970"], - ["821099566249860", "2958794"], - ["821074785519882", "20897127"], - ["821097779350687", "79919576"], - ["821099445427640", "96930960"], - ["821074615827100", "18717450"], - ["821099769730455", "19771091"], - ["821099092664851", "79928309"], - ["821099640622401", "64736772"], - ["821097859270263", "80148595"], - ["821099236027850", "209399790"], - ["821097616680364", "85247514"], - ["821074940792708", "19798295"], - ["821098005086428", "86600675"], - ["821096613558060", "53110612"], - ["821098386854783", "53709030"], - ["821099542358600", "23891260"], - ["821099740942536", "28787919"], - ["821074806417009", "20964956"], - ["821099576246308", "64376093"], - ["821073732264136", "53380815"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["821074901854073", "19419665"], - ["821074536123141", "37098116"], - ["821098178122526", "44248597"], - ["821098440563813", "88939198"], - ["821099705359173", "35583363"], - ["821073730608833", "25686"], - ["821095911438790", "1067960"], - ["821096748126628", "86512793"], - ["821095924176676", "20249217"], - ["821482818446346", "53690506"], - ["821100289021688", "104148749"], - ["821483083307179", "17275264"], - ["821483026409370", "36974408"], - ["821483136545125", "11536310"], - ["821486583148010", "54141970"], - ["821100646167491", "55455079"], - ["821482800427408", "18018938"], - ["821483104880745", "2606436"], - ["821482980796998", "45612372"], - ["821486777181018", "70867493"], - ["821486706630195", "70550823"], - ["821101071162242", "54726591"], - ["821100497627822", "39466456"], - ["821482872136852", "22923031"], - ["821482351457491", "935137"], - ["821100393170437", "104457385"], - ["821483100582443", "696496"], - ["821486529201123", "53946887"], - ["821099980903638", "100272607"], - ["821483102582399", "2298346"], - ["821483063383778", "19923401"], - ["821483113598516", "470384"], - ["821486848048511", "24481635"], - ["821483101278939", "1303460"], - ["821486925050950", "53846437"], - ["821486637289980", "69340215"], - ["821486475267611", "53933512"], - ["821099893528805", "87374833"], - ["821482895059883", "21080639"], - ["821482353283335", "934897"], - ["821482354218232", "1008171"], - ["821482935336484", "45460514"], - ["821482348876348", "2581143"], - ["821482356166815", "444260593"], - ["821482327568473", "21307875"], - ["821482916140522", "19195962"], - ["821486978897387", "54081133"], - ["821486421403049", "53864562"], - ["821482355226403", "940412"], - ["821482352392628", "890707"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["821483114068900", "11175759"], - ["821100591554021", "54613470"], - ["821100185007919", "104013769"], - ["821100537094278", "54459743"], - ["821483125244659", "11300466"], - ["821101125888833", "53864309"], - ["823423973305397", "111320920"], - ["823424084626317", "53936630"], - ["822986878246566", "27685781"], - ["821599574901006", "785942"], - ["821599575686948", "1144304"], - ["822986595429986", "17079412"], - ["822986701919933", "43935728"], - ["822986647297190", "13476875"], - ["822986745855661", "53726319"], - ["821599576831252", "1310135"], - ["822936449523294", "160545"], - ["822986831149317", "19442054"], - ["822986799581980", "31567337"], - ["823424576246663", "29618432"], - ["822986674258965", "27660968"], - ["823424192573832", "54033702"], - ["823424489256825", "86989838"], - ["822990062504016", "17618940"], - ["824070121174749", "53517184"], - ["823424738820253", "88554558"], - ["824070174691933", "53566454"], - ["823424300661581", "54159010"], - ["824069836027334", "55156263"], - ["822986549458933", "22956002"], - ["824070444601847", "2889658"], - ["822986572414935", "23015051"], - ["822936449683839", "429708"], - ["822990132831068", "1133750000"], - ["822937163889264", "457637"], - ["824069912397647", "52319596"], - ["822986612509398", "34787792"], - ["823424354820591", "53483677"], - ["824055940006049", "1123500000"], - ["824069781850021", "54177313"], - ["823424246607534", "54054047"], - ["822936450113547", "618377"], - ["822990080122956", "52708112"], - ["823424605865095", "53514750"], - ["823424138562947", "54010885"], - ["824055825790314", "98431377"], - ["822986660774065", "13484900"], - ["824070447491505", "46035569"], - ["824055924221691", "15784358"], - ["823424659379845", "79440408"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["824070228258387", "54362634"], - ["824070344363474", "100238373"], - ["822986520514896", "28944037"], - ["822986905932347", "14517084"], - ["824069964717243", "156457506"], - ["822947849664869", "984887"], - ["823968318915582", "1124000000"], - ["822936450731924", "835669"], - ["822986850591371", "27655195"], - ["825006225227225", "11924506"], - ["825006468327689", "78649"], - ["825005874918558", "87811"], - ["825005658772315", "46564085"], - ["824583181650333", "3194591"], - ["825006577963887", "2881442"], - ["825006224809492", "65545"], - ["825006470584497", "53679679"], - ["825008324010622", "11118127"], - ["825008313350567", "10660055"], - ["825006624615481", "60410828"], - ["825006225073575", "153650"], - ["825006685026309", "36230820"], - ["825008294645463", "7227368"], - ["825033678345863", "10530035"], - ["825005856065368", "18853190"], - ["824932206771837", "53478200"], - ["825033578931622", "18842007"], - ["825005796722553", "390583"], - ["825006365807399", "43889485"], - ["825006224781119", "28373"], - ["825008301872831", "11477736"], - ["825006463334702", "4992987"], - ["825006721257129", "71702191"], - ["825033704209239", "8970126"], - ["825033560913072", "18018550"], - ["825027253641430", "63786254"], - ["825027317427684", "64002031"], - ["825028414024846", "37968961"], - ["825005705336400", "53551433"], - ["825006215052127", "9728992"], - ["825033699604155", "4605084"], - ["825006052442158", "53513899"], - ["825027416163511", "861786"], - ["825006363677016", "2130383"], - ["825033513835500", "29092593"], - ["825033542928093", "17984979"], - ["825033676427114", "1918749"], - ["825033688875898", "10728257"], - ["825005758887833", "37834720"], - ["825006224875037", "92711"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["825033646015171", "17883715"], - ["825005875006369", "46267543"], - ["825006409696884", "53637818"], - ["825005852215332", "1578152"], - ["825006580845329", "43770152"], - ["824932260250037", "54572785"], - ["825033614462497", "15727180"], - ["825006237151731", "19203818"], - ["824836809853556", "1115750000"], - ["825005921273912", "59141147"], - ["825033597773629", "16688868"], - ["825033663898886", "12528228"], - ["824921401736038", "1116000000"], - ["825027417025297", "10162644"], - ["825028404780931", "9243915"], - ["825006524264176", "53699711"], - ["825033630189677", "15825494"], - ["825005797113136", "55102196"], - ["825005998968976", "53473182"], - ["825008287492407", "7153056"], - ["825006224967748", "105827"], - ["825067558948101", "15087847"], - ["825039551308902", "73796314"], - ["825039504519447", "8829644"], - ["825106731909933", "3016979"], - ["825107423828909", "9143544"], - ["825082488040390", "11935751"], - ["825082476575324", "11465066"], - ["825107295406571", "8620088"], - ["825082442949234", "11007680"], - ["825107451802680", "10373808"], - ["825073357786952", "15498278"], - ["825073373285230", "24830243"], - ["825104716202541", "85094056"], - ["825112083243955", "11304378"], - ["825112116754925", "9837030"], - ["825082533722670", "9765854"], - ["825107370206540", "10828154"], - ["825104801296597", "85627588"], - ["825082543488524", "9797075"], - ["825112094548333", "11337518"], - ["825107393267880", "12897667"], - ["825107388578228", "4689652"], - ["825109923435429", "8984999"], - ["825109932420428", "9076772"], - ["825107442385795", "9416885"], - ["825107333368766", "9543362"], - ["825039541252327", "10056575"], - ["825112071969838", "10372838"], - ["825107432972453", "9413342"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["825112082342676", "901279"], - ["825082453956914", "11282748"], - ["825107406165547", "8815547"], - ["825107352523424", "9636433"], - ["825109914552345", "8883084"], - ["825039516660288", "12163802"], - ["825107362159857", "8046683"], - ["825082465239662", "11335662"], - ["825082525740435", "7982235"], - ["825107462176488", "19789932"], - ["825106738018377", "557388194"], - ["825107304026659", "29342107"], - ["825106734926912", "3091465"], - ["825112127692784", "66658"], - ["825112127759442", "73073"], - ["825112126591955", "1100829"], - ["825082553285599", "1044500000"], - ["825107342912128", "9611296"], - ["825082499976141", "12877546"], - ["825039528824090", "12428237"], - ["825107381034694", "7543534"], - ["825039513349091", "3311197"], - ["825082512853687", "12886748"], - ["825073398115473", "24944523"], - ["825185822014682", "9213207"], - ["825188991096414", "8204048"], - ["825185812810597", "9204085"], - ["825114848852115", "11006773"], - ["825112271009857", "45138194"], - ["825187298818780", "5496270"], - ["825188026838625", "255180"], - ["825185194550203", "9063092"], - ["825187304315050", "361195"], - ["825112249678795", "7945168"], - ["825187305448349", "696608867"], - ["825185222525166", "12814935"], - ["825188066592264", "33393007"], - ["825114859858888", "328433"], - ["825112376293263", "8506342"], - ["825112244034340", "5644455"], - ["825185799663761", "10969416"], - ["825114837914603", "10937512"], - ["825188027093805", "8969278"], - ["825114860187321", "10334991"], - ["825112145330613", "347778"], - ["825188015302767", "11535858"], - ["825185235340101", "13040915"], - ["825188045366876", "9999166"], - ["825112235743643", "8290697"], - ["825187304676245", "772104"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["825112145010853", "319760"], - ["825112144830222", "75873"], - ["825187276354073", "11163969"], - ["825188100720648", "10266010"], - ["825189009033104", "10150423"], - ["825188065375580", "1216684"], - ["825185772618353", "12804398"], - ["825112364296535", "11996728"], - ["825188099985271", "735377"], - ["825185810633177", "2177420"], - ["825112318014638", "9980195"], - ["825112225187279", "10556364"], - ["825112316148051", "1866587"], - ["825185764598778", "8019575"], - ["825112214730127", "10457152"], - ["825112144906095", "104758"], - ["825112128246593", "16583629"], - ["825112327994833", "5750227"], - ["825188999300462", "9732642"], - ["825188055366042", "10009538"], - ["825187287518042", "11300738"], - ["825188011107595", "4195172"], - ["825112257623963", "13385894"], - ["825112127832515", "414078"], - ["825188002057216", "9050379"], - ["825188036063083", "9303793"], - ["825185785422751", "14241010"], - ["825112353389886", "10906649"], - ["825112333745060", "9795651"], - ["825580659335921", "895341231"], - ["825581644328084", "1617109"], - ["825583171953653", "9988705"], - ["825229215284291", "17982514"], - ["825581646847068", "8786495"], - ["825583266459628", "428167"], - ["825581664430557", "483474928"], - ["825583118348577", "3844352"], - ["825580627747359", "10260665"], - ["825581590448673", "5437824"], - ["825460171990725", "945750000"], - ["825583190922994", "9308598"], - ["825229233266805", "18573856"], - ["825581612327272", "4836310"], - ["825244315254643", "10253563"], - ["825242377255158", "8992681"], - ["825581554677152", "3190831"], - ["825244308547528", "6707115"], - ["825242386247839", "943500000"], - ["825583209566861", "7550863"], - ["825581595886497", "1634581"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["825583109990132", "8013962"], - ["825581655633563", "8796994"], - ["825583267817775", "591362"], - ["825242371019283", "6235875"], - ["825583248122282", "808524"], - ["825582204265419", "19005242"], - ["825243329747839", "943500000"], - ["825583200231592", "9335269"], - ["825582167236116", "18030442"], - ["825583161486214", "10467439"], - ["825583181942358", "8980636"], - ["825581597521078", "30412"], - ["825583265627702", "188453"], - ["825244378205323", "940750000"], - ["825583141596235", "9503988"], - ["825580648451835", "10884086"], - ["825583267324776", "492999"], - ["825581605623348", "6703924"], - ["825582157851364", "9384752"], - ["825583243439223", "4683059"], - ["825581597551490", "6680863"], - ["825583266060401", "399227"], - ["825581619511113", "2444950"], - ["825583266887795", "436981"], - ["825581617163582", "2347531"], - ["825583248930806", "16696896"], - ["825581565974232", "8125848"], - ["825583132097489", "9498746"], - ["825240859481990", "944000000"], - ["825586067955203", "9556834"], - ["825582185266558", "18998861"], - ["827241682390579", "905500000"], - ["825580617739998", "10007361"], - ["825581621956063", "2595517"], - ["825582147905485", "9945879"], - ["825583217117724", "4906079"], - ["825583265816155", "244246"], - ["825581574100080", "8140742"], - ["825580638008024", "10443811"], - ["825581604232353", "1390995"], - ["825583151100223", "10385991"], - ["825583222023803", "8991244"], - ["825581582240822", "8207851"], - ["825583123163974", "8933515"], - ["825583118004094", "344483"], - ["825244273247839", "35299689"], - ["825581624551580", "5693285"], - ["825566910071858", "946000000"], - ["825581630244865", "7659096"], - ["825244325508206", "52697117"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["825581645945193", "901875"], - ["825583231015047", "12424176"], - ["829112200225422", "53768852"], - ["829112309346999", "47061647"], - ["829134222111169", "88216460"], - ["829113555241771", "129427752"], - ["829112093912242", "52737476"], - ["829133985483437", "65591706"], - ["829112253994274", "55352725"], - ["829113466908646", "88333125"], - ["829133930861943", "54621494"], - ["829112146649718", "53575704"], - ["829133852675919", "78186024"], - ["829134051075143", "81397820"], - ["829134132472963", "89638206"], - ["829112356408646", "1110500000"], - ["829132731425561", "1121250000"], - ["829186461004640", "132785034"], - ["829135193420574", "88084070"], - ["829188134239460", "87910416"], - ["829185573423485", "119219224"], - ["829135017343885", "88031169"], - ["829188309833608", "86467952"], - ["829134310327629", "85936196"], - ["829186593789674", "149829249"], - ["829185449045229", "124378256"], - ["829187693806944", "86928993"], - ["829187780735937", "86484069"], - ["829188222149876", "87683732"], - ["829135105375054", "88045520"], - ["829187604974711", "88832233"], - ["829183942530034", "1118250000"], - ["829189006615252", "123265068"], - ["829187954236880", "88333175"], - ["829186329362814", "131641826"], - ["829188918427997", "88187255"], - ["829135369663422", "1111500000"], - ["829186070168158", "129567688"], - ["829185813411655", "128280239"], - ["829185316296360", "132748869"], - ["829188830084449", "88343548"], - ["829188042570055", "91669405"], - ["829185060781957", "128513841"], - ["829185189295798", "127000562"], - ["829188657245410", "86397690"], - ["829188743643100", "86441349"], - ["829135281504644", "88157182"], - ["829188482895673", "86619651"], - ["829188569515324", "87730086"], - ["829187434127434", "83536024"] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - ["829187517663458", "87311253"], - ["829187867220006", "87016874"], - ["829185692642709", "120768946"], - ["829134396263825", "88956801"], - ["829188396301560", "86594113"], - ["829186199735846", "129626968"], - ["920968356254447", "1695263"], - ["920968354641147", "1613300"], - ["920968314518884", "19836791"], - ["906983573530786", "3559343229"], - ["906995344962388", "1723984401"], - ["920968312735493", "169491"], - ["906987132874015", "4963424782"], - ["920756437449865", "22832250"], - ["920968334355675", "20285472"], - ["920968312904984", "1613900"], - ["920968357949710", "1781388"], - ["920887612562705", "1614400"], - ["906992096298797", "3248663591"], - ["920968359731098", "9760866"], - ["920968312574043", "161450"], - ["921032077741323", "1025355734"], - ["921033913769314", "325809885"], - ["921038052423810", "169472"], - ["921228157944019", "189471"], - ["921228157765182", "178837"], - ["921234916621567", "158770"], - ["921234916780337", "168264"], - ["921234927690661", "188829"], - ["921228157596346", "168836"], - ["921234927512430", "178231"] - ] - ], - ["0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", [["273849569531660", "405214898001"]]], - ["0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C", [["782079849018782", "15067225270"]]], - [ - "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", - [ - ["704261722238546", "40000000000"], - ["705035364874150", "3366190225"] - ] - ], - ["0x1a368885B299D51E477c2737E0330aB35529154a", [["380108286748272", "96310216033"]]], - [ - "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", - [ - ["137326674947492", "4483509093"], - ["685851937459713", "131393988394"], - ["697024601304648", "9135365741"], - ["697437775548568", "8420726212"], - ["700775956537639", "24523740645"] - ] - ], - ["0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b", [["231383431415446", "17764281739"]]], - [ - "0x1aD66517368179738f521AF62E1acFe8816c22a4", - [ - ["99853968145381", "4046506513"], - ["695325992991875", "3652730115"], - ["695567344648276", "6190991388"], - ["700553830319668", "10000000000"], - ["702015571595271", "43494915041"], - ["741936420806118", "7644571244"] - ] - ], - [ - "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", - [ - ["214829631163034", "531500000"], - ["281320507868691", "187950000"], - ["291068019486498", "6322304733"], - ["291074341791231", "8363898233"], - ["340197326378415", "3937395000"], - ["340201263773415", "5849480200"] - ] - ], - [ - "0x1d264de8264a506Ed0E88E5E092131915913Ed17", - [ - ["710372916011430", "4669501379"], - ["857167591329417", "84590167390"] - ] - ], - ["0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", [["842942611006904", "29578830513"]]], - [ - "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974", - [ - ["133627550205856", "15344851129"], - ["315350882670410", "134379000000"], - ["592915046792108", "52512241871"] - ] - ], - [ - "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", - [ - ["61562303026931", "736682080"], - ["221828136095026", "19581291457"], - ["462669721238188", "5331732217"] - ] - ], - [ - "0x1faD27B543326E66185b7D1519C4E3d234D54A9C", - [ - ["64930655802639", "1000000000"], - ["99189665085461", "10000000000"] - ] - ], - [ - "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb", - [ - ["392840471543149", "14540205488"], - ["398071126756837", "6716741513"], - ["399504324312896", "12611715224"], - ["397292891284114", "11093799305"] - ] - ], - [ - "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e", - [ - ["716942471194887", "110759009"], - ["803620842189824", "50650088368"] - ] - ], - [ - "0x2032d6Fa962f05b05a648d0492936DCf879b0646", - [ - ["228771788234887", "21180650802"], - ["249938635416148", "7159870568"], - ["250294538522919", "22812490844"], - ["281320695833261", "12020746267"] - ] - ], - [ - "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", - [ - ["170713622328250", "1273885350"], - ["695948584939839", "2308620655"] - ] - ], - ["0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa", [["698245289553297", "3895753147"]]], - ["0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A", [["437461460697730", "6429254333"]]], - [ - "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", - [ - ["437606570634752", "8428341425"], - ["742839943057312", "10245080960"], - ["787226641244792", "14602599487"], - ["920389666843550", "16570064186"] - ] - ], - [ - "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", - [ - ["696118400377928", "93881590000"], - ["696390462795444", "89275000000"] - ] - ], - [ - "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", - [ - ["203059138411712", "14065000000"], - ["687187720700622", "125719249019"] - ] - ], - ["0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", [["710861186022257", "44876189"]]], - ["0x234831d4CFF3B7027E0424e23F019657005635e1", [["828631129842715", "229602422"]]], - [ - "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6", - [ - ["263523134379428", "268265834079"], - ["262966718164117", "262588887949"], - ["281320695818691", "14570"] - ] - ], - ["0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3", [["980155130122492", "1124719481"]]], - [ - "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2", - [ - ["122998461837356", "5201831386928"], - ["143946577539573", "311908399084"], - ["433523087906845", "2871900000000"] - ] - ], - ["0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", [["247712146323222", "8569224376"]]], - ["0x25d5Eb0603f36c47A53529b6A745A0805467B21F", [["360425196306582", "22010000022"]]], - ["0x2612C1bc597799dc2A468D6537720B245f956A22", [["710259438675628", "220044920"]]], - [ - "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", - [ - ["61563039709011", "27751913384"], - ["61593222078156", "25323470663"], - ["66060152220501", "10898078686"], - ["61648981202377", "9564346441"], - ["61619517190894", "9028357925"], - ["404658386198455", "26569428177"], - ["642274093954569", "762766666666"], - ["705542895589909", "32"], - ["705675547635492", "32"], - ["708681724403578", "80311"], - ["708952399044253", "15368221875"], - ["709082741118137", "11699675781"], - ["709291212913029", "13655200000"], - ["709347439213312", "15127645459"], - ["709666160545746", "17"], - ["709193550480848", "12204390625"], - ["709272537420605", "11488750000"], - ["709798762004166", "17910660356"], - ["709565927452452", "15524432405"], - ["709448642373724", "9068714111"], - ["709519360962721", "17199921875"], - ["709832451486322", "13031467277"], - ["710259658720548", "12668079062"], - ["710216373550628", "13380625000"], - ["715686280190677", "213185000000"], - ["716612673098656", "154938000000"], - ["724130728209805", "28"], - ["731398662872567", "195093286581"], - ["732333253261855", "9227239745"], - ["727657124370114", "294971062419"], - ["726830253055101", "20"], - ["725748414871523", "22"], - ["727380002538907", "277121831207"], - ["731042086156263", "168992222694"], - ["731837568659148", "8315794130"], - ["731394902132721", "3760739846"], - ["737690489286855", "10140222821"], - ["738090306566255", "84887658705"], - ["735419833187604", "214257648238"], - ["738427291895993", "55297098356"], - ["738366631249616", "60660646377"], - ["737675295276992", "6694533342"], - ["735119029084049", "266985351613"], - ["737774106233717", "19717534095"], - ["737712297743554", "13349099640"], - ["737725646843194", "14641791657"], - ["737880402037428", "125608"], - ["737740288634851", "16023438417"], - ["738895804821131", "178586879475"], - ["738008371366470", "722460698"], - ["737068710241966", "89647628696"], - ["738175194224960", "75519741929"], - ["738524398333463", "36138699789"], - ["737700629509676", "11668233878"], - ["739074391700606", "293860207608"], - ["737756312073268", "17794160449"], - ["737880402163036", "55278924469"], - ["738307428818841", "59202430775"], - ["738301297012603", "6131806238"], - ["736400779315349", "1265309093"], - ["735119028696809", "387240"], - ["737836127332839", "21993061317"], - ["738640414051466", "3551817566"], - ["738654516482322", "4793787549"], - ["738643965869032", "10550613290"], - ["738659310269871", "236335204805"], - ["737815111588058", "21015744781"], - ["738592082310195", "28108721786"], - ["739368251908214", "675575202780"], - ["738482588994349", "41809339114"], - ["737681989810334", "8499476521"], - ["743974168385462", "85872956797"], - ["743955184287039", "17833430647"], - ["744197737757592", "122395826143"], - ["744060041342259", "137696415333"] - ] - ], - ["0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9", [["327967567546864", "216644999935"]]], - ["0x277FC128D042B081F3EE99881802538E05af8c43", [["328333232198974", "8634054720"]]], - ["0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", [["372144522811616", "6238486940"]]], - ["0x284A2d22620974fb416D866c18a1f3c848E7b7Bc", [["705496908203154", "103407742"]]], - [ - "0x2894457502751d0F92ed1e740e2c8935F879E8AE", - [ - ["79181663733943", "1000000000"], - ["203073203411712", "10000000000"], - ["805893939193172", "18206372000"] - ] - ], - [ - "0x28A40076496E02a9A527D7323175b15050b6C67c", - [ - ["334829097598457", "16557580124"], - ["387601437023181", "118292810725"], - ["386877977352762", "19498214619"], - ["467293763330601", "499650000"], - ["467294262980601", "404668999"], - ["467293358294911", "405035690"] - ] - ], - [ - "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", - [ - ["221777246378393", "30093729527"], - ["698890211517596", "380793557160"], - ["827563810470578", "15422132619"] - ] - ], - [ - "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", - [ - ["94315784595936", "500000000"], - ["128563965237372", "10000000000"], - ["215055564317691", "838565448"], - ["343715937685335", "17250582700"], - ["586801021039009", "70060393479"], - ["656570877675397", "80085100000"], - ["692022316776958", "196063966"], - ["933890397372094", "70125007621"] - ] - ], - [ - "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", - [ - ["79180247523918", "50364336"], - ["79180297888254", "1232512356"] - ] - ], - [ - "0x297751960DAD09c6d38b73538C1cce45457d796d", - [ - ["102501954174380", "727522"], - ["128226216485074", "15"], - ["148977930843610", "80437"], - ["152104384211317", "3"], - ["214830162663034", "67407"], - ["293611035386569", "5451263"], - ["437618210865065", "37387"] - ] - ], - [ - "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3", - [ - ["228686945368367", "84842866520"], - ["221807340107920", "18253993180"], - ["695319193240357", "1715232990"] - ] - ], - [ - "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20", - [ - ["112258411436508", "25356695159"], - ["263947015910096", "17842441406"], - ["469175726963278", "10000317834"] - ] - ], - [ - "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", - [ - ["137157590212167", "604036207"], - ["741446611708485", "5002669630"], - ["821312920063558", "729833339"], - ["821599578141387", "369074345"] - ] - ], - ["0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F", [["319161563141827", "42247542366"]]], - [ - "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", - [ - ["120398763619406", "29229453541"], - ["158400229731856", "40869054933"], - ["220214680240981", "46100000000"], - ["218650633799644", "21334750070"], - ["250337223186833", "13412667204"], - ["250317351013763", "19872173070"] - ] - ], - [ - "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65", - [ - ["136646790866113", "38308339380"], - ["179413897805761", "23400000000"], - ["304469817107076", "5071931149"], - ["306056665523358", "46513491853"], - ["380716182729701", "99704140012"], - ["392657303338426", "121345718040"] - ] - ], - ["0x2bF046A052942B53Ca6746de4D3295d8f10d4562", [["802121584517836", "14660252551"]]], - [ - "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", - [ - ["122151582473796", "21700205805"], - ["152142215023622", "21825144968"], - ["258887076658969", "3504136084"], - ["274559382467978", "19297575823"], - ["288926011153180", "34509154491"], - ["288386214068649", "8838791596"], - ["296984074670057", "2631578947"], - ["709144573278794", "1982509180"] - ] - ], - [ - "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3", - [ - ["89188612146804", "1259635749"], - ["139698958414857", "5603412867"], - ["168574996066331", "4363527272"] - ] - ], - [ - "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", - [ - ["197741309098473", "1516327182560"], - ["241741906106343", "58781595885"], - ["633216085030316", "30150907500"], - ["625915379052741", "14382502530"], - ["631225253506278", "30150907500"], - ["630116234823378", "30150907500"], - ["627304379068540", "30150907500"] - ] - ], - [ - "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", - [ - ["74749229982603", "2776257694900"], - ["408604736783604", "1543861200000"], - ["406479934660901", "1509530400000"] - ] - ], - ["0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", [["383419389986175", "94607705314"]]], - [ - "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", - [ - ["68544742212956", "194762233747"], - ["139777439869387", "138292382101"], - ["217225607502422", "320440448951"], - ["213337233708294", "194272213416"], - ["227025696759870", "165634345762"], - ["227191331105632", "162668432277"], - ["456124916429007", "290768602971"], - ["634891242227908", "53986261284"], - ["635923106362551", "682695875"] - ] - ], - [ - "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872", - [ - ["137344991789918", "7329461840"], - ["218767451487496", "60174119496"], - ["274414876662335", "21267206558"], - ["695993270293950", "70921562500"], - ["708568373266030", "15004452000"] - ] - ], - ["0x2e95A39eF19c5620887C0d9822916c0406E4E75e", [["220713870788997", "99821724986"]]], - [ - "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", - [ - ["387459570771954", "16541491227"], - ["526415018910475", "41138509764"], - ["592245119054672", "109538139161"], - ["622805751840879", "57729458645"], - ["638883364095374", "150501595883"], - ["635316611698426", "199863307838"], - ["652911295105315", "164341630162"] - ] - ], - ["0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", [["672838121314733", "19083709019"]]], - [ - "0x31188536865De4593040fAfC4e175E190518e4Ef", - [ - ["131603872797406", "42647602248"], - ["148484173674832", "23229244940"], - ["220311750710706", "25259530956"], - ["220337010241662", "75628998693"], - ["308556696776803", "39695519731"], - ["469526491720218", "20847822433"] - ] - ], - [ - "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", - [ - ["246537104035457", "19585490430"], - ["260807452784863", "10849956649"], - ["262585984340010", "6841999986"], - ["717696969402676", "1550661150"], - ["733741602868295", "5000000000"] - ] - ], - ["0x3213977900A71e183818472e795c76aF8cbC3a3E", [["270753617517203", "2727243727"]]], - [ - "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e", - [ - ["112283768131667", "22097720000"], - ["139673550702857", "25407712000"], - ["146998232146379", "96590650000"], - ["154322443224517", "51428850000"], - ["231462925049457", "21861840000"], - ["221858374194381", "27130320000"], - ["259334633708047", "17204908500"], - ["271967769614181", "31699684500"], - ["310599804142918", "141114556811"], - ["456086409628758", "2656309347"], - ["513111301990969", "3362213720"] - ] - ], - [ - "0x32ddCe808c77E45411CE3Bb28404499942db02a7", - [ - ["218701606726030", "30301264175"], - ["733815599504575", "9156068040"] - ] - ], - [ - "0x33314cF610C14460d3c184a55363f51d609aa076", - [ - ["250294538522915", "4"], - ["311893596417090", "6"] - ] - ], - ["0x334bdeAA1A66E199CE2067A205506Bf72de14593", [["139710719558186", "1"]]], - [ - "0x334f12F269213371fb59b328BB6e182C875e04B2", - [ - ["231588064170741", "85849064810"], - ["248354501695683", "100639688860"], - ["296377664705848", "30184796751"], - ["593799800299595", "5098240000"] - ] - ], - ["0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", [["89552406100600", "1897354001"]]], - ["0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91", [["761165787154183", "6971971500"]]], - [ - "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327", - [ - ["263902250213507", "44765696589"], - ["335286193422314", "130932379038"] - ] - ], - [ - "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", - [ - ["345401629709038", "21940000000"], - ["428483895698649", "159350000000"] - ] - ], - [ - "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30", - [ - ["387178819624322", "24"], - ["401291905968469", "1695292297"] - ] - ], - ["0x34a649fde43cE36882091A010aAe2805A9FcFf0d", [["695165389013847", "5482892893"]]], - ["0x34e642520F4487D7D0229c07f2EDe107966D385E", [["428480693333294", "3202365355"]]], - ["0x362FFA9F404A14F4E805A39D4985042932D42aFe", [["695262582394210", "2420032442"]]], - [ - "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", - [ - ["131580722493380", "4716970693"], - ["128557679667004", "6285570368"], - ["128204663976106", "16604041484"], - ["335068393422314", "217800000000"], - ["382646826165944", "214258454662"], - ["490262408247583", "436815986689"], - ["594732756455189", "135734075338"], - ["608938108318525", "71050000000"], - ["706938849352109", "188831250000"] - ] - ], - [ - "0x36C3094E86CB89e33a74F7e4c10659dd9366538C", - [ - ["696374692545444", "5356500000"], - ["696088346127928", "19640500000"] - ] - ], - [ - "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B", - [ - ["79244791972952", "2184095098753"], - ["526508270867756", "4903200000000"] - ] - ], - ["0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc", [["592974120360191", "3940485943"]]], - [ - "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", - [ - ["278393127641126", "73188666066"], - ["726112472837908", "75343043560"] - ] - ], - [ - "0x37435b30f92749e3083597E834d9c1D549e2494B", - [ - ["83260215467071", "5427633758309"], - ["93310404882687", "8433459586"], - ["99898772839152", "1565234930"], - ["137352321251758", "178773400000"], - ["147974607921074", "62444029452"], - ["148107367740690", "27307181096"], - ["149998662142740", "12050549452"], - ["154135094984517", "23198240000"], - ["179437297805761", "14166669028"], - ["202363107393544", "17100712995"], - ["244902569540416", "252870563194"], - ["247327990881148", "49195388116"], - ["333109345646753", "296688083935"], - ["413528667443932", "1024763326668"], - ["425068586175574", "1412385930810"], - ["421057363141931", "1288012208388"], - ["456721928796943", "654800000000"], - ["521866668811626", "4527500000000"], - ["498199672720798", "3840100000000"], - ["654538142212579", "563728148057"], - ["653094946017372", "666686929557"], - ["825461117740725", "105792331133"] - ] - ], - ["0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", [["401439474290340", "2715874656"]]], - [ - "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", - [ - ["869970288194840", "3741772811"], - ["866535696635239", "271427897935"], - ["922214747736756", "18080297788"], - ["965933556186775", "185595194790"], - ["978397267549081", "195035742135"] - ] - ], - ["0x3800645f556ee583E20D6491c3a60E9c32744376", [["251638322154111", "44590358778"]]], - [ - "0x38AE800E603F61a43f3B02f5E429b44E32e01D84", - [ - ["711195120682837", "883672882"], - ["710377594992292", "12448041335"], - ["712614668536408", "3572292465"], - ["796591631208380", "38853572481"] - ] - ], - [ - "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", - [ - ["92742421238598", "1422751578"], - ["117219099496678", "11945702437"], - ["122199613970823", "11265269800"] - ] - ], - [ - "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608", - [ - ["99858014651894", "4520835534"], - ["136897611492596", "2592066456"], - ["136878766211724", "8190484804"], - ["605251828216687", "90520524431"], - ["631117707256278", "75915000000"], - ["695313182010301", "4800266302"], - ["695524075062913", "4971925933"], - ["698264912932112", "5026085154"], - ["702361734822444", "6901957424"], - ["705272797202231", "6586391868"], - ["705202416720908", "8688260900"], - ["705395019165576", "12728017527"], - ["705157865912363", "6258715658"], - ["705181050592235", "5619908813"], - ["705375333507580", "9438007812"], - ["705364047968253", "11087897889"], - ["705310449390499", "5533430900"], - ["705218131104329", "9969767834"], - ["705228100872163", "5282898032"], - ["705346854956478", "9775619115"], - ["705356630575593", "7138145970"], - ["705241078348938", "11803118121"], - ["705164124628021", "3739040895"], - ["709831975562507", "475923815"], - ["711580953886503", "210712873"], - ["801573253128821", "37039953396"] - ] - ], - [ - "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", - [ - ["203038971664231", "20166747481"], - ["208533010380793", "19708496282"], - ["214342235514041", "18867580234"], - ["221847717386483", "10656807898"], - ["457646593748283", "21196418023"], - ["457633342783031", "13250965252"] - ] - ], - [ - "0x3b55DF245d5350c4024Acc36259B3061d42140D2", - [ - ["120432824224250", "109032000000"], - ["456560487145391", "61940000000"], - ["489646437372828", "6682650000"], - ["491224405832142", "1727500000"], - ["733380311954748", "113626410"], - ["829537335482303", "10530972784"] - ] - ], - [ - "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", - [ - ["94418235832797", "1184036940"], - ["94515873100678", "4658475375814"], - ["488646672747958", "856500000000"], - ["469554291656606", "1123333332210"], - ["538401334313392", "3276576610442"], - ["820256228328824", "542512540896"] - ] - ], - [ - "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd", - [ - ["623014354044871", "194013000000"], - ["626605379053540", "194013435000"], - ["631931021912047", "192000000000"], - ["632346454097047", "194013435000"], - ["628836091774709", "194013435000"], - ["628420659589709", "194013435000"] - ] - ], - [ - "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", - [ - ["132061597064555", "142530400862"], - ["272292480930970", "90969668386"], - ["605135759248823", "10532744358"], - ["714606511741964", "2382078228"], - ["714425356211522", "1462730442"], - ["909384163975898", "2974087025"] - ] - ], - [ - "0x3C087171AEBC50BE76A7C47cBB296928C32f5788", - [ - ["232071968893389", "148060901697"], - ["240834561073215", "176957775656"], - ["273198685502624", "14038264688"], - ["276348436775663", "16507846329"], - ["293608662086844", "2373299725"], - ["291555917362915", "1592559438"], - ["388970245888268", "13592654125"], - ["401594904125270", "17923920296"], - ["400960854974580", "224290993889"], - ["469488302761616", "10089000000"], - ["709340717966569", "6721246743"], - ["804727563868744", "2043540906"] - ] - ], - [ - "0x3C43674dfa916d791614827a50353fe65227B7f3", - [ - ["842972212731044", "90638399996"], - ["869226145969652", "112991072036"], - ["944663804228138", "82087297170"], - ["948099127272673", "80917313200"], - ["963440631623854", "2492924562921"], - ["972810760408474", "148249317984"] - ] - ], - ["0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", [["660246036031041", "69159694993"]]], - [ - "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B", - [ - ["68411548663700", "107872082286"], - ["128259870043852", "208750536344"], - ["258781546312438", "79560142678"], - ["568865954577205", "256843090229"], - ["567305224982194", "751200000000"], - ["612968450815212", "464523649777"] - ] - ], - [ - "0x3Cdf2F8681b778E97D538DBa517bd614f2108647", - [ - ["219766560873968", "96662646688"], - ["326650849478990", "70852648035"], - ["319977964011072", "94179890197"] - ] - ], - [ - "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", - [ - ["300282934819341", "93978424610"], - ["386944141009871", "116109191366"], - ["401612828045566", "107540812013"] - ] - ], - ["0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", [["92734901265345", "4486265388"]]], - ["0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", [["621038458340633", "9516000000"]]], - ["0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", [["705252881467059", "18442405"]]], - ["0x3e2EfD7D46a1260b927f179bC9275f2377b00634", [["386528870598580", "11508897293"]]], - [ - "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB", - [ - ["623883983044871", "30150000000"], - ["710982397909733", "65015748"], - ["710635821671358", "36390839843"] - ] - ], - ["0x3e763998E3c70B15347D68dC93a9CA021385675d", [["708357952746096", "3184477709"]]], - [ - "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c", - [ - ["202159243561586", "70000039897"], - ["656514155462897", "56722212500"], - ["705474222079870", "5547402539"], - ["708353575375619", "4377370477"], - ["708684038809401", "7781608168"], - ["708511371562041", "6271703989"], - ["803962827988083", "14172500000"], - ["909366206902095", "17957073803"] - ] - ], - [ - "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0", - [ - ["416764948719656", "9985803845"], - ["416774934523501", "2373276277"], - ["416902272149649", "12535749497"] - ] - ], - [ - "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", - [ - ["102413949065850", "521806033"], - ["296982540989531", "1533680526"], - ["592967559033979", "6561326212"], - ["723779316763287", "57172076"] - ] - ], - [ - "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", - [ - ["708854521472745", "29699469080"], - ["829433630619951", "3507114838"] - ] - ], - [ - "0x400609FDd8FD4882B503a55aeb59c24a39d66555", - [ - ["74553264982603", "46140000000"], - ["446341746703841", "12793000337"] - ] - ], - ["0x404a75f728D7e89197C61c284d782EC246425aa6", [["945086995481420", "171169191653"]]], - [ - "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", - [ - ["743245546219702", "389208674898"], - ["744894234735558", "643482107799"], - ["789657062113970", "486415703664"], - ["851449379923934", "129057167288"] - ] - ], - [ - "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8", - [ - ["345423569709038", "32606569800"], - ["705867886947037", "427917192"] - ] - ], - [ - "0x41BF3C5167494cbCa4C08122237C1620A78267Ab", - [ - ["128603895931097", "125375746500"], - ["685772872977516", "14701274232"], - ["691676854489457", "2249157051"], - ["692838111629231", "1277169126"], - ["692929975508877", "3476565097"], - ["692941779124889", "7418551539"], - ["695151454126450", "4493860181"], - ["695147638966758", "3815159692"], - ["692017679493751", "4637283207"], - ["695295658855598", "4202744958"], - ["695323520554039", "2472437836"], - ["693843932605355", "17060602162"], - ["695299861600556", "6931782754"], - ["692933452073974", "5257772247"], - ["692695940824572", "2612709957"], - ["694039788947775", "9755905834"], - ["692182113769658", "1713785306"], - ["695550242936683", "6913927217"], - ["695901994583961", "8523970000"], - ["695881539093182", "1490458288"], - ["697196941652053", "221549064473"], - ["696997247759665", "3485021203"], - ["702858042601852", "8198117831"], - ["704873501697621", "7303537619"], - ["705411302503968", "7914873408"], - ["708682555509296", "1483300105"], - ["742964651758786", "494751015"], - ["743634754894600", "1132140582"], - ["767164728701903", "98080531002"], - ["802846944438520", "162218835"], - ["921520997838854", "56073594"] - ] - ], - [ - "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B", - [ - ["147919863131313", "38576992385"], - ["268363814516270", "17459074945"], - ["264466082689960", "44485730835"], - ["261754319708378", "27121737219"], - ["271086501127643", "193338988216"], - ["270186280182000", "19654542435"], - ["271034820513194", "51680614449"], - ["269301143071389", "26535963154"], - ["268399237836887", "49984112432"], - ["276213342183140", "135094592523"], - ["278692779136242", "55156826488"], - ["276836153034185", "88953884657"], - ["274465632721341", "46929014315"], - ["274512561735656", "46820732322"], - ["276568529375494", "89335158945"], - ["278139497006944", "46290484227"], - ["274358433500095", "56443162240"], - ["273720745157586", "94239272075"], - ["274787697336752", "46596908794"], - ["276077956482957", "135385700183"], - ["276657864534439", "89207795460"], - ["276747072329899", "89080704286"], - ["282942685416418", "37911640587"], - ["298996135000218", "94970341987"], - ["299452335363542", "141765636262"], - ["300423799216114", "24269363626"], - ["294506433543883", "80126513749"], - ["299641994657323", "141406044017"], - ["300376913243951", "46885972163"], - ["308770747582197", "101040572048"], - ["301420143646298", "27327225251"], - ["301717993914740", "187694536015"], - ["302237953585736", "186820539992"], - ["472885514210993", "33820000000"], - ["476843636939438", "13370532569"], - ["476443335234120", "13544000000"], - ["472838087890628", "13606320365"], - ["472851694210993", "33820000000"], - ["472793192678897", "13677512381"], - ["476694923408706", "14725577338"], - ["476410283324120", "16915000000"], - ["476740429395415", "13378806625"], - ["476393368324120", "16915000000"], - ["470686834442758", "13862188950"], - ["476709648986044", "17399191046"], - ["476753808202040", "13380333313"], - ["476376458324120", "16910000000"], - ["476473809234120", "16930000000"], - ["476727048177090", "13381218325"], - ["476456879234120", "10158000000"], - ["476681533985845", "13389422861"], - ["476830043817916", "13593121522"], - ["476814000720125", "16043097791"], - ["476767188535353", "14715582102"], - ["476526026311782", "13548000000"], - ["476512478311782", "13548000000"], - ["489653120022828", "13268338278"], - ["476467037234120", "6772000000"], - ["476797954153690", "16046566435"], - ["476781904117455", "16050036235"], - ["476359548324120", "16910000000"], - ["476605785663811", "13564000000"], - ["636755258858843", "53257255812"], - ["634947490704343", "41982081237"], - ["802260426539360", "95195568422"], - ["829118124669523", "14606754787"], - ["832256453601930", "12764830824"], - ["851720002286071", "71074869547"], - ["929474144057024", "178880088846"], - ["930385128703633", "87734515234"], - ["930304797085243", "80331618390"], - ["961481676246016", "187169856894"], - ["973468864705385", "95736000000"], - ["978592303305840", "359610000000"] - ] - ], - ["0x41e2965406330A130e61B39d867c91fa86aA3bB8", [["699433319525762", "57972833670"]]], - [ - "0x4254e393674B85688414a2baB8C064FF96a408F1", - [ - ["140373758599368", "51965469308"], - ["204878133820660", "195601904457"] - ] - ], - ["0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7", [["504989340347547", "23385195001"]]], - ["0x43816d942FA5977425D2aF2a4Fc5Adef907dE010", [["805412332289879", "5598000000"]]], - ["0x4384f7916e165F0d24Ab3935965492229dfd50ea", [["710272326799610", "5043054"]]], - [ - "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7", - [ - ["251689318096142", "17822553583"], - ["446328959443385", "12787260456"] - ] - ], - [ - "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", - [ - ["61549738965586", "12564061345"], - ["66071050299187", "1129385753"], - ["66084683858969", "85802365"], - ["89493924603539", "1000000000"], - ["89568109155898", "896325564"], - ["89586741115726", "1000000000"], - ["92749890045870", "25104421"], - ["89606142206304", "1000000000"], - ["89585741115726", "1000000000"], - ["89527912895560", "19090914955"], - ["89494924603539", "1000000000"], - ["89605142206304", "1000000000"], - ["89565741115726", "1109129488"], - ["89525732026030", "2180869530"], - ["89495924603539", "1000000000"], - ["89566850245214", "1206768540"], - ["89990067080414", "7671502446"], - ["93294280335746", "5644256527"], - ["94284798092453", "522412224"], - ["94307553242481", "8231353455"], - ["94382196115824", "9664144600"], - ["137135483729051", "12000000000"], - ["139746180078534", "22778336323"], - ["154373872074517", "3466008022725"], - ["921364339796830", "12817228360"], - ["922703259286471", "4987547355"], - ["922817751972186", "6378966633"], - ["927996250630513", "1210047061"], - ["944603246601626", "55249364508"], - ["944881620448876", "17679122867"], - ["945821272380507", "20022518305"], - ["948085336092963", "13791046304"] - ] - ], - [ - "0x4432e64624F4c64633466655de3D5132ad407343", - [ - ["61628862380956", "1624738693"], - ["61618545548819", "76923076"], - ["821101658296735", "53680953"], - ["822986972480458", "53575113"], - ["824010318367156", "45392997396"], - ["823969442915582", "40875451574"], - ["827241425521487", "256869092"] - ] - ], - [ - "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", - [ - ["61648545548819", "435653558"], - ["89988300373488", "1549632000"], - ["89554303454601", "3071807226"], - ["89190107363598", "18536597032"] - ] - ], - [ - "0x448a549593020696455D9b5e25e0b0fB7a71201E", - [ - ["590991887858839", "72277031524"], - ["590928120113238", "13171499195"], - ["569124802887262", "48468507344"] - ] - ], - [ - "0x44db0002349036164dD46A04327201Eb7698A53e", - [ - ["705067763593576", "228851828"], - ["705502798541410", "3084780492"], - ["829201089289885", "2519675802"] - ] - ], - [ - "0x44E836EbFEF431e57442037b819B23fd29bc3B69", - [ - ["646581393623485", "590804533993"], - ["695599938930194", "1144842671"], - ["695501776617168", "167260560"], - ["695543510256949", "6732679734"], - ["695501943877728", "2955966531"], - ["695512938762284", "5232565604"], - ["696075873718427", "4648149312"], - ["705858500882729", "792144308"], - ["709223879936312", "4657050598"], - ["710313220526301", "11312622545"], - ["710890596051646", "11781355408"], - ["713607949326125", "3951780206"] - ] - ], - [ - "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975", - [ - ["319082831589442", "78731552385"], - ["370681278008540", "50532033501"], - ["700078321138764", "2100140818"], - ["705098297721786", "2093638974"], - ["704940465331886", "9000076282"], - ["704247096398388", "5070971174"] - ] - ], - ["0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4", [["828631128825075", "1017640"]]], - [ - "0x46387563927595f5ef11952f74DcC2Ce2E871E73", - [ - ["829846511525914", "10000000"], - ["829846531525914", "2694500000"] - ] - ], - ["0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", [["246715075632743", "4605813333"]]], - [ - "0x473812413b6A8267C62aB76095463546C1F65Dc7", - [ - ["828639443033247", "852570198"], - ["830263540434495", "143341492"] - ] - ], - ["0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88", [["265237981975245", "12907895307"]]], - [ - "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351", - [ - ["259529678616547", "522905317827"], - ["256031758190563", "678300326761"], - ["281819376088709", "526712108816"], - ["298162440271272", "216100000000"], - ["295386551285707", "86640000000"], - ["300557743646298", "862400000000"], - ["317098418695316", "641100000000"], - ["310383724516163", "216079626755"], - ["306272688094207", "240081188008"], - ["309368405952940", "209638678922"], - ["314039683991298", "1020962098385"], - ["316079324231878", "1019094463438"], - ["313180541202133", "859142789165"], - ["315728148525503", "351175706375"], - ["309740224516163", "643500000000"], - ["318621807701047", "188408991793"] - ] - ], - [ - "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", - [ - ["326107420921401", "7633129939"], - ["372437557262985", "23542648323"], - ["491203694034272", "5342881647"], - ["541677910923834", "1936443717"], - ["538320230990357", "1925324510"], - ["538322156314867", "1928422141"], - ["538316385429670", "1918866314"], - ["520066176405445", "1840684464"], - ["538318304295984", "1926694373"], - ["569173271394606", "2021544393"], - ["569122797667434", "2005219828"], - ["699415923445631", "6170341451"], - ["701810722532552", "2884062719"], - ["704991321589283", "5109096170"], - ["704193891195373", "5052470551"], - ["708338583821234", "10179109779"] - ] - ], - ["0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0", [["323837562208542", "892676539"]]], - [ - "0x4949D9db8Af71A063971a60F918e3C63C30663d7", - [ - ["102269738789109", "132215385271"], - ["102501954174378", "2"], - ["231836379050970", "15353990995"], - ["232220029795086", "168884964002"], - ["321155443111092", "42584740555"] - ] - ], - [ - "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", - [ - ["94356206426267", "653834157"], - ["273274348611777", "1113699755"], - ["340534562977258", "9627840936"], - ["381334859129242", "5543007376"] - ] - ], - ["0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9", [["384464921215267", "240943746648"]]], - [ - "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", - [ - ["277375034850814", "21731842340"], - ["296407849502599", "30572743902"], - ["324072878595488", "856400000000"], - ["323838454885081", "234423710407"], - ["426480972106384", "32075676524"] - ] - ], - ["0x4A5867445A1Fa5F394268A521720D1d4E5609413", [["545618833854003", "2578100000000"]]], - [ - "0x4AAE8E210F814916778259840d635AA3e73A4783", - [ - ["262282827399224", "24321462040"], - ["709241915118695", "16950613281"] - ] - ], - [ - "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", - [ - ["225726707768626", "2630224719"], - ["327123540423613", "8090890905"], - ["439357281114331", "1740766894"], - ["612589189650466", "25275274698"], - ["623709406044871", "5482000000"], - ["631424500162047", "5482750000"], - ["629688606325109", "5482750000"], - ["633041506532047", "5482750000"], - ["627756675724309", "5482750000"], - ["879856111198338", "160270131472"] - ] - ], - [ - "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", - [ - ["81437561439786", "42992538368"], - ["99862535487428", "36237351724"], - ["94257791920114", "22434511734"], - ["136980532734270", "91376117280"], - ["159403642280328", "225761417993"], - ["170650277451900", "25432470215"], - ["158441098786789", "962543493539"], - ["202236795677078", "25140924405"], - ["225788075776620", "656550874126"], - ["230527620752329", "84912848439"], - ["245812980700423", "320813397796"], - ["245290063643519", "57484083188"], - ["244468114736762", "94951829258"], - ["243873117256389", "594997480373"], - ["264591999368450", "277362737859"], - ["290518687428499", "59760464812"], - ["289824728523539", "435400000000"], - ["291701162610111", "434600000000"], - ["295594713621539", "433000000000"], - ["293385461135616", "136081851228"], - ["292135762610111", "403315212327"], - ["291462435362915", "93482000000"], - ["292539077822438", "434000000000"], - ["306807148489533", "429600000000"], - ["307534531511411", "429000000000"], - ["307963531511411", "593165265392"], - ["327752156718788", "31843087062"], - ["461662194675835", "1327936414"], - ["585531751934332", "277260761697"], - ["609159158318525", "2737095195209"], - ["637402105327627", "475735746580"], - ["638379095047777", "352964012203"], - ["639551741381407", "621546025531"], - ["635923789058426", "470264676707"], - ["639122987695460", "428753685947"], - ["640280692875188", "511648078072"], - ["660315195726034", "300681637829"], - ["684104916479212", "605799007104"], - ["672177055771691", "294537267480"], - ["683479258683720", "423020213781"], - ["667454434438950", "430288154881"], - ["672471593039171", "122585177924"], - ["683902278897501", "188613792398"], - ["694490977018951", "696785610"], - ["694052367570781", "3562084461"], - ["695329645721990", "4790574316"], - ["695182547027146", "732611220"], - ["694422525370066", "68451648885"], - ["693866692053279", "166637595618"], - ["695178951482488", "2029010620"], - ["695180980493108", "1566534038"], - ["692866453934719", "57278437068"], - ["694303135329365", "118340636454"], - ["695334436296306", "2600593701"], - ["695573535639664", "3241881404"], - ["695576777521068", "3785283994"], - ["695562803032106", "4541616170"], - ["697432033923536", "5741625032"], - ["700843104401500", "1002910636"], - ["699398564464776", "2789581992"], - ["704176342091293", "2168510045"], - ["700816740696983", "1841462496"], - ["702621629674311", "6670046454"], - ["701403925214530", "936457910"], - ["700563830319668", "197428820134"], - ["705028556298056", "6808576094"], - ["705074678452627", "6039028984"], - ["705497011610896", "5786930514"], - ["708291887614021", "3462235904"], - ["709850572553599", "508035028"], - ["741271056178179", "114648436337"], - ["802851048112675", "1341090085"], - ["805521569374354", "12851063713"], - ["805500672321690", "20897052664"], - ["843647615205635", "9770439640"], - ["871218020813975", "50684223342"] - ] - ], - ["0x4C3C27eB0C01088348132d6139F6d51FC592dDBD", [["371926248900676", "5564385258"]]], - ["0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", [["273212723767312", "53819165244"]]], - [ - "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", - [ - ["66034079644085", "26072576416"], - ["167968146767855", "4821011987"], - ["167975833875779", "1424576250"], - ["188697249274484", "929795062302"], - ["190556849399088", "10000000"], - ["189627044336786", "929805062302"], - ["251606893095686", "31429058425"], - ["340015587362641", "16930293743"], - ["376423657311762", "4230684000"], - ["376427887995762", "38949316540"], - ["733900548226895", "58636813154"], - ["736132449021350", "83138632015"], - ["740780496301284", "17303169600"], - ["803675398843471", "12755718599"], - ["805835350568739", "26346793433"] - ] - ], - [ - "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", - [ - ["209254412543878", "613663117381"], - ["209911052571862", "676628312802"], - ["218410526376138", "136137390673"], - ["214098843114999", "202026433529"], - ["222087870737841", "49543800744"], - ["230089830223178", "413035848007"], - ["227445576327866", "492948149258"], - ["228253938295100", "433007073267"], - ["233750265340450", "637822580221"] - ] - ], - ["0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6", [["136916132809737", "8000000000"]]], - ["0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315", [["731385825209645", "9076923076"]]], - ["0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1", [["274296479205287", "54975000000"]]], - [ - "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45", - [ - ["208552718877075", "309692805971"], - ["891043664348577", "216642349742"] - ] - ], - ["0x4E2572d9161Fc58743A4622046Ca30a1fB538670", [["246669957392680", "45118240063"]]], - [ - "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a", - [ - ["233022638466349", "47575900440"], - ["228824271622864", "28977789728"], - ["250514638117388", "1355785855"], - ["306103179015211", "42559348679"], - ["403097227092330", "21768707480"] - ] - ], - [ - "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79", - [ - ["131559051342352", "21671151028"], - ["202589933549511", "25160811724"], - ["242744412209839", "256079218906"], - ["243240316234691", "540739337424"], - ["251733414248189", "148971205022"], - ["279527705475172", "371633895678"], - ["417135397206992", "1968851124565"], - ["519707376405445", "358800000000"], - ["624054575044871", "496100000000"], - ["703750451572212", "422340000000"] - ] - ], - [ - "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8", - [ - ["213225882295803", "38570577566"], - ["229437412992433", "17838668722"], - ["262153242867270", "39603521290"] - ] - ], - ["0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b", [["656258795032897", "12195297500"]]], - [ - "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", - [ - ["139711719558187", "57126564"], - ["802853227348777", "903473746"], - ["802849301706017", "1213327771"], - ["829692129663541", "624282480"], - ["909418911973121", "29448441435"], - ["928113676311599", "39504417438"] - ] - ], - [ - "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", - [ - ["66084769661334", "1"], - ["92743843990176", "1"] - ] - ], - [ - "0x52c9A7E7D265A09Db125b7369BC7487c589a7604", - [ - ["139768958414857", "8481454530"], - ["139718958414857", "25000000000"], - ["250498439776055", "16198341333"], - ["723112643012217", "15472843550"] - ] - ], - [ - "0x52d3aBa582A24eeB9c1210D83EC312487815f405", - [ - ["94242216945909", "1640314930"], - ["94243857260839", "11391726558"], - ["93024220723498", "37500000000"], - ["148976459986468", "1470857142"], - ["215056402883139", "2840837091"], - ["279405824996797", "4894741242"], - ["717546656602676", "150312800000"], - ["725211130277729", "109968508060"], - ["720332948759398", "162851173415"], - ["741577899740575", "15612748908"], - ["741712375643656", "63765566607"], - ["825212953545374", "8432491225"], - ["847574024719777", "9733082256"], - ["847594550576406", "361176492977"], - ["870870615598864", "347405215111"], - ["910453013177991", "22264686170"], - ["892279719270314", "4961004225375"], - ["921456183873214", "64806240466"], - ["922557900488824", "67915110484"], - ["922648585940565", "54673315682"], - ["929042431231364", "85134432163"], - ["930800398036129", "270561010095"], - ["944443811786211", "80750086384"], - ["945326060123752", "82735987498"], - ["945672971137030", "148297525258"], - ["945841295296295", "206866376884"], - ["948418309837881", "528457624315"], - ["950258935863374", "150451249816"], - ["969544990032396", "495671778827"], - ["973232132319420", "101489503304"], - ["977065153662361", "556151437225"] - ] - ], - [ - "0x52E03B19b1919867aC9fe7704E850287FC59d215", - [ - ["188657736324783", "23"], - ["334429009280361", "21"] - ] - ], - [ - "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e", - [ - ["708664583038577", "8956445312"], - ["711043647124349", "1060562802"], - ["711090444872070", "926753565"], - ["711528414042753", "50000000000"], - ["725499911125635", "100000000000"], - ["725798493969922", "100000000000"] - ] - ], - [ - "0x533af56B4E0F3B278841748E48F61566E6C763D6", - [ - ["111532294106981", "684928780381"], - ["117107604771450", "98624652124"], - ["132204127465417", "1423422740439"], - ["147094822796379", "246473581350"], - ["203113891089056", "5305457400"], - ["229967836811843", "43399440000"], - ["274285570406087", "10908799200"], - ["457376728796943", "6712778652"], - ["458012106190750", "9297374844"], - ["456448245031978", "10622166178"], - ["465959758294911", "1333600000000"] - ] - ], - ["0x53bA90071fF3224AdCa6d3c7960Ad924796FED03", [["828936762063483", "5000266651"]]], - [ - "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", - [ - ["66091818537568", "6537846472"], - ["149815249080456", "72107788456"], - ["206610169922313", "17152586398"], - ["704949465408168", "802012435"], - ["730967543838502", "74368755714"], - ["730867543838502", "93293333333"], - ["738250713966889", "50583045714"], - ["772314865779380", "1734187672072"] - ] - ], - [ - "0x53dC93b33d63094770A623406277f3B83a265588", - [ - ["92739387530733", "3033707865"], - ["133660720067889", "4063998521"], - ["133657386734556", "3333333333"], - ["149908190202244", "29006615802"], - ["149887356868912", "20833333332"], - ["742065258883047", "151308941294"], - ["746974806261819", "87924018978"], - ["760504851017218", "57060000000"], - ["782297039212616", "57100000000"] - ] - ], - [ - "0x540dC960E3e10304723bEC44D20F682258e705fC", - [ - ["704996430685453", "5230119599"], - ["705070629674462", "2570523222"], - ["705100391360760", "7816313681"], - ["705315982821432", "1966296013"], - ["705269716717549", "474329513"], - ["705170544685508", "3961074335"], - ["705649264449887", "4844042113"], - ["705644549719550", "4714730337"], - ["705638637875678", "5911843872"], - ["705694288615966", "2378948420"], - ["707892620324512", "3202908158"], - ["707711447642109", "4154745941"], - ["705839765264506", "4701268223"], - ["705663708702228", "3462430426"], - ["709860619088627", "9695779077"], - ["709816672664522", "19697985"], - ["725208702310644", "2427967085"] - ] - ], - [ - "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d", - [ - ["694049544853609", "2822717172"], - ["695557156863900", "5646168206"], - ["921521067108550", "160"], - ["921521067107910", "160"], - ["921521067108230", "160"], - ["921521067108070", "160"], - ["921521067108390", "160"], - ["921521067107750", "160"], - ["921521067107590", "160"], - ["921521067124608", "160"], - ["921521067124768", "160"] - ] - ], - ["0x553114377d81bC47E316E238a5fE310D60a06418", [["225765065776620", "23010000000"]]], - ["0x5540D536A128F584A652aA2F82FF837BeE6f5790", [["262899104239013", "17567638887"]]], - ["0x554B1Bd47B7d180844175cA4635880da8A3c70B9", [["92719137052691", "15764212654"]]], - ["0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", [["476539574311782", "66211352029"]]], - ["0x558C4aFf233f17Ac0d25335410fAEa0453328da8", [["66072179684940", "5311147809"]]], - [ - "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", - [ - ["148525943306600", "92368586236"], - ["144795264713117", "70656147044"] - ] - ], - ["0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE", [["328184212546799", "38563788377"]]], - ["0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95", [["253674859079781", "35159275827"]]], - [ - "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", - [ - ["88687849225380", "104919293460"], - ["89939094932668", "49205440820"], - ["89833520918958", "34985445810"], - ["121701313315112", "16517000000"], - ["122130577367209", "10999922556"], - ["128511905229325", "45774437679"], - ["128573965237372", "29930693725"], - ["147734063636273", "164176600500"], - ["150079532661613", "5174776280"], - ["149577131077935", "5000000000"], - ["197235673741193", "505635357280"], - ["196748543248166", "176852411011"], - ["201269337108906", "15229041840"], - ["196687575224197", "60968023969"], - ["197052041001248", "183632739945"], - ["197040534186448", "11506814800"], - ["214853387728224", "7868244366"], - ["214841171589224", "12216139000"], - ["241628813824063", "18614866100"], - ["246719681446076", "67134250000"], - ["246852209885390", "45000000000"], - ["241647428690163", "94477416180"], - ["246556689525887", "113267866793"], - ["252122959858488", "156533816852"], - ["265250889870552", "292114744200"], - ["277275034850814", "100000000000"], - ["272603524644509", "234173311666"], - ["276375498948402", "19663672112"], - ["273566063183769", "50896592466"], - ["273616959776235", "36881868335"], - ["279257880223832", "85000000000"], - ["284738104868387", "23784920032"], - ["280694947371716", "7309432177"], - ["285595992983941", "56976941921"], - ["290578447893311", "40000000000"], - ["285515580199090", "69757866647"], - ["285668563948121", "91774095238"], - ["293653662086844", "84709072240"], - ["291312494362915", "79941000000"], - ["291292919964740", "19574398175"], - ["293753662086844", "40000000000"], - ["296679653218877", "89966016400"], - ["291392435362915", "70000000000"], - ["310830922064799", "33133321520"], - ["311189831215019", "27049203270"], - ["311876435247053", "17161170037"], - ["310914055386319", "235946386490"], - ["310904055386319", "10000000000"], - ["311222254540889", "16840000000"], - ["310744992009969", "67236052780"], - ["325432511445178", "9804554407"], - ["319203810684193", "7830821110"], - ["319959714387259", "14803898208"], - ["331595854679666", "26274622666"], - ["373971252346554", "40248448544"], - ["361632377443041", "34267517805"], - ["384105638332381", "26917828556"], - ["399516936028120", "443282416104"], - ["437626485206015", "18797185439"], - ["437618210902452", "8274303563"], - ["437614998976177", "3211888888"], - ["710119139437401", "19899717937"], - ["718459184932935", "153179376309"], - ["719838697445075", "167217199434"], - ["720141948118884", "33268342087"], - ["724130728209833", "379699841755"], - ["729490021235256", "103496806590"], - ["729633290769118", "23099271710"], - ["731342174747013", "43650433333"], - ["725898493969922", "98973775726"], - ["730154281080552", "82189769281"], - ["726280644476653", "280660104174"], - ["746864975690853", "109830570966"], - ["761097741854512", "68045299671"], - ["747062730280797", "67873369400"], - ["746411304830765", "221013829371"], - ["745537716843357", "2150034146"], - ["761172775008452", "1122080009786"], - ["744320133583735", "565341232663"], - ["745539866877503", "583900111083"], - ["742965146509801", "34376130558"], - ["769983398716151", "2331467063229"], - ["743648539618105", "199937039599"], - ["747309036197595", "4714572065"], - ["747130603650197", "178432547398"], - ["802850515033788", "533078887"], - ["781679783768247", "144562488635"], - ["782409627124817", "114544305063"], - ["802574068026435", "271967604583"], - ["803396168822726", "224105067098"], - ["803179095557485", "151582713093"], - ["820993315620312", "45278692"], - ["821101286458761", "1594793"], - ["821101430543039", "24690921"], - ["821101937883159", "39305197"], - ["821325582509465", "98401627464"], - ["821101395678970", "34864069"], - ["824055711364552", "114425762"], - ["824922517736038", "9689035799"], - ["825195758746986", "17132148668"], - ["825427269786405", "32902204320"], - ["827242587890579", "58974785104"], - ["828261310410658", "168190067886"], - ["910486711658689", "207036916985"], - ["889991400006036", "1052264342541"], - ["929277339762736", "107099547303"] - ] - ], - ["0x5775b780006cBaC39aA84432BC6157E11BC5f672", [["387060250201237", "25332961300"]]], - [ - "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", - [ - ["65967965420834", "66114223251"], - ["66098356384040", "709218727"], - ["787251008279513", "27741210361"] - ] - ], - ["0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", [["848000115350590", "177450395"]]], - [ - "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00", - [ - ["695883029551470", "3618830978"], - ["695950893560494", "7385494623"] - ] - ], - [ - "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", - [ - ["94293396462959", "11277021864"], - ["148982330924047", "90152601115"], - ["252613171398382", "9788460106"], - ["254434821130723", "42398880624"], - ["270756344760930", "42239183866"], - ["270896539738641", "138280774553"], - ["278466316307192", "26811333934"], - ["720710015864786", "150000000000"] - ] - ], - [ - "0x59229eFD5206968301ed67D5b08E1C39e0179897", - [ - ["404072352993016", "4560091570"], - ["921793706552858", "146130245088"] - ] - ], - ["0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", [["329343745789140", "98936672471"]]], - [ - "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef", - [ - ["61658545548819", "3231807785977"], - ["430683433278432", "1824524280000"], - ["569175292938999", "2758540080000"] - ] - ], - ["0x5A25455Cf1c5309FE746FD3904af00e766Eca65f", [["729235941744400", "207192309402"]]], - [ - "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", - [ - ["695271790792853", "4848909225"], - ["708321754068675", "12287980322"], - ["708948464817453", "3934226800"], - ["708796658842213", "29135772559"] - ] - ], - [ - "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e", - [ - ["149072483525162", "14956941882"], - ["243000491428745", "25944797737"], - ["263428207273619", "16158945430"] - ] - ], - [ - "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", - [ - ["137147483729051", "10087313298"], - ["145676784599260", "12856872500"], - ["225413555091497", "77355000000"], - ["279342880223832", "62944772965"], - ["541679847367551", "26915995911"], - ["643671292393858", "20467308746"], - ["714211331211522", "214025000000"], - ["716942581953896", "156683400000"], - ["719538452967348", "151481732090"], - ["737968552803938", "13229284933"], - ["741385704614516", "59389696996"], - ["805487723131487", "12949190203"], - ["825189019183527", "6739563459"], - ["843062851131040", "68619328543"], - ["847583757896153", "10604585661"], - ["861299408827857", "1303886596053"], - ["870137869841213", "515797412273"], - ["920790983746076", "96628816629"], - ["920887614177105", "80698396938"], - ["921939836929069", "25000733085"], - ["922729202329928", "53711143255"], - ["944524561872595", "78684728679"], - ["945443590498240", "229380229313"], - ["947206303616773", "209848058617"], - ["948240209408970", "131847120287"], - ["970040661811660", "2098652407026"], - ["963144814415781", "295817208073"], - ["973144655632015", "50058887216"], - ["977621305099586", "451136446595"] - ] - ], - [ - "0x5c0ed0a799c7025D3C9F10c561249A996502a62F", - [ - ["829614178933391", "55862378283"], - ["829675447607975", "16682055566"], - ["829600752971773", "13425961618"] - ] - ], - [ - "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", - [ - ["122210879240623", "2751729452"], - ["117231045199115", "2287841173"], - ["709185678005625", "3850108834"], - ["725599911125635", "50493335822"] - ] - ], - ["0x5C6cE0d90b085f29c089D054Ba816610a5d42371", [["311996527622013", "59395536292"]]], - ["0x5c9d09716404556646B0B4567Cb4621C18581f94", [["133684865469102", "20000000000"]]], - ["0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", [["218964552881591", "20828898066"]]], - [ - "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", - [ - ["228888276373773", "22900000000"], - ["229017432373773", "55944700000"], - ["299091105342205", "100073216296"], - ["371931813285934", "14439424263"], - ["387226628784840", "39015199159"], - ["386643583678456", "12665494224"], - ["392860263056712", "12750000000"], - ["456089065938105", "13280063140"], - ["456102346001245", "9294571287"], - ["456111640572532", "13275856475"], - ["649251520559057", "39546000000"], - ["649555340309057", "39546000000"], - ["649859160059057", "39546000000"], - ["648305367299057", "95701320000"] - ] - ], - [ - "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B", - [ - ["297373764711688", "38237815837"], - ["306238279513344", "34408580863"] - ] - ], - [ - "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", - [ - ["290260128523539", "258558904960"], - ["333406033730688", "42383755833"], - ["374011500795098", "134100000000"], - ["704797749205879", "842769388"], - ["709284101979168", "7110933861"], - ["711627522099376", "471976956"] - ] - ], - [ - "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2", - [ - ["370904434739966", "43672091722"], - ["381131949645927", "109484641436"] - ] - ], - [ - "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391", - [ - ["327880245815221", "87321731643"], - ["929264027457555", "13312303253"] - ] - ], - ["0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", [["248278425109276", "4230389743"]]], - [ - "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA", - [ - ["590900855644397", "27264468841"], - ["590941291612433", "50596246406"] - ] - ], - ["0x6040FDCa7f81540A89D39848dFC393DfE36efb92", [["181299068052561", "32175706816"]]], - ["0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF", [["92833059143567", "64000000000"]]], - [ - "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", - [ - ["130298704901115", "1194000000000"], - ["411691467443932", "1837200000000"], - ["419184163141931", "1873200000000"], - ["428643245698649", "1912200000000"], - ["446915730809845", "3253000000000"] - ] - ], - ["0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A", [["709654240841564", "1795068"]]], - [ - "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", - [ - ["264421523115184", "44559574776"], - ["269625341192993", "135909962633"], - ["260919467219945", "20307567726"], - ["285311432045544", "88646625543"], - ["283876777629530", "432111595595"], - ["299783400701340", "122335228001"], - ["304474889038225", "193838339361"], - ["742458599346747", "100824447648"], - ["827779695737087", "466125005645"], - ["928153180905365", "228905711977"], - ["944012313245132", "255298540903"] - ] - ], - [ - "0x6343B307C288432BB9AD9003B4230B08B56b3b82", - [ - ["251903256768189", "3001979267"], - ["289028801361236", "9098821991"], - ["328351535977992", "10019159841"], - ["379479400595098", "10004250325"], - ["400111921902968", "10015549677"], - ["422358375861038", "5009439565"], - ["461510084083867", "3004757667"], - ["461513088841534", "2922196166"], - ["469465622028508", "1693453752"], - ["469463777851148", "1844177360"], - ["608371674138774", "10048376141"] - ] - ], - [ - "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", - [ - ["490205291129867", "39624686375"], - ["902789663460379", "4019358849"] - ] - ], - [ - "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", - [ - ["646576510127020", "2534228224"], - ["647775542417444", "5673597364"] - ] - ], - [ - "0x647bC16DCC2A3092A59a6b9F7944928d94301042", - [ - ["295492903609864", "101810011675"], - ["656467053262897", "47102200000"] - ] - ], - [ - "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", - [ - ["262307148861264", "68900140210"], - ["311844690009016", "25000000000"], - ["319694744863302", "183219147770"], - ["319974518285467", "3445725605"], - ["319378866931585", "200370650949"], - ["698269939017266", "5486788601"], - ["708080010466127", "1957663487"], - ["708348762931013", "4812444606"], - ["709470442458147", "11578312077"], - ["711257309223187", "3108966478"] - ] - ], - ["0x64e149a229fa88AaA2A2107359390F3b76E518AD", [["311801867615122", "42822393894"]]], - ["0x6525e122975C19CE287997E9BBA41AD0738cFcE4", [["469185727281112", "78748758703"]]], - ["0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8", [["469169645692260", "6081271018"]]], - [ - "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a", - [ - ["710902377407054", "623800000"], - ["712986468802101", "1653185142"], - ["712010342971048", "3081500000"], - ["715331904546867", "1550473112"], - ["711625667799376", "1854300000"], - ["714988393664085", "1610442418"], - ["711779293616445", "1110960000"], - ["712745678184382", "3827342044"], - ["712354471754667", "675422900"], - ["872327312792564", "12682309008"] - ] - ], - ["0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22", [["387342442778997", "11833992957"]]], - ["0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD", [["94333693372636", "10666666666"]]], - [ - "0x66B0115e839B954A6f6d8371DEe89dE90111C232", - [ - ["235887412728742", "45"], - ["255946320681059", "85437509504"], - ["251682912512889", "5514286863"], - ["251707140649725", "26273598464"], - ["251688426799752", "891296390"], - ["262541064560306", "29101504817"], - ["277816757413884", "83474118399"], - ["298658006904339", "81104453323"], - ["404034617704521", "33242114013"], - ["404076913084586", "29159870308"], - ["416519193744567", "62595004655"], - ["586571583807193", "41624181591"], - ["623763380044871", "120603000000"], - ["629995631193378", "120603630000"], - ["627334529976040", "120603630000"], - ["625929761555271", "120603630000"], - ["633095481400316", "120603630000"], - ["631255404413778", "120603630000"] - ] - ], - ["0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6", [["927634141843427", "362107628548"]]], - ["0x679B4172E1698579d562D1d8b4774968305b80b2", [["456659655291143", "6726740160"]]], - [ - "0x682864C9Bc8747c804A6137d6f0E8e087f49089e", - [ - ["825245318955323", "376300000"], - ["827241140670920", "103950567"], - ["829005991887487", "4494000"], - ["829849261295682", "54860000"], - ["829849250323682", "10972000"] - ] - ], - ["0x688b3a3771011145519bd8db845d0D0739351C5D", [["659295439819586", "297938099"]]], - [ - "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07", - [ - ["702368636779868", "3801049629"], - ["698477241949083", "3665297857"] - ] - ], - [ - "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3", - [ - ["120576014163896", "48580563120"], - ["120624594727016", "10000000"], - ["236967952962834", "639000700700"], - ["387389374771954", "17549000000"], - ["388995837042393", "200000000000"], - ["548233773854003", "8118000000000"], - ["520075759239909", "1509444773173"], - ["591077039421030", "60353499994"], - ["601154487873853", "1050580350517"], - ["602359789978270", "1053414238201"], - ["737664857987768", "2281535426"], - ["849185560908268", "1423950000000"] - ] - ], - [ - "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2", - [ - ["266985287159264", "23473305765"], - ["289572383709939", "26144594910"], - ["290871125843437", "196893643061"] - ] - ], - [ - "0x69e02D001146A86d4E2995F9eCf906265aA77d85", - [ - ["723782420675363", "41531785"], - ["801816935814506", "293208703330"], - ["910693748575674", "16363837424"], - ["892260306698253", "19412572061"] - ] - ], - ["0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", [["828677403443205", "1261346400"]]], - ["0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b", [["711381608801232", "893481478"]]], - [ - "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", - [ - ["93189072915315", "28148676958"], - ["211489859303178", "242948254181"], - ["221182031927169", "20023987333"], - ["222197249910350", "20000000000"], - ["403689213498540", "333305645984"], - ["405680677639939", "66850100000"], - ["405518022477439", "51504000000"], - ["424898303555329", "102337151992"], - ["422814590899875", "62680000000"], - ["439681618379353", "38488554613"], - ["430555445698649", "127987579783"], - ["456622427145391", "6712331491"], - ["458058652716143", "66231437063"], - ["463475654735836", "26916949971"], - ["591262392921024", "281553523845"], - ["637878727770943", "128350847807"], - ["656819002275397", "42417259406"], - ["691668792139952", "5506646911"], - ["685442174853017", "235481948284"], - ["695268369275534", "3421517319"], - ["692012436058817", "5243434934"], - ["695596967421239", "2971508955"], - ["696064281163562", "4637078134"], - ["701683952284740", "126770247812"], - ["700846296542750", "77913000000"], - ["704768182201422", "7174635902"], - ["708033476321816", "9652153237"], - ["742216567824341", "242031522406"], - ["741950256695293", "115002187754"], - ["853831018243357", "102830000000"], - ["889880468487159", "110931518877"], - ["907652080195012", "523488988207"] - ] - ], - [ - "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", - [ - ["94280226431848", "64286521"], - ["637877841074207", "886696736"], - ["646579044355244", "2349268241"], - ["695601083772865", "1475264000"] - ] - ], - ["0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F", [["334136741601291", "21"]]], - ["0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd", [["692839388798357", "27065136362"]]], - ["0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10", [["458151359406665", "50261655503"]]], - [ - "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D", - [ - ["866340436151206", "72305318668"], - ["944757410088036", "82518671123"], - ["973088659433490", "55938224595"], - ["980412293238477", "76438100488"] - ] - ], - [ - "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9", - [ - ["260693811733755", "4"], - ["405968282894334", "479115910"], - ["702635645270584", "2916178314"], - ["702638561448898", "2749595885"], - ["704230618678845", "4222978151"], - ["705024084706300", "4471591756"], - ["704927005343980", "3171247947"], - ["705019150510765", "4934195535"], - ["704762610666287", "5571535135"], - ["704225423900982", "5194777863"], - ["705517174750652", "8012158467"], - ["705571425467837", "5546831538"], - ["705419217377376", "6411168248"], - ["705252899909464", "8655423354"], - ["705551004584645", "5047673478"], - ["707858424392398", "2514524429"], - ["709326511391600", "2827660397"], - ["709936181218249", "17620350"] - ] - ], - [ - "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", - [ - ["696665004599178", "1027219504"], - ["697116362904669", "880116472"], - ["702641311044783", "5493342645"], - ["707895823232670", "1939941186"], - ["708074825616184", "3045363522"], - ["705684740198071", "2808417895"], - ["707878491491963", "903060349"], - ["828254386999438", "1001496834"], - ["828429500478544", "1890000000"], - ["829101708988206", "4444320090"] - ] - ], - ["0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", [["464596886728232", "4265691158"]]], - [ - "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54", - [ - ["392885437378366", "61934486285"], - ["469449946056586", "6779928792"] - ] - ], - [ - "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B", - [ - ["61549350441365", "387146704"], - ["829018632524342", "68608459317"] - ] - ], - [ - "0x702aA86601aBc776bEA3A8241688085125D75AE2", - [ - ["170626838120224", "23439331676"], - ["267008760465029", "33943660000"], - ["567294408626458", "3604981492"], - ["567298013607950", "7211374244"], - ["603413204216471", "10000615500"] - ] - ], - [ - "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", - [ - ["218682312374564", "19294351466"], - ["705516377156968", "797593684"], - ["709411142167954", "5285515919"], - ["710442351641687", "18516226556"], - ["733761602868295", "17500007580"] - ] - ], - [ - "0x70a9c497536E98F2DbB7C66911700fe2b2550900", - [ - ["704984983922647", "518323846"], - ["705479769482409", "2255393372"], - ["705384771515392", "274579086"], - ["705363768721563", "279246690"], - ["705482024875781", "4452414623"], - ["705375135866142", "197641438"], - ["705447769709635", "289371263"], - ["705473141812266", "1080267604"], - ["738620191031981", "2857142857"], - ["742814831678217", "25111379095"], - ["978190849192258", "32052786097"] - ] - ], - ["0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793", [["401293601260766", "16127724193"]]], - [ - "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", - [ - ["94281335351844", "4"], - ["102499194204221", "2693066940"], - ["102462180740541", "668874033"], - ["149986604795340", "1354378846"], - ["708889275835529", "25920905560"], - ["709741475815606", "33"], - ["709779995522042", "22959268"], - ["710313218247852", "2278449"], - ["710810990808327", "649539942"], - ["710365362375408", "19324702"], - ["710413791193783", "48009418"], - ["710822390348269", "448369312"], - ["711003673916281", "2584832868"], - ["803070703779156", "7498568832"], - ["800227279841768", "19781032784"], - ["821300790866980", "11891246578"] - ] - ], - ["0x70c65accB3806917e0965C08A4a7D6c72F17651A", [["828631979817405", "4117776465"]]], - [ - "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", - [ - ["120624604727016", "504171940643"], - ["190556859399088", "467400000000"], - ["185619636324783", "3038100000000"], - ["264089423115184", "332100000000"] - ] - ], - [ - "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8", - [ - ["105106690780935", "960392727042"], - ["114544358382068", "560000421094"], - ["148866184915855", "29174580000"], - ["145171991099348", "88783500000"], - ["182184201611991", "595350750000"], - ["215059243720233", "722113163135"], - ["398232899093275", "208640000000"], - ["451987853690637", "1732376340000"], - ["486937201527958", "1709471220000"], - ["808379248863176", "1065835841221"] - ] - ], - [ - "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", - [ - ["373857817940092", "60865019612"], - ["457383441575595", "26041274600"], - ["586681698317766", "119322721243"], - ["578290870658268", "28582806091"], - ["622606759886341", "198991954538"], - ["608655832877662", "70107880058"], - ["627161253988540", "75915000000"], - ["623945764044871", "75915000000"], - ["630213595810878", "75915000000"], - ["625792064397771", "75915000000"], - ["633277867187816", "75915000000"], - ["733746602868295", "15000000000"] - ] - ], - ["0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", [["732098380453278", "112808577"]]], - [ - "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", - [ - ["319877964011072", "81750376187"], - ["828245820742732", "5542244064"] - ] - ], - ["0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246", [["556468241468166", "10275174620"]]], - [ - "0x726C46B3E0d605ea8821712bD09686354175D448", - [ - ["103707589567835", "921515463464"], - ["369436700764088", "1085880660191"] - ] - ], - [ - "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2", - [ - ["152104384211320", "37830812302"], - ["246897209885390", "25083351878"], - ["250798015314250", "31883191886"], - ["260716468807561", "35132497379"], - ["335568346974366", "42917709597"], - ["392778649056466", "61822486683"] - ] - ], - [ - "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4", - [ - ["372150761298556", "57433012261"], - ["376596839455634", "136678730685"], - ["376791155233583", "93694962402"], - ["372553355419959", "1090720348401"], - ["454782599676511", "40057990877"] - ] - ], - [ - "0x74231623D8058Afc0a62f919742e15Af0fb299e5", - [ - ["93012561017070", "11659706427"], - ["152069659197493", "34725013824"], - ["296942140597416", "30400392115"] - ] - ], - [ - "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347", - [ - ["333947098307518", "165298148930"], - ["339545214559094", "240278890901"], - ["360355776306507", "69420000075"] - ] - ], - [ - "0x7568614a27117EeEB6E06022D74540c3C5749B84", - [ - ["270752393130403", "1224386800"], - ["373918682959704", "7267067960"], - ["405970755944204", "2000000000"], - ["708113716268815", "6479854471"], - ["713855849343230", "16139084611"] - ] - ], - [ - "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515", - [ - ["136889611492596", "8000000000"], - ["204495039904762", "10948490796"] - ] - ], - [ - "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", - [ - ["236275109596786", "75138116495"], - ["248750069836807", "16717595903"] - ] - ], - ["0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000", [["73813424150780", "106416284126"]]], - ["0x76A63B4ffb5E4d342371e312eBe62078760E8589", [["643414473152684", "4410560000"]]], - ["0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc", [["701404861672440", "258412979"]]], - ["0x775B04CC1495447048313ddf868075f41F3bf3bB", [["384159922068708", "49257554759"]]], - ["0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B", [["335517175308668", "11429408683"]]], - ["0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D", [["548196933854003", "36840000000"]]], - ["0x78320e6082f9E831DD3057272F553e143dFe5b9c", [["61619455558487", "61632407"]]], - ["0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E", [["148192829238946", "31956558401"]]], - [ - "0x7893b13e58310cDAC183E5bA95774405CE373f83", - [ - ["709666160545763", "11543"], - ["709816692362507", "8278400000"], - ["709851080588627", "9538500000"], - ["709845482953599", "5089600000"], - ["709824970762507", "7004800000"], - ["709632896935250", "6104653206"], - ["709780018481310", "6969544474"], - ["709666160557306", "322894"], - ["709786988025784", "1319829324"], - ["710156635413020", "17894090000"], - ["710702844316130", "26412980000"], - ["710729895252028", "17274840000"], - ["710248073475628", "11365200000"], - ["710527849844805", "32614400000"], - ["710139704704688", "16447600000"], - ["710229754175628", "18319300000"], - ["710416736643243", "15081600000"], - ["710083968820377", "4875640000"], - ["711069412997151", "4642174919"], - ["710175409210628", "22636340000"], - ["710088844460377", "15070160000"], - ["710961593049733", "20804860000"], - ["710560464244805", "33988820000"], - ["710060413780377", "23555040000"], - ["710797859508327", "13131300000"], - ["710272331842664", "11990900000"], - ["711062754387151", "6658610000"], - ["710413839203201", "2827800000"], - ["711091371625635", "34628690000"], - ["710747170092028", "20654700000"], - ["711044707687151", "18046700000"], - ["710198045550628", "18328000000"], - ["712614668401086", "135322"], - ["722467139548715", "218560408342"], - ["869974029967651", "163839873562"], - ["872339995101572", "1285117945279"], - ["873625113046851", "1246029256854"], - ["918710106722133", "1634493779706"] - ] - ], - [ - "0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50", - [ - ["81489555435321", "4967300995"], - ["921019116580415", "11474760241"] - ] - ], - [ - "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E", - [ - ["384080962533404", "24675798977"], - ["401238525968469", "53380000000"], - ["401185145968469", "53380000000"] - ] - ], - ["0x7A63D7813039000e52Be63299D1302F1e03C7a6A", [["401442190164996", "9750291736"]]], - [ - "0x7A6530B0970397414192A8F86c91d1e1f870a5A6", - [ - ["170714896213600", "15454078646"], - ["705261555332818", "8161384731"] - ] - ], - ["0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", [["685794219209263", "41439894685"]]], - ["0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD", [["325881466662025", "8605989205"]]], - ["0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E", [["705875361414229", "213353964"]]], - [ - "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", - [ - ["799304677129355", "725867793824"], - ["800295495177172", "997011405679"], - ["801292506582851", "280746545970"] - ] - ], - ["0x7B2d2934868077d5E938EfE238De65E0830Cf186", [["115104358803162", "629903012456"]]], - [ - "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4", - [ - ["235588719194871", "281091996530"], - ["372208194310817", "225639161016"] - ] - ], - [ - "0x7bB955249d6f57345726569EA7131E2910CA9C0D", - [ - ["339069051603118", "98218175816"], - ["666906649212860", "85487500000"], - ["664705856853643", "199366926066"], - ["666107871110360", "45804202500"], - ["666487418512860", "85487500000"] - ] - ], - [ - "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc", - [ - ["733502153649619", "22359930276"], - ["735061538500731", "57490196078"] - ] - ], - [ - "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F", - [ - ["209868075661259", "42976910603"], - ["211201155017630", "101280926262"], - ["210587680884664", "17768345687"], - ["260829150583722", "90316636223"] - ] - ], - ["0x7c4430695c5F17161CA34D12A023acEbD6e6D35e", [["264511318157528", "35447202880"]]], - [ - "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3", - [ - ["290682958511741", "188167331696"], - ["288295221343358", "90992725291"] - ] - ], - [ - "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16", - [ - ["94255248987404", "2542932710"], - ["708924934892507", "2276035252"] - ] - ], - ["0x7D6261b4F9e117964210A8EE3a741499679438a0", [["255052991465844", "212363516752"]]], - [ - "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", - [ - ["102460599890959", "1580849582"], - ["102462849614574", "1537628217"], - ["708884220941825", "5054893704"], - ["709284026170605", "75808563"], - ["718024184685192", "48622222222"], - ["717249342317875", "50144887945"], - ["721155284440594", "42190522575"] - ] - ], - ["0x7eaF877B409740afa24226D4A448c980896Be795", [["670420999163189", "20074904153"]]], - ["0x7F82e84C2021a311131e894ceFf475047deD4673", [["684710715486316", "62496053737"]]], - ["0x80077CB3B35A6c30DC354469f63e0743eeff32D4", [["478564758595291", "4099200000000"]]], - [ - "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5", - [ - ["102469260126700", "5263157894"], - ["274436143868893", "12500000000"], - ["441742798428071", "10461930383"], - ["446779863150493", "16235000000"], - ["707924243183540", "6300493418"], - ["707970999567062", "6350838475"], - ["709428056372291", "14576284733"], - ["709506330452613", "13030510108"], - ["714426818941964", "24458875511"], - ["714608893820192", "119019649033"], - ["723153115855767", "79777206742"] - ] - ], - [ - "0x804Be57907807794D4982Bf60F8b86e9010A1639", - [ - ["145860635343358", "91448859303"], - ["137553610896101", "94753388776"] - ] - ], - [ - "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81", - [ - ["135308874736610", "25544672634"], - ["227353999537909", "87221043559"] - ] - ], - ["0x80a2527A444C4f2b57a247191cDF1308c9EB210D", [["828640296186909", "37106473488"]]], - [ - "0x81704Bce89289F64a4295134791848AaCd975311", - [ - ["705202370008774", "46712134"], - ["705315982821399", "33"] - ] - ], - ["0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19", [["298138328262598", "24112008674"]]], - [ - "0x81F3C0A3115e4F115075eE079A48717c7dfdA800", - [ - ["146134038045227", "17746542257"], - ["199333964622114", "21229490022"] - ] - ], - [ - "0x82F402847051BDdAAb0f5D4b481417281837c424", - [ - ["94282285351848", "2512740605"], - ["276370348620872", "5150327530"], - ["387201608784840", "25020000000"], - ["396976528945260", "10121780000"] - ] - ], - [ - "0x832fBA673d712fd5bC698a3326073D6674e57DF5", - [ - ["278669782994289", "22996141953"], - ["326721702127025", "23842558596"] - ] - ], - [ - "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751", - [ - ["643036863279717", "1000000"], - ["643036864279717", "9999000000"], - ["726830253055121", "272195102173"], - ["730462878657385", "215834194074"], - ["738560537033252", "31545276943"], - ["740043827110994", "570100000000"], - ["821482280174979", "640797"], - ["821101901297999", "36372829"], - ["821101711977688", "63916929"], - ["821101937670828", "212331"], - ["821312682113558", "237950000"], - ["821101855658162", "45639837"], - ["821101775894617", "34919933"], - ["821101855603559", "54603"], - ["821101810814550", "44762503"], - ["821101855577053", "26506"], - ["823424437815004", "31584894"], - ["822990014883491", "38655387"], - ["822989196101560", "20624528"], - ["822987173919481", "27291992"], - ["823424408304268", "29510736"], - ["822989155693672", "40407888"], - ["822987027313953", "18166203"], - ["822987045480156", "33655130"], - ["824069891183597", "21214050"], - ["822987079135286", "41246561"], - ["823424469399898", "35342"], - ["823424469435240", "19821585"], - ["822990053538878", "8965138"], - ["825005853919704", "2145664"], - ["825027381429715", "34733796"], - ["825027427187941", "2604448"], - ["825033476640521", "9831655"], - ["825033445546427", "5775330"], - ["825033467597797", "9042724"], - ["825006468406338", "2178159"], - ["825033459408195", "8189602"], - ["825033436900754", "8645673"], - ["825033486472176", "27363324"], - ["825005980415059", "18553917"], - ["825033451321757", "8086438"], - ["825033424020303", "12880451"], - ["825005853793484", "126220"], - ["825105289165956", "8299132"], - ["825037528705176", "12836178"], - ["825039495722685", "8796762"], - ["825107414981094", "8847815"], - ["825106717556077", "8074766"], - ["825105281248629", "7917327"], - ["825106649088791", "9446755"], - ["825104972670759", "9117332"], - ["825106668087124", "12158603"], - ["825106680245727", "17003737"], - ["825039477533361", "12803633"], - ["825106697249464", "20306613"], - ["825112105885851", "10869074"], - ["825105266403185", "7294661"], - ["825039465644397", "11888964"], - ["825105143717399", "4457574"], - ["825106631328688", "8329771"], - ["825106639658459", "9430332"], - ["825106621663222", "8438801"], - ["825106597820911", "7313583"], - ["825106630102023", "1226665"], - ["825106658535546", "9551578"], - ["825106613390999", "8272223"], - ["825039490336994", "5385691"], - ["825106605134494", "8256505"], - ["825105273697846", "7550783"], - ["825106725630843", "6279090"], - ["825188965095474", "1301076"], - ["825188968096661", "1809338"], - ["825188897180360", "5540593"], - ["825114818374627", "9752450"], - ["825188975782832", "7533814"], - ["825188868708913", "7814413"], - ["825114828127077", "9787526"], - ["825188935627843", "9288929"], - ["825188187447538", "75874729"], - ["825188884242039", "6432651"], - ["825188861072934", "7635979"], - ["825188138585647", "48861891"], - ["825188123571037", "15014610"], - ["825185212964534", "9560632"], - ["825112343540711", "9849175"], - ["825188957259484", "2894840"], - ["825188923225927", "12401916"], - ["825188902720953", "9367181"], - ["825188969905999", "2557221"], - ["825185203613295", "9351239"], - ["825188890674690", "6505670"], - ["825188853567267", "7505667"], - ["825188966396550", "1700111"], - ["825188110986658", "12584379"], - ["825188876523326", "7718713"], - ["825187265241764", "11112309"], - ["825188912088134", "11137793"], - ["825188944916772", "9390137"], - ["825188954306909", "1450847"], - ["825188983316646", "7779768"], - ["825188972463220", "3319612"], - ["825188955757756", "1501728"], - ["825188960154324", "4941150"], - ["825581557867983", "8106249"], - ["825581637903961", "6424123"], - ["825583122192929", "971045"], - ["828261310410621", "37"], - ["828261310038784", "371800"], - ["828261310410584", "37"], - ["828954488173016", "409264"], - ["828981794217123", "16635629"], - ["828954488582280", "6540080"] - ] - ], - [ - "0x8366bc75C14C481c93AaC21a11183807E1DE0630", - [ - ["137130130894736", "5352834315"], - ["147350708377729", "21743427538"], - ["214867751304001", "31920948003"], - ["709304868113029", "11538942187"], - ["718336098243492", "22663915925"] - ] - ], - [ - "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17", - [ - ["279944599116288", "90674071972"], - ["572188643809800", "208510236741"] - ] - ], - [ - "0x83C9EC651027e061BcC39485c1Fb369297bD428c", - [ - ["102745713763657", "961875804178"], - ["106565261640158", "303350065235"], - ["104629105031299", "477585749636"], - ["136183041698191", "463749167922"], - ["136685099205493", "129981759017"] - ] - ], - [ - "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", - [ - ["697101882989642", "594161902"], - ["699431659841853", "1659683909"], - ["710284322742664", "12127559908"] - ] - ], - ["0x8456f07Bed6156863C2020816063Be79E3bDAB88", [["373644075768360", "27881195737"]]], - [ - "0x848aB321B59da42521D10c07c2453870b9850c8A", - [ - ["737811992121289", "419955"], - ["737815110802113", "785945"] - ] - ], - ["0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b", [["469403825976872", "46120079714"]]], - [ - "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e", - [ - ["380616356873764", "99825855937"], - ["380516409078784", "99947794980"] - ] - ], - ["0x85971eb6073d28edF8f013221071bDBB9DEdA1af", [["256741264517324", "16839687137"]]], - [ - "0x85bBE859d13c5311520167AAD51482672EEa654b", - [ - ["113217768062616", "99058163147"], - ["157891684526120", "102770386747"], - ["234515818524861", "93706942656"], - ["422689668564485", "124922335390"], - ["456636119295578", "1342546167"], - ["456629139476882", "3355929998"], - ["461516011037700", "13305220778"], - ["469467315482260", "2037424295"], - ["476679527138286", "2006847559"], - ["505012725542548", "132685663226"], - ["639033865691257", "30085412412"], - ["897394349492390", "101381274964"], - ["978086960291670", "103888892461"] - ] - ], - [ - "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008", - [ - ["77525487677503", "1386508934563"], - ["513251371472285", "3565000000000"] - ] - ], - [ - "0x85Eada0D605d905262687Ad74314bc95837dB4F9", - [ - ["741235656825477", "8091023787"], - ["742761033370593", "7857742444"] - ] - ], - ["0x8675C7bc738b4771D29bd0d984c6f397326c9eC2", [["332990203193622", "198152825"]]], - ["0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c", [["821313649896897", "11932612568"]]], - [ - "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", - [ - ["801754549832839", "3880736646"], - ["830438768262888", "543636737"] - ] - ], - [ - "0x87316f7261E140273F5fC4162da578389070879F", - [ - ["94429360260424", "86512840254"], - ["122238087814013", "122328394500"], - ["695881538915987", "177195"], - ["712016403529785", "91918750000"], - ["723420876763287", "358440000000"], - ["727102448157294", "277554381613"], - ["727952095432533", "262793215966"], - ["728222220273967", "218769177704"] - ] - ], - ["0x876133657F5356e376B7ae27d251444727cE9488", [["829766411373307", "6878063205"]]], - [ - "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", - [ - ["90543414329090", "2152396670739"], - ["93309924592273", "480290414"], - ["128226216485089", "33653558763"], - ["131492704901115", "66346441237"], - ["148710379059738", "155805856117"], - ["159629403698321", "312782775000"], - ["282346088197525", "79784359766"], - ["353079009878838", "188949798464"], - ["423275581520194", "792250000000"], - ["414599405770600", "24576000000"], - ["414568745770600", "30660000000"], - ["437645284146563", "1617000000000"], - ["451961075325496", "26778365141"], - ["455237154009110", "716760000000"], - ["451900125444866", "27097995630"], - ["457480724801136", "19925216963"], - ["457427195306595", "26723534157"], - ["457453918840752", "26805960384"], - ["458005469231061", "6636959689"], - ["464381804875284", "26771365896"], - ["568245966230253", "1891500000"], - ["612630768033573", "4512000000"], - ["634784742227908", "106500000000"], - ["650007751158601", "131652538887"], - ["661535564318412", "2363527378"], - ["700844107312136", "2189230614"], - ["767020132851370", "144595850533"], - ["802858660470831", "1456044898"], - ["802878197848987", "32651685550"], - ["802910849534537", "61004241338"], - ["804304083065472", "94910366676"], - ["803689571585644", "273256402439"], - ["804443262678514", "26369949937"], - ["804729611648932", "29793092327"], - ["804813293481956", "29401573282"], - ["805546618289044", "288732279695"] - ] - ], - [ - "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", - [ - ["68739504446703", "5073919704077"], - ["118942719119052", "1456044500354"], - ["99916638465309", "2131906543178"], - ["231401195697185", "56571249769"], - ["410148597983604", "1506500000000"], - ["441820910507194", "3775193029045"], - ["502372458357585", "2601287700000"], - ["578319453464359", "3763750720000"], - ["693735126776002", "22758013200"], - ["806144582194197", "2234666668979"] - ] - ], - [ - "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", - [ - ["228911176373773", "106256000000"], - ["888869492849811", "853190019303"], - ["888758709596303", "110783253508"] - ] - ], - [ - "0x88F09Bdc8e99272588242a808052eb32702f88D0", - [ - ["146158109178928", "840122967451"], - ["149582131077935", "233118002521"], - ["214300869548528", "41365965513"], - ["216128456883368", "375222322618"], - ["226444626650746", "439812976881"], - ["232632449431421", "351737246973"], - ["280035273188260", "267770208367"] - ] - ], - ["0x88F667664E61221160ddc0414868eF2f40e83324", [["411656965874384", "31369126849"]]], - ["0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1", [["406029207697903", "70954400000"]]], - [ - "0x891768B90Ea274e95B40a3a11437b0e98ae96493", - [ - ["603513735125781", "183217724421"], - ["641981800917167", "240857146192"], - ["641392513137474", "202078712746"], - ["704675567367290", "67704306110"], - ["707977350405537", "13082343750"], - ["707990432749287", "9963000000"], - ["708193702547054", "19836000000"], - ["708545172953530", "9033750000"], - ["708490332152346", "10074093750"], - ["708709415276862", "7345791596"], - ["709702070804995", "8173059019"], - ["716108861603690", "23536146483"], - ["714590509507475", "16002234489"], - ["713814719117064", "41130226166"], - ["760269338684328", "235512332890"], - ["871268705037317", "1021515561753"] - ] - ], - ["0x89979246e8764D8DCB794fC45F826437fDeC23b2", [["241628702712952", "111111111"]]], - [ - "0x8A30D3bb32291DBbB5F88F905433E499638387b7", - [ - ["685983331448107", "365063359304"], - ["782094916244052", "172940224850"], - ["851182956547742", "266340074594"] - ] - ], - ["0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9", [["234609525467517", "5892105020"]]], - [ - "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", - [ - ["93005074342273", "4909413452"], - ["385914550632686", "20381632106"], - ["398965539093275", "110785980662"] - ] - ], - [ - "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", - [ - ["66081788208473", "25693"], - ["136924132809737", "55399924533"], - ["331554473841786", "6167341566"], - ["695408230038249", "1458416574"], - ["695504899844259", "8038918025"], - ["695812940661609", "14524410119"], - ["698080231296006", "5949833624"], - ["698039618818358", "43996256"] - ] - ], - ["0x8b08CA521FFbb87263Af2C6145E173c16576802d", [["334551383798769", "86252721548"]]], - [ - "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", - [ - ["709132382080943", "12191197851"], - ["714451277817475", "1500000000"], - ["718072806907414", "10000000000"], - ["718009928907392", "5000000000"] - ] - ], - [ - "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048", - [ - ["708673539483889", "8159246655"], - ["718102416527369", "14666666666"], - ["740617842723123", "10109491684"] - ] - ], - ["0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5", [["334951569354608", "7974066988"]]], - [ - "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", - [ - ["980115296480441", "39771142560"], - ["980488900027563", "42954878920"] - ] - ], - [ - "0x8BB07e694B421433c9545C0F3d75d99cc763d74A", - [ - ["262195704014171", "25133316533"], - ["323193045387977", "3613514390"], - ["491115786234272", "54054054054"] - ] - ], - [ - "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", - [ - ["262238461549774", "5955474760"], - ["278616474511101", "44350084857"], - ["300495692840673", "43020513083"], - ["360531330232687", "221104866853"], - ["387442021771954", "17549000000"], - ["387371825771954", "17549000000"], - ["422992090217744", "277218187043"], - ["584034391150919", "367508589170"], - ["928548201528738", "168927430163"], - ["931070959398996", "161251868752"] - ] - ], - ["0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", [["254336564840316", "21615842337"]]], - [ - "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1", - [ - ["297373743071688", "21640000"], - ["308596392296534", "97017435775"], - ["329164100531105", "43140000000"], - ["446842521140999", "6012500000"] - ] - ], - ["0x8C35933C469406C8899882f5C2119649cD5B617f", [["799197247444195", "87106285553"]]], - [ - "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9", - [ - ["381130967987486", "981658441"], - ["457667790166306", "3278000000"] - ] - ], - ["0x8D02496FA58682DB85034bCCCfE7Dd190000422e", [["404709443708715", "26811409430"]]], - [ - "0x8D06Ffb1500343975571cC0240152C413d803778", - [ - ["90033828014680", "509586314410"], - ["211752169796288", "436653263484"], - ["210605449230351", "595705787279"], - ["223863668889013", "737048150894"], - ["224600717039907", "717665153748"], - ["222221022428903", "738480151497"], - ["235932178253848", "323070981235"], - ["271654840686001", "62132577144"], - ["293833662086844", "204706266628"], - ["308871788154245", "275332296988"], - ["315060646089683", "290236580727"], - ["323099144507879", "30303030303"], - ["333448417486521", "438603533273"], - ["396658256087892", "13913764863"], - ["401405678290340", "33796000000"], - ["405644627639939", "18025000000"], - ["405662652639939", "18025000000"], - ["405962579975371", "5702918963"], - ["491105193635980", "10590000000"], - ["689983137640329", "372857584031"], - ["690355995224360", "216873485917"], - ["695771940661609", "20948977130"], - ["698278077032509", "4910026986"], - ["698480907246940", "258192517612"], - ["702703326884002", "154715717850"], - ["700309899918605", "199438094194"], - ["702651637444244", "5800000000"], - ["705045633064375", "10900958949"], - ["705038731064375", "6902000000"], - ["705300848161231", "9601229268"], - ["705128202045096", "8204345668"], - ["705458794131645", "14347680621"], - ["705186670501048", "8182865200"], - ["705136406390764", "11854871050"], - ["705525186909119", "6674520726"], - ["705174505759843", "6544832392"], - ["705194853366248", "7516642526"], - ["705448059080898", "10735050747"], - ["705435715654948", "12054054687"], - ["705654108492000", "6225710228"], - ["705745621252102", "14199853473"], - ["705771520865575", "12249630834"], - ["708000395749287", "17642812500"], - ["708043128475053", "8605864430"], - ["707887650660405", "4969664107"], - ["708280126020271", "11761593750"], - ["708213538547054", "23544562500"], - ["708746641646901", "19873525000"], - ["708175718015804", "17984531250"], - ["708295349849925", "9285468750"], - ["708248570021231", "15762838323"], - ["708927210927759", "7654771125"], - ["709107547604381", "24834476562"], - ["708967767266128", "29093546875"], - ["709037114700489", "12756105568"], - ["708656471918219", "8111120358"], - ["708130960123304", "9799080000"], - ["708500406246096", "6381630000"], - ["708634811376217", "6953600000"], - ["709146555787974", "10268964843"], - ["709639001588456", "15239253108"], - ["709362566858771", "10357224170"], - ["709235682916688", "3568208882"], - ["709416427683873", "7377849726"], - ["709381038693917", "8545778006"], - ["709758451338697", "21544183345"], - ["709612099124524", "20797810726"], - ["709316407055216", "10104336384"], - ["709163494680866", "11688871093"], - ["709744988161855", "8718470609"], - ["709400057015017", "6063060479"], - ["709372924082941", "8114610976"], - ["709545211846984", "20715605468"], - ["709391104055403", "8952959614"], - ["709889561783853", "23321057117"], - ["709879411202693", "10150581160"], - ["709912903719770", "23277498479"], - ["709581451884857", "21586449186"], - ["709957188557349", "20297082735"], - ["710785654392028", "12205116299"], - ["710342922187908", "22440187500"], - ["710018569682536", "41844097841"], - ["710365381700110", "7534311320"], - ["710822838717581", "11667351669"], - ["710390043033627", "23748160156"], - ["709936198838599", "20989718750"], - ["718361741853542", "97443079393"], - ["719276176344786", "82507217675"], - ["719115393745202", "80000000000"], - ["720495799932813", "174474635475"], - ["718870450032336", "84888584622"], - ["718760344309244", "35105723092"], - ["726187815881468", "92828595185"], - ["737811992541244", "3118260869"], - ["737793823767812", "18043478260"], - ["740879520624524", "234067235160"], - ["743000109315186", "12689035666"], - ["743973017717686", "1148082700"], - ["802971853775875", "61092850308"], - ["802860935738429", "17262110558"], - ["824932314822822", "33297747636"], - ["824837925603556", "44972105263"], - ["829778713100321", "67782688750"], - ["973684270734582", "2704904821499"] - ] - ], - ["0x8d5380a08b8010F14DC13FC1cFF655152e30998A", [["608725940757720", "77364415010"]]], - ["0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D", [["106067083507977", "58533046674"]]], - [ - "0x8d9261369E3BFba715F63303236C324D2E3C44eC", - [ - ["117233333040289", "5555555555"], - ["117257556520139", "115480969665"], - ["655120353318480", "1088800000000"], - ["870719619853486", "69000002695"] - ] - ], - [ - "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8", - [ - ["137270169498180", "5973245960"], - ["137268178757187", "1990740993"] - ] - ], - ["0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c", [["820978887802944", "14385817538"]]], - [ - "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051", - [ - ["222959502580400", "115150000000"], - ["263791400213507", "110850000000"] - ] - ], - [ - "0x8E22B0945051f9ca957923490FffC42732A602bb", - [ - ["695917448319033", "6276203466"], - ["695923724522499", "9827545588"], - ["697033736670389", "9070037632"], - ["697159656841267", "5542323541"], - ["699706549470903", "369705124715"], - ["698289186536396", "4699403170"], - ["701369314234277", "27324351801"], - ["698284067268339", "5119268057"], - ["699646656853662", "59892617241"], - ["701010253185886", "3286401254"], - ["699401354046768", "4087299849"], - ["701013539587140", "355774647137"], - ["704837317003787", "7208774373"], - ["704848646616244", "5569600000"], - ["704912255112090", "1707040042"], - ["704913962152132", "5763520000"], - ["704749192280484", "8939065419"], - ["704958239220603", "5039030716"], - ["704854216216244", "9742600000"], - ["704950267420603", "7971800000"], - ["704832300833263", "661959372"], - ["704743271673400", "2066888224"], - ["704823862705889", "2752359372"], - ["704908434262090", "3820850000"], - ["705622541638590", "1504381620"], - ["705605646638590", "16895000000"], - ["707715602388050", "7647120000"], - ["707730356808050", "10325700000"], - ["705783770496409", "10623920000"], - ["705868314864229", "7046550000"], - ["705675839438071", "8900760000"], - ["707723249508050", "7107300000"], - ["705859293027037", "8593920000"], - ["705844466532729", "7386500000"], - ["705759821105575", "11699760000"], - ["707778193169382", "13915200000"], - ["705851853032729", "6647850000"], - ["705794394416409", "17638053943"], - ["705812032470352", "9745450000"], - ["710811640348269", "10750000000"], - ["711350009201232", "31599600000"], - ["710103914620377", "14240250000"], - ["710767824792028", "17829600000"], - ["710672259601259", "30370700000"], - ["710861230898446", "29365153200"], - ["711309098171048", "39053700000"], - ["711126000315635", "23302500000"], - ["711235228730687", "22080492500"], - ["711006258749149", "37388375200"], - ["711150401482837", "44719200000"], - ["710982462925481", "21210990800"], - ["710594900602245", "39499055600"], - ["711074055172070", "16389700000"], - ["711449704368124", "45806000000"], - ["712355147177567", "123080000000"], - ["712481806801086", "132861600000"], - ["713123896840483", "92040000000"], - ["711850444523431", "77075000000"], - ["711495510368124", "30935000000"], - ["713221469052376", "106100900000"], - ["712619644184382", "126034000000"], - ["711930223971048", "80119000000"], - ["711382502282710", "33458400000"], - ["711780429194577", "67859000000"], - ["712988121987243", "131988500000"], - ["711581164599376", "44503200000"], - ["713329803146333", "110340000000"], - ["711680297826545", "35815000000"], - ["712235025954667", "119445800000"], - ["713443133026125", "164816300000"], - ["713611901106331", "199030000000"], - ["711417443920596", "30655350000"], - ["718612364309244", "147980000000"], - ["717855295202122", "145320000000"], - ["721223635100178", "275770000000"], - ["724867079710644", "341622600000"], - ["717402505658358", "139472000000"], - ["729030345417829", "198119000000"], - ["728842405859376", "185793800000"], - ["728650642810884", "189440000000"], - ["729841604714506", "188864000000"], - ["731593756159148", "243812500000"], - ["731845884453278", "252496000000"], - ["804265605566361", "38477499111"] - ] - ], - [ - "0x8E32736429d2F0a39179214C826DeeF5B8A37861", - [ - ["278493127641126", "2286050992"], - ["296972540989531", "10000000000"] - ] - ], - ["0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", [["94418147246757", "88586040"]]], - [ - "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3", - [ - ["709052524836762", "3641357127"], - ["718086779271095", "10106346172"], - ["801735193101157", "19356731682"], - ["824966510240842", "7849710807"] - ] - ], - ["0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab", [["705213144042951", "4987061378"]]], - [ - "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", - [ - ["695195958241880", "624152515"], - ["695442580762530", "2917389996"], - ["695445498152526", "1608309723"] - ] - ], - ["0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", [["94009622936383", "64911823433"]]], - [ - "0x90a69b1a180f60c0059f149577919c778cE2b9e1", - [ - ["829209151461160", "449469381"], - ["829204999966258", "4151494524"], - ["829446392033349", "557834029"], - ["829692753946021", "1171046769"], - ["944745891526016", "11518551564"] - ] - ], - [ - "0x923CC3D985cE69a254458001097012cb33FAb601", - [ - ["310740918699729", "4073310240"], - ["383253252478861", "166137507314"], - ["545031168363462", "107641561256"], - ["805920059376678", "7566204130"] - ] - ], - [ - "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", - [ - ["89618032979953", "4974815"], - ["404170048368756", "95838400000"] - ] - ], - [ - "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA", - [ - ["278660824595958", "8958398331"], - ["278495413692118", "302171"], - ["285760338043359", "22378"], - ["279425753131284", "80071865513"], - ["292973077822438", "306052702649"], - ["437645282391454", "1755109"], - ["441753260358454", "67650148740"], - ["462341867766454", "54089424183"], - ["456553811498690", "6675646701"], - ["705056534023324", "11229570252"], - ["705675547635524", "291802547"], - ["707909046213305", "8953406250"], - ["707939900864458", "8729437500"], - ["708157311703304", "18406312500"], - ["708716761068458", "11928928125"], - ["708367435933596", "17103187500"], - ["711279024189665", "30073981383"], - ["715683731202961", "2548987716"], - ["716106491712710", "2369890980"], - ["728465989451671", "100000000000"], - ["728565989451671", "84653359213"], - ["725997467745648", "115005092260"] - ] - ], - ["0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB", [["360447206306604", "56184744549"]]], - [ - "0x930836bA4242071FEa039732ff8bf18B8401403E", - [ - ["139743958414857", "2221663677"], - ["278604583755340", "11890755761"], - ["360261982782215", "93793524292"], - ["928108491041538", "5154270000"], - ["973209532669279", "22562763887"] - ] - ], - ["0x9383E26556018f0E14D8255C5020d58b3f480Dac", [["282849931909438", "88075053596"]]], - ["0x93d4E7442F62028ca0a44df7712c2d202dc214B9", [["214906704616754", "148859700937"]]], - ["0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f", [["179397038527663", "16859278098"]]], - ["0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa", [["99174348476492", "14316608969"]]], - [ - "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5", - [ - ["137323174947492", "3500000000"], - ["707970847379052", "152188010"], - ["707961113586604", "177292448"] - ] - ], - [ - "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", - [ - ["630638025676278", "253050000000"], - ["624881262044871", "102495000000"], - ["627455133606040", "253050000000"], - ["629742581193378", "253050000000"], - ["633580413767816", "253050000000"], - ["656209287275397", "10000000000"], - ["733330425581158", "49886373590"], - ["803979834988083", "13729367592"], - ["803993564355675", "272041210686"] - ] - ], - [ - "0x9728444E6414E39d0F7F5389ca129B8abb4cB492", - [ - ["541706763363462", "3324405000000"], - ["692928162008877", "1813500000"], - ["704933743496239", "6721835647"] - ] - ], - ["0x97b60488997482C29748d6f4EdC8665AF4A131B5", [["79182663733943", "122517511"]]], - [ - "0x97E89f88407d375cCF90eC1B710B5A914eB784Af", - [ - ["262897259899044", "1844339969"], - ["281353761257841", "6971402273"], - ["325950651461073", "14054479986"], - ["372005710267490", "8504661454"] - ] - ], - [ - "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", - [ - ["489503172747958", "9378468172"], - ["656343510832897", "15218730000"], - ["647244453263452", "50921590468"] - ] - ], - [ - "0x981793123af0E6126BEf8c8277Fdffec80eB13fd", - [ - ["710139039155338", "665549350"], - ["710156152304688", "483108332"], - ["710416667003201", "69640042"] - ] - ], - ["0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", [["730030468714506", "2552486513"]]], - [ - "0x988fB2064B42a13eb556DF79077e23AA4924aF20", - [ - ["157852242536462", "17313210068"], - ["279031628514856", "226251708976"] - ] - ], - ["0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60", [["379502238337329", "101752513973"]]], - [ - "0x989c235D8302fe906A84D076C24e51c1A7D44E3C", - [ - ["717247201282406", "2141035469"], - ["720949940194594", "142619335500"] - ] - ], - ["0x992C5a47F13AB085de76BD598ED3842c995bDf1c", [["832026119943265", "32781647269"]]], - [ - "0x995D1e4e2807Ef2A8d7614B607A89be096313916", - [ - ["147408661742730", "1993398346"], - ["202229243601483", "3759398496"], - ["218675824291689", "1894286900"], - ["228853249412592", "7142857142"], - ["262192846388560", "2857625611"], - ["278599069070305", "4221510559"], - ["323129447538182", "1941820772"], - ["491169840288326", "7468303231"], - ["491098724602647", "6469033333"], - ["695614691375936", "1788298206"], - ["695397642950613", "10587087636"], - ["695610007215451", "857142857"], - ["698039662814614", "20630903371"], - ["702866240719683", "4335852529"], - ["709258865731976", "12056682276"], - ["733859755226895", "4306282320"], - ["740628963065844", "844417120"], - ["802386603411282", "95204051"], - ["819041521984281", "38494858016"], - ["825004989277175", "623293283"], - ["825212890895654", "62649720"], - ["825222508085322", "6707198969"], - ["829224235071542", "19256876112"], - ["909269815577087", "96391325008"], - ["909191011494399", "58373882896"], - ["921228158133490", "6689760000"] - ] - ], - ["0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b", [["828439202214961", "1824412499"]]], - ["0x99e8845841BDe89e148663A6420a98C47e15EbCe", [["729028199659376", "2145758453"]]], - ["0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221", [["251973284998916", "112457271309"]]], - [ - "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", - [ - ["89510924603539", "3696311380"], - ["88804623658517", "28428552478"], - ["92799491258727", "10000000000"], - ["92897059143567", "1262870028"], - ["93479526088450", "279480420"], - ["93502949921683", "10949720000"], - ["93475780742273", "3745346177"], - ["99794321820115", "24234066624"], - ["99900338074082", "765933376"], - ["99901104007458", "15534457850"], - ["99818555886739", "25000000000"], - ["102526475485235", "22053409145"], - ["102501954901902", "23121000000"], - ["121605681461652", "57688204600"], - ["102419600128737", "33333333333"], - ["121579887060227", "25794401425"], - ["133642895056985", "14491677571"], - ["137284240176635", "31663342271"], - ["131585439464073", "18433333333"], - ["137339158456585", "5833333333"], - ["147898240236773", "21622894540"], - ["139915732251488", "60000000000"], - ["168913405229341", "73418207324"], - ["150059373596047", "20159065566"], - ["168887121980757", "26283248584"], - ["228808276373773", "584126946"], - ["225516708971000", "209998797626"], - ["232984186678394", "38451787955"], - ["246786815696076", "65394189314"], - ["289564659594839", "5440000000"], - ["306145738363890", "43975873054"], - ["339939840320315", "61482926829"], - ["334112396456448", "24345144843"], - ["406194696480271", "11163284655"], - ["445827217638143", "109943584385"], - ["446158323304809", "85561000000"], - ["471022073498897", "1771119180000"], - ["531958943429670", "6357442000000"], - ["695386584509673", "11058440940"], - ["695792889638739", "51022870"], - ["741113587859684", "582008800"], - ["762294855018238", "4725277211064"], - ["747381568584998", "12828436637551"], - ["774054542997492", "7525989446089"], - ["803378718060369", "125000000"], - ["821423984136929", "58283867892"], - ["822991266581068", "193914722147"], - ["825311821748493", "110218533197"], - ["923695272794914", "3470058078836"], - ["934361112930082", "875826549"], - ["934361988756632", "8767124173450"], - ["934361988756631", "1"] - ] - ], - [ - "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", - [ - ["89653878484825", "2368065675"], - ["89208646960630", "38853754100"], - ["710672212511201", "47090058"] - ] - ], - [ - "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", - [ - ["89518620914919", "104406740"], - ["94418146246757", "1000000"], - ["94429335603564", "1000000"], - ["94417944054697", "202192060"], - ["94429346603564", "13656860"], - ["94429336603564", "5000000"], - ["94429341603564", "5000000"], - ["122173282679601", "25689347322"], - ["137276142744140", "6856167984"], - ["491089182099072", "9542503575"], - ["623000903765131", "13450279740"], - ["704919725672132", "7279671848"], - ["708064389933233", "6157413604"], - ["708321346749708", "407318967"], - ["710377585512809", "9479483"], - ["711578414042753", "2539843750"], - ["712854585026426", "1673375675"], - ["714208188329582", "3142881940"], - ["729474974970791", "1702871488"], - ["737994621986537", "13348297600"], - ["761172759125683", "15882769"], - ["802189984737655", "11965994685"], - ["802403227984990", "170840041445"], - ["829437137736561", "500910625"] - ] - ], - [ - "0x9af623bE3d125536929F8978233622A7BFc3feF4", - [ - ["140425724068676", "1185063194630"], - ["249261881615002", "634988906630"] - ] - ], - [ - "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F", - [ - ["622863481299524", "18261807412"], - ["622881743106936", "22055244259"] - ] - ], - ["0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", [["723128115855767", "25000000000"]]], - [ - "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C", - [ - ["709010668288003", "106457720"], - ["709027482095723", "795636"] - ] - ], - ["0x9c211891aFFB1ce6CF8A3e537efbF2f948162204", [["639063951103669", "59036591791"]]], - [ - "0x9c695f16975b57f730727F30f399d110cFc71f10", - [ - ["61630487119649", "8058429169"], - ["61590791622395", "763789095"], - ["89506924603539", "474338291"], - ["695098214172154", "49424794604"], - ["693860993207517", "1303739940"], - ["695320908473347", "2612080692"], - ["760561911017218", "535830837294"], - ["782524171429880", "14658916075"], - ["801638457598809", "96735502348"], - ["887380987831155", "16970820644"], - ["946590324572539", "566999495822"] - ] - ], - [ - "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753", - [ - ["89997738582860", "1785516900"], - ["89999524099760", "266145543"], - ["137158194248374", "2"] - ] - ], - [ - "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", - [ - ["592978060846134", "116351049553"], - ["594679038165266", "19753556385"], - ["605342348741118", "93587607857"] - ] - ], - [ - "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196", - [ - ["206586140823282", "24029099031"], - ["248705737408140", "27608467355"] - ] - ], - ["0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56", [["743635887035182", "12652582923"]]], - [ - "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", - [ - ["298040450428789", "1352237819"], - ["469547339542651", "1389648589"], - ["695587678882559", "2997137850"] - ] - ], - [ - "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE", - [ - ["203219196546565", "17901404645"], - ["490244915816242", "11930700081"] - ] - ], - ["0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", [["137282998912124", "1241264511"]]], - [ - "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", - [ - ["149937196818046", "30000000000"], - ["157869555746530", "17128687218"], - ["290618447893311", "32886283743"], - ["462281867766454", "60000000000"], - ["670441074067342", "1735981704349"] - ] - ], - ["0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc", [["693287626526291", "132492430252"]]], - ["0xa03E8d9688844146867dEcb457A7308853699016", [["698739099764552", "210060204"]]], - ["0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", [["869688549762427", "3390839496"]]], - ["0xA0df63b73f3B8D4a8cE353833848D672e65Ad818", [["263964858351502", "22"]]], - [ - "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", - [ - ["343733188268035", "19163060173"], - ["456504925931714", "26717740160"] - ] - ], - [ - "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf", - [ - ["586374614958903", "196968848290"], - ["591732784862411", "61988431714"], - ["592665766471396", "206618185436"], - ["584597347753313", "57354074175"], - ["649365215309057", "136890000000"], - ["648084365999057", "136890000000"], - ["649669035059057", "136890000000"], - ["649061395559057", "136890000000"], - ["696380049045444", "10413750000"], - ["696107986627928", "10413750000"] - ] - ], - [ - "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", - [ - ["146155109178928", "3000000000"], - ["167963234163137", "4912604718"], - ["157839880097242", "12362439220"], - ["149981793079726", "4811715614"], - ["705015385175915", "3765334850"] - ] - ], - [ - "0xA256Aa181aF9046995aF92506498E31E620C747a", - [ - ["272456937859503", "48907133253"], - ["311901125265412", "50223451852"] - ] - ], - [ - "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6", - [ - ["696561749381444", "96417000000"], - ["696318708480928", "55984064516"] - ] - ], - [ - "0xa31CFf6aA0af969b6d9137690CF1557908df861B", - [ - ["737858120394156", "22234228333"], - ["743140025593601", "122067507"], - ["747313755152217", "67813432781"], - ["743141224086061", "508189060"] - ] - ], - [ - "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e", - [ - ["74127145692389", "426119290214"], - ["134191110739869", "639498343615"], - ["207846103191459", "349624513178"], - ["208862411683046", "358107845085"], - ["206712947604343", "447994980945"], - ["223074652580400", "789016308613"], - ["253465436481692", "209422598089"], - ["248766787432710", "382459205759"], - ["266041311377691", "844577500760"], - ["281508941148647", "231048083326"], - ["323196658902367", "640903306175"], - ["368093557075637", "338382661514"], - ["585127875819252", "403876115080"], - ["705486477290404", "2333969425"], - ["821850284728166", "44211467824"], - ["829437638652865", "399538786"], - ["835638572607331", "69954674028"], - ["921521067359012", "34095737422"], - ["922782913474271", "3679385472"] - ] - ], - [ - "0xA46322948459845Bb5d895ED9C1fdd798692a1dA", - [ - ["218985381779657", "4473579144"], - ["281332716579528", "10453702941"] - ] - ], - ["0xa4f79238d3c5b146054C8221A85DC442Ad87b45D", [["711780404576445", "24618132"]]], - [ - "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", - [ - ["241187757624377", "1317740918"], - ["241619965026016", "8737686936"] - ] - ], - ["0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", [["139710719558187", "1000000000"]]], - ["0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", [["238731986695824", "22497716826"]]], - ["0xa73329C4be0B6aD3b3640753c459526880E6C4a7", [["403136003365944", "5537799063"]]], - [ - "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2", - [ - ["288431410066080", "91254470715"], - ["302065553585736", "172400000000"] - ] - ], - [ - "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E", - [ - ["148507402919772", "18540386828"], - ["218918422285195", "46130596396"] - ] - ], - [ - "0xA92b09947ab93529687d937eDf92A2B44D2fD204", - [ - ["235586467178002", "2252016869"], - ["278219154129515", "100017300000"] - ] - ], - ["0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", [["708681698730544", "25673034"]]], - ["0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", [["403231089271090", "9515722669"]]], - [ - "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", - [ - ["250261928573315", "32609949600"], - ["298384382115865", "41700155407"], - ["713327569952376", "2233193957"], - ["711927519523431", "2704447617"], - ["722990899426468", "96716493785"] - ] - ], - [ - "0xa9b13316697dEb755cd86585dE872ea09894EF0f", - [ - ["201284566150746", "4149923574"], - ["260100286611024", "18087016900"], - ["272837697956175", "10681995985"], - ["302528299402497", "842071924045"], - ["445692803648364", "115228517177"], - ["627762158474309", "18284615400"], - ["624983757044871", "18284000000"], - ["625280395544871", "18284615400"], - ["630619741060878", "18284615400"], - ["633833463767816", "18284615400"], - ["656246709678397", "12085354500"], - ["702059066510312", "65849399034"] - ] - ], - [ - "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c", - [ - ["92945174342273", "59900000000"], - ["93064499342273", "74875500000"], - ["93217221592273", "74875500000"], - ["624708831044871", "21876000000"], - ["630891075676278", "21876172500"], - ["627282502896040", "21876172500"], - ["625551730160271", "21876172500"], - ["630146385730878", "21876172500"], - ["633558537595316", "21876172500"] - ] - ], - [ - "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", - [ - ["89999790245303", "7927293103"], - ["94415944052084", "2000002613"], - ["94304673484825", "2879757656"], - ["128200293224284", "4370751822"], - ["137130128894736", "2000000"], - ["288395052860245", "36357205835"], - ["285506736677232", "8843521858"], - ["408109401510596", "299504678878"], - ["451618826565681", "30009118039"], - ["451843231075363", "15011668209"], - ["557456706791285", "17563125222"], - ["557442225845432", "14480945853"], - ["643054965637173", "57230000000"], - ["643543740873303", "58387156830"], - ["635305237828821", "11373869605"], - ["707887449724785", "200935620"], - ["709228536986910", "7145929778"], - ["829479173734426", "97750210"], - ["861099408960178", "199999867679"], - ["920968369501809", "49999681340"], - ["922708246833826", "20955496102"], - ["927630225914484", "3915489816"], - ["929133119306605", "11148893919"], - ["929127565896265", "3760487192"], - ["929846368238126", "137089560126"], - ["943509118667439", "25123931061"] - ] - ], - [ - "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15", - [ - ["828441026627460", "5239569017"], - ["851852363441414", "1404119830"] - ] - ], - ["0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", [["147341296377729", "9412000000"]]], - [ - "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", - [ - ["92791463985345", "21750"], - ["851853767561244", "201654015884"], - ["866412741469874", "122955165365"] - ] - ], - [ - "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", - [ - ["139712642473749", "1178558112"], - ["148981530924047", "800000000"], - ["148977930924047", "3600000000"], - ["148179920088261", "12909150685"] - ] - ], - [ - "0xABC508DdA7517F195e416d77C822A4861961947a", - [ - ["672694542217095", "108706000000"], - ["672594178217095", "5766000000"], - ["921041054593050", "61408881869"] - ] - ], - ["0xAbe1ee131c420b5687893518043C5df21E7Da28f", [["280303043396627", "257767294743"]]], - [ - "0xaBe78350f850924bAfF4B7139c17932d4c0560C5", - [ - ["231484786889457", "103277281284"], - ["247720715547598", "119796085879"] - ] - ], - [ - "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", - [ - ["131666737241493", "394859823062"], - ["242148223648739", "26533824991"], - ["252954029308913", "32755674081"], - ["265543004614752", "466944255800"], - ["979644389443222", "103418450000"] - ] - ], - [ - "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", - [ - ["228792968885689", "10271881722"], - ["234464873892798", "50944632063"], - ["235282662007060", "51388130513"], - ["401945159569837", "13849594030"] - ] - ], - [ - "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0", - [ - ["457409482850195", "1310000000"], - ["608867358000586", "2624259160"] - ] - ], - [ - "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", - [ - ["211331639575030", "98095645584"], - ["557962511788124", "787707309561"] - ] - ], - [ - "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", - [ - ["718358762159417", "2979694125"], - ["719195393745202", "2015000000"], - ["718311098243492", "25000000000"], - ["733848878744335", "10876482560"], - ["731302174747013", "40000000000"], - ["728440989451671", "25000000000"], - ["725748414871545", "15403726711"] - ] - ], - ["0xafaAa25675447563a093BFae2d3Db5662ADf9593", [["698244652210039", "637343258"]]], - ["0xb13c60ee3eCEC5f689469260322093870aA1e842", [["326054841301059", "11752493257"]]], - ["0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106", [["709912882840970", "20878800"]]], - [ - "0xb338092f7eE37A5267642BaE60Ff514EB7088593", - [ - ["213531505921710", "93039721219"], - ["213786735642929", "185210230255"], - ["229073377073773", "364035918660"], - ["229455251661155", "142183392268"], - ["728840082810884", "2323048492"], - ["840663722030413", "16116959741"], - ["920778431941811", "12551804265"] - ] - ], - [ - "0xB345720Ab089A6748CCec3b59caF642583e308Bf", - [ - ["695625680694114", "2768287495"], - ["695933552068087", "15032871752"], - ["695875040256601", "2338659386"], - ["709457711087835", "12731370312"], - ["709482020770224", "10493080827"], - ["710324533148846", "18389039062"], - ["710296450302572", "16767945280"], - ["715517406503861", "43461762466"], - ["715487504402961", "29902100900"], - ["718000615202122", "9313705270"], - ["721499405100178", "14114087310"], - ["732825382006077", "231205357536"], - ["733056587363613", "252155202330"], - ["733527169616338", "214433251957"], - ["734615940653736", "273039002863"], - ["734375467884350", "240472769386"], - ["733959185040049", "210961749202"], - ["734170146789251", "205321095099"], - ["734888979656599", "172558844132"], - ["736369497945580", "31281369769"] - ] - ], - ["0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F", [["191324987903919", "508123258818"]]], - ["0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", [["252900231373433", "4"]]], - ["0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", [["225729337993345", "35727783275"]]], - [ - "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277", - [ - ["279023004179684", "8624335172"], - ["790143477817634", "291619601680"] - ] - ], - [ - "0xb53031b8E67293dC17659338220599F4b1F15738", - [ - ["280795609685940", "55265901"], - ["285782944886025", "40771987379"] - ] - ], - [ - "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", - [ - ["144865920860161", "306070239187"], - ["459450774898205", "2054144320000"] - ] - ], - [ - "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", - [ - ["66084769661335", "7048876233"], - ["716940669389169", "1801805718"] - ] - ], - [ - "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393", - [ - ["692591545312322", "104395512250"], - ["693420118956543", "81489498170"], - ["692698553534529", "139558094702"] - ] - ], - [ - "0xb63050875231622e99cd8eF32360f9c7084e50a7", - [ - ["207846098025288", "5166171"], - ["216896549205986", "99245868053"], - ["211429735220614", "18112431039"], - ["211329772423726", "1867151304"] - ] - ], - [ - "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", - [ - ["214864041169245", "3710134756"], - ["740613927110994", "3915612129"], - ["746154046595561", "25233193029"], - ["741243747849264", "27308328915"], - ["902793682819228", "44866112401"] - ] - ], - [ - "0xB65a725e921f3feB83230Bd409683ff601881f68", - [ - ["311768851134035", "3441975352"], - ["311772293109387", "29574505735"] - ] - ], - [ - "0xb66924A7A23e22A87ac555c950019385A3438951", - [ - ["215781356883368", "347100000000"], - ["216503679205986", "392870000000"], - ["221413967553917", "100671341995"], - ["235334050137573", "132445933047"], - ["264053861297094", "35561818090"] - ] - ], - [ - "0xB73a795F4b55dC779658E11037e373d66b3094c7", - [ - ["425068244486778", "341688796"], - ["451687811683720", "134653071054"], - ["462395957190637", "134236764892"], - ["717100914282406", "146287000000"] - ] - ], - ["0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D", [["709239251125570", "332151166"]]], - [ - "0xb78003FCB54444E289969154A27Ca3106B3f41f6", - [ - ["225318382193655", "11278479258"], - ["252910380835030", "43648473883"], - ["446839983027105", "2538113894"], - ["456540458333457", "13353165233"], - ["623587942044871", "121464000000"], - ["626104340053540", "121464000000"], - ["631429982912047", "121464000000"], - ["629548857709709", "121464000000"], - ["627780443089709", "121464000000"], - ["632920042532047", "121464000000"] - ] - ], - ["0xB81D739df194fA589e244C7FF5a15E5C04978D0D", [["825251211700977", "389659428"]]], - ["0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B", [["382861084620606", "214690052512"]]], - [ - "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", - [ - ["122381475052431", "616986784925"], - ["247709563496291", "2582826931"], - ["254358180682653", "76640448070"] - ] - ], - [ - "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1", - [ - ["310812228062749", "10002984280"], - ["711528267235947", "146806806"], - ["716767611098656", "1192390513"], - ["717401624017875", "881640483"], - ["774049053451452", "5489546040"], - ["805863098612172", "28037331000"], - ["821832492311173", "17792416993"] - ] - ], - [ - "0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711", - [ - ["205898204078203", "687936745079"], - ["245347547726707", "465422973716"], - ["245812970700423", "10000000"] - ] - ], - [ - "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6", - [ - ["201458354078344", "217646800712"], - ["281739989231973", "79386856736"], - ["300448068579740", "47624260933"], - ["295229653187803", "142725497767"] - ] - ], - ["0xbC3A1D31eb698Cd3c568f88C13b87081462054A8", [["708095648692114", "173482798"]]], - [ - "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB", - [ - ["829110269987549", "1294270000"], - ["829108707937549", "1562050000"], - ["840777772674190", "3082627625"] - ] - ], - ["0xBd03118971755fC60e769C05067061ebf97064ba", [["720678752310386", "31263554400"]]], - [ - "0xbd0D7F2115C73576464689883Ce7257A3b4D8eC4", - [ - ["328320292096710", "12940102264"], - ["422918905448662", "73184769082"] - ] - ], - [ - "0xbD50a98a99438325067302D987ccebA3C7a8a296", - [ - ["136900203559052", "12993316305"], - ["709329339051997", "6123877877"], - ["710729257296130", "637955898"], - ["714013651617064", "1819712518"], - ["712234747014344", "278940323"], - ["713440143146333", "2989879792"], - ["712618240828873", "1403355509"], - ["746632318660136", "232657030717"], - ["741451614378115", "78825736666"], - ["805936845705483", "11382290617"] - ] - ], - ["0xBD874A4e472AEc2777a137788A0c7cC1e043E8D7", [["655101870360636", "18482957844"]]], - ["0xBe289902A13Ae7bA22524cb366B3C3666c10F38F", [["980156302633580", "127964411211"]]], - ["0xBe41D609ad449e5F270863bBdCFcE2c55D80d039", [["320166210969483", "13822416435"]]], - ["0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A", [["273275464185929", "60397999132"]]], - ["0xbf8A064c575093bf91674C5045E144A347EEe02E", [["279926667638567", "17931477721"]]], - [ - "0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD", - [ - ["643036860621235", "2658482"], - ["656209153318480", "133956917"] - ] - ], - [ - "0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e", - [ - ["61638545548819", "10000000000"], - ["340032517656384", "14808722031"] - ] - ], - ["0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb", [["113368183061335", "1176175320733"]]], - ["0xc06320d9028F851c6cE46e43F04aFF0A426F446c", [["591794773294125", "397510122725"]]], - [ - "0xc0985b8b744C63e23e4923264eFfaC7535E44f21", - [ - ["262274378621214", "8448778010"], - ["724808689235963", "42703247654"] - ] - ], - [ - "0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B", - [ - ["170675910224424", "1568445146"], - ["705338180288143", "212488219"], - ["705711760021846", "752753038"] - ] - ], - [ - "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04", - [ - ["705090818684110", "4034021934"], - ["705505883321902", "5902625669"] - ] - ], - [ - "0xc18BAB9f644187505F391E394768949793e9894f", - [ - ["247853327750979", "170528981764"], - ["303370371326542", "89817845930"], - ["315703398038150", "24750487353"], - ["464439664065321", "13387683058"] - ] - ], - [ - "0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57", - [ - ["89248612146855", "243876574072"], - ["102048545008487", "221193780622"], - ["723779373935363", "3046740000"], - ["853974527806831", "7027118670"], - ["928717147372846", "7781921622"] - ] - ], - [ - "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d", - [ - ["828755702475588", "15527700000"], - ["829763387332558", "2965710000"], - ["931679348366271", "7619023341"], - ["973194749444164", "14772870000"] - ] - ], - ["0xc1F80163cC753f460A190643d8FCbb7755a48409", [["640869029506791", "292734203894"]]], - [ - "0xc22846cf4ACc22f38746792f59F319b216E3F338", - [ - ["102738799520478", "6914243179"], - ["106259218985936", "306042654222"], - ["339313664142821", "197210596655"] - ] - ], - [ - "0xc240D9f8d38F2bE93900C5e5D1Acc10D2CC7AbAc", - [ - ["648452995559057", "608400000000"], - ["707566423717109", "44836092000"] - ] - ], - [ - "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", - [ - ["122141577289765", "10005184031"], - ["113207767929149", "10000133467"], - ["135044795879030", "10000746824"], - ["147958440123698", "10000266356"], - ["204545147643713", "15000651136"], - ["318116976414242", "14279057316"], - ["376767714073110", "23441160473"], - ["355995222525207", "18717725462"], - ["422345375350319", "13000510719"], - ["408549831537034", "15015000000"], - ["416504558917167", "14634827400"], - ["414553430770600", "15315000000"], - ["439271548752073", "16170000000"], - ["454822657667388", "16290000000"], - ["446312779443385", "16180000000"], - ["451883850444866", "16275000000"], - ["446370514284268", "16195000000"], - ["446740626173079", "16993320000"], - ["457410792850195", "16402456400"], - ["464432663361409", "7000703912"], - ["464601152419390", "2000375209"], - ["469264476039815", "2955630274"], - ["465956424294911", "3334000000"], - ["502183413563788", "12000847530"], - ["526396019531216", "12150844062"], - ["526394168811626", "1850719590"], - ["584696795687639", "25001126129"], - ["608368673405200", "3000733574"], - ["608363673389050", "5000016150"], - ["620998458200750", "40000139883"], - ["621630357262657", "25000547514"], - ["608358673352623", "5000036427"], - ["625002041044871", "139177000000"], - ["625141218044871", "139177500000"], - ["627901907089709", "139177500000"], - ["630480563560878", "139177500000"], - ["629409680209709", "139177500000"], - ["638007078618750", "63000942831"], - ["634757719179039", "21288581043"], - ["635864111161027", "58995201524"], - ["633851748383216", "139177500000"], - ["643602128030133", "35000228661"], - ["634732718757528", "25000421511"], - ["643226775637173", "35000191134"], - ["652874754163470", "36540941845"], - ["656270990330397", "12305240500"], - ["685693467795443", "40000713511"], - ["695887723732448", "5734247168"], - ["696072126729239", "3746989188"], - ["696068918241696", "3208487543"], - ["696064191856450", "89307112"], - ["695911315280125", "6133038908"], - ["696973284060907", "6680448394"], - ["697125870710905", "10754911306"], - ["697908756048625", "3074650514"], - ["697194966301885", "1975350168"], - ["697939412993466", "5738976938"], - ["697935084392083", "4328601383"], - ["697188652226938", "6314074947"], - ["697928635221077", "4055303570"], - ["697923689914115", "2241458357"], - ["697911830699139", "8864634973"], - ["698282987059495", "1080208844"], - ["697008965716356", "7513550787"], - ["697457726247208", "4277285793"], - ["698275425805867", "2365512357"], - ["697446196274780", "11529972428"], - ["698293885939566", "3573014871"], - ["699396785359005", "1779105771"], - ["699425316323075", "4262791526"], - ["702628299720765", "7345549819"], - ["700199982329841", "703007479"], - ["700210422078056", "3321184623"], - ["699343934151275", "314474508"], - ["699643899154203", "2757699459"], - ["700076254595618", "2066543146"], - ["698297458954437", "931625563"], - ["700213743262679", "90773857834"], - ["699341396601962", "2537549313"], - ["699344248625783", "52536733222"], - ["705280601276516", "4729098391"], - ["705233383770195", "7694578743"], - ["705270191047062", "2606155169"], - ["705279383594099", "1217682417"], - ["705317949117445", "5181153567"], - ["705323130271012", "4614678824"], - ["705566749386995", "2236741375"], - ["705875574768193", "1286803916"], - ["707759300681024", "5095772443"], - ["707879394552312", "1383172473"], - ["705876861572109", "675932780000"], - ["707917999619555", "1741026097"], - ["708264332859554", "15793160717"], - ["708506787876096", "4583685945"], - ["709094440793918", "5174884798"], - ["709027482891359", "9631809130"], - ["709049870806057", "2654030705"], - ["709210648802134", "6263894867"], - ["709423805533599", "4250838692"], - ["709189636394767", "3914086081"], - ["709732268222515", "2709517491"], - ["709741475815639", "3512346216"], - ["713810931106331", "3788010733"], - ["715156616006503", "2048540364"], - ["712013424471048", "2979058737"], - ["743115434932695", "5275645779"], - ["802847674131427", "654689120"], - ["828253656097284", "730902154"], - ["828941762423797", "11567074759"], - ["853933848243357", "40679563474"], - ["862603295423910", "100095973919"], - ["906298875689346", "16180260000"], - ["921314197483026", "50134195376"], - ["933873712724430", "16684472211"], - ["947720059043009", "17207595616"], - ["949056502324536", "96787778278"], - ["973059938511716", "28719576579"], - ["973453082747626", "15781954650"], - ["976540080919814", "7131234758"], - ["977035265323679", "9658190454"] - ] - ], - ["0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5", [["662669216662487", "181407469174"]]], - ["0xC37e2C0D1d60512cFcBe657B0B050f0c82060d1b", [["603440410903505", "73324222276"]]], - [ - "0xC3853C3A8fC9c454f59c9aeD2Fc6cfa1a41eB20E", - [ - ["559802408626458", "7492000000000"], - ["612626257033573", "4511000000"], - ["612621746033573", "4511000000"], - ["612617235033573", "4511000000"], - ["812360090581159", "6681431403122"] - ] - ], - [ - "0xc493AA1EA56dfe12E3DC665c46E1425BC3ee426F", - [ - ["934349602396467", "11510533615"], - ["934274510665946", "75091730521"] - ] - ], - ["0xC4B07F805707e19d482056261F3502Ce08343648", [["282808447027022", "15486010094"]]], - [ - "0xC4FF293174198e9AeB8f655673100EeEDcbBFb1a", - [ - ["290651334177054", "4"], - ["293528031483784", "75630603060"], - ["293611040837832", "42621249012"], - ["293753661785504", "301340"] - ] - ], - ["0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", [["711149302815635", "1098667202"]]], - [ - "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", - [ - ["446799565031974", "11558542555"], - ["446811123574529", "2568295359"], - ["446796098150493", "1284050989"], - ["446775368646919", "2247289304"], - ["446777615936223", "2247214270"], - ["451608639759036", "10186806645"], - ["446703287298426", "21634719148"], - ["446813691869888", "1926157217"], - ["446724922017574", "14044540659"], - ["446771515976335", "3852670584"], - ["446797382201482", "2182830492"], - ["445808032165541", "19185472602"], - ["446759314893752", "10274242898"], - ["456492891954949", "12033976765"], - ["456531643671874", "8814661583"], - ["464420620139310", "12043222099"], - ["469456725985378", "7051865770"], - ["513223938670492", "27432801793"], - ["594342495219921", "15800019853"], - ["653761632946929", "24571328348"] - ] - ], - ["0xC555347d2b369B074be94fE6F7Ae9Ab43966B884", [["704775356837324", "3307608864"]]], - [ - "0xC5581F1aE61E34391824779D505Ca127a4566737", - [ - ["148061887117192", "16666637666"], - ["148037051950526", "24835166666"], - ["148106901074024", "466666666"], - ["152264318876628", "419873133"], - ["387424472771954", "17549000000"], - ["568590284775745", "166129892955"], - ["568335841496795", "254443278950"], - ["829087613925271", "1693399184"], - ["829089307324455", "12401663706"], - ["844556659260005", "699592000000"], - ["853981554925501", "839680000000"], - ["978222901978355", "11020518971"] - ] - ], - [ - "0xC56725DE9274E17847db0E45c1DA36E46A7e197F", - [ - ["725763818598256", "3473689961"], - ["725767292288217", "16729932626"], - ["733876061509215", "24486717680"], - ["740851194065444", "25988043120"], - ["802355622107782", "30981303500"], - ["782267856468902", "29182743714"], - ["803032972983015", "37545775027"], - ["803078771347988", "92480062924"], - ["806046552832480", "98029361717"], - ["903759452958415", "2390187809846"] - ] - ], - [ - "0xc6302894cd030601D5E1F65c8F504C83D5361279", - [ - ["102525075901902", "1399583333"], - ["741220479376083", "4151396937"] - ] - ], - [ - "0xC65F06b01E114414Aac120d54a2E56d2B75b1F85", - [ - ["221365023659870", "48943894047"], - ["228860392269734", "27884104039"], - ["250600807510613", "197207803637"], - ["277250339397938", "24695452876"], - ["296769619235277", "28239348266"], - ["312153408646865", "864512459822"], - ["384391845648207", "15025896"], - ["490961672234272", "127509864800"], - ["592192283416850", "52835637822"], - ["621047974340633", "15686547585"], - ["636879771184339", "455386821670"], - ["691462359431310", "185598910890"], - ["690572868710277", "889490721033"], - ["691654062924240", "7406808617"], - ["694500649981361", "74135096485"], - ["693501608454713", "32787945873"], - ["704463555730413", "94264084571"], - ["704557819814984", "117747552306"] - ] - ], - [ - "0xC6e76A8CA58b58A72116d73256990F6B54EDC096", - [ - ["526408170375278", "6848535197"], - ["640236298144951", "3786643566"] - ] - ], - [ - "0xc6Ee516b0426c7fCa0399EaA73438e087B967d57", - [ - ["106125616554651", "133602431285"], - ["201085473425602", "183863683304"] - ] - ], - [ - "0xC76d7eb6B13a8aDC5E93da2bD1ae4309806757c6", - [ - ["137315903518906", "3938428586"], - ["170709325803327", "4296524923"], - ["298378540271272", "5841844593"], - ["404801128668117", "6518016107"], - ["451952602171871", "8473153625"], - ["663281001462482", "71703585901"], - ["729476677842279", "13343392977"], - ["733824755572615", "24123171720"], - ["733808479118935", "7120385640"] - ] - ], - [ - "0xC7B42F99c63126B22858f4eEd636f805CFe82c91", - [ - ["710926897034111", "5075788"], - ["710594453064805", "447537440"], - ["710926902109899", "34690939834"], - ["710634399657845", "1422013513"] - ] - ], - ["0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9", [["705108207674441", "6108413155"]]], - ["0xC7c5a25141dfBB4eb586c58fE0f12efd5f999A2B", [["327783999805850", "96246009371"]]], - ["0xC7ED443D168A21f85e0336aa1334208e8Ee55C68", [["647295374853920", "162196409199"]]], - [ - "0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1", - [ - ["370731810042041", "172624697925"], - ["360503391051153", "27939181534"], - ["602205068224370", "154721753900"], - ["695616479674142", "7640019972"], - ["700200685337320", "9736740736"], - ["702596610560710", "19191681808"], - ["705001660805052", "10154937500"], - ["704892188844950", "11317504822"] - ] - ], - ["0xc83746C2da00F42bA46a8800812Cd0FdD483d24A", [["326745544685621", "14621832431"]]], - [ - "0xC89A6f24b352d35e783ae7C330462A3f44242E89", - [ - ["145620692516754", "56092082506"], - ["167972967779842", "1662797550"], - ["235869811191401", "17601537341"], - ["260462773844629", "222000000000"], - ["293794920431252", "38741655592"], - ["291557509922353", "97094321858"], - ["329442682461611", "645749915430"], - ["365396349829984", "2571019861709"], - ["370948106831688", "961279650599"], - ["362036348933971", "3360000896013"], - ["400178087176035", "137617079719"], - ["695896543103776", "4394126040"], - ["796630484780861", "52546699219"], - ["800247060874552", "48434302620"], - ["802386698615333", "15537852857"], - ["821292380697601", "8410169379"] - ] - ], - ["0xC95186f04B68cfec0D9F585D08C3b5697C858fe0", [["107032396306938", "4486622483613"]]], - [ - "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b", - [ - ["99852518660830", "1437789097"], - ["133665483117841", "19323965325"], - ["949006843151357", "49659144709"] - ] - ], - [ - "0xCa11d10CEb098f597a0CAb28117fC3465991a63c", - [ - ["334500032246897", "51351551872"], - ["339510874739476", "34339819618"], - ["335528604717351", "39742257015"], - ["356228879370364", "37362352211"], - ["385850075051403", "37345928668"], - ["402968433138340", "128793953990"], - ["461529316258478", "132878417357"], - ["464092855272732", "235308225358"], - ["463602802887409", "135260808947"], - ["513114664204689", "67231603439"], - ["519621679310053", "45295250000"] - ] - ], - [ - "0xcA210D9D38247495886a99034DdFF2d3312DA4e3", - [ - ["88939343887885", "249268258919"], - ["93157202342273", "14856250000"], - ["135054796625854", "254078110756"], - ["145726784599260", "133850744098"], - ["158145395697934", "254834033922"], - ["181067383560158", "231684492403"], - ["219863223520656", "202188482247"], - ["233070214366789", "512087118743"], - ["243026436226482", "213880008209"], - ["246133794098219", "175801604856"], - ["233582301485532", "167963854918"], - ["241800687702228", "175568451420"], - ["258241758043770", "191819355151"], - ["258433577398921", "347968913517"], - ["272848379952160", "337001078730"], - ["311869690009016", "6745238037"], - ["456458867198156", "34024756793"], - ["456415685031978", "32560000000"], - ["622979420373337", "15695221534"], - ["624021679044871", "32896000000"], - ["625759167897771", "32896500000"], - ["630447667060878", "32896500000"], - ["631084810756278", "32896500000"], - ["633353782187816", "32896500000"], - ["626970201238540", "32896500000"], - ["640243859396869", "2638341158"], - ["648221255999057", "84111300000"], - ["664905223779709", "3284158899"], - ["695173314015767", "5637466721"], - ["695602559036865", "7448178586"], - ["696259499200928", "59209280000"], - ["695518171327888", "5903735025"], - ["695467106462249", "28471528595"], - ["695426166696789", "8643272696"], - ["695529046988846", "8588394184"], - ["696080521867739", "6468282284"], - ["695447106462249", "20000000000"], - ["698255015452892", "3549072302"], - ["697182071282595", "971681987"], - ["698258586850647", "6326081465"], - ["697000732780868", "8232935488"], - ["698172153368599", "72498841440"], - ["699271094629306", "70301972656"], - ["699422093787082", "3222535993"], - ["700080929167959", "53884687500"], - ["702372437829497", "224172731213"], - ["704178510601338", "4230557254"], - ["704242041217758", "4579348454"], - ["704301722238546", "131685951867"], - ["704210645387913", "5554593027"], - ["705556052258123", "10697128872"], - ["705592675950611", "12970687979"], - ["705624046020210", "14591855468"], - ["705531861429845", "11034160064"], - ["707127680602109", "402840000000"], - ["705718829609617", "11609907184"], - ["708120196123304", "10764000000"], - ["709722752927279", "9515295236"], - ["720672401331113", "6350979273"], - ["720881401746678", "68538447916"], - ["743849710008778", "105474278261"], - ["743201020219702", "44526000000"], - ["821102020697601", "190360000000"] - ] - ], - [ - "0xcb1Fda8A2c50e57601aa129ba2981318E025F68E", - [ - ["328248386875502", "21497263680"], - ["328222776335176", "25610540326"] - ] - ], - ["0xCB85C8f60a34D2cB566CC0b0ce9e8Fd66C2d961F", [["326760166518052", "21410000000"]]], - ["0xcb89e2300E22Ec273F39e69E79E468723ad65158", [["825241803481990", "567537293"]]], - ["0xCba1A275e2D858EcffaF7a87F606f74B719a8A93", [["78911996612066", "268250911852"]]], - ["0xCE1Ef18B8c756E2A3bf24fF86DF3e2a4a442691e", [["668776657908591", "15320220000"]]], - [ - "0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0", - [ - ["231282042254873", "42278925645"], - ["708077870979706", "2139486421"], - ["976425187503346", "10261208678"], - ["976472218629212", "36776229843"] - ] - ], - [ - "0xCeD392A0B38EEdC1f127179D88e986452aCe6433", - [ - ["950025729152542", "66358992180"], - ["980284276067778", "127986754747"] - ] - ], - [ - "0xCF0dCc80F6e15604E258138cca455A040ecb4605", - [ - ["264510568420795", "749736733"], - ["694421475965819", "391574385"], - ["828631359445137", "572238513"], - ["829219468224175", "1708733210"], - ["973333622225279", "3541650000"], - ["980156263262177", "3344108"] - ] - ], - ["0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0", [["182105251296260", "78950315731"]]], - ["0xcfd9c9Ac52b4B6Fe30537803CaEb327daDD411bB", [["702615802242518", "5827431793"]]], - [ - "0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a", - [ - ["266009948870552", "10185616007"], - ["266020134486559", "21176891132"], - ["307530008746042", "4522765369"], - ["311578670193243", "40625041509"], - ["741445094311512", "1517396973"] - ] - ], - [ - "0xD00fB8efFeE21177df7871F285B379Bb03d8A8b5", - [ - ["787303159010592", "203162271017"], - ["825251601360405", "60220388088"] - ] - ], - [ - "0xd03c52B3256b5e102ce4BF6bB53d4Be9d9963838", - [ - ["106936454128405", "95942178533"], - ["106885110814498", "51343313907"], - ["128507679667004", "2777777777"], - ["199355194112136", "1055586732753"], - ["229597435053423", "370401758420"], - ["355572405876724", "13501951210"], - ["461504919218205", "5164865662"], - ["665822568547360", "42860013000"], - ["666572906012860", "46163250000"], - ["666153675312860", "46163250000"], - ["710174529503020", "879707608"], - ["801610293082217", "5814129257"], - ["828712132466378", "43570000000"], - ["828863938697501", "44540000000"], - ["828908478697501", "28283345400"], - ["830362645771060", "61845000000"], - ["830424490771060", "13020000000"], - ["830297545771060", "65100000000"], - ["830265015756485", "32530000000"], - ["840251035083841", "37495000000"], - ["840213540083841", "37495000000"], - ["840780855312982", "151000000000"], - ["840931855312982", "28419857376"], - ["902838548931629", "149541493389"], - ["930117308171481", "24205500000"], - ["963093044015781", "51770400000"], - ["976786112158391", "126520824627"], - ["976912632983018", "122632340661"] - ] - ], - [ - "0xD12570dEDa60976612Eeac099Fb843F2cc53c394", - [ - ["274262035066160", "23535339927"], - ["289006048832749", "22752528487"], - ["334654600033886", "24922015529"] - ] - ], - ["0xD130Ab894366e4376b1AfE3D52638a1087BE17F4", [["827241244621487", "180900000"]]], - [ - "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", - [ - ["705285330374907", "3789921580"], - ["705407747183103", "631861553"], - ["709406140263143", "5001904811"], - ["709406120075496", "20187647"] - ] - ], - ["0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0", [["148224785797347", "217652983"]]], - [ - "0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691", - [ - ["379489404845423", "10068277389"], - ["381321331069863", "4615615453"], - ["387719729833906", "9627158590"], - ["387097363491328", "2197410000"] - ] - ], - ["0xD1C5599677A46067267B273179d45959a606401D", [["328341866253694", "9669724298"]]], - ["0xD1F27c782978858A2937B147aa875391Bb8Fc278", [["202665556232120", "56750401947"]]], - ["0xD2594436a220e90495cb3066b24d37A8252Fac0c", [["196975395659177", "8639602506"]]], - ["0xD2aC889e89A2A9743Db24f6379ac045633E344D2", [["451822464754774", "20766320589"]]], - ["0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911", [["693155946760383", "37390765908"]]], - [ - "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", - [ - ["340001323247144", "1582439"], - ["388957611450048", "12634438220"], - ["737811867246072", "124875217"] - ] - ], - [ - "0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8", - [ - ["102555686894380", "183112626098"], - ["102548528894380", "7158000000"], - ["262691524971365", "117463196595"], - ["296027713621539", "255540375316"], - ["404268102048493", "41880000000"], - ["702870576572212", "879875000000"] - ] - ], - [ - "0xd30eB4f27aCac4d903a92A12a29f3fe758A6849c", - [ - ["93530777914483", "478845021900"], - ["424144199349794", "754104205535"], - ["663352705048383", "455513781363"], - ["708948305072321", "159745132"], - ["709205754871473", "4893930661"], - ["709788307855108", "216288453"] - ] - ], - [ - "0xd3FeeDc8E702A9F191737c0482b685b74Be48CFa", - [ - ["274448643868893", "16988852448"], - ["718117083194035", "19072704777"] - ] - ], - [ - "0xD441C97eF1458d847271f91714799007081494eF", - [ - ["277900231532283", "118731904635"], - ["275227278755606", "255020597678"], - ["299191178558501", "261156805041"], - ["368082390597076", "11166478561"], - ["408408906189474", "10970351806"] - ] - ], - ["0xD497Ed50BE7A80788898956f9a2677eDa71D027E", [["248733345875495", "16723961312"]]], - ["0xD4B5541B7d82C6284e54910aB6068dC218Da1D1C", [["491226133332142", "1565550000000"]]], - [ - "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", - [ - ["326948938320474", "145778407801"], - ["326119566604304", "531282874686"], - ["386040742008352", "184511731281"] - ] - ], - [ - "0xD560fd84DAB03114C51448ab97AD82D21Cc3cEEc", - [ - ["89248611960630", "186225"], - ["760210005222549", "59333461779"], - ["743140147661108", "1076424953"], - ["742999939969117", "169346069"], - ["747313750769660", "4382557"], - ["829513920583470", "23414898833"], - ["829477282892375", "906241015"], - ["830437510771060", "1167009046"] - ] - ], - ["0xD567BEdb9EAe1DB39f0e704B79dF6dF7f846B9B0", [["313159159514394", "21381687739"]]], - ["0xd582359cC7c463aAd628936d7D1E31A20d6996f3", [["634989472785580", "297359673383"]]], - ["0xd5aE1639e5EF6Ecf241389894a289a7C0c398241", [["828971315411802", "5954962183"]]], - ["0xD5eFa6Ce5E86C813d5b016ABd10Bf311648D9FE8", [["458201621062168", "2644238087"]]], - ["0xD5Fe199029ee4626478D47caE4F6F68CEa142c4C", [["275482299353284", "183879103897"]]], - [ - "0xd61296bc2FEaE9Ed107aB37d8BAF12562f770Bd5", - [ - ["220964407867656", "39255134736"], - ["262455511024505", "85553535801"] - ] - ], - [ - "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427", - [ - ["89568057013754", "52142144"], - ["81480553978154", "9001457167"], - ["89989850005488", "217074926"], - ["122198972026923", "641943900"], - ["136886956696528", "2654796068"], - ["704246620566212", "475832176"], - ["704252167369562", "2606857506"], - ["709389584471923", "1519583480"], - ["711448099270596", "1605097528"], - ["716610697442076", "1975656580"], - ["716464555526674", "1461715402"], - ["802185093237974", "4891499681"], - ["804718414306922", "5447341871"], - ["829670041311674", "5406296301"], - ["829478189133390", "984601036"] - ] - ], - [ - "0xD6626eA482D804DDd83C6824284766f73A45D734", - [ - ["219270445353546", "2023493366"], - ["236255249235083", "18060301074"], - ["328279955533336", "40336563374"] - ] - ], - ["0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF", [["608381722514915", "274110362747"]]], - [ - "0xD6e91233068c81b0eB6aAc77620641F72d27a039", - [ - ["89611453141913", "4079835540"], - ["122079887289765", "3798086400"] - ] - ], - [ - "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3", - [ - ["717541977658358", "4678944318"], - ["717099265353896", "1648928510"], - ["720316182669186", "16766090212"], - ["733480425581158", "21728068461"], - ["733308742565943", "21683015215"] - ] - ], - [ - "0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6", - [ - ["137071908851550", "19019143753"], - ["137319841947492", "3333000000"], - ["221825594101100", "2541993926"], - ["252607067837503", "6103560879"], - ["278128513436918", "10981000000"], - ["309147120451233", "20160241262"], - ["383565939191950", "4380730981"], - ["464408576241180", "12043898130"], - ["695265002426652", "3366848882"] - ] - ], - [ - "0xd722B7b165bb87c77207a4e0e690596234Cf1aB6", - [ - ["196984035261683", "56498924765"], - ["227938524477124", "315413817976"], - ["247129078873496", "69890902362"], - ["386225253739633", "48660000000"] - ] - ], - [ - "0xD79e92124A020410C238B23Fb93C95B2922d0B9E", - [ - ["160299068297321", "7664165865816"], - ["168986823436665", "1640014683559"], - ["172750719623363", "6646318904300"], - ["185619552361991", "83962792"], - ["182779552361991", "2840000000000"] - ] - ], - ["0xD87bc009C1Fd2d29A3f1dDF94e6529dEC1aFD7D3", [["305492349986784", "564315536574"]]], - ["0xD8c84eaC995150662CC052E6ac76Ec184fcF1122", [["977044923514850", "20230146794"]]], - [ - "0xD93cA8A20fE736C1a258134840b47526686D7307", - [ - ["117206354897649", "11371417669"], - ["139713821031861", "5137382996"], - ["708388223240861", "14647098985"], - ["708728894392214", "17747254687"], - ["709175183551959", "10494453652"], - ["714452777817475", "137731690000"] - ] - ], - [ - "0xD970Ba10ED5E88b678cd39FA37DaA765F6948733", - [ - ["203410780104759", "10000000000"], - ["380815886869713", "7392140365"] - ] - ], - [ - "0xD9E886861966Af24A09a4e34414E34aCfC497906", - [ - ["622903798351195", "78840756"], - ["622903877191951", "92219555"], - ["634541694896879", "47759145702"] - ] - ], - ["0xdAe3b4E9bA2F1bd8da873B7dd5a391781a8C1Ae4", [["218731907990205", "28885163958"]]], - ["0xdb215bA8D9bed3aACE91E23307Caa00A8c9211f1", [["328718971143710", "2005065961"]]], - [ - "0xdB4fBc231F1D2b3B4c3d9e1602C895806fb06278", - [ - ["149148148153096", "283779269760"], - ["216995795074039", "229812428383"], - ["248023856732743", "254568376533"], - ["277191210926165", "59128471773"], - ["313017921106687", "141238407707"], - ["387321141788740", "21300990257"], - ["520068017089909", "7742150000"], - ["697920695334112", "2994580003"] - ] - ], - ["0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c", [["910427813535356", "25199642635"]]], - [ - "0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661", - [ - ["81494522736316", "1765692730755"], - ["112324735805316", "883032123833"], - ["128811967747881", "1486737153234"], - ["139120611162062", "455109074924"], - ["414944772548783", "1479741690000"], - ["510097426250969", "3013875740000"], - ["605476509512623", "2882163840000"], - ["819080016842297", "1176211486527"] - ] - ], - [ - "0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D", - [ - ["74599404982603", "149825000000"], - ["203237097951210", "119851523542"], - ["219544288648330", "115400000000"], - ["249149246638469", "112634976533"], - ["270032140182000", "154140000000"] - ] - ], - [ - "0xDc4F9f1986379979053E023E6aFA49a65A5E5584", - [ - ["61546432646158", "2917795207"], - ["93299924592273", "9531250000"], - ["93292924592273", "1355743473"], - ["730966592854235", "950984267"], - ["737880354622489", "47414939"], - ["746123766988586", "30279606975"], - ["803171251846138", "131493030"], - ["803171620143134", "232200706"], - ["803171852343840", "7243213645"], - ["803171383339168", "236803966"], - ["832104380901464", "8095756597"] - ] - ], - [ - "0xDC50cB21557c8A1F1161683FC2ec4Cf5829ef50C", - [ - ["301905688450755", "131801542813"], - ["456639477465638", "13452513599"], - ["456652929979237", "6725311906"] - ] - ], - ["0xDD0C3175A65f7a26078FFF161B8Be32068ff8723", [["980012575261775", "102716499306"]]], - [ - "0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8", - [ - ["205196258596006", "62240626757"], - ["203356949474752", "53830630007"] - ] - ], - ["0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78", [["235571347898002", "15119280000"]]], - ["0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f", [["829547866455087", "52886516686"]]], - [ - "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", - [ - ["64921272802639", "9383000000"], - ["64931655802639", "1028006841446"], - ["99209665085461", "584656734654"], - ["99188665085461", "1000000000"], - ["99199665085461", "10000000000"], - ["152359464766828", "1157829451458"], - ["202419640845377", "170292704134"], - ["218631271970680", "19361828964"], - ["219272468846912", "240053266239"], - ["211732807557359", "19362238929"], - ["247623547197261", "86016299030"], - ["257603669095022", "243144086944"], - ["261781441445597", "192238041154"], - ["361565734447146", "66642995895"], - ["361379593720143", "90840629787"], - ["361470434349930", "95300097216"], - ["387301097707780", "20044080960"], - ["584721796813768", "406079005484"], - ["721197474963169", "26160137009"], - ["720868634724486", "12767022192"], - ["721092559530094", "62724910500"], - ["724851392483617", "15687227027"], - ["729593518041846", "39772727272"], - ["733382812956324", "97191046863"], - ["737315249724465", "169034757286"], - ["743012798350852", "102345416157"], - ["790435097419314", "405623000000"], - ["829339973518057", "84762579204"], - ["870858039851314", "12575747550"], - ["870788619856181", "69419995133"], - ["870653667253486", "65952600000"], - ["876445042303705", "3341648896777"], - ["879786691200482", "69419997856"], - ["910710112413098", "148989830915"], - ["902988090425018", "771362533397"], - ["921555169488753", "238537054269"], - ["929763019973649", "83348258680"], - ["929144268207731", "78882631651"], - ["930141513672610", "87269350362"], - ["943129112930082", "380005737357"], - ["944899299588614", "187695892447"], - ["946048161689217", "542162881249"], - ["949432131682143", "593597462776"], - ["973337260760015", "5991548366"], - ["973343252308381", "16933170970"], - ["976389175608743", "18754209891"], - ["976508994859055", "14800696613"] - ] - ], - [ - "0xdEBA22ef671936a5CB3964C8469fDC32cF745C0a", - [ - ["61658545548818", "1"], - ["61638545548818", "1"], - ["120541856224250", "34157939646"], - ["202380208106539", "39432738838"], - ["253292587795664", "172848686028"], - ["302450788949633", "49572290004"], - ["457671068166306", "334401064755"] - ] - ], - [ - "0xDFc6b16343F92c1347B6E9700aA6c5d9E34794A1", - [ - ["65959662644085", "2240249910"], - ["102468002753999", "1257372701"], - ["594868490530527", "3943680000"], - ["720860015864786", "8618859700"] - ] - ], - [ - "0xe0842049837F79732d688d0d080aCee30b93578B", - [ - ["344445589997019", "956039712019"], - ["343752351328208", "196317112545"] - ] - ], - [ - "0xE09c29F85079035709b0CF2839750bcF5DcdE163", - [ - ["89247500714730", "1111245900"], - ["94285320504677", "8075958282"], - ["94356860260424", "25000000000"], - ["148225450538261", "18335245199"], - ["864210604618078", "618050000000"], - ["899936270548064", "1744820000000"], - ["949153290507578", "257944663329"], - ["961873732295781", "1219311720000"] - ] - ], - [ - "0xe105EDc9d5E7B473251f91c3205bc62a6A30c446", - [ - ["737670614886875", "4631200000"], - ["737670607309781", "7577094"] - ] - ], - [ - "0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25", - [ - ["637335158006009", "66947321618"], - ["656952278005073", "108994425040"], - ["661206149419281", "329414899131"], - ["663272316569983", "8684892499"], - ["685302274853017", "69726385000"], - ["790840720419314", "53822522578"], - ["827579232603197", "200463133890"], - ["828954495524769", "16819887033"], - ["829136481171167", "47461345022"], - ["844477011416839", "7806418680"], - ["847521720333130", "52304367680"], - ["928382086617342", "166114705421"], - ["929983457798252", "133850337277"], - ["930228783025877", "76014058075"], - ["944267611786035", "176200000000"], - ["943637391804276", "167461718509"], - ["945258164673253", "67895438272"], - ["961337708227772", "143968018244"], - ["973360185479351", "92897267558"] - ] - ], - ["0xe1762431241FE126a800c308D60178AdFF2D966a", [["463738063696356", "3753371898"]]], - [ - "0xE1e98eAe1e00E692D77060237002a519E7e60b60", - [ - ["621150842686928", "145614575729"], - ["696691857800825", "125342100000"], - ["696841304150825", "125332100000"], - ["708651310288684", "62772574"], - ["854821234925501", "368865000000"], - ["866932564695408", "756420000000"], - ["869339137041688", "59799118052"] - ] - ], - [ - "0xE203096D7583E30888902b2608652c720D6C38da", - [ - ["360155861401497", "2821489902"], - ["383555642858478", "10296333472"], - ["695580562805062", "2156941193"] - ] - ], - [ - "0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41", - [ - ["685441274620458", "900232559"], - ["665942367310360", "165503800000"], - ["693843930503827", "2101528"], - ["692183827554964", "72951633394"] - ] - ], - [ - "0xE2bDaE527f99a68724B9D5C271438437FC2A4695", - [ - ["112307339619054", "2794515"], - ["698376762888817", "8808401866"], - ["710702630301259", "214014871"], - ["802852389202760", "838146017"] - ] - ], - [ - "0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C", - [ - ["113356338061335", "11845000000"], - ["203119196546456", "100000000109"], - ["258861106455116", "25970203853"], - ["653075636735477", "19309281895"], - ["702646804387428", "4833056816"], - ["708103280924912", "9424449262"], - ["921034239579199", "320918539"], - ["922232922946162", "466526164"], - ["929131326498583", "1792614924"] - ] - ], - [ - "0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3", - [ - ["89929989701768", "9105230900"], - ["296937641383543", "4499213873"], - ["729470812115440", "4162855351"], - ["729458509034872", "12303080568"], - ["740797799470884", "20388737000"], - ["801758430569485", "14539634819"] - ] - ], - [ - "0xE2EdD6Ba259A7a7543e76df6F3Eab80154Ff7982", - [ - ["225329660672913", "13525306090"], - ["247840511633477", "12816117502"], - ["260818302741512", "10847842210"], - ["284815597094697", "15136415374"] - ] - ], - ["0xE381CEb106717c176013AdFCE95F9957B5ea3dA9", [["787506321281609", "5224487265"]]], - ["0xE382de4893143c06007bA7929D9532bFF2140A3F", [["437467889952063", "87039194038"]]], - [ - "0xE3A2Ad75e3e9B893c8188030BA7f550FDfEeadac", - [ - ["612614464925164", "1500000000"], - ["705585044182153", "7631768458"] - ] - ], - [ - "0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6", - [ - ["61126608133951", "419824512207"], - ["467370365692260", "1799280000000"], - ["476858758595291", "1706000000000"], - ["953616207177781", "6772569963712"], - ["950409387113190", "3206820064591"] - ] - ], - [ - "0xE432225AB3A24D0328c1eb8934f12C2C664dBF1E", - [ - ["120427993072947", "4831151303"], - ["328720976209671", "16873650000"], - ["439359021881225", "128819998128"], - ["439352533238997", "4102512201"] - ] - ], - [ - "0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74", - [ - ["148225003450330", "447087931"], - ["147968440390054", "6167531020"], - ["148134674921786", "13825576144"], - ["139704561827724", "6157730462"], - ["168579359593603", "5868852168"], - ["149987959174186", "2191023676"], - ["170730350292246", "9469466929"], - ["157886684433748", "5000092372"], - ["149994207345112", "4454797628"], - ["254477220011347", "17271454497"], - ["379499473122812", "2765214517"], - ["376733518186319", "27270213991"], - ["709270922414252", "1598517724"], - ["710431818243243", "10533398444"], - ["731211078378957", "68703216153"] - ] - ], - [ - "0xE543357D4F0EB174CfC6BeD6Ef5E7Ab5762f1B2B", - [ - ["179457356901067", "701100000000"], - ["517220616160053", "2401063150000"] - ] - ], - [ - "0xE58E375Cc657e434e6981218A356fAC756b98097", - [ - ["634945228489192", "2262215151"], - ["708681724483889", "831025407"] - ] - ], - [ - "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14", - [ - ["211312573246375", "17199177351"], - ["309643037297135", "97187219028"], - ["643637128258794", "24771576854"], - ["685787574251748", "6644957515"], - ["695258134784897", "2422720577"], - ["695498537771333", "3238845835"], - ["699429579114601", "2080727252"], - ["704930176591927", "3566904312"], - ["705542895589941", "1335994704"], - ["705327744949836", "1969433094"], - ["711526445368124", "1821867823"], - ["730960837171835", "5755682400"], - ["733864061509215", "12000000000"], - ["909249385377295", "20430199792"], - ["906997068946789", "7926000000"], - ["950255493807696", "3442047582"], - ["978233922497326", "130394976890"] - ] - ], - [ - "0xe693eB739c0bE8c2bDD978C550B5D8b8022A8adA", - [ - ["207160942585288", "685155440000"], - ["239866896652370", "773610632731"], - ["394952475299977", "1546846439684"], - ["668791978128591", "1629021034598"], - ["825229251840661", "11607641329"], - ["829438403024944", "386609244"], - ["829456475181243", "20807711132"], - ["921964837662154", "249909693172"] - ] - ], - [ - "0xE6C459B2d9e8EafD205b74201Ce1988B28Bd2a1F", - [ - ["636463415640693", "2624718668"], - ["638778618685577", "29897283106"] - ] - ], - [ - "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0", - [ - ["723782462207148", "348266002657"], - ["723232893062509", "130876975914"], - ["723363770038423", "57106724864"], - ["730236470849833", "226407807552"], - ["730033021201019", "17808983511"], - ["746179279788590", "50304977904"], - ["746229584766494", "181720064271"] - ] - ], - [ - "0xE7a9c882C15288E8FaDd3f84127bF89b04dF81b3", - [ - ["707772317525838", "5875643544"], - ["708070547346837", "4278269347"], - ["709056166193889", "8740549248"], - ["708915196741089", "9738151418"], - ["711415960682710", "1483237886"] - ] - ], - [ - "0xe846880530689a4f03dBd4B34F0CDbb405609de1", - [ - ["151546140781586", "45240683449"], - ["211447847651653", "23744037762"], - ["278191398417068", "27755712447"], - ["278319171429515", "73956211611"], - ["401397896408363", "7781881977"] - ] - ], - [ - "0xe86a6C1D778F22D50056a0fED8486127387741e2", - [ - ["625601011647771", "158156250000"], - ["630947814288717", "136996467561"], - ["624550675044871", "158156000000"], - ["630289510810878", "158156250000"], - ["627003097738540", "158156250000"], - ["633386678687816", "158156250000"] - ] - ], - ["0xe886eCE8dEA22C64592E16CE9c6060C354e0cB46", [["202261936601483", "101170792061"]]], - [ - "0xe8e8D10D48Bb4761E30A1A0C3f5705788E2Cf5Ca", - [ - ["278139494436918", "2570026"], - ["392873013056712", "12424321654"], - ["451927223440496", "25378731375"] - ] - ], - ["0xe9886487879Cf286a7a212C8CFe5A9a948ea1649", [["591543946444869", "6520295096"]]], - [ - "0xe9c6f6D44C546CdD54231e673Ba8b612972cdD07", - [ - ["247323106895278", "4883985870"], - ["247321163790225", "1943105053"] - ] - ], - [ - "0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C", - [ - ["422369792593674", "319875970811"], - ["705080717481611", "1710712273"] - ] - ], - [ - "0xe9F55fF0Ce2c086a02154E18d10696026aFC0E63", - [ - ["220864800670248", "99607197408"], - ["262808988167960", "88271731084"], - ["297184241475114", "189501596574"] - ] - ], - ["0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29", [["700841083224368", "2021177132"]]], - [ - "0xEaFc0e4AcF147e53398A4c9AE5F15950332Cce06", - [ - ["89621453141913", "32425342912"], - ["89569005481462", "16735634264"], - ["89492488720927", "1435882612"], - ["89557375261827", "8365853899"], - ["89762914919728", "50000000000"], - ["89868506364768", "61483337000"], - ["89812914919728", "20605999230"], - ["92753185885343", "2"], - ["89587741115726", "17401090578"], - ["94316284595936", "17408776700"], - ["93523899641683", "2864884005"], - ["93479828112110", "82051"], - ["93479828194161", "10000000000"], - ["94420088369042", "9247234522"], - ["93024220723497", "1"], - ["94304673484823", "2"], - ["99916638465308", "1"], - ["117233333040288", "1"], - ["121717830315112", "25000000000"], - ["133665283117840", "1"], - ["170709325803325", "2"], - ["211307962661460", "287750862"], - ["215059243720230", "3"], - ["225490910091497", "12645000000"], - ["228803240767411", "5035606362"], - ["230612533600768", "44175871750"], - ["222217249910350", "3772518553"], - ["250080784192909", "181144380406"], - ["248324937141955", "29564553728"], - ["288613470256820", "20262705038"], - ["300105735929341", "177198890000"], - ["295136017588075", "93635599728"], - ["310864055386319", "20000000000"], - ["311150001772809", "39829442210"], - ["310888767190944", "15288195375"], - ["470802960131879", "65965899719"], - ["609009158318525", "150000000000"], - ["695434809969485", "31"], - ["731385825180346", "29299"], - ["821101232524358", "53934403"], - ["821483107487181", "2893321"], - ["822987026055571", "1258382"] - ] - ], - [ - "0xEC4009A246789e37EA5278F5Cc8bF7Bc7f11A7D7", - [ - ["93012255546830", "305470240"], - ["334799194897789", "1160805666"], - ["708018038561787", "85072529"] - ] - ], - [ - "0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196", - [ - ["643691759702604", "1759031988"], - ["700304517120513", "5382798092"], - ["705167863668916", "1008381544"], - ["705168872050460", "1672635048"], - ["718082806907414", "3972363681"], - ["731279781595110", "5730104692"] - ] - ], - [ - "0xEd8440f3476073DF5077b5F97d34556fBd6c1AEA", - [ - ["463741817068254", "286363600173"], - ["463456140675342", "19514060494"] - ] - ], - [ - "0xedC24C8a0B98715C4c42f23fA1a966D68d71DA40", - [ - ["211302435943892", "5526717568"], - ["319044577338666", "19129436224"], - ["584404708321791", "2808475879"], - ["584401899740089", "2808581702"] - ] - ], - [ - "0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef", - [ - ["290651334177058", "16548755032"], - ["294349852765854", "14963282078"] - ] - ], - ["0xeE55F7F410487965aCDC4543DDcE241E299032A4", [["267042704125029", "87310833027"]]], - [ - "0xeE7840DAC7C3ec2cCDe49517fd3952e349997aB5", - [ - ["302438433985351", "12354964282"], - ["320180033385918", "52693409106"] - ] - ], - [ - "0xeEA71D769BE2028A276BBb5210eD87d2962E1bAD", - [ - ["383537829470381", "17813388097"], - ["472806870191278", "29448692596"] - ] - ], - ["0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee", [["829907742748562", "1740538415"]]], - ["0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C", [["335417125801352", "100049507316"]]], - [ - "0xF024e42Bc0d60a79c152425123949EC11d932275", - [ - ["709185678005611", "14"], - ["715901934912693", "17"], - ["712108322279785", "397390840"] - ] - ], - [ - "0xF05980BF83005362fdcBCB8F7A453fE40B669D96", - [ - ["152264738749761", "94726017067"], - ["199257636281033", "58350000000"], - ["201676000879056", "118322995425"] - ] - ], - [ - "0xf05b641229bB2aA63b205Ad8B423a390F7Ef05A7", - [ - ["131646520399654", "20160645556"], - ["147410655141076", "38582448637"], - ["145689762599260", "36912535650"], - ["150010712692192", "48660903855"], - ["149087440467044", "60707686052"], - ["151591381465035", "478277732458"], - ["261119533757206", "621486067097"], - ["269761251155626", "135599308194"], - ["269443642924650", "90918565015"], - ["270205934724435", "137288949299"], - ["269896850463820", "135289718180"], - ["271472590722853", "144178362548"], - ["271279840115859", "192750606994"], - ["260939774787671", "179758969535"], - ["269118192305090", "182950766299"], - ["278510774796017", "88294274288"], - ["275689125687825", "183278217511"], - ["272505844992756", "97679651753"], - ["275872403905336", "182746566692"], - ["283422171080743", "438574982507"], - ["284830733510071", "265026019680"], - ["284308889225125", "429215643262"], - ["282980597057005", "441574023738"], - ["296482233735458", "197419483419"], - ["307236748489533", "293260256509"], - ["306512769282215", "294379207318"], - ["309167280692495", "100626973782"], - ["301447470871549", "188376222726"], - ["476427198324120", "16136910000"], - ["636466040359361", "75566677988"], - ["828834434348843", "29504348658"], - ["840679860018230", "97912655960"], - ["866807124533174", "125440162234"], - ["929653024145870", "109995827779"], - ["930551858178263", "102347299471"], - ["930472863218867", "78994959396"], - ["943804853522785", "207459722347"], - ["944839928760398", "41691686706"], - ["960673641033362", "453667194410"], - ["960388777141493", "284863891869"], - ["961668846102910", "204886192871"], - ["973564600705385", "119670000000"], - ["978951913305840", "479480000000"] - ] - ], - [ - "0xF14Ee792bb979Aa08b5c65B1069A4209159d13fE", - [ - ["146151784587484", "3324591444"], - ["235555565795257", "15782102745"] - ] - ], - [ - "0xF18507A3D7907F2FDa0F80ea74b92707F67E0bd9", - [ - ["445596103536239", "32350000000"], - ["440689480358454", "1003780000000"] - ] - ], - [ - "0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657", - [ - ["385838586001830", "11489049573"], - ["385903097748650", "11452884036"], - ["505624972653336", "460124357137"], - ["612170062544417", "106391740000"], - ["621296457262657", "333900000000"], - ["656234734266897", "11975411500"], - ["666199838562860", "76938750000"], - ["665865428560360", "76938750000"], - ["666619069262860", "76938750000"] - ] - ], - ["0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22", [["516816371472285", "323395750214"]]], - ["0xF1cCFA46B1356589EC6361468f3520Aff95B21c3", [["697420059520285", "3701958291"]]], - [ - "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d", - [ - ["737664855304048", "2683720"], - ["741689220722814", "10364574980"] - ] - ], - [ - "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5", - [ - ["61628545548819", "316832137"], - ["738895717921316", "76304250"], - ["802110144517836", "11440000000"], - ["805917815776678", "2243600000"], - ["945408796120472", "34793830873"] - ] - ], - ["0xf28E9401310E13Cfd3ae0A9AF083af9101069453", [["168585228445771", "3"]]], - [ - "0xf295eCbE3cf6aB9fD521DFDF2B3ad296389d659F", - [ - ["139711776684751", "865788998"], - ["708384539121096", "3684119765"] - ] - ], - [ - "0xf2d67343cB0599317127591bcef979feaF32fF76", - [ - ["697933611972377", "1472419706"], - ["697933416557787", "195414590"] - ] - ], - [ - "0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e", - [ - ["218989855358801", "280589994745"], - ["584556940408913", "40407344400"] - ] - ], - [ - "0xF38762504B458dC12E404Ac42B5ab618A7c4c78A", - [ - ["386656249172680", "17268212989"], - ["400630877527787", "21128294603"], - ["401451940456732", "81063306091"] - ] - ], - [ - "0xf3999F964Ff170E2268Ba4c900e47d72313079c5", - [ - ["89615532977453", "2500002500"], - ["273268793056222", "5555555555"], - ["279410719738039", "15033393245"], - ["517139767222499", "80848937554"], - ["829694071521449", "33325500000"] - ] - ], - [ - "0xf3E52C9756a7Cc53F15895B11cc248B1694C3D81", - [ - ["218409662047787", "864328351"], - ["221514638895912", "194724915171"], - ["221888797808650", "199072929191"], - ["320446326795024", "286813809151"], - ["464603152794599", "135161490392"] - ] - ], - ["0xF4003979abEbEf7dEdCE0FcB0A8064617ba1cb6c", [["74020410789705", "16629145105"]]], - [ - "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F", - [ - ["250080014962140", "769230769"], - ["276364944621992", "5403998880"], - ["293753514977634", "146807870"], - ["310822231047029", "8691017770"], - ["787223231805791", "3409439001"] - ] - ], - [ - "0xf476f6c0c97d088C3A1Ec2a076218C22EDFE018D", - [ - ["383890351941264", "10839389709"], - ["383922594208774", "149609926949"] - ] - ], - [ - "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C", - [ - ["709010774745723", "16707350000"], - ["709064906743137", "17834375000"] - ] - ], - ["0xF4CEC45FcdeDFafAa6bcB66736bBd332Ce43bA23", [["502195414411318", "1365350"]]], - ["0xF50ABEF10CFcF99CdF69D52758799932933c3a80", [["213971945873184", "101563373991"]]], - [ - "0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3", - [ - ["709335462929874", "5255036695"], - ["725650404461457", "98010410066"] - ] - ], - [ - "0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2", - [ - ["66141501266485", "2270047397215"], - ["482663958595291", "4271250000000"] - ] - ], - ["0xf62dC438Cd36b0E51DE92808382d040883f5A2d3", [["211308250412322", "4322834053"]]], - [ - "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8", - [ - ["257846813181966", "394944861804"], - ["270343223673734", "364566745819"] - ] - ], - ["0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765", [["280606415159353", "88532212363"]]], - ["0xF7d48932f456e98d2FF824E38830E8F59De13f4A", [["93479805568870", "22543240"]]], - [ - "0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC", - [ - ["61619263709171", "191849316"], - ["92771013385345", "20450600000"], - ["92898322013595", "3312089446"], - ["92754013385345", "17000000000"], - ["92707474342273", "9142307692"], - ["94401235260424", "9375000000"], - ["94410610260424", "5333791660"], - ["99843555886739", "3867013493"], - ["122083685376165", "27444310590"], - ["122111129686755", "18658272727"], - ["117238888595844", "5985714285"], - ["121483199149673", "96687910554"], - ["128221268017590", "4942857142"], - ["128798021677597", "13946070284"], - ["128729271677597", "31250000000"], - ["147449237589713", "35577140258"], - ["148078553754858", "28347319166"], - ["147372451805267", "36209937463"], - ["148915974272183", "60485714285"], - ["149990150197862", "4057147250"], - ["167977258452029", "24766754630"], - ["209232169528154", "22243015724"], - ["196925395659177", "50000000000"], - ["228808860500719", "3226622831"], - ["251520088615611", "86804480075"], - ["251262086160636", "258002454975"], - ["252986784982994", "43802016663"], - ["265200621045782", "37360929463"], - ["262916671877900", "50046286217"], - ["280795664951841", "477438793550"], - ["291092919964740", "200000000000"], - ["339790493449995", "149346870320"], - ["355585907827934", "47251310108"], - ["340247326378415", "92984020589"], - ["355633159138042", "47223612281"], - ["376466837312302", "130000000000"], - ["800086797966843", "72666479808"], - ["824742416594055", "94393259501"], - ["824882897783818", "38503952220"] - ] - ], - [ - "0xf80cDe9FBB874500E8932de19B374Ab473E7d207", - [ - ["270798583944796", "97955793845"], - ["294038368353472", "311484412382"], - ["298003247413267", "37203015522"], - ["445691522219256", "1281429108"], - ["446769589136650", "1926839685"], - ["513217485808128", "6452862364"] - ] - ], - [ - "0xf973554fbA6059F4aF0e362fcf48AB8497eC1d8f", - [ - ["404067859818534", "4493174482"], - ["642222658063359", "51435891210"] - ] - ], - ["0xFa0A637616BC13a47210B17DB8DD143aA9389334", [["380456360701830", "60048376954"]]], - ["0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4", [["742850188138272", "114463620514"]]], - [ - "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d", - [ - ["79181530400610", "133333333"], - ["802846035631018", "508197502"], - ["802848330287155", "971418862"], - ["829773289436512", "5228000000"], - ["921414805868149", "38098790184"] - ] - ], - [ - "0xfaAe91b5d3C0378eE245E120952b21736F382c59", - [ - ["698115772691216", "222695155"], - ["708728689996583", "204395631"], - ["709099615678716", "7931925665"], - ["709156824752817", "6669928049"], - ["709536560884596", "8650962388"] - ] - ], - ["0xFaE9C276d513E6dC5060BB9bE5111c3124C4376c", [["376885779708970", "447000000000"]]], - [ - "0xFb00Fab6af5a0aCD8718557D34B52828Ae128D34", - [ - ["278747935962730", "275068216954"], - ["274254784429661", "7250636499"], - ["317850358107286", "266618306956"], - ["330088432377041", "1466041464745"] - ] - ], - [ - "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef", - [ - ["137331158456585", "8000000000"], - ["705544231584645", "6773000000"], - ["719100357414327", "15036330875"], - ["801777831126999", "39104687507"] - ] - ], - [ - "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", - [ - ["102401954174380", "1293137085"], - ["102414470871883", "5129256854"], - ["133664784066410", "499051430"], - ["148177920088261", "2000000000"], - ["214899672252004", "1862917241"], - ["437600907391454", "5663243298"] - ] - ], - ["0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55", [["707767802108906", "4515416932"]]], - [ - "0xfc22875F01ffeD27d6477983626E369844ff954C", - [ - ["707849276017590", "9148374808"], - ["709788524143561", "10237860605"], - ["709753706632464", "4744706233"], - ["722685699957057", "65999469411"] - ] - ], - [ - "0xFc748762F301229bCeA219B584Fdf8423D8060A1", - [ - ["147649097724683", "37794333837"], - ["230502866071185", "24754681144"], - ["221045668290806", "136363636363"], - ["383901191330973", "21402877801"], - ["402709718389025", "55060000000"], - ["399960218444224", "78790376700"], - ["737663715081254", "1140222794"], - ["737667139523194", "3467786587"] - ] - ], - [ - "0xfCA811318D6A0a118a7C79047D302E5B892bC723", - [ - ["408419876541280", "129954995754"], - ["426513047782908", "38482129867"], - ["594186621057387", "4109469597"], - ["559329306899163", "35915488411"], - ["596233940436378", "3374944845"], - ["698093282251665", "3681809550"], - ["697423761478576", "1922612548"], - ["697425684091124", "6349832412"], - ["697183042964582", "5609262356"], - ["697418490716526", "1568803759"], - ["697047696177892", "5575795077"], - ["698096964061215", "4196702182"], - ["698101160763397", "8949086569"], - ["697925931372472", "2703848605"], - ["700761259139802", "14697397837"], - ["700080421279582", "507888377"] - ] - ], - [ - "0xfcBa05D5556b6A450209A4c9E2fe9a259C84d50F", - [ - ["93333100742273", "142680000000"], - ["203420780104759", "862960981345"], - ["531411470867756", "9000000000"] - ] - ], - [ - "0xfD67bbb8b3980801e28b8D9c49fd9d1eA487087B", - [ - ["371946252710197", "616256912"], - ["371909386482287", "5151851478"] - ] - ], - [ - "0xFE09f953E10f3e6A9d22710cb6f743e4142321bd", - [ - ["137648364284877", "1472246877185"], - ["493976772720798", "4222900000000"], - ["656358729562897", "19616450000"] - ] - ], - [ - "0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7", - [ - ["135384416104099", "747968437372"], - ["267571414958056", "792399558214"], - ["407989465060901", "119936449695"], - ["463375342029222", "39496248802"], - ["464328163498090", "13423206781"], - ["825567856071858", "9576969494"] - ] - ], - ["0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f", [["921377157399744", "1908656103"]]], - [ - "0xfEc2248956179BF6965865440328D73bAC4eB6D2", - [ - ["73919840434906", "100570354799"], - ["88833052210995", "106291676890"], - ["134944397708617", "100398170413"], - ["353267959677302", "121744107111"], - ["582083204184359", "86620734894"], - ["696817199900825", "24104250000"], - ["696666031818682", "25825982143"], - ["843751794468356", "57770720876"], - ["844505675816708", "50190000000"], - ["850609510908268", "75944000000"], - ["869830739903103", "106624000000"] - ] - ], - [ - "0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943", - [ - ["446757619493079", "1695400673"], - ["446738966558233", "1659614846"] - ] - ], - [ - "0xFf4A6b6F1016695551355737d4F1236141ec018D", - [ - ["275666178457181", "22947230644"], - ["276055150472028", "22806010929"] - ] - ], - ["0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7", [["386897475567381", "46665442490"]]], - [ - "0xC997B8078A2c4AA2aC8e17589583173518F3bc94", - [ - ["921521054540522", "160"], - ["921521067107110", "160"], - ["921521057452817", "160"], - ["921521067107430", "160"], - ["921521055911956", "160"], - ["921521065767862", "160"], - ["921521056659950", "160"], - ["921521057453137", "160"], - ["921521053912448", "160"], - ["921521055206279", "160"], - ["921521057452977", "160"], - ["921521058293432", "160"], - ["921521067106950", "160"] - ] - ], - [ - "0xfF961eD9c48FBEbDEf48542432D21efA546ddb89", - [ - ["278495413994289", "15360801728"], - ["698298390580000", "33939057545"], - ["800030544923179", "56253043664"], - ["843809565189232", "15054264772"], - ["862922651882432", "594211870964"], - ["922824131039105", "871141743752"], - ["928724942845271", "317487796774"], - ["948946767655894", "60074607071"], - ["972673204896245", "137555494670"], - ["979747827188563", "264745198412"] - ] - ], - ["0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E", [["145586439347522", "209844262"]]], - ["0x5a34897A6c1607811Ae763350839720c02107682", [["829849331491739", "56918125000"]]], - [ - "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", - [ - ["725798462383772", "31586150"], - ["731041912594216", "173562047"], - ["738895660951316", "56970000"], - ["738895645474676", "15476640"] - ] - ], - [ - "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b", - [ - ["446848533640999", "3179294885"], - ["446823738027105", "3478109734"], - ["456637461841745", "2015623893"], - ["666276777312860", "210641200000"], - ["693767795503827", "76135000000"], - ["725784022220843", "14440162929"], - ["737958552803938", "10000000000"], - ["736285587653365", "83910292215"] - ] - ], - [ - "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f", - [ - ["830263701820170", "1295600000"], - ["832093433457838", "10866330177"], - ["843732436968356", "19357500000"], - ["844485217740720", "20255000000"] - ] - ], - ["0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E", [["89189871782553", "233215974"]]], - [ - "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", - [ - ["740627952214807", "1010851037"], - ["741114340898555", "5054528890"], - ["973020995561025", "14908452858"] - ] - ], - ["0x2E34723A04B9bb5938373DCFdD61410F43189246", [["128510457444781", "1447784544"]]], - [ - "0xc9931D499EcAA1AE3E1F46fc385E03f7a47C2E54", - [ - ["929223150841785", "2826954882"], - ["929242018796667", "22008658478"], - ["929225977796667", "16041000000"] - ] - ], - ["0xBd120e919eb05343DbA68863f2f8468bd7010163", [["829006199994809", "3696126503"]]], - ["0x9eD25251826C88122E16428CbB70e65a33E85B19", [["851163404918538", "19551629204"]]], - [ - "0xc80102BA8bFB97F2cD1b2B0dA158Dfe6200B33B3", - [ - ["260684773844629", "9037889126"], - ["296986706249004", "935134539"], - ["325360140162588", "38918733214"], - ["411688335001233", "1570000000"], - ["422365791300603", "798000000"] - ] - ], - ["0xcBF3d4AB955d0bE844DbAed50d3A6e94Ada97E8b", [["89190104998527", "2365071"]]], - [ - "0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0", - [ - ["228812087123550", "4954971100"], - ["250515993903243", "10157189840"], - ["262376049001474", "13448181940"], - ["297495649811425", "7878595540"], - ["387265643983999", "35453723781"], - ["469548729191240", "2084424649"], - ["470677624988816", "4109706945"], - ["470681734695761", "5099746997"], - ["476857007472007", "1751123284"], - ["510093738357844", "1810182949"], - ["691647958342200", "6104582040"], - ["694421867540204", "657829862"], - ["707740682508050", "2181092161"], - ["707792108369382", "14444964843"], - ["722432205171487", "34934377228"], - ["720670274568288", "2126762825"], - ["733524513579895", "2656036443"], - ["735386014435662", "20750304614"], - ["735406764740276", "13068447328"] - ] - ], - [ - "0x38f733Fb3180276bE19135B3878580126F32c5Ab", - [ - ["94419985260424", "103108618"], - ["828251362986796", "2293110488"], - ["828771230228142", "562218595"] - ] - ], - [ - "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf", - [ - ["848000403545262", "450790656"], - ["848000854335918", "932517247"] - ] - ], - ["0x82a8409a264ea933405f5Fe0c4011c3327626D9B", [["931232211328334", "48730138326"]]], - [ - "0xf6F46f437691b6C42cd92c91b1b7c251D6793222", - [ - ["741776141210263", "28424235201"], - ["920756460282115", "21971659696"] - ] - ], - [ - "0xB615e3E80f20beA214076c463D61B336f6676566", - [ - ["218760793154163", "6658333333"], - ["513181895808128", "7692307692"], - ["707530520602109", "35903115000"] - ] - ], - ["0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458", [["446838825122091", "1157905014"]]], - ["0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91", [["647238507263452", "5946000000"]]], - [ - "0x55179ffEFc2d49daB14BA15D25fb023408450409", - [ - ["90007738582860", "26089431820"], - ["285661889336665", "6674611456"], - ["285652969925862", "8919410803"], - ["285585338065737", "10654918204"], - ["293521542986844", "6488496940"], - ["293738371159084", "12502396040"], - ["311216880418289", "5374122600"], - ["310884055386319", "4711804625"], - ["572129929809800", "58714000000"], - ["825221386036599", "1122048723"], - ["827301562675683", "8473331791"] - ] - ], - [ - "0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4", - [ - ["801616107211474", "3001695871"], - ["801619108907345", "19348691464"] - ] - ], - [ - "0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c", - [ - ["636847008762039", "32762422300"], - ["666696008012860", "210641200000"], - ["897240723495689", "153625996701"], - ["920406236907736", "150200542274"], - ["906149640768261", "149234921085"] - ] - ], - [ - "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc", - [ - ["623914133044871", "31631000000"], - ["625867979397771", "31631250000"], - ["627250871646040", "31631250000"], - ["633246235937816", "31631250000"], - ["630168261903378", "31631250000"], - ["631193622256278", "31631250000"] - ] - ], - ["0x224e69025A2f705C8f31EFB6694398f8Fd09ac5C", [["828707206927635", "595189970"]]], - [ - "0xE42Ab6d6dC5cc1569802c26a25aF993eeF76cAA2", - [ - ["897495730767354", "30751377215"], - ["887397958651799", "66189217241"] - ] - ], - [ - "0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab", - [ - ["66081788234166", "2895624803"], - ["828678664933246", "28541134998"], - ["928030515655350", "77975000000"] - ] - ], - ["0x6D4ed8a1599DEe2655D51B245f786293E03d58f7", [["829909483286977", "4739952359"]]], - [ - "0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c", - [ - ["92718049689405", "1087363286"], - ["92753185885345", "827500000"], - ["89518725321659", "7006704371"], - ["93292097092273", "827500000"], - ["93309455842273", "468750000"], - ["93139374842273", "2827500000"] - ] - ], - [ - "0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25", - [ - ["65961902893995", "6062526839"], - ["79182786251454", "7536464852"], - ["88804198806155", "424852362"], - ["92749915150291", "3270735052"], - ["89667529136972", "14696511290"], - ["89618037954768", "3415187145"], - ["89664849254055", "2679882917"], - ["92791464007095", "8027251632"], - ["89738429009108", "24485910620"], - ["89607142206304", "4310935609"], - ["90007717538406", "21044454"], - ["99851702914852", "815745978"], - ["93172058592273", "17014323042"], - ["93061720723498", "2778618775"], - ["93513899641683", "5000000000"], - ["94344360260424", "10942222277"], - ["93526764525688", "4013388795"], - ["99853956449927", "11695454"], - ["93518899641683", "5000000000"], - ["93489828194161", "13121727522"], - ["102474523284594", "7918078619"], - ["112307342413569", "17393391747"], - ["117244874310129", "796338"], - ["102464387242791", "3615511208"], - ["102452933462070", "7666428889"], - ["131666681045210", "56196283"], - ["133684807083166", "58385936"], - ["128507585109607", "94557397"], - ["128760521677597", "30000000000"], - ["128226210874732", "5610342"], - ["148895359495855", "20614776328"], - ["145689641471760", "121127500"], - ["145726675134910", "109464350"], - ["150109707437893", "135261670"], - ["280560810691370", "45604467983"], - ["302500361239637", "27938162860"], - ["707863376349667", "4886194063"], - ["718096885617267", "5530910102"], - ["736285402938829", "184714536"], - ["743141962222302", "10000000000"], - ["824882897708819", "74999"], - ["897526482144569", "908406524078"], - ["906685007105154", "298566425632"], - ["920556437450010", "199999999855"], - ["891260306698319", "999999999934"], - ["947737266638625", "83959273729"], - ["947416151681051", "169349127003"], - ["961127308227772", "210400000000"], - ["976407929873421", "17257622755"], - ["976435448714174", "36769914561"] - ] - ], - ["0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df", [["787241243844279", "9764435234"]]], - ["0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6", [["396993916163233", "298975120881"]]], - [ - "0x0519425dD15902466e7F7FA332F7b664c5c03503", - [ - ["741804565445464", "131855360654"], - ["741593512489483", "95341770600"], - ["741530440114781", "47459625794"], - ["909387138062923", "31773910198"] - ] - ], - [ - "0x08Bf22fB93892583a815C598502b9B0a88124DAD", - [ - ["167974630577392", "1203298387"], - ["214824984432909", "4646730125"], - ["214861255972590", "2785196655"], - ["277396766693154", "135654646253"], - ["273266542932556", "2250123666"], - ["299905735929341", "200000000000"], - ["405009250178020", "483255914580"], - ["441693260358454", "49538069617"], - ["490827460900938", "134211333334"], - ["490699224234272", "111570000000"], - ["659059601095085", "135804736673"], - ["692180409380464", "905703602"], - ["695893457979616", "3085124160"], - ["800159464446651", "67815395117"], - ["803386254626770", "9914195956"], - ["803378843435783", "7411190987"], - ["805534501973837", "12116315207"] - ] - ], - ["0x82Ff15f5de70250a96FC07a0E831D3e391e47c48", [["829113684669523", "4440000000"]]], - [ - "0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746", - [ - ["256773707204461", "2774320296"], - ["828446266196477", "3894794928"], - ["828707802792097", "4324000000"], - ["828977278210961", "4516000000"], - ["829014107524072", "4525000000"] - ] - ], - [ - "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", - [ - ["741699585297794", "12790345862"], - ["802201950732340", "58475807020"], - ["872290220599070", "10974488319"], - ["872308325991218", "18986801346"], - ["910475277864161", "11433794528"], - ["922625815607546", "7066180139"] - ] - ], - ["0x032865e6e27E90F465968ffc635900a4F7CEEB84", [["787511545768874", "4880443948"]]], - ["0xF493Fd087093522526b1fF0A14Ec79A1f77945cF", [["844505595006708", "80810000"]]], - ["0x09Ea3281Eeb7395DaD7851E7e37ad6aff9d68a4c", [["506085097010473", "17680578730"]]], - [ - "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", - [ - ["92716616649965", "1433039440"], - ["741944065377362", "3527890346"], - ["872301195087389", "7130903829"] - ] - ], - [ - "0xF28df3a3924eEC94853b66dAaAce2c85e1EB24ca", - [ - ["271616769085401", "38071600600"], - ["641335218453068", "40691533200"], - ["688677161946845", "32873326128"], - ["689174241648861", "509503046565"], - ["689874807391924", "108330248405"], - ["686348394807411", "18107943895"], - ["691661469732857", "7322407095"], - ["687404158821438", "560773645183"], - ["686366502751306", "57077966234"], - ["691679103646508", "264187543819"], - ["689683744695426", "191062696498"], - ["686471231511801", "716489188821"], - ["694663168126846", "42152951000"], - ["693535758530681", "138626226222"], - ["693083416760383", "72530000000"], - ["695188857379843", "2422335517"], - ["693249722635591", "37903890700"], - ["695191279715360", "4678526520"], - ["695155947986631", "4442676388"], - ["695253546475556", "4588309341"], - ["691943291190327", "69144868490"], - ["704433408190413", "30147540000"], - ["708018123634316", "15352687500"], - ["724510428051588", "298261184375"] - ] - ], - [ - "0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a", - [ - ["623208367044871", "379575000000"], - ["632540467532047", "379575000000"], - ["628041084589709", "379575000000"], - ["629030105209709", "379575000000"], - ["631551446912047", "379575000000"], - ["626225804053540", "379575000000"] - ] - ], - [ - "0x6820572d10F8eC5B48694294F3FCFa1A640CFf40", - [ - ["291082705689464", "10214275276"], - ["340047326378415", "150000000000"], - ["340207113253615", "40213124800"] - ] - ], - [ - "0x49cE991352A44f7B50AF79b89a50db6289013633", - [ - ["214073509247175", "25333867824"], - ["213316892343591", "20341364703"], - ["240823369076303", "11191996912"], - ["250466009925474", "32429850581"] - ] - ], - ["0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371", [["66081776800891", "11407582"]]], - [ - "0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE", - [ - ["81429748380956", "7813058830"], - ["117217726315318", "1373181360"], - ["136979532734270", "1000000000"], - ["251882385453211", "20871314978"] - ] - ], - ["0x6B7F8019390Aa85b4A8679f963295D568098Cf51", [["66099065602767", "42435663718"]]], - ["0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4", [["68524742212956", "10000000000"]]], - ["0x0d619C8e3194b2aA5eddDdE5768c431bA76E27A4", [["79190322716306", "54469256646"]]], - [ - "0xB6CC924486681a1ca489639200dcEB4c41C283d3", - [ - ["64890353334796", "30919467843"], - ["147686892058520", "47171577753"], - ["168834068658194", "32372691975"], - ["152164040168590", "100278708038"], - ["168866441350169", "20680630588"], - ["250350635854037", "50441908776"], - ["393026470651510", "208972688693"] - ] - ], - [ - "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70", - [ - ["81429748380955", "1"], - ["202233002999979", "2326237721"], - ["202235329237700", "1466439378"], - ["218671968549714", "3855741975"], - ["694491673804561", "8976176800"] - ] - ], - ["0x632f3c0548f656c8470e2882582d02602CfF821C", [["68519420745986", "5321466970"]]], - ["0xE9D18dbFd105155eb367fcFef87eAaAFD15ea4B2", [["68534742212956", "10000000000"]]], - ["0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E", [["74106039934810", "21105757579"]]], - [ - "0x52f3F126342fca99AC76D7c8f364671C9bb3fC67", - [ - ["89656246550500", "8602703555"], - ["89507398941830", "3525661709"], - ["743848476657704", "1233351074"], - ["855190099925501", "105670000000"], - ["863597854618078", "612750000000"], - ["859424786465221", "224080000000"], - ["887758447796303", "1000261800000"], - ["909448360414556", "979453120800"], - ["921035333523306", "149236172"], - ["921034865451866", "308101440"], - ["921034560497738", "304954128"], - ["921035173553306", "159970000"], - ["921035482759478", "309959561"] - ] - ], - [ - "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921", - [ - ["92743843990177", "6046055693"], - ["634649380286759", "83338470769"] - ] - ], - ["0x12B9D75389409d119Dd9a96DF1D41092204e8f32", [["92695810999829", "11663342444"]]], - [ - "0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81", - [ - ["89208643960630", "3000000"], - ["122216130970075", "21956843937"], - ["684090892689899", "14023789313"] - ] - ], - ["0xC1E64944de6BEE91752431fF83507dCBd57E186b", [["89547003810515", "5402290085"]]], - ["0x399baf8F9AD4B3289d905f416bD3e245792C5fA6", [["93009983755725", "2271791105"]]], - [ - "0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545", - [ - ["94280290718369", "1044633475"], - ["704216199980940", "1586716252"] - ] - ], - ["0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0", [["99847422900232", "4030014620"]]], - [ - "0xD99f87535972Ba63B0fcE0bC2B3F7a2aF7193886", - [ - ["93318838342273", "14262400000"], - ["591137392921024", "125000000000"], - ["643048855332541", "3352496869"] - ] - ], - [ - "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6", - [ - ["94281335351848", "950000000"], - ["437580444503704", "20462887750"], - ["463414838278024", "12155421305"], - ["662850624131661", "16779875070"], - ["695537635383030", "5874873919"], - ["697945151970404", "9388515625"], - ["701398278226282", "5646988248"], - ["705660334202228", "3374500000"] - ] - ], - ["0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6", [["94255248987397", "7"]]], - ["0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b", [["94074534759816", "161247227588"]]], - [ - "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", - [ - ["106868611705393", "16499109105"], - ["148243785783460", "188352182040"], - ["311692403880222", "51857289010"], - ["328628658281539", "70064409829"], - ["328527449691073", "101208590466"], - ["634504902771992", "36792124887"], - ["931736156920528", "2137555078286"] - ] - ], - [ - "0x3a1Bc767d7442355E96BA646Ff83706f70518dAA", - [ - ["121663369666252", "37943648860"], - ["121742830315112", "337056974653"], - ["445937161222528", "221162082281"], - ["446243884304809", "68895138576"], - ["489859129059979", "346162069888"], - ["505145411205774", "63083410136"], - ["521589023122466", "200388674016"], - ["571933833018999", "196096790801"] - ] - ], - ["0xd80eC2F30FB3542F0577EeD01fBDCCF007257127", [["117373037489804", "16889348072"]]], - ["0xF3F03727e066B33323662ACa4BE939aFBE49d198", [["112305865851667", "1473767387"]]], - [ - "0x284f942F11a5046a5D11BCbEC9beCb46d1172512", - [ - ["112217222887362", "41188549146"], - ["319598229117213", "96515746089"] - ] - ], - ["0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303", [["121128776667659", "354422482014"]]], - [ - "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248", - [ - ["102482441363213", "16752841008"], - ["102501887271161", "66903217"], - ["325399058895802", "19569741057"] - ] - ], - [ - "0x6bDd8c55a23D432D34c276A87584b8A96C03717F", - [ - ["113316826225763", "19763851047"], - ["113336590076810", "19747984525"] - ] - ], - ["0x6A7E0712838A0b257C20e042cf9b6C5E910F221F", [["111519018790551", "13275316430"]]], - ["0x9A5d202C5384a032473b2370D636DcA39adcC28f", [["102403247311465", "10701754385"]]], - [ - "0xd5eF94eC1a13a9356C67CF9902B8eD22Ebd6A0f6", - [ - ["136132384541471", "50657156720"], - ["135334419409244", "49996694855"] - ] - ], - [ - "0x084a35aE3B2F2513FF92fab6ad2954A1DF418093", - [ - ["134838782590422", "105615118195"], - ["134830609083484", "8173506938"], - ["202891108289560", "15951445054"] - ] - ], - ["0x085656Bd50C53E7e93D19270546956B00711FE2B", [["134062407569102", "67047192458"]]], - ["0xE48436022460c33e32FC98391CD6442d55CD1c69", [["137265377825154", "810243080"]]], - [ - "0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2", - [ - ["128790521677597", "7500000000"], - ["387786058520473", "365524741141"], - ["388736379371138", "221232078910"] - ] - ], - [ - "0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714", - [ - ["137248134678148", "962826980"], - ["640240084788517", "3774608352"], - ["695877378915987", "4160000000"] - ] - ], - ["0x19CB3CfB44B052077E2c4dF7095900ce0b634056", [["137255763505128", "9614320026"]]], - [ - "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7", - [ - ["136815080964510", "63685247214"], - ["204505988395558", "39159248155"], - ["630912951848778", "13702657500"], - ["625573606332771", "27405315000"], - ["627237168988540", "13702657500"], - ["630199893153378", "13702657500"], - ["633544834937816", "13702657500"] - ] - ], - ["0xFA2a3c48b85D6790B943F645Abf35A1E12770D09", [["134129454761560", "61655978309"]]], - [ - "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43", - [ - ["128468620580196", "38964529411"], - ["887473260643431", "285187152872"] - ] - ], - [ - "0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22", - [ - ["137228728484742", "19406193406"], - ["630926654506278", "21159782439"], - ["695170871906740", "2442109027"], - ["698060293717985", "19937578021"], - ["700924209542750", "86043643136"], - ["701813606595271", "201965000000"] - ] - ], - [ - "0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb", - [ - ["137266188068234", "1990688953"], - ["704198943665924", "6711451596"] - ] - ], - ["0x84649973923f8d3565E8520171618588508983aF", [["137249097505128", "6666000000"]]], - ["0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6", [["148618311892836", "92067166902"]]], - ["0x1B89a08D82079337740e1cef68c571069725306e", [["148148500497930", "29419590331"]]], - ["0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3", [["139575720236986", "97830465871"]]], - ["0xE3546C83C06A298148214C8a25B4081d72a704B4", [["145540390549720", "40301967034"]]], - [ - "0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB", - [ - ["144776481763770", "18782949347"], - ["332990401346447", "19812902768"] - ] - ], - [ - "0xdF02A9ba6C6A5118CF259f01eD7A023A4599a945", - [ - ["139975732251488", "398026347880"], - ["181407955635376", "545096922836"], - ["232388914759088", "243534672333"], - ["231851733041965", "220235851424"], - ["241282142603223", "337822422793"] - ] - ], - [ - "0x6384F5369d601992309c3102ac7670c62D33c239", - [ - ["147555339912491", "93757812192"], - ["181331243759377", "76711875999"], - ["201794323874481", "364919687105"] - ] - ], - ["0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569", [["137531094651758", "22516244343"]]], - ["0xCd3F4c42552F24d5d8b1f508F8b8d138b01af53F", [["148432137965500", "52035709332"]]], - [ - "0xF074d66B602DaE945d261673B10C5d6197Ae5175", - [ - ["145260774599348", "93530736569"], - ["145952084202661", "181953842566"], - ["145354305335917", "186085213803"] - ] - ], - [ - "0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849", - [ - ["145580692516754", "5746830768"], - ["705712512774884", "6316834733"], - ["705687548615966", "6740000000"] - ] - ], - ["0x4932Ad7cde36e2aD8724f86648dF772D0413c39E", [["144258485938657", "517995825113"]]], - ["0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96", [["145586649191784", "34043324970"]]], - [ - "0x0c492D61651965E3096740306F8345516fCd8990", - [ - ["147484814729971", "70525182520"], - ["180281626769160", "785756790998"], - ["200410780844889", "350250000000"] - ] - ], - [ - "0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5", - [ - ["141610787263306", "2335790276267"], - ["191837226999990", "4850348224207"] - ] - ], - [ - "0x5004Be84E3C40fAf175218a50779b333B7c84276", - [ - ["168106479315294", "28997073991"], - ["282729479437291", "78967589731"] - ] - ], - ["0xbb9dDEE672BF27905663F49bf950090050C4e9ad", [["168493012264452", "81983801879"]]], - ["0x30d0DEb932b5535f792d359604D7341D1B357a35", [["153844244754703", "260797078423"]]], - [ - "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5", - [ - ["149431927422856", "145192655079"], - ["149577130077935", "1000000"], - ["149577120077935", "10000000"], - ["213270572343591", "46320000000"], - ["262592826339996", "98698631369"], - ["402001335542096", "273300000000"], - ["699491292359432", "152606794771"], - ["701405120085419", "176025000000"] - ] - ], - [ - "0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0", - [ - ["170679729221505", "29596581820"], - ["725321098785789", "178812339846"] - ] - ], - ["0x41954b53cFB5e4292223720cB3577d3ed885D4f7", [["157994454912867", "150940785067"]]], - ["0xcA580c4e991061D151021B13b984De73B183b06e", [["153786447955420", "57796799283"]]], - [ - "0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e", - [ - ["168340296598257", "152715666195"], - ["308693409732309", "77337849888"] - ] - ], - ["0x26f781D7f59c67BBd16acED83dB4ba90d1e47689", [["170677478669570", "2250551935"]]], - ["0x7C28205352AD687348578f9cB2AB04DE1DcaA040", [["168585228445774", "248840212420"]]], - [ - "0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce", - [ - ["180158456901067", "123169868093"], - ["188657736324806", "39512949678"], - ["231324321180518", "8450043391"], - ["221757890116192", "19356262201"], - ["225343185979003", "18026209521"], - ["231457766946954", "5158102503"], - ["231332771223909", "8448132900"], - ["242180107603542", "21920789581"], - ["242174757473730", "5350129812"], - ["268449221949319", "667581458244"], - ["294364816047932", "141617495951"], - ["299594100999804", "47893657519"], - ["294586560057632", "447408202484"] - ] - ], - ["0x57068722592FeD292Aa9fdfA186A156D00A87a59", [["153517294218286", "113668344638"]]], - [ - "0x922d012c7E8fCe3C46ac761179Bdb6d16246782D", - [ - ["150084707437893", "25000000000"], - ["685372204853017", "69069767441"] - ] - ], - [ - "0xdbC529316fe45F5Ce50528BF2356211051fB0F71", - [ - ["149967196818046", "14596261680"], - ["269534561489665", "90779703328"] - ] - ], - [ - "0x085E98CD14e00f9FC3E9F670e1740F954124e824", - [ - ["154158293224517", "164150000000"], - ["271915086191895", "52683422286"], - ["273185381030890", "13304471734"] - ] - ], - ["0x262126FD37D04321D7f824c8984976542fCA2C36", [["153684583303762", "101864651658"]]], - [ - "0xe1887385C1ed2d53782F0231D8032E4Ae570B3CE", - [ - ["168135476389285", "204820208972"], - ["168068691873325", "37787441969"] - ] - ], - ["0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151", [["153630962562924", "53620740838"]]], - [ - "0x0e9dc8fFc3a5A04A2Abdd5C5cBc52187E6653E42", - [ - ["170739819759175", "2010899864188"], - ["205352438673508", "545765404695"], - ["208195727704637", "337282676156"], - ["230656709472518", "111542849445"], - ["230768252321963", "513789932910"], - ["237606953663534", "133802493354"], - ["237740756156888", "772811138936"], - ["236350247713281", "617705249553"], - ["505208494615910", "416478037426"], - ["531420470867756", "1000000000"], - ["531421470867756", "5649346694"], - ["545138809924718", "383215316641"] - ] - ], - ["0x219312542D51cae86E47a1A18585f0bac6E6867B", [["154105041833126", "20088923958"]]], - [ - "0xEd52006B09b111dAa000126598ACD95F991692D6", - [ - ["201288716074320", "169638004024"], - ["191024259399088", "300728504831"], - ["253710018355608", "626546484708"] - ] - ], - ["0x136e6F25117aF5e5ff5d353dC41A0e91F013D461", [["205073735725117", "122522870889"]]], - ["0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52", [["202907059734614", "8228218644"]]], - ["0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb", [["200761030844889", "73702619695"]]], - ["0xF28841b27FD011475184aC5BECadd12a14667e04", [["191833111162737", "4115837253"]]], - ["0xcEB03369b7537eB3eCa2b2951DdfD6D032c01c41", [["199315986281033", "17978341081"]]], - [ - "0x1904e56D521aC77B05270caefB55E18033b9b520", - [ - ["202615094361235", "50461870885"], - ["220065412002903", "149268238078"] - ] - ], - [ - "0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE", - [ - ["204483741086104", "653648140"], - ["328476823472330", "50626218743"], - ["656403459612897", "30610750000"] - ] - ], - [ - "0x6AB3E708231eBc450549B37f8DDF269E789ed322", - [ - ["200867811074584", "217662351018"], - ["239092831941854", "567750000000"], - ["234774888197334", "364480000000"], - ["260118373627924", "323387400000"], - ["254494491465844", "558500000000"], - ["446815618027105", "8120000000"], - ["446827216136839", "11608985252"], - ["464453051748379", "17337534783"], - ["463426993699329", "29146976013"], - ["586613207988784", "68490328982"], - ["634288124330782", "7613761316"], - ["649502105309057", "53235000000"], - ["649805925059057", "53235000000"], - ["649198285559057", "53235000000"], - ["696254055525928", "5443675000"], - ["696501399481444", "53837773087"], - ["698739309824756", "150901692840"], - ["716905989198435", "34680190734"], - ["718136155898812", "26448621220"], - ["720175216460971", "140966208215"], - ["737010650241966", "58060000000"], - ["738009093827168", "81212739087"], - ["743151962222302", "49057997400"], - ["805417930289879", "8009578710"] - ] - ], - ["0x0c940e42D91FE16E0f0Eccc964b26dde7808ab5d", [["204834863294849", "43270525811"]]], - [ - "0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd", - [ - ["204560148294849", "274715000000"], - ["227441220581468", "4355746398"], - ["221300565354492", "64458305378"], - ["344360197916189", "85392080830"], - ["489666388361106", "192740698873"] - ] - ], - ["0x4497aAbaa9C178dc1525827b1690a3b8f3647457", [["202722306634067", "168801655493"]]], - ["0xc9EA118C809C72ccb561Dd227036ce3C88D892C2", [["202915287953258", "123683710973"]]], - ["0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8", [["203083203411712", "30687677344"]]], - ["0xD1373DfB5Ff412291C06e5dFe6b25be239DBcf3E", [["181953052558212", "152198738048"]]], - [ - "0xbFd7ddd26653A7706146895d6e314aF42f7B18D5", - [ - ["204489002275103", "6037629659"], - ["261741019824303", "13299884075"], - ["269327679034543", "115963890107"], - ["273814984429661", "34585101999"], - ["312146875547105", "6533099760"] - ] - ], - [ - "0xF352e5320291298bE60D00a015b27D3960F879FA", - [ - ["204484394734244", "4607540859"], - ["931280942124652", "35607756446"], - ["943534242598500", "103149205776"] - ] - ], - ["0xae0aAF5E7135058919aB10756C6CdD574a92e557", [["204283741086104", "200000000000"]]], - [ - "0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F", - [ - ["212188823059772", "718187220626"], - ["255265354982596", "669600000000"], - ["459187067180977", "131956563555"], - ["558750219097685", "579087801478"], - ["586881787286346", "4019068358051"], - ["635572332702096", "291778458931"], - ["636541607037349", "213651821494"] - ] - ], - ["0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C", [["218677718578589", "4593795975"]]], - [ - "0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d", - [ - ["212907010280398", "204744106703"], - ["491199224234272", "1718500000"] - ] - ], - [ - "0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B", - [ - ["217947462047787", "462200000000"], - ["217940532047787", "6930000000"], - ["491202661734272", "1032300000"], - ["491200942734272", "1719000000"] - ] - ], - [ - "0x8325D26d08DaBf644582D2a8da311D94DBD02A97", - [ - ["214830162730441", "11008858783"], - ["293750873555124", "2641422510"] - ] - ], - [ - "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714", - [ - ["220709260788997", "4610000000"], - ["220637584990881", "2305000000"] - ] - ], - ["0x54CE05973cFadd3bbACf46497C08Fc6DAe156521", [["211486572900138", "3286403040"]]], - ["0x07f7cA325221752380d6CdFBcFF9B5E5E9EC058F", [["219683298748205", "83262125763"]]], - ["0x2bDB0cB25Db0012dF643041B3490d163A1809eE6", [["218546663766811", "84608203869"]]], - [ - "0x406874Ac226662369d23B4a2B76313f3Cb8da983", - [ - ["214361103094275", "462937279977"], - ["399147164949892", "357159363004"] - ] - ], - ["0xF7cCA800424e518728F88D7FC3B67Ed6dFa0693C", [["214824040374252", "944058657"]]], - [ - "0x533ac5848d57672399a281b65A834d88B0b2dF45", - [ - ["214901535169245", "5169447509"], - ["231673913235551", "34261572899"] - ] - ], - [ - "0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5", - [ - ["213264452873369", "6119470222"], - ["268381273591215", "17964245672"] - ] - ], - ["0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5", [["219661298748205", "22000000000"]]], - ["0x354F7a379e9478Ad1734f5c48e856F89E309a597", [["213213798353310", "12083942493"]]], - [ - "0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5", - [ - ["220639889990881", "69370798116"], - ["401536968546834", "57935578436"] - ] - ], - [ - "0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235", - [ - ["217546047951373", "394484096414"], - ["242397324583886", "347087625953"] - ] - ], - ["0xaaEB726768606079484aa6b3715efEEC7E901D13", [["225361212188524", "52342902973"]]], - ["0x328e124cE7F35d9aCe181B2e2B4071f51779B363", [["220813692513983", "51108156265"]]], - [ - "0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04", - [ - ["221709363811083", "48526305109"], - ["298041802666608", "96525595990"], - ["326873031171634", "75907148840"], - ["326781576518052", "38978848813"] - ] - ], - ["0x058107C8b15Dd30eFF1c1d01Cf15bd68e6BEf26F", [["226884439627627", "6995532243"]]], - ["0xc59821CBF1A4590cF659E2BA74de9Bbf7612E538", [["238513567295824", "218419400000"]]], - ["0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e", [["235887412728787", "44765525061"]]], - [ - "0x7310E238f2260ff111a941059B023B3eBCF2D54e", - [ - ["235227898442395", "54763564665"], - ["251906258747456", "37329428702"] - ] - ], - ["0x7125B7C60Ec85F9aD33742D9362f6161d403EC92", [["246922293237268", "206785636228"]]], - [ - "0x8709DD5FE0F07219D8d4cd60735B58E2C3009073", - [ - ["234615417572537", "159470624797"], - ["251943588176158", "29696822758"] - ] - ], - [ - "0xc4c89a41Ad3050Bb82deE573833f76f2c449353e", - [ - ["240640507285101", "177374755656"], - ["249896870521632", "41764894516"] - ] - ], - ["0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A", [["246309595703075", "227508332382"]]], - [ - "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", - [ - ["238754484412650", "338347529204"], - ["239660581941854", "206297640000"] - ] - ], - ["0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F", [["245155440103610", "134623539909"]]], - [ - "0xE8c22A092593061D49d3Fbc2B5Ab733E82a66352", - [ - ["240817882040757", "5487035546"], - ["239866879581854", "17070516"], - ["244563066566020", "339502974396"], - ["285823716873404", "17130345477"], - ["399108141891711", "39023058181"], - ["456632495406880", "3623888698"], - ["583979473591721", "54917559198"] - ] - ], - [ - "0x06E6932ed7D7De9bcF5bD7a11723Dc698D813F7e", - [ - ["241189075365295", "11074540309"], - ["274351454205287", "6979294808"], - ["325771315526926", "14384938107"] - ] - ], - [ - "0xE3faBA780BDe12D3DFEB226A120aA4271f1D72B2", - [ - ["243781055572115", "71454221208"], - ["241976256153648", "123280084894"], - ["269116803407563", "1388897527"], - ["279505824996797", "21880478375"], - ["355680382750323", "126483466450"], - ["400152023455338", "26063720697"], - ["445628453536239", "63068683017"] - ] - ], - [ - "0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C", - [ - ["247377186269264", "1607000000"], - ["695624119694114", "1561000000"] - ] - ], - ["0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0", [["236273309536157", "1800060629"]]], - ["0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37", [["248282655499019", "42281642936"]]], - [ - "0xC21a7Fe78A0Fb9DF4Da21F2Ce78c76BdAe63e611", - [ - ["247378793269264", "244753927997"], - ["250829898506136", "432187654500"] - ] - ], - ["0xE67ae530c6578bCD59230EDac111Dd18eE47b344", [["243852509793323", "20607463066"]]], - ["0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31", [["241011518848871", "176238775506"]]], - ["0x0A7ED639830269B08eE845776E9b7a9EFD178574", [["255934954982596", "11365698463"]]], - [ - "0xbf9Db3564c22fd22FF30A8dB7f689D654Bf5F1fD", - [ - ["250043585667303", "36429294837"], - ["250401077762813", "64932162661"] - ] - ], - [ - "0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A", - [ - ["250526151093083", "74656417530"], - ["695628520661609", "143420000000"] - ] - ], - ["0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee", [["260693811733759", "22657073802"]]], - [ - "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D", - [ - ["252085742270225", "37217588263"], - ["693534396400586", "1362130095"], - ["695910518553961", "796726164"] - ] - ], - ["0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70", [["252279493675340", "327574162163"]]], - ["0x09DaDF51d403684A67886DB545AE1703d7856056", [["249945795286716", "97790380587"]]], - ["0x6fBDc235B6f55755BE1c0B554469633108E60608", [["253030586999657", "262000796007"]]], - [ - "0xD5351308c8Cb15ca93a8159325bFb392DC1e52aC", - [ - ["256758104204461", "15603000000"], - ["256710058517324", "31206000000"] - ] - ], - ["0xF4B2300e02977720D590353725e4a73a67250bf3", [["252622959858488", "277271514945"]]], - ["0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76", [["260441761027924", "21012816705"]]], - [ - "0x0846Bf78c84C11D58Bb2320Fc8807C1983A2797C", - [ - ["259218447065702", "44722720347"], - ["260052583934374", "47702676650"] - ] - ], - ["0x567dA563057BE92a42B0c14a765bFB1a3dD250be", [["259263169786049", "44675770159"]]], - [ - "0x3638570931B30FbBa478535A94D3f2ec1Cd802cB", - [ - ["258890580795053", "327866270649"], - ["266899609550289", "85677608975"] - ] - ], - ["0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3", [["256776481524757", "827187570265"]]], - ["0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09", [["248455141384543", "250596023597"]]], - [ - "0x7eFaC69750cc933e7830829474F86149A7DD8e35", - [ - ["261973680486751", "179562380519"], - ["261973679486751", "1000000"], - ["271999469298681", "293011632289"] - ] - ], - [ - "0x7c9551322a2e259830A7357e436107565EA79205", - [ - ["270707790419553", "44602710850"], - ["334808594828075", "20502770382"], - ["491177308591557", "21915642715"], - ["625298680160271", "253050000000"], - ["643112195637173", "114580000000"], - ["712108719670625", "126027343719"] - ] - ], - [ - "0x15682A522C149029F90108e2792A114E94AB4187", - [ - ["262244417024534", "9954888600"], - ["262254371913134", "20006708080"] - ] - ], - ["0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95", [["264546765360408", "45234008042"]]], - ["0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36", [["262220837330704", "17624219070"]]], - ["0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0", [["262389497183414", "66013841091"]]], - ["0xB5030cAc364bE50104803A49C30CCfA0d6A48629", [["271716973263145", "198112928750"]]], - ["0x61C562283B268F982ffa1334B643118eACF54480", [["266885888878451", "13720671838"]]], - [ - "0x09147d29d27E0c8122fC0b66Ff6Ca060Cda40aDc", - [ - ["263444366219049", "78768160379"], - ["340340310399004", "194252578254"] - ] - ], - ["0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f", [["262570166065123", "15818274887"]]], - [ - "0xDB2480a43C79126F93Bd5a825dc0CBa46d7C0612", - [ - ["273275462311532", "1874397"], - ["376596837312302", "2143332"] - ] - ], - [ - "0x0A0761a91009101a86B7a0D786dBbA744cE2E240", - [ - ["278185787491171", "5610925897"], - ["277532421339407", "4652629712"] - ] - ], - [ - "0xD49946B3dA0428fE4E69c5F4D6c4125e5D0bf942", - [ - ["277622676617792", "90144976522"], - ["277712821594314", "103935819570"] - ] - ], - [ - "0x80771B6DC16d2c8C291e84C8f6D820150567534C", - [ - ["274600967175715", "186730161037"], - ["274586709729354", "14257446361"] - ] - ], - [ - "0x0B7021897485cC2Db909866D78A1D82657A4be6F", - [ - ["273335862185061", "44063880952"], - ["318810216692840", "39073687143"] - ] - ], - ["0xCfCF5A55708Cd1Ae90fdcad70C7445073eB04d94", [["272383450599356", "73487260147"]]], - ["0x59b9540ee2A8b2ab527a5312Ab622582b884749B", [["274578680043801", "900000000"]]], - ["0xcD26f79e60fd260c867EEbAeAB45e021bAeCe92D", [["274579580043801", "7129685553"]]], - ["0xde8351633c96Ac16860a78D90D3311fa390182BF", [["277537073969119", "85602648673"]]], - [ - "0xD0126092d4292F8DC755E6d8eEE8106fbf84583D", - [ - ["276405260758386", "163268617108"], - ["285840847218881", "78077936614"] - ] - ], - [ - "0xEF64581Af57dFEc2722e618d4Dd5f3c9934C17De", - [ - ["273653841644570", "66903513016"], - ["386540379495873", "45687893013"] - ] - ], - ["0x368a5564F46Bd896C8b365A2Dd45536252008372", [["273379926066013", "186137117756"]]], - ["0x0F0520237DB57A05728fa0880F8f08A1fd57ccff", [["276395162620514", "10098137872"]]], - ["0x110dfBb05F447880B9B29206c1140C07372090dc", [["282823933037116", "25998872322"]]], - ["0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E", [["289524659324935", "40000269904"]]], - ["0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20", [["280702256803893", "3194476000"]]], - ["0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81", [["288652038051959", "273973101221"]]], - [ - "0xF8444CF11708d3901Ee7B981b204eD0c7130fB93", - [ - ["287670685386031", "624535957327"], - ["285918925155495", "793706626029"], - ["286712631781524", "958053604507"], - ["327268162978532", "483993740256"], - ["368431939737151", "1004761026937"] - ] - ], - [ - "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54", - [ - ["289603276344849", "221452178690"], - ["289037900183227", "435600000000"] - ] - ], - [ - "0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7", - [ - ["283862931443313", "13846186217"], - ["284761889788419", "53707306278"], - ["322288771602655", "767049891172"], - ["335611264683963", "3457786919155"] - ] - ], - ["0x97Ada2E26C06C263c68ECCe43756708d0f03D94A", [["281369121491336", "104797064592"]]], - ["0xc32B1e77879F3544e629261E711A0cc87ae01182", [["281343170282469", "10590975372"]]], - ["0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E", [["281360732660114", "8388831222"]]], - [ - "0x0e56C87075CD53477C497D5B5F68CdcA8605cBF7", - [ - ["283860746063250", "2185380063"], - ["311893596417096", "7528848316"] - ] - ], - ["0x90B113Cf662039394D28505f51f0B1B4678Cc3b5", [["280783044688644", "12564997296"]]], - [ - "0x019285701d4502df31141dF600A472c61c054e63", - [ - ["285400078671087", "106658006145"], - ["295033968260116", "102049327959"] - ] - ], - ["0x5edd743E40c978590d987c74912b9424B7258677", [["282938006963034", "4678453384"]]], - ["0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E", [["288522664536795", "90805720025"]]], - [ - "0xeeBF4Ea438D5216115577f9340cD4fB0EDD29BD9", - [ - ["279922610063052", "4057575515"], - ["334851860911256", "99708443352"] - ] - ], - ["0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287", [["280705451279893", "77593408751"]]], - [ - "0x49444e6d0b374f33c43D5d27c53d0504241B9553", - [ - ["289598528304849", "4748040000"], - ["325785700465033", "47931342976"], - ["333897831019794", "49267287724"], - ["372461099911308", "92255508651"] - ] - ], - ["0xF57c5533a9037E25E5688726fbccD03E09738aCd", [["290667882932090", "15075579651"]]], - ["0x3BD4c721C1b547Ea42F728B5a19eB6233803963E", [["279910575121973", "12034941079"]]], - [ - "0x99997957BF3c202446b1DCB1CAc885348C5b2222", - [ - ["285760338065737", "22606820288"], - ["298929583976174", "66551024044"] - ] - ], - ["0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a", [["289487146073469", "37513251466"]]], - [ - "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a", - [ - ["289473500183227", "13645890242"], - ["465942921824991", "13502469920"] - ] - ], - ["0x821bb6973FdA779183d22C9891f566B2e59C8230", [["279899339370850", "11235751123"]]], - [ - "0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190", - [ - ["289570099594839", "2284115100"], - ["325489589719323", "16145852467"] - ] - ], - ["0x4d26976EC64f11ce10325297363862669fCaAaD5", [["293290104729008", "95356406608"]]], - ["0x93b34d74a134b403450f993e3f2fb75B751fa3d6", [["296797858583543", "139782800000"]]], - [ - "0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E", - [ - ["300538713353756", "19030292542"], - ["296283253996855", "94410708993"], - ["297412002527525", "59063283900"], - ["295473191285707", "19712324157"] - ] - ], - ["0xe2282eA0D41b1a9D99B593e81D9adb500476C7C5", [["297959748228642", "43499184625"]]], - [ - "0xEC9F16FAacD809ED3EC90D22C92cE84C5C115FAC", - [ - ["297503528406965", "16484054460"], - ["297471065811425", "24584000000"] - ] - ], - ["0xDa12B5133e13e01d95f9a5BE0cc61496b17E5494", [["297843565336066", "116182892576"]]], - ["0xFe2da4E7e3675b00BE2Ff58c6a018Ed06237C81D", [["295372378685570", "14172600137"]]], - [ - "0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21", - [ - ["298739111357662", "190472618512"], - ["298426082271272", "34185829440"], - ["318131255471558", "490552229489"], - ["318849290379983", "195286958683"] - ] - ], - ["0x08b6e06F64f62b7255840329b2DDB592d6A2c336", [["293279130525087", "10974203921"]]], - ["0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54", [["291654604244211", "46558365900"]]], - ["0xdF3A7C30313779D3b6AA577A28456259226Ff452", [["298546668100712", "30553597699"]]], - ["0xFD7998c9c23aa865590fd3405F19c23423a0611B", [["298460268100712", "86400000000"]]], - [ - "0xD2927a91570146218eD700566DF516d67C5ECFAB", - [ - ["311239094540889", "5001219"], - ["461998949157639", "264918608815"] - ] - ], - [ - "0x5A803cD039d7c427AD01875990f76886cC574339", - [ - ["304668727377586", "823622609198"], - ["303460189172472", "1009627934604"] - ] - ], - ["0x5D177d3f4878038521936e6449C17BeCd2D10cBA", [["302037489993568", "28063592168"]]], - ["0x5F067841319aD19eD32c432ac69DcF32AC3a773F", [["301635847094275", "67319170048"]]], - ["0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1", [["311951348717264", "20080403416"]]], - ["0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca", [["317838397685316", "11960421970"]]], - ["0x0948934A39767226E1FfC53bd0B95efa90055178", [["311619295234752", "15991984586"]]], - ["0x27320AAc0E3bbc165E6048aFc0F28500091dca73", [["301703166264323", "14827650417"]]], - ["0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60", [["306189714236944", "1401270600"]]], - ["0x349E8490C47f42AB633D9392a077D6F1aF4d4c85", [["311971429120680", "25098501333"]]], - ["0x4588a155d63CFFC23b3321b4F99E8d34128B227a", [["317739518695316", "98878990000"]]], - ["0xcd1E27461aF28E23bd3e84eD87e2C9a281bF0d9F", [["312080923158305", "65952388800"]]], - ["0x34Aec84391B6602e7624363Df85Efe02A1FF35f5", [["309267907666277", "100498286663"]]], - ["0xd6E52faa29312cFda21a8a5962E8568b7cfe179a", [["302424774125728", "13659859623"]]], - ["0xd380b5Fed7b9BaAFF7521aA4cEfC257Db3043d26", [["311635287219338", "57116660884"]]], - ["0x220c12268c6f1744553f456c3BF161bd8b423662", [["311744261169232", "14754910654"]]], - ["0xE6375dF92796f95394a276E0BA4Efc4176D41D49", [["315485261670410", "218136367740"]]], - ["0xf5f165910e11496C2d1B3D46319a5A07f09Bf2D9", [["311375845353216", "202824840027"]]], - ["0xe4082AaCDEd950C0f21FEbAC03Aa6f48D15cd58D", [["306191115507544", "47164005800"]]], - ["0x997563ba8058E80f1E4dd5b7f695b5C2B065408e", [["312055923158305", "25000000000"]]], - [ - "0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f", - [ - ["323055821493827", "43323014052"], - ["328737849859671", "47689884851"] - ] - ], - ["0xae5c0ff6738cE54598C00ca3d14dC71176a9d929", [["327253599004877", "14563973655"]]], - ["0x215F97a79287BE4192990FCc4555F7a102a7D3DE", [["319063706774890", "19124814552"]]], - [ - "0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5", - [ - ["326820555366865", "52475804769"], - ["327158585388232", "95013616645"], - ["489512551216130", "133886156698"] - ] - ], - ["0x0690166a66626C670be8f1A09bcC4D23c0838D35", [["325551813699206", "16535828993"]]], - [ - "0x299e4B9591993c6001822baCF41aff63F9C1C93F", - [ - ["321198027851647", "794705201763"], - ["328785539744522", "150336454905"], - ["356266241722575", "2607932412299"], - ["358874174134874", "766254121133"] - ] - ], - ["0x26AFBbC659076B062548e8f46D424842Bc715064", [["320072143901269", "94067068214"]]], - ["0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb", [["325418628636859", "13882808319"]]], - ["0xbFC415Eb25AaCbEEf20aE5BC35f1F4CfdE9e3FC6", [["321992733053410", "296038549245"]]], - [ - "0xda333519D92b4D7a83DBAACB4fd7a31cDB4f24A4", - [ - ["324929278595488", "23097239478"], - ["325505735571790", "46078127416"] - ] - ], - ["0xF4a04D998A8d6Cf89C9328486a952874E50892DC", [["321094975835782", "50467275310"]]], - [ - "0xB3561671651455D2E8BF99d2f9E2257f2a313a2c", - [ - ["323131389358954", "61656029023"], - ["360752435099540", "96553480454"], - ["360158682891399", "103299890816"], - ["403118995799810", "17007566134"], - ["401959009163867", "42326378229"], - ["402764778389025", "53919698039"], - ["404743790158374", "56782954188"] - ] - ], - ["0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797", [["328269884139182", "10071394154"]]], - ["0xCB2d95308f1f7db3e53E4389A90798d3F7219a7e", [["325442315999585", "47273719738"]]], - [ - "0x08507B93B82152488512fe20Da7E42F4260D1209", - [ - ["328361555137833", "69760982441"], - ["379374817295263", "104583299835"] - ] - ], - [ - "0xF1F2581Bd9BBd76134d5f111cA5CFF0a9753FD8E", - [ - ["324952375834966", "138041583857"], - ["325090417418823", "269722743765"] - ] - ], - ["0x990cf47831822275a365e0C9239DC534b833922D", [["328463036730072", "3651796730"]]], - ["0x16b5e68f83684740b2DA481DB60EAb42362884b9", [["328466688526802", "10134945528"]]], - ["0x28aB25Bf7A691416445A85290717260971151eD2", [["328451525907964", "11510822108"]]], - ["0x317B157e02c3b5A16Efc3cc4eb26ACcC1cfF24e3", [["319579237582534", "18991534679"]]], - ["0x59dC1eaE22eEbD6CfbD144ee4b6f4048F8A59880", [["328698724407437", "20246736273"]]], - [ - "0x81eee01e854EC8b498543d9C2586e6aDCa3E2006", - [ - ["328965644144808", "198456386297"], - ["334136741601312", "292267679049"] - ] - ], - ["0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB", [["334679522049415", "119672848374"]]], - ["0x095CB8F5E61b69A0C2fE075A772bb953f2d11C2A", [["339210737506518", "102926636303"]]], - ["0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968", [["334477990711769", "22041535128"]]], - ["0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106", [["333010214249215", "99131397538"]]], - ["0xcc5b337cd28b330705e2949a3e28e7EcA33FABF3", [["344217839974187", "142357942002"]]], - [ - "0x3BD142a93adC0554C69395AAE69433A74CFFc765", - [ - ["328954715417202", "10928727606"], - ["386387360940641", "141509657939"] - ] - ], - ["0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6", [["343948668440753", "269171533434"]]], - ["0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb", [["343677590063786", "19176051379"]]], - ["0xDecaFa57F07292a338E59242AaC289594E6A0d68", [["332704987205231", "140065079142"]]], - ["0x82CFf592c2D9238f05E0007F240c81990f17F764", [["334800355703455", "8239124620"]]], - ["0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01", [["331560641183352", "35213496314"]]], - ["0xD11FaEdC6F7af5b05137A3F62cb836Ab0aE5dbb6", [["329207240531105", "136505258035"]]], - ["0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725", [["331622129302332", "1070861106258"]]], - ["0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE", [["340001324829583", "5337"]]], - [ - "0xaDd2955F0efC871902A7E421054DA7E6734d3DCA", - [ - ["340002929884824", "1605019105"], - ["340001324834920", "1605049904"] - ] - ], - ["0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1", [["340565553187713", "3073743220711"]]], - ["0xF6FE6b3f7792B0a3E3E92Fdbe42B381395C2BBd8", [["334637636520317", "16963513569"]]], - ["0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0", [["328935876199427", "18402625318"]]], - ["0x8bFe70E2D583f512E7248D67ACE918116B892aeA", [["339167269778934", "43467727584"]]], - ["0x201ad214891136FC37750029A14008D99B9ab814", [["334959543421596", "108850000718"]]], - ["0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB", [["333887021019794", "10810000000"]]], - ["0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf", [["340544190818194", "21362369519"]]], - ["0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209", [["353389703784413", "2182702092311"]]], - ["0xE4202F5919F22377dB816a5D04851557480921dF", [["343696766115165", "19171570170"]]], - [ - "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD", - [ - ["328954278824745", "436592457"], - ["334845655178581", "6205732675"], - ["376884850195985", "929512985"] - ] - ], - [ - "0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5", - [ - ["328698722691368", "1716069"], - ["650916041448649", "2588993459"] - ] - ], - ["0x0FF2FAa2294434919501475CF58117ee89e2729c", [["340004534903929", "11052458712"]]], - [ - "0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176", - [ - ["377332779708970", "1645388829"], - ["456719911973263", "2016823680"] - ] - ], - ["0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d", [["373671956964097", "185860975995"]]], - ["0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a", [["359920402458005", "85000000000"]]], - ["0x61C95fe68834db2d1f323bb85F0590690002a06d", [["359895402458005", "25000000000"]]], - ["0x2352FDd9A457c549D822451B4cD43203580a29d1", [["360910868412337", "468725307806"]]], - [ - "0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA", - [ - ["355806866216773", "187420307596"], - ["359874313037575", "21089420430"] - ] - ], - [ - "0x6b87460Ce18951D31A7175cAbE2f3fc449E54256", - [ - ["360115402458027", "38084213662"], - ["402818698087064", "46789171777"] - ] - ], - ["0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3", [["359857480112013", "16832925562"]]], - ["0xc390578437F7BdEe1F766Fdb00f641848bc19366", [["372433833471833", "3723791152"]]], - ["0xcB0838c828Ec4911f6a0ba48e58BC67a8c5f9c3f", [["360153486671689", "2374729808"]]], - ["0x3810EAcf5020D020B3317B559E59376c5d02dCB2", [["370593639163868", "87638844672"]]], - ["0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e", [["361666644960846", "9033860883"]]], - ["0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1", [["356013940250669", "214939119695"]]], - ["0x9D496BA09C9dDAE8de72F146DE012701a10400CC", [["359640428256007", "217051856006"]]], - [ - "0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D", - [ - ["380008273465850", "100013282422"], - ["386673517385669", "116174772099"] - ] - ], - [ - "0xe496c05e5E2a669cc60ab70572776ee22CA17F03", - [ - ["376760788400310", "6925672800"], - ["451603278508011", "5361251025"] - ] - ], - ["0xBF843F2AA6425952aE92760250503cE9930342b4", [["377334425097799", "91988886699"]]], - ["0xF4E3f1c01BD9A5398B92ac1B8bedb66ba4a2d627", [["370522581424279", "71057739589"]]], - ["0x532744D22891C4fccd5c4250D62894b3153667a7", [["374145600795098", "2278056516664"]]], - [ - "0x507165FF0417126930D7F79163961DE8Ff19c8b8", - [ - ["360848988579994", "61879832343"], - ["662609678589053", "59538073434"] - ] - ], - ["0x905B2Eb4B731B395E7517a4763CD829F6EC2f510", [["379996617045843", "11656420007"]]], - [ - "0x009A2534fd10c879D69daf4eE3000A6cb7E609Bb", - [ - ["355994286524369", "936000838"], - ["613741059534895", "12343626381"] - ] - ], - ["0x5084949C8f7bf350c646796B242010919f70898E", [["371914538333765", "11710566911"]]], - ["0xf152581b8cb486b24d73aD51e23a3Fd3E0222538", [["379603990851302", "392626194541"]]], - ["0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB", [["371946868967109", "58841300381"]]], - ["0x70C8eE0223D10c150b0db98A0423EC18Ec5aCa89", [["378893728297768", "94698329152"]]], - ["0x61e193e514DE408F57A648a641d9fcD412CdeD82", [["377426413984498", "1134976125606"]]], - ["0xF930b0A0500D8F53b2E7EFa4F7bCB5cc0c71067E", [["378561390110104", "332338187664"]]], - ["0xa48E7B26036360695be458D6904DE0892a5dB116", [["361675678821729", "360670112242"]]], - ["0xeEe59d723433a4b178fCD383CD936de9C8666111", [["384705864961915", "1132721039915"]]], - ["0xC252A841Af842a55b0F0b507f68f3864bf1C02b5", [["383092890554906", "160361923955"]]], - ["0x0be0eCC301a1c0175f07A66243cfF628c24DB852", [["387085583162537", "11780328791"]]], - ["0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e", [["383075774673118", "17115881788"]]], - ["0x9c7ac7abbD3EC00E1d4b330C497529166db84f63", [["384132556160937", "27365907771"]]], - ["0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5", [["384072204135723", "8758397681"]]], - ["0x70F11dbD21809EbCd4C6604581103506A6a8443A", [["385984597229597", "11444716102"]]], - ["0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4", [["385996041945699", "44584623736"]]], - [ - "0xe0E297e67191AF140BCa9E7c8dd9FfA7F57D3862", - [ - ["386877595575860", "381776902"], - ["422877270899875", "2595240610"], - ["422879866140485", "7669308177"] - ] - ], - ["0x5aB883168ab03c97239CEf348D5483FB2b57aFD9", [["380974686616344", "86992261142"]]], - ["0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D", [["384391860674103", "22464236574"]]], - ["0x0B297D1e15bd63e7318AF0224ebeA1883eA1B78b", [["381340402136618", "26295761854"]]], - ["0x26C08ce60A17a130f5483D50C404bDE46985bCaf", [["386273913739633", "113447201008"]]], - [ - "0x81696d556eeCDc42bED7C3b53b027de923cC5038", - [ - ["380859952352184", "14925453141"], - ["463502571685807", "36113082774"] - ] - ], - [ - "0xC2705469f7426E9EbE91e55095dCA2AdF19Bcbb2", - [ - ["387120303937976", "58515686346"], - ["456679832668142", "40079305121"], - ["470868926031598", "34468618803"], - ["470903394650401", "34452659711"] - ] - ], - ["0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af", [["381241434287363", "79896782500"]]], - [ - "0x33c0BCac5c1835fe9D52D35079F6617A22c6C431", - [ - ["387476112263181", "125324760000"], - ["389195837042393", "36648000000"], - ["572397154046541", "49788645972"], - ["594358295239774", "202654427854"], - ["613936695193580", "16210845885"], - ["614677841663135", "43736535200"], - ["636394053735133", "31060210793"] - ] - ], - [ - "0xDeaB5B36743feb01150e47Ad9FfD981b9d5b7E8a", - [ - ["387406923771954", "17549000000"], - ["388983838542393", "11998500000"] - ] - ], - ["0xCfD2b6487AFA4A30b79408cF57b2103348660a02", [["386586067388886", "57516289570"]]], - ["0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", [["381061678877486", "69289110000"]]], - ["0x7c12222e79e1a2552CaF92ce8dA063e188a7234F", [["388462281235108", "151078425653"]]], - [ - "0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB", - [ - ["387178819624346", "22789160494"], - ["401309728984959", "88167423404"], - ["696212281967928", "41773558000"], - ["696479737795444", "21661686000"] - ] - ], - ["0x568092fb0aA37027a4B75CFf2492Dbe298FcE650", [["383570319922931", "320032018333"]]], - ["0x68ca44eD5d5Df216D10B14c13D18395a9151224a", [["388151583261614", "298522321813"]]], - ["0x8264EA7b0b15a7AD9339F06666D7E339129C9482", [["382614804933710", "32021232234"]]], - ["0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48", [["380823279010078", "36673342106"]]], - ["0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3", [["385887420980071", "15676768579"]]], - ["0xbb595fEF3C86FE664836a5Ea6C6E549ECeA28dEe", [["380874877805325", "99808811019"]]], - ["0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E", [["388613359660761", "123019710377"]]], - [ - "0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22", - [ - ["385934932264792", "28234479163"], - ["458138123015409", "13236391256"] - ] - ], - ["0xbFc016652a6708b20ae850Ee92D2Ea23ccA5F31a", [["384284223137807", "107622510400"]]], - ["0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17", [["387354276771954", "17549000000"]]], - ["0x29e1A68927a46f42d3B82417A01645Ee23F86bD9", [["386040626569435", "115438917"]]], - ["0x08364bdB63045c391D33cb83d6AEd7582b94701d", [["383513997691489", "23831778892"]]], - ["0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97", [["381325946685316", "8912443926"]]], - ["0xECA7146bd5395A5BcAE51361989AcA45a87ae995", [["385963166743955", "21430485642"]]], - ["0xC9cE413f3761aB1Df6be145fe48Fc6c28A8DCc1a", [["384209179623467", "73933444962"]]], - [ - "0x829Ceb00fC74bD087b1e50d31ec628a90894cD52", - [ - ["384414324910677", "50596304590"], - ["416442088554138", "62470363029"], - ["428416613011571", "64080321723"] - ] - ], - [ - "0xAf93048424E9DBE29326AD1e1B00686760318f0D", - [ - ["387099560901328", "9082486597"], - ["603423204831971", "17206071534"] - ] - ], - ["0x843F293423895a837DBe3Dca561604e49410576C", [["387108643387925", "11660550051"]]], - ["0x66F1089eD7D915bC7c7055d2d226487362347d39", [["384283113068429", "1110069378"]]], - ["0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509", [["388450105583427", "12175651681"]]], - ["0x0C2301083B7f8021fB967C05a4C2fb1ab731C302", [["390704799840991", "23348488996"]]], - [ - "0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79", - [ - ["389232485042393", "1472314798598"], - ["390728148329987", "1929155008439"], - ["402274635542096", "435082846929"], - ["439720106933966", "969373424488"], - ["453720230030637", "1062369645874"], - ["605146291993181", "105536223506"] - ] - ], - ["0xCD4950a8Bd67123807dA21985F2d4C4553EA1523", [["400846418215399", "114436759181"]]], - ["0xE6A0D70CFe2BB97E39D37ED2549c25FA8C238B1A", [["400718076278698", "128341936701"]]], - [ - "0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC", - [ - ["401837348742701", "107810827136"], - ["404309982048493", "327389493912"] - ] - ], - ["0x2f89DB6B5E80C4849142789d777109D2F911F780", [["392855011748637", "5251308075"]]], - ["0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba", [["403240604993759", "448608504781"]]], - [ - "0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED", - [ - ["396986650725260", "3482540346"], - ["396990133265606", "3782897627"] - ] - ], - ["0xb0226e96c71F94C44d998CE1b34F6a47c3A82404", [["397303985083419", "767141673418"]]], - ["0xCAeEf0dFCF97641389F8673264b7AbAB25D17c99", [["400315704255754", "292270000000"]]], - ["0x6ab4566Df630Be242D3CD48777aa4CA19C635f56", [["400652005822390", "66070456308"]]], - ["0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256", [["400607974255754", "22903272033"]]], - [ - "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC", - [ - ["401533003762823", "3964784011"], - ["707611259809109", "15589908000"] - ] - ], - ["0x87834847477c82d340FCD37BE6b5524b4dF5e7c5", [["402865487258841", "6454277235"]]], - ["0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80", [["404106072954894", "63975413862"]]], - ["0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F", [["399076325073937", "1256098598"]]], - ["0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe", [["400121937452645", "30086002693"]]], - ["0xe9ef7E644405dD6BD1cbd1550444bBF6B2Bfc7C1", [["392947371864651", "1548786859"]]], - ["0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f", [["393235443340203", "325699631169"]]], - [ - "0xF4839123454F7A65f79edb514A977d0A443d9F91", - [ - ["396499321739661", "158934348231"], - ["396672169852755", "304359092505"], - ["398077843498350", "155055594925"], - ["493845501729151", "117060004485"] - ] - ], - ["0x8a178306ffF20fd120C6d96666F08AC7c8b31ded", [["402871941536076", "96491602264"]]], - ["0x81d8363845F96f94858Fac44A521117DADBfD837", [["393561142971372", "324629738694"]]], - ["0x04A9b41a1288871FB60c6d015F3489612d36EB48", [["394687355735732", "64363620944"]]], - ["0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14", [["401720368857579", "116979885122"]]], - ["0x08c16a9c76Df28eE6bf9764B761E7C4cE411E890", [["393885772710066", "801583025666"]]], - ["0x66D8293781eF24184aa9164878dfC0486cfa9Aac", [["404265886768756", "2215279737"]]], - [ - "0x9399943298b25632b21f4d1FA75DB0C5b8d457C5", - [ - ["404022519144524", "12098559997"], - ["406000821375295", "28386322608"] - ] - ], - ["0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E", [["404737495938253", "6294220121"]]], - [ - "0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490", - [ - ["405492506092600", "262152482"], - ["705094852706044", "3445015742"] - ] - ], - ["0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302", [["405874022206206", "23506738608"]]], - ["0xc40dcc52887e1F08c2c91Dcd650da630DE671bD7", [["404955105302992", "54144875028"]]], - [ - "0x3103c84c86a534a4f10C3823606F2a5b90923924", - [ - ["422366589300603", "3203293071"], - ["411689905001233", "1562442699"] - ] - ], - ["0xD5bFBD8FCD5eD15d3df952b0D34edA81FF04Dabe", [["406205859764926", "153923235884"]]], - ["0x699095648BBc658450a22E90DF34BD7e168FCedB", [["411655097983604", "1867890780"]]], - [ - "0x3798AE2cbC444ed5B5f4fb38344044977066D13F", - [ - ["405972755944204", "18931968095"], - ["437453984559649", "7476138081"] - ] - ], - ["0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA", [["406359783000810", "120151660091"]]], - ["0xec94F1645651C65f154F48779Db1F4C36911a56a", [["405569526477439", "75101162500"]]], - ["0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A", [["405991687912299", "9133462996"]]], - ["0x1a5280B471024622714DEc80344E2AC2823fd841", [["404684955626632", "24488082083"]]], - [ - "0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96", - [ - ["404929342948282", "25762354710"], - ["417074162881181", "61234325811"] - ] - ], - ["0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39", [["416914807899146", "159354982035"]]], - ["0xCF04b3328326b24A1903cBd8c6Cab8E607594342", [["404736255118145", "1240820108"]]], - ["0x08C1eBaC9aD1933E08718A790bc7D1026e588c9b", [["422887535448662", "31370000000"]]], - ["0xF75e363F695Eb259d00BFa90E2c2A35d3bFd585f", [["405828528337439", "31013750000"]]], - [ - "0x3983b24542E637030af57a6Ca117B96Fc42Ace10", - [ - ["406100162097903", "54716661232"], - ["419104248331557", "60400014733"] - ] - ], - ["0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4", [["414623981770600", "320790778183"]]], - [ - "0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6", - [ - ["416424514238783", "17574315355"], - ["620990777138369", "7681062381"], - ["650004772446996", "2978711605"] - ] - ], - ["0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0", [["406154878759135", "39817721136"]]], - ["0x2342670674C652157c1282d7E7F1bD7460EFa9E2", [["419164648346290", "19514795641"]]], - ["0x0A6f465033A42B1EC9D8Cd371386d124E9D3b408", [["404807760703809", "121582244473"]]], - ["0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91", [["416581788749222", "183159970434"]]], - [ - "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d", - [ - ["423269308404787", "6273115407"], - ["437554929146101", "25515357603"] - ] - ], - ["0x35a386D9B7517467a419DeC4af6FaFC4c669E788", [["405952555551214", "10024424157"]]], - ["0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714", [["416777307799778", "124964349871"]]], - ["0x686381d3D0162De16414A274ED5FbA9929d4B830", [["405897528944814", "55026606400"]]], - ["0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF", [["404807646684224", "114019585"]]], - ["0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74", [["404637371542405", "21014656050"]]], - ["0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3", [["424067831520194", "76367829600"]]], - ["0x2BeaB5818689309117AAfB0B89cd6F276C824D34", [["405492768245082", "25254232357"]]], - ["0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F", [["405968762010244", "1993933960"]]], - ["0x0fbb76b9B283Dd22eCbD402B82EbFA6807e44260", [["408564846537034", "39890246570"]]], - [ - "0x93A185CD1579c015043Af80da2D88C90240Ab3a9", - [ - ["425000640707321", "67603779457"], - ["531427120214450", "82596094458"], - ["643261775828307", "152697324377"] - ] - ], - ["0x2437Db820DE92d8DD64B524954fA0D160767c471", [["405859542087439", "14480118767"]]], - ["0x0b406697078c0C74e327856Fc57561a3A81FB925", [["439487841879353", "193776500000"]]], - [ - "0xd16C24e9CCDdcD7630Dd59856791253F789b1640", - [ - ["454838947667388", "398206341722"], - ["458856096476238", "330970704739"], - ["459319023744532", "131751153673"], - ["490256846516323", "5561731260"] - ] - ], - [ - "0xD73d566e1424674C12F1D45aEA023C419e6EfeF5", - [ - ["439262284146563", "9264605510"], - ["707897763173856", "1778910224"] - ] - ], - ["0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4", [["437428256972808", "25727586841"]]], - ["0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c", [["446386709284268", "316578014158"]]], - [ - "0x18ED928719A8951729fBD4dbf617B7968D940c7B", - [ - ["436394987906845", "1033269065963"], - ["432507957558432", "1015130348413"] - ] - ], - ["0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b", [["446354539704178", "15974580090"]]], - ["0x8A1B804543404477C19034593aCA22Ab699f0B7D", [["455953914009110", "132495619648"]]], - ["0xC8D71db19694312177B99fB5d15a1d295b22671A", [["458204265300255", "651831175983"]]], - ["0x2d0DDb67B7D551aFa7c8FA4D31F86DA9cc947450", [["462530193955529", "133555430770"]]], - [ - "0xebDA75C5e193BBB82377b77e3c62c0b323240307", - [ - ["458021403565594", "33140768588"], - ["458124884153206", "13238862203"] - ] - ], - ["0xeAB3981257d761d809E7036F498208F06ce0E5bb", [["458056744334182", "1908381961"]]], - ["0x33033E306c89Dc5b662f01e74B12623f9a39CCE4", [["462263867766454", "6000000000"]]], - ["0x5F0f6F695FebF386AA93126237b48c424961797B", [["463538684768581", "30263707163"]]], - ["0xDaD87a8cCe8D5B9C57e44ae28111034e2A39eD50", [["464341586704871", "40218170413"]]], - ["0x96b793d04E0D068083792E4D6E7780EEE50755Fa", [["464061872519163", "30982753569"]]], - ["0x47b2EFa18736C6C211505aEFd321bEC3AC3E8779", [["461663522612249", "132789821695"]]], - ["0x2C01E651a64387352EbAF860165778049031e190", [["462269867766454", "6000000000"]]], - ["0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0", [["458054544334182", "2200000000"]]], - ["0xf0ec8fFED51B4Ba996005F04d38c3dBeF3A92773", [["462663749386299", "5971851889"]]], - ["0xDf3e8B69943AD8278D198681175E6f93135CDDfC", [["464470389283162", "126497445070"]]], - [ - "0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df", - [ - ["461796312433944", "202636723695"], - ["470700696631708", "1940500171"], - ["469472885913127", "1776377083"], - ["469469352906555", "1766184702"], - ["469471119091257", "1766821870"], - ["472836318883874", "1769006754"], - ["469474662290210", "1776940468"], - ["521585204013082", "1909649071"], - ["521789411796482", "1913525664"], - ["521587113662153", "1909460313"] - ] - ], - ["0xD48E614c2CbAF0A588E8Be1BeD8675b35EEE93FC", [["462275867766454", "6000000000"]]], - [ - "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3", - [ - ["457500650018099", "132692764932"], - ["656283295570897", "12415183500"] - ] - ], - ["0xf6Dd6A99A970d627A3F0D673cb162F0fe3D03251", [["463568948475744", "33854411665"]]], - [ - "0xd42E21c0b98c6b7EDbE350bCeD787CE0B9644877", - [ - ["463368747590625", "6594438597"], - ["568316734551538", "14697178768"], - ["568331431730306", "4409766489"] - ] - ], - ["0x74382a61e2e053353BECBC71a45adD91c0C21347", [["462675052970405", "693694620220"]]], - ["0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362", [["464028180668427", "33691850736"]]], - [ - "0xd776347E2FD043Cb2903Fd6999533a07eD4D6B48", - [ - ["467339790249098", "30575443162"], - ["467339102657012", "687592086"] - ] - ], - ["0x46b7c8c6513818348beF33cc5638dDe99e5c9E74", [["469476439230678", "11863530938"]]], - ["0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228", [["476490739234120", "21739077662"]]], - ["0x97c46EeC87a51320c05291286f36689967834854", [["476619349663811", "60177474475"]]], - [ - "0x5355C2B0e056d032a4F11E096c235e9a59F5E6af", - [ - ["469498391761616", "28099958602"], - ["502195415776668", "177042580917"] - ] - ], - ["0xEEf102b4B5A2f714aFd7c00C94257D7379dc913E", [["469550813615889", "3478040717"]]], - [ - "0x7193b82899461a6aC45B528d48d74355F54E7F56", - [ - ["470702637131879", "100323000000"], - ["716295671103690", "1629422984"], - ["741119395427445", "101083948638"] - ] - ], - ["0x03fFDf41a57Fabf55C245F9175fc8644F8381C48", [["469267431670089", "67839692592"]]], - ["0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21", [["470937847310112", "84226188785"]]], - ["0x0ACe049e9378FfDbcFcb93AEE763d72A935038AE", [["469335271362681", "678503700"]]], - ["0xC25148EB441B3cAD327E2Ff9c45f317f087dF049", [["486935208595291", "1992932667"]]], - ["0x1FA517A273cC7e4305843DD136c09c8c370814be", [["469335949866381", "67876110491"]]], - ["0xc99c16815c5aEa507c2D8AeB1e69eed4CC8e4E56", [["502039772720798", "143640842990"]]], - ["0xF96A38c599D458fDb4BB1Cd6d4f22c9851427c61", [["493962561733636", "14210987162"]]], - [ - "0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C", - [ - ["526495525703189", "12745164567"], - ["595967650797840", "19231055968"] - ] - ], - [ - "0x21D4Df25397446300C02338f334d0D219ABcc9C3", - [ - ["531921340528773", "37602900897"], - ["556478516642786", "382964380420"], - ["531509716308908", "411624219865"], - ["556861481023206", "253709415566"], - ["596005613074562", "93233987544"], - ["613864088561276", "72606632304"], - ["613952906039465", "637060677585"], - ["634295738092098", "173997222406"] - ] - ], - ["0x1aA6F8B965d692c8162131F98219a6986DD10A83", [["491209036915919", "15368916223"]]], - ["0x76ce7A233804C5f662897bBfc469212d28D11613", [["493720658198961", "124843530190"]]], - ["0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76", [["490810794234272", "16666666666"]]], - ["0x51b2Adf97650A8D732380f2D04f5922D740122E3", [["491115783635980", "2598292"]]], - ["0x48F8738386D62948148D0483a68D692492e53904", [["556351773854003", "35654060356"]]], - ["0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529", [["521791325322146", "75343489480"]]], - [ - "0x120Be1406E6B46dDD7878EDC06069C811f608844", - [ - ["556387427914359", "67814142769"], - ["646143725856011", "44928801374"] - ] - ], - ["0xF7f1dAEc57991db325a4d24Ca72E96a2EdF3683d", [["519666974560053", "40401845392"]]], - ["0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9", [["556455242057128", "12999411038"]]], - ["0x09d8591fc4D4d483565bd0AD22ccBc8c6Dd0fF55", [["545547668814029", "71165039974"]]], - ["0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e", [["504973746057585", "15594289962"]]], - ["0xE223138F87fA7Bf30a98F86b974937ED487de9E5", [["492791683332142", "928974866819"]]], - ["0x21754dF1E545e836be345B0F56Cde2D8419a21B2", [["526456157420239", "39368282950"]]], - ["0xd14Cb607F99f9c5c9a47D1DEF59a02A3fBbf14Fd", [["538353942308571", "47392004821"]]], - ["0xb3F7DF25CB052052dF6d73d83EdBF6a2238c67de", [["593817993539695", "625506"]]], - [ - "0xD0ce08617E88D87696fDB034AF7Cc66f6ae2c203", - [ - ["593817994165201", "368626892186"], - ["634004669814871", "283454515911"] - ] - ], - ["0xBC0A7F1CB55d8f6eAdde498DbFE0FF2f78149A84", [["568772791444757", "20759609713"]]], - [ - "0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A", - [ - ["568256114535784", "60620015754"], - ["594190730526984", "60249402002"], - ["577442842692513", "49630409652"] - ] - ], - ["0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F", [["568107037724199", "138928506054"]]], - ["0xbB69c6d675Db063a543d6D8fdA4435025f93b828", [["568056424982194", "14275224982"]]], - [ - "0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7", - [ - ["585809012696029", "565602262874"], - ["593094411895687", "631379688396"], - ["594950942092362", "1016708705478"] - ] - ], - ["0xe4E51bb8cF044FBcdd6A0bb995a389dDa15fB94e", [["568247857730253", "8256805531"]]], - [ - "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e", - [ - ["592354657193833", "311109277563"], - ["557474269916507", "488241871617"], - ["584407516797670", "149423611243"] - ] - ], - [ - "0xBaD292Dbb933Aea623a3699621901A881E22FfAC", - [ - ["594560949667628", "88596535296"], - ["612635280033573", "333170781639"] - ] - ], - ["0x676B0Add3De8d340201F3F58F486beFEDCD609cD", [["568070700207176", "36337517023"]]], - ["0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2", [["593804898539595", "13095000100"]]], - ["0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F", [["577492473102165", "772670414147"]]], - ["0xcdeC732853019E9F287A9Fdf02f21cfd5eFa0436", [["594250979928986", "91515290935"]]], - ["0x9336a604077688Ae5bB9e18EbDF305d81d474817", [["568756414668700", "16376776057"]]], - [ - "0xFe1640549e9D79fE9ba298C8d165D3eD3ABFa951", - [ - ["586871081432488", "10705853858"], - ["591064164890363", "12874530667"] - ] - ], - ["0xB17fC3D59de766b659644241Dba722546E32b163", [["591586186080015", "21389399522"]]], - ["0x2817a8dFe9DCff27449C8C66Fa02e05530859B73", [["557115190438772", "327035406660"]]], - [ - "0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0", - [ - ["578265143516312", "25727141956"], - ["636425945808043", "37469832650"] - ] - ], - ["0xf9380E9F90aDE257C8F23d53817b33FBbF975a19", [["594649546202924", "29491962342"]]], - ["0xdDd607Ee226b65Ee1292bB2d67682b86cd024930", [["619722209120498", "31334924212"]]], - [ - "0xc76b280880686397F7b95AfC72B581b1a52e6Bad", - [ - ["608869982259746", "68126058779"], - ["608803305172730", "64052827856"] - ] - ], - [ - "0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27", - [ - ["599009603400904", "1727536772397"], - ["596237315381223", "1084177233275"], - ["597321492614498", "1688110786406"], - ["603696952850202", "1438806398621"] - ] - ], - ["0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F", [["596098847062106", "135093374272"]]], - ["0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C", [["614589966717050", "87874946085"]]], - [ - "0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f", - [ - ["614943878475358", "4769665935949"], - ["614943877475358", "1000000"] - ] - ], - ["0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9", [["594940109425366", "10832666996"]]], - ["0xac34CF8CF7497a570C9462F16C4eceb95750dd26", [["619713544411307", "8664709191"]]], - ["0x880bba07fA004b948D22f4492808b255d853DFFe", [["612050576784932", "41775210170"]]], - ["0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4", [["622903969411506", "48462729763"]]], - ["0xf4ACCDFA928bF863D097eCF4C4bB57ad77aa0cb2", [["622995115594871", "5788170260"]]], - ["0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6", [["622600228434741", "6531451600"]]], - ["0xed67448506A9C724E78bF42d5Cf35b4b617cE2F6", [["594872434210527", "67675214839"]]], - [ - "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c", - [ - ["623714888044871", "48492000000"], - ["629694089075109", "48492118269"], - ["627708183606040", "48492118269"], - ["626050365185271", "48492118269"], - ["631376008043778", "48492118269"], - ["633046989282047", "48492118269"] - ] - ], - ["0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c", [["595986881853808", "18731220754"]]], - ["0xDb8D484c46cE6B0bd00f38a51b299EB129928AC0", [["612353902657132", "3096343805"]]], - ["0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", [["612615964925164", "1270108409"]]], - ["0x03B431AC8c662a40765dbE98a0C44DecfF22067C", [["621063660888218", "87181798710"]]], - ["0xE043b38b90712bdFf29a2D930047FF9A56660b0F", [["605435936348975", "40573163648"]]], - [ - "0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5", - [ - ["600737140173301", "417347700552"], - ["614721578198335", "222299277023"] - ] - ], - ["0xd00eb0185dadcEcF6d75E23632eC4201d66a4CD1", [["622952432141269", "26988232068"]]], - [ - "0xcCA04Db4bbD395DFEC2B0c1b58550C38067C9849", - [ - ["622551358840364", "48869594377"], - ["656378346012897", "25113600000"] - ] - ], - ["0xf1608f6796E1b121674036691203C8ecE7516cC2", [["621655357810171", "896001030193"]]], - ["0xDC27b4a65F214743d68BEf4ba2004D4cCD6d7F65", [["613753403161276", "110685400000"]]], - ["0xd56e3E325133EFEd6B1687C88571b8a91e517ab0", [["612356999000937", "232190649529"]]], - [ - "0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2", - [ - ["613432974464989", "308085069906"], - ["638146861484331", "78820430185"], - ["638225681914516", "153413133261"] - ] - ], - ["0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F", [["619753544044710", "1237233093659"]]], - ["0x0EdAc71d6c67BFA7A4dDD79A75967D9c0984F1ce", [["594698791721651", "33964733538"]]], - ["0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13", [["624730707044871", "150555000000"]]], - ["0xE87CA36bcCA4dA5Ca25D92AF1E3B5755074565d6", [["626098857303540", "5482750000"]]], - [ - "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E", - [ - ["632235744722047", "101220000000"], - ["626818371238540", "151830000000"], - ["628624162399709", "101220000000"], - ["628725382399709", "101220000000"], - ["632134524722047", "101220000000"] - ] - ], - ["0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A", [["632123021912047", "2013435000"]]], - [ - "0x20627f29B05c9ecd191542677492213aA51d9A61", - [ - ["638070079561581", "76781922750"], - ["638732059059980", "46559625597"], - ["660875655326802", "330494092479"], - ["658594751095085", "464850000000"], - ["647457571263119", "51897457000"], - ["656861419534803", "90858470270"], - ["657061272430113", "903793388372"], - ["653786204275277", "378309194016"], - ["657965065818485", "629685276600"], - ["660615877363863", "259777962939"], - ["662867404006731", "166149576292"] - ] - ], - ["0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b", [["636425113945926", "831862117"]]], - ["0xA97661df0380FF3eB6214709A6926526E38a3f68", [["640192401336369", "43896808582"]]], - ["0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe", [["634589454042581", "59926244178"]]], - ["0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b", [["634779007760082", "5734467826"]]], - ["0xE3fEBd699133491dbf704A57b805bE1D284094Dd", [["643046863279717", "1992052824"]]], - ["0x5a57107A58A0447066C376b211059352B617c3BA", [["640246497738027", "2191004882"]]], - ["0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933", [["643524849940607", "17931960176"]]], - ["0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d", [["643542781900783", "312333420"]]], - ["0x94cf16A6C45474B05d383d8779479C69f0c5a07A", [["641250084410627", "85134042441"]]], - ["0xc1A5b1d88045be9e2F50A26D79FA54e25Dc31741", [["643543094234203", "646639100"]]], - [ - "0x2745a1f9774FF3b59cbDfC139c6f19f003392e2C", - [ - ["641594591850220", "1581698780"], - ["704175121358099", "1220733194"], - ["704745338561624", "1117067455"], - ["704188818594435", "5072600938"], - ["704759465754455", "3144911832"], - ["705568986128370", "2439339467"], - ["708112705374174", "1010894641"] - ] - ], - [ - "0x37d515Fa5DC710C588B93eC67DE42068090e3ED8", - [ - ["643693518734592", "1539351282905"], - ["645232870017497", "910855838514"], - ["646188654657385", "387855469635"], - ["651618749570258", "511974175317"], - ["650918630442108", "700119128150"], - ["650194085366445", "721956082204"] - ] - ], - ["0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b", [["643661899835648", "9392558210"]]], - [ - "0x04298C47FB301571e97496c3AE0E97711325CFaA", - [ - ["643418883712684", "105966227923"], - ["705576972299375", "8071882778"], - ["705667171132654", "8376502838"], - ["707828423199417", "14171818173"], - ["707806553334225", "21869865192"], - ["705696667564386", "8036081997"], - ["708237083109554", "11486911677"], - ["730050830184530", "103450896022"] - ] - ], - ["0xecEcd4D5f22a75307B10ebDd536Fc4Fa1696B0ED", [["634469735314504", "35167457488"]]], - ["0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50", [["641161763710685", "88320699942"]]], - ["0xBe9998830C38910EF83e85eB33C90DD301D5516e", [["638808515968683", "74848126691"]]], - ["0xe3D73DAaE939518c3853e0E8e532ae707cC1A436", [["643052207829410", "2757807763"]]], - [ - "0xe341D029A0541f84F53de23E416BeE8132101E48", - [ - ["641375909986268", "16603151206"], - ["656295710754397", "12525126500"], - ["688982432538611", "83887520358"], - ["686423580717540", "47650794261"], - ["689066320058969", "107921589892"], - ["692086906190526", "81937578138"], - ["692949197676428", "45883804745"], - ["694055929655242", "4229348834"], - ["693193337526291", "56385109300"], - ["694060159004076", "110714960415"], - ["692938709846221", "3069278668"], - ["692256779188358", "334766123964"], - ["694868935500203", "229278671951"], - ["695306793383310", "6388626991"], - ["694171502240791", "131633088574"], - ["693674384756903", "60742019099"], - ["692995081481173", "88335279210"], - ["694705321077846", "163614422357"], - ["692022512840924", "64393349602"], - ["695434809969516", "4297820073"], - ["695439107789589", "3472972941"], - ["696658206307928", "6798291250"], - ["695409688454823", "7808539974"], - ["695417496994797", "8669701992"], - ["695966151088158", "9121546150"], - ["695827465071728", "47575184873"], - ["695985258236411", "8012057539"], - ["695582719746255", "4959136304"], - ["695958279055117", "7872033041"], - ["695975272634308", "9985602103"], - ["696966638598682", "5724585625"], - ["697063213586620", "9618590625"], - ["698110109849966", "5662841250"], - ["697058891181929", "3855440625"], - ["697102477151544", "5700529375"], - ["697099026060267", "2856929375"], - ["697108177680919", "8185223750"], - ["696986907191849", "7861878125"], - ["697093680980892", "5345079375"], - ["697176379573845", "5691708750"], - ["702171479611194", "190255211250"], - ["702657540680252", "45786203750"], - ["699410768183716", "5155261915"] - ] - ], - ["0x0F1d41cc51e97DC9d0CAd80DC681777EED3675E3", [["647172198157478", "26005505974"]]], - [ - "0xE79cCABDbF2AA68fDae8D7Fc39654A62b07e12e3", - [ - ["649291066559057", "74148750000"], - ["649898706059057", "74148750000"], - ["648401068619057", "51926940000"], - ["649594886309057", "74148750000"] - ] - ], - [ - "0xc5581ef96bF2ab587306668fdd16E6ed7580c856", - [ - ["647831216014808", "253149984249"], - ["647509510720119", "250325018887"] - ] - ], - [ - "0xdc95f2Ec354b814Fc253846524b13b03be739Cd6", - [ - ["654164513469293", "373628743286"], - ["661537927845790", "525104885508"], - ["663103266591658", "169049978325"], - ["742559423794395", "201609576198"], - ["972139314219125", "533890656472"], - ["979431393566237", "202995680000"], - ["979634389246237", "10000000000"] - ] - ], - ["0x6223dd77dd5ED000592d7A8C745D68B2599C640D", [["656226928313897", "7805953000"]]], - ["0xF2Fb34C4323F9bf4a5c04fE277f96588dDE5316f", [["659295737757685", "32623039080"]]], - ["0x73c09f642C4252f02a7a22801b5555f4f2b7B955", [["656317745950397", "12745012500"]]], - ["0xFbDaA991B6C4e66581CFB0B11B513CA735cC0128", [["647768381299006", "7161118438"]]], - ["0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b", [["652130723745575", "551376150000"]]], - ["0x80915E89Ffe836216866d16Ec4F693053f205179", [["660239782498384", "6253532657"]]], - ["0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5", [["647198203663452", "40303600000"]]], - ["0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db", [["659328360796765", "29744016905"]]], - ["0x31b9084568783Fd9D47c733F3799567379015e6D", [["659195405831758", "100033987828"]]], - ["0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9", [["656434070362897", "32982900000"]]], - ["0x8a9C930896e453cA3D87f1918996423A589Dd529", [["660239781031041", "1467343"]]], - ["0x035bb6b7D76562320dFFb5ec23128ED1541823cf", [["647759835739006", "8545560000"]]], - [ - "0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C", - [ - ["659358104813670", "175120144248"], - ["659533224957918", "706556073123"] - ] - ], - ["0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB", [["656650962775397", "168039500000"]]], - ["0x58e4e9D30Da309624c785069A99709b16276B196", [["656308235880897", "9510069500"]]], - ["0x375C1DC69F05Ff526498C8aCa48805EeC52861d5", [["685835659103948", "1293514654"]]], - ["0x9D1334De1c51a46a9289D6258b986A267b09Ac18", [["685677656801301", "15810994142"]]], - ["0xDF2501f4181Cd63D41ECE0F4EDcf722eEAd58EbD", [["662063032731298", "546645857755"]]], - [ - "0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5", - [ - ["665479968547360", "342600000000"], - ["668086557908591", "690100000000"], - ["688037856465588", "318351804364"], - ["688356208269952", "320953676893"], - ["687964932466621", "72923998967"], - ["667884722593831", "201835314760"], - ["664908507938608", "571460608752"] - ] - ], - ["0x23b7413b721AB75FE7024E7782F9EdcE053f220C", [["667453397655544", "1036783406"]]], - [ - "0xb319c06c96F676110AcC674a2B608ddb3117f43B", - [ - ["672599944217095", "94598000000"], - ["697955818547979", "83800270379"], - ["713871988427841", "141663189223"], - ["711716112826545", "2695189900"], - ["716297300526674", "167255000000"], - ["715574293245379", "109437957582"], - ["715560868266327", "13424979052"], - ["718162604520032", "148493723460"], - ["717698520063826", "155690600000"], - ["721513519187488", "306309267806"], - ["718955338616958", "145018797369"], - ["719388450881073", "150002086275"], - ["719689934699438", "148762745637"], - ["722109403626677", "322801544810"] - ] - ], - [ - "0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e", - [ - ["663808218829746", "74690241246"], - ["663882909070992", "822947782651"] - ] - ], - ["0xDd6Ab3d27d63e7Ed502422918BBcc9D881c9F4B7", [["685842618961823", "9318497890"]]], - ["0xDBB493488991F070176367aF5c57De2B8de5aAb1", [["663033553583023", "65712528539"]]], - ["0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6", [["663099266111562", "4000480096"]]], - ["0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9", [["672803248217095", "34873097638"]]], - ["0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe", [["685836952618602", "5666343221"]]], - [ - "0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631", - [ - ["688710035272973", "272397265638"], - ["840960296451234", "1602671680567"], - ["845256251260005", "1392774986727"], - ["851578437109572", "141565176499"], - ["930741923476848", "58474432063"] - ] - ], - ["0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b", [["692925046604953", "1440836515"]]], - [ - "0x122de1514670141D4c22e5675010B6D65386a9F6", - [ - ["694574785077846", "88383049000"], - ["695196582394395", "56964081161"], - ["695183279638366", "5577741477"], - ["695337036890007", "49547619666"], - ["709442632657024", "6009716700"], - ["729443134053802", "15374981070"], - ["738623048174838", "17365876628"], - ["736215587653365", "69815285464"], - ["740877182108564", "2338515960"], - ["803330678270578", "48039789791"] - ] - ], - ["0x29841AfFE231392BF0826B85488e411C3E5B9cC4", [["692923732371787", "1314233166"]]], - ["0x38293902871C8ee22720A6553585F24De019c78e", [["694033329648897", "6459298878"]]], - ["0xe8AB75921D5F00cC982bE1e8A5Cf435e137319e9", [["693862296947457", "4395105822"]]], - ["0xd480B92941CBe5CeAA56fecED93CED8B76E59615", [["692181315084066", "798685592"]]], - ["0xE2Bf7C6c86921E404f3D2cEc649E2272A92c64fE", [["694170873964491", "628276300"]]], - ["0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408", [["692168843768664", "11565611800"]]], - [ - "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b", - [ - ["695276639702078", "19019153520"], - ["700510367842318", "43462477350"], - ["701396638586078", "1639640204"], - ["704238346156996", "3695060762"], - ["718014928907392", "9255777800"] - ] - ], - [ - "0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59", - [ - ["693757884789202", "9910714625"], - ["696555237254531", "6512126913"], - ["828436629940747", "2572274214"] - ] - ], - [ - "0xD9e38D3487298f9CFB2109f83d93196be5AD7Cd3", - [ - ["695628448981609", "71680000"], - ["697932690524647", "726033140"] - ] - ], - ["0xE1aac3d6e7ad06F19052768ee50ea3165ca1fe70", [["695610864358308", "3827017628"]]], - ["0x87A774178D49C919be273f1022de2ae106E2581e", [["695901977229816", "17354145"]]], - ["0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8", [["695886648382448", "1075350000"]]], - ["0x3489B1E99537432acAe2DEaDd3C289408401d893", [["695792940661609", "20000000000"]]], - [ - "0x40Da1406EeB71083290e2e068926F5FC8D8e0264", - [ - ["695590676020409", "6291400830"], - ["741114169868484", "71"], - ["803977000488083", "1417250000"], - ["803978417738083", "1417250000"] - ] - ], - [ - "0x90777294a457DDe6F7d297F66cCf30e1aD728997", - [ - ["696995360461084", "1887298581"], - ["696994769069974", "591391110"], - ["696979964509301", "6942682548"], - ["697053271972969", "5619208960"], - ["697042806708021", "4889469871"], - ["697165199164808", "4024217651"], - ["697084716091134", "8964889758"], - ["697062746622554", "466964066"], - ["697169223382459", "7156191386"], - ["697153359943473", "6296897794"], - ["697073357257058", "11358834076"], - ["697148038583227", "5321360246"], - ["697136625622211", "11412961016"], - ["701643270228234", "40682056506"], - ["701618207425246", "25062802988"] - ] - ], - ["0x326481a3b0C792Cc7DF1df0c8e76490B5ccd7031", [["697462003533001", "233865679687"]]], - ["0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E", [["698086181129630", "7101122035"]]], - [ - "0x7A1184786066077022F671957299A685b2850BD6", - [ - ["697072832177245", "525079813"], - ["697117243021141", "8627689764"] - ] - ], - [ - "0xDb22E2AC346617C2a7e20F5F0a49009F679cEED9", - [ - ["698258564525194", "22325453"], - ["704172791572212", "479746353"] - ] - ], - ["0xe78483c03249C1D5bb9687f3A95597f0c6360b84", [["697856064607657", "30000000000"]]], - ["0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402", [["697695869212688", "151773247545"]]], - ["0xeA747056c4a5d2A8398EC64425989Ebf099733E9", [["697847642460233", "8422147424"]]], - ["0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e", [["697954557880858", "1260667121"]]], - ["0x3A529A643e5b89555712B02e911AEC6add0d3188", [["698277791318224", "285714285"]]], - ["0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C", [["697886064607657", "22691440968"]]], - [ - "0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB", - [ - ["702124915909346", "46563701848"], - ["707868262543730", "10228948233"], - ["707901130338305", "7915875000"], - ["708439927839846", "23870625000"], - ["708766515171901", "30143670312"], - ["708825794614772", "28726857973"], - ["708587869047280", "20307375000"], - ["708608176422280", "26457093750"], - ["709603038334043", "9060790481"], - ["719197408745202", "37212168484"], - ["719358683562461", "29767318612"] - ] - ], - ["0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2", [["702657437444244", "103236008"]]], - [ - "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4", - [ - ["700818582159479", "22501064889"], - ["705073200197684", "1478254943"], - ["704779160700189", "3358027804"], - ["705082428193884", "8390490226"], - ["704963278251319", "4844561817"], - ["704968122813136", "10208237564"], - ["705289120296487", "6031653730"], - ["705153853331130", "4012581233"] - ] - ], - ["0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521", [["701581145085419", "37062339827"]]], - [ - "0x92e8E8760aBa91467A321230EF3ba081aD3998Fb", - [ - ["699405441346617", "5326837099"], - ["699271005074756", "89554550"] - ] - ], - [ - "0x4034adD1a1A750AA19142218A177D509b7A5448F", - [ - ["704863958816244", "4950268423"], - ["704885255076392", "6933768558"], - ["704787721387632", "1886219723"], - ["704220779674038", "4644226944"], - ["704785880545820", "1840841812"], - ["704985502246493", "5819342790"], - ["704829684434064", "2616399199"], - ["704832962792635", "4354211152"], - ["704880805235240", "4449841152"], - ["705011815742552", "3569433363"], - ["704782518727993", "3361817827"], - ["704903506349772", "4927912318"], - ["704844525778160", "4120838084"], - ["704793803859856", "3945346023"], - ["704826615065261", "3069368803"], - ["705067992445404", "2637229058"], - ["704254774227068", "6948011478"], - ["704758131345903", "1334408552"], - ["704217786697192", "2992976846"], - ["704789607607355", "4196252501"], - ["704746455629079", "2736651405"], - ["704868909084667", "4592612954"], - ["705114316087596", "5924684744"], - ["705124477705145", "3724339951"], - ["705297202258614", "3645902617"], - ["705120240772340", "2352760830"], - ["705385046094478", "6416440826"], - ["705122593533170", "1884171975"], - ["705408379044656", "2923459312"], - ["705211104981808", "2039061143"] - ] - ], - [ - "0xDdBee81969465Bf34C390bdbebb51693aa60872A", - [ - ["704205655117520", "4990270393"], - ["705338392776362", "8462180116"], - ["705425628545624", "10087109324"], - ["705391462535304", "3556630272"], - ["705329714382930", "8465905213"], - ["705488811259829", "8096943325"], - ["707930543676958", "9357187500"], - ["707880777724785", "6672000000"], - ["707742863600211", "1213482835"], - ["705832722517461", "7042747045"], - ["705704703646383", "7056375463"], - ["707744077083046", "6581626316"], - ["705730439516801", "15181735301"], - ["708081968129614", "13680562500"], - ["707952799836604", "8313750000"], - ["707842595017590", "6681000000"], - ["707961290879052", "9556500000"], - ["705821777920352", "10944597109"], - ["708051734339483", "12655593750"], - ["707764396453467", "3405655439"], - ["707750658709362", "8641971662"], - ["707919740645652", "4502537888"], - ["708095822174912", "7458750000"], - ["708418722714846", "21205125000"], - ["708554206703530", "14166562500"], - ["708527392045696", "1759220334"], - ["708140759203304", "16552500000"], - ["708334042048997", "4541772237"], - ["708583377718030", "4491329250"], - ["708402870339846", "15852375000"], - ["708529151266030", "16021687500"], - ["708691820417569", "6826288981"], - ["708934865698884", "13439373437"], - ["708698646706550", "10768570312"], - ["708641764976217", "9545312467"], - ["708651444037897", "5027880322"], - ["708486177656200", "4154496146"], - ["709492513851051", "13816601562"], - ["709710243864014", "12509063265"], - ["709688339552863", "13731252132"], - ["709671899958166", "6654318624"], - ["709666192852147", "5707106019"], - ["709678554276790", "9785276073"], - ["709734977740006", "6498075600"], - ["709654242636632", "11917909114"], - ["709870314867704", "9096334989"], - ["710460867868243", "33400921875"], - ["709977485640084", "41084042452"], - ["710903226562975", "23670471136"], - ["711348151871048", "1857330184"], - ["710844935768367", "16250253890"], - ["710834506069250", "10429699117"], - ["711196004355719", "39224374968"], - ["711260418189665", "18606000000"], - ["710494268790118", "33581054687"], - ["713215936840483", "5532211893"], - ["711718808016445", "60485600000"], - ["712749505526426", "105079500000"], - ["713120110487243", "3786353240"], - ["714990004106503", "166611900000"], - ["715333455019979", "151205600000"], - ["714727913469225", "78606500967"], - ["711848288194577", "2156328854"], - ["712856258402101", "130210400000"], - ["715158664546867", "173240000000"], - ["715484660619979", "2843782982"], - ["714808266664085", "180127000000"], - ["711627994076332", "50659600000"], - ["712478227177567", "3579623519"], - ["716466017242076", "144680200000"], - ["715899465190677", "2469722016"], - ["716132397750173", "163273353517"], - ["716768803489169", "52642714966"] - ] - ], - ["0xa7be8b7C4819eC8edd05178673575F76974B4EaA", [["704234841656996", "3504500000"]]], - ["0xAeB2914f66222Fa7Ad138e128a0575048Bc76032", [["704978331050700", "6652871947"]]], - ["0xDa90d355b1bd4d01F6124fEE7669090d4cbD5778", [["704798591975267", "2100818831"]]], - ["0x30beFd253Ca972800150dBA8114F7A4EF53183D9", [["704778664446188", "496254001"]]], - ["0x9C6f40999C82cd18f31421596Ca3b1C5C5083048", [["705514288315159", "2088841809"]]], - ["0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F", [["705295151950217", "2050308397"]]], - ["0x8687c54f8A431134cDE94Ae3782cB7cba9963D12", [["707626849717109", "84596400000"]]], - ["0x849eA9003Ba70e64D0de047730d47907762174C3", [["707899542084080", "1588254225"]]], - [ - "0xde13B8B32A0c7C1C300Cd4151772b7Ebd605660B", - [ - ["708361137223805", "6298709791"], - ["714079013772115", "129174557467"], - ["717299487205820", "102136812055"] - ] - ], - ["0x579De8E7dA10b45b43a24aC21dA8b1a3a9452D64", [["708463798464846", "22379191354"]]], - ["0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85", [["708651373061258", "70976639"]]], - ["0xf454a5753C12d990A79A69729d1B541a526cD7F5", [["708634633516030", "177860187"]]], - ["0x08e0F0DE1e81051826464043e7Ae513457B27a86", [["709239583276736", "2331841959"]]], - ["0xEa8f1607df5fd7e54BDd76a8Cb9dc4B0970089bD", [["709272520931976", "16488629"]]], - ["0x679AeE8b2fA079B23934A1afB2d7d48DD7244560", [["709216912697001", "6967239311"]]], - ["0x1298751f99f2f715178Cc58fB3779C55e91C26bC", [["709666160880200", "31971947"]]], - ["0xB0827d21e58354aa7ac05adFeb60861f85562376", [["709189528114459", "108280308"]]], - ["0x113560910CE2258559d7E1B38A4dD308C64d6D6a", [["714015471329582", "63542442533"]]], - [ - "0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3", - [ - ["723087615920253", "25027091964"], - ["824974359951649", "30629325526"], - ["829209600931636", "4437963"] - ] - ], - ["0xD0846D7D06f633b2Be43766E434eDf0acE9bA909", [["717854210663826", "1084538296"]]], - [ - "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8", - [ - ["721819828455294", "289575171383"], - ["722751699426468", "239200000000"], - ["732098493261855", "234760000000"], - ["729228464417829", "7477326571"], - ["735868541757303", "263907264047"], - ["736661905946701", "197622058472"], - ["735634090835842", "234450921461"], - ["737484284481751", "179430599503"], - ["737158357870662", "156891853803"], - ["736859528005173", "151122236793"], - ["736402044624442", "259861322259"] - ] - ], - ["0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234", [["718795450032336", "75000000000"]]], - [ - "0x2E40961fd5Abd053128D2e724a61260C30715934", - [ - ["719234620913686", "41555431100"], - ["720005914644509", "136033474375"], - ["732580722114908", "20082877176"], - ["737981782088871", "12839897666"], - ["737935681087505", "22871716433"], - ["740818188207884", "33005857560"], - ["740629807482964", "150688818320"], - ["786953833684661", "269398121130"], - ["781824346256882", "243235296262"], - ["782067581553144", "12267465638"], - ["805927625580808", "9220124675"], - ["921235054115922", "79143367104"] - ] - ], - [ - "0x48070111032FE753d1a72198d29b1811825A264e", - [ - ["729667797719886", "173806994620"], - ["732600804992084", "224577013993"], - ["730678712851459", "188830987043"], - ["732342480501600", "238241613308"], - ["726561304580827", "268948474274"] - ] - ], - ["0x4fE52118aeF6CE3916a27310019af44bbc64cc31", [["729656390040828", "11407679058"]]], - ["0xB651078d1856EB206fB090fd9101f537c33589c2", [["731285511699802", "16663047211"]]], - ["0x48e9E2F211371bD2462e44Af3d2d1aA610437f82", [["728214888648499", "7331625468"]]], - ["0x377f781195d494779a6CcC2AA5C9fF961C683A27", [["738895794225566", "10595565"]]], - ["0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a", [["738007970284137", "401082333"]]], - ["0x088374e1aDf3111F2b77Af3a06d1F9Af8298910b", [["737675246086875", "49190117"]]], - [ - "0x74E096E78789F31061Fc47F6950279A55C03288c", - [ - ["741947593267708", "2663427585"], - ["741688854260083", "366462731"] - ] - ], - ["0xc47214a1a269F5FE7BB5ce462a2df514De60118C", [["742768891113037", "38412816419"]]], - [ - "0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2", - [ - ["743120710578474", "19315015127"], - ["742999734096697", "205872420"], - ["742999522640359", "211456338"], - ["744885474816398", "8759919160"] - ] - ], - ["0xb3b0EFf26C982669a9BA47B31aC6b130A4721819", [["741114169868555", "171030000"]]], - [ - "0x8d98fFF066733b1867e83D1E9563dbe2ad93d933", - [ - ["743141732275121", "229947181"], - ["787609148721716", "501252464"] - ] - ], - [ - "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5", - [ - ["743974165800386", "2585076"], - ["802847562379845", "111751582"] - ] - ], - ["0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", [["741234744629846", "912195631"]]], - ["0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3", [["781580532443581", "43682114862"]]], - [ - "0x8d4122ffE442De3574871b9648868c1C3396A0AF", - [ - ["802846543828520", "400610000"], - ["802854972217169", "818667500"], - ["802847106657355", "455722490"], - ["802860116515729", "819222700"], - ["804713823453701", "4590853221"] - ] - ], - ["0x96E4FD50CD0A761528626fc072Da54ADFD2F8593", [["802848328820547", "1466608"]]], - [ - "0xde03A13dfeeE02912Ae07a40c09dB2f99d940b00", - [ - ["790894542941892", "46643670755"], - ["787278749489874", "24409520718"], - ["787516426212822", "92722508894"] - ] - ], - ["0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264", [["801772970204304", "4860922695"]]], - [ - "0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA", - [ - ["805425939868589", "11165929503"], - ["805437105798092", "33745270881"], - ["805470851068973", "16872062514"] - ] - ], - [ - "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", - [ - ["804723861648793", "3702219951"], - ["805404344665518", "7987624361"], - ["805912145565172", "5670211506"] - ] - ], - ["0x06849E470D08bAb98007ff0758C1215a2D750219", [["821672492311173", "160000000000"]]], - ["0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12", [["824965612570458", "897670384"]]], - ["0x4a52078E4706884fc899b2Df902c4D2d852BF527", [["825245695255323", "434385954"]]], - ["0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7", [["825422040281690", "5229504715"]]], - ["0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", [["825246129641277", "5082059700"]]], - [ - "0x5D02957cF469342084e42F9f4132403Ea4c5fE01", - [ - ["828636097593870", "3345435335"], - ["847955778737101", "44336089227"] - ] - ], - ["0x18D467c40568dE5D1Ca2177f576d589c2504dE73", [["828255388496272", "5921542512"]]], - ["0x4888c0030b743c17C89A8AF875155cf75dCfd1E1", [["828431390478544", "5239462203"]]], - ["0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3", [["828771792470419", "39768883344"]]], - ["0xf3dfdAf97eBda5556FCE939C4cf1CB1436138072", [["828811561503065", "22872714395"]]], - ["0x098616F858B4876Ff3BE60BA979d0f7620B53494", [["828995077896677", "10776000000"]]], - [ - "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", - [ - ["829455831521265", "643659978"], - ["973035905649934", "24032791791"] - ] - ], - ["0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E", [["829479271484636", "34649098834"]]], - ["0xfb9f3c5E44f15467066bCCF47026f2E2773bd3F0", [["829693924992790", "146528659"]]], - [ - "0x93C950E36f3C155B2141f1516b7ea5B6D15eD981", - [ - ["829730795586655", "32526495264"], - ["921379066108433", "35738780868"], - ["929384439310039", "89704746985"] - ] - ], - ["0xd9f3F28735fDa3bF7207D19b9aD36fCF2701E329", [["829846521525914", "10000000"]]], - ["0x86642f87887c1313f284DBEc47E79Dc06593b82e", [["829914412604502", "2853000000"]]], - ["0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B", [["832058901590534", "34510450293"]]], - [ - "0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674", - [ - ["830439369465102", "1300464490557"], - ["835708527309577", "4504970931573"], - ["832269218432754", "3056591031171"] - ] - ], - ["0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD", [["843657385645275", "75051323081"]]], - ["0x7Fe78b37A3F8168Cd60C6860d176D22b81181555", [["844244491110052", "232497931186"]]], - ["0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8", [["844505594006708", "1000000"]]], - ["0x925a3A49f8F831879ee7A848524cEfb558921874", [["850685454918538", "477950000000"]]], - ["0x77f2cC48fD7dD11211A64650938a0B4004eBe72b", [["853797557101674", "33461141683"]]], - ["0xd26Cc622697e8f6E580645094d62742EEc9bd4fc", [["862703391397829", "119260488699"]]], - ["0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b", [["862822651886528", "99999995904"]]], - ["0x6974611c9e1437D74c07b5F031779Fb88f19923E", [["869691940601923", "138799301180"]]], - ["0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06", [["898434888668647", "1501381879417"]]], - ["0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0", [["906535984748110", "149022357044"]]], - ["0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672", [["887464147869040", "9112774391"]]], - ["0xe182F132B7aB8639c3B2faEBa87f4c952B4b2319", [["920344600501839", "45066341711"]]], - ["0xEF57259351dfD3BcE1a215C4688Cc67e6DCb258B", [["906377715248110", "158269500000"]]], - ["0x39167e20B785B46EBd856CC86DDc615FeFa51E76", [["886877107069810", "503880761345"]]], - ["0x54e67cA4686b8189D1daB9578B073CDe78fDF874", [["880016381329810", "6860725740000"]]], - [ - "0xa714B49Ff1Bae62E141e6a05bb10356069C31518", - [ - ["921555163102528", "160"], - ["921521067323700", "160"], - ["921555163104442", "159"], - ["921555163103168", "160"], - ["921555163103008", "160"], - ["921555163100288", "160"], - ["921555163100928", "160"], - ["921555163101248", "160"], - ["921521067324980", "160"], - ["921555163103488", "159"], - ["921555163101728", "160"], - ["921555163103965", "159"], - ["921555163100128", "160"], - ["921555163101408", "160"], - ["921555163100608", "160"], - ["921555163101568", "160"], - ["921555163104124", "159"], - ["921521067323860", "160"], - ["921555163104919", "159"], - ["921555163104283", "159"], - ["921555163105078", "159"], - ["921521067324660", "160"], - ["921555163104601", "159"], - ["921555163101088", "160"], - ["921521067323540", "160"], - ["921555163103647", "159"], - ["921521067324340", "160"], - ["921555163102848", "160"], - ["921555163105873", "159"], - ["921521067323380", "160"], - ["921555163105237", "159"], - ["921555163105714", "159"], - ["921555163105555", "159"], - ["921555163106986", "159"], - ["921555163102208", "160"], - ["921521067324180", "160"], - ["921555163104760", "159"], - ["921555163102368", "160"], - ["921555163099968", "160"], - ["921555163101888", "160"], - ["921521067324500", "160"], - ["921555163106350", "159"], - ["921555163105396", "159"], - ["921521067352589", "160"], - ["921555163106827", "159"], - ["921555163103806", "159"], - ["921555163102688", "160"], - ["921521067324820", "160"], - ["921555163106032", "159"], - ["921555163106509", "159"], - ["921521067324020", "160"], - ["921555163100768", "160"], - ["921555163100448", "160"], - ["921555163106191", "159"], - ["921555163102048", "160"], - ["921555163107145", "159"], - ["921555163103328", "160"], - ["921555163106668", "159"], - ["921555169488121", "158"], - ["922214747355326", "158"], - ["921555169487489", "158"], - ["921555163517634", "159"], - ["921939836815561", "158"], - ["921555163517316", "159"], - ["921939836816035", "158"], - ["921555163517475", "159"], - ["921555163518270", "159"], - ["921555164366316", "158"], - ["922214747357064", "158"], - ["921939836815403", "158"], - ["922214747358644", "158"], - ["921555169487963", "158"], - ["921939836928595", "158"], - ["921555163519063", "158"], - ["921555163517793", "159"], - ["921555163518111", "159"], - ["922214747357696", "158"], - ["921555169488437", "158"], - ["922214747356590", "158"], - ["922214747355484", "158"], - ["922214747356274", "158"], - ["921939836816351", "158"], - ["921555163518905", "158"], - ["922214747358012", "158"], - ["921939836928911", "158"], - ["922214747358486", "158"], - ["921555163518747", "158"], - ["921939836815719", "158"], - ["922214747358328", "158"], - ["921555163518588", "159"], - ["922214747357380", "158"], - ["922214747356748", "158"], - ["922214747357854", "158"], - ["922214747356432", "158"], - ["922214747358170", "158"], - ["921555163518429", "159"], - ["921555169487805", "158"], - ["922214747357538", "158"], - ["921555169487647", "158"], - ["921555163517952", "159"], - ["921939836815245", "158"], - ["922214747355958", "158"], - ["921555169488279", "158"], - ["922214747356906", "158"], - ["922214747355800", "158"], - ["921555163519221", "158"], - ["921939836928753", "158"], - ["921939836928437", "158"], - ["921939836816193", "158"], - ["921555169488595", "158"], - ["921939836815087", "158"], - ["922214747357222", "158"], - ["922214747355642", "158"], - ["921939836815877", "158"], - ["922214747689971", "159"], - ["922214747689653", "159"], - ["922214747689493", "160"], - ["922214747690925", "159"], - ["922214747690448", "159"], - ["922214747689812", "159"], - ["922214747690607", "159"], - ["922214747690289", "159"], - ["922214747690766", "159"], - ["922214747689173", "160"], - ["922214747690130", "159"], - ["922214747689333", "160"], - ["922214747691084", "159"], - ["922214747691243", "159"], - ["922214747723175", "159"], - ["922214747692356", "159"], - ["922232922944735", "1110"], - ["922214747691561", "159"], - ["922232922941248", "158"], - ["922214747691402", "159"], - ["922214747724129", "159"], - ["922214747691720", "159"], - ["922214747723334", "159"], - ["922232922943625", "952"], - ["922214747723970", "159"], - ["922214747722855", "160"], - ["922232922941406", "158"], - ["922232922941564", "158"], - ["922214747723493", "159"], - ["922214747723811", "159"], - ["922214747692197", "159"], - ["922232922941722", "476"], - ["922214747692038", "159"], - ["922214747691879", "159"], - ["922214747723652", "159"], - ["922232922942198", "634"], - ["922233389472801", "1268"], - ["922232922942832", "793"], - ["922214747723015", "160"], - ["922233389491814", "158"], - ["922233389474703", "1427"], - ["922233389491498", "158"], - ["922233389485479", "2060"], - ["922233389479458", "1743"], - ["922233389482310", "1902"], - ["922233389491182", "158"], - ["922233389492446", "316"], - ["922233389493078", "158"], - ["922233389476922", "1585"], - ["922233389492762", "158"], - ["922233389488964", "2218"] - ] - ], - [ - "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf", - [ - ["922233389494026", "324510990839"], - ["931686967390427", "49189108815"], - ["948372056649332", "46252901321"], - ["948180044585873", "60164823097"] - ] - ], - ["0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d", [["922632881887979", "15704000000"]]], - ["0xE7cB38c67b4c07FfEA582bCa127fa5B4FFC568Fc", [["930654205477734", "87717999114"]]], - [ - "0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E", - [ - ["931316549943649", "362798420992"], - ["950092088204807", "163405602286"] - ] - ], - ["0xEfe609f34A17C919118C086F81d61ecA579AB2E7", [["933960523170146", "313987459495"]]], - ["0x9980234b18408E07C0F74aCE3dF940B02DD4095c", [["944658495966134", "5308261827"]]], - ["0xf730c862ADFE955Be6a7612E092C123Ba89F50c6", [["947821225912354", "264110000000"]]], - ["0x87104977d80256B00465d3411c6D93A63818723c", [["947585500813146", "134558229863"]]], - ["0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4", [["947157324068361", "48979547469"]]], - [ - "0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869", - [ - ["949411235551363", "20896050000"], - ["972959010985644", "61984567762"] - ] - ], - ["0x214e02A853dCAd01B2ab341e7827a656655A1B81", [["966119151381565", "3425838650831"]]], - ["0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1", [["976523795556384", "16285361281"]]], - ["0x23cAea94eB856767cf71a30824d72Ed5B93aA365", [["976547212156243", "238900000000"]]], - ["0x358B8a97658648Bcf81103b397D571A2FED677eE", [["978364317474455", "32949877099"]]] + ] ] diff --git a/scripts/beanstalkShipments/deployContracts.js b/scripts/beanstalkShipments/deployContracts.js index 24a37925..2ec4a1ca 100644 --- a/scripts/beanstalkShipments/deployContracts.js +++ b/scripts/beanstalkShipments/deployContracts.js @@ -1,5 +1,4 @@ const fs = require("fs"); -const { upgrades } = require("hardhat"); // Deploys SiloPayback, BarnPayback, and ShipmentPlanner contracts async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose = true }) { @@ -7,7 +6,9 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose console.log("Deploying Beanstalk shipment contracts..."); } + //////////////////////////// Silo Payback //////////////////////////// const siloPaybackFactory = await ethers.getContractFactory("SiloPayback"); + // factory, args, proxy options const siloPaybackContract = await upgrades.deployProxy(siloPaybackFactory, [PINTO, L2_PINTO], { initializer: "initialize", kind: "transparent" @@ -15,14 +16,20 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose await siloPaybackContract.deployed(); if (verbose) console.log("SiloPayback deployed to:", siloPaybackContract.address); + //////////////////////////// Barn Payback //////////////////////////// const barnPaybackFactory = await ethers.getContractFactory("BarnPayback"); - const barnPaybackContract = await upgrades.deployProxy(barnPaybackFactory, [0], { + // get the initialization args from the json file + const barnPaybackArgsPath = "./scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json"; + const barnPaybackArgs = JSON.parse(fs.readFileSync(barnPaybackArgsPath)); + // factory, args, proxy options + const barnPaybackContract = await upgrades.deployProxy(barnPaybackFactory, barnPaybackArgs, { initializer: "initialize", kind: "transparent" }); await barnPaybackContract.deployed(); if (verbose) console.log("BarnPayback deployed to:", barnPaybackContract.address); + //////////////////////////// Shipment Planner //////////////////////////// const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner"); const shipmentPlannerContract = await shipmentPlannerFactory.deploy(L2_PINTO, PINTO); await shipmentPlannerContract.deployed(); @@ -45,14 +52,9 @@ async function distributeUnripeBdvTokens({ if (verbose) console.log("Distributing unripe BDV tokens..."); try { - const unripeBdvTokens = JSON.parse(fs.readFileSync(dataPath)); + const unripeAccountBdvTokens = JSON.parse(fs.readFileSync(dataPath)); - const unripeReceipts = unripeBdvTokens.map(([recipient, bdv]) => ({ - receipient: recipient, - bdv: bdv - })); - - await siloPaybackContract.connect(owner).batchMint(unripeReceipts); + await siloPaybackContract.connect(owner).batchMint(unripeAccountBdvTokens); if (verbose) console.log("Unripe BDV tokens distributed to old Beanstalk participants"); } catch (error) { @@ -77,6 +79,30 @@ async function transferContractOwnership({ if (verbose) console.log("BarnPayback ownership transferred to PCM"); } +// Distributes barn payback tokens from JSON file to contract recipients +async function distributeBarnPaybackTokens({ + barnPaybackContract, + owner, + dataPath = "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", + verbose = true +}) { + if (verbose) console.log("Distributing barn payback tokens..."); + + try { + const accountFertilizers = JSON.parse(fs.readFileSync(dataPath)); + + // call the mintFertilizers function + await barnPaybackContract.connect(owner).mintFertilizers(accountFertilizers); + + if (verbose) console.log("Barn payback tokens distributed to old Beanstalk participants"); + } catch (error) { + console.error("Error distributing barn payback tokens:", error); + throw error; + } + + if (verbose) console.log("Barn payback tokens distributed to old Beanstalk participants"); +} + // Logs deployed contract addresses function logDeployedAddresses({ siloPaybackContract, @@ -101,6 +127,12 @@ async function deployAndSetupContracts(params) { verbose }); + await distributeBarnPaybackTokens({ + barnPaybackContract: contracts.barnPaybackContract, + owner: params.owner, + verbose + }); + await transferContractOwnership({ siloPaybackContract: contracts.siloPaybackContract, barnPaybackContract: contracts.barnPaybackContract, From f2ac763118ad0cb19f7ddfabb4d76da6b05e94f2 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 11 Aug 2025 16:20:56 +0300 Subject: [PATCH 027/270] working deployment and initialization flow --- .../beanstalkShipments/BarnPayback.sol | 15 +--- .../beanstalkShipments/SiloPayback.sol | 5 +- hardhat.config.js | 33 ++++++--- .../data/beanstalkAccountFertilizer.json | 8 +- .../data/beanstalkGlobalFertilizer.json | 10 +-- .../data/unripeBdvTokens.json | 20 ++--- ...Contracts.js => deployPaybackContracts.js} | 73 +++++++++++-------- .../populateBeanstalkField.js | 3 +- 8 files changed, 86 insertions(+), 81 deletions(-) rename scripts/beanstalkShipments/{deployContracts.js => deployPaybackContracts.js} (82%) diff --git a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol index b44c5b17..8035ebb2 100644 --- a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol @@ -78,13 +78,8 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU * @notice Initializes the contract, sets global fertilizer state, and batch mints all fertilizers. * @param _pinto The address of the Pinto ERC20 token. * @param systemFert The global fertilizer state data. - * @param fertilizerIds Array of fertilizer account data to initialize. */ - function init( - address _pinto, - SystemFertilizer calldata systemFert, - Fertilizers[] calldata fertilizerIds - ) external initializer { + function initialize(address _pinto, SystemFertilizer calldata systemFert) external initializer { // Inheritance Inits __ERC1155_init(""); __Ownable_init(msg.sender); @@ -141,7 +136,6 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } } - function _safeMint(address to, uint256 id, uint256 amount, bytes memory data) internal virtual { require(to != address(0), "ERC1155: mint to the zero address"); @@ -221,12 +215,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU __doSafeBatchTransferAcceptanceCheck(operator, from, to, ids, amounts, data); } - function _transfer( - address from, - address to, - uint256 id, - uint256 amount - ) internal virtual { + function _transfer(address from, address to, uint256 id, uint256 amount) internal virtual { uint128 _amount = uint128(amount); if (from != address(0)) { uint128 fromBalance = _balances[id][from].amount; diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index a91e7bef..43f91afe 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -145,13 +145,12 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev pre transfer hook to update rewards for both sender and receiver function _beforeTokenTransfer(address from, address to, uint256 amount) internal { - if (from != address(0)) { // capture any existing rewards for the sender, update their checkpoint to current global state rewards[from] = earned(from); userRewardPerTokenPaid[from] = rewardPerTokenStored; } - + if (to != address(0)) { // capture any existing rewards for the receiver, update their checkpoint to current global state rewards[to] = earned(to); @@ -160,7 +159,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { // result: token balances change, but both parties have been // "checkpointed" to prevent any reward manipulation through transfers - // claims happen when the users decide to claim. + // claims happen when the users decide to claim. // This way all claims can also happen in the internal balance. } diff --git a/hardhat.config.js b/hardhat.config.js index 19c28400..0d89d837 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -39,7 +39,7 @@ const { getFacetBytecode, compareBytecode } = require("./test/hardhat/utils/byte const { populateBeanstalkField } = require("./scripts/beanstalkShipments/populateBeanstalkField.js"); -const { deployAndSetupContracts } = require("./scripts/beanstalkShipments/deployContracts.js"); +const { deployAndSetupContracts } = require("./scripts/beanstalkShipments/deployPaybackContracts.js"); //////////////////////// TASKS //////////////////////// @@ -2020,16 +2020,16 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m }); task("beanstalkShipments", "performs all actions to initialize the beanstalk shipments") - .addOptionalParam("noFieldChunking", "Whether to process all plots in one transaction") - .addOptionalParam("deploy", "Whether to deploy the new contracts") .setAction(async (taskArgs) => { console.log("🌱 Starting Beanstalk shipments initialization..."); + // params const verbose = true; - const noFieldChunking = taskArgs.noFieldChunking || true; - const deploy = taskArgs.deploy || false; + const noFieldChunking = true; + const deploy = true; // Use the diamond deployer as the account const mock = true; + let owner; if (mock) { owner = await impersonateSigner(L2_PCM); await mintEth(owner.address); @@ -2037,10 +2037,13 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi owner = (await ethers.getSigners())[0]; } - // Step 0: Deploy all new contracts here and perform any actions before handing over ownership + // Step 1: + // - Deploy the silo and barn payback contracts + // - Distribute the unripe bdv tokens and fertilizer tokens + // - Transfer ownership of the silo and barn payback contracts to the PCM + console.log("\n-----------------------------------"); + console.log("Step 1: Deploying and setting up payback contracts..."); let contracts = {}; - // note: it might be better to deploy the proxies in the shipments init script and hardcode the addresses - // if we do that we still need to distribute the unripe bdv tokens and hand over ownership to the PCM from here if (deploy) { contracts = await deployAndSetupContracts({ PINTO, @@ -2051,17 +2054,23 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi }); } - // Step 1: Populate the beanstalk field - console.log("Populating beanstalk field..."); + // Step 2: Creates and populates the beanstalk field + console.log("\n-----------------------------------"); + //clear console + console.clear(); + console.log("Step 2: Creating and populating beanstalk field..."); await populateBeanstalkField(L2_PINTO, owner, verbose, noFieldChunking); - // Step 2: Update the shipment routes + // Step 3: Update the shipment routes // Read the routes from the json file const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; const routes = JSON.parse(fs.readFileSync(routesPath)); // Refresh the shipment routes with the new routes - console.log("Refreshing shipment routes..."); + // Old routes need to be updates because of the new shipment planner contract address + console.clear(); + console.log("\n-----------------------------------"); + console.log("Step 3: Refreshing shipment routes..."); await upgradeWithNewFacets({ diamondAddress: L2_PINTO, facetNames: [], diff --git a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json index e336486e..a6474cd5 100644 --- a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json @@ -1,11 +1,11 @@ [ [ - "1334303", // id + "1334303", [ [ - "0xBd120e919eb05343DbA68863f2f8468bd7010163", // account - "161", // amount - "340802" // lastBpf + "0xBd120e919eb05343DbA68863f2f8468bd7010163", + "161", + "340802" ] ] ], diff --git a/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json b/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json index 07ce9499..4c57b311 100644 --- a/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json @@ -1,5 +1,4 @@ [ - // ids [ "1334303", "1334880", @@ -106,7 +105,6 @@ "3500000", "6000000" ], - // amounts [ "161", "128", @@ -213,8 +211,8 @@ "70842", "14364122" ], - "5654645373178", // index - "5654645373178", // paid index - "340802", // bpf - "0", // leftover beans + "5654645373178", + "5654645373178", + "340802", + "0" ] diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json index 946a9313..883e9707 100644 --- a/scripts/beanstalkShipments/data/unripeBdvTokens.json +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -1,12 +1,12 @@ [ - ["0x1111111111111111111111111111111111111111", "1000000"], - ["0x2222222222222222222222222222222222222222", "5000000"], - ["0x3333333333333333333333333333333333333333", "10000000"], - ["0x4444444444444444444444444444444444444444", "2500000"], - ["0x5555555555555555555555555555555555555555", "7500000"], - ["0x6666666666666666666666666666666666666666", "15000000"], - ["0x7777777777777777777777777777777777777777", "3000000"], - ["0x8888888888888888888888888888888888888888", "12000000"], - ["0x9999999999999999999999999999999999999999", "6000000"], - ["0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", "20000000"] + ["0xC6cb0b2Fd08501EB152b92570CE6879a22504c17", "1000000"], + ["0x4f0B6E0Ff3b66DaCa79B1fAE6BD825CB13c0bAc0", "5000000"], + ["0xCa270E2E623862135Fe72303501aa97d6aDB6e69", "10000000"], + ["0x68Fc559217994B987Dd8bb134518C5073576f350", "2500000"], + ["0xf7C6F8EcDa6E928058A3ecf92aA629ff1Fce6d26", "7500000"], + ["0xB41F8bcFC2368A42fDa38E6954ad0387224173B9", "15000000"], + ["0x2efc4931f2e64B38d6aE3d714466840Fbc951F56", "3000000"], + ["0x17D328709DB4c5F2Cab78bff48de5fA7D949bea2", "12000000"], + ["0x45b2F5603691240CB43b14CE6d27Fa2006692416", "6000000"], + ["0xbf6DAEeC7b815B16075D179172331A48d935Ed28", "20000000"] ] diff --git a/scripts/beanstalkShipments/deployContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js similarity index 82% rename from scripts/beanstalkShipments/deployContracts.js rename to scripts/beanstalkShipments/deployPaybackContracts.js index 2ec4a1ca..59f186e7 100644 --- a/scripts/beanstalkShipments/deployContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -7,7 +7,8 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose } //////////////////////////// Silo Payback //////////////////////////// - const siloPaybackFactory = await ethers.getContractFactory("SiloPayback"); + console.log("\nDeploying SiloPayback..."); + const siloPaybackFactory = await ethers.getContractFactory("SiloPayback", owner); // factory, args, proxy options const siloPaybackContract = await upgrades.deployProxy(siloPaybackFactory, [PINTO, L2_PINTO], { initializer: "initialize", @@ -15,25 +16,36 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose }); await siloPaybackContract.deployed(); if (verbose) console.log("SiloPayback deployed to:", siloPaybackContract.address); + if (verbose) console.log("SiloPayback owner:", await siloPaybackContract.owner()); //////////////////////////// Barn Payback //////////////////////////// - const barnPaybackFactory = await ethers.getContractFactory("BarnPayback"); + console.log("--------------------------------") + console.log("Deploying BarnPayback..."); + const barnPaybackFactory = await ethers.getContractFactory("BarnPayback", owner); // get the initialization args from the json file const barnPaybackArgsPath = "./scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json"; const barnPaybackArgs = JSON.parse(fs.readFileSync(barnPaybackArgsPath)); // factory, args, proxy options - const barnPaybackContract = await upgrades.deployProxy(barnPaybackFactory, barnPaybackArgs, { - initializer: "initialize", - kind: "transparent" - }); + const barnPaybackContract = await upgrades.deployProxy( + barnPaybackFactory, + [PINTO, barnPaybackArgs], + { + initializer: "initialize", + kind: "transparent" + } + ); await barnPaybackContract.deployed(); if (verbose) console.log("BarnPayback deployed to:", barnPaybackContract.address); + if (verbose) console.log("BarnPayback owner:", await barnPaybackContract.owner()); //////////////////////////// Shipment Planner //////////////////////////// - const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner"); + console.log("--------------------------------") + console.log("Deploying ShipmentPlanner..."); + const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner", owner); const shipmentPlannerContract = await shipmentPlannerFactory.deploy(L2_PINTO, PINTO); await shipmentPlannerContract.deployed(); if (verbose) console.log("ShipmentPlanner deployed to:", shipmentPlannerContract.address); + console.log("--------------------------------") return { siloPaybackContract, @@ -46,14 +58,14 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose async function distributeUnripeBdvTokens({ siloPaybackContract, owner, - dataPath = "./scripts/beanstalkShipments/data/unripeBdvTokens.json", + dataPath, verbose = true }) { if (verbose) console.log("Distributing unripe BDV tokens..."); try { const unripeAccountBdvTokens = JSON.parse(fs.readFileSync(dataPath)); - + // mint all in one transaction await siloPaybackContract.connect(owner).batchMint(unripeAccountBdvTokens); if (verbose) console.log("Unripe BDV tokens distributed to old Beanstalk participants"); @@ -63,46 +75,42 @@ async function distributeUnripeBdvTokens({ } } -// Transfers ownership of both payback contracts to PCM -async function transferContractOwnership({ - siloPaybackContract, - barnPaybackContract, - L2_PCM, - verbose = true -}) { - if (verbose) console.log("Transferring ownership to PCM..."); - - await siloPaybackContract.transferOwnership(L2_PCM); - if (verbose) console.log("SiloPayback ownership transferred to PCM"); - - await barnPaybackContract.transferOwnership(L2_PCM); - if (verbose) console.log("BarnPayback ownership transferred to PCM"); -} - // Distributes barn payback tokens from JSON file to contract recipients async function distributeBarnPaybackTokens({ barnPaybackContract, owner, - dataPath = "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", + dataPath, verbose = true }) { if (verbose) console.log("Distributing barn payback tokens..."); try { const accountFertilizers = JSON.parse(fs.readFileSync(dataPath)); - - // call the mintFertilizers function + // mint all in one transaction await barnPaybackContract.connect(owner).mintFertilizers(accountFertilizers); - - if (verbose) console.log("Barn payback tokens distributed to old Beanstalk participants"); } catch (error) { console.error("Error distributing barn payback tokens:", error); throw error; } - if (verbose) console.log("Barn payback tokens distributed to old Beanstalk participants"); } +// Transfers ownership of both payback contracts to PCM +async function transferContractOwnership({ + siloPaybackContract, + barnPaybackContract, + L2_PCM, + verbose = true +}) { + if (verbose) console.log("Transferring ownership to PCM..."); + + await siloPaybackContract.transferOwnership(L2_PCM); + if (verbose) console.log("SiloPayback ownership transferred to PCM"); + + await barnPaybackContract.transferOwnership(L2_PCM); + if (verbose) console.log("BarnPayback ownership transferred to PCM"); +} + // Logs deployed contract addresses function logDeployedAddresses({ siloPaybackContract, @@ -118,18 +126,21 @@ function logDeployedAddresses({ // Main function that orchestrates all deployment steps async function deployAndSetupContracts(params) { const { verbose = true } = params; + // console.log("owner from params", params.owner); const contracts = await deployShipmentContracts(params); await distributeUnripeBdvTokens({ siloPaybackContract: contracts.siloPaybackContract, owner: params.owner, + dataPath: "./scripts/beanstalkShipments/data/unripeBdvTokens.json", verbose }); await distributeBarnPaybackTokens({ barnPaybackContract: contracts.barnPaybackContract, owner: params.owner, + dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", verbose }); diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index ee686266..cd2cebd4 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -11,8 +11,7 @@ const { splitEntriesIntoChunksOptimized, updateProgress, retryOperation } = requ * @param {boolean} noChunking - Whether to pass all plots in one transaction (default: false) */ async function populateBeanstalkField(diamondAddress, account, verbose = false, noChunking = true) { - console.log("-----------------------------------"); - console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots.\n"); + console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots."); // Read and parse the JSON file const plotsPath = "./scripts/beanstalkShipments/data/beanstalkPlots.json"; From 5762933036eea14ff608a85c2d3217f7c70770d0 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 11 Aug 2025 17:26:33 +0300 Subject: [PATCH 028/270] implement silo and barn payback shipment receipients --- contracts/beanstalk/storage/System.sol | 4 +- .../beanstalkShipments/BarnPayback.sol | 61 +++++++++++++++- .../beanstalkShipments/SiloPayback.sol | 15 ++-- contracts/interfaces/IBarnPayback.sol | 3 + contracts/interfaces/ISiloPayback.sol | 3 + contracts/libraries/LibReceiving.sol | 70 +++++++++++++++++++ .../deployPaybackContracts.js | 2 +- .../beanstalkShipments/SiloPayback.t.sol | 4 +- 8 files changed, 151 insertions(+), 11 deletions(-) diff --git a/contracts/beanstalk/storage/System.sol b/contracts/beanstalk/storage/System.sol index 018ef38c..2054c555 100644 --- a/contracts/beanstalk/storage/System.sol +++ b/contracts/beanstalk/storage/System.sol @@ -487,7 +487,9 @@ enum ShipmentRecipient { SILO, FIELD, INTERNAL_BALANCE, - EXTERNAL_BALANCE + EXTERNAL_BALANCE, + BARN_PAYBACK, + SILO_PAYBACK } /** diff --git a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol index 8035ebb2..8d870b64 100644 --- a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol @@ -12,6 +12,7 @@ import {LibRedundantMath128} from "contracts/libraries/Math/LibRedundantMath128. import {LibRedundantMath256} from "contracts/libraries/Math/LibRedundantMath256.sol"; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; /** * @dev Fertilizer tailored implementation of the ERC-1155 standard. @@ -71,6 +72,13 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU mapping(uint256 => mapping(address => Balance)) internal _balances; SystemFertilizer internal fert; IERC20 public pinto; + IBeanstalk public pintoProtocol; + + /// @dev modifier to ensure only the Pinto protocol can call the function + modifier onlyPintoProtocol() { + require(msg.sender == address(pintoProtocol), "BarnPayback: only pinto protocol"); + _; + } //////////////////////////// Initialization //////////////////////////// @@ -79,7 +87,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU * @param _pinto The address of the Pinto ERC20 token. * @param systemFert The global fertilizer state data. */ - function initialize(address _pinto, SystemFertilizer calldata systemFert) external initializer { + function initialize(address _pinto, address _pintoProtocol, SystemFertilizer calldata systemFert) external initializer { // Inheritance Inits __ERC1155_init(""); __Ownable_init(msg.sender); @@ -87,6 +95,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU // State Inits pinto = IERC20(_pinto); + pintoProtocol = IBeanstalk(_pintoProtocol); setFertilizerState(systemFert); // Minting will happen after deployment due to potential gas limit issues } @@ -148,6 +157,56 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU __doSafeTransferAcceptanceCheck(operator, address(0), to, id, amount, data); } + /** + * @notice Receive Beans at the Barn. Amount of Sprouts become Rinsible. + * @dev Data param not used. + * @dev Rounding here can cause up to s.sys.fert.activeFertilizer / 1e6 Beans to be lost. Currently there are 17,217,105 activeFertilizer. So up to 17.217 Beans can be lost. + * @param shipmentAmount Amount of Beans to receive. + */ + function barnPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { + // todo: review storage and update this function to update local state + // AppStorage storage s = LibAppStorage.diamondStorage(); + // uint256 amountToFertilize = shipmentAmount + s.sys.fert.leftoverBeans; + // // Get the new Beans per Fertilizer and the total new Beans per Fertilizer + // // Zeroness of activeFertilizer handled in Planner. + // uint256 remainingBpf = amountToFertilize / s.sys.fert.activeFertilizer; + // uint256 oldBpf = s.sys.fert.bpf; + // uint256 newBpf = oldBpf + remainingBpf; + // // Get the end BPF of the first Fertilizer to run out. + // uint256 firstBpf = s.sys.fert.fertFirst; + // uint256 deltaFertilized; + // // If the next fertilizer is going to run out, then step BPF according + // while (newBpf >= firstBpf) { + // // Increment the cumulative change in Fertilized. + // deltaFertilized += (firstBpf - oldBpf) * s.sys.fert.activeFertilizer; // fertilizer between init and next cliff + // if (LibFertilizer.pop()) { + // oldBpf = firstBpf; + // firstBpf = s.sys.fert.fertFirst; + // // Calculate BPF beyond the first Fertilizer edge. + // remainingBpf = (amountToFertilize - deltaFertilized) / s.sys.fert.activeFertilizer; + // newBpf = oldBpf + remainingBpf; + // } else { + // s.sys.fert.bpf = uint128(firstBpf); // SafeCast unnecessary here. + // s.sys.fert.fertilizedIndex += deltaFertilized; + // // Else, if there is no more fertilizer. Matches plan cap. + // // s.sys.fert.fertilizedIndex == s.sys.fert.unfertilizedIndex + // break; + // } + // } + // // If there is Fertilizer remaining. + // if (s.sys.fert.fertilizedIndex != s.sys.fert.unfertilizedIndex) { + // // Distribute the rest of the Fertilized Beans + // s.sys.fert.bpf = uint128(newBpf); // SafeCast unnecessary here. + // deltaFertilized += (remainingBpf * s.sys.fert.activeFertilizer); + // s.sys.fert.fertilizedIndex += deltaFertilized; + // } + // // There will be up to activeFertilizer Beans leftover Beans that are not fertilized. + // // These leftovers will be applied on future Fertilizer receipts. + // s.sys.fert.leftoverBeans = amountToFertilize - deltaFertilized; + // // Confirm successful receipt. + // emit Receipt(ShipmentRecipient.BARN, shipmentAmount, abi.encode("")); + } + //////////////////////////// Transfer Functions //////////////////////////// function safeTransferFrom( diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 43f91afe..43e4f636 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -2,7 +2,6 @@ pragma solidity ^0.8.20; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; -import {IBeanstalkWellFunction} from "contracts/interfaces/basin/IBeanstalkWellFunction.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {ERC20Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; @@ -47,6 +46,12 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { _; } + /// @dev modifier to ensure only the Pinto protocol can call the function + modifier onlyPintoProtocol() { + require(msg.sender == address(pintoProtocol), "SiloPayback: only pinto protocol"); + _; + } + /// @custom:oz-upgrades-unsafe-allow constructor constructor() { _disableInitializers(); @@ -77,13 +82,11 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /** * @notice Receives Pinto rewards from shipments - * @dev Called by the protocol to distribute rewards and update state + * Updates the global reward accumulator and the total amount of Pinto received + * @dev Called by LibReceiving to update the state of the Silo Payback contract * @param amount The amount of Pinto rewards received */ - function receiveRewards(uint256 amount) external { - require(msg.sender == address(pintoProtocol), "SiloPayback: only pinto protocol"); - require(amount > 0, "SiloPayback: shipment amount must be greater than 0"); - + function siloPaybackReceive(uint256 amount) external onlyPintoProtocol { uint256 tokenTotalSupply = totalSupply(); if (tokenTotalSupply > 0) { rewardPerTokenStored += (amount * 1e18) / tokenTotalSupply; diff --git a/contracts/interfaces/IBarnPayback.sol b/contracts/interfaces/IBarnPayback.sol index 3f5e9bfe..48bfb86c 100644 --- a/contracts/interfaces/IBarnPayback.sol +++ b/contracts/interfaces/IBarnPayback.sol @@ -6,4 +6,7 @@ pragma solidity ^0.8.20; interface IBarnPayback { // The amount of Bean remaining to pay back barn. function barnRemaining() external view returns (uint256); + + // Receive Pinto rewards from shipments + function barnPaybackReceive(uint256 amount) external; } diff --git a/contracts/interfaces/ISiloPayback.sol b/contracts/interfaces/ISiloPayback.sol index 96365530..0eed6dbe 100644 --- a/contracts/interfaces/ISiloPayback.sol +++ b/contracts/interfaces/ISiloPayback.sol @@ -6,4 +6,7 @@ pragma solidity ^0.8.20; interface ISiloPayback { // The amount of Bean remaining to pay back silo. function siloRemaining() external view returns (uint256); + + // Receive Pinto rewards from shipments + function siloPaybackReceive(uint256 amount) external; } diff --git a/contracts/libraries/LibReceiving.sol b/contracts/libraries/LibReceiving.sol index 4fa3d18c..5179f45e 100644 --- a/contracts/libraries/LibReceiving.sol +++ b/contracts/libraries/LibReceiving.sol @@ -8,6 +8,8 @@ import {C} from "contracts/C.sol"; import {AppStorage, LibAppStorage} from "contracts/libraries/LibAppStorage.sol"; import {ShipmentRecipient} from "contracts/beanstalk/storage/System.sol"; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; +import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; /** * @title LibReceiving @@ -50,6 +52,10 @@ library LibReceiving { internalBalanceReceive(shipmentAmount, data); } else if (recipient == ShipmentRecipient.EXTERNAL_BALANCE) { externalBalanceReceive(shipmentAmount, data); + } else if (recipient == ShipmentRecipient.BARN_PAYBACK) { + barnPaybackReceive(shipmentAmount, data); + } else if (recipient == ShipmentRecipient.SILO_PAYBACK) { + siloPaybackReceive(shipmentAmount, data); } // New receiveShipment enum values should have a corresponding function call here. } @@ -96,6 +102,11 @@ library LibReceiving { emit Receipt(ShipmentRecipient.FIELD, shipmentAmount, data); } + /** + * @notice Receive Bean at the Internal Balance of a destination address. + * @param shipmentAmount Amount of Bean to receive. + * @param data ABI encoded address of the destination. + */ function internalBalanceReceive(uint256 shipmentAmount, bytes memory data) private { AppStorage storage s = LibAppStorage.diamondStorage(); @@ -111,6 +122,11 @@ library LibReceiving { emit Receipt(ShipmentRecipient.INTERNAL_BALANCE, shipmentAmount, data); } + /** + * @notice Receive Bean at the External Balance of a destination address. + * @param shipmentAmount Amount of Bean to receive. + * @param data ABI encoded address of the destination. + */ function externalBalanceReceive(uint256 shipmentAmount, bytes memory data) private { AppStorage storage s = LibAppStorage.diamondStorage(); @@ -125,4 +141,58 @@ library LibReceiving { // Confirm successful receipt. emit Receipt(ShipmentRecipient.EXTERNAL_BALANCE, shipmentAmount, data); } + + /** + * @notice Receive Bean at the Barn Payback contract. + * When the Barn Payback contract receives Bean, it needs to update the amount of sprouts that become rinsible. + * @param shipmentAmount Amount of Bean to receive. + * @param data ABI encoded address of the barn payback contract. + */ + function barnPaybackReceive(uint256 shipmentAmount, bytes memory data) private { + AppStorage storage s = LibAppStorage.diamondStorage(); + address barnPaybackContract = abi.decode(data, (address)); + + // transfer the shipment amount to the barn payback contract + LibTransfer.sendToken( + IERC20(s.sys.bean), + shipmentAmount, + barnPaybackContract, + LibTransfer.To.EXTERNAL + ); + + // update the state of the barn payback contract to account for the newly received beans + // Do not revert on failure to prevent sunrise from failing + try IBarnPayback(barnPaybackContract).barnPaybackReceive(shipmentAmount) { + // Confirm successful receipt. + emit Receipt(ShipmentRecipient.BARN_PAYBACK, shipmentAmount, data); + } catch {} + } + + /** + * @notice Receive Bean at the Silo Payback contract. + * When the Silo Payback contract receives Bean, it needs to update: + * - the total beans that have been distributed to beanstalk unripe + * - the reward accumulators for the unripe bdv tokens + * @param shipmentAmount Amount of Bean to receive. + * @param data ABI encoded address of the silo payback contract. + */ + function siloPaybackReceive(uint256 shipmentAmount, bytes memory data) private { + AppStorage storage s = LibAppStorage.diamondStorage(); + address siloPaybackContract = abi.decode(data, (address)); + + // transfer the shipment amount to the silo payback contract + LibTransfer.sendToken( + IERC20(s.sys.bean), + shipmentAmount, + siloPaybackContract, + LibTransfer.To.EXTERNAL + ); + + // update the state of the silo payback contract to account for the newly received beans + // Do not revert on failure to prevent sunrise from failing + try ISiloPayback(siloPaybackContract).siloPaybackReceive(shipmentAmount) { + // Confirm successful receipt. + emit Receipt(ShipmentRecipient.SILO_PAYBACK, shipmentAmount, data); + } catch {} + } } diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 59f186e7..377abee8 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -28,7 +28,7 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose // factory, args, proxy options const barnPaybackContract = await upgrades.deployProxy( barnPaybackFactory, - [PINTO, barnPaybackArgs], + [PINTO, L2_PINTO, barnPaybackArgs], { initializer: "initialize", kind: "transparent" diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index 1667bdd4..bdf2dc69 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -78,7 +78,7 @@ contract SiloPaybackTest is TestHelper { // try to update state from non protocol, expect revert vm.prank(farmer1); vm.expectRevert(); - siloPayback.receiveRewards(100e6); + siloPayback.siloPaybackReceive(100e6); // Send rewards to contract and call receiveRewards uint256 rewardAmount = 100e6; // 10% of total supply @@ -319,7 +319,7 @@ contract SiloPaybackTest is TestHelper { // Call receiveRewards to update the global state vm.prank(BEANSTALK); - siloPayback.receiveRewards(amount); + siloPayback.siloPaybackReceive(amount); } function logRewardState() internal { From 7578d18f43ebb8027d3cf087ef0432ca91adbd2d Mon Sep 17 00:00:00 2001 From: nickkatsios Date: Tue, 12 Aug 2025 16:52:26 +0300 Subject: [PATCH 029/270] add extra state to barn payback, implement barnPaybackReceive --- .../beanstalkShipments/BarnPayback.sol | 207 +++++++++++------- .../beanstalkShipments/SiloPayback.sol | 10 +- 2 files changed, 134 insertions(+), 83 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol index 8d870b64..2aa2d506 100644 --- a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/BarnPayback.sol @@ -25,6 +25,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU using LibRedundantMath128 for uint128; event ClaimFertilizer(uint256[] ids, uint256 beans); + event FertilizerRewardsReceived(uint256 amount); struct Balance { uint128 amount; @@ -51,19 +52,44 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } /** - * @notice contains data related to the system's fertilizer (static system). - * @param fertilizerIds Array of fertilizer IDs in ascending order. - * @param fertilizerAmounts Array of fertilizer amounts corresponding to each ID. - * @param fertilizedIndex The total number of Fertilizer Beans that have been fertilized. + * @notice Fertilizer state. + * @param fertilizer A mapping from Fertilizer Id to the supply of Fertilizer for each Id. + * @param nextFid A linked list of Fertilizer Ids ordered by Id number. + * - Fertilizer Id is the Beans Per Fertilzer level at which the Fertilizer no longer receives Beans. + * - Sort in order by which Fertilizer Id expires next. + * @param activeFertilizer The number of active Fertilizer. + * @param fertilizedIndex The total number of Fertilizer Beans. + * @param unfertilizedIndex The total number of Unfertilized Beans ever. * @param fertilizedPaidIndex The total number of Fertilizer Beans that have been sent out to users. + * @param fertFirst The lowest active Fertilizer Id (start of linked list that is stored by nextFid). + * @param fertLast The highest active Fertilizer Id (end of linked list that is stored by nextFid). * @param bpf The cumulative Beans Per Fertilizer (bfp) minted over all Seasons. * @param leftoverBeans Amount of Beans that have shipped to Fert but not yet reflected in bpf. */ struct SystemFertilizer { + mapping(uint128 => uint256) fertilizer; + mapping(uint128 => uint128) nextFid; + uint256 activeFertilizer; + uint256 fertilizedIndex; + uint256 unfertilizedIndex; + uint256 fertilizedPaidIndex; + uint128 fertFirst; + uint128 fertLast; + uint128 bpf; + uint256 leftoverBeans; + } + + /// @dev data for initialization of the fertilizer state + /// uses arrays to initialize the mappings + struct InitSystemFertilizer { uint128[] fertilizerIds; uint256[] fertilizerAmounts; + uint256 activeFertilizer; uint256 fertilizedIndex; + uint256 unfertilizedIndex; uint256 fertilizedPaidIndex; + uint128 fertFirst; + uint128 fertLast; uint128 bpf; uint256 leftoverBeans; } @@ -85,9 +111,13 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU /** * @notice Initializes the contract, sets global fertilizer state, and batch mints all fertilizers. * @param _pinto The address of the Pinto ERC20 token. - * @param systemFert The global fertilizer state data. + * @param initSystemFert The initialglobal fertilizer state data. */ - function initialize(address _pinto, address _pintoProtocol, SystemFertilizer calldata systemFert) external initializer { + function initialize( + address _pinto, + address _pintoProtocol, + InitSystemFertilizer calldata initSystemFert + ) external initializer { // Inheritance Inits __ERC1155_init(""); __Ownable_init(msg.sender); @@ -96,7 +126,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU // State Inits pinto = IERC20(_pinto); pintoProtocol = IBeanstalk(_pintoProtocol); - setFertilizerState(systemFert); + setFertilizerState(initSystemFert); // Minting will happen after deployment due to potential gas limit issues } @@ -104,11 +134,19 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU * @notice Sets the global fertilizer state. * @param systemFert The fertilizer state data. */ - function setFertilizerState(SystemFertilizer calldata systemFert) internal { - fert.fertilizerIds = systemFert.fertilizerIds; - fert.fertilizerAmounts = systemFert.fertilizerAmounts; + function setFertilizerState(InitSystemFertilizer calldata systemFert) internal { + // init mappings + for (uint256 i; i < systemFert.fertilizerIds.length; i++) { + fert.fertilizer[systemFert.fertilizerIds[i]] = systemFert.fertilizerAmounts[i]; + if (i != 0) fert.nextFid[systemFert.fertilizerIds[i - 1]] = systemFert.fertilizerIds[i]; + } + // init state + fert.activeFertilizer = systemFert.activeFertilizer; fert.fertilizedIndex = systemFert.fertilizedIndex; + fert.unfertilizedIndex = systemFert.unfertilizedIndex; fert.fertilizedPaidIndex = systemFert.fertilizedPaidIndex; + fert.fertFirst = systemFert.fertFirst; + fert.fertLast = systemFert.fertLast; fert.bpf = systemFert.bpf; fert.leftoverBeans = systemFert.leftoverBeans; } @@ -158,53 +196,86 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } /** - * @notice Receive Beans at the Barn. Amount of Sprouts become Rinsible. - * @dev Data param not used. - * @dev Rounding here can cause up to s.sys.fert.activeFertilizer / 1e6 Beans to be lost. Currently there are 17,217,105 activeFertilizer. So up to 17.217 Beans can be lost. + * @notice Receive Beans at the Barn. Amount of Sprouts become Rinsible. Copied from LibReceiving.barnReceive on the beanstalk protocol. + * @dev Rounding here can cause up to fert.activeFertilizer / 1e6 Beans to be lost. Currently there are 17,217,105 activeFertilizer. So up to 17.217 Beans can be lost. * @param shipmentAmount Amount of Beans to receive. */ function barnPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { - // todo: review storage and update this function to update local state - // AppStorage storage s = LibAppStorage.diamondStorage(); - // uint256 amountToFertilize = shipmentAmount + s.sys.fert.leftoverBeans; - // // Get the new Beans per Fertilizer and the total new Beans per Fertilizer - // // Zeroness of activeFertilizer handled in Planner. - // uint256 remainingBpf = amountToFertilize / s.sys.fert.activeFertilizer; - // uint256 oldBpf = s.sys.fert.bpf; - // uint256 newBpf = oldBpf + remainingBpf; - // // Get the end BPF of the first Fertilizer to run out. - // uint256 firstBpf = s.sys.fert.fertFirst; - // uint256 deltaFertilized; - // // If the next fertilizer is going to run out, then step BPF according - // while (newBpf >= firstBpf) { - // // Increment the cumulative change in Fertilized. - // deltaFertilized += (firstBpf - oldBpf) * s.sys.fert.activeFertilizer; // fertilizer between init and next cliff - // if (LibFertilizer.pop()) { - // oldBpf = firstBpf; - // firstBpf = s.sys.fert.fertFirst; - // // Calculate BPF beyond the first Fertilizer edge. - // remainingBpf = (amountToFertilize - deltaFertilized) / s.sys.fert.activeFertilizer; - // newBpf = oldBpf + remainingBpf; - // } else { - // s.sys.fert.bpf = uint128(firstBpf); // SafeCast unnecessary here. - // s.sys.fert.fertilizedIndex += deltaFertilized; - // // Else, if there is no more fertilizer. Matches plan cap. - // // s.sys.fert.fertilizedIndex == s.sys.fert.unfertilizedIndex - // break; - // } - // } - // // If there is Fertilizer remaining. - // if (s.sys.fert.fertilizedIndex != s.sys.fert.unfertilizedIndex) { - // // Distribute the rest of the Fertilized Beans - // s.sys.fert.bpf = uint128(newBpf); // SafeCast unnecessary here. - // deltaFertilized += (remainingBpf * s.sys.fert.activeFertilizer); - // s.sys.fert.fertilizedIndex += deltaFertilized; - // } - // // There will be up to activeFertilizer Beans leftover Beans that are not fertilized. - // // These leftovers will be applied on future Fertilizer receipts. - // s.sys.fert.leftoverBeans = amountToFertilize - deltaFertilized; - // // Confirm successful receipt. - // emit Receipt(ShipmentRecipient.BARN, shipmentAmount, abi.encode("")); + uint256 amountToFertilize = shipmentAmount + fert.leftoverBeans; + // Get the new Beans per Fertilizer and the total new Beans per Fertilizer + // Zeroness of activeFertilizer handled in Planner. + uint256 remainingBpf = amountToFertilize / fert.activeFertilizer; + uint256 oldBpf = fert.bpf; + uint256 newBpf = oldBpf + remainingBpf; + // Get the end BPF of the first Fertilizer to run out. + uint256 firstBpf = fert.fertFirst; + uint256 deltaFertilized; + // If the next fertilizer is going to run out, then step BPF according + while (newBpf >= firstBpf) { + // Increment the cumulative change in Fertilized. + deltaFertilized += (firstBpf - oldBpf) * fert.activeFertilizer; // fertilizer between init and next cliff + if (fertilizerPop()) { + oldBpf = firstBpf; + firstBpf = fert.fertFirst; + // Calculate BPF beyond the first Fertilizer edge. + remainingBpf = (amountToFertilize - deltaFertilized) / fert.activeFertilizer; + newBpf = oldBpf + remainingBpf; + } else { + fert.bpf = uint128(firstBpf); // SafeCast unnecessary here. + fert.fertilizedIndex += deltaFertilized; + // Else, if there is no more fertilizer. Matches plan cap. + // fert.fertilizedIndex == fert.unfertilizedIndex + break; + } + } + // If there is Fertilizer remaining. + if (fert.fertilizedIndex != fert.unfertilizedIndex) { + // Distribute the rest of the Fertilized Beans + fert.bpf = uint128(newBpf); // SafeCast unnecessary here. + deltaFertilized += (remainingBpf * fert.activeFertilizer); + fert.fertilizedIndex += deltaFertilized; + } + // There will be up to activeFertilizer Beans leftover Beans that are not fertilized. + // These leftovers will be applied on future Fertilizer receipts. + fert.leftoverBeans = amountToFertilize - deltaFertilized; + emit FertilizerRewardsReceived(shipmentAmount); + } + + /** + * @dev Removes the first fertilizer id in the queue. + * fFirst is the lowest active Fertilizer Id (see AppStorage) + * (start of linked list that is stored by nextFid). + * @return bool Whether the queue is empty. + */ + function fertilizerPop() internal returns (bool) { + uint128 first = fert.fertFirst; + fert.activeFertilizer = fert.activeFertilizer.sub(getAmount(first)); + uint128 next = getNext(first); + if (next == 0) { + // If all Unfertilized Beans have been fertilized, delete line. + require(fert.activeFertilizer == 0, "Still active fertilizer"); + fert.fertFirst = 0; + fert.fertLast = 0; + return false; + } + fert.fertFirst = getNext(first); + return true; + } + + /** + * @dev Returns the next fertilizer id in the linked list. + * @param id The id of the fertilizer. + */ + function getNext(uint128 id) internal view returns (uint128) { + return fert.nextFid[id]; + } + + /** + * @dev Returns the amount (supply) of fertilizer for a given id. + * @param id The id of the fertilizer. + */ + function getAmount(uint128 id) internal view returns (uint256) { + return fert.fertilizer[id]; } //////////////////////////// Transfer Functions //////////////////////////// @@ -452,36 +523,16 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU return fert.bpf; } - /** - @notice Returns fertilizer amount for a given id - */ - function getFertilizer(uint128 id) external view returns (uint256) { - for (uint256 i = 0; i < fert.fertilizerIds.length; i++) { - if (fert.fertilizerIds[i] == id) { - return fert.fertilizerAmounts[i]; - } - } - return 0; - } - function totalFertilizedBeans() external view returns (uint256) { return fert.fertilizedIndex; } - function totalUnfertilizedBeans() public view returns (uint256) { - uint256 totalUnfertilized = 0; - for (uint256 i = 0; i < fert.fertilizerIds.length; i++) { - uint256 id = fert.fertilizerIds[i]; - uint256 amount = fert.fertilizerAmounts[i]; - if (id > fert.bpf) { - totalUnfertilized += (id - fert.bpf) * amount; - } - } - return totalUnfertilized; + function totalUnfertilizedBeans() public view returns (uint256 beans) { + return fert.unfertilizedIndex - fert.fertilizedIndex; } - function totalFertilizerBeans() external view returns (uint256) { - return fert.fertilizedIndex + totalUnfertilizedBeans(); + function totalFertilizerBeans() external view returns (uint256 beans) { + return fert.unfertilizedIndex; } function rinsedSprouts() external view returns (uint256) { diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 43e4f636..a6c6406f 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -84,16 +84,16 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { * @notice Receives Pinto rewards from shipments * Updates the global reward accumulator and the total amount of Pinto received * @dev Called by LibReceiving to update the state of the Silo Payback contract - * @param amount The amount of Pinto rewards received + * @param shipmentAmount The amount of Pinto rewards received */ - function siloPaybackReceive(uint256 amount) external onlyPintoProtocol { + function siloPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { uint256 tokenTotalSupply = totalSupply(); if (tokenTotalSupply > 0) { - rewardPerTokenStored += (amount * 1e18) / tokenTotalSupply; - totalReceived += amount; + rewardPerTokenStored += (shipmentAmount * 1e18) / tokenTotalSupply; + totalReceived += shipmentAmount; } - emit RewardsReceived(amount, rewardPerTokenStored); + emit RewardsReceived(shipmentAmount, rewardPerTokenStored); } /** From 052704167daaba2ef410fdb39f5018f599208cf5 Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 13 Aug 2025 14:42:59 +0300 Subject: [PATCH 030/270] clean up barn payback --- .../beanstalkShipments/barn/BarnPayback.sol | 162 ++++++++ .../BeanstalkFertilizer.sol} | 345 +++++++----------- .../data/beanstalkGlobalFertilizer.json | 4 + .../data/updatedShipmentRoutes.json | 4 +- .../deployPaybackContracts.js | 13 +- 5 files changed, 301 insertions(+), 227 deletions(-) create mode 100644 contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol rename contracts/ecosystem/beanstalkShipments/{BarnPayback.sol => barn/BeanstalkFertilizer.sol} (69%) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol new file mode 100644 index 00000000..ef2a6617 --- /dev/null +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -0,0 +1,162 @@ +/** + * SPDX-License-Identifier: MIT + **/ + +pragma solidity ^0.8.20; + +import {LibRedundantMath128} from "contracts/libraries/Math/LibRedundantMath128.sol"; +import {LibRedundantMath256} from "contracts/libraries/Math/LibRedundantMath256.sol"; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {BeanstalkFertilizer} from "./BeanstalkFertilizer.sol"; + +/** + * @dev BarnPayback facilitates the payback of beanstalk fertilizer holders. + * Inherits from BeanstalkFertilizer that contains a copy of the beanstalk ERC-1155 fertilizer implementation. + * Instead of keeping the fertilizerstate in the main protocol storage all state is copied and initialized locally. + * The BarnPayback contract is initialized using the state at the snapshot of Pinto's deployment and repays + * beanstalk fertilizer holders with pinto until they all become inactive. + */ +contract BarnPayback is BeanstalkFertilizer { + /** + * @notice Contains per-account intialization data for Fertilizer. + */ + struct AccountFertilizerData { + address account; + uint128 amount; + uint128 lastBpf; + } + + /** + * @notice Fertilizers contains the ids, accounts, amounts, and lastBpf of each Fertilizer. + * @dev fertilizerIds MUST be in ascending order. + * Maps each fertilizer ID to an array of account data containing amounts and last BPF values + */ + struct Fertilizers { + uint128 fertilizerId; + AccountFertilizerData[] accountData; + } + + /// @dev modifier to ensure only the Pinto protocol can call the function + modifier onlyPintoProtocol() { + require(msg.sender == address(pintoProtocol), "BarnPayback: only pinto protocol"); + _; + } + + //////////////////////////// Initialization //////////////////////////// + + function initialize( + address _pinto, + address _pintoProtocol, + InitSystemFertilizer calldata initSystemFert + ) public override initializer { + super.initialize(_pinto, _pintoProtocol, initSystemFert); + } + + /** + * @notice Batch mints fertilizers to all accounts and initializes balances. + * @param fertilizerIds Array of fertilizer data containing ids, accounts, amounts, and lastBpf. + */ + function mintFertilizers(Fertilizers[] calldata fertilizerIds) external onlyOwner { + for (uint i; i < fertilizerIds.length; i++) { + Fertilizers memory f = fertilizerIds[i]; + uint128 fid = f.fertilizerId; + + // Mint fertilizer to each holder + for (uint j; j < f.accountData.length; j++) { + if (!isContract(f.accountData[j].account)) { + _balances[fid][f.accountData[j].account].amount = f.accountData[j].amount; + _balances[fid][f.accountData[j].account].lastBpf = f.accountData[j].lastBpf; + + // This line used to call beanstalkMint but amounts and balances are set directly here + // We also do not need to perform any checks since we are only minting once. + // After deployment, no more beanstalk fertilizers will be distributed + _safeMint(f.accountData[j].account, fid, f.accountData[j].amount, ""); + + emit TransferSingle( + msg.sender, + address(0), + f.accountData[j].account, + fid, + f.accountData[j].amount + ); + } + } + } + } + + //////////////////////////// Barn Payback Functions //////////////////////////// + + /** + * @notice Receive Beans at the Barn. Amount of Sprouts become Rinsible. + * Copied from LibReceiving.barnReceive on the beanstalk protocol. + * @dev Rounding here can cause up to fert.activeFertilizer / 1e6 Beans to be lost. + * Currently there are 17,217,105 activeFertilizer. So up to 17.217 Beans can be lost. + * @param shipmentAmount Amount of Beans to receive. + */ + function barnPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { + uint256 amountToFertilize = shipmentAmount + fert.leftoverBeans; + // Get the new Beans per Fertilizer and the total new Beans per Fertilizer + // Zeroness of activeFertilizer handled in Planner. + uint256 remainingBpf = amountToFertilize / fert.activeFertilizer; + uint256 oldBpf = fert.bpf; + uint256 newBpf = oldBpf + remainingBpf; + // Get the end BPF of the first Fertilizer to run out. + uint256 firstBpf = fert.fertFirst; + uint256 deltaFertilized; + // If the next fertilizer is going to run out, then step BPF according + while (newBpf >= firstBpf) { + // Increment the cumulative change in Fertilized. + deltaFertilized += (firstBpf - oldBpf) * fert.activeFertilizer; // fertilizer between init and next cliff + if (fertilizerPop()) { + oldBpf = firstBpf; + firstBpf = fert.fertFirst; + // Calculate BPF beyond the first Fertilizer edge. + remainingBpf = (amountToFertilize - deltaFertilized) / fert.activeFertilizer; + newBpf = oldBpf + remainingBpf; + } else { + fert.bpf = uint128(firstBpf); // SafeCast unnecessary here. + fert.fertilizedIndex += deltaFertilized; + // Else, if there is no more fertilizer. Matches plan cap. + // fert.fertilizedIndex == fert.unfertilizedIndex + break; + } + } + // If there is Fertilizer remaining. + if (fert.fertilizedIndex != fert.unfertilizedIndex) { + // Distribute the rest of the Fertilized Beans + fert.bpf = uint128(newBpf); // SafeCast unnecessary here. + deltaFertilized += (remainingBpf * fert.activeFertilizer); + fert.fertilizedIndex += deltaFertilized; + } + // There will be up to activeFertilizer Beans leftover Beans that are not fertilized. + // These leftovers will be applied on future Fertilizer receipts. + fert.leftoverBeans = amountToFertilize - deltaFertilized; + emit FertilizerRewardsReceived(shipmentAmount); + } + + //////////////////////////// Claiming Functions (Update) //////////////////////////// + + /** + * @notice Allows users to claim their fertilized beans directly. + * @param ids - an array of fertilizer ids to claim + * @param mode - the balance to transfer Beans to; see {LibTransfer.To} + */ + function claimFertilized(uint256[] memory ids, LibTransfer.To mode) external { + uint256 amount = __update(msg.sender, ids, uint256(fert.bpf)); + if (amount > 0) { + fert.fertilizedPaidIndex += amount; + // Transfer the rewards to the recipient + pintoProtocol.transferToken(pinto, msg.sender, amount, LibTransfer.From.EXTERNAL, mode); + } + } + + /** + * @notice Called by the ShipmentPlanner contract to determine how many pinto to send to the barn payback contract + * @return The amount of pinto remaining to be sent to the barn payback contract + */ + function barnRemaining() external view returns (uint256) { + return totalUnfertilizedBeans(); + } +} diff --git a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol similarity index 69% rename from contracts/ecosystem/beanstalkShipments/BarnPayback.sol rename to contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 2aa2d506..a139e677 100644 --- a/contracts/ecosystem/beanstalkShipments/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -17,10 +17,10 @@ import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; /** * @dev Fertilizer tailored implementation of the ERC-1155 standard. * We rewrite transfer and mint functions to allow the balance transfer function be overwritten as well. - * Merged from multiple contracts: Fertilizer.sol, Internalizer.sol, Fertilizer1155.sol + * Merged from multiple contracts: Fertilizer.sol, Internalizer.sol, Fertilizer1155.sol from the beanstalk protocol. * All metadata-related functionality has been removed. */ -contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable { +contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable { using LibRedundantMath256 for uint256; using LibRedundantMath128 for uint128; @@ -33,22 +33,20 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } /** - * @notice contains data per account for Fertilizer. + * @dev data for initialization of the fertilizer state + * note: the fertilizerIds and fertilizerAmounts should be the same length and in ascending order */ - struct AccountFertilizerData { - address account; - uint128 amount; - uint128 lastBpf; - } - - /** - * @notice Fertilizers contains the ids, accounts, amounts, and lastBpf of each Fertilizer. - * @dev fertilizerIds MUST be in ascending order. - * for each fert id --> all accounts --> amount, lastBpf - */ - struct Fertilizers { - uint128 fertilizerId; - AccountFertilizerData[] accountData; + struct InitSystemFertilizer { + uint128[] fertilizerIds; + uint256[] fertilizerAmounts; + uint256 activeFertilizer; + uint256 fertilizedIndex; + uint256 unfertilizedIndex; + uint256 fertilizedPaidIndex; + uint128 fertFirst; + uint128 fertLast; + uint128 bpf; + uint256 leftoverBeans; } /** @@ -79,34 +77,14 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU uint256 leftoverBeans; } - /// @dev data for initialization of the fertilizer state - /// uses arrays to initialize the mappings - struct InitSystemFertilizer { - uint128[] fertilizerIds; - uint256[] fertilizerAmounts; - uint256 activeFertilizer; - uint256 fertilizedIndex; - uint256 unfertilizedIndex; - uint256 fertilizedPaidIndex; - uint128 fertFirst; - uint128 fertLast; - uint128 bpf; - uint256 leftoverBeans; - } - // Storage mapping(uint256 => mapping(address => Balance)) internal _balances; SystemFertilizer internal fert; IERC20 public pinto; IBeanstalk public pintoProtocol; - /// @dev modifier to ensure only the Pinto protocol can call the function - modifier onlyPintoProtocol() { - require(msg.sender == address(pintoProtocol), "BarnPayback: only pinto protocol"); - _; - } - - //////////////////////////// Initialization //////////////////////////// + /// @dev gap for future upgrades + uint256[50] private __gap; /** * @notice Initializes the contract, sets global fertilizer state, and batch mints all fertilizers. @@ -117,7 +95,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU address _pinto, address _pintoProtocol, InitSystemFertilizer calldata initSystemFert - ) external initializer { + ) public virtual onlyInitializing { // Inheritance Inits __ERC1155_init(""); __Ownable_init(msg.sender); @@ -151,37 +129,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU fert.leftoverBeans = systemFert.leftoverBeans; } - /** - * @notice Batch mints fertilizers to all accounts and initializes balances. - * @param fertilizerIds Array of fertilizer data containing ids, accounts, amounts, and lastBpf. - */ - function mintFertilizers(Fertilizers[] calldata fertilizerIds) external onlyOwner { - for (uint i; i < fertilizerIds.length; i++) { - Fertilizers memory f = fertilizerIds[i]; - uint128 fid = f.fertilizerId; - - // Mint fertilizer to each holder - for (uint j; j < f.accountData.length; j++) { - if (!isContract(f.accountData[j].account)) { - _balances[fid][f.accountData[j].account].amount = f.accountData[j].amount; - _balances[fid][f.accountData[j].account].lastBpf = f.accountData[j].lastBpf; - - // this used to call beanstalkMint but amounts and balances are set directly here - // we also do not need to perform any checks since we are only minting once - // after deployment, no more beanstalk fertilizers will be distributed - _safeMint(f.accountData[j].account, fid, f.accountData[j].amount, ""); - - emit TransferSingle( - msg.sender, - address(0), - f.accountData[j].account, - fid, - f.accountData[j].amount - ); - } - } - } - } + //////////////////////////// ERC-1155 Functions //////////////////////////// function _safeMint(address to, uint256 id, uint256 amount, bytes memory data) internal virtual { require(to != address(0), "ERC1155: mint to the zero address"); @@ -195,91 +143,15 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU __doSafeTransferAcceptanceCheck(operator, address(0), to, id, amount, data); } - /** - * @notice Receive Beans at the Barn. Amount of Sprouts become Rinsible. Copied from LibReceiving.barnReceive on the beanstalk protocol. - * @dev Rounding here can cause up to fert.activeFertilizer / 1e6 Beans to be lost. Currently there are 17,217,105 activeFertilizer. So up to 17.217 Beans can be lost. - * @param shipmentAmount Amount of Beans to receive. - */ - function barnPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { - uint256 amountToFertilize = shipmentAmount + fert.leftoverBeans; - // Get the new Beans per Fertilizer and the total new Beans per Fertilizer - // Zeroness of activeFertilizer handled in Planner. - uint256 remainingBpf = amountToFertilize / fert.activeFertilizer; - uint256 oldBpf = fert.bpf; - uint256 newBpf = oldBpf + remainingBpf; - // Get the end BPF of the first Fertilizer to run out. - uint256 firstBpf = fert.fertFirst; - uint256 deltaFertilized; - // If the next fertilizer is going to run out, then step BPF according - while (newBpf >= firstBpf) { - // Increment the cumulative change in Fertilized. - deltaFertilized += (firstBpf - oldBpf) * fert.activeFertilizer; // fertilizer between init and next cliff - if (fertilizerPop()) { - oldBpf = firstBpf; - firstBpf = fert.fertFirst; - // Calculate BPF beyond the first Fertilizer edge. - remainingBpf = (amountToFertilize - deltaFertilized) / fert.activeFertilizer; - newBpf = oldBpf + remainingBpf; - } else { - fert.bpf = uint128(firstBpf); // SafeCast unnecessary here. - fert.fertilizedIndex += deltaFertilized; - // Else, if there is no more fertilizer. Matches plan cap. - // fert.fertilizedIndex == fert.unfertilizedIndex - break; - } - } - // If there is Fertilizer remaining. - if (fert.fertilizedIndex != fert.unfertilizedIndex) { - // Distribute the rest of the Fertilized Beans - fert.bpf = uint128(newBpf); // SafeCast unnecessary here. - deltaFertilized += (remainingBpf * fert.activeFertilizer); - fert.fertilizedIndex += deltaFertilized; - } - // There will be up to activeFertilizer Beans leftover Beans that are not fertilized. - // These leftovers will be applied on future Fertilizer receipts. - fert.leftoverBeans = amountToFertilize - deltaFertilized; - emit FertilizerRewardsReceived(shipmentAmount); - } - - /** - * @dev Removes the first fertilizer id in the queue. - * fFirst is the lowest active Fertilizer Id (see AppStorage) - * (start of linked list that is stored by nextFid). - * @return bool Whether the queue is empty. - */ - function fertilizerPop() internal returns (bool) { - uint128 first = fert.fertFirst; - fert.activeFertilizer = fert.activeFertilizer.sub(getAmount(first)); - uint128 next = getNext(first); - if (next == 0) { - // If all Unfertilized Beans have been fertilized, delete line. - require(fert.activeFertilizer == 0, "Still active fertilizer"); - fert.fertFirst = 0; - fert.fertLast = 0; - return false; - } - fert.fertFirst = getNext(first); - return true; - } - - /** - * @dev Returns the next fertilizer id in the linked list. - * @param id The id of the fertilizer. - */ - function getNext(uint128 id) internal view returns (uint128) { - return fert.nextFid[id]; - } + //////////////////////////// Transfer Functions //////////////////////////// /** - * @dev Returns the amount (supply) of fertilizer for a given id. - * @param id The id of the fertilizer. + * @notice Transfers a fertilizer id from one account to another + * @param from - the account to transfer from + * @param to - the account to transfer to + * @param id - the fertilizer id + * @param amount - the amount of fertilizer to transfer */ - function getAmount(uint128 id) internal view returns (uint256) { - return fert.fertilizer[id]; - } - - //////////////////////////// Transfer Functions //////////////////////////// - function safeTransferFrom( address from, address to, @@ -311,13 +183,13 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU __doSafeTransferAcceptanceCheck(operator, from, to, id, amount, data); } - /// @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) - function __asSingletonArray(uint256 element) private pure returns (uint256[] memory) { - uint256[] memory array = new uint256[](1); - array[0] = element; - return array; - } - + /** + * @notice Transfers a batch of fertilizers from one account to another + * @param from - the account to transfer from + * @param to - the account to transfer to + * @param ids - the fertilizer ids + * @param amounts - the amounts of fertilizer to transfer + */ function safeBatchTransferFrom( address from, address to, @@ -345,6 +217,13 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU __doSafeBatchTransferAcceptanceCheck(operator, from, to, ids, amounts, data); } + /** + * @notice Transfers a fertilizer from one account to another by changing the internal balances mapping + * @param from - the account to transfer from + * @param to - the account to transfer to + * @param id - the fertilizer id + * @param amount - the amount of fertilizer to transfer + */ function _transfer(address from, address to, uint256 id, uint256 amount) internal virtual { uint128 _amount = uint128(amount); if (from != address(0)) { @@ -355,7 +234,10 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU _balances[id][to].amount = _balances[id][to].amount.add(_amount); } - /// @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) + /** + * @notice Checks if a fertilizer transfer is accepted by the recipient in case of a contract + * @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) + */ function __doSafeTransferAcceptanceCheck( address operator, address from, @@ -379,7 +261,10 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } } - /// @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) + /** + * @notice Checks if a batch of fertilizer transfers are accepted by the recipient in case of a contract + * @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) + */ function __doSafeBatchTransferAcceptanceCheck( address operator, address from, @@ -404,7 +289,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } /** - * @notice handles state updates before a fertilizer transfer + * @notice Handles state updates before a fertilizer transfer, * Following the 1155 design from OpenZeppelin Contracts < 5.x. * @param from - the account to transfer from * @param to - the account to transfer to @@ -423,20 +308,7 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU _update(to, ids, bpf); } - //////////////////////////// Claiming Functions (Update) //////////////////////////// - - /** - * @notice Allows users to claim their fertilized beans directly. - * @param ids - an array of fertilizer ids to claim - * @param mode - the balance to transfer Beans to; see {LibTransfer.To} - */ - function claimFertilized(uint256[] memory ids, LibTransfer.To mode) external { - uint256 amount = __update(msg.sender, ids, uint256(fert.bpf)); - if (amount > 0) { - fert.fertilizedPaidIndex += amount; - LibTransfer.sendToken(pinto, amount, msg.sender, mode); - } - } + //////////////////////////// Internal State Updates //////////////////////////// /** * @notice Calculates and transfers the rewarded beans @@ -477,8 +349,55 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU emit ClaimFertilizer(ids, beans); } + /** + * @dev Removes the first fertilizer id in the queue. + * fFirst is the lowest active Fertilizer Id (see SystemFertilizer struct) + * (start of linked list that is stored by nextFid). + * @return bool Whether the queue is empty. + */ + function fertilizerPop() internal returns (bool) { + uint128 first = fert.fertFirst; + fert.activeFertilizer = fert.activeFertilizer.sub(getAmount(first)); + uint128 next = getNext(first); + if (next == 0) { + // If all Unfertilized Beans have been fertilized, delete line. + require(fert.activeFertilizer == 0, "Still active fertilizer"); + fert.fertFirst = 0; + fert.fertLast = 0; + return false; + } + fert.fertFirst = getNext(first); + return true; + } + + /** + * @notice Returns a singleton array with the given element + * @dev copied from OpenZeppelin Contracts (last updated v4.6.0) (token/ERC1155/ERC1155.sol) + */ + function __asSingletonArray(uint256 element) private pure returns (uint256[] memory) { + uint256[] memory array = new uint256[](1); + array[0] = element; + return array; + } + //////////////////////////// Getters //////////////////////////////// + /** + * @dev Returns the next fertilizer id in the linked list. + * @param id The id of the fertilizer. + */ + function getNext(uint128 id) internal view returns (uint128) { + return fert.nextFid[id]; + } + + /** + * @dev Returns the amount (supply) of fertilizer for a given id. + * @param id The id of the fertilizer. + */ + function getAmount(uint128 id) internal view returns (uint256) { + return fert.fertilizer[id]; + } + /** * @notice Returns the balance of fertilized beans of a fertilizer owner given a set of fertilizer ids @@ -517,54 +436,40 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } /** - @notice Returns the current beans per fertilizer + * @notice Returns the total beans needed to repay the barn */ - function beansPerFertilizer() external view returns (uint128) { - return fert.bpf; - } - - function totalFertilizedBeans() external view returns (uint256) { - return fert.fertilizedIndex; - } - function totalUnfertilizedBeans() public view returns (uint256 beans) { return fert.unfertilizedIndex - fert.fertilizedIndex; } - function totalFertilizerBeans() external view returns (uint256 beans) { - return fert.unfertilizedIndex; - } - - function rinsedSprouts() external view returns (uint256) { - return fert.fertilizedPaidIndex; - } - - function rinsableSprouts() external view returns (uint256) { - return fert.fertilizedIndex - fert.fertilizedPaidIndex; - } - - function leftoverBeans() external view returns (uint256) { - return fert.leftoverBeans; - } - - function name() external pure returns (string memory) { - return "Beanstalk Payback Fertilizer"; - } - - function symbol() external pure returns (string memory) { - return "bsFERT"; - } - + /** + * @notice Returns the balance of a fertilizer owner given a fertilizer id + * @param account - the fertilizer owner + * @param id - the fertilizer id + * @return balance - the balance of the fertilizer owner + */ function balanceOf(address account, uint256 id) public view virtual override returns (uint256) { require(account != address(0), "ERC1155: balance query for the zero address"); return _balances[id][account].amount; } + /** + * @notice Returns the balance of a fertilizer owner given a set of fertilizer ids + * @param account - the fertilizer owner + * @param id - the fertilizer id + * @return balance - the balance of the fertilizer owner + */ function lastBalanceOf(address account, uint256 id) public view returns (Balance memory) { require(account != address(0), "ERC1155: balance query for the zero address"); return _balances[id][account]; } + /** + * @notice Returns the balance of a fertilizer owner given a set of fertilizer ids + * @param accounts - the fertilizer owners + * @param ids - the fertilizer ids + * @return balances - the balances of the fertilizer owners + */ function lastBalanceOfBatch( address[] memory accounts, uint256[] memory ids @@ -575,11 +480,24 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } } + /** + * @dev the uri for the payback fertilizer, omitted here due to lack of metadata + */ function uri(uint256) public view virtual override returns (string memory) { return ""; } - /// @notice Checks if an account is a contract. + function name() external pure returns (string memory) { + return "Beanstalk Payback Fertilizer"; + } + + function symbol() external pure returns (string memory) { + return "bsFERT"; + } + + /** + * @notice Checks if an account is a contract. + */ function isContract(address account) internal view returns (bool) { uint size; assembly { @@ -587,9 +505,4 @@ contract BarnPayback is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardU } return size > 0; } - - /// @dev called by the ShipmentPlanner contract to determine how many pinto to send to the barn payback contract - function barnRemaining() external view returns (uint256) { - return totalUnfertilizedBeans(); - } } diff --git a/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json b/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json index 4c57b311..786401a5 100644 --- a/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json @@ -214,5 +214,9 @@ "5654645373178", "5654645373178", "340802", + "0", + "0", + "0", + "0", "0" ] diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index 6677f162..f07862b6 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -26,13 +26,13 @@ { "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", "planSelector": "0x441d1e5b", - "recipient": "0x4", + "recipient": "0x5", "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" }, { "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", "planSelector": "0x441d1e5b", - "recipient": "0x4", + "recipient": "0x6", "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" } ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 377abee8..5cbcc6f2 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -19,7 +19,7 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose if (verbose) console.log("SiloPayback owner:", await siloPaybackContract.owner()); //////////////////////////// Barn Payback //////////////////////////// - console.log("--------------------------------") + console.log("--------------------------------"); console.log("Deploying BarnPayback..."); const barnPaybackFactory = await ethers.getContractFactory("BarnPayback", owner); // get the initialization args from the json file @@ -39,13 +39,13 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose if (verbose) console.log("BarnPayback owner:", await barnPaybackContract.owner()); //////////////////////////// Shipment Planner //////////////////////////// - console.log("--------------------------------") + console.log("--------------------------------"); console.log("Deploying ShipmentPlanner..."); const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner", owner); const shipmentPlannerContract = await shipmentPlannerFactory.deploy(L2_PINTO, PINTO); await shipmentPlannerContract.deployed(); if (verbose) console.log("ShipmentPlanner deployed to:", shipmentPlannerContract.address); - console.log("--------------------------------") + console.log("--------------------------------"); return { siloPaybackContract, @@ -55,12 +55,7 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose } // Distributes unripe BDV tokens from JSON file to contract recipients -async function distributeUnripeBdvTokens({ - siloPaybackContract, - owner, - dataPath, - verbose = true -}) { +async function distributeUnripeBdvTokens({ siloPaybackContract, owner, dataPath, verbose = true }) { if (verbose) console.log("Distributing unripe BDV tokens..."); try { From 0a0ee185fba0ed3c9c46c033a904674afbac912b Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 14 Aug 2025 10:27:33 +0300 Subject: [PATCH 031/270] more silo payback tests --- .../beanstalkShipments/SiloPayback.sol | 9 +- .../beanstalkShipments/SiloPayback.t.sol | 324 +++++++++--------- 2 files changed, 175 insertions(+), 158 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index a6c6406f..ef65cbc5 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -9,6 +9,10 @@ import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/Own import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { + + /// @dev precision used for reward calculations + uint256 public constant PRECISION = 1e18; + /// @dev struct to store the unripe bdv token data for batch minting struct UnripeBdvTokenData { address receipient; @@ -89,7 +93,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { function siloPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { uint256 tokenTotalSupply = totalSupply(); if (tokenTotalSupply > 0) { - rewardPerTokenStored += (shipmentAmount * 1e18) / tokenTotalSupply; + rewardPerTokenStored += (shipmentAmount * PRECISION) / tokenTotalSupply; totalReceived += shipmentAmount; } @@ -105,6 +109,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { uint256 rewardsToClaim = rewards[msg.sender]; require(rewardsToClaim > 0, "SiloPayback: no rewards to claim"); + // reset user rewards rewards[msg.sender] = 0; // Transfer the rewards to the recipient @@ -136,7 +141,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { function earned(address account) public view returns (uint256) { return ((balanceOf(account) * (rewardPerTokenStored - userRewardPerTokenPaid[account])) / - 1e18) + rewards[account]; + PRECISION) + rewards[account]; } /// @dev get the remaining amount of silo payback tokens to be distributed, called by the planner diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index bdf2dc69..6fb66522 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -10,7 +10,6 @@ import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; - contract SiloPaybackTest is TestHelper { SiloPayback public siloPayback; MockToken public pintoToken; @@ -84,9 +83,7 @@ contract SiloPaybackTest is TestHelper { uint256 rewardAmount = 100e6; // 10% of total supply _sendRewardsToContract(rewardAmount); uint256 expectedRewardPerToken = (rewardAmount * PRECISION) / siloPayback.totalSupply(); - - console.log("rewardPerTokenStored", siloPayback.rewardPerTokenStored()); - console.log("totalReceived", siloPayback.totalReceived()); + console.log("expectedRewardPerToken: ", expectedRewardPerToken); // Check global reward state updated correctly assertEq(siloPayback.rewardPerTokenStored(), expectedRewardPerToken); @@ -117,182 +114,193 @@ contract SiloPaybackTest is TestHelper { ////////////// Claim ////////////// - // todo: add test to claim after 2 distributions have happened with 1 user claiming every season and one who doesnt - - function test_siloPaybackClaimMultipleUsers() public { - // Setup users with different balances - _mintTokensToUser(farmer1, 300e6); - _mintTokensToUser(farmer2, 700e6); - - // Send rewards - uint256 rewardAmount = 200e6; - _sendRewardsToContract(rewardAmount); + /** + * @dev test that two users can claim their rewards pro rata to their balance + * - farmer1 claims after each distribution + * - farmer2 waits until the end + */ + function test_siloPayback2UsersLateClaim() public { + // Setup: farmer1 claims after each distribution, farmer2 waits until the end + _mintTokensToUser(farmer1, 400e6); // farmer1 has 40% + _mintTokensToUser(farmer2, 600e6); // farmer2 has 60% + + // First distribution: 100 BEAN rewards + _sendRewardsToContract(100e6); - uint256 farmer1Rewards = siloPayback.earned(farmer1); // 60 tokens - assertEq(farmer1Rewards, 60e6); - uint256 farmer2Rewards = siloPayback.earned(farmer2); // 140 tokens - assertEq(farmer2Rewards, 140e6); + // Check initial earned amounts + uint256 farmer1Earned1 = siloPayback.earned(farmer1); // 40% of 100 = 40 + uint256 farmer2Earned1 = siloPayback.earned(farmer2); // 60% of 100 = 60 + assertEq(farmer1Earned1, 40e6); + assertEq(farmer2Earned1, 60e6); - // farmer1 claims first + // farmer1 claims immediately after first distribution (claiming every season) + uint256 farmer1BalanceBefore = IERC20(BEAN).balanceOf(farmer1); vm.prank(farmer1); siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); - assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1Rewards); + // Verify farmer1 received rewards and state is updated + assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBefore + farmer1Earned1); assertEq(siloPayback.earned(farmer1), 0); - - // farmer2's earnings should be unaffected - assertEq(siloPayback.earned(farmer2), farmer2Rewards); - - // farmer2 claims - vm.prank(farmer2); - siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); - - assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2Rewards); - assertEq(siloPayback.earned(farmer2), 0); - - // assert no more underlying BEAN in the contract - assertEq(IERC20(BEAN).balanceOf(address(siloPayback)), 0); - } - - ////////////// Double claim and transfer logic ////////////// - - function test_siloPaybackTransferUpdatesRewards() public { - // Setup: farmer1 and farmer2 have tokens, rewards are distributed - _mintTokensToUser(farmer1, 500e6); // 50% of total supply - _mintTokensToUser(farmer2, 500e6); // 50% of total supply - - uint256 rewardAmount = 200e6; - _sendRewardsToContract(rewardAmount); - - uint256 farmer1EarnedBefore = siloPayback.earned(farmer1); - assertEq(farmer1EarnedBefore, 100e6); - uint256 farmer2EarnedBefore = siloPayback.earned(farmer2); - assertEq(farmer2EarnedBefore, 100e6); - - // farmer1 transfers tokens to farmer2 - vm.prank(farmer1); - siloPayback.transfer(farmer2, 200e6); - - // Check that rewards were captured for both users - // aka no matter if you transfer, your reward index is still the same - assertEq(siloPayback.earned(farmer1), farmer1EarnedBefore); - assertEq(siloPayback.earned(farmer2), farmer2EarnedBefore); - // check that the userRewardPerTokenPaid is updated to the latest checkpoint + assertEq(siloPayback.rewards(farmer1), 0); assertEq(siloPayback.userRewardPerTokenPaid(farmer1), siloPayback.rewardPerTokenStored()); - assertEq(siloPayback.userRewardPerTokenPaid(farmer2), siloPayback.rewardPerTokenStored()); - - // Check balances updated - assertEq(siloPayback.balanceOf(farmer1), 300e6); - assertEq(siloPayback.balanceOf(farmer2), 700e6); - } - function test_siloPaybackTransferPreventsDoubleClaiming() public { - // Scenario: farmer1 tries to game by transferring tokens to get more rewards - _mintTokensToUser(farmer1, 1000e6); + // farmer2 does NOT claim, so their rewards should remain + assertEq(siloPayback.earned(farmer2), farmer2Earned1); - // First round of rewards - _sendRewardsToContract(100e6); - uint256 firstRewards = siloPayback.earned(farmer1); + // Second distribution: 200 BEAN rewards + _sendRewardsToContract(200e6); - // check that farmer3 balance is 0 and no rewards - assertEq(siloPayback.earned(farmer3), 0); - assertEq(siloPayback.balanceOf(farmer3), 0); + // After second distribution: + // farmer1 should earn 40% of new 200 = 80 BEAN (since they claimed and reset) + // farmer2 should have 60 (from first) + 60% of 200 = 60 + 120 = 180 BEAN total + uint256 farmer1Earned2 = siloPayback.earned(farmer1); + uint256 farmer2Earned2 = siloPayback.earned(farmer2); + + assertEq(farmer1Earned2, 80e6, "farmer1 should earn 40% of second distribution"); + assertEq( + farmer2Earned2, + 180e6, + "farmer2 should have accumulated rewards from both distributions" + ); - // farmer1 transfers all tokens to another address he controls + // Now farmer1 claims again (claiming every season) + uint256 farmer1BalanceBeforeClaim2 = IERC20(BEAN).balanceOf(farmer1); vm.prank(farmer1); - siloPayback.transfer(farmer3, 1000e6); - - // check that farmer3 balance is increased to 1000e6 but rewards are still 0 - assertEq(siloPayback.earned(farmer3), 0); - assertEq(siloPayback.balanceOf(farmer3), 1000e6); - - // Second round of rewards - _sendRewardsToContract(100e6); - - // farmer1 should only have rewards from first round - // farmer3 should only have rewards from second round - assertEq(siloPayback.earned(farmer1), firstRewards); - assertEq(siloPayback.earned(farmer3), 100e6); // Only second round rewards - - // Total rewards should be conserved - assertEq(siloPayback.earned(farmer1) + siloPayback.earned(farmer3), 200e6); - } + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); - function test_siloPaybackTransferToNewUserStartsFreshRewards() public { - _mintTokensToUser(farmer1, 1000e6); + // farmer1 should have received their second round rewards + assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBeforeClaim2 + farmer1Earned2); + assertEq(siloPayback.earned(farmer1), 0); - // farmer1 earns rewards - _sendRewardsToContract(100e6); + // farmer2 finally claims all accumulated rewards + uint256 farmer2BalanceBefore = IERC20(BEAN).balanceOf(farmer2); + vm.prank(farmer2); + siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); - // Transfer to farmer3 (new user) - vm.prank(farmer1); - siloPayback.transfer(farmer3, 500e6); + // farmer2 should receive all their accumulated rewards + assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2BalanceBefore + farmer2Earned2); + assertEq(siloPayback.earned(farmer2), 0); - // farmer3 should have checkpoint synced but no earned rewards yet - assertEq(siloPayback.earned(farmer3), 0); - assertEq(siloPayback.userRewardPerTokenPaid(farmer3), siloPayback.rewardPerTokenStored()); + // Final verification: Total rewards distributed should equal total claimed + uint256 totalRewardsDistributed = 100e6 + 200e6; // 300 BEAN total + uint256 totalClaimed = IERC20(BEAN).balanceOf(farmer1) + IERC20(BEAN).balanceOf(farmer2); + assertEq( + totalClaimed, + totalRewardsDistributed, + "Total claimed should equal total distributed" + ); - // New rewards distributed - _sendRewardsToContract(200e6); + // Contract should have no BEAN left + assertEq( + IERC20(BEAN).balanceOf(address(siloPayback)), + 0, + "Contract should have no BEAN remaining" + ); - // farmer3 should get rewards proportional to his balance - uint256 expectedfarmer3Rewards = (500e6 * 200e6) / 1000e6; // 50% of new rewards - assertEq(siloPayback.earned(farmer3), expectedfarmer3Rewards); + // Verify proportional correctness: + // farmer1: 40 (first) + 80 (second) = 120 total + // farmer2: 60 (first) + 120 (second) = 180 total + assertEq(IERC20(BEAN).balanceOf(farmer1), 120e6, "farmer1 total should be 120"); + assertEq(IERC20(BEAN).balanceOf(farmer2), 180e6, "farmer2 total should be 180"); } - ////////////// COMPLEX SCENARIOS ////////////// - - function test_siloPaybackMultipleRewardDistributionsAndClaims() public { - _mintTokensToUser(farmer1, 400e6); - _mintTokensToUser(farmer2, 600e6); - - // First reward distribution - _sendRewardsToContract(100e6); - uint256 farmer1Rewards1 = siloPayback.earned(farmer1); // 40 - uint256 farmer2Rewards1 = siloPayback.earned(farmer2); // 60 + ////////////// Double claim and transfer logic ////////////// - // farmer1 claims + function test_siloPaybackDoubleClaimAndTransferNoClaiming() public { + // Step 1: Setup users with different token amounts + _mintTokensToUser(farmer1, 600e6); // 60% ownership + _mintTokensToUser(farmer2, 400e6); // 40% ownership + + // Step 2: First reward distribution - both users earn proportionally + _sendRewardsToContract(150e6); + + uint256 farmer1InitialEarned = siloPayback.earned(farmer1); // 90 BEAN (60%) + uint256 farmer2InitialEarned = siloPayback.earned(farmer2); // 60 BEAN (40%) + assertEq(farmer1InitialEarned, 90e6, "farmer1 should earn 60% of first distribution"); + assertEq(farmer2InitialEarned, 60e6, "farmer2 should earn 40% of first distribution"); + + // Step 3: Transfer updates rewards (prevents gaming through checkpoint sync) + uint256 farmer1PreTransferCheckpoint = siloPayback.userRewardPerTokenPaid(farmer1); + uint256 farmer2PreTransferCheckpoint = siloPayback.userRewardPerTokenPaid(farmer2); + + // farmer1 transfers 200 tokens to farmer2 vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); - - // Second reward distribution - _sendRewardsToContract(200e6); - - // farmer1 should have new rewards, farmer2 should have accumulated - uint256 farmer1Rewards2 = siloPayback.earned(farmer1); // 80 (40% of 200) - uint256 farmer2Rewards2 = siloPayback.earned(farmer2); // 180 (60 + 120) - - assertEq(farmer1Rewards2, 80e6); - assertEq(farmer2Rewards2, 180e6); - - // Verify farmer1 received first claim - assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1Rewards1); - } - - function test_siloPaybackRewardsWithTransfersOverTime() public { - _mintTokensToUser(farmer1, 1000e6); - - // Initial rewards - _sendRewardsToContract(100e6); - - // Transfer half to farmer2 + siloPayback.transfer(farmer2, 200e6); + + // Verify that transfer hook captured earned rewards and updated checkpoints + assertEq(siloPayback.rewards(farmer1), farmer1InitialEarned, "farmer1 rewards should be captured in storage"); + assertEq(siloPayback.rewards(farmer2), farmer2InitialEarned, "farmer2 rewards should be captured in storage"); + assertEq(siloPayback.userRewardPerTokenPaid(farmer1), siloPayback.rewardPerTokenStored(), "farmer1 checkpoint updated"); + assertEq(siloPayback.userRewardPerTokenPaid(farmer2), siloPayback.rewardPerTokenStored(), "farmer2 checkpoint updated"); + + // Verify that earned amounts remain the same after transfer (no double counting) + assertEq(siloPayback.earned(farmer1), farmer1InitialEarned, "farmer1 earned should remain same after transfer"); + assertEq(siloPayback.earned(farmer2), farmer2InitialEarned, "farmer2 earned should remain same after transfer"); + + // Verify that token balances updated correctly + assertEq(siloPayback.balanceOf(farmer1), 400e6, "farmer1 balance after transfer"); + assertEq(siloPayback.balanceOf(farmer2), 600e6, "farmer2 balance after transfer"); + + // Step 4: Anti-gaming test - farmer1 tries to game by transferring to farmer3 (new user) vm.prank(farmer1); - siloPayback.transfer(farmer2, 500e6); - - // More rewards - _sendRewardsToContract(200e6); - - // farmer1 should have: 100 (from first round) + 100 (50% of second round) - // farmer2 should have: 0 (wasn't holder for first round) + 100 (50% of second round) - assertEq(siloPayback.earned(farmer1), 200e6); - assertEq(siloPayback.earned(farmer2), 100e6); + siloPayback.transfer(farmer3, 200e6); + + // Verify that farmer3 starts fresh with no previous rewards + assertEq(siloPayback.earned(farmer3), 0, "farmer3 should have no rewards from before they held tokens"); + assertEq(siloPayback.userRewardPerTokenPaid(farmer3), siloPayback.rewardPerTokenStored(), "farmer3 synced to current state"); + assertEq(siloPayback.balanceOf(farmer3), 200e6, "farmer3 received tokens"); + + // farmer1 still has their original earned rewards + assertEq(siloPayback.earned(farmer1), farmer1InitialEarned, "farmer1 retains original rewards"); + + // Step 5: Second reward distribution - new proportional split + _sendRewardsToContract(300e6); + + // Current balances: farmer1=200, farmer2=600, farmer3=200 (total=1000) + // New rewards: 300 BEAN should be split: 20%, 60%, 20% + + uint256 farmer1FinalEarned = siloPayback.earned(farmer1); // 90 (original) + 60 (20% of 300) + uint256 farmer2FinalEarned = siloPayback.earned(farmer2); // 60 (original) + 180 (60% of 300) + uint256 farmer3FinalEarned = siloPayback.earned(farmer3); // 0 (original) + 60 (20% of 300) + + assertEq(farmer1FinalEarned, 150e6, "farmer1: 90 original + 60 new rewards"); + assertEq(farmer2FinalEarned, 240e6, "farmer2: 60 original + 180 new rewards"); + assertEq(farmer3FinalEarned, 60e6, "farmer3: 0 original + 60 new rewards"); + + // Step 6: Verify total conservation - no rewards lost or duplicated + uint256 totalEarned = farmer1FinalEarned + farmer2FinalEarned + farmer3FinalEarned; + uint256 totalDistributed = 150e6 + 300e6; // 450 total + assertEq(totalEarned, totalDistributed, "Total earned must equal total distributed"); + + // Step 7: All users claim and verify final balances + uint256 farmer1BalanceBefore = IERC20(BEAN).balanceOf(farmer1); + uint256 farmer2BalanceBefore = IERC20(BEAN).balanceOf(farmer2); + uint256 farmer3BalanceBefore = IERC20(BEAN).balanceOf(farmer3); + + // Claim for all users + vm.prank(farmer1); + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); + + vm.prank(farmer2); + siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); + + vm.prank(farmer3); + siloPayback.claim(farmer3, LibTransfer.To.EXTERNAL); + + // Verify all rewards were paid out correctly + assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBefore + farmer1FinalEarned, "farmer1 received correct payout"); + assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2BalanceBefore + farmer2FinalEarned, "farmer2 received correct payout"); + assertEq(IERC20(BEAN).balanceOf(farmer3), farmer3BalanceBefore + farmer3FinalEarned, "farmer3 received correct payout"); + + // Contract should be empty after all claims + assertEq(IERC20(BEAN).balanceOf(address(siloPayback)), 0, "Contract should have no remaining BEAN"); + + // All earned amounts should be reset to zero + assertEq(siloPayback.earned(farmer1), 0, "farmer1 earned reset after claim"); + assertEq(siloPayback.earned(farmer2), 0, "farmer2 earned reset after claim"); + assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned reset after claim"); } - ////////////// EDGE CASES AND ERROR CONDITIONS ////////////// - - // todo: pinto sent without total supply being 0 - // todo: precision with small amounts - ////////////// HELPER FUNCTIONS ////////////// function _mintTokensToUsers(address[] memory recipients, uint256[] memory amounts) internal { @@ -315,7 +323,11 @@ contract SiloPaybackTest is TestHelper { } function _sendRewardsToContract(uint256 amount) internal { - deal(address(BEAN), address(siloPayback), amount, true); + deal(address(BEAN), address(owner), amount, true); + // owner transfers BEAN to siloPayback + // (we use an intermidiary because deal overwrites the balance of the owner) + vm.prank(owner); + IERC20(BEAN).transfer(address(siloPayback), amount); // Call receiveRewards to update the global state vm.prank(BEANSTALK); From c435c5d5d098a7037b341ca1f24d0a4d9b043184 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 14 Aug 2025 10:46:14 +0300 Subject: [PATCH 032/270] remove mock, add internal balance test --- .../beanstalkShipments/SiloPayback.sol | 19 ++-- contracts/mocks/MockSiloPayback.sol | 95 ------------------- .../BeanstalkShipmentsTest.t.sol | 5 +- .../beanstalkShipments/SiloPayback.t.sol | 64 +++++++++---- 4 files changed, 55 insertions(+), 128 deletions(-) delete mode 100644 contracts/mocks/MockSiloPayback.sol diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index ef65cbc5..708104d8 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -19,9 +19,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { uint256 bdv; } - /// @dev the Pinto Diamond contract + /// @dev External contracts for interactions with the Pinto protocol IBeanstalk public pintoProtocol; - /// @dev the Pinto token IERC20 public pinto; /// @dev Tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. @@ -151,7 +150,16 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /////////////////// Transfer Hook and ERC20 overrides /////////////////// - /// @dev pre transfer hook to update rewards for both sender and receiver + /** + * @notice pre transfer hook to update rewards for both sender and receiver + * The result is that token balances change, but both parties have been + * "checkpointed" to prevent any reward manipulation through transfers. + * Claims happen only when the user decides to claim. + * This way all claims can also happen in the internal balance. + * @param from The address of the sender + * @param to The address of the receiver + * @param amount The amount of tokens being transferred + */ function _beforeTokenTransfer(address from, address to, uint256 amount) internal { if (from != address(0)) { // capture any existing rewards for the sender, update their checkpoint to current global state @@ -164,11 +172,6 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { rewards[to] = earned(to); userRewardPerTokenPaid[to] = rewardPerTokenStored; } - - // result: token balances change, but both parties have been - // "checkpointed" to prevent any reward manipulation through transfers - // claims happen when the users decide to claim. - // This way all claims can also happen in the internal balance. } /// @dev override the standard transfer function to update rewards diff --git a/contracts/mocks/MockSiloPayback.sol b/contracts/mocks/MockSiloPayback.sol deleted file mode 100644 index 811c8cae..00000000 --- a/contracts/mocks/MockSiloPayback.sol +++ /dev/null @@ -1,95 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; - -import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; -import {IBeanstalkWellFunction} from "contracts/interfaces/basin/IBeanstalkWellFunction.sol"; -import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; -import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; -import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; - - -// TODO: Change this with non redeemable tokens that claim before a transfer and indexes etc. -contract MockSiloPayback is ERC20, Ownable { - struct UnripeBdvTokenData { - address receipient; - uint256 bdv; - } - - /// @dev the Pinto Diamond contract - IBeanstalk public pintoProtocol; - /// @dev the Pinto token - IERC20 public pinto; - - /// @dev Tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. - uint256 public totalDistributed; - - /// @dev event emitted when user redeems bdv tokens for underlying pinto - event Redeemed(address indexed user, uint256 unripeBdvAmount, uint256 underlyingPintoAmount); - - constructor( - address _pinto, - address _pintoProtocol - ) ERC20("UnripeBdvToken", "urBDV") Ownable(msg.sender) { - pinto = IERC20(_pinto); - pintoProtocol = IBeanstalk(_pintoProtocol); - // Approve the Pinto Diamond to spend pinto tokens for transfers - pinto.approve(_pintoProtocol, type(uint256).max); - } - - /** - * @notice Distribute unripe bdv tokens to the old beanstalk participants. - * Called in batches after deployment to make sure we don't run out of gas. - * @param unripeReceipts Array of UnripeBdvTokenData - */ - function batchDistribute(UnripeBdvTokenData[] memory unripeReceipts) external onlyOwner { - for (uint256 i = 0; i < unripeReceipts.length; i++) { - _mint(unripeReceipts[i].receipient, unripeReceipts[i].bdv); - totalDistributed += unripeReceipts[i].bdv; - } - } - - /** - * @notice Redeems a given amount of unripe bdv tokens for underlying pinto - * @param amount the amount of unripe bdv tokens to redeem - * @param recipient the address to send the underlying pinto to - * @param toMode the mode to send the underlying pinto in - */ - function redeem(uint256 amount, address recipient, LibTransfer.To toMode) external { - uint256 pintoToRedeem = unripeToUnderlyingPinto(amount); - // burn the corresponding amount of unripe bdv tokens - _burn(msg.sender, amount); - // send the underlying pintos to the user - pintoProtocol.transferToken( - pinto, - recipient, - pintoToRedeem, - LibTransfer.From.EXTERNAL, - toMode - ); - emit Redeemed(msg.sender, amount, pintoToRedeem); - } - - /** - * @dev Gets the amount of underlying pinto that corresponds to a given amount of unripe bdv tokens - * according to the current exchange rate. - * @param amount the amount of unripe bdv tokens to redeem - */ - function unripeToUnderlyingPinto(uint256 amount) public view returns (uint256) { - if (totalSupply() == 0) return 0; - return (amount * totalUnderlyingPinto()) / totalSupply(); - } - - /** - * @dev Tracks how many underlying pintos are available to redeem - * @return the total amount of underlying pintos in the contract - */ - function totalUnderlyingPinto() public view returns (uint256) { - return pinto.balanceOf(address(this)); - } - - /// @dev override the decimals to 6 decimal places, BDV has 6 decimals - function decimals() public view override returns (uint8) { - return 6; - } -} diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol index 5634fe7f..4ceccf44 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol @@ -5,12 +5,9 @@ pragma abicoder v2; import {TestHelper} from "test/foundry/utils/TestHelper.sol"; import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; -import {MockSiloPayback} from "contracts/mocks/MockSiloPayback.sol"; contract BeanstalkShipmentsTest is TestHelper { - MockSiloPayback siloPayback; - // we need to: // - 1. recreate a mock beanstalk repayment field with a mock podline // - 2. deploy the unripe distributor (make a mock that is non upgradable for ease of testing) @@ -24,7 +21,7 @@ contract BeanstalkShipmentsTest is TestHelper { // add new field, init some plots (see sun.t.sol) // deploy unripe distributor - siloPayback = new MockSiloPayback(PINTO, BEANSTALK); + // siloPayback = new SiloPayback(PINTO, BEANSTALK); // upddate routes here setRoutes_all(); diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index 6fb66522..b236732e 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -180,28 +180,50 @@ contract SiloPaybackTest is TestHelper { // farmer2 should receive all their accumulated rewards assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2BalanceBefore + farmer2Earned2); assertEq(siloPayback.earned(farmer2), 0); + } - // Final verification: Total rewards distributed should equal total claimed - uint256 totalRewardsDistributed = 100e6 + 200e6; // 300 BEAN total - uint256 totalClaimed = IERC20(BEAN).balanceOf(farmer1) + IERC20(BEAN).balanceOf(farmer2); - assertEq( - totalClaimed, - totalRewardsDistributed, - "Total claimed should equal total distributed" - ); - - // Contract should have no BEAN left - assertEq( - IERC20(BEAN).balanceOf(address(siloPayback)), - 0, - "Contract should have no BEAN remaining" - ); - - // Verify proportional correctness: - // farmer1: 40 (first) + 80 (second) = 120 total - // farmer2: 60 (first) + 120 (second) = 180 total - assertEq(IERC20(BEAN).balanceOf(farmer1), 120e6, "farmer1 total should be 120"); - assertEq(IERC20(BEAN).balanceOf(farmer2), 180e6, "farmer2 total should be 180"); + /** + * @dev test that two users can claim their rewards to their internal balance + */ + function test_siloPaybackClaimToInternalBalance2Users() public { + // Simple test: Both farmers claim rewards to their internal balance + _mintTokensToUser(farmer1, 600e6); // 60% + _mintTokensToUser(farmer2, 400e6); // 40% + + // Distribute rewards + uint256 rewardAmount = 150e6; + _sendRewardsToContract(rewardAmount); + + uint256 farmer1Earned = siloPayback.earned(farmer1); // 90 BEAN (60%) + uint256 farmer2Earned = siloPayback.earned(farmer2); // 60 BEAN (40%) + assertEq(farmer1Earned, 90e6); + assertEq(farmer2Earned, 60e6); + + // Get initial internal balances + uint256 farmer1InternalBefore = bs.getInternalBalance(farmer1, address(BEAN)); + uint256 farmer2InternalBefore = bs.getInternalBalance(farmer2, address(BEAN)); + + // Both farmers claim to INTERNAL balance + vm.prank(farmer1); + siloPayback.claim(farmer1, LibTransfer.To.INTERNAL); + + vm.prank(farmer2); + siloPayback.claim(farmer2, LibTransfer.To.INTERNAL); + + // Verify both farmers' rewards went to internal balance + uint256 farmer1InternalAfter = bs.getInternalBalance(farmer1, address(BEAN)); + uint256 farmer2InternalAfter = bs.getInternalBalance(farmer2, address(BEAN)); + + assertEq(farmer1InternalAfter, farmer1InternalBefore + farmer1Earned, "farmer1 internal balance should increase by earned amount"); + assertEq(farmer2InternalAfter, farmer2InternalBefore + farmer2Earned, "farmer2 internal balance should increase by earned amount"); + + // Both users should have zero earned rewards after claiming + assertEq(siloPayback.earned(farmer1), 0, "farmer1 earned should reset after claim"); + assertEq(siloPayback.earned(farmer2), 0, "farmer2 earned should reset after claim"); + + // Verify total internal balance increases equal total distributed rewards + uint256 totalInternalIncrease = (farmer1InternalAfter - farmer1InternalBefore) + (farmer2InternalAfter - farmer2InternalBefore); + assertEq(totalInternalIncrease, rewardAmount, "Total internal balance increase should equal total distributed rewards"); } ////////////// Double claim and transfer logic ////////////// From 8e97191e716b13a86c711bdcbac65c9811cd2c1c Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 14 Aug 2025 12:07:14 +0300 Subject: [PATCH 033/270] init barn payback tests --- .../beanstalkShipments/barn/BarnPayback.sol | 4 +- .../barn/BeanstalkFertilizer.sol | 8 +- contracts/mocks/MockPayback.sol | 8 - .../beanstalkShipments/BarnPayback.t.sol | 764 ++++++++++++++++++ .../BeanstalkShipmentsTest.t.sol | 12 +- .../beanstalkShipments/SiloPayback.t.sol | 6 - 6 files changed, 777 insertions(+), 25 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index ef2a6617..7d014a22 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -116,7 +116,7 @@ contract BarnPayback is BeanstalkFertilizer { remainingBpf = (amountToFertilize - deltaFertilized) / fert.activeFertilizer; newBpf = oldBpf + remainingBpf; } else { - fert.bpf = uint128(firstBpf); // SafeCast unnecessary here. + fert.bpf = uint128(firstBpf); fert.fertilizedIndex += deltaFertilized; // Else, if there is no more fertilizer. Matches plan cap. // fert.fertilizedIndex == fert.unfertilizedIndex @@ -147,7 +147,7 @@ contract BarnPayback is BeanstalkFertilizer { uint256 amount = __update(msg.sender, ids, uint256(fert.bpf)); if (amount > 0) { fert.fertilizedPaidIndex += amount; - // Transfer the rewards to the recipient + // Transfer the rewards to the recipient, pintos are streamed to the contract's external balance pintoProtocol.transferToken(pinto, msg.sender, amount, LibTransfer.From.EXTERNAL, mode); } } diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index a139e677..3ccae749 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -56,8 +56,8 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran * - Fertilizer Id is the Beans Per Fertilzer level at which the Fertilizer no longer receives Beans. * - Sort in order by which Fertilizer Id expires next. * @param activeFertilizer The number of active Fertilizer. - * @param fertilizedIndex The total number of Fertilizer Beans. - * @param unfertilizedIndex The total number of Unfertilized Beans ever. + * @param fertilizedIndex The total number of Fertilizer Beans (paid out). + * @param unfertilizedIndex The total number of Unfertilized Beans ever (total debt). * @param fertilizedPaidIndex The total number of Fertilizer Beans that have been sent out to users. * @param fertFirst The lowest active Fertilizer Id (start of linked list that is stored by nextFid). * @param fertLast The highest active Fertilizer Id (end of linked list that is stored by nextFid). @@ -65,8 +65,8 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran * @param leftoverBeans Amount of Beans that have shipped to Fert but not yet reflected in bpf. */ struct SystemFertilizer { - mapping(uint128 => uint256) fertilizer; - mapping(uint128 => uint128) nextFid; + mapping(uint128 id => uint256 amount) fertilizer; + mapping(uint128 id => uint128 nextId) nextFid; uint256 activeFertilizer; uint256 fertilizedIndex; uint256 unfertilizedIndex; diff --git a/contracts/mocks/MockPayback.sol b/contracts/mocks/MockPayback.sol index 5cdbd137..f2df1207 100644 --- a/contracts/mocks/MockPayback.sol +++ b/contracts/mocks/MockPayback.sol @@ -6,14 +6,6 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {IPayback} from "contracts/interfaces/IPayback.sol"; -// TODO: This is an old assumpttion on how the payback contract will be used. -// We need to update this to reflect the new structure. -// We will have 2 payback contracts: -// 1 for unripe silo distributor -// 1 for fertilizer -// So the contract will be split into 2 contracts: -// 1 for unripe silo distributor with siloRemaining -// 1 for fertilizer with barnRemaining contract MockPayback is IPayback { uint256 constant INITIAL_REMAINING = 1_000_000_000e6; diff --git a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol index e69de29b..b3944037 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol @@ -0,0 +1,764 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; +pragma abicoder v2; + +import {Test} from "forge-std/Test.sol"; +import {console} from "forge-std/console.sol"; +import {BeanstalkFertilizer} from "contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol"; +import {BarnPayback} from "contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol"; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; +import {TestHelper} from "test/foundry/utils/TestHelper.sol"; + +/** + * @title BarnPaybackTest + * @author Generated Test + * @notice Comprehensive tests for BarnPayback fertilizer functionality + * @dev Tests focus on pinto distribution and payback mechanics for fertilizer holders + */ +contract BarnPaybackTest is TestHelper { + // Events + event ClaimFertilizer(uint256[] ids, uint256 beans); + event FertilizerRewardsReceived(uint256 amount); + + // Initial state of the system after arbitrum migration for reference + // "activeFertilizer": "17216958", // Total amount of active fertilizer tokens + // "fertilizedIndex": "5654645373178", // Total amount of fertilized beans paid out + // "unfertilizedIndex": "95821405245000", // Total amount of unfertilized beans ever (total debt) + // "fertilizedPaidIndex": "5654645373178", // Total amount of fertilized beans paid out + // "fertFirst": "1334303", // First active fertilizer id + // "fertLast": "6000000", // Last active fertilizer id + // "bpf": "340802", // current Beans per fertilizer, determines if an id is active or not + // "leftoverBeans": "0x0" // Amount of beans that have shipped to Fert but not yet reflected in bpf + // }, + + // Contracts + BarnPayback public barnPayback; + TransparentUpgradeableProxy public proxy; + + // Test users + address public owner = makeAddr("owner"); + address public user1 = makeAddr("farmer1"); + address public user2 = makeAddr("farmer2"); + address public user3 = makeAddr("farmer3"); + + // Test constants + uint128 constant INITIAL_BPF = 1000; + uint128 constant FERT_ID_1 = 5000; // 5000 beans per fertilizer + uint128 constant FERT_ID_2 = 10000; // 10000 beans per fertilizer + uint128 constant FERT_ID_3 = 15000; // 15000 beans per fertilizer + + function setUp() public { + initializeBeanstalkTestState(true, false); + + // Deploy implementation contract + BarnPayback implementation = new BarnPayback(); + + // Prepare system fertilizer state + BeanstalkFertilizer.InitSystemFertilizer + memory initSystemFert = _createInitSystemFertilizerData(); + + // Encode initialization data + vm.startPrank(owner); + bytes memory data = abi.encodeWithSelector( + BarnPayback.initialize.selector, + address(BEAN), + address(BEANSTALK), + initSystemFert + ); + + // Deploy proxy contract + proxy = new TransparentUpgradeableProxy( + address(implementation), // implementation + owner, // initial owner + data // initialization data + ); + + vm.stopPrank(); + + // Set the barn payback proxy + barnPayback = BarnPayback(address(proxy)); + + // Mint fertilizers to accounts + vm.startPrank(owner); + BarnPayback.Fertilizers[] memory fertilizerData = _createFertilizerAccountData(); + barnPayback.mintFertilizers(fertilizerData); + vm.stopPrank(); + + // label the users + vm.label(user1, "farmer1"); + vm.label(user2, "farmer2"); + vm.label(user3, "farmer3"); + } + + ////////////// Shipment receiving ////////////// + + function test_barnPaybackReceivePintoRewards() public { + // Try to update state from non-protocol, expect revert + vm.prank(user1); + vm.expectRevert("BarnPayback: only pinto protocol"); + barnPayback.barnPaybackReceive(100000); + + // Send rewards to contract and call barnPaybackReceive + uint256 rewardAmount = 50000; // 50k pinto (6 decimals) + uint256 initialUnfertilized = barnPayback.totalUnfertilizedBeans(); + + deal(address(BEAN), address(barnPayback), rewardAmount); + + // Only BEANSTALK can call barnPaybackReceive + vm.expectEmit(true, true, true, true); + emit FertilizerRewardsReceived(rewardAmount); + + vm.prank(address(BEANSTALK)); + barnPayback.barnPaybackReceive(rewardAmount); + + // Should reduce unfertilized beans + uint256 finalUnfertilized = barnPayback.totalUnfertilizedBeans(); + assertLt(finalUnfertilized, initialUnfertilized, "Should reduce unfertilized beans"); + + // Barn remaining should be updated + assertEq( + barnPayback.barnRemaining(), + finalUnfertilized, + "Barn remaining should match unfertilized" + ); + } + + /////////////// Earned calculation /////////////// + + function test_barnPaybackFertilizedCalculationMultipleUsers() public { + // Send rewards to advance BPF + uint256 rewardAmount = 25000; + _sendRewardsToContract(rewardAmount); + + // user1 has 60 of FERT_ID_1 + uint256[] memory user1Ids = new uint256[](1); + user1Ids[0] = FERT_ID_1; + + // user2 has 40 of FERT_ID_1 and 30 of FERT_ID_2 + uint256[] memory user2Ids = new uint256[](2); + user2Ids[0] = FERT_ID_1; + user2Ids[1] = FERT_ID_2; + + uint256 user1Fertilized = barnPayback.balanceOfFertilized(user1, user1Ids); + uint256 user2Fertilized = barnPayback.balanceOfFertilized(user2, user2Ids); + + assertGt(user1Fertilized, 0, "user1 should have fertilized beans"); + assertGt(user2Fertilized, 0, "user2 should have fertilized beans"); + + // user2 should have more since they hold more fertilizer (40 + 30 vs 60) + // But the ratio depends on how BPF advancement affects each ID + console.log("user1 fertilized:", user1Fertilized); + console.log("user2 fertilized:", user2Fertilized); + } + + ////////////// Claim ////////////// + + /** + * @dev test that two users can claim their fertilizer rewards pro rata to their balance + * - user1 claims after each distribution + * - user2 waits until the end + */ + function test_barnPayback2UsersLateClaim() public { + // Setup: user1 claims after each distribution, user2 waits until the end + // user1: 60 of FERT_ID_1 + // user2: 40 of FERT_ID_1, 30 of FERT_ID_2 + + uint256[] memory user1Ids = new uint256[](1); + user1Ids[0] = FERT_ID_1; + + uint256[] memory user2Ids = new uint256[](2); + user2Ids[0] = FERT_ID_1; + user2Ids[1] = FERT_ID_2; + + // First distribution: advance BPF + _sendRewardsToContract(25000); + + // Check initial fertilized amounts + uint256 user1Fertilized1 = barnPayback.balanceOfFertilized(user1, user1Ids); + uint256 user2Fertilized1 = barnPayback.balanceOfFertilized(user2, user2Ids); + assertGt(user1Fertilized1, 0, "user1 should have fertilized beans"); + assertGt(user2Fertilized1, 0, "user2 should have fertilized beans"); + + // user1 claims immediately after first distribution (claiming every season) + uint256 user1BalanceBefore = IERC20(BEAN).balanceOf(user1); + + vm.expectEmit(true, true, true, true); + emit ClaimFertilizer(user1Ids, user1Fertilized1); + + vm.prank(user1); + barnPayback.claimFertilized(user1Ids, LibTransfer.To.EXTERNAL); + + // Verify user1 received rewards + assertEq(IERC20(BEAN).balanceOf(user1), user1BalanceBefore + user1Fertilized1); + + // user1 should have no more fertilized beans for these IDs + assertEq(barnPayback.balanceOfFertilized(user1, user1Ids), 0); + + // user2 does NOT claim, so their fertilized amount should remain + assertEq(barnPayback.balanceOfFertilized(user2, user2Ids), user2Fertilized1); + + // Second distribution: advance BPF further + _sendRewardsToContract(25000); + + // After second distribution: + // user1 should have new fertilized beans (since they claimed and reset) + // user2 should have accumulated fertilized beans from both distributions + uint256 user1Fertilized2 = barnPayback.balanceOfFertilized(user1, user1Ids); + uint256 user2Fertilized2 = barnPayback.balanceOfFertilized(user2, user2Ids); + + assertGt(user1Fertilized2, 0, "user1 should have new fertilized beans"); + assertGt(user2Fertilized2, user2Fertilized1, "user2 should have more accumulated beans"); + + // Now user1 claims again (claiming every season) + uint256 user1BalanceBeforeClaim2 = IERC20(BEAN).balanceOf(user1); + vm.prank(user1); + barnPayback.claimFertilized(user1Ids, LibTransfer.To.EXTERNAL); + + // user1 should have received their second round rewards + assertEq(IERC20(BEAN).balanceOf(user1), user1BalanceBeforeClaim2 + user1Fertilized2); + + // user2 finally claims all accumulated rewards + uint256 user2BalanceBefore = IERC20(BEAN).balanceOf(user2); + vm.prank(user2); + barnPayback.claimFertilized(user2Ids, LibTransfer.To.EXTERNAL); + + // user2 should receive all their accumulated rewards + assertEq(IERC20(BEAN).balanceOf(user2), user2BalanceBefore + user2Fertilized2); + + // Both users should have no more fertilized beans after claiming + assertEq(barnPayback.balanceOfFertilized(user1, user1Ids), 0); + assertEq(barnPayback.balanceOfFertilized(user2, user2Ids), 0); + } + + ////////////// Double claim and transfer logic ////////////// + + function test_barnPaybackFertilizerTransfersAndClaims() public { + // Initial state: user1 has 60 of FERT_ID_1 + assertEq(barnPayback.balanceOf(user1, FERT_ID_1), 60); + assertEq(barnPayback.balanceOf(user3, FERT_ID_1), 0); + + // User1 transfers 20 fertilizers to user3 + vm.prank(user1); + barnPayback.safeTransferFrom(user1, user3, FERT_ID_1, 20, ""); + + // Check balances after transfer + assertEq( + barnPayback.balanceOf(user1, FERT_ID_1), + 40, + "user1 should have 40 after transfer" + ); + assertEq( + barnPayback.balanceOf(user3, FERT_ID_1), + 20, + "user3 should have 20 after transfer" + ); + + // Send rewards to advance BPF + _sendRewardsToContract(25000); + + // Both users should be able to claim based on their balances + uint256[] memory ids = new uint256[](1); + ids[0] = FERT_ID_1; + + uint256 user1Fertilized = barnPayback.balanceOfFertilized(user1, ids); + uint256 user3Fertilized = barnPayback.balanceOfFertilized(user3, ids); + + assertGt(user1Fertilized, 0, "user1 should have fertilized beans"); + assertGt(user3Fertilized, 0, "user3 should have fertilized beans"); + + // The ratio should match their fertilizer balances (40:20 = 2:1) + // Due to the transfer hook updating rewards, the ratio should be approximately correct + uint256 expectedRatio = (user1Fertilized * 1e18) / user3Fertilized; + assertApproxEqRel( + expectedRatio, + 2e18, + 0.05e18, + "Reward ratio should match fertilizer balance ratio" + ); + + // Both claim their rewards + vm.prank(user1); + barnPayback.claimFertilized(ids, LibTransfer.To.EXTERNAL); + + vm.prank(user3); + barnPayback.claimFertilized(ids, LibTransfer.To.EXTERNAL); + + assertEq( + IERC20(BEAN).balanceOf(user1), + user1Fertilized, + "user1 should receive their share" + ); + assertEq( + IERC20(BEAN).balanceOf(user3), + user3Fertilized, + "user3 should receive their share" + ); + + // Both should have no fertilized beans left + assertEq( + barnPayback.balanceOfFertilized(user1, ids), + 0, + "user1 should have no fertilized beans left" + ); + assertEq( + barnPayback.balanceOfFertilized(user3, ids), + 0, + "user3 should have no fertilized beans left" + ); + } + + function test_barnPaybackComprehensiveTransferAndRewardMechanisms() public { + // Combined test covering transfer mechanics and anti-gaming features for fertilizer + + // Phase 1: Initial setup - users have different fertilizer holdings + // user1: 60 of FERT_ID_1 + // user2: 40 of FERT_ID_1, 30 of FERT_ID_2 + assertEq(barnPayback.balanceOf(user1, FERT_ID_1), 60); + assertEq(barnPayback.balanceOf(user2, FERT_ID_1), 40); + assertEq(barnPayback.balanceOf(user2, FERT_ID_2), 30); + + uint256[] memory user1Ids = new uint256[](1); + user1Ids[0] = FERT_ID_1; + + uint256[] memory user2Ids = new uint256[](2); + user2Ids[0] = FERT_ID_1; + user2Ids[1] = FERT_ID_2; + + // Phase 2: First reward distribution - both users earn proportionally + _sendRewardsToContract(30000); + + uint256 user1InitialFertilized = barnPayback.balanceOfFertilized(user1, user1Ids); + uint256 user2InitialFertilized = barnPayback.balanceOfFertilized(user2, user2Ids); + assertGt(user1InitialFertilized, 0, "user1 should have fertilized beans"); + assertGt(user2InitialFertilized, 0, "user2 should have fertilized beans"); + + // Phase 3: Transfer updates rewards (ERC1155 transfer hook) + // user1 transfers 20 FERT_ID_1 to user2 + vm.prank(user1); + barnPayback.safeTransferFrom(user1, user2, FERT_ID_1, 20, ""); + + // Verify balances updated correctly + assertEq( + barnPayback.balanceOf(user1, FERT_ID_1), + 40, + "user1 fertilizer balance after transfer" + ); + assertEq( + barnPayback.balanceOf(user2, FERT_ID_1), + 60, + "user2 fertilizer balance after transfer" + ); + + // Verify fertilized amounts remain the same after transfer (rewards captured by transfer hook) + assertEq( + barnPayback.balanceOfFertilized(user1, user1Ids), + user1InitialFertilized, + "user1 fertilized should remain same after transfer" + ); + assertEq( + barnPayback.balanceOfFertilized(user2, user2Ids), + user2InitialFertilized, + "user2 fertilized should remain same after transfer" + ); + + // Phase 4: Anti-gaming test - user1 tries to transfer to user3 (new user) + vm.prank(user1); + barnPayback.safeTransferFrom(user1, user3, FERT_ID_1, 20, ""); + + // Verify user3 starts fresh with no historical fertilized beans + uint256[] memory user3Ids = new uint256[](1); + user3Ids[0] = FERT_ID_1; + assertEq( + barnPayback.balanceOfFertilized(user3, user3Ids), + 0, + "user3 should have no fertilized beans from before they held fertilizer" + ); + assertEq(barnPayback.balanceOf(user3, FERT_ID_1), 20, "user3 received fertilizer"); + + // user1 still has their original fertilized beans (can't be gamed away) + assertEq( + barnPayback.balanceOfFertilized(user1, user1Ids), + user1InitialFertilized, + "user1 retains original fertilized beans" + ); + + // Phase 5: Second reward distribution - new proportional split + _sendRewardsToContract(30000); + + // Current fertilizer balances: user1=20, user2=90 (60+30), user3=20 + // New rewards should be distributed based on current holdings and BPF advancement + + uint256 user1FinalFertilized = barnPayback.balanceOfFertilized(user1, user1Ids); + uint256 user2FinalFertilized = barnPayback.balanceOfFertilized(user2, user2Ids); + uint256 user3FinalFertilized = barnPayback.balanceOfFertilized(user3, user3Ids); + + // user1: should have original + new rewards + // user2: should have original + new rewards + // user3: should only have new rewards (no historical) + assertGt( + user1FinalFertilized, + user1InitialFertilized, + "user1 should have accumulated fertilized beans" + ); + assertGt( + user2FinalFertilized, + user2InitialFertilized, + "user2 should have accumulated fertilized beans" + ); + assertGt(user3FinalFertilized, 0, "user3 should have new fertilized beans"); + + // Phase 6: All users claim and verify final balances + uint256 user1BalanceBefore = IERC20(BEAN).balanceOf(user1); + uint256 user2BalanceBefore = IERC20(BEAN).balanceOf(user2); + uint256 user3BalanceBefore = IERC20(BEAN).balanceOf(user3); + + vm.prank(user1); + barnPayback.claimFertilized(user1Ids, LibTransfer.To.EXTERNAL); + + vm.prank(user2); + barnPayback.claimFertilized(user2Ids, LibTransfer.To.EXTERNAL); + + vm.prank(user3); + barnPayback.claimFertilized(user3Ids, LibTransfer.To.EXTERNAL); + + // Verify all rewards were paid out correctly + assertEq( + IERC20(BEAN).balanceOf(user1), + user1BalanceBefore + user1FinalFertilized, + "user1 received correct payout" + ); + assertEq( + IERC20(BEAN).balanceOf(user2), + user2BalanceBefore + user2FinalFertilized, + "user2 received correct payout" + ); + assertEq( + IERC20(BEAN).balanceOf(user3), + user3BalanceBefore + user3FinalFertilized, + "user3 received correct payout" + ); + + // All fertilized amounts should be reset to zero + assertEq( + barnPayback.balanceOfFertilized(user1, user1Ids), + 0, + "user1 fertilized reset after claim" + ); + assertEq( + barnPayback.balanceOfFertilized(user2, user2Ids), + 0, + "user2 fertilized reset after claim" + ); + assertEq( + barnPayback.balanceOfFertilized(user3, user3Ids), + 0, + "user3 fertilized reset after claim" + ); + } + + /** + * @notice Test multiple users claiming different fertilizer types + */ + function testMultiUserMultiFertilizerClaim() public { + // Send rewards + _sendRewardsToContract(75000e6); + + // User2 has both FERT_ID_1 and FERT_ID_2 + uint256[] memory user2Ids = new uint256[](2); + user2Ids[0] = FERT_ID_1; + user2Ids[1] = FERT_ID_2; + + uint256 user2Fertilized = barnPayback.balanceOfFertilized(user2, user2Ids); + + // User3 has both FERT_ID_2 and FERT_ID_3 + uint256[] memory user3Ids = new uint256[](2); + user3Ids[0] = FERT_ID_2; + user3Ids[1] = FERT_ID_3; + + uint256 user3Fertilized = barnPayback.balanceOfFertilized(user3, user3Ids); + + assertGt(user2Fertilized, 0, "User2 should have fertilized beans"); + assertGt(user3Fertilized, 0, "User3 should have fertilized beans"); + + // Both users claim + vm.prank(user2); + barnPayback.claimFertilized(user2Ids, LibTransfer.To.EXTERNAL); + + vm.prank(user3); + barnPayback.claimFertilized(user3Ids, LibTransfer.To.EXTERNAL); + + assertEq( + IERC20(BEAN).balanceOf(user2), + user2Fertilized, + "User2 should receive correct amount" + ); + assertEq( + IERC20(BEAN).balanceOf(user3), + user3Fertilized, + "User3 should receive correct amount" + ); + + // Verify no double claiming + uint256 user2FertilizedAfter = barnPayback.balanceOfFertilized(user2, user2Ids); + uint256 user3FertilizedAfter = barnPayback.balanceOfFertilized(user3, user3Ids); + + assertEq(user2FertilizedAfter, 0, "User2 should have no fertilized beans left"); + assertEq(user3FertilizedAfter, 0, "User3 should have no fertilized beans left"); + } + + /** + * @notice Test state verification functions + */ + function test_stateVerification() public { + // Verify total calculations + uint256 totalUnfertilized = barnPayback.totalUnfertilizedBeans(); + uint256 barnRemaining = barnPayback.barnRemaining(); + + assertGt(totalUnfertilized, 0, "Should have unfertilized beans"); + assertEq( + barnRemaining, + totalUnfertilized, + "Barn remaining should equal total unfertilized" + ); + + // Calculate expected unfertilized amount + uint256 expectedUnfertilized = (FERT_ID_1 * 100) + (FERT_ID_2 * 50) + (FERT_ID_3 * 25); // Initial unfertilizedIndex + assertEq( + totalUnfertilized, + expectedUnfertilized, + "Should match calculated unfertilized amount" + ); + } + + /** + * @notice Test barn payback receive function - core payback mechanism + */ + function test_barnPaybackReceive() public { + uint256 initialUnfertilized = barnPayback.totalUnfertilizedBeans(); + uint256 shipmentAmount = 100000; // 100k pinto + + // Only pinto protocol can call barnPaybackReceive + vm.expectRevert("BarnPayback: only pinto protocol"); + vm.prank(user1); + barnPayback.barnPaybackReceive(shipmentAmount); + + // Pinto protocol sends rewards + vm.expectEmit(true, true, true, true); + emit FertilizerRewardsReceived(shipmentAmount); + + vm.prank(address(BEANSTALK)); + barnPayback.barnPaybackReceive(shipmentAmount); + + // Should reduce unfertilized beans + uint256 finalUnfertilized = barnPayback.totalUnfertilizedBeans(); + assertLt(finalUnfertilized, initialUnfertilized, "Should reduce unfertilized beans"); + + // Barn remaining should be updated + assertEq( + barnPayback.barnRemaining(), + finalUnfertilized, + "Barn remaining should match unfertilized" + ); + } + + /** + * @notice Test progressive fertilizer payback until all fertilizers are inactive + */ + function test_completePaybackFlow() public { + uint256 initialUnfertilized = barnPayback.totalUnfertilizedBeans(); + console.log("Initial unfertilized beans:", initialUnfertilized); + + // Send multiple payback amounts to gradually pay down fertilizers + uint256 paybackAmount = initialUnfertilized / 5; // Pay back 20% at a time + + for (uint i = 0; i < 5; i++) { + uint256 beforePayback = barnPayback.totalUnfertilizedBeans(); + + vm.prank(address(BEANSTALK)); + barnPayback.barnPaybackReceive(paybackAmount); + + uint256 afterPayback = barnPayback.totalUnfertilizedBeans(); + console.log("Payback round", i + 1); + console.log("totalUnfertilizedBeans Before:", beforePayback); + console.log("totalUnfertilizedBeans After:", afterPayback); + + // Should steadily reduce unfertilized beans + assertLe(afterPayback, beforePayback, "Should reduce or maintain unfertilized beans"); + } + + // Final cleanup - send remaining amount to complete payback + uint256 remaining = barnPayback.barnRemaining(); + if (remaining > 0) { + vm.prank(address(BEANSTALK)); + barnPayback.barnPaybackReceive(remaining + 1000); // Slightly over to handle rounding + } + + // Should be close to fully paid back + uint256 finalRemaining = barnPayback.barnRemaining(); + console.log("Final remaining:", finalRemaining); + assertLe(finalRemaining, initialUnfertilized / 100, "Should be mostly paid back"); // Within 1% + } + + /** + * @notice Test claiming with internal vs external transfer modes + */ + function test_claimingModes() public { + // Send some rewards first + _sendRewardsToContract(50000e6); + + uint256[] memory ids = new uint256[](1); + ids[0] = FERT_ID_1; + + uint256 fertilized = barnPayback.balanceOfFertilized(user1, ids); + assertGt(fertilized, 0, "User1 should have fertilized beans"); + + // Test claiming to internal balance + vm.prank(user1); + barnPayback.claimFertilized(ids, LibTransfer.To.INTERNAL); + + // Should have internal balance in pinto protocol + uint256 internalBalance = bs.getInternalBalance(user1, address(BEAN)); + assertEq(internalBalance, fertilized, "Should have internal balance"); + assertEq(IERC20(BEAN).balanceOf(user1), 0, "Should have no external balance"); + + // Setup user2 for external claiming + _sendRewardsToContract(25000e6); + + uint256[] memory user2Ids = new uint256[](1); + user2Ids[0] = FERT_ID_1; + + uint256 user2Fertilized = barnPayback.balanceOfFertilized(user2, user2Ids); + if (user2Fertilized > 0) { + vm.prank(user2); + barnPayback.claimFertilized(user2Ids, LibTransfer.To.EXTERNAL); + + assertEq( + IERC20(BEAN).balanceOf(user2), + user2Fertilized, + "Should have external balance" + ); + assertEq( + bs.getInternalBalance(user2, address(BEAN)), + 0, + "Should have no internal balance" + ); + } + } + + /** + * @notice Helper function to send reward pinto to the fertilizer contract via barn payback receive + * @param amount Amount of pinto to distribute + */ + function _sendRewardsToContract(uint256 amount) internal { + deal(address(BEAN), address(deployer), amount); + vm.prank(deployer); + IERC20(BEAN).transfer(address(barnPayback), amount); + + vm.prank(address(BEANSTALK)); + barnPayback.barnPaybackReceive(amount); + } + + /** + * @notice Creates mock system fertilizer data for testing + */ + function _createInitSystemFertilizerData() + internal + pure + returns (BeanstalkFertilizer.InitSystemFertilizer memory) + { + uint128[] memory fertilizerIds = new uint128[](3); + fertilizerIds[0] = FERT_ID_1; + fertilizerIds[1] = FERT_ID_2; + fertilizerIds[2] = FERT_ID_3; + + uint256[] memory fertilizerAmounts = new uint256[](3); + fertilizerAmounts[0] = 100; // 100 units of FERT_ID_1 + fertilizerAmounts[1] = 50; // 50 units of FERT_ID_2 + fertilizerAmounts[2] = 25; // 25 units of FERT_ID_3 + + // Calculate total fertilizer for activeFertilizer and unfertilized index + uint256 totalFertilizer = (FERT_ID_1 * 100) + (FERT_ID_2 * 50) + (FERT_ID_3 * 25); + + return + BeanstalkFertilizer.InitSystemFertilizer({ + fertilizerIds: fertilizerIds, + fertilizerAmounts: fertilizerAmounts, + activeFertilizer: 175, // 100 + 50 + 25 + fertilizedIndex: 0, + unfertilizedIndex: totalFertilizer, + fertilizedPaidIndex: 0, + fertFirst: FERT_ID_1, // Start of linked list + fertLast: FERT_ID_3, // End of linked list + bpf: INITIAL_BPF, + leftoverBeans: 0 + }); + } + + /** + * @notice Creates mock fertilizer account data for testing + */ + function _createFertilizerAccountData() + internal + view + returns (BarnPayback.Fertilizers[] memory) + { + BarnPayback.Fertilizers[] memory fertilizerData = new BarnPayback.Fertilizers[](3); + + // FERT_ID_1 holders + BarnPayback.AccountFertilizerData[] + memory accounts1 = new BarnPayback.AccountFertilizerData[](2); + accounts1[0] = BarnPayback.AccountFertilizerData({ + account: user1, + amount: 60, + lastBpf: INITIAL_BPF + }); + accounts1[1] = BarnPayback.AccountFertilizerData({ + account: user2, + amount: 40, + lastBpf: INITIAL_BPF + }); + + fertilizerData[0] = BarnPayback.Fertilizers({ + fertilizerId: FERT_ID_1, + accountData: accounts1 + }); + + // FERT_ID_2 holders + BarnPayback.AccountFertilizerData[] + memory accounts2 = new BarnPayback.AccountFertilizerData[](2); + accounts2[0] = BarnPayback.AccountFertilizerData({ + account: user2, + amount: 30, + lastBpf: INITIAL_BPF + }); + accounts2[1] = BarnPayback.AccountFertilizerData({ + account: user3, + amount: 20, + lastBpf: INITIAL_BPF + }); + + fertilizerData[1] = BarnPayback.Fertilizers({ + fertilizerId: FERT_ID_2, + accountData: accounts2 + }); + + // FERT_ID_3 holders + BarnPayback.AccountFertilizerData[] + memory accounts3 = new BarnPayback.AccountFertilizerData[](1); + accounts3[0] = BarnPayback.AccountFertilizerData({ + account: user3, + amount: 25, + lastBpf: INITIAL_BPF + }); + + fertilizerData[2] = BarnPayback.Fertilizers({ + fertilizerId: FERT_ID_3, + accountData: accounts3 + }); + + return fertilizerData; + } +} diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol index 4ceccf44..c9d08845 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol @@ -10,11 +10,13 @@ contract BeanstalkShipmentsTest is TestHelper { // we need to: // - 1. recreate a mock beanstalk repayment field with a mock podline - // - 2. deploy the unripe distributor (make a mock that is non upgradable for ease of testing) - // - 3. make sure shipments are set correctly in the initialization in ShipmentDeployer.sol - // - 4. get to a supply where the beanstalk shipments kick in - // - 5. make the system print, check distribution in each contract - // - 6. for each component, make sure everything is set correctly + // - 2. deploy the silo payback proxy + // - 3. deploy the barn payback proxy + // - 4. create a function and make sure shipments are set correctly in the initialization in ShipmentDeployer.sol + // - 5. get to a supply where the beanstalk shipments kick in + // - 6. make the system print, check distribution in each contract + // - 6. for each component, make sure everything is set correctly, + // all tokens are distributed correctly and users can claim their rewards function setUp() public { initializeBeanstalkTestState(true, false); diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index b236732e..1bac3a53 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -355,10 +355,4 @@ contract SiloPaybackTest is TestHelper { vm.prank(BEANSTALK); siloPayback.siloPaybackReceive(amount); } - - function logRewardState() internal { - console.log("rewardPerTokenStored: ", siloPayback.rewardPerTokenStored()); - console.log("totalReceived: ", siloPayback.totalReceived()); - console.log("totalSupply: ", siloPayback.totalSupply()); - } } From 08c512a128d5ba36f672b4b9ca8c4d3dd2960f7c Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 14 Aug 2025 14:30:26 +0300 Subject: [PATCH 034/270] fix approvals, test claims and clean up tests --- .../beanstalkShipments/SiloPayback.sol | 4 +- .../barn/BeanstalkFertilizer.sol | 8 +- .../beanstalkShipments/BarnPayback.t.sol | 554 ++++-------------- 3 files changed, 109 insertions(+), 457 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 708104d8..241d18f9 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -38,7 +38,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev event emitted when user claims rewards event Claimed(address indexed user, uint256 amount, uint256 rewards); /// @dev event emitted when rewards are received from shipments - event RewardsReceived(uint256 amount, uint256 newIndex); + event SiloPaybackRewardsReceived(uint256 amount, uint256 newIndex); /// @notice Modifier to update rewards for an account before a claim modifier updateReward(address account) { @@ -96,7 +96,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { totalReceived += shipmentAmount; } - emit RewardsReceived(shipmentAmount, rewardPerTokenStored); + emit SiloPaybackRewardsReceived(shipmentAmount, rewardPerTokenStored); } /** diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 3ccae749..be23f870 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -25,7 +25,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran using LibRedundantMath128 for uint128; event ClaimFertilizer(uint256[] ids, uint256 beans); - event FertilizerRewardsReceived(uint256 amount); + event BarnPaybackRewardsReceived(uint256 amount); struct Balance { uint128 amount; @@ -33,7 +33,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran } /** - * @dev data for initialization of the fertilizer state + * @dev Data for initialization of the fertilizer state * note: the fertilizerIds and fertilizerAmounts should be the same length and in ascending order */ struct InitSystemFertilizer { @@ -79,7 +79,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran // Storage mapping(uint256 => mapping(address => Balance)) internal _balances; - SystemFertilizer internal fert; + SystemFertilizer public fert; IERC20 public pinto; IBeanstalk public pintoProtocol; @@ -105,6 +105,8 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran pinto = IERC20(_pinto); pintoProtocol = IBeanstalk(_pintoProtocol); setFertilizerState(initSystemFert); + // approve the pinto protocol to spend the incoming pinto tokens for claims + pinto.approve(address(pintoProtocol), type(uint256).max); // Minting will happen after deployment due to potential gas limit issues } diff --git a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol index b3944037..fb1daad7 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol @@ -21,7 +21,18 @@ import {TestHelper} from "test/foundry/utils/TestHelper.sol"; contract BarnPaybackTest is TestHelper { // Events event ClaimFertilizer(uint256[] ids, uint256 beans); - event FertilizerRewardsReceived(uint256 amount); + event BarnPaybackRewardsReceived(uint256 amount); + + struct SystemFertilizerStruct { + uint256 activeFertilizer; + uint256 fertilizedIndex; + uint256 unfertilizedIndex; + uint256 fertilizedPaidIndex; + uint128 fertFirst; + uint128 fertLast; + uint128 bpf; + uint256 leftoverBeans; + } // Initial state of the system after arbitrum migration for reference // "activeFertilizer": "17216958", // Total amount of active fertilizer tokens @@ -33,6 +44,7 @@ contract BarnPaybackTest is TestHelper { // "bpf": "340802", // current Beans per fertilizer, determines if an id is active or not // "leftoverBeans": "0x0" // Amount of beans that have shipped to Fert but not yet reflected in bpf // }, + // BPF is the amount at which the fert STOPS earning rewards // Contracts BarnPayback public barnPayback; @@ -45,10 +57,10 @@ contract BarnPaybackTest is TestHelper { address public user3 = makeAddr("farmer3"); // Test constants - uint128 constant INITIAL_BPF = 1000; - uint128 constant FERT_ID_1 = 5000; // 5000 beans per fertilizer - uint128 constant FERT_ID_2 = 10000; // 10000 beans per fertilizer - uint128 constant FERT_ID_3 = 15000; // 15000 beans per fertilizer + uint128 constant INITIAL_BPF = 45e6; // Close to the first fert id + uint128 constant FERT_ID_1 = 50e6; // 50 beans per fertilizer + uint128 constant FERT_ID_2 = 100e6; // 100 beans per fertilizer + uint128 constant FERT_ID_3 = 150e6; // 150 beans per fertilizer function setUp() public { initializeBeanstalkTestState(true, false); @@ -83,6 +95,10 @@ contract BarnPaybackTest is TestHelper { // Mint fertilizers to accounts vm.startPrank(owner); + // Mint fertilizers to accounts + // user1: 60 of FERT_ID_1 (50 beans per fertilizer) + // user2: 40 of FERT_ID_1, 30 of FERT_ID_2 (100 beans per fertilizer) + // user3: 25 of FERT_ID_3 (150 beans per fertilizer) BarnPayback.Fertilizers[] memory fertilizerData = _createFertilizerAccountData(); barnPayback.mintFertilizers(fertilizerData); vm.stopPrank(); @@ -95,29 +111,43 @@ contract BarnPaybackTest is TestHelper { ////////////// Shipment receiving ////////////// - function test_barnPaybackReceivePintoRewards() public { - // Try to update state from non-protocol, expect revert - vm.prank(user1); - vm.expectRevert("BarnPayback: only pinto protocol"); - barnPayback.barnPaybackReceive(100000); - - // Send rewards to contract and call barnPaybackReceive - uint256 rewardAmount = 50000; // 50k pinto (6 decimals) + /** + * @notice Test that the barn payback receive function updates the state correctly, + * reducing the unfertilized beans and increasing the bpf. + */ + function test_barnPaybackReceive() public { uint256 initialUnfertilized = barnPayback.totalUnfertilizedBeans(); + uint256 shipmentAmount = 100e6; // 100 pinto - deal(address(BEAN), address(barnPayback), rewardAmount); + // Only pinto protocol can call barnPaybackReceive + vm.expectRevert("BarnPayback: only pinto protocol"); + vm.prank(user1); + barnPayback.barnPaybackReceive(shipmentAmount); - // Only BEANSTALK can call barnPaybackReceive + // Pinto protocol sends rewards vm.expectEmit(true, true, true, true); - emit FertilizerRewardsReceived(rewardAmount); + emit BarnPaybackRewardsReceived(shipmentAmount); vm.prank(address(BEANSTALK)); - barnPayback.barnPaybackReceive(rewardAmount); + barnPayback.barnPaybackReceive(shipmentAmount); // Should reduce unfertilized beans uint256 finalUnfertilized = barnPayback.totalUnfertilizedBeans(); assertLt(finalUnfertilized, initialUnfertilized, "Should reduce unfertilized beans"); + // Should increase bpf + SystemFertilizerStruct memory fert = _getSystemFertilizer(); + assertGt(fert.bpf, INITIAL_BPF, "Should increase bpf"); + + // Should not change fertFirst since the id did not get popped from the queue + assertEq(fert.fertFirst, FERT_ID_1, "Should not change fertFirst"); + + // paid index should be 0 since noone claimed yet + assertEq(fert.fertilizedPaidIndex, 0, "Should have 0 fertilized paid index"); + + // Should not change activeFertilizer since no fert token ids ran out + assertEq(fert.activeFertilizer, 175, "Should not change activeFertilizer"); + // Barn remaining should be updated assertEq( barnPayback.barnRemaining(), @@ -128,11 +158,19 @@ contract BarnPaybackTest is TestHelper { /////////////// Earned calculation /////////////// - function test_barnPaybackFertilizedCalculationMultipleUsers() public { + /** + * @notice Test that the fertilized amount is calculated correctly for multiple users with active fertilizers + * When the bpf exceeds the first id, the first id is popped from the queue and the activeFertilizer is reduced + */ + function test_barnPaybackFertilizedMultipleUsersWithPop() public { // Send rewards to advance BPF - uint256 rewardAmount = 25000; + // first, get it to match the first id and then advance to pop the id from the queue + uint256 rewardAmount = 1000e6; _sendRewardsToContract(rewardAmount); + // get the system fertilizer state + SystemFertilizerStruct memory fert = _getSystemFertilizer(); + // user1 has 60 of FERT_ID_1 uint256[] memory user1Ids = new uint256[](1); user1Ids[0] = FERT_ID_1; @@ -148,420 +186,52 @@ contract BarnPaybackTest is TestHelper { assertGt(user1Fertilized, 0, "user1 should have fertilized beans"); assertGt(user2Fertilized, 0, "user2 should have fertilized beans"); - // user2 should have more since they hold more fertilizer (40 + 30 vs 60) - // But the ratio depends on how BPF advancement affects each ID - console.log("user1 fertilized:", user1Fertilized); - console.log("user2 fertilized:", user2Fertilized); + // assert that new bpf exceeds the first id, meaning the first id is no longer active + assertGt(fert.bpf, FERT_ID_1); + + // assert the number of active fertilizers is 75 (175 initial - 100 popped from first id) + assertEq(fert.activeFertilizer, 75); + + // assert that fertFirst variable is updated to the next id in the queue + assertEq(fert.fertFirst, FERT_ID_2); } - ////////////// Claim ////////////// + ////////////////// Claiming ////////////////// /** * @dev test that two users can claim their fertilizer rewards pro rata to their balance - * - user1 claims after each distribution - * - user2 waits until the end */ - function test_barnPayback2UsersLateClaim() public { - // Setup: user1 claims after each distribution, user2 waits until the end - // user1: 60 of FERT_ID_1 - // user2: 40 of FERT_ID_1, 30 of FERT_ID_2 + function test_barnPaybackClaimOneFertOneUser() public { + // First distribution: advance BPF but dont cross over the first fert id + uint256 rewardAmount = 100e6; + _sendRewardsToContract(rewardAmount); uint256[] memory user1Ids = new uint256[](1); user1Ids[0] = FERT_ID_1; - uint256[] memory user2Ids = new uint256[](2); - user2Ids[0] = FERT_ID_1; - user2Ids[1] = FERT_ID_2; - - // First distribution: advance BPF - _sendRewardsToContract(25000); - // Check initial fertilized amounts uint256 user1Fertilized1 = barnPayback.balanceOfFertilized(user1, user1Ids); - uint256 user2Fertilized1 = barnPayback.balanceOfFertilized(user2, user2Ids); assertGt(user1Fertilized1, 0, "user1 should have fertilized beans"); - assertGt(user2Fertilized1, 0, "user2 should have fertilized beans"); - // user1 claims immediately after first distribution (claiming every season) + // user1 claims immediately after first distribution uint256 user1BalanceBefore = IERC20(BEAN).balanceOf(user1); - vm.expectEmit(true, true, true, true); emit ClaimFertilizer(user1Ids, user1Fertilized1); - vm.prank(user1); barnPayback.claimFertilized(user1Ids, LibTransfer.To.EXTERNAL); // Verify user1 received rewards assertEq(IERC20(BEAN).balanceOf(user1), user1BalanceBefore + user1Fertilized1); - // user1 should have no more fertilized beans for these IDs assertEq(barnPayback.balanceOfFertilized(user1, user1Ids), 0); - // user2 does NOT claim, so their fertilized amount should remain - assertEq(barnPayback.balanceOfFertilized(user2, user2Ids), user2Fertilized1); - - // Second distribution: advance BPF further - _sendRewardsToContract(25000); - - // After second distribution: - // user1 should have new fertilized beans (since they claimed and reset) - // user2 should have accumulated fertilized beans from both distributions - uint256 user1Fertilized2 = barnPayback.balanceOfFertilized(user1, user1Ids); - uint256 user2Fertilized2 = barnPayback.balanceOfFertilized(user2, user2Ids); - - assertGt(user1Fertilized2, 0, "user1 should have new fertilized beans"); - assertGt(user2Fertilized2, user2Fertilized1, "user2 should have more accumulated beans"); - - // Now user1 claims again (claiming every season) - uint256 user1BalanceBeforeClaim2 = IERC20(BEAN).balanceOf(user1); - vm.prank(user1); - barnPayback.claimFertilized(user1Ids, LibTransfer.To.EXTERNAL); - - // user1 should have received their second round rewards - assertEq(IERC20(BEAN).balanceOf(user1), user1BalanceBeforeClaim2 + user1Fertilized2); - - // user2 finally claims all accumulated rewards - uint256 user2BalanceBefore = IERC20(BEAN).balanceOf(user2); - vm.prank(user2); - barnPayback.claimFertilized(user2Ids, LibTransfer.To.EXTERNAL); + // verify that the bpf increased but did not cross over the first fert id + SystemFertilizerStruct memory fert = _getSystemFertilizer(); + assertGt(fert.bpf, INITIAL_BPF); + assertLt(fert.bpf, FERT_ID_1); - // user2 should receive all their accumulated rewards - assertEq(IERC20(BEAN).balanceOf(user2), user2BalanceBefore + user2Fertilized2); - - // Both users should have no more fertilized beans after claiming - assertEq(barnPayback.balanceOfFertilized(user1, user1Ids), 0); - assertEq(barnPayback.balanceOfFertilized(user2, user2Ids), 0); - } - - ////////////// Double claim and transfer logic ////////////// - - function test_barnPaybackFertilizerTransfersAndClaims() public { - // Initial state: user1 has 60 of FERT_ID_1 - assertEq(barnPayback.balanceOf(user1, FERT_ID_1), 60); - assertEq(barnPayback.balanceOf(user3, FERT_ID_1), 0); - - // User1 transfers 20 fertilizers to user3 - vm.prank(user1); - barnPayback.safeTransferFrom(user1, user3, FERT_ID_1, 20, ""); - - // Check balances after transfer - assertEq( - barnPayback.balanceOf(user1, FERT_ID_1), - 40, - "user1 should have 40 after transfer" - ); - assertEq( - barnPayback.balanceOf(user3, FERT_ID_1), - 20, - "user3 should have 20 after transfer" - ); - - // Send rewards to advance BPF - _sendRewardsToContract(25000); - - // Both users should be able to claim based on their balances - uint256[] memory ids = new uint256[](1); - ids[0] = FERT_ID_1; - - uint256 user1Fertilized = barnPayback.balanceOfFertilized(user1, ids); - uint256 user3Fertilized = barnPayback.balanceOfFertilized(user3, ids); - - assertGt(user1Fertilized, 0, "user1 should have fertilized beans"); - assertGt(user3Fertilized, 0, "user3 should have fertilized beans"); - - // The ratio should match their fertilizer balances (40:20 = 2:1) - // Due to the transfer hook updating rewards, the ratio should be approximately correct - uint256 expectedRatio = (user1Fertilized * 1e18) / user3Fertilized; - assertApproxEqRel( - expectedRatio, - 2e18, - 0.05e18, - "Reward ratio should match fertilizer balance ratio" - ); - - // Both claim their rewards - vm.prank(user1); - barnPayback.claimFertilized(ids, LibTransfer.To.EXTERNAL); - - vm.prank(user3); - barnPayback.claimFertilized(ids, LibTransfer.To.EXTERNAL); - - assertEq( - IERC20(BEAN).balanceOf(user1), - user1Fertilized, - "user1 should receive their share" - ); - assertEq( - IERC20(BEAN).balanceOf(user3), - user3Fertilized, - "user3 should receive their share" - ); - - // Both should have no fertilized beans left - assertEq( - barnPayback.balanceOfFertilized(user1, ids), - 0, - "user1 should have no fertilized beans left" - ); - assertEq( - barnPayback.balanceOfFertilized(user3, ids), - 0, - "user3 should have no fertilized beans left" - ); - } - - function test_barnPaybackComprehensiveTransferAndRewardMechanisms() public { - // Combined test covering transfer mechanics and anti-gaming features for fertilizer - - // Phase 1: Initial setup - users have different fertilizer holdings - // user1: 60 of FERT_ID_1 - // user2: 40 of FERT_ID_1, 30 of FERT_ID_2 - assertEq(barnPayback.balanceOf(user1, FERT_ID_1), 60); - assertEq(barnPayback.balanceOf(user2, FERT_ID_1), 40); - assertEq(barnPayback.balanceOf(user2, FERT_ID_2), 30); - - uint256[] memory user1Ids = new uint256[](1); - user1Ids[0] = FERT_ID_1; - - uint256[] memory user2Ids = new uint256[](2); - user2Ids[0] = FERT_ID_1; - user2Ids[1] = FERT_ID_2; - - // Phase 2: First reward distribution - both users earn proportionally - _sendRewardsToContract(30000); - - uint256 user1InitialFertilized = barnPayback.balanceOfFertilized(user1, user1Ids); - uint256 user2InitialFertilized = barnPayback.balanceOfFertilized(user2, user2Ids); - assertGt(user1InitialFertilized, 0, "user1 should have fertilized beans"); - assertGt(user2InitialFertilized, 0, "user2 should have fertilized beans"); - - // Phase 3: Transfer updates rewards (ERC1155 transfer hook) - // user1 transfers 20 FERT_ID_1 to user2 - vm.prank(user1); - barnPayback.safeTransferFrom(user1, user2, FERT_ID_1, 20, ""); - - // Verify balances updated correctly - assertEq( - barnPayback.balanceOf(user1, FERT_ID_1), - 40, - "user1 fertilizer balance after transfer" - ); - assertEq( - barnPayback.balanceOf(user2, FERT_ID_1), - 60, - "user2 fertilizer balance after transfer" - ); - - // Verify fertilized amounts remain the same after transfer (rewards captured by transfer hook) - assertEq( - barnPayback.balanceOfFertilized(user1, user1Ids), - user1InitialFertilized, - "user1 fertilized should remain same after transfer" - ); - assertEq( - barnPayback.balanceOfFertilized(user2, user2Ids), - user2InitialFertilized, - "user2 fertilized should remain same after transfer" - ); - - // Phase 4: Anti-gaming test - user1 tries to transfer to user3 (new user) - vm.prank(user1); - barnPayback.safeTransferFrom(user1, user3, FERT_ID_1, 20, ""); - - // Verify user3 starts fresh with no historical fertilized beans - uint256[] memory user3Ids = new uint256[](1); - user3Ids[0] = FERT_ID_1; - assertEq( - barnPayback.balanceOfFertilized(user3, user3Ids), - 0, - "user3 should have no fertilized beans from before they held fertilizer" - ); - assertEq(barnPayback.balanceOf(user3, FERT_ID_1), 20, "user3 received fertilizer"); - - // user1 still has their original fertilized beans (can't be gamed away) - assertEq( - barnPayback.balanceOfFertilized(user1, user1Ids), - user1InitialFertilized, - "user1 retains original fertilized beans" - ); - - // Phase 5: Second reward distribution - new proportional split - _sendRewardsToContract(30000); - - // Current fertilizer balances: user1=20, user2=90 (60+30), user3=20 - // New rewards should be distributed based on current holdings and BPF advancement - - uint256 user1FinalFertilized = barnPayback.balanceOfFertilized(user1, user1Ids); - uint256 user2FinalFertilized = barnPayback.balanceOfFertilized(user2, user2Ids); - uint256 user3FinalFertilized = barnPayback.balanceOfFertilized(user3, user3Ids); - - // user1: should have original + new rewards - // user2: should have original + new rewards - // user3: should only have new rewards (no historical) - assertGt( - user1FinalFertilized, - user1InitialFertilized, - "user1 should have accumulated fertilized beans" - ); - assertGt( - user2FinalFertilized, - user2InitialFertilized, - "user2 should have accumulated fertilized beans" - ); - assertGt(user3FinalFertilized, 0, "user3 should have new fertilized beans"); - - // Phase 6: All users claim and verify final balances - uint256 user1BalanceBefore = IERC20(BEAN).balanceOf(user1); - uint256 user2BalanceBefore = IERC20(BEAN).balanceOf(user2); - uint256 user3BalanceBefore = IERC20(BEAN).balanceOf(user3); - - vm.prank(user1); - barnPayback.claimFertilized(user1Ids, LibTransfer.To.EXTERNAL); - - vm.prank(user2); - barnPayback.claimFertilized(user2Ids, LibTransfer.To.EXTERNAL); - - vm.prank(user3); - barnPayback.claimFertilized(user3Ids, LibTransfer.To.EXTERNAL); - - // Verify all rewards were paid out correctly - assertEq( - IERC20(BEAN).balanceOf(user1), - user1BalanceBefore + user1FinalFertilized, - "user1 received correct payout" - ); - assertEq( - IERC20(BEAN).balanceOf(user2), - user2BalanceBefore + user2FinalFertilized, - "user2 received correct payout" - ); - assertEq( - IERC20(BEAN).balanceOf(user3), - user3BalanceBefore + user3FinalFertilized, - "user3 received correct payout" - ); - - // All fertilized amounts should be reset to zero - assertEq( - barnPayback.balanceOfFertilized(user1, user1Ids), - 0, - "user1 fertilized reset after claim" - ); - assertEq( - barnPayback.balanceOfFertilized(user2, user2Ids), - 0, - "user2 fertilized reset after claim" - ); - assertEq( - barnPayback.balanceOfFertilized(user3, user3Ids), - 0, - "user3 fertilized reset after claim" - ); - } - - /** - * @notice Test multiple users claiming different fertilizer types - */ - function testMultiUserMultiFertilizerClaim() public { - // Send rewards - _sendRewardsToContract(75000e6); - - // User2 has both FERT_ID_1 and FERT_ID_2 - uint256[] memory user2Ids = new uint256[](2); - user2Ids[0] = FERT_ID_1; - user2Ids[1] = FERT_ID_2; - - uint256 user2Fertilized = barnPayback.balanceOfFertilized(user2, user2Ids); - - // User3 has both FERT_ID_2 and FERT_ID_3 - uint256[] memory user3Ids = new uint256[](2); - user3Ids[0] = FERT_ID_2; - user3Ids[1] = FERT_ID_3; - - uint256 user3Fertilized = barnPayback.balanceOfFertilized(user3, user3Ids); - - assertGt(user2Fertilized, 0, "User2 should have fertilized beans"); - assertGt(user3Fertilized, 0, "User3 should have fertilized beans"); - - // Both users claim - vm.prank(user2); - barnPayback.claimFertilized(user2Ids, LibTransfer.To.EXTERNAL); - - vm.prank(user3); - barnPayback.claimFertilized(user3Ids, LibTransfer.To.EXTERNAL); - - assertEq( - IERC20(BEAN).balanceOf(user2), - user2Fertilized, - "User2 should receive correct amount" - ); - assertEq( - IERC20(BEAN).balanceOf(user3), - user3Fertilized, - "User3 should receive correct amount" - ); - - // Verify no double claiming - uint256 user2FertilizedAfter = barnPayback.balanceOfFertilized(user2, user2Ids); - uint256 user3FertilizedAfter = barnPayback.balanceOfFertilized(user3, user3Ids); - - assertEq(user2FertilizedAfter, 0, "User2 should have no fertilized beans left"); - assertEq(user3FertilizedAfter, 0, "User3 should have no fertilized beans left"); - } - - /** - * @notice Test state verification functions - */ - function test_stateVerification() public { - // Verify total calculations - uint256 totalUnfertilized = barnPayback.totalUnfertilizedBeans(); - uint256 barnRemaining = barnPayback.barnRemaining(); - - assertGt(totalUnfertilized, 0, "Should have unfertilized beans"); - assertEq( - barnRemaining, - totalUnfertilized, - "Barn remaining should equal total unfertilized" - ); - - // Calculate expected unfertilized amount - uint256 expectedUnfertilized = (FERT_ID_1 * 100) + (FERT_ID_2 * 50) + (FERT_ID_3 * 25); // Initial unfertilizedIndex - assertEq( - totalUnfertilized, - expectedUnfertilized, - "Should match calculated unfertilized amount" - ); - } - - /** - * @notice Test barn payback receive function - core payback mechanism - */ - function test_barnPaybackReceive() public { - uint256 initialUnfertilized = barnPayback.totalUnfertilizedBeans(); - uint256 shipmentAmount = 100000; // 100k pinto - - // Only pinto protocol can call barnPaybackReceive - vm.expectRevert("BarnPayback: only pinto protocol"); - vm.prank(user1); - barnPayback.barnPaybackReceive(shipmentAmount); - - // Pinto protocol sends rewards - vm.expectEmit(true, true, true, true); - emit FertilizerRewardsReceived(shipmentAmount); - - vm.prank(address(BEANSTALK)); - barnPayback.barnPaybackReceive(shipmentAmount); - - // Should reduce unfertilized beans - uint256 finalUnfertilized = barnPayback.totalUnfertilizedBeans(); - assertLt(finalUnfertilized, initialUnfertilized, "Should reduce unfertilized beans"); - - // Barn remaining should be updated - assertEq( - barnPayback.barnRemaining(), - finalUnfertilized, - "Barn remaining should match unfertilized" - ); + // verify that the fertilized index increased by the amount sent as rewards minus the leftover beans + assertEq(fert.fertilizedIndex, rewardAmount - fert.leftoverBeans); } /** @@ -602,51 +272,7 @@ contract BarnPaybackTest is TestHelper { assertLe(finalRemaining, initialUnfertilized / 100, "Should be mostly paid back"); // Within 1% } - /** - * @notice Test claiming with internal vs external transfer modes - */ - function test_claimingModes() public { - // Send some rewards first - _sendRewardsToContract(50000e6); - - uint256[] memory ids = new uint256[](1); - ids[0] = FERT_ID_1; - - uint256 fertilized = barnPayback.balanceOfFertilized(user1, ids); - assertGt(fertilized, 0, "User1 should have fertilized beans"); - - // Test claiming to internal balance - vm.prank(user1); - barnPayback.claimFertilized(ids, LibTransfer.To.INTERNAL); - - // Should have internal balance in pinto protocol - uint256 internalBalance = bs.getInternalBalance(user1, address(BEAN)); - assertEq(internalBalance, fertilized, "Should have internal balance"); - assertEq(IERC20(BEAN).balanceOf(user1), 0, "Should have no external balance"); - - // Setup user2 for external claiming - _sendRewardsToContract(25000e6); - - uint256[] memory user2Ids = new uint256[](1); - user2Ids[0] = FERT_ID_1; - - uint256 user2Fertilized = barnPayback.balanceOfFertilized(user2, user2Ids); - if (user2Fertilized > 0) { - vm.prank(user2); - barnPayback.claimFertilized(user2Ids, LibTransfer.To.EXTERNAL); - - assertEq( - IERC20(BEAN).balanceOf(user2), - user2Fertilized, - "Should have external balance" - ); - assertEq( - bs.getInternalBalance(user2, address(BEAN)), - 0, - "Should have no internal balance" - ); - } - } + ///////////////////// Helper functions ///////////////////// /** * @notice Helper function to send reward pinto to the fertilizer contract via barn payback receive @@ -761,4 +387,28 @@ contract BarnPaybackTest is TestHelper { return fertilizerData; } + + function _getSystemFertilizer() internal view returns (SystemFertilizerStruct memory) { + ( + uint256 activeFertilizer, + uint256 fertilizedIndex, + uint256 unfertilizedIndex, + uint256 fertilizedPaidIndex, + uint128 fertFirst, + uint128 fertLast, + uint128 bpf, + uint256 leftoverBeans + ) = barnPayback.fert(); + return + SystemFertilizerStruct({ + activeFertilizer: uint256(activeFertilizer), + fertilizedIndex: fertilizedIndex, + unfertilizedIndex: unfertilizedIndex, + fertilizedPaidIndex: fertilizedPaidIndex, + fertFirst: fertFirst, + fertLast: fertLast, + bpf: bpf, + leftoverBeans: leftoverBeans + }); + } } From b2b927bb8d53aeb73bd76e9691504edf1063feb8 Mon Sep 17 00:00:00 2001 From: nickkatsios Date: Fri, 15 Aug 2025 10:56:07 +0300 Subject: [PATCH 035/270] deterministic addresses using predefined deployer --- hardhat.config.js | 16 +++++-- .../deployPaybackContracts.js | 43 +++++++------------ ...ntsTest.t.sol => BeanstalkShipments.t.sol} | 17 ++++---- test/hardhat/utils/constants.js | 6 +++ 4 files changed, 41 insertions(+), 41 deletions(-) rename test/foundry/ecosystem/beanstalkShipments/{BeanstalkShipmentsTest.t.sol => BeanstalkShipments.t.sol} (68%) diff --git a/hardhat.config.js b/hardhat.config.js index 0d89d837..2f89eaf1 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -21,6 +21,7 @@ const { PINTO, L2_PINTO, PINTO_DIAMOND_DEPLOYER, + BEANSTALK_SHIPMENTS_DEPLOYER, L2_PCM, BASE_BLOCK_TIME, PINTO_WETH_WELL_BASE, @@ -2027,7 +2028,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi const noFieldChunking = true; const deploy = true; - // Use the diamond deployer as the account + // Use the diamond deployer for dimond cuts const mock = true; let owner; if (mock) { @@ -2037,6 +2038,15 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi owner = (await ethers.getSigners())[0]; } + // Use the diamond deployer for dimond cuts + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[1]; + } + // Step 1: // - Deploy the silo and barn payback contracts // - Distribute the unripe bdv tokens and fertilizer tokens @@ -2049,7 +2059,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi PINTO, L2_PINTO, L2_PCM, - owner, + account: deployer, verbose }); } @@ -2057,7 +2067,6 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi // Step 2: Creates and populates the beanstalk field console.log("\n-----------------------------------"); //clear console - console.clear(); console.log("Step 2: Creating and populating beanstalk field..."); await populateBeanstalkField(L2_PINTO, owner, verbose, noFieldChunking); @@ -2068,7 +2077,6 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi // Refresh the shipment routes with the new routes // Old routes need to be updates because of the new shipment planner contract address - console.clear(); console.log("\n-----------------------------------"); console.log("Step 3: Refreshing shipment routes..."); await upgradeWithNewFacets({ diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 5cbcc6f2..54b28291 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -1,14 +1,14 @@ const fs = require("fs"); // Deploys SiloPayback, BarnPayback, and ShipmentPlanner contracts -async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose = true }) { +async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, account, verbose = true }) { if (verbose) { console.log("Deploying Beanstalk shipment contracts..."); } //////////////////////////// Silo Payback //////////////////////////// console.log("\nDeploying SiloPayback..."); - const siloPaybackFactory = await ethers.getContractFactory("SiloPayback", owner); + const siloPaybackFactory = await ethers.getContractFactory("SiloPayback", account); // factory, args, proxy options const siloPaybackContract = await upgrades.deployProxy(siloPaybackFactory, [PINTO, L2_PINTO], { initializer: "initialize", @@ -21,7 +21,7 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose //////////////////////////// Barn Payback //////////////////////////// console.log("--------------------------------"); console.log("Deploying BarnPayback..."); - const barnPaybackFactory = await ethers.getContractFactory("BarnPayback", owner); + const barnPaybackFactory = await ethers.getContractFactory("BarnPayback", account); // get the initialization args from the json file const barnPaybackArgsPath = "./scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json"; const barnPaybackArgs = JSON.parse(fs.readFileSync(barnPaybackArgsPath)); @@ -41,7 +41,7 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose //////////////////////////// Shipment Planner //////////////////////////// console.log("--------------------------------"); console.log("Deploying ShipmentPlanner..."); - const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner", owner); + const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner", account); const shipmentPlannerContract = await shipmentPlannerFactory.deploy(L2_PINTO, PINTO); await shipmentPlannerContract.deployed(); if (verbose) console.log("ShipmentPlanner deployed to:", shipmentPlannerContract.address); @@ -55,13 +55,18 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, owner, verbose } // Distributes unripe BDV tokens from JSON file to contract recipients -async function distributeUnripeBdvTokens({ siloPaybackContract, owner, dataPath, verbose = true }) { +async function distributeUnripeBdvTokens({ + siloPaybackContract, + account, + dataPath, + verbose = true +}) { if (verbose) console.log("Distributing unripe BDV tokens..."); try { const unripeAccountBdvTokens = JSON.parse(fs.readFileSync(dataPath)); // mint all in one transaction - await siloPaybackContract.connect(owner).batchMint(unripeAccountBdvTokens); + await siloPaybackContract.connect(account).batchMint(unripeAccountBdvTokens); if (verbose) console.log("Unripe BDV tokens distributed to old Beanstalk participants"); } catch (error) { @@ -73,7 +78,7 @@ async function distributeUnripeBdvTokens({ siloPaybackContract, owner, dataPath, // Distributes barn payback tokens from JSON file to contract recipients async function distributeBarnPaybackTokens({ barnPaybackContract, - owner, + account, dataPath, verbose = true }) { @@ -82,7 +87,7 @@ async function distributeBarnPaybackTokens({ try { const accountFertilizers = JSON.parse(fs.readFileSync(dataPath)); // mint all in one transaction - await barnPaybackContract.connect(owner).mintFertilizers(accountFertilizers); + await barnPaybackContract.connect(account).mintFertilizers(accountFertilizers); } catch (error) { console.error("Error distributing barn payback tokens:", error); throw error; @@ -106,35 +111,22 @@ async function transferContractOwnership({ if (verbose) console.log("BarnPayback ownership transferred to PCM"); } -// Logs deployed contract addresses -function logDeployedAddresses({ - siloPaybackContract, - barnPaybackContract, - shipmentPlannerContract -}) { - console.log("\nDeployed Contract Addresses:"); - console.log("- SiloPayback:", siloPaybackContract.address); - console.log("- BarnPayback:", barnPaybackContract.address); - console.log("- ShipmentPlanner:", shipmentPlannerContract.address); -} - // Main function that orchestrates all deployment steps async function deployAndSetupContracts(params) { const { verbose = true } = params; - // console.log("owner from params", params.owner); const contracts = await deployShipmentContracts(params); await distributeUnripeBdvTokens({ siloPaybackContract: contracts.siloPaybackContract, - owner: params.owner, + account: params.account, dataPath: "./scripts/beanstalkShipments/data/unripeBdvTokens.json", verbose }); await distributeBarnPaybackTokens({ barnPaybackContract: contracts.barnPaybackContract, - owner: params.owner, + account: params.account, dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", verbose }); @@ -146,10 +138,6 @@ async function deployAndSetupContracts(params) { verbose }); - if (verbose) { - logDeployedAddresses(contracts); - } - return contracts; } @@ -157,6 +145,5 @@ module.exports = { deployShipmentContracts, distributeUnripeBdvTokens, transferContractOwnership, - logDeployedAddresses, deployAndSetupContracts }; diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol similarity index 68% rename from test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol rename to test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index c9d08845..9ca6325c 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsTest.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -6,6 +6,13 @@ import {TestHelper} from "test/foundry/utils/TestHelper.sol"; import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; +/** + * @notice Tests that the whole shipments initialization and logic works correctly. + * This tests should be ran against a local node after the deployment and initialization task is complete. + * 1. Create a local anvil node + * 2. Run the hardhat task: `npx hardhat compile && npx hardhat beanstalkShipments --network localhost` + * 3. Run the test: `forge test --match-test test_shipments --fork-url http://localhost:8545` + */ contract BeanstalkShipmentsTest is TestHelper { // we need to: @@ -18,14 +25,6 @@ contract BeanstalkShipmentsTest is TestHelper { // - 6. for each component, make sure everything is set correctly, // all tokens are distributed correctly and users can claim their rewards function setUp() public { - initializeBeanstalkTestState(true, false); - - // add new field, init some plots (see sun.t.sol) - - // deploy unripe distributor - // siloPayback = new SiloPayback(PINTO, BEANSTALK); - - // upddate routes here - setRoutes_all(); + } } diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index 26e36323..ad8a3da4 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -120,6 +120,12 @@ module.exports = { DEV_BUDGET_PROXY: "0xb0cdb715D8122bd976a30996866Ebe5e51bb18b0", RESERVES_5_PERCENT_MULTISIG: "0x4FAE5420F64c282FD908fdf05930B04E8e079770", + // Beanstalk Shipments + BEANSTALK_SHIPMENTS_DEPLOYER: "0x47c365cc9ef51052651c2be22f274470ad6afc53", + BEANSTALK_SILO_PAYBACK: "0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E", + BEANSTALK_BARN_PAYBACK: "0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b", + BEANSTALK_SHIPMENT_PLANNER: "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + // Wells PINTO_WETH_WELL_BASE, PINTO_CBETH_WELL_BASE, From 5ce47575546ca4370b796329c56bee8510703f2c Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 15 Aug 2025 11:19:37 +0300 Subject: [PATCH 036/270] update shipment routes with encoded data, add interfaces for testing --- contracts/beanstalk/storage/System.sol | 4 +- contracts/interfaces/IBarnPayback.sol | 140 +++++++++++++++++- contracts/interfaces/ISiloPayback.sol | 62 +++++++- .../data/updatedShipmentRoutes.json | 22 +-- 4 files changed, 199 insertions(+), 29 deletions(-) diff --git a/contracts/beanstalk/storage/System.sol b/contracts/beanstalk/storage/System.sol index 2054c555..b1a8c344 100644 --- a/contracts/beanstalk/storage/System.sol +++ b/contracts/beanstalk/storage/System.sol @@ -488,8 +488,8 @@ enum ShipmentRecipient { FIELD, INTERNAL_BALANCE, EXTERNAL_BALANCE, - BARN_PAYBACK, - SILO_PAYBACK + SILO_PAYBACK, + BARN_PAYBACK } /** diff --git a/contracts/interfaces/IBarnPayback.sol b/contracts/interfaces/IBarnPayback.sol index 48bfb86c..86ba9725 100644 --- a/contracts/interfaces/IBarnPayback.sol +++ b/contracts/interfaces/IBarnPayback.sol @@ -1,12 +1,136 @@ -//SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.4; + +library LibTransfer { + type To is uint8; +} + +library BeanstalkFertilizer { + struct Balance { + uint128 amount; + uint128 lastBpf; + } +} -// This is the interface for the fertilizer payback contract. -// It is used to get the remaining fertilizer debt. interface IBarnPayback { - // The amount of Bean remaining to pay back barn. - function barnRemaining() external view returns (uint256); + struct AccountFertilizerData { + address account; + uint128 amount; + uint128 lastBpf; + } - // Receive Pinto rewards from shipments - function barnPaybackReceive(uint256 amount) external; + struct Fertilizers { + uint128 fertilizerId; + AccountFertilizerData[] accountData; + } + + error AddressEmptyCode(address target); + error AddressInsufficientBalance(address account); + error ERC1155InsufficientBalance( + address sender, + uint256 balance, + uint256 needed, + uint256 tokenId + ); + error ERC1155InvalidApprover(address approver); + error ERC1155InvalidArrayLength(uint256 idsLength, uint256 valuesLength); + error ERC1155InvalidOperator(address operator); + error ERC1155InvalidReceiver(address receiver); + error ERC1155InvalidSender(address sender); + error ERC1155MissingApprovalForAll(address operator, address owner); + error FailedInnerCall(); + error InvalidInitialization(); + error NotInitializing(); + error OwnableInvalidOwner(address owner); + error OwnableUnauthorizedAccount(address account); + error ReentrancyGuardReentrantCall(); + error SafeCastOverflowedUintToInt(uint256 value); + error SafeERC20FailedOperation(address token); + + event ApprovalForAll(address indexed account, address indexed operator, bool approved); + event BarnPaybackRewardsReceived(uint256 amount); + event ClaimFertilizer(uint256[] ids, uint256 beans); + event Initialized(uint64 version); + event InternalBalanceChanged(address indexed account, address indexed token, int256 delta); + event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); + 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 URI(string value, uint256 indexed id); + + function balanceOf(address account, uint256 id) external view returns (uint256); + function balanceOfBatch( + address[] memory accounts, + uint256[] memory ids + ) external view returns (uint256[] memory); + function balanceOfFertilized( + address account, + uint256[] memory ids + ) external view returns (uint256 beans); + function balanceOfUnfertilized( + address account, + uint256[] memory ids + ) external view returns (uint256 beans); + function barnPaybackReceive(uint256 shipmentAmount) external; + function barnRemaining() external view returns (uint256); + function claimFertilized(uint256[] memory ids, LibTransfer.To mode) external; + function fert() + external + view + returns ( + uint256 activeFertilizer, + uint256 fertilizedIndex, + uint256 unfertilizedIndex, + uint256 fertilizedPaidIndex, + uint128 fertFirst, + uint128 fertLast, + uint128 bpf, + uint256 leftoverBeans + ); + function isApprovedForAll(address account, address operator) external view returns (bool); + function lastBalanceOf( + address account, + uint256 id + ) external view returns (BeanstalkFertilizer.Balance memory); + function lastBalanceOfBatch( + address[] memory accounts, + uint256[] memory ids + ) external view returns (BeanstalkFertilizer.Balance[] memory balances); + function mintFertilizers(Fertilizers[] memory fertilizerIds) external; + function name() external pure returns (string memory); + function owner() external view returns (address); + function pinto() external view returns (address); + function pintoProtocol() external view returns (address); + function renounceOwnership() external; + function safeBatchTransferFrom( + address from, + address to, + uint256[] memory ids, + uint256[] memory amounts, + bytes memory data + ) external; + function safeTransferFrom( + address from, + address to, + uint256 id, + uint256 amount, + bytes memory data + ) external; + function setApprovalForAll(address operator, bool approved) external; + function supportsInterface(bytes4 interfaceId) external view returns (bool); + function symbol() external pure returns (string memory); + function totalUnfertilizedBeans() external view returns (uint256 beans); + function transferOwnership(address newOwner) external; + function uri(uint256) external view returns (string memory); } diff --git a/contracts/interfaces/ISiloPayback.sol b/contracts/interfaces/ISiloPayback.sol index 0eed6dbe..643e0e7b 100644 --- a/contracts/interfaces/ISiloPayback.sol +++ b/contracts/interfaces/ISiloPayback.sol @@ -1,12 +1,58 @@ -//SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.4; + +library LibTransfer { + type To is uint8; +} -// This is the interface for the unripe silo distributor payback contract. -// It is used to get the remaining silo debt. interface ISiloPayback { - // The amount of Bean remaining to pay back silo. - function siloRemaining() external view returns (uint256); + struct UnripeBdvTokenData { + address receipient; + uint256 bdv; + } - // Receive Pinto rewards from shipments - function siloPaybackReceive(uint256 amount) external; + error ERC20InsufficientAllowance(address spender, uint256 allowance, uint256 needed); + error ERC20InsufficientBalance(address sender, uint256 balance, uint256 needed); + error ERC20InvalidApprover(address approver); + error ERC20InvalidReceiver(address receiver); + error ERC20InvalidSender(address sender); + error ERC20InvalidSpender(address spender); + error InvalidInitialization(); + error NotInitializing(); + error OwnableInvalidOwner(address owner); + error OwnableUnauthorizedAccount(address account); + + event Approval(address indexed owner, address indexed spender, uint256 value); + event Claimed(address indexed user, uint256 amount, uint256 rewards); + event Initialized(uint64 version); + event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); + event SiloPaybackRewardsReceived(uint256 amount, uint256 newIndex); + event Transfer(address indexed from, address indexed to, uint256 value); + + function PRECISION() external view returns (uint256); + function allowance(address owner, address spender) external view returns (uint256); + function approve(address spender, uint256 value) external returns (bool); + function balanceOf(address account) external view returns (uint256); + function batchMint(UnripeBdvTokenData[] memory unripeReceipts) external; + function claim(address recipient, LibTransfer.To toMode) external; + function decimals() external view returns (uint8); + function earned(address account) external view returns (uint256); + function initialize(address _pinto, address _pintoProtocol) external; + function name() external view returns (string memory); + function owner() external view returns (address); + function pinto() external view returns (address); + function pintoProtocol() external view returns (address); + function renounceOwnership() external; + function rewardPerTokenStored() external view returns (uint256); + function rewards(address) external view returns (uint256); + function siloPaybackReceive(uint256 shipmentAmount) external; + function siloRemaining() external view returns (uint256); + function symbol() external view returns (string memory); + function totalDistributed() external view returns (uint256); + function totalReceived() external view returns (uint256); + function totalSupply() external view returns (uint256); + function transfer(address to, uint256 amount) external returns (bool); + function transferFrom(address from, address to, uint256 amount) external returns (bool); + function transferOwnership(address newOwner) external; + function userRewardPerTokenPaid(address) external view returns (uint256); } diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index f07862b6..a0bbf55c 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -1,38 +1,38 @@ [ { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0x7c655075", "recipient": "0x1", "data": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0x12e8d3ed", "recipient": "0x2", "data": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0x05655264", "recipient": "0x3", "data": "0x000000000000000000000000b0cdb715D8122bd976a30996866Ebe5e51bb18b0" }, { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", + "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0x6fc9267a", "recipient": "0x2", - "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" + "data": "0x0000000000000000000000000000000000000000000000000000000000000001" }, { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", - "planSelector": "0x441d1e5b", + "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "planSelector": "0xb34da3d2", "recipient": "0x5", - "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" + "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e" }, { - "planContract": "0x73924B07D9E087b5Cb331c305A65882101bC2fa2", - "planSelector": "0x441d1e5b", + "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "planSelector": "0x5f6cc37d", "recipient": "0x6", - "data": "0x0000000000000000000000002cf82605402912C6a79078a9BBfcCf061CbfD507" + "data": "0x00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" } ] \ No newline at end of file From f70884963c8b1f3404ca7ed61a7e1c2888861616 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 15 Aug 2025 11:28:35 +0300 Subject: [PATCH 037/270] test setup --- .../BeanstalkShipments.t.sol | 62 ++++++++++++++++--- 1 file changed, 53 insertions(+), 9 deletions(-) diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 9ca6325c..56f1b085 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -5,6 +5,8 @@ pragma abicoder v2; import {TestHelper} from "test/foundry/utils/TestHelper.sol"; import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; +import {console} from "forge-std/console.sol"; + /** * @notice Tests that the whole shipments initialization and logic works correctly. @@ -15,16 +17,58 @@ import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; */ contract BeanstalkShipmentsTest is TestHelper { + // Contracts + address constant SHIPMENT_PLANNER = address(0x1152691C30aAd82eB9baE7e32d662B19391e34Db); + address constant SILO_PAYBACK = address(0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E); + address constant BARN_PAYBACK = address(0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b); + + // Owners + address constant PCM = address(0x2cf82605402912C6a79078a9BBfcCf061CbfD507); + address constant PINTO = address(0xD1A0D188E861ed9d15773a2F3574a2e94134bA8f); + + // Users + address farmer1 = makeAddr("farmer1"); + address farmer2 = makeAddr("farmer2"); + address farmer3 = makeAddr("farmer3"); + + // Contracts + ISiloPayback siloPayback = ISiloPayback(SILO_PAYBACK); + IBarnPayback barnPayback = IBarnPayback(BARN_PAYBACK); + IMockFBeanstalk bs = IMockFBeanstalk(PINTO); + // we need to: - // - 1. recreate a mock beanstalk repayment field with a mock podline - // - 2. deploy the silo payback proxy - // - 3. deploy the barn payback proxy - // - 4. create a function and make sure shipments are set correctly in the initialization in ShipmentDeployer.sol - // - 5. get to a supply where the beanstalk shipments kick in - // - 6. make the system print, check distribution in each contract - // - 6. for each component, make sure everything is set correctly, - // all tokens are distributed correctly and users can claim their rewards + // - Verify that all state matches the one in the json files for shipments, silo and barn payback + // - get to a supply where the beanstalk shipments kick in + // - make the system print, check distribution in each contract + // - for each component, make sure everything is distributed correctly + // - make sure that at any point all users can claim their rewards pro rata function setUp() public { - + // mint 1bil pinto + // deal(PINTO, farmer1, 1_000_000_000e6); } + + //////////////////////// STATE VERIFICATION //////////////////////// + // note: get properties from json, see l2migration + + function test_shipment_state() public { + console.log("Bs Field data:"); + console.logBytes(abi.encode(1)); + + console.log("Silo payback:"); + console.logBytes(abi.encode(SILO_PAYBACK)); + console.log("Barn payback:"); + console.logBytes(abi.encode(BARN_PAYBACK)); + } + + function test_repayment_field_state() public {} + + function test_silo_payback_state() public {} + + function test_barn_payback_state() public {} + + + //////////////////////// SHIPMENT DISTRIBUTION //////////////////////// + // note: test distribution at the edge, + // note: test when a payback is done + // note: test that all users can claim their rewards at any point } From 6da8c7bbba2d6803971e98138e57680fac82bf87 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 15 Aug 2025 16:58:31 +0300 Subject: [PATCH 038/270] silo payback claim tractor support --- .../beanstalkShipments/SiloPayback.sol | 42 +++++++++++++------ 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 241d18f9..99c3faee 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -40,15 +40,6 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev event emitted when rewards are received from shipments event SiloPaybackRewardsReceived(uint256 amount, uint256 newIndex); - /// @notice Modifier to update rewards for an account before a claim - modifier updateReward(address account) { - if (account != address(0)) { - rewards[account] = earned(account); - userRewardPerTokenPaid[account] = rewardPerTokenStored; - } - _; - } - /// @dev modifier to ensure only the Pinto protocol can call the function modifier onlyPintoProtocol() { require(msg.sender == address(pintoProtocol), "SiloPayback: only pinto protocol"); @@ -99,17 +90,27 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { emit SiloPaybackRewardsReceived(shipmentAmount, rewardPerTokenStored); } + /////////////////// Claiming rewards /////////////////// + /** * @notice Claims accumulated rewards for the caller + * If no active tractor execution, the caller is msg.sender. + * Otherwise it is the active blueprint publisher * @param recipient the address to send the rewards to * @param toMode the mode to send the rewards in */ - function claim(address recipient, LibTransfer.To toMode) external updateReward(msg.sender) { - uint256 rewardsToClaim = rewards[msg.sender]; + function claim(address recipient, LibTransfer.To toMode) external { + // get the current tractor user or msg.sender if no active tractor execution + address returnedAccount = pintoProtocol.tractorUser(); + // because msg.sender in the diamond is this contract, we need to adjust msg.sender + address account = returnedAccount == address(this) ? msg.sender : returnedAccount; + // update the reward state for the account + updateReward(account); + uint256 rewardsToClaim = rewards[account]; require(rewardsToClaim > 0, "SiloPayback: no rewards to claim"); // reset user rewards - rewards[msg.sender] = 0; + rewards[account] = 0; // Transfer the rewards to the recipient pintoProtocol.transferToken( @@ -120,7 +121,18 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { toMode ); - emit Claimed(msg.sender, rewardsToClaim, rewardsToClaim); + emit Claimed(account, rewardsToClaim, rewardsToClaim); + } + + /** + * @notice Updates the reward state for an account before a claim + * @param account The account to update the reward state for + */ + function updateReward(address account) internal { + if (account != address(0)) { + rewards[account] = earned(account); + userRewardPerTokenPaid[account] = rewardPerTokenStored; + } } /** @@ -190,4 +202,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { function decimals() public view override returns (uint8) { return 6; } + + // todo: add a function for a user to claim but the contract looks at their INTERNAL balance + // TODO: Check if the user can do a PARTIAL claim using this function aka when you transfer 25 out of 100 + // can you claim for 25% of the rewards? } From 5276cdc9c02f2a57d0d129169fa0b2f43265401a Mon Sep 17 00:00:00 2001 From: default-juice Date: Sat, 16 Aug 2025 17:10:25 +0300 Subject: [PATCH 039/270] internal balance claiming support and partial claims for silo payback --- .../beanstalkShipments/SiloPayback.sol | 105 +++++++++++++----- contracts/interfaces/IBeanstalk.sol | 2 + .../BeanstalkShipments.t.sol | 7 +- 3 files changed, 85 insertions(+), 29 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 99c3faee..fa49a067 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -9,7 +9,6 @@ import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/Own import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { - /// @dev precision used for reward calculations uint256 public constant PRECISION = 1e18; @@ -93,24 +92,46 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /////////////////// Claiming rewards /////////////////// /** - * @notice Claims accumulated rewards for the caller + * @notice Claims accumulated rewards for the caller, optionally for a specific token amount * If no active tractor execution, the caller is msg.sender. * Otherwise it is the active blueprint publisher - * @param recipient the address to send the rewards to - * @param toMode the mode to send the rewards in + * @param tokenAmount The amount of tokens to claim rewards for (0 to claim for the entire balance) + * @param recipient The address to send the rewards to + * @param fromMode The mode where the user's tokens are stored (EXTERNAL or INTERNAL) + * @param toMode The mode to send the rewards in */ - function claim(address recipient, LibTransfer.To toMode) external { - // get the current tractor user or msg.sender if no active tractor execution - address returnedAccount = pintoProtocol.tractorUser(); - // because msg.sender in the diamond is this contract, we need to adjust msg.sender - address account = returnedAccount == address(this) ? msg.sender : returnedAccount; + function claim( + uint256 tokenAmount, + address recipient, + LibTransfer.From fromMode, + LibTransfer.To toMode + ) external { + address account = _getActiveAccount(); + uint256 userModeBalance = getBalanceInMode(account, fromMode); + + // If tokenAmount is 0, claim for all tokens + if (tokenAmount == 0) tokenAmount = userModeBalance; + + // Validate tokenAmount and balance + require(tokenAmount > 0, "SiloPayback: tokenAmount to claim for must be greater than 0"); + require(userModeBalance > 0, "SiloPayback: token balance in mode must be greater than 0"); + require(tokenAmount <= userModeBalance, "SiloPayback: tokenAmount to claim for exceeds balance"); + // update the reward state for the account - updateReward(account); - uint256 rewardsToClaim = rewards[account]; - require(rewardsToClaim > 0, "SiloPayback: no rewards to claim"); + _updateReward(account); + uint256 totalEarned = rewards[account]; + require(totalEarned > 0, "SiloPayback: no rewards to claim"); - // reset user rewards - rewards[account] = 0; + uint256 rewardsToClaim; + if (tokenAmount == userModeBalance) { + // full balance claim + rewardsToClaim = totalEarned; + rewards[account] = 0; + } else { + // partial claim - rewards are proportional to the token amount specified + rewardsToClaim = (totalEarned * tokenAmount) / userModeBalance; + rewards[account] = totalEarned - rewardsToClaim; + } // Transfer the rewards to the recipient pintoProtocol.transferToken( @@ -121,20 +142,56 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { toMode ); - emit Claimed(account, rewardsToClaim, rewardsToClaim); + emit Claimed(account, tokenAmount, rewardsToClaim); } /** * @notice Updates the reward state for an account before a claim * @param account The account to update the reward state for */ - function updateReward(address account) internal { + function _updateReward(address account) internal { if (account != address(0)) { rewards[account] = earned(account); userRewardPerTokenPaid[account] = rewardPerTokenStored; } } + /** + * @notice Gets the active account from the diamond tractor storage + * The account returned is either msg.sender or an active publisher + * Since msg.sender for the external call is this contract, we need to adjust + * it to the actual function caller + */ + function _getActiveAccount() internal view returns (address) { + address tractorAccount = pintoProtocol.tractorUser(); + return tractorAccount == address(this) ? msg.sender : tractorAccount; + } + + /** + * @notice Gets the balance of an account + * @param account The account to get the balance of UnripeBDV tokens for + * @param mode The mode where the user's tokens are stored (EXTERNAL or INTERNAL) + */ + function getBalanceInMode( + address account, + LibTransfer.From mode + ) public view returns (uint256) { + return + mode == LibTransfer.From.EXTERNAL + ? balanceOf(account) + : pintoProtocol.getInternalBalance(account, address(this)); + } + + /** + * @notice Gets the combined balance of an account from both EXTERNAL and INTERNAL modes + * Used to calculate the total balance of the account for claiming rewards + */ + function getBalanceCombined(address account) public view returns (uint256) { + return + getBalanceInMode(account, LibTransfer.From.EXTERNAL) + + getBalanceInMode(account, LibTransfer.From.INTERNAL); + } + /** * @notice Calculate earned rewards for an account * @dev Calculates the pro-rata share of rewards based on the delta between rewardPerTokenStored @@ -151,8 +208,9 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { */ function earned(address account) public view returns (uint256) { return - ((balanceOf(account) * (rewardPerTokenStored - userRewardPerTokenPaid[account])) / - PRECISION) + rewards[account]; + ((getBalanceCombined(account) * + (rewardPerTokenStored - userRewardPerTokenPaid[account])) / PRECISION) + + rewards[account]; } /// @dev get the remaining amount of silo payback tokens to be distributed, called by the planner @@ -170,9 +228,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { * This way all claims can also happen in the internal balance. * @param from The address of the sender * @param to The address of the receiver - * @param amount The amount of tokens being transferred */ - function _beforeTokenTransfer(address from, address to, uint256 amount) internal { + function _beforeTokenTransfer(address from, address to) internal { if (from != address(0)) { // capture any existing rewards for the sender, update their checkpoint to current global state rewards[from] = earned(from); @@ -188,13 +245,13 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev override the standard transfer function to update rewards function transfer(address to, uint256 amount) public override returns (bool) { - _beforeTokenTransfer(msg.sender, to, amount); + _beforeTokenTransfer(msg.sender, to); return super.transfer(to, amount); } /// @dev override the standard transferFrom function to update rewards function transferFrom(address from, address to, uint256 amount) public override returns (bool) { - _beforeTokenTransfer(from, to, amount); + _beforeTokenTransfer(from, to); return super.transferFrom(from, to, amount); } @@ -202,8 +259,4 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { function decimals() public view override returns (uint8) { return 6; } - - // todo: add a function for a user to claim but the contract looks at their INTERNAL balance - // TODO: Check if the user can do a PARTIAL claim using this function aka when you transfer 25 out of 100 - // can you claim for 25% of the rewards? } diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index b132e036..9a2d7c3f 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -125,6 +125,8 @@ interface IBeanstalk { address[] calldata tokens ) external view returns (MowStatus[] memory mowStatuses); + function getInternalBalance(address account, address token) external view returns (uint256); + function getNonBeanTokenAndIndexFromWell(address well) external view returns (address, uint256); function getTokenDepositIdsForAccount( diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 56f1b085..cdde7841 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -6,7 +6,9 @@ import {TestHelper} from "test/foundry/utils/TestHelper.sol"; import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; import {console} from "forge-std/console.sol"; - +import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; +import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; +import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; /** * @notice Tests that the whole shipments initialization and logic works correctly. @@ -24,7 +26,6 @@ contract BeanstalkShipmentsTest is TestHelper { // Owners address constant PCM = address(0x2cf82605402912C6a79078a9BBfcCf061CbfD507); - address constant PINTO = address(0xD1A0D188E861ed9d15773a2F3574a2e94134bA8f); // Users address farmer1 = makeAddr("farmer1"); @@ -34,7 +35,7 @@ contract BeanstalkShipmentsTest is TestHelper { // Contracts ISiloPayback siloPayback = ISiloPayback(SILO_PAYBACK); IBarnPayback barnPayback = IBarnPayback(BARN_PAYBACK); - IMockFBeanstalk bs = IMockFBeanstalk(PINTO); + IMockFBeanstalk pinto = IMockFBeanstalk(L2_PINTO); // we need to: // - Verify that all state matches the one in the json files for shipments, silo and barn payback From fd37512132354d9b0ed7ba6b16412dba648a77a6 Mon Sep 17 00:00:00 2001 From: default-juice Date: Sat, 16 Aug 2025 18:56:08 +0300 Subject: [PATCH 040/270] remove from mode from silo payback, making claiming from internal implicit --- .../beanstalkShipments/SiloPayback.sol | 31 ++++++++-------- .../beanstalkShipments/SiloPayback.t.sol | 37 +++++++++++++++---- 2 files changed, 45 insertions(+), 23 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index fa49a067..4052f471 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -95,27 +95,26 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { * @notice Claims accumulated rewards for the caller, optionally for a specific token amount * If no active tractor execution, the caller is msg.sender. * Otherwise it is the active blueprint publisher + * By specifying the token amount to claim for, users can partially claim using tokens from their internal + * balance without actually specfifying a mode where the rewards are stored. * @param tokenAmount The amount of tokens to claim rewards for (0 to claim for the entire balance) * @param recipient The address to send the rewards to - * @param fromMode The mode where the user's tokens are stored (EXTERNAL or INTERNAL) * @param toMode The mode to send the rewards in */ - function claim( - uint256 tokenAmount, - address recipient, - LibTransfer.From fromMode, - LibTransfer.To toMode - ) external { + function claim(uint256 tokenAmount, address recipient, LibTransfer.To toMode) external { address account = _getActiveAccount(); - uint256 userModeBalance = getBalanceInMode(account, fromMode); + uint256 userCombinedBalance = getBalanceCombined(account); // If tokenAmount is 0, claim for all tokens - if (tokenAmount == 0) tokenAmount = userModeBalance; + if (tokenAmount == 0) tokenAmount = userCombinedBalance; // Validate tokenAmount and balance require(tokenAmount > 0, "SiloPayback: tokenAmount to claim for must be greater than 0"); - require(userModeBalance > 0, "SiloPayback: token balance in mode must be greater than 0"); - require(tokenAmount <= userModeBalance, "SiloPayback: tokenAmount to claim for exceeds balance"); + require(userCombinedBalance > 0, "SiloPayback: token balance must be greater than 0"); + require( + tokenAmount <= userCombinedBalance, + "SiloPayback: tokenAmount to claim for exceeds balance" + ); // update the reward state for the account _updateReward(account); @@ -123,13 +122,15 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { require(totalEarned > 0, "SiloPayback: no rewards to claim"); uint256 rewardsToClaim; - if (tokenAmount == userModeBalance) { - // full balance claim + if (tokenAmount == userCombinedBalance) { + // full balance claim - reset rewards to 0 rewardsToClaim = totalEarned; rewards[account] = 0; } else { // partial claim - rewards are proportional to the token amount specified - rewardsToClaim = (totalEarned * tokenAmount) / userModeBalance; + rewardsToClaim = (totalEarned * tokenAmount) / userCombinedBalance; + // update rewards to reflect the portion claimed + // maintains consistency since the user's checkpoint remains valid rewards[account] = totalEarned - rewardsToClaim; } @@ -193,7 +194,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { } /** - * @notice Calculate earned rewards for an account + * @notice Calculate earned rewards for an account of their combined balance * @dev Calculates the pro-rata share of rewards based on the delta between rewardPerTokenStored * and userRewardPerTokenPaid. * ------------------------------------------------------------ diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index 1bac3a53..18fdd9be 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -136,7 +136,7 @@ contract SiloPaybackTest is TestHelper { // farmer1 claims immediately after first distribution (claiming every season) uint256 farmer1BalanceBefore = IERC20(BEAN).balanceOf(farmer1); vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); + siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all // Verify farmer1 received rewards and state is updated assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBefore + farmer1Earned1); @@ -166,7 +166,7 @@ contract SiloPaybackTest is TestHelper { // Now farmer1 claims again (claiming every season) uint256 farmer1BalanceBeforeClaim2 = IERC20(BEAN).balanceOf(farmer1); vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); + siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all // farmer1 should have received their second round rewards assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBeforeClaim2 + farmer1Earned2); @@ -175,7 +175,7 @@ contract SiloPaybackTest is TestHelper { // farmer2 finally claims all accumulated rewards uint256 farmer2BalanceBefore = IERC20(BEAN).balanceOf(farmer2); vm.prank(farmer2); - siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); + siloPayback.claim(0, farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all // farmer2 should receive all their accumulated rewards assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2BalanceBefore + farmer2Earned2); @@ -205,10 +205,10 @@ contract SiloPaybackTest is TestHelper { // Both farmers claim to INTERNAL balance vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.INTERNAL); + siloPayback.claim(0, farmer1, LibTransfer.To.INTERNAL); // 0 means claim all vm.prank(farmer2); - siloPayback.claim(farmer2, LibTransfer.To.INTERNAL); + siloPayback.claim(0, farmer2, LibTransfer.To.INTERNAL); // 0 means claim all // Verify both farmers' rewards went to internal balance uint256 farmer1InternalAfter = bs.getInternalBalance(farmer1, address(BEAN)); @@ -301,13 +301,13 @@ contract SiloPaybackTest is TestHelper { // Claim for all users vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); + siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all vm.prank(farmer2); - siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); + siloPayback.claim(0, farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all vm.prank(farmer3); - siloPayback.claim(farmer3, LibTransfer.To.EXTERNAL); + siloPayback.claim(0, farmer3, LibTransfer.To.EXTERNAL); // 0 means claim all // Verify all rewards were paid out correctly assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBefore + farmer1FinalEarned, "farmer1 received correct payout"); @@ -323,6 +323,27 @@ contract SiloPaybackTest is TestHelper { assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned reset after claim"); } + + // test case for sure + // user puts the tokens in their internal balance, we claim from the ui via a farm call. + // rewardPertoken paid for user is updated. + + // rewards keep accumulating as pinto distribution happens + + // user transfers the tokens to another address via internal balance + // no state variables get updated BUT + // earned now updates to reflect the new internal balance + + // Scenario: + // - User has 100 external + 50 internal tokens (150 + // total) + // - Earns rewards for 150 tokens + // - Internal balance changes to 25 via direct Pinto + // protocol calls + // - User still has checkpoint for 150 tokens but only 125 + // total balance + // - Could claim excess rewards or have calculation errors + ////////////// HELPER FUNCTIONS ////////////// function _mintTokensToUsers(address[] memory recipients, uint256[] memory amounts) internal { From e42da6abf512ca42f0d87fad9f79a6ea125f93cd Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 18 Aug 2025 10:25:33 +0300 Subject: [PATCH 041/270] add exports, parsing, clean up output --- .../barn/BeanstalkFertilizer.sol | 2 +- hardhat.config.js | 54 +- .../data/beanstalkAccountFertilizer.json | 6000 +++ .../data/beanstalkGlobalFertilizer.json | 10 +- .../data/beanstalkPlots.json | 38078 ++++++++++++++- .../data/exports/beanstalk_barn.json | 6901 +++ .../data/exports/beanstalk_field.json | 10660 +++++ .../data/exports/beanstalk_silo.json | 39208 ++++++++++++++++ .../data/unripeBdvTokens.json | 9812 +++- .../deployPaybackContracts.js | 39 +- scripts/beanstalkShipments/parsers/index.js | 51 + .../parsers/parseBarnData.js | 131 + .../parsers/parseFieldData.js | 93 + .../parsers/parseSiloData.js | 82 + 14 files changed, 110881 insertions(+), 240 deletions(-) create mode 100644 scripts/beanstalkShipments/data/exports/beanstalk_barn.json create mode 100644 scripts/beanstalkShipments/data/exports/beanstalk_field.json create mode 100644 scripts/beanstalkShipments/data/exports/beanstalk_silo.json create mode 100644 scripts/beanstalkShipments/parsers/index.js create mode 100644 scripts/beanstalkShipments/parsers/parseBarnData.js create mode 100644 scripts/beanstalkShipments/parsers/parseFieldData.js create mode 100644 scripts/beanstalkShipments/parsers/parseSiloData.js diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index be23f870..2e2e6de5 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -438,7 +438,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran } /** - * @notice Returns the total beans needed to repay the barn + * @notice Returns the total pinto needed to repay the barn */ function totalUnfertilizedBeans() public view returns (uint256 beans) { return fert.unfertilizedIndex - fert.fertilizedIndex; diff --git a/hardhat.config.js b/hardhat.config.js index 2f89eaf1..69853ffd 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -41,6 +41,7 @@ const { populateBeanstalkField } = require("./scripts/beanstalkShipments/populateBeanstalkField.js"); const { deployAndSetupContracts } = require("./scripts/beanstalkShipments/deployPaybackContracts.js"); +const { parseAllExportData } = require("./scripts/beanstalkShipments/parsers"); //////////////////////// TASKS //////////////////////// @@ -2022,11 +2023,26 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m task("beanstalkShipments", "performs all actions to initialize the beanstalk shipments") .setAction(async (taskArgs) => { - console.log("🌱 Starting Beanstalk shipments initialization..."); + console.log("=".repeat(80)); + console.log("🌱 BEANSTALK SHIPMENTS INITIALIZATION"); + console.log("=".repeat(80)); + // params - const verbose = true; + const verbose = false; // Reduced verbosity for cleaner output const noFieldChunking = true; const deploy = true; + const parseContracts = true; + + // Step 0: Parse export data into required format + console.log("\nšŸ“Š STEP 0: PARSING EXPORT DATA"); + console.log("-".repeat(50)); + try { + parseAllExportData(parseContracts); + console.log("āœ… Export data parsing completed\n"); + } catch (error) { + console.error("āŒ Failed to parse export data:", error); + throw error; + } // Use the diamond deployer for dimond cuts const mock = true; @@ -2047,12 +2063,9 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi deployer = (await ethers.getSigners())[1]; } - // Step 1: - // - Deploy the silo and barn payback contracts - // - Distribute the unripe bdv tokens and fertilizer tokens - // - Transfer ownership of the silo and barn payback contracts to the PCM - console.log("\n-----------------------------------"); - console.log("Step 1: Deploying and setting up payback contracts..."); + // Step 1: Deploy and setup payback contracts + console.log("šŸš€ STEP 1: DEPLOYING PAYBACK CONTRACTS"); + console.log("-".repeat(50)); let contracts = {}; if (deploy) { contracts = await deployAndSetupContracts({ @@ -2062,23 +2075,21 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi account: deployer, verbose }); + console.log("āœ… Payback contracts deployed and configured\n"); } - // Step 2: Creates and populates the beanstalk field - console.log("\n-----------------------------------"); - //clear console - console.log("Step 2: Creating and populating beanstalk field..."); - await populateBeanstalkField(L2_PINTO, owner, verbose, noFieldChunking); + // Step 2: Create and populate beanstalk field + console.log("šŸ“ˆ STEP 2: CREATING BEANSTALK FIELD"); + console.log("-".repeat(50)); + console.log("ā­ļø Field population skipped for this run\n"); + // await populateBeanstalkField(L2_PINTO, owner, verbose, noFieldChunking); - // Step 3: Update the shipment routes - // Read the routes from the json file + // Step 3: Update shipment routes + console.log("šŸ›¤ļø STEP 3: UPDATING SHIPMENT ROUTES"); + console.log("-".repeat(50)); const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; const routes = JSON.parse(fs.readFileSync(routesPath)); - // Refresh the shipment routes with the new routes - // Old routes need to be updates because of the new shipment planner contract address - console.log("\n-----------------------------------"); - console.log("Step 3: Refreshing shipment routes..."); await upgradeWithNewFacets({ diamondAddress: L2_PINTO, facetNames: [], @@ -2087,8 +2098,11 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi verbose: verbose, account: owner }); + console.log("āœ… Shipment routes updated\n"); - console.log("āœ… Beanstalk shipments initialization completed successfully!"); + console.log("=".repeat(80)); + console.log("šŸŽ‰ BEANSTALK SHIPMENTS INITIALIZATION COMPLETED"); + console.log("=".repeat(80)); }); //////////////////////// CONFIGURATION //////////////////////// diff --git a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json index a6474cd5..7652a7a6 100644 --- a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json @@ -28,5 +28,6005 @@ "340802" ] ] + ], + [ + "1334925", + [ + [ + "0x5f5ad340348Cd7B1d8FABE62c7afE2E32d2dE359", + "112", + "340802" + ], + [ + "0x3fc4310bf2eBae51BaC956dd60A81803A3f89188", + "335", + "340802" + ], + [ + "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", + "59", + "340802" + ], + [ + "0x5090FeC124C090ca25179A996878A4Cd90147A1d", + "41", + "340802" + ], + [ + "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", + "394", + "340802" + ] + ] + ], + [ + "1335008", + [ + [ + "0xa5D0084A766203b463b3164DFc49D91509C12daB", + "50", + "340802" + ] + ] + ], + [ + "1335068", + [ + [ + "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B", + "499", + "340802" + ] + ] + ], + [ + "1335304", + [ + [ + "0x82Ff15f5de70250a96FC07a0E831D3e391e47c48", + "73", + "340802" + ] + ] + ], + [ + "1336323", + [ + [ + "0x710B5BB4552f20524232ae3e2467a6dC74b21982", + "78", + "340802" + ] + ] + ], + [ + "1337953", + [ + [ + "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", + "39", + "340802" + ] + ] + ], + [ + "1338731", + [ + [ + "0xCF0dCc80F6e15604E258138cca455A040ecb4605", + "116", + "340802" + ] + ] + ], + [ + "1348369", + [ + [ + "0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B", + "315", + "340802" + ], + [ + "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f", + "9", + "340802" + ], + [ + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", + "1", + "340802" + ], + [ + "0x46387563927595f5ef11952f74DcC2Ce2E871E73", + "9", + "340802" + ], + [ + "0x5c0ed0a799c7025D3C9F10c561249A996502a62F", + "299", + "340802" + ], + [ + "0xC5581F1aE61E34391824779D505Ca127a4566737", + "170", + "340802" + ] + ] + ], + [ + "1363069", + [ + [ + "0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40", + "323", + "340802" + ] + ] + ], + [ + "1363641", + [ + [ + "0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab", + "499", + "340802" + ] + ] + ], + [ + "1418854", + [ + [ + "0x6D4ed8a1599DEe2655D51B245f786293E03d58f7", + "50", + "340802" + ] + ] + ], + [ + "1553682", + [ + [ + "0xC9F817EA7aABE604F5677bf9C1339e32Ef1B90F0", + "10", + "340802" + ] + ] + ], + [ + "1593637", + [ + [ + "0x971b4a65048319cc9843DfdBDC8Aa97AD47Ef19d", + "260", + "340802" + ] + ] + ], + [ + "2078193", + [ + [ + "0x48e39dfd0450601Cb29F74cb43FC913A57FCA813", + "844", + "340802" + ] + ] + ], + [ + "2313052", + [ + [ + "0xF7d48932f456e98d2FF824E38830E8F59De13f4A", + "912", + "340802" + ] + ] + ], + [ + "2373025", + [ + [ + "0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1", + "2236", + "340802" + ] + ] + ], + [ + "2382999", + [ + [ + "0x4A337d1dF22d0D3077CaEFd083A1b70AA168d087", + "578", + "340802" + ] + ] + ], + [ + "2412881", + [ + [ + "0xBd120e919eb05343DbA68863f2f8468bd7010163", + "196", + "340802" + ] + ] + ], + [ + "2452755", + [ + [ + "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", + "130", + "340802" + ] + ] + ], + [ + "2482696", + [ + [ + "0x597D01CdfDC7ad72c19B562A18b2e31E41B67991", + "1000", + "340802" + ] + ] + ], + [ + "2492679", + [ + [ + "0xC5581F1aE61E34391824779D505Ca127a4566737", + "65", + "340802" + ] + ] + ], + [ + "2502666", + [ + [ + "0xF7d48932f456e98d2FF824E38830E8F59De13f4A", + "20", + "340802" + ] + ] + ], + [ + "2687438", + [ + [ + "0x5a57711B103c6039eaddC160B94c932d499c6736", + "51", + "340802" + ] + ] + ], + [ + "2702430", + [ + [ + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", + "1", + "340802" + ] + ] + ], + [ + "2767422", + [ + [ + "0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B", + "597", + "340802" + ] + ] + ], + [ + "2811995", + [ + [ + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", + "45", + "340802" + ] + ] + ], + [ + "2871153", + [ + [ + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", + "652", + "340802" + ], + [ + "0xa5b200B10fd9897142dC2dd14708EFdF090A1b4d", + "585", + "340802" + ] + ] + ], + [ + "2886153", + [ + [ + "0x87546FA086F625961A900Dbfa953662449644492", + "423", + "340802" + ] + ] + ], + [ + "2891153", + [ + [ + "0xBd120e919eb05343DbA68863f2f8468bd7010163", + "324", + "340802" + ], + [ + "0x68e41BDD608fC5eE054615CF2D9d079f9e99c483", + "422", + "340802" + ] + ] + ], + [ + "2901153", + [ + [ + "0x6343B307C288432BB9AD9003B4230B08B56b3b82", + "284", + "340802" + ] + ] + ], + [ + "2921113", + [ + [ + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", + "1500", + "340802" + ] + ] + ], + [ + "2945769", + [ + [ + "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", + "101", + "340802" + ] + ] + ], + [ + "2955590", + [ + [ + "0x44E836EbFEF431e57442037b819B23fd29bc3B69", + "500", + "340802" + ] + ] + ], + [ + "2975557", + [ + [ + "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", + "342", + "340802" + ] + ] + ], + [ + "3005557", + [ + [ + "0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458", + "283", + "340802" + ] + ] + ], + [ + "3015555", + [ + [ + "0x3800645f556ee583E20D6491c3a60E9c32744376", + "997", + "340802" + ] + ] + ], + [ + "3045431", + [ + [ + "0x507165FF0417126930D7F79163961DE8Ff19c8b8", + "955", + "340802" + ] + ] + ], + [ + "3060408", + [ + [ + "0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c", + "564", + "340802" + ] + ] + ], + [ + "3095329", + [ + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "451", + "340802" + ] + ] + ], + [ + "3125329", + [ + [ + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", + "332", + "340802" + ], + [ + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", + "5006", + "340802" + ] + ] + ], + [ + "3130329", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "1918", + "340802" + ] + ] + ], + [ + "3164439", + [ + [ + "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", + "606", + "340802" + ] + ] + ], + [ + "3223426", + [ + [ + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + "1240", + "340802" + ] + ] + ], + [ + "3268426", + [ + [ + "0x394c357DB3177E33Bde63F259F0EB2c04A46827c", + "1740", + "340802" + ], + [ + "0x63a7255C515041fD243440e3db0D10f62f9936ae", + "500", + "340802" + ], + [ + "0x02aA96e8d266Cee1411bB2ADB4D09066f2e94489", + "800", + "340802" + ] + ] + ], + [ + "3278426", + [ + [ + "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", + "2540", + "340802" + ] + ] + ], + [ + "3293426", + [ + [ + "0x679B4172E1698579d562D1d8b4774968305b80b2", + "2000", + "340802" + ], + [ + "0xaf28E2A58Ef2D6d88fb4cDC28F380908BaDE162b", + "1020", + "340802" + ] + ] + ], + [ + "3303426", + [ + [ + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", + "97", + "340802" + ] + ] + ], + [ + "3308426", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "1385", + "340802" + ] + ] + ], + [ + "3313426", + [ + [ + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6", + "1395", + "340802" + ] + ] + ], + [ + "3328426", + [ + [ + "0xD6626eA482D804DDd83C6824284766f73A45D734", + "5000", + "340802" + ], + [ + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", + "294", + "340802" + ] + ] + ], + [ + "3338293", + [ + [ + "0xDf29Ee8F6D1b407808Eb0270f5b128DC28303684", + "176", + "340802" + ] + ] + ], + [ + "3343293", + [ + [ + "0xBd120e919eb05343DbA68863f2f8468bd7010163", + "1764", + "340802" + ] + ] + ], + [ + "3363293", + [ + [ + "0x5656cB4721C21E1F5DCbe03Db9026ac0203d6e4f", + "256", + "340802" + ] + ] + ], + [ + "3383071", + [ + [ + "0xa3d63491abf28803116569058A263B1A407e66Fb", + "337", + "340802" + ] + ] + ], + [ + "3393052", + [ + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "399", + "340802" + ] + ] + ], + [ + "3398029", + [ + [ + "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3", + "476", + "340802" + ] + ] + ], + [ + "3413005", + [ + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "246", + "340802" + ], + [ + "0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd", + "960", + "340802" + ], + [ + "0xb78003FCB54444E289969154A27Ca3106B3f41f6", + "129", + "340802" + ], + [ + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584", + "2646", + "340802" + ], + [ + "0xC38f042ae8C77f110c33eabfAA5Ed28861760Ac6", + "500", + "340802" + ], + [ + "0x58e4e9D30Da309624c785069A99709b16276B196", + "3534", + "340802" + ], + [ + "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF", + "1095", + "340802" + ] + ] + ], + [ + "3418005", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "712", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "259", + "340802" + ], + [ + "0x43b79f1E529330F1568e8741F1C04107db25EB28", + "500", + "340802" + ] + ] + ], + [ + "3423005", + [ + [ + "0xaf28E2A58Ef2D6d88fb4cDC28F380908BaDE162b", + "1807", + "340802" + ], + [ + "0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd", + "3677", + "340802" + ], + [ + "0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1", + "30215", + "340802" + ], + [ + "0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb", + "16725", + "340802" + ], + [ + "0x4a52078E4706884fc899b2Df902c4D2d852BF527", + "1670", + "340802" + ] + ] + ], + [ + "3428005", + [ + [ + "0xaf28E2A58Ef2D6d88fb4cDC28F380908BaDE162b", + "2183", + "340802" + ], + [ + "0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1", + "305", + "340802" + ], + [ + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", + "946", + "340802" + ] + ] + ], + [ + "3433005", + [ + [ + "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5", + "26", + "340802" + ], + [ + "0x4330C25C858040aDbda9e05744Fa3ADF9A35664F", + "500", + "340802" + ] + ] + ], + [ + "3438005", + [ + [ + "0x1C4E440e9f9069427d11bB1bD73e57458eeA9577", + "1321", + "340802" + ], + [ + "0xb7AdcE9Fa8bc98137247f9b606D89De76eA8aACc", + "1000", + "340802" + ], + [ + "0x487175f921A713d8E67a95BCDD75139C35a7d838", + "25", + "340802" + ] + ] + ], + [ + "3439448", + [ + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "2071", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "14779", + "340802" + ], + [ + "0x3C43674dfa916d791614827a50353fe65227B7f3", + "492", + "340802" + ], + [ + "0xC89A6f24b352d35e783ae7C330462A3f44242E89", + "603", + "340802" + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "3688", + "340802" + ], + [ + "0x08Bf22fB93892583a815C598502b9B0a88124DAD", + "929", + "340802" + ], + [ + "0x51AAD11e5A5Bd05B3409358853D0D6A66aa60c40", + "4", + "340802" + ], + [ + "0xb47959506850b9b34A8f345179eD1C932aaA8bFa", + "1968", + "340802" + ], + [ + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", + "4274", + "340802" + ] + ] + ], + [ + "3441470", + [ + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "53", + "340802" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "182", + "340802" + ], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + "220", + "340802" + ], + [ + "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", + "1000", + "340802" + ], + [ + "0x96D48b045C9F825f2999C533Ad56B6B0fCa91F92", + "1681", + "340802" + ], + [ + "0x840fe9Ce619cfAA1BE9e99C73F2A0eCbAb99f688", + "16784", + "340802" + ], + [ + "0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333", + "1676", + "340802" + ] + ] + ], + [ + "3441822", + [ + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "256", + "340802" + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + "158", + "340802" + ], + [ + "0xD6ff57479699e3F93fFd68295F3257f7C07E983e", + "576", + "340802" + ], + [ + "0xE84c01208c4868d5615FCCf0b98f8c90f460d2b6", + "310", + "340802" + ], + [ + "0xC1A9BC22CC31AB64A78421bEFa10c359A1417ce3", + "70000", + "340802" + ], + [ + "0x3822bBBd588fE86964c7751d6c6a6Bd010927307", + "2000", + "340802" + ] + ] + ], + [ + "3443005", + [ + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "685", + "340802" + ], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + "253", + "340802" + ], + [ + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + "8500", + "340802" + ], + [ + "0xcb89e2300E22Ec273F39e69E79E468723ad65158", + "342", + "340802" + ], + [ + "0x030ae585DB6d5169B3594eC37c008662f2494a1D", + "3000", + "340802" + ] + ] + ], + [ + "3443526", + [ + [ + "0x96D48b045C9F825f2999C533Ad56B6B0fCa91F92", + "16", + "340802" + ], + [ + "0x264c1cBEC44F201d0eBe67b269D16B3edc909C61", + "106", + "340802" + ], + [ + "0xDFe18DE4852AB020FC82502dcE862B1F4206C587", + "200", + "340802" + ], + [ + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", + "572", + "340802" + ] + ] + ], + [ + "3445713", + [ + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "50", + "340802" + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "635", + "340802" + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "20000", + "340802" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "3170", + "340802" + ], + [ + "0xC1A9BC22CC31AB64A78421bEFa10c359A1417ce3", + "100000", + "340802" + ], + [ + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3", + "2000", + "340802" + ], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + "530", + "340802" + ], + [ + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", + "1506", + "340802" + ], + [ + "0x17757B0252c84341E243Ff49EEf8729eFa32f5De", + "900", + "340802" + ], + [ + "0x85806019a442224D6345a1c2eD597d8a5DCE1F2B", + "500", + "340802" + ], + [ + "0xF73FE15cFB88ea3C7f301F16adE3c02564ACa407", + "100", + "340802" + ], + [ + "0x69b03bFC650B8174f5887B2320338b6c29150bCE", + "502", + "340802" + ] + ] + ], + [ + "3446568", + [ + [ + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", + "392", + "340802" + ], + [ + "0xaf28E2A58Ef2D6d88fb4cDC28F380908BaDE162b", + "1856", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "2391", + "340802" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "244", + "340802" + ], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + "810", + "340802" + ], + [ + "0x17757B0252c84341E243Ff49EEf8729eFa32f5De", + "1000", + "340802" + ], + [ + "0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e", + "1353", + "340802" + ], + [ + "0x55179ffEFc2d49daB14BA15D25fb023408450409", + "2316", + "340802" + ], + [ + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F", + "513", + "340802" + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + "46", + "340802" + ], + [ + "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D", + "108", + "340802" + ], + [ + "0x88F667664E61221160ddc0414868eF2f40e83324", + "987", + "340802" + ], + [ + "0x66C19e3612efa7b18C18ee4D75A8aaE1d7902225", + "1438", + "340802" + ], + [ + "0xb871eE8C6b280463068627502c36b33CC79cc8d3", + "416", + "340802" + ], + [ + "0xf6F46f437691b6C42cd92c91b1b7c251D6793222", + "30122", + "340802" + ], + [ + "0x09C88F29A308646204D11383c6139d9C93eFb6b8", + "400", + "340802" + ], + [ + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", + "108", + "340802" + ], + [ + "0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408", + "3329", + "340802" + ] + ] + ], + [ + "3447839", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "4401", + "340802" + ], + [ + "0x17757B0252c84341E243Ff49EEf8729eFa32f5De", + "100", + "340802" + ], + [ + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", + "299", + "340802" + ], + [ + "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", + "993", + "340802" + ], + [ + "0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8", + "88888", + "340802" + ], + [ + "0xc6302894cd030601D5E1F65c8F504C83D5361279", + "1250", + "340802" + ] + ] + ], + [ + "3447990", + [ + [ + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0", + "599", + "340802" + ], + [ + "0x4Ab209010345978254F1757a88cAc93CD19987a8", + "131", + "340802" + ], + [ + "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d", + "6825", + "340802" + ], + [ + "0xF869B8e5a54e7D93D98fc7C5c9D48fe972C330CA", + "94", + "340802" + ], + [ + "0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41", + "855", + "340802" + ], + [ + "0x5ea7ea516720a8F59C9d245E2E98bCA0B6DF7441", + "314", + "340802" + ] + ] + ], + [ + "3450159", + [ + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "320", + "340802" + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + "102", + "340802" + ], + [ + "0xC1A9BC22CC31AB64A78421bEFa10c359A1417ce3", + "30000", + "340802" + ], + [ + "0xFc748762F301229bCeA219B584Fdf8423D8060A1", + "1678", + "340802" + ], + [ + "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e", + "60", + "340802" + ] + ] + ], + [ + "3452316", + [ + [ + "0x679B4172E1698579d562D1d8b4774968305b80b2", + "134", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "1571", + "340802" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "1936", + "340802" + ], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + "230", + "340802" + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + "157", + "340802" + ], + [ + "0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e", + "329", + "340802" + ], + [ + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F", + "3238", + "340802" + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + "52", + "340802" + ], + [ + "0xf6F46f437691b6C42cd92c91b1b7c251D6793222", + "376", + "340802" + ], + [ + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", + "956", + "340802" + ], + [ + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1", + "1000", + "340802" + ], + [ + "0x820A2943762236e27A3a2C6ea1024117518895a5", + "10000", + "340802" + ], + [ + "0xC83414aBB6655320232fAA65eA72663dfD7198eC", + "332", + "340802" + ], + [ + "0xe4BF6E1967D7bc0Bd5E2C767c3A2CCAdf23446df", + "13948", + "340802" + ], + [ + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", + "74", + "340802" + ], + [ + "0x8D7ee51Ec16a0F95C7f241582De8cffB9A4c2293", + "2997", + "340802" + ], + [ + "0xBB2E54038196A51f6a42A9BB5aD6BD0EB2CF6C01", + "148", + "340802" + ], + [ + "0x2c820271ADE646fDb3D6D0002712Ee6bdc7DC173", + "1195", + "340802" + ], + [ + "0xEC5a0Dff55be882FAFe863895ef144b78aaEF097", + "10000", + "340802" + ], + [ + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", + "1031", + "340802" + ], + [ + "0x17372637a937f7427871573a85e6FaC2400D147f", + "1500", + "340802" + ], + [ + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", + "105", + "340802" + ] + ] + ], + [ + "3452735", + [ + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "3555", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "16090", + "340802" + ], + [ + "0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1", + "1078", + "340802" + ], + [ + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", + "1", + "340802" + ], + [ + "0x264c1cBEC44F201d0eBe67b269D16B3edc909C61", + "124", + "340802" + ], + [ + "0x88F667664E61221160ddc0414868eF2f40e83324", + "2000", + "340802" + ], + [ + "0x4Ab209010345978254F1757a88cAc93CD19987a8", + "1", + "340802" + ], + [ + "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b", + "4999", + "340802" + ], + [ + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", + "27", + "340802" + ], + [ + "0x6817be388a855cFa0F236aDCeBb56d7dc1DBd0Cf", + "67", + "340802" + ], + [ + "0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25", + "44905", + "340802" + ], + [ + "0x85Eada0D605d905262687Ad74314bc95837dB4F9", + "2", + "340802" + ], + [ + "0xE8dFA9c13CaB87E38991961d51FA391aAbb8ca9c", + "1", + "340802" + ], + [ + "0x27291b970be79Eb325348752957F05c9739e1737", + "1", + "340802" + ], + [ + "0xb490aC9d599C2d4Fc24cC902ea4cd5af95EfF6e9", + "5110", + "340802" + ], + [ + "0xf96A5d6c20872a7DdCacdDE4e825249040250d66", + "1", + "340802" + ], + [ + "0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4", + "300", + "340802" + ], + [ + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", + "16329", + "340802" + ], + [ + "0x876133657F5356e376B7ae27d251444727cE9488", + "1010", + "340802" + ] + ] + ], + [ + "3452989", + [ + [ + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3", + "266", + "340802" + ], + [ + "0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3", + "341", + "340802" + ] + ] + ], + [ + "3455539", + [ + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "264", + "340802" + ], + [ + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", + "2858", + "340802" + ], + [ + "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F", + "1008", + "340802" + ] + ] + ], + [ + "3457989", + [ + [ + "0x394c357DB3177E33Bde63F259F0EB2c04A46827c", + "902", + "340802" + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + "114", + "340802" + ], + [ + "0xb871eE8C6b280463068627502c36b33CC79cc8d3", + "196", + "340802" + ], + [ + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", + "237", + "340802" + ], + [ + "0x48A2bC5DC9e3c5c0421E0483bF0648AaEE87daca", + "431", + "340802" + ], + [ + "0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677", + "114", + "340802" + ], + [ + "0x5f37479c76F16d94Afcc394b18Cf0727631d8F91", + "833", + "340802" + ], + [ + "0xDf406B91b4F27c942c4B42eB04fAC9323EEE8Aa1", + "75", + "340802" + ], + [ + "0x79bD65C17537daA78152E6018EC6dB63C6bE57F5", + "681", + "340802" + ], + [ + "0xcdea6A23B9383a88E246975aD3f38778ee0E81fc", + "2981", + "340802" + ] + ] + ], + [ + "3458512", + [ + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "301", + "340802" + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "11695", + "340802" + ], + [ + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584", + "628", + "340802" + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "30954", + "340802" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "309", + "340802" + ], + [ + "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", + "7000", + "340802" + ], + [ + "0xE84c01208c4868d5615FCCf0b98f8c90f460d2b6", + "285", + "340802" + ], + [ + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", + "3138", + "340802" + ], + [ + "0xFc748762F301229bCeA219B584Fdf8423D8060A1", + "250", + "340802" + ], + [ + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", + "2213", + "340802" + ], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "10055", + "340802" + ], + [ + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", + "1077", + "340802" + ], + [ + "0xfF961eD9c48FBEbDEf48542432D21efA546ddb89", + "2017", + "340802" + ], + [ + "0xDe975401d53178cdF36E1301Da633A8f82C33ceF", + "610", + "340802" + ], + [ + "0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781", + "114", + "340802" + ], + [ + "0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF", + "66", + "340802" + ], + [ + "0x4319fBf2c6B823e20EdAA4002F5eac872CcAd3BD", + "30000", + "340802" + ], + [ + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", + "457", + "340802" + ], + [ + "0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6", + "130", + "340802" + ], + [ + "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C", + "5000", + "340802" + ], + [ + "0xe6cF807E4B2A640DfE03ff06FA6Ab32C334c7dF4", + "2000", + "340802" + ], + [ + "0xA7194f754b5befC3277D6Bfa258028450dA654BA", + "500", + "340802" + ], + [ + "0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74", + "1982", + "340802" + ], + [ + "0x7e1CA6D381e2784Db210442bFC3e2B1451f773FD", + "200", + "340802" + ], + [ + "0xeE55F7F410487965aCDC4543DDcE241E299032A4", + "668", + "340802" + ], + [ + "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "542767", + "340802" + ] + ] + ], + [ + "3458531", + [ + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "251", + "340802" + ], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "1299", + "340802" + ], + [ + "0x46Fb59229922d98DCc95bB501EFC3b10FA83D938", + "726", + "340802" + ], + [ + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + "1000", + "340802" + ], + [ + "0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176", + "80", + "340802" + ], + [ + "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "56044", + "340802" + ] + ] + ], + [ + "3461694", + [ + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "664", + "340802" + ], + [ + "0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1", + "1187", + "340802" + ], + [ + "0x09C88F29A308646204D11383c6139d9C93eFb6b8", + "350", + "340802" + ], + [ + "0xE203096D7583E30888902b2608652c720D6C38da", + "83", + "340802" + ], + [ + "0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df", + "703", + "340802" + ] + ] + ], + [ + "3462428", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "526", + "340802" + ], + [ + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584", + "508", + "340802" + ], + [ + "0x08Bf22fB93892583a815C598502b9B0a88124DAD", + "2805", + "340802" + ], + [ + "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", + "439", + "340802" + ], + [ + "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D", + "118", + "340802" + ], + [ + "0x4Ab209010345978254F1757a88cAc93CD19987a8", + "1", + "340802" + ], + [ + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", + "1076", + "340802" + ], + [ + "0x5f37479c76F16d94Afcc394b18Cf0727631d8F91", + "2555", + "340802" + ], + [ + "0xdEb5b508847C9AB1295E83806855AbC3c9859B38", + "936", + "340802" + ], + [ + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", + "1276", + "340802" + ], + [ + "0xBAd4b03A764fb27Cdf65D23E2E59b76172526867", + "368", + "340802" + ], + [ + "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", + "899", + "340802" + ], + [ + "0x515755b2c5A209976CF0de869c30f45aC7495a60", + "310", + "340802" + ], + [ + "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5", + "3400", + "340802" + ], + [ + "0x41922873B405216bb5a7751c5289f9DF853D9a9E", + "355", + "340802" + ], + [ + "0x90030396F05AA263776c15e418a908Da4B018157", + "169", + "340802" + ] + ] + ], + [ + "3463060", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "2266", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "1883", + "340802" + ], + [ + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", + "1487", + "340802" + ], + [ + "0x1C4E440e9f9069427d11bB1bD73e57458eeA9577", + "1598", + "340802" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "3733", + "340802" + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + "152", + "340802" + ], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + "1026", + "340802" + ], + [ + "0x69b03bFC650B8174f5887B2320338b6c29150bCE", + "1000", + "340802" + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + "314", + "340802" + ], + [ + "0xf6F46f437691b6C42cd92c91b1b7c251D6793222", + "688", + "340802" + ], + [ + "0x820A2943762236e27A3a2C6ea1024117518895a5", + "3000", + "340802" + ], + [ + "0xC83414aBB6655320232fAA65eA72663dfD7198eC", + "10000", + "340802" + ], + [ + "0x17372637a937f7427871573a85e6FaC2400D147f", + "1500", + "340802" + ], + [ + "0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4", + "358", + "340802" + ], + [ + "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F", + "1019", + "340802" + ], + [ + "0x48A2bC5DC9e3c5c0421E0483bF0648AaEE87daca", + "527", + "340802" + ], + [ + "0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677", + "152", + "340802" + ], + [ + "0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF", + "1645", + "340802" + ], + [ + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + "970", + "340802" + ], + [ + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", + "4645", + "340802" + ], + [ + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", + "1001", + "340802" + ], + [ + "0x70Ce4bBa5076fa59E4fBDEe382663dF78402F2E0", + "3998", + "340802" + ], + [ + "0x525Fbe4bC0607933F4BE05cEB22F8a4b6B01800A", + "9853", + "340802" + ], + [ + "0x3c5a438a2c19D024a3E53c27d45FAfAC9A45B4f7", + "373", + "340802" + ], + [ + "0x3Df83869B8367602E762FC42Baae3E81aA1f2a20", + "500", + "340802" + ], + [ + "0xf3e9848D5accE2f83b8078ee21f458e59ec4289A", + "1021", + "340802" + ], + [ + "0x48A5A6a01bA89cDdF97D2D552923d5a11401Ed19", + "660", + "340802" + ], + [ + "0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4", + "16", + "340802" + ], + [ + "0xb8EEa697890dceFe14Be1c1C457Db0f436DCcF7a", + "105", + "340802" + ] + ] + ], + [ + "3465087", + [ + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "95", + "340802" + ], + [ + "0x3822bBBd588fE86964c7751d6c6a6Bd010927307", + "1537", + "340802" + ], + [ + "0x0017dFe08BCc0dc9a323ca5d4831E371534E9320", + "1463", + "340802" + ] + ] + ], + [ + "3465205", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "1728", + "340802" + ], + [ + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + "1828", + "340802" + ], + [ + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", + "463", + "340802" + ], + [ + "0xC89A6f24b352d35e783ae7C330462A3f44242E89", + "1216", + "340802" + ], + [ + "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", + "373", + "340802" + ], + [ + "0x264c1cBEC44F201d0eBe67b269D16B3edc909C61", + "633", + "340802" + ], + [ + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", + "160", + "340802" + ], + [ + "0x70Ce4bBa5076fa59E4fBDEe382663dF78402F2E0", + "3896", + "340802" + ], + [ + "0x69e02D001146A86d4E2995F9eCf906265aA77d85", + "5098", + "340802" + ], + [ + "0x5F074e4Afb3547407614BC55a103d76A4E05BA04", + "3488", + "340802" + ], + [ + "0x0519425dD15902466e7F7FA332F7b664c5c03503", + "8521", + "340802" + ], + [ + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04", + "996", + "340802" + ], + [ + "0x2E34723A04B9bb5938373DCFdD61410F43189246", + "101", + "340802" + ], + [ + "0x4626751B194018B6848797EA3eA40a9252eE86EE", + "286", + "340802" + ] + ] + ], + [ + "3466192", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "1431", + "340802" + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + "1997", + "340802" + ], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "3117", + "340802" + ], + [ + "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", + "100", + "340802" + ], + [ + "0xe90AFc1904E9A33499D8A708C01658A6d1899C6B", + "5136", + "340802" + ], + [ + "0x42005e1156ea20EA50E7845E8CaC975C49774df0", + "50", + "340802" + ], + [ + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04", + "199", + "340802" + ] + ] + ], + [ + "3467650", + [ + [ + "0x68e41BDD608fC5eE054615CF2D9d079f9e99c483", + "1002", + "340802" + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "1808", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "1854", + "340802" + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "1435", + "340802" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "3273", + "340802" + ], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + "290", + "340802" + ], + [ + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + "612", + "340802" + ], + [ + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3", + "546", + "340802" + ], + [ + "0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e", + "1554", + "340802" + ], + [ + "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D", + "202", + "340802" + ], + [ + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", + "424", + "340802" + ], + [ + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", + "654", + "340802" + ], + [ + "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C", + "5000", + "340802" + ], + [ + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", + "1989", + "340802" + ], + [ + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", + "999", + "340802" + ], + [ + "0x70Ce4bBa5076fa59E4fBDEe382663dF78402F2E0", + "3991", + "340802" + ], + [ + "0x0017dFe08BCc0dc9a323ca5d4831E371534E9320", + "3000", + "340802" + ], + [ + "0xf3e9848D5accE2f83b8078ee21f458e59ec4289A", + "5768", + "340802" + ], + [ + "0x41e2965406330A130e61B39d867c91fa86aA3bB8", + "2289", + "340802" + ], + [ + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", + "30000", + "340802" + ], + [ + "0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a", + "529", + "340802" + ], + [ + "0x6872A46F83af5Cc03A704B2fE250F0b371Caf7d0", + "1000", + "340802" + ], + [ + "0x25F69051858D6a8f9a6E54dAfb073e8eF3a94C1E", + "1764", + "340802" + ], + [ + "0xCCF00d42bdEA5Fff0b46DD18a5e23FC8ac85a4AA", + "30019", + "340802" + ], + [ + "0x4fCD42eb2557E49C0201Fb3283CfF62c1BaF0Fb4", + "500", + "340802" + ], + [ + "0x5338035c008EA8c4b850052bc8Dad6A33dc2206c", + "20000", + "340802" + ], + [ + "0xa3F90e801CBa1f94Eb6501146e4E0e791444E4d3", + "450", + "340802" + ], + [ + "0x5ab404ab63831bFcf824F53B4ac3737b9d155d90", + "1710", + "340802" + ] + ] + ], + [ + "3468402", + [ + [ + "0x030ae585DB6d5169B3594eC37c008662f2494a1D", + "1000", + "340802" + ], + [ + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", + "980", + "340802" + ], + [ + "0x55179ffEFc2d49daB14BA15D25fb023408450409", + "4626", + "340802" + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + "994", + "340802" + ], + [ + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", + "1567", + "340802" + ], + [ + "0x6817be388a855cFa0F236aDCeBb56d7dc1DBd0Cf", + "572", + "340802" + ], + [ + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04", + "37", + "340802" + ], + [ + "0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F", + "3152", + "340802" + ], + [ + "0xc1F80163cC753f460A190643d8FCbb7755a48409", + "1863", + "340802" + ], + [ + "0x5b9A2267a9e9B81FbF01ba10026fCB7B2F7304d3", + "126", + "340802" + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + "122281", + "340802" + ], + [ + "0x3C58492Ad9cAd0D9f8570a80b6A1f02C0C1dA2c5", + "564", + "340802" + ], + [ + "0xAb282590375f4ce7d3FfeD3A0D0e36cc5f9FF124", + "597", + "340802" + ], + [ + "0x6Afbf03Fe3Bea05640da67Ae9F0B136c783e315d", + "509", + "340802" + ], + [ + "0x60fC79EC08C5386f030912f056dCA91dAEC3A488", + "3", + "340802" + ], + [ + "0x4432e64624F4c64633466655de3D5132ad407343", + "10015", + "340802" + ], + [ + "0x8623b240830fD2c33B1b5C8449f98fd606de88A8", + "338", + "340802" + ] + ] + ], + [ + "3468691", + [ + [ + "0x7e1CA6D381e2784Db210442bFC3e2B1451f773FD", + "100", + "340802" + ] + ] + ], + [ + "3470075", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "890", + "340802" + ], + [ + "0x8D7ee51Ec16a0F95C7f241582De8cffB9A4c2293", + "298", + "340802" + ], + [ + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + "586", + "340802" + ], + [ + "0x69e02D001146A86d4E2995F9eCf906265aA77d85", + "2156", + "340802" + ], + [ + "0x9dC4D973F76c0051bba8900F8ffB4652110f1591", + "115", + "340802" + ], + [ + "0x734A6263fE23c1d68Ec9042e03082575C34c968C", + "3260", + "340802" + ], + [ + "0x6Cb50febbC4E796635963c1Ea9916099C69B4Bd9", + "153", + "340802" + ], + [ + "0x8eB354f1CBb0AB7ef0D038883b4c1065e008453F", + "500", + "340802" + ] + ] + ], + [ + "3470220", + [ + [ + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", + "443", + "340802" + ], + [ + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", + "1056", + "340802" + ], + [ + "0x394c357DB3177E33Bde63F259F0EB2c04A46827c", + "664", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "2090", + "340802" + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "2479", + "340802" + ], + [ + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", + "338", + "340802" + ], + [ + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", + "119", + "340802" + ], + [ + "0xFc748762F301229bCeA219B584Fdf8423D8060A1", + "940", + "340802" + ], + [ + "0xEC5a0Dff55be882FAFe863895ef144b78aaEF097", + "451", + "340802" + ], + [ + "0xb490aC9d599C2d4Fc24cC902ea4cd5af95EfF6e9", + "5000", + "340802" + ], + [ + "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F", + "122", + "340802" + ], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "5165", + "340802" + ], + [ + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + "1006", + "340802" + ], + [ + "0x66F6Ac1E4c4c8aE7D84231451126f613bFE61D98", + "1533", + "340802" + ], + [ + "0x4179FB53E818c228803cF30d88Bc0597189F141C", + "502", + "340802" + ], + [ + "0xc10535D71513ab2abDF192DFDAa2a3e94134b377", + "859", + "340802" + ], + [ + "0x241b2Fb0b7517c784Dd0c3e20a1f655985CFaa07", + "2959", + "340802" + ], + [ + "0x124904f20eb8cf3B43A64EE728D01337b1dDc2b1", + "109", + "340802" + ], + [ + "0xA5EA62076326e0Eb89C34a4991A5aa58745266FC", + "1", + "340802" + ], + [ + "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", + "136", + "340802" + ], + [ + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", + "740", + "340802" + ], + [ + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", + "429", + "340802" + ], + [ + "0x91443aF8B0B551Ba45208f03D32B22029969576c", + "1300", + "340802" + ], + [ + "0x69EE985456C52c85BA2035d8fD8bFe0A51f0E0D2", + "299", + "340802" + ], + [ + "0x94d29Be06f423738f96A5E67A2627B4876098Cdc", + "1006", + "340802" + ], + [ + "0xfB464Fcd5342D2997A43C6B7bcA7615d0fbDEeD9", + "1025", + "340802" + ], + [ + "0xF501c1084d8473399fa01c4F102FA72d0465192C", + "26830", + "340802" + ], + [ + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", + "433", + "340802" + ], + [ + "0xde40AaD5E8154C6F8C31D1e2043E4B1cB1745761", + "300", + "340802" + ], + [ + "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "291896", + "340802" + ] + ] + ], + [ + "3471339", + [ + [ + "0xBd120e919eb05343DbA68863f2f8468bd7010163", + "11619", + "340802" + ], + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "171", + "340802" + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "5543", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "1018", + "340802" + ], + [ + "0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e", + "693", + "340802" + ], + [ + "0x3Df83869B8367602E762FC42Baae3E81aA1f2a20", + "5000", + "340802" + ], + [ + "0x0519425dD15902466e7F7FA332F7b664c5c03503", + "741", + "340802" + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + "74632", + "340802" + ], + [ + "0xAf812E8BABab3173EdCE179fE6Fc6c2B1c482E39", + "215", + "340802" + ], + [ + "0xd43324eB6f31F86e361B48185797b339242f95f4", + "9450", + "340802" + ], + [ + "0xE45D85B382EFd7833Da1B8CAB53B203D22340b1a", + "415", + "340802" + ], + [ + "0x4Af7c12c7e210f4Cb8f2D8e340AaAdaE05A9f655", + "3000", + "340802" + ], + [ + "0xD6e91233068c81b0eB6aAc77620641F72d27a039", + "12068", + "340802" + ], + [ + "0x30CB1E845f6C03B988eC677A75700E70A019e2E4", + "3399", + "340802" + ], + [ + "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", + "997", + "340802" + ], + [ + "0xa5C9a58776682701Cfd014F68ED73D1895d9b372", + "635", + "340802" + ], + [ + "0x11D86e9F9C2a1cF597b974E50C660316c92215AA", + "599", + "340802" + ] + ] + ], + [ + "3471974", + [ + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "248", + "340802" + ], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + "209", + "340802" + ], + [ + "0x264c1cBEC44F201d0eBe67b269D16B3edc909C61", + "231", + "340802" + ], + [ + "0x27291b970be79Eb325348752957F05c9739e1737", + "3499", + "340802" + ], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "1134", + "340802" + ], + [ + "0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781", + "62", + "340802" + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + "116119", + "340802" + ], + [ + "0x734A6263fE23c1d68Ec9042e03082575C34c968C", + "6540", + "340802" + ], + [ + "0x6Cb50febbC4E796635963c1Ea9916099C69B4Bd9", + "173", + "340802" + ], + [ + "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", + "471", + "340802" + ], + [ + "0xAf812E8BABab3173EdCE179fE6Fc6c2B1c482E39", + "22186", + "340802" + ], + [ + "0xd43324eB6f31F86e361B48185797b339242f95f4", + "1000", + "340802" + ], + [ + "0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9", + "2912", + "340802" + ], + [ + "0x330BAb385492b88CE5BBa93b581ed808b00e6189", + "1000", + "340802" + ], + [ + "0x66B0115e839B954A6f6d8371DEe89dE90111C232", + "1326", + "340802" + ], + [ + "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427", + "69", + "340802" + ], + [ + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", + "256", + "340802" + ], + [ + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", + "165", + "340802" + ], + [ + "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", + "3990", + "340802" + ], + [ + "0xf9563a8DaB33f6BEab2aBC34631c4eAF9EcC8b99", + "991", + "340802" + ], + [ + "0x7D6A2f6D7C2F7Dd51C47b5EA9faA3ae208185eC7", + "14328", + "340802" + ], + [ + "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E", + "10", + "340802" + ] + ] + ], + [ + "3472026", + [ + [ + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6", + "1508", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "522", + "340802" + ], + [ + "0x58e4e9D30Da309624c785069A99709b16276B196", + "1000", + "340802" + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + "244", + "340802" + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + "91", + "340802" + ], + [ + "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D", + "329", + "340802" + ], + [ + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", + "416", + "340802" + ], + [ + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", + "1990", + "340802" + ], + [ + "0xdEb5b508847C9AB1295E83806855AbC3c9859B38", + "1194", + "340802" + ], + [ + "0x515755b2c5A209976CF0de869c30f45aC7495a60", + "10000", + "340802" + ], + [ + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", + "1420", + "340802" + ], + [ + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", + "1000", + "340802" + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + "86954", + "340802" + ], + [ + "0xd43324eB6f31F86e361B48185797b339242f95f4", + "24000", + "340802" + ], + [ + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", + "1000", + "340802" + ], + [ + "0x404a75f728D7e89197C61c284d782EC246425aa6", + "1491", + "340802" + ], + [ + "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", + "854", + "340802" + ], + [ + "0xe63E2CDd24695464C015b2f5ef723Ce17e96886B", + "1200", + "340802" + ], + [ + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", + "708", + "340802" + ], + [ + "0xE91F37f702032dd81142f009f273C132AB8AAe1D", + "20000", + "340802" + ], + [ + "0xE3b2fC5a80B80C8F668484171D7395e3fDE76670", + "2671", + "340802" + ], + [ + "0x2d96dAA63b1719DA208a72264e15b32ff818e79F", + "1", + "340802" + ], + [ + "0x4bCbB32e470627AB0D767AC56bBCB2c33c181BCE", + "800", + "340802" + ], + [ + "0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E", + "5100", + "340802" + ], + [ + "0x31DEae0DDc9f0D0207D13fc56927f067F493d324", + "17178", + "340802" + ], + [ + "0xC3253E06fA7A2e4a3cd26cb561af4af83466902d", + "10000", + "340802" + ], + [ + "0xaF7ED02dE4B8A8967b996DF3b8bf28917B92EDcd", + "300", + "340802" + ], + [ + "0x7e7408fdD6315e965138509d9310b384C4FD1163", + "10000", + "340802" + ] + ] + ], + [ + "3472520", + [ + [ + "0xE84c01208c4868d5615FCCf0b98f8c90f460d2b6", + "2500", + "340802" + ], + [ + "0x8D7ee51Ec16a0F95C7f241582De8cffB9A4c2293", + "1000", + "340802" + ], + [ + "0x4319fBf2c6B823e20EdAA4002F5eac872CcAd3BD", + "10000", + "340802" + ], + [ + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", + "1717", + "340802" + ], + [ + "0x4b10DA491b54ffe167Ec5AAf7046804fADA027d2", + "171", + "340802" + ] + ] + ], + [ + "3476597", + [ + [ + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + "857", + "340802" + ], + [ + "0xE3b2fC5a80B80C8F668484171D7395e3fDE76670", + "10020", + "340802" + ], + [ + "0xA5F158e596D0e4051e70631D5d72a8Ee9d5A3B8A", + "2500", + "340802" + ], + [ + "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", + "686", + "340802" + ], + [ + "0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB", + "1544", + "340802" + ], + [ + "0x9241089cf848cB30c6020EE25Cd6a2b28c626744", + "146", + "340802" + ] + ] + ], + [ + "3480951", + [ + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "3185", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "1198", + "340802" + ] + ] + ], + [ + "3485472", + [ + [ + "0x44E836EbFEF431e57442037b819B23fd29bc3B69", + "500", + "340802" + ], + [ + "0xE84c01208c4868d5615FCCf0b98f8c90f460d2b6", + "5000", + "340802" + ], + [ + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0", + "5127", + "340802" + ], + [ + "0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176", + "34", + "340802" + ], + [ + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", + "342", + "340802" + ] + ] + ], + [ + "3490157", + [ + [ + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", + "1000", + "340802" + ], + [ + "0x820A2943762236e27A3a2C6ea1024117518895a5", + "1123", + "340802" + ], + [ + "0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78", + "28651", + "340802" + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + "386", + "340802" + ] + ] + ], + [ + "3495000", + [ + [ + "0x4Ab209010345978254F1757a88cAc93CD19987a8", + "2", + "340802" + ], + [ + "0x94d29Be06f423738f96A5E67A2627B4876098Cdc", + "1024", + "340802" + ], + [ + "0x4088E870e785320413288C605FD1BD6bD9D5BDAe", + "964", + "340802" + ], + [ + "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", + "500", + "340802" + ], + [ + "0xaD63E4d4Be2229B080d20311c1402A2e45Cf7E75", + "508", + "340802" + ], + [ + "0xE2bDaE527f99a68724B9D5C271438437FC2A4695", + "33", + "340802" + ], + [ + "0x7Ac54882c1A9df477d583aDd40D1a47480F8a919", + "1", + "340802" + ] + ] + ], + [ + "3500000", + [ + [ + "0x88F667664E61221160ddc0414868eF2f40e83324", + "1000", + "340802" + ], + [ + "0xBB2E54038196A51f6a42A9BB5aD6BD0EB2CF6C01", + "2237", + "340802" + ], + [ + "0x3c5a438a2c19D024a3E53c27d45FAfAC9A45B4f7", + "2490", + "340802" + ], + [ + "0x6872A46F83af5Cc03A704B2fE250F0b371Caf7d0", + "100", + "340802" + ], + [ + "0x9dC4D973F76c0051bba8900F8ffB4652110f1591", + "935", + "340802" + ], + [ + "0x91443aF8B0B551Ba45208f03D32B22029969576c", + "1714", + "340802" + ], + [ + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", + "1493", + "340802" + ], + [ + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", + "633", + "340802" + ], + [ + "0xd44dfDFDE075184e0f216C860e65913579F103Aa", + "100", + "340802" + ], + [ + "0x58737A9B0A8A5c8a2559C457fCC9e923F9d99FB7", + "2000", + "340802" + ], + [ + "0xbE2075Ac5B3d3E92293C0E3f3EA3f503f8C0354d", + "165", + "340802" + ], + [ + "0xAa4f23a13f25E88bA710243dD59305f382376252", + "335", + "340802" + ], + [ + "0x8110331DBad6e7907F60B8BBb0E1A3af3dDb4BBd", + "250", + "340802" + ], + [ + "0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0", + "85", + "340802" + ], + [ + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", + "500", + "340802" + ], + [ + "0x31b6020CeF40b72D1e53562229c1F9200d00CC12", + "1920", + "340802" + ], + [ + "0xa1a234791392c42bD0c95e37e6908AE704D595BD", + "667", + "340802" + ], + [ + "0x74E096E78789F31061Fc47F6950279A55C03288c", + "223", + "340802" + ], + [ + "0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B", + "249", + "340802" + ], + [ + "0xd7bF571d4F19F63e3091Ca37E13ED395ca8e9969", + "995", + "340802" + ], + [ + "0x97A5370695c5A64004359f43889F398fb4D07fb1", + "939", + "340802" + ], + [ + "0xE9B05bC1FA8684EE3e01460aac2e64C678b9dA5d", + "1655", + "340802" + ], + [ + "0x5292cF4e13F7Ed082Ec2996F8F8a549a05b2E6af", + "150", + "340802" + ], + [ + "0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3", + "1015", + "340802" + ], + [ + "0x74F9fadb40Bee2574BCDd7C1eD73270373Af0D21", + "180", + "340802" + ], + [ + "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", + "1851", + "340802" + ], + [ + "0x184CbD89E91039E6B1EF94753B3fD41c55e40888", + "4961", + "340802" + ], + [ + "0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8", + "1000", + "340802" + ], + [ + "0xDD11460317C683e4057E115eB14e1C9F7Ca41E12", + "1000", + "340802" + ], + [ + "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", + "40000", + "340802" + ] + ] + ], + [ + "6000000", + [ + [ + "0xBd120e919eb05343DbA68863f2f8468bd7010163", + "99988", + "340802" + ], + [ + "0x3fc4310bf2eBae51BaC956dd60A81803A3f89188", + "948", + "340802" + ], + [ + "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", + "533", + "340802" + ], + [ + "0xCF0dCc80F6e15604E258138cca455A040ecb4605", + "108", + "340802" + ], + [ + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", + "19732", + "340802" + ], + [ + "0x68e41BDD608fC5eE054615CF2D9d079f9e99c483", + "9982", + "340802" + ], + [ + "0x6343B307C288432BB9AD9003B4230B08B56b3b82", + "2168", + "340802" + ], + [ + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", + "7240", + "340802" + ], + [ + "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", + "125", + "340802" + ], + [ + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", + "641", + "340802" + ], + [ + "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", + "793", + "340802" + ], + [ + "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", + "127", + "340802" + ], + [ + "0x5a57711B103c6039eaddC160B94c932d499c6736", + "391", + "340802" + ], + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "5224", + "340802" + ], + [ + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", + "10000", + "340802" + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "200000", + "340802" + ], + [ + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", + "4124", + "340802" + ], + [ + "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", + "4735", + "340802" + ], + [ + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + "22547", + "340802" + ], + [ + "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", + "20059", + "340802" + ], + [ + "0x679B4172E1698579d562D1d8b4774968305b80b2", + "2017", + "340802" + ], + [ + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", + "5450", + "340802" + ], + [ + "0xDf29Ee8F6D1b407808Eb0270f5b128DC28303684", + "1250", + "340802" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "27888", + "340802" + ], + [ + "0x5656cB4721C21E1F5DCbe03Db9026ac0203d6e4f", + "2000", + "340802" + ], + [ + "0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd", + "10053", + "340802" + ], + [ + "0xb78003FCB54444E289969154A27Ca3106B3f41f6", + "1295", + "340802" + ], + [ + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584", + "7945", + "340802" + ], + [ + "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF", + "1006", + "340802" + ], + [ + "0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1", + "166667", + "340802" + ], + [ + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", + "17500", + "340802" + ], + [ + "0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb", + "111000", + "340802" + ], + [ + "0x3C43674dfa916d791614827a50353fe65227B7f3", + "14760", + "340802" + ], + [ + "0xC89A6f24b352d35e783ae7C330462A3f44242E89", + "19458", + "340802" + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "206", + "340802" + ], + [ + "0x08Bf22fB93892583a815C598502b9B0a88124DAD", + "27859", + "340802" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "18000", + "340802" + ], + [ + "0x51AAD11e5A5Bd05B3409358853D0D6A66aa60c40", + "10", + "340802" + ], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + "5973", + "340802" + ], + [ + "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", + "1988", + "340802" + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + "6378", + "340802" + ], + [ + "0xD6ff57479699e3F93fFd68295F3257f7C07E983e", + "25327", + "340802" + ], + [ + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + "3000", + "340802" + ], + [ + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3", + "5000", + "340802" + ], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + "10003", + "340802" + ], + [ + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", + "1077", + "340802" + ], + [ + "0x264c1cBEC44F201d0eBe67b269D16B3edc909C61", + "9207", + "340802" + ], + [ + "0x85806019a442224D6345a1c2eD597d8a5DCE1F2B", + "1000", + "340802" + ], + [ + "0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e", + "25000", + "340802" + ], + [ + "0x55179ffEFc2d49daB14BA15D25fb023408450409", + "116323", + "340802" + ], + [ + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F", + "9492", + "340802" + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + "4122", + "340802" + ], + [ + "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D", + "2009", + "340802" + ], + [ + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", + "5000", + "340802" + ], + [ + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", + "1999", + "340802" + ], + [ + "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", + "1101", + "340802" + ], + [ + "0xc6302894cd030601D5E1F65c8F504C83D5361279", + "5000", + "340802" + ], + [ + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0", + "6872", + "340802" + ], + [ + "0x4Ab209010345978254F1757a88cAc93CD19987a8", + "1033", + "340802" + ], + [ + "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d", + "60200", + "340802" + ], + [ + "0xFc748762F301229bCeA219B584Fdf8423D8060A1", + "2017", + "340802" + ], + [ + "0xF869B8e5a54e7D93D98fc7C5c9D48fe972C330CA", + "1335", + "340802" + ], + [ + "0x5ea7ea516720a8F59C9d245E2E98bCA0B6DF7441", + "6294", + "340802" + ], + [ + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", + "14380", + "340802" + ], + [ + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1", + "5000", + "340802" + ], + [ + "0x820A2943762236e27A3a2C6ea1024117518895a5", + "18334", + "340802" + ], + [ + "0xC83414aBB6655320232fAA65eA72663dfD7198eC", + "5000", + "340802" + ], + [ + "0xe4BF6E1967D7bc0Bd5E2C767c3A2CCAdf23446df", + "1000", + "340802" + ], + [ + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", + "1113", + "340802" + ], + [ + "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b", + "6253", + "340802" + ], + [ + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", + "2007", + "340802" + ], + [ + "0x6817be388a855cFa0F236aDCeBb56d7dc1DBd0Cf", + "4999", + "340802" + ], + [ + "0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25", + "146816", + "340802" + ], + [ + "0x85Eada0D605d905262687Ad74314bc95837dB4F9", + "2753", + "340802" + ], + [ + "0xE8dFA9c13CaB87E38991961d51FA391aAbb8ca9c", + "1", + "340802" + ], + [ + "0x27291b970be79Eb325348752957F05c9739e1737", + "1", + "340802" + ], + [ + "0xb490aC9d599C2d4Fc24cC902ea4cd5af95EfF6e9", + "20", + "340802" + ], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "143210", + "340802" + ], + [ + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", + "23892", + "340802" + ], + [ + "0xfF961eD9c48FBEbDEf48542432D21efA546ddb89", + "12145", + "340802" + ], + [ + "0xDe975401d53178cdF36E1301Da633A8f82C33ceF", + "1001", + "340802" + ], + [ + "0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781", + "1432", + "340802" + ], + [ + "0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF", + "1000", + "340802" + ], + [ + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", + "5788", + "340802" + ], + [ + "0x46Fb59229922d98DCc95bB501EFC3b10FA83D938", + "80109", + "340802" + ], + [ + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + "3831", + "340802" + ], + [ + "0xE203096D7583E30888902b2608652c720D6C38da", + "462", + "340802" + ], + [ + "0xdEb5b508847C9AB1295E83806855AbC3c9859B38", + "15000", + "340802" + ], + [ + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", + "10000", + "340802" + ], + [ + "0xBAd4b03A764fb27Cdf65D23E2E59b76172526867", + "2887", + "340802" + ], + [ + "0x515755b2c5A209976CF0de869c30f45aC7495a60", + "10000", + "340802" + ], + [ + "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5", + "6561", + "340802" + ], + [ + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", + "10463", + "340802" + ], + [ + "0x41922873B405216bb5a7751c5289f9DF853D9a9E", + "2772", + "340802" + ], + [ + "0x69e02D001146A86d4E2995F9eCf906265aA77d85", + "55000", + "340802" + ], + [ + "0x5F074e4Afb3547407614BC55a103d76A4E05BA04", + "37645", + "340802" + ], + [ + "0x0519425dD15902466e7F7FA332F7b664c5c03503", + "4848", + "340802" + ], + [ + "0x41e2965406330A130e61B39d867c91fa86aA3bB8", + "528", + "340802" + ], + [ + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", + "33334", + "340802" + ], + [ + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04", + "212", + "340802" + ], + [ + "0x4626751B194018B6848797EA3eA40a9252eE86EE", + "3100", + "340802" + ], + [ + "0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F", + "25000", + "340802" + ], + [ + "0xc1F80163cC753f460A190643d8FCbb7755a48409", + "14783", + "340802" + ], + [ + "0x5b9A2267a9e9B81FbF01ba10026fCB7B2F7304d3", + "1000", + "340802" + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + "15336", + "340802" + ], + [ + "0x3C58492Ad9cAd0D9f8570a80b6A1f02C0C1dA2c5", + "3500", + "340802" + ], + [ + "0xAb282590375f4ce7d3FfeD3A0D0e36cc5f9FF124", + "5095", + "340802" + ], + [ + "0x66F6Ac1E4c4c8aE7D84231451126f613bFE61D98", + "14135", + "340802" + ], + [ + "0x4179FB53E818c228803cF30d88Bc0597189F141C", + "5005", + "340802" + ], + [ + "0xc10535D71513ab2abDF192DFDAa2a3e94134b377", + "10000", + "340802" + ], + [ + "0x241b2Fb0b7517c784Dd0c3e20a1f655985CFaa07", + "2469", + "340802" + ], + [ + "0x124904f20eb8cf3B43A64EE728D01337b1dDc2b1", + "1006", + "340802" + ], + [ + "0xA5EA62076326e0Eb89C34a4991A5aa58745266FC", + "2", + "340802" + ], + [ + "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", + "1", + "340802" + ], + [ + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", + "6820", + "340802" + ], + [ + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", + "4002", + "340802" + ], + [ + "0xD6e91233068c81b0eB6aAc77620641F72d27a039", + "100000", + "340802" + ], + [ + "0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9", + "20013", + "340802" + ], + [ + "0x330BAb385492b88CE5BBa93b581ed808b00e6189", + "1000", + "340802" + ], + [ + "0x66B0115e839B954A6f6d8371DEe89dE90111C232", + "1410", + "340802" + ], + [ + "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427", + "619", + "340802" + ], + [ + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", + "526", + "340802" + ], + [ + "0x404a75f728D7e89197C61c284d782EC246425aa6", + "12784", + "340802" + ], + [ + "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", + "7662", + "340802" + ], + [ + "0xe63E2CDd24695464C015b2f5ef723Ce17e96886B", + "1690", + "340802" + ], + [ + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", + "1404", + "340802" + ], + [ + "0x2d96dAA63b1719DA208a72264e15b32ff818e79F", + "1", + "340802" + ], + [ + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", + "425", + "340802" + ], + [ + "0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78", + "16666", + "340802" + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + "1000", + "340802" + ], + [ + "0xE2bDaE527f99a68724B9D5C271438437FC2A4695", + "16312", + "340802" + ], + [ + "0xd44dfDFDE075184e0f216C860e65913579F103Aa", + "300", + "340802" + ], + [ + "0x58737A9B0A8A5c8a2559C457fCC9e923F9d99FB7", + "1000", + "340802" + ], + [ + "0x8110331DBad6e7907F60B8BBb0E1A3af3dDb4BBd", + "1243", + "340802" + ], + [ + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", + "500", + "340802" + ], + [ + "0x74E096E78789F31061Fc47F6950279A55C03288c", + "192", + "340802" + ], + [ + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", + "788138", + "340802" + ], + [ + "0xB84e1E86eB2420887b10301cdCDFB729C4B9038b", + "16666", + "340802" + ], + [ + "0xC95186f04B68cfec0D9F585D08C3b5697C858fe0", + "100000", + "340802" + ], + [ + "0x02009370Ff755704E9acbD96042C1ab832D6067e", + "95000", + "340802" + ], + [ + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", + "100000", + "340802" + ], + [ + "0xB81D739df194fA589e244C7FF5a15E5C04978D0D", + "13437", + "340802" + ], + [ + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", + "83334", + "340802" + ], + [ + "0xC725c98A214a3b79C0454Ef2151c73b248ce329c", + "15090", + "340802" + ], + [ + "0xf060A025DDf6407f79F2fa0601666f61502a54A6", + "110000", + "340802" + ], + [ + "0xc207Ceb0709E1D2B6Ff32E17989d4a4D87C91F37", + "150000", + "340802" + ], + [ + "0xa734439d26Ce4dBf43ED7eb364Ec409D949bB369", + "29998", + "340802" + ], + [ + "0xD0988045f54BAf8466a2EA9f097b22eEca8F7A00", + "20000", + "340802" + ], + [ + "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43", + "12184", + "340802" + ], + [ + "0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee", + "26843", + "340802" + ], + [ + "0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0", + "15002", + "340802" + ], + [ + "0xD441C97eF1458d847271f91714799007081494eF", + "13635", + "340802" + ], + [ + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", + "49517", + "340802" + ], + [ + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", + "101975", + "340802" + ], + [ + "0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657", + "99781", + "340802" + ], + [ + "0x7C27A1F60B5229340bc57449Cfb91Ca496C3c1c1", + "15048", + "340802" + ], + [ + "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", + "84990", + "340802" + ], + [ + "0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E", + "12544", + "340802" + ], + [ + "0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22", + "60319", + "340802" + ], + [ + "0xD189b1d9402631770B19bdb25b5d5702f15830a8", + "49900", + "340802" + ], + [ + "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf", + "13245", + "340802" + ], + [ + "0xCDbe0c24C858a75eADC38eb9a8DDAEE7f1598f71", + "100000", + "340802" + ], + [ + "0xa2321c2a5fAa8336b09519FB8fA5a19077da7794", + "50000", + "340802" + ], + [ + "0x4A5867445A1Fa5F394268A521720D1d4E5609413", + "50000", + "340802" + ], + [ + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", + "15000", + "340802" + ], + [ + "0x37A6156e4a6E8B60b2415AF040546cF5e91699bd", + "11570", + "340802" + ], + [ + "0x4bD60086997F3896332B612eC36d30A6Ad57928E", + "12000", + "340802" + ], + [ + "0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF", + "40000", + "340802" + ], + [ + "0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb", + "50641", + "340802" + ], + [ + "0x20798Fd64a342d1EE640348E42C14181fDC842d8", + "16667", + "340802" + ], + [ + "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", + "20000", + "340802" + ], + [ + "0xb009714a5A4963d40Ac0625dB643E3EB6e755C25", + "74996", + "340802" + ], + [ + "0x89979246e8764D8DCB794fC45F826437fDeC23b2", + "17593", + "340802" + ], + [ + "0x0933F554312C7bcB86dF896c46A44AC2381383D1", + "16842", + "340802" + ], + [ + "0x028afa72DADB6311107c382cF87504F37F11D482", + "19691", + "340802" + ], + [ + "0x9c695f16975b57f730727F30f399d110cFc71f10", + "71969", + "340802" + ], + [ + "0x8C35933C469406C8899882f5C2119649cD5B617f", + "29113", + "340802" + ], + [ + "0xAE0ff6098365140e3030e8360CCD8C0B0462286C", + "30005", + "340802" + ], + [ + "0x997563ba8058E80f1E4dd5b7f695b5C2B065408e", + "33338", + "340802" + ], + [ + "0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59", + "30000", + "340802" + ], + [ + "0x5d48f06eDE8715E7bD69414B97F97fF0706D6c71", + "20000", + "340802" + ], + [ + "0xa87b23dB84e79a52CE4790E4b4aBE568a0102643", + "30448", + "340802" + ], + [ + "0xF35e261393F9705e10B378C6785582B2a5A71094", + "36143", + "340802" + ], + [ + "0xd0C5A91800f504E5517dcD1173F271635d2e8000", + "26356", + "340802" + ], + [ + "0x2ADC4D8e3d2df0B37611130bc9eD82cDfa3e2762", + "48635", + "340802" + ], + [ + "0x027be82BF7895db5fc1Fea5696117e875BbCc0dE", + "20250", + "340802" + ], + [ + "0x2894457502751d0F92ed1e740e2c8935F879E8AE", + "50000", + "340802" + ], + [ + "0x7D51910845011B41Cc32806644dA478FEfF2f11F", + "50000", + "340802" + ], + [ + "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b", + "46089", + "340802" + ], + [ + "0x1C0f042aE8dfFBac8113E3036d770339aB491a85", + "25000", + "340802" + ], + [ + "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8", + "10037", + "340802" + ], + [ + "0x12Ed7C9007Cf0CB79b37E33D0244aD90c2a65C0B", + "11257", + "340802" + ], + [ + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", + "50000", + "340802" + ], + [ + "0x8D06Ffb1500343975571cC0240152C413d803778", + "50000", + "340802" + ], + [ + "0x1d264de8264a506Ed0E88E5E092131915913Ed17", + "10015", + "340802" + ], + [ + "0xB04fa1FB54a7317efe85a0962F57bD143867730E", + "25000", + "340802" + ], + [ + "0x3af2098d4e068E5aa19d2102ef263d75867549Ef", + "22866", + "340802" + ], + [ + "0x80077CB3B35A6c30DC354469f63e0743eeff32D4", + "26030", + "340802" + ], + [ + "0x855a53E5f64C50bf8A5f3d18B485Bf43A5045e6A", + "10000", + "340802" + ], + [ + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", + "74253", + "340802" + ], + [ + "0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4", + "10000", + "340802" + ], + [ + "0x122de1514670141D4c22e5675010B6D65386a9F6", + "10219", + "340802" + ], + [ + "0x66801CC7Ab6791afb179CC94cBbd268CFBfcBc7b", + "10239", + "340802" + ], + [ + "0xABC508DdA7517F195e416d77C822A4861961947a", + "8806", + "340802" + ], + [ + "0x0bf7Fb51211b4842bAd8E831ba2F42fcB836C7e1", + "7906", + "340802" + ], + [ + "0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3", + "7977", + "340802" + ], + [ + "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", + "10000", + "340802" + ], + [ + "0xaaB247F5b39012081a487470AfFb4288e8445418", + "10753", + "340802" + ], + [ + "0x334f12F269213371fb59b328BB6e182C875e04B2", + "5002", + "340802" + ], + [ + "0xB1fe6937a51870ea66B863BE76d668Fc98694f25", + "9593", + "340802" + ], + [ + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", + "10000", + "340802" + ], + [ + "0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8", + "10000", + "340802" + ], + [ + "0xFB3E532Bef028cCa0aa5a2276AAeF32D7e0b3d1B", + "5000", + "340802" + ], + [ + "0x30142a0E5597f3203792CD00817638158163d21F", + "8000", + "340802" + ], + [ + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", + "10000", + "340802" + ], + [ + "0x9b04EA8897DfA0a817403ACACcDb24df019c7085", + "5000", + "340802" + ], + [ + "0x91e795eB6a2307eDe1A0eeDe84e6F0914f60a9C3", + "8000", + "340802" + ], + [ + "0x1fC84Da8c1DFD00a7F6D0970ed779cEc0BBf9CA4", + "5000", + "340802" + ], + [ + "0x5270B883D12e6402a20675467e84364A2Eb542bF", + "10000", + "340802" + ], + [ + "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", + "5068", + "340802" + ], + [ + "0xCc81ec04591f56a730E429795729D3bD6C21D877", + "5000", + "340802" + ], + [ + "0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25", + "44151", + "340802" + ], + [ + "0x23807719299c9bA3C6d60d4097146259c7A16da3", + "5000", + "340802" + ], + [ + "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D", + "9929", + "340802" + ], + [ + "0xF05980BF83005362fdcBCB8F7A453fE40B669D96", + "5116", + "340802" + ], + [ + "0x3EE2E1B07b76B09b12578cE7f26ab4Bc739770E7", + "5000", + "340802" + ], + [ + "0xc493AA1EA56dfe12E3DC665c46E1425BC3ee426F", + "8726", + "340802" + ], + [ + "0x270252c5FAd90804CE9288F2C643d26EfA568cFC", + "10000", + "340802" + ], + [ + "0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C", + "7812", + "340802" + ], + [ + "0x1bFb00d16514560bb95d4312FDD39553395077aF", + "5085", + "340802" + ], + [ + "0x8d0B5a21a4D6B00B39d0fc9D49d0459af18a77eD", + "5099", + "340802" + ], + [ + "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", + "5015", + "340802" + ], + [ + "0x70a9c497536E98F2DbB7C66911700fe2b2550900", + "4221", + "340802" + ], + [ + "0x5767795b4eFbF06A40cb36181ac08f47CDB0fcEc", + "4967", + "340802" + ], + [ + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", + "5364", + "340802" + ], + [ + "0x6E93e171C5223493Ad5434ac406140E89BD606De", + "4057", + "340802" + ], + [ + "0x82F402847051BDdAAb0f5D4b481417281837c424", + "4427", + "340802" + ], + [ + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", + "7500", + "340802" + ], + [ + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", + "4000", + "340802" + ], + [ + "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", + "5068", + "340802" + ], + [ + "0xd53Adf794E2915b4F414BE1AB2282cA8DA56dCfD", + "4679", + "340802" + ], + [ + "0x7004051A1baF0A89A568A8FA68DAd7e5B9790063", + "5000", + "340802" + ], + [ + "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", + "2065", + "340802" + ], + [ + "0xA256Aa181aF9046995aF92506498E31E620C747a", + "4000", + "340802" + ], + [ + "0x4b1b04693a00F74B028215503eE97cC606f4ED66", + "4074", + "340802" + ], + [ + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", + "3783", + "340802" + ], + [ + "0xdb4f969Eb7904A6ddf5528AE8d0E85F857991CFd", + "5000", + "340802" + ], + [ + "0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6", + "3723", + "340802" + ], + [ + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", + "2064", + "340802" + ], + [ + "0x3DB6401fe220E686D535BCd88BF8B2E8b8c55482", + "3886", + "340802" + ], + [ + "0xC8D71db19694312177B99fB5d15a1d295b22671A", + "5000", + "340802" + ], + [ + "0x41BF3C5167494cbCa4C08122237C1620A78267Ab", + "2008", + "340802" + ], + [ + "0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e", + "4161", + "340802" + ], + [ + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", + "1855", + "340802" + ], + [ + "0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57", + "3368", + "340802" + ], + [ + "0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8", + "3716", + "340802" + ], + [ + "0x73C91af57C657DfD05a31DAcA7Bff1aEb5754629", + "6001", + "340802" + ], + [ + "0x19dfdc194Bb5CF599af78B1967dbb3783c590720", + "5000", + "340802" + ], + [ + "0x3D63719699585FD0bb308174d3f0aD8082d8c5A2", + "3465", + "340802" + ], + [ + "0xf679A24BBF27c79dB5148a4908488fA01ed51625", + "1700", + "340802" + ], + [ + "0x1348EA8E35236AA0769b91ae291e7291117bf15C", + "4083", + "340802" + ], + [ + "0x8E32736429d2F0a39179214C826DeeF5B8A37861", + "2000", + "340802" + ], + [ + "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", + "3000", + "340802" + ], + [ + "0xC940a80B7ceeaF00798B9178E63210ffCd23Ba9b", + "4000", + "340802" + ], + [ + "0x1df00f89bf7FdcdA1701A6787661A8962Cd49ef0", + "6667", + "340802" + ], + [ + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", + "3000", + "340802" + ], + [ + "0x28570D9d66627e0733dFE4FCa79B8fD5b8128636", + "2001", + "340802" + ], + [ + "0x617e336ff734097AdddF9Fc9aF09a5A7690FA091", + "3021", + "340802" + ], + [ + "0x88cE2D4fB3cC542F0989d61A1c152fa137486d81", + "5000", + "340802" + ], + [ + "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", + "2000", + "340802" + ], + [ + "0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7", + "1876", + "340802" + ], + [ + "0xcbd7712D9335a7A38f35b38D5dC9B5970f04e8FD", + "2351", + "340802" + ], + [ + "0x5ED2Cf60A0C6EE2e3A9c9d07195AC183c09A3D9e", + "4731", + "340802" + ], + [ + "0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5", + "3000", + "340802" + ], + [ + "0xD9463BE909eBB97964d3E95E94331063707fc059", + "1848", + "340802" + ], + [ + "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", + "1911", + "340802" + ], + [ + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", + "3705", + "340802" + ], + [ + "0x34a649fde43cE36882091A010aAe2805A9FcFf0d", + "6499", + "340802" + ], + [ + "0x629f61F97A29bd18de69B03ff71b2FA699c49f96", + "1877", + "340802" + ], + [ + "0x30709180d8747E5BC0bD6E1BFf51baEdAB31328D", + "3145", + "340802" + ], + [ + "0x2A23D58Ea4b5cC2e01ef53ea5dE51447C2528F16", + "3358", + "340802" + ], + [ + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", + "3708", + "340802" + ], + [ + "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB", + "3002", + "340802" + ], + [ + "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef", + "1852", + "340802" + ], + [ + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", + "1852", + "340802" + ], + [ + "0xf286E07ED6889658A3285C05C4f736963cF41456", + "3000", + "340802" + ], + [ + "0x752862DE6AE311B825e8589F78a400EB7251e995", + "2500", + "340802" + ], + [ + "0x33B86fBC1Cc1F469d86655B3e0648fBB41010da0", + "2500", + "340802" + ], + [ + "0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b", + "3050", + "340802" + ], + [ + "0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56", + "2260", + "340802" + ], + [ + "0xe066684F0fF25A746aa51d63BA676bFc1D38442D", + "2418", + "340802" + ], + [ + "0x99e8845841BDe89e148663A6420a98C47e15EbCe", + "2500", + "340802" + ], + [ + "0x02491D37984764d39b99e4077649dcD349221a62", + "3000", + "340802" + ], + [ + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", + "2540", + "340802" + ], + [ + "0x3376Bde856bf6ec5dc7b9796895C788d53605da0", + "3691", + "340802" + ], + [ + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", + "2864", + "340802" + ], + [ + "0x79608C564704fdFC1d7dE7E512995C907f46cA07", + "3000", + "340802" + ], + [ + "0x01914D6E47657d6A7893F84Fc84660dc5aec08b6", + "10000", + "340802" + ], + [ + "0x930836bA4242071FEa039732ff8bf18B8401403E", + "1852", + "340802" + ], + [ + "0x8E8A5fb89F6Ab165F982fA4869b7d3aCD3E4eBfE", + "2500", + "340802" + ], + [ + "0xeA47644f110CC08B0Ecc731E992cbE3569940dad", + "2000", + "340802" + ], + [ + "0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C", + "2005", + "340802" + ], + [ + "0x047B22BFE547d29843c825dbcBd9E0168649d631", + "1950", + "340802" + ], + [ + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", + "2221", + "340802" + ], + [ + "0x90a69b1a180f60c0059f149577919c778cE2b9e1", + "2121", + "340802" + ], + [ + "0x3aB1a190713Efdc091450aF618B8c1398281373E", + "3511", + "340802" + ], + [ + "0xbEb5B4Aae36A1EBd8a525017fe7fd2141D544Ee5", + "1689", + "340802" + ], + [ + "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d", + "2005", + "340802" + ], + [ + "0x877cEA592fd83Dcc76243636dedC31CA7ce46cE1", + "1917", + "340802" + ], + [ + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", + "1999", + "340802" + ], + [ + "0xCeD392A0B38EEdC1f127179D88e986452aCe6433", + "3140", + "340802" + ], + [ + "0xF5Ca1b4F227257B5367515498B38908d593E1EBe", + "2968", + "340802" + ], + [ + "0xe105EDc9d5E7B473251f91c3205bc62a6A30c446", + "2087", + "340802" + ], + [ + "0x1083D7254E01beCd64C3230612BF20E14010d646", + "1992", + "340802" + ], + [ + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", + "1877", + "340802" + ], + [ + "0xE9691477a468cC9084B690920B845C20dc54Ae04", + "3000", + "340802" + ], + [ + "0x1aE02022a49b122a21bEBE24A1B1845113C37931", + "1893", + "340802" + ], + [ + "0x193641EA463C3B9244cF9F00b77EE5220d4154e9", + "1878", + "340802" + ], + [ + "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", + "1726", + "340802" + ], + [ + "0xD560fd84DAB03114C51448ab97AD82D21Cc3cEEc", + "2009", + "340802" + ], + [ + "0x274d8bD90C11E7f5598242ee174085281fDE1aed", + "1738", + "340802" + ], + [ + "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d", + "2780", + "340802" + ], + [ + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", + "2259", + "340802" + ], + [ + "0x400609FDd8FD4882B503a55aeb59c24a39d66555", + "1600", + "340802" + ], + [ + "0xe6a54e967ECB4E1e4b202678aED4918B5c492926", + "1949", + "340802" + ], + [ + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", + "1750", + "340802" + ], + [ + "0xf84F39554247723C757066b8fd7789462aC25894", + "1746", + "340802" + ], + [ + "0x2F0424705Ab89E72c6b9fAebfF6D4265F9d25fA2", + "1996", + "340802" + ], + [ + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", + "1680", + "340802" + ], + [ + "0xd653971FA19ef68BC80BECb7720675307Bfb3EE6", + "1854", + "340802" + ], + [ + "0xbD50a98a99438325067302D987ccebA3C7a8a296", + "1555", + "340802" + ], + [ + "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", + "2055", + "340802" + ], + [ + "0x9C8623E1244fA3FB56Ed855aeAcCF97A4371FfE0", + "2366", + "340802" + ], + [ + "0xc5Df8672232f1C2b75310e4f2B80863721705a12", + "2000", + "340802" + ], + [ + "0xA88bbFF5B5edec5Ab232174cce7e0921EAAa0EdC", + "1582", + "340802" + ], + [ + "0x16497eF5D7071a86F97f9140C651D68440527Bc4", + "1500", + "340802" + ], + [ + "0x86642f87887c1313f284DBEc47E79Dc06593b82e", + "1658", + "340802" + ], + [ + "0x0C040E41b5b17374b060872295cBE10Ec8954550", + "1132", + "340802" + ], + [ + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", + "1126", + "340802" + ], + [ + "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", + "1026", + "340802" + ], + [ + "0x648457FC44EAAf5B1FeB75974c826F1ca44745b7", + "1442", + "340802" + ], + [ + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", + "1010", + "340802" + ], + [ + "0x1B15ED3612CD3077ba4437a1e2B924C33d4de0F9", + "2011", + "340802" + ], + [ + "0x9d1D4D631AE6BC24bD09aDfF6Ca82651e928B650", + "2000", + "340802" + ], + [ + "0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7", + "1025", + "340802" + ], + [ + "0x8A30D3bb32291DBbB5F88F905433E499638387b7", + "1975", + "340802" + ], + [ + "0x0DE299534957329688a735d03961dBd848A5f87f", + "1100", + "340802" + ], + [ + "0x0cE72b7Dde6Ea0e9e8feeB634FcD9245E81D34F3", + "1047", + "340802" + ], + [ + "0x8AD30D5e981b4F7207A52Ed61B16639D02aA5a21", + "1100", + "340802" + ], + [ + "0x13201714657f8B211f72c5050AEb146D1faFc890", + "1074", + "340802" + ], + [ + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", + "1615", + "340802" + ], + [ + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", + "1118", + "340802" + ], + [ + "0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c", + "1059", + "340802" + ], + [ + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", + "1029", + "340802" + ], + [ + "0x48e9E2F211371bD2462e44Af3d2d1aA610437f82", + "1012", + "340802" + ], + [ + "0x62F9075e7Bc85B500efd0f0Ad9e98c3b799B3d98", + "1010", + "340802" + ], + [ + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", + "1256", + "340802" + ], + [ + "0x958f5ee318e6CAf1Ec22d682A0f823dAAa70D758", + "1501", + "340802" + ], + [ + "0xb2A147095999840BBcE5d679B97Ac379a658BFb9", + "1005", + "340802" + ], + [ + "0x772b17A408b225694053a01d30fccf789a3Ec21C", + "1004", + "340802" + ], + [ + "0x1aD66517368179738f521AF62E1acFe8816c22a4", + "1047", + "340802" + ], + [ + "0x941169FFF3C353BE965e3f34823eeA63b772219c", + "1041", + "340802" + ], + [ + "0x8A782809D316B5f32b9512f98368337258194006", + "1006", + "340802" + ], + [ + "0x7c5FEFF51C3623183A920de28c1f84e5289eb8c9", + "1005", + "340802" + ], + [ + "0x891768B90Ea274e95B40a3a11437b0e98ae96493", + "1161", + "340802" + ], + [ + "0xB73a795F4b55dC779658E11037e373d66b3094c7", + "1263", + "340802" + ], + [ + "0x38C5cA4ee678D4f9d8D94A7f238E2700A8978B36", + "1003", + "340802" + ], + [ + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", + "1031", + "340802" + ], + [ + "0x8542ab72e61aC4a276c69A8a18706B5Cd49b38Ee", + "1250", + "340802" + ], + [ + "0xe3a08ccE7E0167373A965B7B0D0dc57B6A2142f7", + "1149", + "340802" + ], + [ + "0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C", + "862", + "340802" + ], + [ + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", + "1040", + "340802" + ], + [ + "0xDFf58819aB64C79d5276e4052d3e74ACa493658D", + "1175", + "340802" + ], + [ + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", + "1046", + "340802" + ], + [ + "0x85eD5D7d62cC5d33aC57c1814faABc648AEc81e8", + "1486", + "340802" + ], + [ + "0x8Fe316B09c8F570Fd00F1172665d1327a2c74c7E", + "1012", + "340802" + ], + [ + "0x8781e4F7c3C20E8Ab7b65Df6E8Ae26d9d16821D4", + "925", + "340802" + ], + [ + "0x1f3236F64Cb6878F164e3A281c2a9393e19A6D00", + "1010", + "340802" + ], + [ + "0xf80cDe9FBB874500E8932de19B374Ab473E7d207", + "1156", + "340802" + ], + [ + "0x0F9548165C4960624DEbb7e38b504E9Fd524d6Af", + "1002", + "340802" + ], + [ + "0x5FA8F6284E7d85C7fB21418a47De42580924F24d", + "1008", + "340802" + ], + [ + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", + "1501", + "340802" + ], + [ + "0x3cc04875E98EDf01065a4B27e00bcfeDdb76CBA8", + "1341", + "340802" + ], + [ + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", + "1009", + "340802" + ], + [ + "0x923CC3D985cE69a254458001097012cb33FAb601", + "1018", + "340802" + ], + [ + "0xC0c0514363049224093eC8b610C00F292d80B621", + "1000", + "340802" + ], + [ + "0xb5DC9dC6820E4EE9A1d844842EeE6256D2BC8399", + "1008", + "340802" + ], + [ + "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15", + "1005", + "340802" + ], + [ + "0xA3e1b60002a24f6cFf3f74E2AA260b8C17bbdF7D", + "1386", + "340802" + ], + [ + "0xF352e5320291298bE60D00a015b27D3960F879FA", + "1265", + "340802" + ], + [ + "0x4e4834a9DB68D2c3c1B8F043f52cd1AfD3c50Df6", + "1006", + "340802" + ], + [ + "0xB09ffb206dDA09B6bc556b093eD28903872Ad124", + "1010", + "340802" + ], + [ + "0x85312D6a50928F3ffC7a192444601E6E04A428a2", + "1002", + "340802" + ], + [ + "0x71B49dd7E69CD8a1e81F7a1e3012C7c12195b7f9", + "1000", + "340802" + ], + [ + "0xe12c849046d447e60E6Fb47bacA6Dc8561D3Cbf7", + "1001", + "340802" + ], + [ + "0xA59EaBB3DB0042d13d4E821D7C1507d270EF4051", + "1001", + "340802" + ], + [ + "0x81fAc8eD831262A4Ced09BC0024BAe266e6AE688", + "1008", + "340802" + ], + [ + "0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E", + "1000", + "340802" + ], + [ + "0x728897111210Dc78F311E8366297bc31ac8FA805", + "927", + "340802" + ], + [ + "0xf0F2DD63004315157b63d4c11dBbBa360cEB32a9", + "1000", + "340802" + ], + [ + "0x26E8F0F1Dfd919034c909055e90b0B70AdfB7047", + "1001", + "340802" + ], + [ + "0x2612C1bc597799dc2A468D6537720B245f956A22", + "994", + "340802" + ], + [ + "0xBd80cee1D9EBe79a2005Fc338c9a49b2764cfc36", + "1000", + "340802" + ], + [ + "0x3BD142a93adC0554C69395AAE69433A74CFFc765", + "931", + "340802" + ], + [ + "0x2527F13bA7B1D8594365D8af829cdcc4FE445098", + "927", + "340802" + ], + [ + "0xfeC90Ae9638e5e5BcAee95D4e0478407155472eb", + "997", + "340802" + ], + [ + "0x53bA90071fF3224AdCa6d3c7960Ad924796FED03", + "1000", + "340802" + ], + [ + "0x2f0087909A6f638755689d88141F3466F582007d", + "1000", + "340802" + ], + [ + "0x0e4D2c272f192bCC5ef7Bb3D8A09bdA087652162", + "1000", + "340802" + ], + [ + "0x8F76d8D3C733B02B60521D8181598E4bC1E7dDdB", + "998", + "340802" + ], + [ + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", + "1000", + "340802" + ], + [ + "0x0e0826998f02b2353499a12a0Ea8d8EEbe27567f", + "919", + "340802" + ], + [ + "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", + "750", + "340802" + ], + [ + "0x072Fa8a20fA621665B94745A8075073ceAdFE1DC", + "747", + "340802" + ], + [ + "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241", + "500", + "340802" + ], + [ + "0x7Df40fde5E8680c45BFEdAFCf61dD6962e688562", + "1000", + "340802" + ], + [ + "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d", + "783", + "340802" + ], + [ + "0x92470BDC0CB1FC2eD3De81c1b5e8668371C12A83", + "512", + "340802" + ], + [ + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", + "942", + "340802" + ], + [ + "0xA1ae22c9744baceC7f321bE8F29B3eE6eF075205", + "523", + "340802" + ], + [ + "0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2", + "500", + "340802" + ], + [ + "0x4d498b930eD0dcBdeE385D7CBDBB292DAc0d1c91", + "270", + "340802" + ], + [ + "0x066E9372fF4D618ba8f9b1E366463A18DD711e5E", + "468", + "340802" + ], + [ + "0x44db0002349036164dD46A04327201Eb7698A53e", + "444", + "340802" + ], + [ + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", + "780", + "340802" + ], + [ + "0xE381CEb106717c176013AdFCE95F9957B5ea3dA9", + "762", + "340802" + ], + [ + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", + "744", + "340802" + ], + [ + "0xC0eB311C2f846BD359ed8eAA9a766D5E4736846A", + "1000", + "340802" + ], + [ + "0x525AaDb22D87cAa26B00587dC6BF9a6Cc2F414E5", + "1000", + "340802" + ], + [ + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", + "430", + "340802" + ], + [ + "0x13042AF2293C0a41119749d6Ed8f81145312e3D7", + "199", + "340802" + ], + [ + "0x30A1fbFc214D2Af0A68f6652A1d18a1b71Dfa9eA", + "353", + "340802" + ], + [ + "0xfB2594cE11e08cE68832adD3a11232CA8ef89B7d", + "250", + "340802" + ], + [ + "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf", + "746", + "340802" + ], + [ + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", + "392", + "340802" + ], + [ + "0xd643F55F3B36c05588e4e34c1668E77Fe098B94F", + "351", + "340802" + ], + [ + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", + "1000", + "340802" + ], + [ + "0x5163938834eaC9bB929BdFb4746e3910D58d0eAE", + "196", + "340802" + ], + [ + "0xA9B7B0B422cB1F99dA3e75C3Df6feEc2E8cb32E7", + "600", + "340802" + ], + [ + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", + "352", + "340802" + ], + [ + "0x368D80b383a401a231674B168E101706389656cB", + "446", + "340802" + ], + [ + "0xCEb1D8aC8f30c697f332b2665d12c96f6c794e37", + "337", + "340802" + ], + [ + "0xb0010aB3689B80177fF49773F1428aC9a0EDdfa0", + "500", + "340802" + ], + [ + "0xD8c84eaC995150662CC052E6ac76Ec184fcF1122", + "439", + "340802" + ], + [ + "0xbF133C1763c0751494CE440300fCd6b8c4e80D83", + "191", + "340802" + ], + [ + "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d", + "207", + "340802" + ], + [ + "0x0aF4a5c820cC97fC86d9be25d3cD4791eD436866", + "244", + "340802" + ], + [ + "0xeEEC0e4927704ab3BBE5df7F4EfFa818b43665a3", + "462", + "340802" + ], + [ + "0xeDB8260d0Db635b1C8df7AF174F0dAFdb5a04716", + "2000", + "340802" + ], + [ + "0xb833B1B0eF7F2b2183076868C18Cf9A20661AC7E", + "577", + "340802" + ], + [ + "0x25f030D68E56F831011c8821913CED6248Dd0676", + "618", + "340802" + ], + [ + "0x5aD9b4F1D6bc470D3100533Ed4e32De9B2d011C6", + "178", + "340802" + ], + [ + "0xBB05755eF4eAB7dfD4e0b34Ef63b0bdD05cce20A", + "123", + "340802" + ], + [ + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", + "453", + "340802" + ], + [ + "0x333Ce4d2eEFb9C2f0e687d3aa6e96BEBAaC57291", + "500", + "340802" + ], + [ + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", + "365", + "340802" + ], + [ + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", + "125", + "340802" + ], + [ + "0x94380039eD5562E29F38263b77AdcC976F84a57f", + "362", + "340802" + ], + [ + "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", + "200", + "340802" + ], + [ + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", + "272", + "340802" + ], + [ + "0xb75313Ee4f5bAb9aC4a004c430D5EA792ba27ed0", + "592", + "340802" + ], + [ + "0x4B202C0fDA7197af32949366909823B4468155f0", + "332", + "340802" + ], + [ + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", + "131", + "340802" + ], + [ + "0x433b1b3bc573FcD6fDDDCf9A72CE377dB7A38bb5", + "613", + "340802" + ], + [ + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", + "572", + "340802" + ], + [ + "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921", + "648", + "340802" + ], + [ + "0xdbC529316fe45F5Ce50528BF2356211051fB0F71", + "732", + "340802" + ], + [ + "0x7eaF877B409740afa24226D4A448c980896Be795", + "229", + "340802" + ], + [ + "0xa75b7833c78EBA62F1C5389f811ef3A7364D44DE", + "250", + "340802" + ], + [ + "0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A", + "125", + "340802" + ], + [ + "0xd2de1EE5C8453EDa993aC638772942A12B2C89e6", + "742", + "340802" + ], + [ + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", + "649", + "340802" + ], + [ + "0x1c22C526E14D60BBbf493D6817B9901207D4f81D", + "167", + "340802" + ], + [ + "0x43D413b607Ec68f75aA1558Dd1918a90fcfc310d", + "169", + "340802" + ], + [ + "0x7Ace5390CAa52Ea0c0D1aB408eE2D27DCE3f2711", + "191", + "340802" + ], + [ + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", + "187", + "340802" + ], + [ + "0xAa8Acf55F4Dd1e3E725d4Ba6A52A593260DBA249", + "163", + "340802" + ], + [ + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", + "111", + "340802" + ], + [ + "0xf2eDb5d3E6Fe66BD951DD9BdDef436D4cF8b0Dd0", + "137", + "340802" + ], + [ + "0xD14f924DE730Bb2F0C6E5B45b21b37468950a2fF", + "188", + "340802" + ], + [ + "0x14019DBae34219EFC2305b0C1dB260Fce8520DbF", + "159", + "340802" + ], + [ + "0x31188536865De4593040fAfC4e175E190518e4Ef", + "185", + "340802" + ], + [ + "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", + "100", + "340802" + ], + [ + "0xb03F5438f9A243De5C3B830B7841EC315034cD5f", + "184", + "340802" + ], + [ + "0x32C7006B7E287eBb972194B40135e0D15870Ab5E", + "104", + "340802" + ], + [ + "0xb343067A6fF1B6E4A9892fF4FDD123fDD48de5E4", + "166", + "340802" + ], + [ + "0x8fa93f9B47146DBE1108F49a8784AED775F472a5", + "156", + "340802" + ], + [ + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", + "600", + "340802" + ], + [ + "0x6ee25671aa43C7E9153d19A1a839CCbBBE65d1EC", + "174", + "340802" + ], + [ + "0x473812413b6A8267C62aB76095463546C1F65Dc7", + "154", + "340802" + ], + [ + "0x1cE75A78Ce9FC7d7f2501157A2408Bd1bE4910f8", + "187", + "340802" + ], + [ + "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", + "185", + "340802" + ], + [ + "0xb54f4f12c886277eeF6E34B7e1c12C4647b820B2", + "200", + "340802" + ], + [ + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", + "556", + "340802" + ], + [ + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", + "590", + "340802" + ], + [ + "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", + "147", + "340802" + ], + [ + "0x79Af81df02789476F34E8dF5BAd9cb29fA57ad11", + "137", + "340802" + ], + [ + "0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12", + "173", + "340802" + ], + [ + "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", + "529", + "340802" + ], + [ + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", + "555", + "340802" + ], + [ + "0x64E29CCE3cC6E9056a144311A7eb3B8f381fd4ac", + "52", + "340802" + ], + [ + "0x41CC24B4E568715f33fE803a6C3419708205304d", + "51", + "340802" + ], + [ + "0xD2d038f866Ef6441e598E0f685f885693ef59917", + "49", + "340802" + ], + [ + "0xbaBADF2e1B6975bE66fcbED7387525c2f6b2101b", + "143", + "340802" + ], + [ + "0x576A4d006543d7Ba103933d6DBd1e3Cdf86E22d3", + "86", + "340802" + ], + [ + "0xBf4Aa57563dB2A8185148EC874EA96dff82CeB13", + "30", + "340802" + ], + [ + "0x8c256deF29ccd5089e68c9147d07eaDFBB53353e", + "51", + "340802" + ], + [ + "0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef", + "553", + "340802" + ], + [ + "0xEE9729290A878bA0C418AeB35E59c43526083DFE", + "50", + "340802" + ], + [ + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", + "47", + "340802" + ], + [ + "0x935A937903d18f98A705803DC3c5F07277fAb1B6", + "42", + "340802" + ], + [ + "0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a", + "94", + "340802" + ], + [ + "0x68572eAcf9E64e6dCD6bB19f992Bdc4Eff465fd0", + "20", + "340802" + ], + [ + "0xaBA9DC3A7B4F06158dD8C0c447E55bf200426208", + "74", + "340802" + ], + [ + "0x2425F7f9e92e8b8709162F244146F4915AFF3D2F", + "1", + "340802" + ], + [ + "0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911", + "21", + "340802" + ], + [ + "0xDC5d7233CeC5C6A543A7837bb0202449bc35b01B", + "25", + "340802" + ], + [ + "0x234831d4CFF3B7027E0424e23F019657005635e1", + "44", + "340802" + ], + [ + "0xcf5C67136c5AaFcdBa3195E1dA38A3eE792434D6", + "1", + "340802" + ], + [ + "0xE203deCCbAdDcb21567DF9C3cAe82e2c481B2a53", + "74", + "340802" + ], + [ + "0x9ffDced20253eA90E13Eb1621447CFB3eC1E775e", + "1", + "340802" + ], + [ + "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a", + "69", + "340802" + ], + [ + "0xD81a2cC2596E37Ae49322eDB198D84dc3986A3ed", + "1", + "340802" + ], + [ + "0x06Bbf21A21eca16eB2a23093CC9c5A75D2Dd8648", + "1", + "340802" + ], + [ + "0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54", + "35", + "340802" + ], + [ + "0xa24bae25595E860D415817bE1680885386AAA682", + "1", + "340802" + ], + [ + "0xD4ccCdedAAA75E15FdEdDd6D01B2af0a91D42562", + "17", + "340802" + ], + [ + "0x7D38aE457a3E24E5aF60a637638e134c97e2a1d5", + "3", + "340802" + ], + [ + "0x1748672FbFA9D481c80d5feEeEdF7b30135e1F9f", + "87", + "340802" + ], + [ + "0x830575A2Bc43dE4d60D415dD2631b22E81ada059", + "1", + "340802" + ], + [ + "0x177f44eCDEa293f7124C3071D9C54E59fcfD16f9", + "65", + "340802" + ], + [ + "0x793846163F80233F50d24eF06C44A8b2ba98f1Aa", + "100", + "340802" + ], + [ + "0x01529E0d0C38AdF57Db199AE1cCcd8F8694d8B74", + "1", + "340802" + ], + [ + "0x542A94e6f4D9D15AaE550F7097d089f273E38f85", + "53", + "340802" + ], + [ + "0x3021D79Bfb91cf97B525Df72108b745Bf1071fE7", + "74", + "340802" + ], + [ + "0x8bCE57b7B84218397FFB6ceFaE99F4792Ee8161d", + "76", + "340802" + ], + [ + "0xC00B46fC0B2673F561811580b0fBf41d56EdCf83", + "1", + "340802" + ], + [ + "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14", + "70", + "340802" + ], + [ + "0x4C3A97DB74D60410Bf17Ee64Edd98D09997f3929", + "1", + "340802" + ], + [ + "0x83397cD5C698488176F8aB8Ce19580b75255b977", + "1", + "340802" + ], + [ + "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", + "54", + "340802" + ], + [ + "0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e", + "95", + "340802" + ], + [ + "0x1584B668643617D18321a0BEc6EF3786F4b8Eb7B", + "1", + "340802" + ], + [ + "0x1397c24478cBe0a54572ADec2A333f87Ad75Ac02", + "1", + "340802" + ], + [ + "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D", + "1", + "340802" + ], + [ + "0xdC369e387b1906582FdC9e1CF75aD85774FaC894", + "1", + "340802" + ], + [ + "0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81", + "100", + "340802" + ], + [ + "0x4e7ceb231714E80f90E895D13723a2c322F78127", + "1", + "340802" + ], + [ + "0xd39A31e5f23D90371D61A976cACb728842e04ca9", + "2000", + "340802" + ], + [ + "0xeCdc4DD795D79F668Ff09961b2A2f47FE8e4f170", + "20", + "340802" + ], + [ + "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "8046712", + "340802" + ], + [ + "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", + "51100", + "340802" + ], + [ + "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", + "3025", + "340802" + ], + [ + "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", + "3180", + "340802" + ] + ] ] ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json b/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json index 786401a5..913a6e15 100644 --- a/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json @@ -211,12 +211,12 @@ "70842", "14364122" ], + "17216958", "5654645373178", + "95821405245000", "5654645373178", + "1334303", + "6000000", "340802", - "0", - "0", - "0", - "0", "0" -] +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json index 47714ca9..dd94df24 100644 --- a/scripts/beanstalkShipments/data/beanstalkPlots.json +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -2,318 +2,38028 @@ [ "0x00427C81629Cd592Aa068B0290425261cbB8Eba2", [ - ["219512522113151", "7223908"], - ["219512529337059", "31759311271"], - ["220260780240981", "50970469725"], - ["220412639240355", "224945750526"], - ["296987641383543", "196600091571"], - ["297520012461425", "323552874641"] + [ + "158383612870588", + "7223908" + ], + [ + "158383620094496", + "31759311271" + ], + [ + "159131870998418", + "50970469725" + ], + [ + "159283729997792", + "224945750526" + ], + [ + "235858732140980", + "196600091571" + ], + [ + "236391103218862", + "323552874641" + ] + ] + ], + [ + "0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97", + [ + [ + "198178936313645", + "26788151839" + ] + ] + ], + [ + "0x009A2534fd10c879D69daf4eE3000A6cb7E609Bb", + [ + [ + "294865377281806", + "936000838" + ], + [ + "552612150292332", + "12343626381" + ] ] ], - ["0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97", [["259307845556208", "26788151839"]]], [ "0x00aaEa7B4dC89E4a4fACDa32da496ba5D8E1216d", [ - ["213624545642929", "162190000000"], - ["247198969775858", "122194014367"], - ["259351838616547", "177840000000"], - ["275095398755606", "131880000000"], - ["325890072651230", "60578809843"], - ["325568349528199", "202965998727"], - ["325964705941059", "90135360000"] + [ + "152495636400366", + "162190000000" + ], + [ + "186070060533295", + "122194014367" + ], + [ + "198222929373984", + "177840000000" + ], + [ + "213966489513043", + "131880000000" + ], + [ + "264439440285636", + "202965998727" + ], + [ + "264761163408667", + "60578809843" + ], + [ + "264835796698496", + "90135360000" + ] ] ], [ "0x01914D6E47657d6A7893F84Fc84660dc5aec08b6", [ - ["222137414538585", "59835371765"], - ["264869362106309", "331258939473"], - ["281473918555928", "35022592719"] + [ + "161008505296022", + "59835371765" + ], + [ + "203740452863746", + "331258939473" + ], + [ + "220345009313365", + "35022592719" + ] + ] + ], + [ + "0x019285701d4502df31141dF600A472c61c054e63", + [ + [ + "224271169428524", + "106658006145" + ], + [ + "233905059017553", + "102049327959" + ] ] ], [ "0x01e82e6c90fa599067E1F59323064055F5007A26", [ - ["311759016079886", "9835054149"], - ["332692990408590", "11996796641"] + [ + "250630106837323", + "9835054149" + ], + [ + "271564081166027", + "11996796641" + ] + ] + ], + [ + "0x0255b20571acc2e1708ADE387b692360537F9e89", + [ + [ + "248449135389299", + "64992665273" + ] + ] + ], + [ + "0x0259D65954DfbD0735E094C9CdACC256e5A29dD4", + [ + [ + "164374645848934", + "13153879503" + ] ] ], - ["0x0255b20571acc2e1708ADE387b692360537F9e89", [["309578044631862", "64992665273"]]], - ["0x0259D65954DfbD0735E094C9CdACC256e5A29dD4", [["225503555091497", "13153879503"]]], [ "0x028afa72DADB6311107c382cF87504F37F11D482", [ - ["92823059143567", "10000000000"], - ["92809491258727", "13567884840"], - ["150109842699563", "260798082000"], - ["226891435159870", "134261600000"], - ["464738314284991", "1204607540000"] + [ + "31680582016164", + "13567884840" + ], + [ + "31694149901004", + "10000000000" + ], + [ + "88980933457000", + "260798082000" + ], + [ + "165762525917307", + "134261600000" + ], + [ + "403609405042428", + "1204607540000" + ] + ] + ], + [ + "0x029D058CFdBE37eb93949e4143c516557B89EB3c", + [ + [ + "595201581720334", + "13019870000" + ] + ] + ], + [ + "0x02A527084F5E73AF7781846762c8753aCD096461", + [ + [ + "273300100037819", + "48981431387" + ] ] ], - ["0x029D058CFdBE37eb93949e4143c516557B89EB3c", [["656330490962897", "13019870000"]]], - ["0x02A527084F5E73AF7781846762c8753aCD096461", [["334429009280382", "48981431387"]]], [ "0x02df7e960FFda6Db4030003D1784A7639947d200", [ - ["263229307052066", "89570739830"], - ["367992576479833", "89814117243"], - ["640248688742909", "32004132279"], - ["700509338012799", "1029829519"], - ["705148261261814", "5592069316"], - ["715901934912710", "204556800000"] + [ + "202100397809503", + "89570739830" + ], + [ + "306863667237270", + "89814117243" + ], + [ + "579119779500346", + "32004132279" + ], + [ + "639380428770236", + "1029829519" + ], + [ + "644019352019251", + "5592069316" + ], + [ + "654773025670147", + "204556800000" + ] + ] + ], + [ + "0x032865e6e27E90F465968ffc635900a4F7CEEB84", + [ + [ + "726382636526311", + "4880443948" + ] + ] + ], + [ + "0x035bb6b7D76562320dFFb5ec23128ED1541823cf", + [ + [ + "586630926496443", + "8545560000" + ] ] ], [ "0x0399ecFbb2a9D0D520738b3179FA685cD5c6D692", [ - ["326115054051340", "4512552964"], - ["326066593794316", "40827127085"] + [ + "264937684551753", + "40827127085" + ], + [ + "264986144808777", + "4512552964" + ] + ] + ], + [ + "0x03B431AC8c662a40765dbE98a0C44DecfF22067C", + [ + [ + "559934751645655", + "87181798710" + ] + ] + ], + [ + "0x03fFDf41a57Fabf55C245F9175fc8644F8381C48", + [ + [ + "408138522427526", + "67839692592" + ] + ] + ], + [ + "0x04298C47FB301571e97496c3AE0E97711325CFaA", + [ + [ + "582289974470121", + "105966227923" + ], + [ + "644448063056812", + "8071882778" + ], + [ + "644538261890091", + "8376502838" + ], + [ + "644567758321823", + "8036081997" + ], + [ + "646677644091662", + "21869865192" + ], + [ + "646699513956854", + "14171818173" + ], + [ + "647108173866991", + "11486911677" + ], + [ + "668921920941967", + "103450896022" + ] ] ], [ "0x0440bDd684444f1433f3d1E0208656abF9993C52", [ - ["373925950027664", "45302318890"], - ["582169824919253", "42943568151"] + [ + "312797040785101", + "45302318890" + ], + [ + "521040915676690", + "42943568151" + ] ] ], [ "0x047B22BFE547d29843c825dbcBd9E0168649d631", [ - ["293603662086844", "5000000000"], - ["339785493449995", "5000000000"] + [ + "232474752844281", + "5000000000" + ], + [ + "278656584207432", + "5000000000" + ] + ] + ], + [ + "0x04A9b41a1288871FB60c6d015F3489612d36EB48", + [ + [ + "333558446493169", + "64363620944" + ] + ] + ], + [ + "0x0519425dD15902466e7F7FA332F7b664c5c03503", + [ + [ + "680401530872218", + "47459625794" + ], + [ + "680464603246920", + "95341770600" + ], + [ + "680675656202901", + "131855360654" + ], + [ + "848258228820360", + "31773910198" + ] + ] + ], + [ + "0x058107C8b15Dd30eFF1c1d01Cf15bd68e6BEf26F", + [ + [ + "165755530385064", + "6995532243" + ] ] ], [ "0x05Dc8E95a479dDA8C8Fc5a27Eb825f5042048937", [ - ["242099536238542", "48687410197"], - ["267130014958056", "441400000000"], - ["372014214928944", "130307882672"] + [ + "180970626995979", + "48687410197" + ], + [ + "206001105715493", + "441400000000" + ], + [ + "310885305686381", + "130307882672" + ] ] ], [ "0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8", [ - ["209220519528131", "11650000023"], - ["231708174808450", "128204242520"], - ["231341219356809", "42212058637"], - ["234388087920671", "76785972127"], - ["235139368197334", "88530245061"], - ["235466496070620", "89069724637"], - ["242220953693190", "176370890696"], - ["274834294245546", "232473608236"], - ["298577221698411", "80785205928"], - ["360005402458005", "110000000022"], - ["403141541165007", "89548106083"], - ["439287718752073", "64814486924"], - ["446851712935884", "64017873961"], - ["456666382031303", "13450636839"] + [ + "148091610285568", + "11650000023" + ], + [ + "170212310114246", + "42212058637" + ], + [ + "170579265565887", + "128204242520" + ], + [ + "173259178678108", + "76785972127" + ], + [ + "174010458954771", + "88530245061" + ], + [ + "174337586828057", + "89069724637" + ], + [ + "181092044450627", + "176370890696" + ], + [ + "213705385002983", + "232473608236" + ], + [ + "237448312455848", + "80785205928" + ], + [ + "298876493215442", + "110000000022" + ], + [ + "342012631922444", + "89548106083" + ], + [ + "378158809509510", + "64814486924" + ], + [ + "385722803693321", + "64017873961" + ], + [ + "395537472788740", + "13450636839" + ] + ] + ], + [ + "0x06849E470D08bAb98007ff0758C1215a2D750219", + [ + [ + "760543583068610", + "160000000000" + ] + ] + ], + [ + "0x0690166a66626C670be8f1A09bcC4D23c0838D35", + [ + [ + "264422904456643", + "16535828993" + ] + ] + ], + [ + "0x06E6932ed7D7De9bcF5bD7a11723Dc698D813F7e", + [ + [ + "180060166122732", + "11074540309" + ], + [ + "213222544962724", + "6979294808" + ], + [ + "264642406284363", + "14384938107" + ] ] ], [ "0x072Fa8a20fA621665B94745A8075073ceAdFE1DC", [ - ["293793662086844", "1258344408"], - ["451881155731609", "2694713257"], - ["625899610647771", "14602525520"] + [ + "232664752844281", + "1258344408" + ], + [ + "390752246489046", + "2694713257" + ], + [ + "564770701405208", + "14602525520" + ] + ] + ], + [ + "0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122", + [ + [ + "227504823719295", + "18305090101" + ] + ] + ], + [ + "0x07f7cA325221752380d6CdFBcFF9B5E5E9EC058F", + [ + [ + "158554389505642", + "83262125763" + ] + ] + ], + [ + "0x08364bdB63045c391D33cb83d6AEd7582b94701d", + [ + [ + "322385088448926", + "23831778892" + ] ] ], - ["0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122", [["288633732961858", "18305090101"]]], [ "0x083aA7FF9AE00099471902178bf2fda4e6aC14Bf", [ - ["115734261815618", "1373342955832"], - ["572446942692513", "4995900000000"] + [ + "54605352573055", + "1373342955832" + ], + [ + "511318033449950", + "4995900000000" + ] + ] + ], + [ + "0x0846Bf78c84C11D58Bb2320Fc8807C1983A2797C", + [ + [ + "198089537823139", + "44722720347" + ], + [ + "198923674691811", + "47702676650" + ] + ] + ], + [ + "0x084a35aE3B2F2513FF92fab6ad2954A1DF418093", + [ + [ + "73701699840921", + "8173506938" + ], + [ + "73709873347859", + "105615118195" + ], + [ + "141762199046997", + "15951445054" + ] + ] + ], + [ + "0x08507B93B82152488512fe20Da7E42F4260D1209", + [ + [ + "267232645895270", + "69760982441" + ], + [ + "318245908052700", + "104583299835" + ] + ] + ], + [ + "0x085656Bd50C53E7e93D19270546956B00711FE2B", + [ + [ + "72933498326539", + "67047192458" + ] + ] + ], + [ + "0x085E98CD14e00f9FC3E9F670e1740F954124e824", + [ + [ + "93029383981954", + "164150000000" + ], + [ + "210786176949332", + "52683422286" + ], + [ + "212056471788327", + "13304471734" + ] + ] + ], + [ + "0x0872FcfE9C10993c0e55bb0d0c61c327933D6549", + [ + [ + "445035429115281", + "3504591163976" + ] + ] + ], + [ + "0x088374e1aDf3111F2b77Af3a06d1F9Af8298910b", + [ + [ + "676546336844312", + "49190117" + ] + ] + ], + [ + "0x08b6e06F64f62b7255840329b2DDB592d6A2c336", + [ + [ + "232150221282524", + "10974203921" + ] + ] + ], + [ + "0x08Bf22fB93892583a815C598502b9B0a88124DAD", + [ + [ + "106845721334829", + "1203298387" + ], + [ + "153696075190346", + "4646730125" + ], + [ + "153732346730027", + "2785196655" + ], + [ + "212137633689993", + "2250123666" + ], + [ + "216267857450591", + "135654646253" + ], + [ + "238776826686778", + "200000000000" + ], + [ + "343880340935457", + "483255914580" + ], + [ + "380564351115891", + "49538069617" + ], + [ + "429570314991709", + "111570000000" + ], + [ + "429698551658375", + "134211333334" + ], + [ + "597930691852522", + "135804736673" + ], + [ + "631051500137901", + "905703602" + ], + [ + "634764548737053", + "3085124160" + ], + [ + "739030555204088", + "67815395117" + ], + [ + "742249934193220", + "7411190987" + ], + [ + "742257345384207", + "9914195956" + ], + [ + "744405592731274", + "12116315207" + ] + ] + ], + [ + "0x08c16a9c76Df28eE6bf9764B761E7C4cE411E890", + [ + [ + "332756863467503", + "801583025666" + ] + ] + ], + [ + "0x08C1eBaC9aD1933E08718A790bc7D1026e588c9b", + [ + [ + "361758626206099", + "31370000000" + ] + ] + ], + [ + "0x08e0F0DE1e81051826464043e7Ae513457B27a86", + [ + [ + "648110674034173", + "2331841959" + ] + ] + ], + [ + "0x09147d29d27E0c8122fC0b66Ff6Ca060Cda40aDc", + [ + [ + "202315456976486", + "78768160379" + ], + [ + "279211401156441", + "194252578254" + ] + ] + ], + [ + "0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b", + [ + [ + "144129589980200", + "93939450745" + ] ] ], - ["0x0872FcfE9C10993c0e55bb0d0c61c327933D6549", [["506164338357844", "3929400000000"]]], - ["0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b", [["205258499222763", "93939450745"]]], [ "0x0933F554312C7bcB86dF896c46A44AC2381383D1", [ - ["66077490832749", "4285968142"], - ["137158194248376", "70534236366"], - ["137090927995303", "33932867140"], - ["700800480278284", "16260418699"], - ["698385571290683", "91670658400"], - ["698332329637545", "44433251272"], - ["829917360405126", "346152924157"], - ["831739833955659", "286285987606"], - ["832112764722655", "143688821720"], - ["840288530083841", "375150000000"], - ["835325809463925", "312721607422"], - ["842562968278458", "379600000000"], - ["843131470697234", "451981999254"], - ["843824641428214", "419849681838"], - ["846649026246732", "872694086398"], - ["848001786853259", "1183774050841"], - ["852055421577128", "1106707810652"], - ["855295769925501", "1147301756523"], - ["853162129387780", "624274000000"], - ["856443385149023", "724139532487"], - ["863516863753396", "80990864682"], - ["864828654618078", "1511781533128"], - ["869937363903103", "32924291737"], - ["859649756244601", "1449652715577"], - ["869398936159740", "289613602687"], - ["867688984695408", "1537161274244"], - ["857252181498994", "2163507174639"], - ["910859102244013", "3670278368"], - ["874871142303705", "1573900000000"], - ["907004994946789", "647085248223"], - ["908175569183219", "1015442311180"], - ["910862772522381", "7048310149752"], - ["917911082672133", "799024050000"], - ["922786592900977", "31158988487"], - ["927165331055095", "464894511809"], - ["927997461195550", "33054418018"] + [ + "4948581590186", + "4285968142" + ], + [ + "75962018752740", + "33932867140" + ], + [ + "76029285005813", + "70534236366" + ], + [ + "637203420394982", + "44433251272" + ], + [ + "637256662048120", + "91670658400" + ], + [ + "639671571035721", + "16260418699" + ], + [ + "768788451162563", + "346152924157" + ], + [ + "770610924713096", + "286285987606" + ], + [ + "770983855480092", + "143688821720" + ], + [ + "774196900221362", + "312721607422" + ], + [ + "779159620841278", + "375150000000" + ], + [ + "781434059035895", + "379600000000" + ], + [ + "782002561454671", + "451981999254" + ], + [ + "782695732185651", + "419849681838" + ], + [ + "785520117004169", + "872694086398" + ], + [ + "786872877610696", + "1183774050841" + ], + [ + "790926512334565", + "1106707810652" + ], + [ + "792033220145217", + "624274000000" + ], + [ + "794166860682938", + "1147301756523" + ], + [ + "795314475906460", + "724139532487" + ], + [ + "796123272256431", + "2163507174639" + ], + [ + "798520847002038", + "1449652715577" + ], + [ + "802387954510833", + "80990864682" + ], + [ + "803699745375515", + "1511781533128" + ], + [ + "806560075452845", + "1537161274244" + ], + [ + "808270026917177", + "289613602687" + ], + [ + "808808454660540", + "32924291737" + ], + [ + "813742233061142", + "1573900000000" + ], + [ + "845876085704226", + "647085248223" + ], + [ + "847046659940656", + "1015442311180" + ], + [ + "849730193001450", + "3670278368" + ], + [ + "849733863279818", + "7048310149752" + ], + [ + "856782173429570", + "799024050000" + ], + [ + "861657683658414", + "31158988487" + ], + [ + "866036421812532", + "464894511809" + ], + [ + "866868551952987", + "33054418018" + ] + ] + ], + [ + "0x0948934A39767226E1FfC53bd0B95efa90055178", + [ + [ + "250490385992189", + "15991984586" + ] + ] + ], + [ + "0x095CB8F5E61b69A0C2fE075A772bb953f2d11C2A", + [ + [ + "278081828263955", + "102926636303" + ] ] ], [ "0x0968d6491823b97446220081C511328d8d9Fb61D", [ - ["260751601304940", "55851479923"], - ["252900231373437", "10149461593"] + [ + "191771322130874", + "10149461593" + ], + [ + "199622692062377", + "55851479923" + ] + ] + ], + [ + "0x098616F858B4876Ff3BE60BA979d0f7620B53494", + [ + [ + "767866168654114", + "10776000000" + ] + ] + ], + [ + "0x09Ad186D43615aa3131c6064538aF6E0A643Ce12", + [ + [ + "655692536961572", + "84542994300" + ] ] ], - ["0x09Ad186D43615aa3131c6064538aF6E0A643Ce12", [["716821446204135", "84542994300"]]], [ "0x09Bc3c127ED4c491880c2A250d6d034696cb5fC1", [ - ["117206229423574", "125474075"], - ["711678653676332", "1644150213"], - ["714806519970192", "1746693893"] + [ + "56077320181011", + "125474075" + ], + [ + "650549744433769", + "1644150213" + ], + [ + "653677610727629", + "1746693893" + ] + ] + ], + [ + "0x09d8591fc4D4d483565bd0AD22ccBc8c6Dd0fF55", + [ + [ + "484418759571466", + "71165039974" + ] + ] + ], + [ + "0x09DaDF51d403684A67886DB545AE1703d7856056", + [ + [ + "188816886044153", + "97790380587" + ] + ] + ], + [ + "0x09Ea3281Eeb7395DaD7851E7e37ad6aff9d68a4c", + [ + [ + "444956187767910", + "17680578730" + ] + ] + ], + [ + "0x0A0761a91009101a86B7a0D786dBbA744cE2E240", + [ + [ + "216403512096844", + "4652629712" + ], + [ + "217056878248608", + "5610925897" + ] + ] + ], + [ + "0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4", + [ + [ + "740487197968911", + "3001695871" + ], + [ + "740490199664782", + "19348691464" + ] + ] + ], + [ + "0x0A6f465033A42B1EC9D8Cd371386d124E9D3b408", + [ + [ + "343678851461246", + "121582244473" + ] + ] + ], + [ + "0x0A7ED639830269B08eE845776E9b7a9EFD178574", + [ + [ + "194806045740033", + "11365698463" + ] + ] + ], + [ + "0x0ACe049e9378FfDbcFcb93AEE763d72A935038AE", + [ + [ + "408206362120118", + "678503700" + ] + ] + ], + [ + "0x0B297D1e15bd63e7318AF0224ebeA1883eA1B78b", + [ + [ + "320211492894055", + "26295761854" + ] + ] + ], + [ + "0x0b406697078c0C74e327856Fc57561a3A81FB925", + [ + [ + "378358932636790", + "193776500000" + ] + ] + ], + [ + "0x0B7021897485cC2Db909866D78A1D82657A4be6F", + [ + [ + "212206952942498", + "44063880952" + ], + [ + "257681307450277", + "39073687143" + ] ] ], [ "0x0b8e605A7446801ae645e57de5AAbbc251cD1e3c", [ - ["81428887071705", "861309250"], - ["117244875106467", "12681413672"], - ["117389926837876", "1552792281176"], - ["122360416208513", "21058843918"], - ["168002025206659", "66666666666"], - ["159942186473321", "356881824000"], - ["200834733464584", "33077610000"], - ["211471591689415", "14981210723"], - ["221003663002392", "42005288414"], - ["629670321709709", "18284615400"], - ["656219287275397", "7641038500"], - ["691674298786863", "2555702594"], - ["695260557505474", "2024888736"], - ["692926487441468", "1674567409"], - ["823185181303215", "181400000000"] - ] - ], - ["0x0baBD9Eba4c7C739Edd2dBCd6de0b7C483068948", [["242202028393123", "18925300067"]]], + [ + "20299977829142", + "861309250" + ], + [ + "56115965863904", + "12681413672" + ], + [ + "56261017595313", + "1552792281176" + ], + [ + "61231506965950", + "21058843918" + ], + [ + "98813277230758", + "356881824000" + ], + [ + "106873115964096", + "66666666666" + ], + [ + "139705824222021", + "33077610000" + ], + [ + "150342682446852", + "14981210723" + ], + [ + "159874753759829", + "42005288414" + ], + [ + "568541412467146", + "18284615400" + ], + [ + "595090378032834", + "7641038500" + ], + [ + "630545389544300", + "2555702594" + ], + [ + "631797578198905", + "1674567409" + ], + [ + "634131648262911", + "2024888736" + ], + [ + "762056272060652", + "181400000000" + ] + ] + ], + [ + "0x0baBD9Eba4c7C739Edd2dBCd6de0b7C483068948", + [ + [ + "181073119150560", + "18925300067" + ] + ] + ], + [ + "0x0be0eCC301a1c0175f07A66243cfF628c24DB852", + [ + [ + "325956673919974", + "11780328791" + ] + ] + ], [ "0x0C040E41b5b17374b060872295cBE10Ec8954550", [ - ["154125130757084", "9964227433"], - ["829906387458599", "1310476723"] + [ + "92996221514521", + "9964227433" + ], + [ + "768777478216036", + "1310476723" + ] + ] + ], + [ + "0x0C2301083B7f8021fB967C05a4C2fb1ab731C302", + [ + [ + "329575890598428", + "23348488996" + ] + ] + ], + [ + "0x0c492D61651965E3096740306F8345516fCd8990", + [ + [ + "86355905487408", + "70525182520" + ], + [ + "119152717526597", + "785756790998" + ], + [ + "139281871602326", + "350250000000" + ] + ] + ], + [ + "0x0c940e42D91FE16E0f0Eccc964b26dde7808ab5d", + [ + [ + "143705954052286", + "43270525811" + ] ] ], [ "0x0ccBCaA60D8b59bDf751B70Ee623d58c609170ac", [ - ["695317982276603", "1210963754"], - ["695495577990844", "2959780489"], - ["696086990150023", "1355977905"] + [ + "634189073034040", + "1210963754" + ], + [ + "634366668748281", + "2959780489" + ], + [ + "634958080907460", + "1355977905" + ] + ] + ], + [ + "0x0d619C8e3194b2aA5eddDdE5768c431bA76E27A4", + [ + [ + "18061413473743", + "54469256646" + ] ] ], [ "0x0DE299534957329688a735d03961dBd848A5f87f", [ - ["698249185306444", "5830146448"], - ["698115995386371", "56157982228"], - ["700134813855459", "65168474382"] + [ + "636987086143808", + "56157982228" + ], + [ + "637120276063881", + "5830146448" + ], + [ + "639005904612896", + "65168474382" + ] ] ], - ["0x0e109847630A42fc85E1D47040ACAd1803078DCc", [["710118154870377", "984567024"]]], - ["0x0e40Cf5c020ADa54351699a004fAEbE5e709a3A2", [["510095548540793", "1877710176"]]], - ["0x0e4D2c272f192bCC5ef7Bb3D8A09bdA087652162", [["922232828111947", "94606769"]]], - ["0x0E9a7280741E9B018beb5Fe409e6e21689F3B8EF", [["404800573112562", "555555555"]]], [ - "0x0f26F792fB89daF87A10a40f57eD1a0093b74Ad7", + "0x0e109847630A42fc85E1D47040ACAd1803078DCc", [ - ["221202055914502", "98509439990"], - ["263964858351524", "89002945570"] + [ + "648989245627814", + "984567024" + ] ] ], - ["0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59", [["802402236468190", "991516800"]]], [ - "0x0f5F4b5b7ca352cf4F5f2fc1Ac8A9889DECc4fCB", + "0x0e40Cf5c020ADa54351699a004fAEbE5e709a3A2", [ - ["218827625606992", "90796678203"], - ["379279622042320", "95195252943"] + [ + "448966639298230", + "1877710176" + ] ] ], [ - "0x0F7aFAa9DAC8F9ada59a25fa02AA6Ab32E56b145", + "0x0e4D2c272f192bCC5ef7Bb3D8A09bdA087652162", [ - ["230011236251843", "78593971335"], - ["451858242743572", "22912988037"], - ["467318943712484", "20158944528"], - ["640173287406938", "19113929431"] + [ + "861103918869384", + "94606769" + ] ] ], [ - "0x0FBF5E9C8D7cB0AeDd6F02Df0018178099c7d76A", + "0x0e56C87075CD53477C497D5B5F68CdcA8605cBF7", [ - ["327131631314518", "26954073714"], - ["327094716728275", "28823695338"], - ["343639296408424", "38293655362"] + [ + "222731836820687", + "2185380063" + ], + [ + "250764687174533", + "7528848316" + ] ] ], [ - "0x1083D7254E01beCd64C3230612BF20E14010d646", + "0x0E9a7280741E9B018beb5Fe409e6e21689F3B8EF", [ - ["122238087814012", "1"], - ["321145443111092", "10000000000"], - ["332845052284373", "145150909249"], - ["367967369691693", "25206788140"], - ["451648835683720", "38976000000"], - ["647509468720119", "42000000"], - ["647781216014808", "50000000000"], - ["704173271318565", "1850039534"], - ["804469632628451", "15655978265"] + [ + "343671663869999", + "555555555" + ] ] ], [ - "0x10bf1Dcb5ab7860baB1C3320163C6dddf8DCC0e4", + "0x0e9dc8fFc3a5A04A2Abdd5C5cBc52187E6653E42", [ - ["296438422246501", "43811488957"], - ["345456176278838", "7622833600000"], - ["381366697898472", "1248107035238"], - ["472919334210993", "3440214113127"] + [ + "109610910516612", + "2010899864188" + ], + [ + "144223529430945", + "545765404695" + ], + [ + "147066818462074", + "337282676156" + ], + [ + "169527800229955", + "111542849445" + ], + [ + "169639343079400", + "513789932910" + ], + [ + "175221338470718", + "617705249553" + ], + [ + "176478044420971", + "133802493354" + ], + [ + "176611846914325", + "772811138936" + ], + [ + "444079585373347", + "416478037426" + ], + [ + "470291561625193", + "1000000000" + ], + [ + "470292561625193", + "5649346694" + ], + [ + "484009900682155", + "383215316641" + ] ] ], - ["0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", [["422363385300603", "2406000000"]]], - ["0x11D86e9F9C2a1cF597b974E50C660316c92215AA", [["635286832458963", "18405369858"]]], [ - "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", + "0x0EdAc71d6c67BFA7A4dDD79A75967D9c0984F1ce", [ - ["742807303929456", "7527748761"], - ["803378843060369", "375414"] + [ + "533569882479088", + "33964733538" + ] ] ], - ["0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186", [["625914213173291", "1165879450"]]], [ - "0x12f1412fECBf2767D10031f01D772d618594Ea28", + "0x0F0520237DB57A05728fa0880F8f08A1fd57ccff", [ - ["467315572517841", "1685616675"], - ["467317258134516", "1685577968"], - ["513189588115820", "27897692308"] + [ + "215266253377951", + "10098137872" + ] ] ], - ["0x1348EA8E35236AA0769b91ae291e7291117bf15C", [["61618647066095", "616643076"]]], - ["0x13b1ddb38c80327257Bdcb0e321c834401399967", [["705511785947571", "2502367588"]]], [ - "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", + "0x0F1d41cc51e97DC9d0CAd80DC681777EED3675E3", + [ + [ + "586043288914915", + "26005505974" + ] + ] + ], + [ + "0x0f26F792fB89daF87A10a40f57eD1a0093b74Ad7", + [ + [ + "160073146671939", + "98509439990" + ], + [ + "202835949108961", + "89002945570" + ] + ] + ], + [ + "0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59", + [ + [ + "741273327225627", + "991516800" + ] + ] + ], + [ + "0x0f5F4b5b7ca352cf4F5f2fc1Ac8A9889DECc4fCB", + [ + [ + "157698716364429", + "90796678203" + ], + [ + "318150712799757", + "95195252943" + ] + ] + ], + [ + "0x0F7aFAa9DAC8F9ada59a25fa02AA6Ab32E56b145", + [ + [ + "168882327009280", + "78593971335" + ], + [ + "390729333501009", + "22912988037" + ], + [ + "406190034469921", + "20158944528" + ], + [ + "579044378164375", + "19113929431" + ] + ] + ], + [ + "0x0fbb76b9B283Dd22eCbD402B82EbFA6807e44260", + [ + [ + "347435937294471", + "39890246570" + ] + ] + ], + [ + "0x0FBF5E9C8D7cB0AeDd6F02Df0018178099c7d76A", + [ + [ + "265965807485712", + "28823695338" + ], + [ + "266002722071955", + "26954073714" + ], + [ + "282510387165861", + "38293655362" + ] + ] + ], + [ + "0x0FF2FAa2294434919501475CF58117ee89e2729c", + [ + [ + "278875625661366", + "11052458712" + ] + ] + ], + [ + "0x1083D7254E01beCd64C3230612BF20E14010d646", + [ + [ + "61109178571449", + "1" + ], + [ + "260016533868529", + "10000000000" + ], + [ + "271716143041810", + "145150909249" + ], + [ + "306838460449130", + "25206788140" + ], + [ + "390519926441157", + "38976000000" + ], + [ + "586380559477556", + "42000000" + ], + [ + "586652306772245", + "50000000000" + ], + [ + "643044362076002", + "1850039534" + ], + [ + "743340723385888", + "15655978265" + ] + ] + ], + [ + "0x10bf1Dcb5ab7860baB1C3320163C6dddf8DCC0e4", + [ + [ + "235309513003938", + "43811488957" + ], + [ + "284327267036275", + "7622833600000" + ], + [ + "320237788655909", + "1248107035238" + ], + [ + "411790424968430", + "3440214113127" + ] + ] + ], + [ + "0x110dfBb05F447880B9B29206c1140C07372090dc", + [ + [ + "221695023794553", + "25998872322" + ] + ] + ], + [ + "0x113560910CE2258559d7E1B38A4dD308C64d6D6a", + [ + [ + "652886562087019", + "63542442533" + ] + ] + ], + [ + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", + [ + [ + "361234476058040", + "2406000000" + ] + ] + ], + [ + "0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0", + [ + [ + "267806966956864", + "18402625318" + ] + ] + ], + [ + "0x11D86e9F9C2a1cF597b974E50C660316c92215AA", + [ + [ + "574157923216400", + "18405369858" + ] + ] + ], + [ + "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D", + [ + [ + "190956833027662", + "37217588263" + ], + [ + "632405487158023", + "1362130095" + ], + [ + "634781609311398", + "796726164" + ] + ] + ], + [ + "0x120Be1406E6B46dDD7878EDC06069C811f608844", + [ + [ + "495258518671796", + "67814142769" + ], + [ + "585014816613448", + "44928801374" + ] + ] + ], + [ + "0x122de1514670141D4c22e5675010B6D65386a9F6", + [ + [ + "633445875835283", + "88383049000" + ], + [ + "634054370395803", + "5577741477" + ], + [ + "634067673151832", + "56964081161" + ], + [ + "634208127647444", + "49547619666" + ], + [ + "648313723414461", + "6009716700" + ], + [ + "668314224811239", + "15374981070" + ], + [ + "675086678410802", + "69815285464" + ], + [ + "677494138932275", + "17365876628" + ], + [ + "679748272866001", + "2338515960" + ], + [ + "742201769028015", + "48039789791" + ] + ] + ], + [ + "0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b", + [ + [ + "582532990593085", + "9392558210" + ] + ] + ], + [ + "0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303", + [ + [ + "59999867425096", + "354422482014" + ] + ] + ], + [ + "0x1298751f99f2f715178Cc58fB3779C55e91C26bC", + [ + [ + "648537251637637", + "31971947" + ] + ] + ], + [ + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", + [ + [ + "681678394686893", + "7527748761" + ], + [ + "742249933817806", + "375414" + ] + ] + ], + [ + "0x12B9D75389409d119Dd9a96DF1D41092204e8f32", + [ + [ + "31566901757266", + "11663342444" + ] + ] + ], + [ + "0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186", + [ + [ + "564785303930728", + "1165879450" + ] + ] + ], + [ + "0x12f1412fECBf2767D10031f01D772d618594Ea28", + [ + [ + "406186663275278", + "1685616675" + ], + [ + "406188348891953", + "1685577968" + ], + [ + "452060678873257", + "27897692308" + ] + ] + ], + [ + "0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5", + [ + [ + "586069294420889", + "40303600000" + ] + ] + ], + [ + "0x1348EA8E35236AA0769b91ae291e7291117bf15C", + [ + [ + "489737823532", + "616643076" + ] + ] + ], + [ + "0x136e6F25117aF5e5ff5d353dC41A0e91F013D461", + [ + [ + "143944826482554", + "122522870889" + ] + ] + ], + [ + "0x13b1ddb38c80327257Bdcb0e321c834401399967", + [ + [ + "644382876705008", + "2502367588" + ] + ] + ], + [ + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", + [ + [ + "145498413266148", + "42841247573" + ], + [ + "145541254513721", + "42783848059" + ] + ] + ], + [ + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", + [ + [ + "61084721727512", + "2500000000" + ] + ] + ], + [ + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", + [ + [ + "624243091995454", + "203615000" + ], + [ + "634772027987253", + "1040000000" + ], + [ + "646732029674264", + "2437432840" + ], + [ + "672251516338595", + "2387375166" + ], + [ + "672351094760624", + "421577971" + ], + [ + "681986234524446", + "291165686" + ], + [ + "738155444487185", + "20323399607" + ], + [ + "760471037973169", + "1145095488" + ], + [ + "840552181305501", + "1108572912315" + ] + ] + ], + [ + "0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b", + [ + [ + "158530779405767", + "1610099875" + ] + ] + ], + [ + "0x14A9034C185f04a82FdB93926787f713024c1d04", + [ + [ + "859976582989678", + "122609442232" + ] + ] + ], + [ + "0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED", + [ + [ + "335857741482697", + "3482540346" + ], + [ + "335861224023043", + "3782897627" + ] + ] + ], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + [ + [ + "782454543582055", + "64162381017" + ], + [ + "828593773626551", + "157785618045" + ] + ] + ], + [ + "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248", + [ + [ + "41353532120650", + "16752841008" + ], + [ + "41372978028598", + "66903217" + ], + [ + "264270149653239", + "19569741057" + ] + ] + ], + [ + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", + [ + [ + "489713229332", + "24594200" + ], + [ + "33226393240138", + "903943566" + ], + [ + "798286961231309", + "8915991349" + ] + ] + ], + [ + "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", + [ + [ + "646991286880723", + "18" + ] + ] + ], + [ + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", + [ + [ + "611728295781189", + "10622053659968" + ], + [ + "623644302297490", + "529063312964" + ] + ] + ], + [ + "0x15682A522C149029F90108e2792A114E94AB4187", + [ + [ + "201115507781971", + "9954888600" + ], + [ + "201125462670571", + "20006708080" + ] + ] + ], + [ + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", + [ + [ + "12908130692247", + "69000000000" + ], + [ + "27663859276277", + "11430287315" + ], + [ + "151982845144538", + "102043966209" + ], + [ + "202189968549333", + "109329481723" + ], + [ + "216890054194355", + "109550000000" + ], + [ + "221296963314728", + "303606880000" + ], + [ + "223966850287188", + "215672515793" + ], + [ + "250110190299545", + "136745811108" + ], + [ + "259103817552461", + "213600000000" + ], + [ + "326600447749933", + "56701527977" + ], + [ + "331820011408947", + "77550000000" + ], + [ + "337312629850712", + "524000000000" + ], + [ + "532596882341520", + "74008715512" + ], + [ + "550767344271171", + "154323271198" + ], + [ + "550963442752539", + "77710549315" + ], + [ + "551147545041854", + "77448372715" + ], + [ + "580467264306437", + "385627368167" + ], + [ + "588844255968994", + "7190333320" + ], + [ + "588851446302314", + "24416902119" + ], + [ + "591553190653012", + "192654267895" + ], + [ + "643053831916029", + "6077435843" + ], + [ + "643671783551535", + "6908969226" + ], + [ + "643678692520761", + "6721846521" + ], + [ + "643685414367282", + "9539096044" + ] + ] + ], + [ + "0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB", + [ + [ + "272758111777231", + "10810000000" + ] + ] + ], + [ + "0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21", + [ + [ + "227831611065108", + "45528525078" + ] + ] + ], + [ + "0x15e6e23b97D513ac117807bb88366f00fE6d6e17", + [ + [ + "498236313145011", + "437186238884" + ], + [ + "521083859244841", + "1766705104317" + ], + [ + "530421557497402", + "35719340050" + ], + [ + "530478666236974", + "125209382874" + ] + ] + ], + [ + "0x15e83602FDE900DdDdafC07bB67E18F64437b21e", + [ + [ + "264704722565446", + "47834854016" + ] + ] + ], + [ + "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", + [ + [ + "72575956226539", + "357542100000" + ], + [ + "89241731539000", + "1175500000023" + ], + [ + "365422620670212", + "1865083098796" + ], + [ + "389039821567282", + "1434547698166" + ], + [ + "605868357905297", + "390832131713" + ], + [ + "748316175461834", + "2915005876762" + ] + ] + ], + [ + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", + [ + [ + "109546800679552", + "200302309" + ], + [ + "635843453941744", + "920876600" + ], + [ + "635887570024580", + "8122037505" + ], + [ + "646819721059395", + "4169534646" + ], + [ + "705891222986739", + "622068" + ], + [ + "767503022441087", + "48133673" + ] + ] + ], + [ + "0x16785ca8422Cb4008CB9792fcD756ADbEe42878E", + [ + [ + "267302406877711", + "20209787690" + ] + ] + ], + [ + "0x168c6aC0268a29c3C0645917a4510ccd73F4D923", + [ + [ + "672650193633312", + "29376243060" + ] + ] + ], + [ + "0x16942d62E8ad78A9026E41Fab484C265FC90b228", + [ + [ + "160756595271818", + "3293294269" + ] + ] + ], + [ + "0x16b5e68f83684740b2DA481DB60EAb42362884b9", + [ + [ + "267337779284239", + "10134945528" + ] + ] + ], + [ + "0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7", + [ + [ + "222734022200750", + "13846186217" + ], + [ + "223632980545856", + "53707306278" + ], + [ + "261159862360092", + "767049891172" + ], + [ + "274482355441400", + "3457786919155" + ] + ] + ], + [ + "0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb", + [ + [ + "282548680821223", + "19176051379" + ] + ] + ], + [ + "0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f", + [ + [ + "332106534097640", + "325699631169" + ] + ] + ], + [ + "0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5", + [ + [ + "159510980748318", + "69370798116" + ], + [ + "340408059304271", + "57935578436" + ] + ] + ], + [ + "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d", + [ + [ + "859906883476476", + "2259704612" + ], + [ + "859973554233311", + "3028756367" + ], + [ + "860324021288753", + "3253278012" + ], + [ + "916943532304574", + "14518741904" + ] + ] + ], + [ + "0x183be3011809A2D41198e528d2b20Cc91b4C9665", + [ + [ + "213937858611219", + "791280000" + ], + [ + "213938649891219", + "27839621824" + ], + [ + "215796197676279", + "266104007323" + ] + ] + ], + [ + "0x184CbD89E91039E6B1EF94753B3fD41c55e40888", + [ + [ + "768598545236540", + "3341098908" + ] + ] + ], + [ + "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", + [ + [ + "177625575170087", + "338347529204" + ], + [ + "178531672699291", + "206297640000" + ] + ] + ], + [ + "0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE", + [ + [ + "278872415587020", + "5337" + ] + ] + ], + [ + "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", + [ + [ + "768088349260906", + "329449782" + ] + ] + ], + [ + "0x18D467c40568dE5D1Ca2177f576d589c2504dE73", + [ + [ + "767126479253709", + "5921542512" + ] + ] + ], + [ + "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD", + [ + [ + "258082732262740", + "167225426282" + ], + [ + "259604231361612", + "361835231607" + ] + ] + ], + [ + "0x18ED928719A8951729fBD4dbf617B7968D940c7B", + [ + [ + "371379048315869", + "1015130348413" + ], + [ + "375266078664282", + "1033269065963" + ] + ] + ], + [ + "0x1904e56D521aC77B05270caefB55E18033b9b520", + [ + [ + "141486185118672", + "50461870885" + ], + [ + "158936502760340", + "149268238078" + ] + ] + ], + [ + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", + [ + [ + "33215450796739", + "221122" + ], + [ + "167688132852087", + "7229528214" + ], + [ + "319075687721742", + "251763737525" + ], + [ + "325660782915205", + "87903418092" + ], + [ + "337948671929972", + "30560719176" + ], + [ + "406165758407037", + "20904868241" + ], + [ + "484393115998796", + "25643572670" + ], + [ + "507664641811907", + "72403522735" + ], + [ + "523525792584925", + "42093860151" + ], + [ + "531743475414269", + "42662135276" + ], + [ + "565670483245977", + "18978750000" + ], + [ + "567485763782146", + "9489375000" + ], + [ + "567697693157146", + "9489375000" + ], + [ + "570996126104484", + "9489375000" + ], + [ + "571208055479484", + "9489375000" + ], + [ + "579663431710697", + "76688553531" + ], + [ + "589010494454925", + "54681668957" + ], + [ + "606259190037010", + "65298375971" + ], + [ + "624604559266391", + "39404468562" + ], + [ + "645423885109546", + "386055000000" + ], + [ + "647867951570440", + "13807475000" + ] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + [ + "420828345506", + "1377517" + ], + [ + "76028661799786", + "19169818" + ], + [ + "636825631243466", + "17394829" + ], + [ + "649774091964491", + "225355921" + ], + [ + "741725221579960", + "841394646" + ], + [ + "741726881642106", + "1383738266" + ], + [ + "741728265380372", + "1485847896" + ], + [ + "741904037383620", + "10245498" + ], + [ + "741904047629118", + "10465635" + ], + [ + "741904058094753", + "5645699" + ], + [ + "741941609515479", + "92153878" + ], + [ + "741941701669357", + "92867236" + ], + [ + "741949293105425", + "569000000" + ], + [ + "742042342168349", + "435226" + ], + [ + "742491364647261", + "568300000" + ], + [ + "742542583035629", + "114364635" + ], + [ + "742542697400264", + "717824824" + ], + [ + "742543415225088", + "372130074" + ], + [ + "742543787355162", + "270820" + ], + [ + "742543787625982", + "1418750000" + ], + [ + "742545206375982", + "1258079286" + ], + [ + "742546464455268", + "549510" + ], + [ + "742546465004778", + "10795914" + ], + [ + "742546475800692", + "13800216" + ], + [ + "742559245319507", + "23574" + ], + [ + "742559245343081", + "1417000000" + ], + [ + "743356379364153", + "5992389" + ], + [ + "743356385356542", + "3305213" + ], + [ + "743713785812675", + "470214653" + ], + [ + "743714256027328", + "748372634" + ], + [ + "743715004399962", + "227807703" + ], + [ + "743722309717315", + "620891431" + ], + [ + "743722930608746", + "811945" + ], + [ + "744405511195504", + "26480430" + ], + [ + "744405537675934", + "28404548" + ], + [ + "744405566080482", + "26650792" + ], + [ + "744732788119609", + "1401250000" + ], + [ + "744762226700609", + "1401250000" + ], + [ + "744763627950609", + "1402000000" + ], + [ + "759761297068193", + "383411" + ], + [ + "759793466361829", + "819071019" + ], + [ + "759820898656942", + "80837003" + ], + [ + "759821429891748", + "342360149" + ], + [ + "759844901514523", + "53934662" + ], + [ + "759845712799584", + "53840934" + ], + [ + "759845970911102", + "87772583" + ], + [ + "759846649887836", + "304771266" + ], + [ + "759848400175498", + "195479514" + ], + [ + "759849907168404", + "16253699" + ], + [ + "759864586657374", + "4116617" + ], + [ + "759864590773991", + "5213812" + ], + [ + "759864595987803", + "5976553" + ], + [ + "759864601964356", + "21553814" + ], + [ + "759864757676067", + "33837399" + ], + [ + "759864791513466", + "2739149" + ], + [ + "759865147227268", + "42017555" + ], + [ + "759865263825653", + "45526410" + ], + [ + "759865449369451", + "53414936" + ], + [ + "759865544782499", + "993492" + ], + [ + "759935125236365", + "45905339" + ], + [ + "759940012120851", + "23725468" + ], + [ + "759940393217964", + "38630505" + ], + [ + "759940503415698", + "26325085" + ], + [ + "759940595592986", + "107661120" + ], + [ + "759940800175842", + "40606663" + ], + [ + "759940840782505", + "24689186" + ], + [ + "759940865471691", + "1297000000" + ], + [ + "759942162471691", + "1897738286" + ], + [ + "759944060209977", + "241078908" + ], + [ + "759944450213180", + "36627516" + ], + [ + "759944486840696", + "37991124" + ], + [ + "759944619765922", + "11358356" + ], + [ + "759944631124278", + "51906" + ], + [ + "759944631617600", + "33378" + ], + [ + "759944631650978", + "59927806" + ], + [ + "759944691578784", + "129787486" + ], + [ + "759944821366270", + "25686" + ], + [ + "759944821391956", + "68819" + ], + [ + "759944821460775", + "1560798" + ], + [ + "759944823021573", + "53380815" + ], + [ + "759944963133585", + "87037848" + ], + [ + "759945050171433", + "87607044" + ], + [ + "759945137778477", + "87055460" + ], + [ + "759945224833937", + "12027360" + ], + [ + "759945236898415", + "64214208" + ], + [ + "759945301112623", + "91379524" + ], + [ + "759945392492147", + "42108896" + ], + [ + "759945434601043", + "42970660" + ], + [ + "759945477571703", + "38516379" + ], + [ + "759945516088082", + "36709909" + ], + [ + "759945552797991", + "37022875" + ], + [ + "759945589820866", + "37059712" + ], + [ + "759945626880578", + "37098116" + ], + [ + "759945697126264", + "9283973" + ], + [ + "759945706410237", + "174300" + ], + [ + "759945706584537", + "18717450" + ], + [ + "759945725301987", + "136593205" + ], + [ + "759945861895192", + "6795443" + ], + [ + "759945868690635", + "7586684" + ], + [ + "759945876277319", + "20897127" + ], + [ + "759945897174446", + "20964956" + ], + [ + "759945918139402", + "17764676" + ], + [ + "759945935904078", + "19702291" + ], + [ + "759945955606369", + "17689777" + ], + [ + "759945973296146", + "19315364" + ], + [ + "759945992611510", + "19419665" + ], + [ + "759946012031175", + "19518970" + ], + [ + "759946031550145", + "19798295" + ], + [ + "759946051348440", + "38327918" + ], + [ + "759946089676358", + "1264250000" + ], + [ + "759967002196227", + "1067960" + ], + [ + "759967003264187", + "5797992" + ], + [ + "759967009062179", + "5871934" + ], + [ + "759967014934113", + "20249217" + ], + [ + "759967035183330", + "191466067" + ], + [ + "759967226649397", + "89244217" + ], + [ + "759967432417085", + "84963582" + ], + [ + "759967517380667", + "73240421" + ], + [ + "759967590621088", + "19970712" + ], + [ + "759967610591800", + "40621903" + ], + [ + "759967651213703", + "53101794" + ], + [ + "759967704315497", + "53110612" + ], + [ + "759967757426109", + "53161758" + ], + [ + "759967810587867", + "28296198" + ], + [ + "759967838884065", + "86512793" + ], + [ + "759967925396858", + "87139341" + ], + [ + "759968012536199", + "87943134" + ], + [ + "759968100479333", + "80701850" + ], + [ + "759968181181183", + "34810751" + ], + [ + "759968215991934", + "34868207" + ], + [ + "759968250860141", + "52891473" + ], + [ + "759968477551165", + "87498268" + ], + [ + "759968622494844", + "84942957" + ], + [ + "759968707437801", + "85247514" + ], + [ + "759968792685315", + "77422809" + ], + [ + "759968870108124", + "79919576" + ], + [ + "759968950027700", + "80148595" + ], + [ + "759969030176295", + "53806658" + ], + [ + "759969083982953", + "11106068" + ], + [ + "759969095089021", + "754844" + ], + [ + "759969095843865", + "86600675" + ], + [ + "759969268879963", + "44248597" + ], + [ + "759969391981569", + "85630651" + ], + [ + "759969477612220", + "53709030" + ], + [ + "759969531321250", + "88939198" + ], + [ + "759969620260448", + "178428925" + ], + [ + "759969798689373", + "123574577" + ], + [ + "759970183422288", + "79928309" + ], + [ + "759970263350597", + "63434690" + ], + [ + "759970326785287", + "209399790" + ], + [ + "759970536185077", + "96930960" + ], + [ + "759970633116037", + "23891260" + ], + [ + "759970657007297", + "2958794" + ], + [ + "759970667003745", + "64376093" + ], + [ + "759970731379838", + "64736772" + ], + [ + "759970796116610", + "35583363" + ], + [ + "759970831699973", + "28787919" + ], + [ + "759970860487892", + "19771091" + ], + [ + "759970880258983", + "15686626" + ], + [ + "759970984286242", + "87374833" + ], + [ + "759971071661075", + "100272607" + ], + [ + "759971275765356", + "104013769" + ], + [ + "759971379779125", + "104148749" + ], + [ + "759971483927874", + "104457385" + ], + [ + "759971588385259", + "39466456" + ], + [ + "759971627851715", + "54459743" + ], + [ + "759971682311458", + "54613470" + ], + [ + "759971736924928", + "55455079" + ], + [ + "759972161919679", + "54726591" + ], + [ + "759972216646270", + "53864309" + ], + [ + "760353418325910", + "21307875" + ], + [ + "760353439633785", + "2581143" + ], + [ + "760353442214928", + "935137" + ], + [ + "760353443150065", + "890707" + ], + [ + "760353444040772", + "934897" + ], + [ + "760353444975669", + "1008171" + ], + [ + "760353445983840", + "940412" + ], + [ + "760353446924252", + "444260593" + ], + [ + "760353891184845", + "18018938" + ], + [ + "760353909203783", + "53690506" + ], + [ + "760353962894289", + "22923031" + ], + [ + "760353985817320", + "21080639" + ], + [ + "760354006897959", + "19195962" + ], + [ + "760354026093921", + "45460514" + ], + [ + "760354071554435", + "45612372" + ], + [ + "760354117166807", + "36974408" + ], + [ + "760354154141215", + "19923401" + ], + [ + "760354174064616", + "17275264" + ], + [ + "760354191339880", + "696496" + ], + [ + "760354192036376", + "1303460" + ], + [ + "760354193339836", + "2298346" + ], + [ + "760354195638182", + "2606436" + ], + [ + "760354204355953", + "470384" + ], + [ + "760354204826337", + "11175759" + ], + [ + "760354216002096", + "11300466" + ], + [ + "760354227302562", + "11536310" + ], + [ + "760357512160486", + "53864562" + ], + [ + "760357566025048", + "53933512" + ], + [ + "760357619958560", + "53946887" + ], + [ + "760357673905447", + "54141970" + ], + [ + "760357728047417", + "69340215" + ], + [ + "760357797387632", + "70550823" + ], + [ + "760357867938455", + "70867493" + ], + [ + "760357938805948", + "24481635" + ], + [ + "760358015808387", + "53846437" + ], + [ + "760358069654824", + "54081133" + ], + [ + "760470665658443", + "785942" + ], + [ + "760470666444385", + "1144304" + ], + [ + "760470667588689", + "1310135" + ], + [ + "761807540280731", + "160545" + ], + [ + "761807540441276", + "429708" + ], + [ + "761807540870984", + "618377" + ], + [ + "761807541489361", + "835669" + ], + [ + "761808254646701", + "457637" + ], + [ + "761818940422306", + "984887" + ], + [ + "761857611272333", + "28944037" + ], + [ + "761857640216370", + "22956002" + ], + [ + "761857663172372", + "23015051" + ], + [ + "761857686187423", + "17079412" + ], + [ + "761857703266835", + "34787792" + ], + [ + "761857738054627", + "13476875" + ], + [ + "761857751531502", + "13484900" + ], + [ + "761857765016402", + "27660968" + ], + [ + "761857792677370", + "43935728" + ], + [ + "761857836613098", + "53726319" + ], + [ + "761857890339417", + "31567337" + ], + [ + "761857921906754", + "19442054" + ], + [ + "761857941348808", + "27655195" + ], + [ + "761857969004003", + "27685781" + ], + [ + "761857996689784", + "14517084" + ], + [ + "761861153261453", + "17618940" + ], + [ + "761861170880393", + "52708112" + ], + [ + "761861223588505", + "1133750000" + ], + [ + "762295064062834", + "111320920" + ], + [ + "762295175383754", + "53936630" + ], + [ + "762295229320384", + "54010885" + ], + [ + "762295283331269", + "54033702" + ], + [ + "762295337364971", + "54054047" + ], + [ + "762295391419018", + "54159010" + ], + [ + "762295445578028", + "53483677" + ], + [ + "762295580014262", + "86989838" + ], + [ + "762295667004100", + "29618432" + ], + [ + "762295696622532", + "53514750" + ], + [ + "762295750137282", + "79440408" + ], + [ + "762295829577690", + "88554558" + ], + [ + "762839409673019", + "1124000000" + ], + [ + "762926916547751", + "98431377" + ], + [ + "762927014979128", + "15784358" + ], + [ + "762927030763486", + "1123500000" + ], + [ + "762940872607458", + "54177313" + ], + [ + "762940926784771", + "55156263" + ], + [ + "762941003155084", + "52319596" + ], + [ + "762941055474680", + "156457506" + ], + [ + "762941211932186", + "53517184" + ], + [ + "762941265449370", + "53566454" + ], + [ + "762941319015824", + "54362634" + ], + [ + "762941435120911", + "100238373" + ], + [ + "762941535359284", + "2889658" + ], + [ + "762941538248942", + "46035569" + ], + [ + "763454272407770", + "3194591" + ], + [ + "763707900610993", + "1115750000" + ], + [ + "763792492493475", + "1116000000" + ], + [ + "763803297529274", + "53478200" + ], + [ + "763803351007474", + "54572785" + ], + [ + "763876749529752", + "46564085" + ], + [ + "763876796093837", + "53551433" + ], + [ + "763876849645270", + "37834720" + ], + [ + "763876887479990", + "390583" + ], + [ + "763876887870573", + "55102196" + ], + [ + "763876942972769", + "1578152" + ], + [ + "763876946822805", + "18853190" + ], + [ + "763876965675995", + "87811" + ], + [ + "763876965763806", + "46267543" + ], + [ + "763877012031349", + "59141147" + ], + [ + "763877089726413", + "53473182" + ], + [ + "763877143199595", + "53513899" + ], + [ + "763877305809564", + "9728992" + ], + [ + "763877315538556", + "28373" + ], + [ + "763877315566929", + "65545" + ], + [ + "763877315632474", + "92711" + ], + [ + "763877315725185", + "105827" + ], + [ + "763877315831012", + "153650" + ], + [ + "763877315984662", + "11924506" + ], + [ + "763877327909168", + "19203818" + ], + [ + "763877454434453", + "2130383" + ], + [ + "763877456564836", + "43889485" + ], + [ + "763877500454321", + "53637818" + ], + [ + "763877554092139", + "4992987" + ], + [ + "763877559085126", + "78649" + ], + [ + "763877561341934", + "53679679" + ], + [ + "763877615021613", + "53699711" + ], + [ + "763877668721324", + "2881442" + ], + [ + "763877671602766", + "43770152" + ], + [ + "763877715372918", + "60410828" + ], + [ + "763877775783746", + "36230820" + ], + [ + "763877812014566", + "71702191" + ], + [ + "763879378249844", + "7153056" + ], + [ + "763879385402900", + "7227368" + ], + [ + "763879392630268", + "11477736" + ], + [ + "763879404108004", + "10660055" + ], + [ + "763879414768059", + "11118127" + ], + [ + "763898344398867", + "63786254" + ], + [ + "763898408185121", + "64002031" + ], + [ + "763898506920948", + "861786" + ], + [ + "763898507782734", + "10162644" + ], + [ + "763899495538368", + "9243915" + ], + [ + "763899504782283", + "37968961" + ], + [ + "763904604592937", + "29092593" + ], + [ + "763904633685530", + "17984979" + ], + [ + "763904651670509", + "18018550" + ], + [ + "763904669689059", + "18842007" + ], + [ + "763904688531066", + "16688868" + ], + [ + "763904705219934", + "15727180" + ], + [ + "763904720947114", + "15825494" + ], + [ + "763904736772608", + "17883715" + ], + [ + "763904754656323", + "12528228" + ], + [ + "763904767184551", + "1918749" + ], + [ + "763904769103300", + "10530035" + ], + [ + "763904779633335", + "10728257" + ], + [ + "763904790361592", + "4605084" + ], + [ + "763904794966676", + "8970126" + ], + [ + "763910595276884", + "8829644" + ], + [ + "763910604106528", + "3311197" + ], + [ + "763910607417725", + "12163802" + ], + [ + "763910619581527", + "12428237" + ], + [ + "763910632009764", + "10056575" + ], + [ + "763910642066339", + "73796314" + ], + [ + "763938649705538", + "15087847" + ], + [ + "763944448544389", + "15498278" + ], + [ + "763944464042667", + "24830243" + ], + [ + "763944488872910", + "24944523" + ], + [ + "763953533706671", + "11007680" + ], + [ + "763953544714351", + "11282748" + ], + [ + "763953555997099", + "11335662" + ], + [ + "763953567332761", + "11465066" + ], + [ + "763953578797827", + "11935751" + ], + [ + "763953590733578", + "12877546" + ], + [ + "763953603611124", + "12886748" + ], + [ + "763953616497872", + "7982235" + ], + [ + "763953624480107", + "9765854" + ], + [ + "763953634245961", + "9797075" + ], + [ + "763953644043036", + "1044500000" + ], + [ + "763975806959978", + "85094056" + ], + [ + "763975892054034", + "85627588" + ], + [ + "763977822667370", + "3016979" + ], + [ + "763977825684349", + "3091465" + ], + [ + "763977828775814", + "557388194" + ], + [ + "763978386164008", + "8620088" + ], + [ + "763978394784096", + "29342107" + ], + [ + "763978424126203", + "9543362" + ], + [ + "763978433669565", + "9611296" + ], + [ + "763978443280861", + "9636433" + ], + [ + "763978452917294", + "8046683" + ], + [ + "763978460963977", + "10828154" + ], + [ + "763978471792131", + "7543534" + ], + [ + "763978479335665", + "4689652" + ], + [ + "763978484025317", + "12897667" + ], + [ + "763978496922984", + "8815547" + ], + [ + "763978514586346", + "9143544" + ], + [ + "763978523729890", + "9413342" + ], + [ + "763978533143232", + "9416885" + ], + [ + "763978542560117", + "10373808" + ], + [ + "763978552933925", + "19789932" + ], + [ + "763981005309782", + "8883084" + ], + [ + "763981014192866", + "8984999" + ], + [ + "763981023177865", + "9076772" + ], + [ + "763983162727275", + "10372838" + ], + [ + "763983173100113", + "901279" + ], + [ + "763983174001392", + "11304378" + ], + [ + "763983185305770", + "11337518" + ], + [ + "763983207512362", + "9837030" + ], + [ + "763983217349392", + "1100829" + ], + [ + "763983218450221", + "66658" + ], + [ + "763983218516879", + "73073" + ], + [ + "763983218589952", + "414078" + ], + [ + "763983219004030", + "16583629" + ], + [ + "763983235587659", + "75873" + ], + [ + "763983235663532", + "104758" + ], + [ + "763983235768290", + "319760" + ], + [ + "763983236088050", + "347778" + ], + [ + "763983305487564", + "10457152" + ], + [ + "763983315944716", + "10556364" + ], + [ + "763983326501080", + "8290697" + ], + [ + "763983334791777", + "5644455" + ], + [ + "763983340436232", + "7945168" + ], + [ + "763983348381400", + "13385894" + ], + [ + "763983361767294", + "45138194" + ], + [ + "763983406905488", + "1866587" + ], + [ + "763983408772075", + "9980195" + ], + [ + "763983418752270", + "5750227" + ], + [ + "763983424502497", + "9795651" + ], + [ + "763983444147323", + "10906649" + ], + [ + "763983455053972", + "11996728" + ], + [ + "763983467050700", + "8506342" + ], + [ + "763985928672040", + "10937512" + ], + [ + "763985939609552", + "11006773" + ], + [ + "763985950616325", + "328433" + ], + [ + "763985950944758", + "10334991" + ], + [ + "764056285307640", + "9063092" + ], + [ + "764056313282603", + "12814935" + ], + [ + "764056326097538", + "13040915" + ], + [ + "764056855356215", + "8019575" + ], + [ + "764056863375790", + "12804398" + ], + [ + "764056876180188", + "14241010" + ], + [ + "764056890421198", + "10969416" + ], + [ + "764056901390614", + "2177420" + ], + [ + "764056903568034", + "9204085" + ], + [ + "764056912772119", + "9213207" + ], + [ + "764058367111510", + "11163969" + ], + [ + "764058378275479", + "11300738" + ], + [ + "764058389576217", + "5496270" + ], + [ + "764058395072487", + "361195" + ], + [ + "764058395433682", + "772104" + ], + [ + "764058396205786", + "696608867" + ], + [ + "764059092814653", + "9050379" + ], + [ + "764059101865032", + "4195172" + ], + [ + "764059106060204", + "11535858" + ], + [ + "764059117596062", + "255180" + ], + [ + "764059117851242", + "8969278" + ], + [ + "764059126820520", + "9303793" + ], + [ + "764059136124313", + "9999166" + ], + [ + "764059146123479", + "10009538" + ], + [ + "764059156133017", + "1216684" + ], + [ + "764059157349701", + "33393007" + ], + [ + "764059190742708", + "735377" + ], + [ + "764059191478085", + "10266010" + ], + [ + "764060081853851", + "8204048" + ], + [ + "764060090057899", + "9732642" + ], + [ + "764060099790541", + "10150423" + ], + [ + "764100306041728", + "17982514" + ], + [ + "764100324024242", + "18573856" + ], + [ + "764111950239427", + "944000000" + ], + [ + "764113461776720", + "6235875" + ], + [ + "764113468012595", + "8992681" + ], + [ + "764113477005276", + "943500000" + ], + [ + "764114420505276", + "943500000" + ], + [ + "764115364005276", + "35299689" + ], + [ + "764115399304965", + "6707115" + ], + [ + "764115406012080", + "10253563" + ], + [ + "764115416265643", + "52697117" + ], + [ + "764115468962760", + "940750000" + ], + [ + "764331262748162", + "945750000" + ], + [ + "764438000829295", + "946000000" + ], + [ + "764451708497435", + "10007361" + ], + [ + "764451718504796", + "10260665" + ], + [ + "764451728765461", + "10443811" + ], + [ + "764451739209272", + "10884086" + ], + [ + "764451750093358", + "895341231" + ], + [ + "764452645434589", + "3190831" + ], + [ + "764452656731669", + "8125848" + ], + [ + "764452664857517", + "8140742" + ], + [ + "764452672998259", + "8207851" + ], + [ + "764452681206110", + "5437824" + ], + [ + "764452686643934", + "1634581" + ], + [ + "764452688278515", + "30412" + ], + [ + "764452688308927", + "6680863" + ], + [ + "764452694989790", + "1390995" + ], + [ + "764452696380785", + "6703924" + ], + [ + "764452703084709", + "4836310" + ], + [ + "764452707921019", + "2347531" + ], + [ + "764452710268550", + "2444950" + ], + [ + "764452712713500", + "2595517" + ], + [ + "764452715309017", + "5693285" + ], + [ + "764452721002302", + "7659096" + ], + [ + "764452735085521", + "1617109" + ], + [ + "764452736702630", + "901875" + ], + [ + "764452737604505", + "8786495" + ], + [ + "764452746391000", + "8796994" + ], + [ + "764452755187994", + "483474928" + ], + [ + "764453238662922", + "9945879" + ], + [ + "764453248608801", + "9384752" + ], + [ + "764453257993553", + "18030442" + ], + [ + "764453276023995", + "18998861" + ], + [ + "764453295022856", + "19005242" + ], + [ + "764454200747569", + "8013962" + ], + [ + "764454208761531", + "344483" + ], + [ + "764454209106014", + "3844352" + ], + [ + "764454213921411", + "8933515" + ], + [ + "764454222854926", + "9498746" + ], + [ + "764454232353672", + "9503988" + ], + [ + "764454241857660", + "10385991" + ], + [ + "764454252243651", + "10467439" + ], + [ + "764454262711090", + "9988705" + ], + [ + "764454272699795", + "8980636" + ], + [ + "764454281680431", + "9308598" + ], + [ + "764454290989029", + "9335269" + ], + [ + "764454300324298", + "7550863" + ], + [ + "764454307875161", + "4906079" + ], + [ + "764454312781240", + "8991244" + ], + [ + "764454321772484", + "12424176" + ], + [ + "764454334196660", + "4683059" + ], + [ + "764454338879719", + "808524" + ], + [ + "764454339688243", + "16696896" + ], + [ + "764454356385139", + "188453" + ], + [ + "764454356573592", + "244246" + ], + [ + "764454356817838", + "399227" + ], + [ + "764454357217065", + "428167" + ], + [ + "764454357645232", + "436981" + ], + [ + "764454358082213", + "492999" + ], + [ + "764454358575212", + "591362" + ], + [ + "764457158712640", + "9556834" + ], + [ + "766112773148016", + "905500000" + ], + [ + "767983184669679", + "52737476" + ], + [ + "767983237407155", + "53575704" + ], + [ + "767983290982859", + "53768852" + ], + [ + "767983344751711", + "55352725" + ], + [ + "767983400104436", + "47061647" + ], + [ + "767983447166083", + "1110500000" + ], + [ + "767984557666083", + "88333125" + ], + [ + "767984645999208", + "129427752" + ], + [ + "768003822182998", + "1121250000" + ], + [ + "768004943433356", + "78186024" + ], + [ + "768005021619380", + "54621494" + ], + [ + "768005076240874", + "65591706" + ], + [ + "768005141832580", + "81397820" + ], + [ + "768005223230400", + "89638206" + ], + [ + "768005312868606", + "88216460" + ], + [ + "768005401085066", + "85936196" + ], + [ + "768005487021262", + "88956801" + ], + [ + "768006108101322", + "88031169" + ], + [ + "768006196132491", + "88045520" + ], + [ + "768006284178011", + "88084070" + ], + [ + "768006372262081", + "88157182" + ], + [ + "768006460420859", + "1111500000" + ], + [ + "768055033287471", + "1118250000" + ], + [ + "768056151539394", + "128513841" + ], + [ + "768056280053235", + "127000562" + ], + [ + "768056407053797", + "132748869" + ], + [ + "768056539802666", + "124378256" + ], + [ + "768056664180922", + "119219224" + ], + [ + "768056783400146", + "120768946" + ], + [ + "768056904169092", + "128280239" + ], + [ + "768057160925595", + "129567688" + ], + [ + "768057290493283", + "129626968" + ], + [ + "768057420120251", + "131641826" + ], + [ + "768057551762077", + "132785034" + ], + [ + "768057684547111", + "149829249" + ], + [ + "768058524884871", + "83536024" + ], + [ + "768058608420895", + "87311253" + ], + [ + "768058695732148", + "88832233" + ], + [ + "768058784564381", + "86928993" + ], + [ + "768058871493374", + "86484069" + ], + [ + "768058957977443", + "87016874" + ], + [ + "768059044994317", + "88333175" + ], + [ + "768059133327492", + "91669405" + ], + [ + "768059224996897", + "87910416" + ], + [ + "768059312907313", + "87683732" + ], + [ + "768059400591045", + "86467952" + ], + [ + "768059487058997", + "86594113" + ], + [ + "768059573653110", + "86619651" + ], + [ + "768059660272761", + "87730086" + ], + [ + "768059748002847", + "86397690" + ], + [ + "768059834400537", + "86441349" + ], + [ + "768059920841886", + "88343548" + ], + [ + "768060009185434", + "88187255" + ], + [ + "768060097372689", + "123265068" + ], + [ + "845854664288223", + "3559343229" + ], + [ + "845858223631452", + "4963424782" + ], + [ + "845863187056234", + "3248663591" + ], + [ + "845866435719825", + "1723984401" + ], + [ + "859627528207302", + "22832250" + ], + [ + "859758703320142", + "1614400" + ], + [ + "859839403331480", + "161450" + ], + [ + "859839403492930", + "169491" + ], + [ + "859839403662421", + "1613900" + ], + [ + "859839405276321", + "19836791" + ], + [ + "859839425113112", + "20285472" + ], + [ + "859839445398584", + "1613300" + ], + [ + "859839447011884", + "1695263" + ], + [ + "859839448707147", + "1781388" + ], + [ + "859839450488535", + "9760866" + ], + [ + "859903168498760", + "1025355734" + ], + [ + "859905004526751", + "325809885" + ], + [ + "859909143181247", + "169472" + ], + [ + "860099248353783", + "168836" + ], + [ + "860099248522619", + "178837" + ], + [ + "860099248701456", + "189471" + ], + [ + "860106007379004", + "158770" + ], + [ + "860106007537774", + "168264" + ], + [ + "860106018269867", + "178231" + ], + [ + "860106018448098", + "188829" + ] + ] + ], + [ + "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", + [ + [ + "212720660289097", + "405214898001" + ] + ] + ], + [ + "0x19CB3CfB44B052077E2c4dF7095900ce0b634056", + [ + [ + "76126854262565", + "9614320026" + ] + ] + ], + [ + "0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C", + [ + [ + "720950939776219", + "15067225270" + ] + ] + ], + [ + "0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76", + [ + [ + "429681884991709", + "16666666666" + ] + ] + ], + [ + "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", + [ + [ + "643132812995983", + "40000000000" + ], + [ + "643906455631587", + "3366190225" + ] + ] + ], + [ + "0x1a368885B299D51E477c2737E0330aB35529154a", + [ + [ + "318979377505709", + "96310216033" + ] + ] + ], + [ + "0x1a5280B471024622714DEc80344E2AC2823fd841", + [ + [ + "343556046384069", + "24488082083" + ] + ] + ], + [ + "0x1aA6F8B965d692c8162131F98219a6986DD10A83", + [ + [ + "430080127673356", + "15368916223" + ] + ] + ], + [ + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", + [ + [ + "76197765704929", + "4483509093" + ], + [ + "624723028217150", + "131393988394" + ], + [ + "635895692062085", + "9135365741" + ], + [ + "636308866306005", + "8420726212" + ], + [ + "639647047295076", + "24523740645" + ] + ] + ], + [ + "0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b", + [ + [ + "170254522172883", + "17764281739" + ] + ] + ], + [ + "0x1aD66517368179738f521AF62E1acFe8816c22a4", + [ + [ + "38725058902818", + "4046506513" + ], + [ + "634197083749312", + "3652730115" + ], + [ + "634438435405713", + "6190991388" + ], + [ + "639424921077105", + "10000000000" + ], + [ + "640886662352708", + "43494915041" + ], + [ + "680807511563555", + "7644571244" + ] + ] + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + [ + [ + "153700721920471", + "531500000" + ], + [ + "220191598626128", + "187950000" + ], + [ + "229939110243935", + "6322304733" + ], + [ + "229945432548668", + "8363898233" + ], + [ + "279068417135852", + "3937395000" + ], + [ + "279072354530852", + "5849480200" + ] + ] + ], + [ + "0x1B89a08D82079337740e1cef68c571069725306e", + [ + [ + "87019591255367", + "29419590331" + ] + ] + ], + [ + "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF", + [ + [ + "919414419371700", + "44905425998" + ] + ] + ], + [ + "0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E", + [ + [ + "12977130692247", + "21105757579" + ] + ] + ], + [ + "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", + [ + [ + "45739702462830", + "16499109105" + ], + [ + "87114876540897", + "188352182040" + ], + [ + "250563494637659", + "51857289010" + ], + [ + "267398540448510", + "101208590466" + ], + [ + "267499749038976", + "70064409829" + ], + [ + "573375993529429", + "36792124887" + ], + [ + "870607247677965", + "2137555078286" + ] + ] + ], + [ + "0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4", + [ + [ + "353495072528037", + "320790778183" + ] + ] + ], + [ + "0x1d18B7E78a9a92a9DF8a1e3546b4B1fB825e012A", + [ + [ + "469496367277393", + "558419996300" + ] + ] + ], + [ + "0x1d264de8264a506Ed0E88E5E092131915913Ed17", + [ + [ + "649244006768867", + "4669501379" + ], + [ + "796038682086854", + "84590167390" + ] + ] + ], + [ + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", + [ + [ + "781813701764341", + "29578830513" + ] + ] + ], + [ + "0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E", + [ + [ + "327484450418198", + "123019710377" + ] + ] + ], + [ + "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714", + [ + [ + "159508675748318", + "2305000000" + ], + [ + "159580351546434", + "4610000000" + ] + ] + ], + [ + "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974", + [ + [ + "72498640963293", + "15344851129" + ], + [ + "254221973427847", + "134379000000" + ], + [ + "531786137549545", + "52512241871" + ] + ] + ], + [ + "0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca", + [ + [ + "256709488442753", + "11960421970" + ] + ] + ], + [ + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", + [ + [ + "433393784368", + "736682080" + ], + [ + "160699226852463", + "19581291457" + ], + [ + "401540811995625", + "5331732217" + ] + ] + ], + [ + "0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db", + [ + [ + "598199451554202", + "29744016905" + ] + ] + ], + [ + "0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b", + [ + [ + "32945625517253", + "161247227588" + ] + ] + ], + [ + "0x1FA517A273cC7e4305843DD136c09c8c370814be", + [ + [ + "408207040623818", + "67876110491" + ] + ] + ], + [ + "0x1faD27B543326E66185b7D1519C4E3d234D54A9C", + [ + [ + "3801746560076", + "1000000000" + ], + [ + "38060755842898", + "10000000000" + ] + ] + ], + [ + "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb", + [ + [ + "331711562300586", + "14540205488" + ], + [ + "336163982041551", + "11093799305" + ], + [ + "336942217514274", + "6716741513" + ], + [ + "338375415070333", + "12611715224" + ] + ] + ], + [ + "0x201ad214891136FC37750029A14008D99B9ab814", + [ + [ + "273830634179033", + "108850000718" + ] + ] + ], + [ + "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e", + [ + [ + "655813561952324", + "110759009" + ], + [ + "742491932947261", + "50650088368" + ] + ] + ], + [ + "0x2032d6Fa962f05b05a648d0492936DCf879b0646", + [ + [ + "167642878992324", + "21180650802" + ], + [ + "188809726173585", + "7159870568" + ], + [ + "189165629280356", + "22812490844" + ], + [ + "220191786590698", + "12020746267" + ] + ] + ], + [ + "0x20627f29B05c9ecd191542677492213aA51d9A61", + [ + [ + "576941170319018", + "76781922750" + ], + [ + "577603149817417", + "46559625597" + ], + [ + "586328662020556", + "51897457000" + ], + [ + "592657295032714", + "378309194016" + ], + [ + "595732510292240", + "90858470270" + ], + [ + "595932363187550", + "903793388372" + ], + [ + "596836156575922", + "629685276600" + ], + [ + "597465841852522", + "464850000000" + ], + [ + "599486968121300", + "259777962939" + ], + [ + "599746746084239", + "330494092479" + ], + [ + "601738494764168", + "166149576292" + ] + ] + ], + [ + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", + [ + [ + "109584713085687", + "1273885350" + ], + [ + "634819675697276", + "2308620655" + ] + ] + ], + [ + "0x214e02A853dCAd01B2ab341e7827a656655A1B81", + [ + [ + "904990242139002", + "3425838650831" + ] + ] + ], + [ + "0x215F97a79287BE4192990FCc4555F7a102a7D3DE", + [ + [ + "257934797532327", + "19124814552" + ] + ] + ], + [ + "0x21754dF1E545e836be345B0F56Cde2D8419a21B2", + [ + [ + "465327248177676", + "39368282950" + ] + ] + ], + [ + "0x219312542D51cae86E47a1A18585f0bac6E6867B", + [ + [ + "92976132590563", + "20088923958" + ] + ] + ], + [ + "0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933", + [ + [ + "582395940698044", + "17931960176" + ] + ] + ], + [ + "0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa", + [ + [ + "637116380310734", + "3895753147" + ] + ] + ], + [ + "0x21D4Df25397446300C02338f334d0D219ABcc9C3", + [ + [ + "470380807066345", + "411624219865" + ], + [ + "470792431286210", + "37602900897" + ], + [ + "495349607400223", + "382964380420" + ], + [ + "495732571780643", + "253709415566" + ], + [ + "534876703831999", + "93233987544" + ], + [ + "552735179318713", + "72606632304" + ], + [ + "552823996796902", + "637060677585" + ], + [ + "573166828849535", + "173997222406" + ] + ] + ], + [ + "0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A", + [ + [ + "376332551455167", + "6429254333" + ] + ] + ], + [ + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", + [ + [ + "376477661392189", + "8428341425" + ], + [ + "681711033814749", + "10245080960" + ], + [ + "726097732002229", + "14602599487" + ], + [ + "859260757600987", + "16570064186" + ] + ] + ], + [ + "0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6", + [ + [ + "33126339744834", + "7" + ] + ] + ], + [ + "0x220c12268c6f1744553f456c3BF161bd8b423662", + [ + [ + "250615351926669", + "14754910654" + ] + ] + ], + [ + "0x224e69025A2f705C8f31EFB6694398f8Fd09ac5C", + [ + [ + "767578297685072", + "595189970" + ] + ] + ], + [ + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", + [ + [ + "634989491135365", + "93881590000" + ], + [ + "635261553552881", + "89275000000" + ] + ] + ], + [ + "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", + [ + [ + "141930229169149", + "14065000000" + ], + [ + "626058811458059", + "125719249019" + ] + ] + ], + [ + "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", + [ + [ + "649732276779694", + "44876189" + ] + ] + ], + [ + "0x2342670674C652157c1282d7E7F1bD7460EFa9E2", + [ + [ + "358035739103727", + "19514795641" + ] + ] + ], + [ + "0x234831d4CFF3B7027E0424e23F019657005635e1", + [ + [ + "767502220600152", + "229602422" + ] + ] + ], + [ + "0x2352FDd9A457c549D822451B4cD43203580a29d1", + [ + [ + "299781959169774", + "468725307806" + ] + ] + ], + [ + "0x23b7413b721AB75FE7024E7782F9EdcE053f220C", + [ + [ + "606324488412981", + "1036783406" + ] + ] + ], + [ + "0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17", + [ + [ + "326225367529391", + "17549000000" + ] + ] + ], + [ + "0x23cAea94eB856767cf71a30824d72Ed5B93aA365", + [ + [ + "915418302913680", + "238900000000" + ] + ] + ], + [ + "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6", + [ + [ + "201837808921554", + "262588887949" + ], + [ + "202394225136865", + "268265834079" + ], + [ + "220191786576128", + "14570" + ] + ] + ], + [ + "0x24367F22624f739D7F8AB2976012FbDaB8dd33f4", + [ + [ + "26768674950508", + "427568784000" + ] + ] + ], + [ + "0x2437Db820DE92d8DD64B524954fA0D160767c471", + [ + [ + "344730632844876", + "14480118767" + ] + ] + ], + [ + "0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe", + [ + [ + "573460544800018", + "59926244178" + ] + ] + ], + [ + "0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3", + [ + [ + "919026220879929", + "1124719481" + ] + ] + ], + [ + "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2", + [ + [ + "61869552594793", + "5201831386928" + ], + [ + "82817668297010", + "311908399084" + ], + [ + "372394178664282", + "2871900000000" + ] + ] + ], + [ + "0x251FAe8f687545BDD462Ba4FCDd7581051740463", + [ + [ + "28368015360976", + "10000000000" + ], + [ + "33106872744841", + "6434958505" + ], + [ + "38722543672289", + "250000000" + ], + [ + "61000878716919", + "789407727" + ], + [ + "72536373875278", + "200000000" + ], + [ + "75784287632794", + "2935934380" + ], + [ + "75995951619880", + "5268032293" + ], + [ + "217474381338301", + "1293174476" + ], + [ + "220144194502828", + "47404123300" + ], + [ + "333622810114113", + "200755943301" + ], + [ + "378227726508635", + "645363133" + ], + [ + "574387565763701", + "55857695832" + ], + [ + "575679606872092", + "38492647384" + ], + [ + "626184530707078", + "90718871797" + ], + [ + "634034652140320", + "1827630964" + ], + [ + "680095721530457", + "10113856826" + ], + [ + "767824420446983", + "1158445599" + ], + [ + "767978192014986", + "1606680000" + ], + [ + "790662167913055", + "60917382823" + ], + [ + "792657494145217", + "11153713894" + ], + [ + "845186146706783", + "62659298764" + ] + ] + ], + [ + "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d", + [ + [ + "362140399162224", + "6273115407" + ], + [ + "376426019903538", + "25515357603" + ] + ] + ], + [ + "0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a", + [ + [ + "298791493215442", + "85000000000" + ] + ] + ], + [ + "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", + [ + [ + "186583237080659", + "8569224376" + ] + ] + ], + [ + "0x25d5Eb0603f36c47A53529b6A745A0805467B21F", + [ + [ + "299296287064019", + "22010000022" + ] + ] + ], + [ + "0x2612C1bc597799dc2A468D6537720B245f956A22", + [ + [ + "649130529433065", + "220044920" + ] + ] + ], + [ + "0x262126FD37D04321D7f824c8984976542fCA2C36", + [ + [ + "92555674061199", + "101864651658" + ] + ] + ], + [ + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", + [ + [ + "434130466448", + "27751913384" + ], + [ + "464312835593", + "25323470663" + ], + [ + "490607948331", + "9028357925" + ], + [ + "520071959814", + "9564346441" + ], + [ + "4931242977938", + "10898078686" + ], + [ + "343529476955892", + "26569428177" + ], + [ + "581145184712006", + "762766666666" + ], + [ + "644413986347346", + "32" + ], + [ + "644546638392929", + "32" + ], + [ + "647552815161015", + "80311" + ], + [ + "647823489801690", + "15368221875" + ], + [ + "647953831875574", + "11699675781" + ], + [ + "648064641238285", + "12204390625" + ], + [ + "648143628178042", + "11488750000" + ], + [ + "648162303670466", + "13655200000" + ], + [ + "648218529970749", + "15127645459" + ], + [ + "648319733131161", + "9068714111" + ], + [ + "648390451720158", + "17199921875" + ], + [ + "648437018209889", + "15524432405" + ], + [ + "648537251303183", + "17" + ], + [ + "648669852761603", + "17910660356" + ], + [ + "648703542243759", + "13031467277" + ], + [ + "649087464308065", + "13380625000" + ], + [ + "649130749477985", + "12668079062" + ], + [ + "654557370948114", + "213185000000" + ], + [ + "655483763856093", + "154938000000" + ], + [ + "663001818967242", + "28" + ], + [ + "664619505628960", + "22" + ], + [ + "665701343812538", + "20" + ], + [ + "666251093296344", + "277121831207" + ], + [ + "666528215127551", + "294971062419" + ], + [ + "669913176913700", + "168992222694" + ], + [ + "670265992890158", + "3760739846" + ], + [ + "670269753630004", + "195093286581" + ], + [ + "670708659416585", + "8315794130" + ], + [ + "671204344019292", + "9227239745" + ], + [ + "673990119454246", + "387240" + ], + [ + "673990119841486", + "266985351613" + ], + [ + "674290923945041", + "214257648238" + ], + [ + "675271870072786", + "1265309093" + ], + [ + "675939800999403", + "89647628696" + ], + [ + "676546386034429", + "6694533342" + ], + [ + "676553080567771", + "8499476521" + ], + [ + "676561580044292", + "10140222821" + ], + [ + "676571720267113", + "11668233878" + ], + [ + "676583388500991", + "13349099640" + ], + [ + "676596737600631", + "14641791657" + ], + [ + "676611379392288", + "16023438417" + ], + [ + "676627402830705", + "17794160449" + ], + [ + "676645196991154", + "19717534095" + ], + [ + "676686202345495", + "21015744781" + ], + [ + "676707218090276", + "21993061317" + ], + [ + "676751492794865", + "125608" + ], + [ + "676751492920473", + "55278924469" + ], + [ + "676879462123907", + "722460698" + ], + [ + "676961397323692", + "84887658705" + ], + [ + "677046284982397", + "75519741929" + ], + [ + "677172387770040", + "6131806238" + ], + [ + "677178519576278", + "59202430775" + ], + [ + "677237722007053", + "60660646377" + ], + [ + "677298382653430", + "55297098356" + ], + [ + "677353679751786", + "41809339114" + ], + [ + "677395489090900", + "36138699789" + ], + [ + "677463173067632", + "28108721786" + ], + [ + "677511504808903", + "3551817566" + ], + [ + "677515056626469", + "10550613290" + ], + [ + "677525607239759", + "4793787549" + ], + [ + "677530401027308", + "236335204805" + ], + [ + "677766895578568", + "178586879475" + ], + [ + "677945482458043", + "293860207608" + ], + [ + "678239342665651", + "675575202780" + ], + [ + "682826275044476", + "17833430647" + ], + [ + "682845259142899", + "85872956797" + ], + [ + "682931132099696", + "137696415333" + ], + [ + "683088991506904", + "102232834268" + ] + ] + ], + [ + "0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D", + [ + [ + "323262951431540", + "22464236574" + ] + ] + ], + [ + "0x26AFBbC659076B062548e8f46D424842Bc715064", + [ + [ + "258943234658706", + "94067068214" + ] + ] + ], + [ + "0x26C08ce60A17a130f5483D50C404bDE46985bCaf", + [ + [ + "325145004497070", + "113447201008" + ] + ] + ], + [ + "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5", + [ + [ + "682845256557823", + "2585076" + ], + [ + "741718653137282", + "111751582" + ] + ] + ], + [ + "0x26f781D7f59c67BBd16acED83dB4ba90d1e47689", + [ + [ + "109548569427007", + "2250551935" + ] + ] + ], + [ + "0x27320AAc0E3bbc165E6048aFc0F28500091dca73", + [ + [ + "240574257021760", + "14827650417" + ] + ] + ], + [ + "0x2745a1f9774FF3b59cbDfC139c6f19f003392e2C", + [ + [ + "580465682607657", + "1581698780" + ], + [ + "643046212115536", + "1220733194" + ], + [ + "643059909351872", + "5072600938" + ], + [ + "643616429319061", + "1117067455" + ], + [ + "643630556511892", + "3144911832" + ], + [ + "644440076885807", + "2439339467" + ], + [ + "646983796131611", + "1010894641" + ] + ] + ], + [ + "0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f", + [ + [ + "201441256822560", + "15818274887" + ] + ] + ], + [ + "0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9", + [ + [ + "266838658304301", + "216644999935" + ] + ] + ], + [ + "0x277FC128D042B081F3EE99881802538E05af8c43", + [ + [ + "267204322956411", + "8634054720" + ] + ] + ], + [ + "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", + [ + [ + "311015613569053", + "6238486940" + ] + ] + ], + [ + "0x2817a8dFe9DCff27449C8C66Fa02e05530859B73", + [ + [ + "495986281196209", + "327035406660" + ] + ] + ], + [ + "0x284A2d22620974fb416D866c18a1f3c848E7b7Bc", + [ + [ + "644367998960591", + "103407742" + ] + ] + ], + [ + "0x284f942F11a5046a5D11BCbEC9beCb46d1172512", + [ + [ + "51088313644799", + "41188549146" + ], + [ + "258469319874650", + "96515746089" + ] + ] + ], + [ + "0x2894457502751d0F92ed1e740e2c8935F879E8AE", + [ + [ + "18052754491380", + "1000000000" + ], + [ + "141944294169149", + "10000000000" + ], + [ + "744765029950609", + "18206372000" + ] + ] + ], + [ + "0x28A40076496E02a9A527D7323175b15050b6C67c", + [ + [ + "273700188355894", + "16557580124" + ], + [ + "325749068110199", + "19498214619" + ], + [ + "326472527780618", + "118292810725" + ], + [ + "406164449052348", + "405035690" + ], + [ + "406164854088038", + "499650000" + ], + [ + "406165353738038", + "404668999" + ] + ] + ], + [ + "0x28aB25Bf7A691416445A85290717260971151eD2", + [ + [ + "267322616665401", + "11510822108" + ] + ] + ], + [ + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", + [ + [ + "160648337135830", + "30093729527" + ], + [ + "637761302275033", + "380793557160" + ], + [ + "766434901228015", + "15422132619" + ] + ] + ], + [ + "0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4", + [ + [ + "7395832970393", + "10000000000" + ] + ] + ], + [ + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", + [ + [ + "33186875353373", + "500000000" + ], + [ + "67435055994809", + "10000000000" + ], + [ + "153926655075128", + "838565448" + ], + [ + "282587028442772", + "17250582700" + ], + [ + "525672111796446", + "70060393479" + ], + [ + "595441968432834", + "80085100000" + ], + [ + "630893407534395", + "196063966" + ], + [ + "872761488129531", + "70125007621" + ] + ] + ], + [ + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", + [ + [ + "18051338281355", + "50364336" + ], + [ + "18051388645691", + "1232512356" + ] + ] + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + [ + [ + "41373044931817", + "727522" + ], + [ + "67097307242511", + "15" + ], + [ + "87849021601047", + "80437" + ], + [ + "90975474968754", + "3" + ], + [ + "153701253420471", + "67407" + ], + [ + "232482126144006", + "5451263" + ], + [ + "376489301622502", + "37387" + ] + ] + ], + [ + "0x29841AfFE231392BF0826B85488e411C3E5B9cC4", + [ + [ + "631794823129224", + "1314233166" + ] + ] + ], + [ + "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3", + [ + [ + "160678430865357", + "18253993180" + ], + [ + "167558036125804", + "84842866520" + ], + [ + "634190283997794", + "1715232990" + ] + ] + ], + [ + "0x299e4B9591993c6001822baCF41aff63F9C1C93F", + [ + [ + "260069118609084", + "794705201763" + ], + [ + "267656630501959", + "150336454905" + ], + [ + "295137332480012", + "2607932412299" + ], + [ + "297745264892311", + "766254121133" + ] + ] + ], + [ + "0x29e1A68927a46f42d3B82417A01645Ee23F86bD9", + [ + [ + "324911717326872", + "115438917" + ] + ] + ], + [ + "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20", + [ + [ + "51129502193945", + "25356695159" + ], + [ + "202818106667533", + "17842441406" + ], + [ + "408046817720715", + "10000317834" + ] + ] + ], + [ + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", + [ + [ + "76028680969604", + "604036207" + ], + [ + "680317702465922", + "5002669630" + ], + [ + "760184010820995", + "729833339" + ], + [ + "760470668898824", + "369074345" + ] + ] + ], + [ + "0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F", + [ + [ + "258032653899264", + "42247542366" + ] + ] + ], + [ + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", + [ + [ + "59269854376843", + "29229453541" + ], + [ + "97271320489293", + "40869054933" + ], + [ + "157521724557081", + "21334750070" + ], + [ + "159085770998418", + "46100000000" + ], + [ + "189188441771200", + "19872173070" + ], + [ + "189208313944270", + "13412667204" + ] + ] + ], + [ + "0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C", + [ + [ + "186248277026701", + "1607000000" + ], + [ + "634495210451551", + "1561000000" + ] + ] + ], + [ + "0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37", + [ + [ + "187153746256456", + "42281642936" + ] + ] + ], + [ + "0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C", + [ + [ + "598229195571107", + "175120144248" + ], + [ + "598404315715355", + "706556073123" + ] + ] + ], + [ + "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65", + [ + [ + "75517881623550", + "38308339380" + ], + [ + "118284988563198", + "23400000000" + ], + [ + "243340907864513", + "5071931149" + ], + [ + "244927756280795", + "46513491853" + ], + [ + "319587273487138", + "99704140012" + ], + [ + "331528394095863", + "121345718040" + ] + ] + ], + [ + "0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB", + [ + [ + "595522053532834", + "168039500000" + ] + ] + ], + [ + "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf", + [ + [ + "786871494302699", + "450790656" + ], + [ + "786871945093355", + "932517247" + ] + ] + ], + [ + "0x2bDB0cB25Db0012dF643041B3490d163A1809eE6", + [ + [ + "157417754524248", + "84608203869" + ] + ] + ], + [ + "0x2BeaB5818689309117AAfB0B89cd6F276C824D34", + [ + [ + "344363859002519", + "25254232357" + ] + ] + ], + [ + "0x2BEe2D53261B16892733B448351a8Fd8c0f743e7", + [ + [ + "919414411428634", + "147996" + ] + ] + ], + [ + "0x2bF046A052942B53Ca6746de4D3295d8f10d4562", + [ + [ + "740992675275273", + "14660252551" + ] + ] + ], + [ + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", + [ + [ + "61022673231233", + "21700205805" + ], + [ + "91013305781059", + "21825144968" + ], + [ + "197758167416406", + "3504136084" + ], + [ + "213430473225415", + "19297575823" + ], + [ + "227257304826086", + "8838791596" + ], + [ + "227797101910617", + "34509154491" + ], + [ + "235855165427494", + "2631578947" + ], + [ + "648015664036231", + "1982509180" + ] + ] + ], + [ + "0x2C01E651a64387352EbAF860165778049031e190", + [ + [ + "401140958523891", + "6000000000" + ] + ] + ], + [ + "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3", + [ + [ + "28059702904241", + "1259635749" + ], + [ + "78570049172294", + "5603412867" + ], + [ + "107446086823768", + "4363527272" + ] + ] + ], + [ + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", + [ + [ + "136612399855910", + "1516327182560" + ], + [ + "180612996863780", + "58781595885" + ], + [ + "564786469810178", + "14382502530" + ], + [ + "566175469825977", + "30150907500" + ], + [ + "568987325580815", + "30150907500" + ], + [ + "570096344263715", + "30150907500" + ], + [ + "572087175787753", + "30150907500" + ] + ] + ], + [ + "0x2d0DDb67B7D551aFa7c8FA4D31F86DA9cc947450", + [ + [ + "401401284712966", + "133555430770" + ] + ] + ], + [ + "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", + [ + [ + "13620320740040", + "2776257694900" + ], + [ + "345351025418338", + "1509530400000" + ], + [ + "347475827541041", + "1543861200000" + ], + [ + "763876703327895", + "46201857" + ], + [ + "763877400753507", + "53680946" + ], + [ + "763877883716757", + "1494533087" + ], + [ + "763898520549826", + "974988542" + ], + [ + "763903829825521", + "684952219" + ], + [ + "763904803936802", + "52372148" + ], + [ + "763914820231283", + "23750326521" + ], + [ + "763938570557804", + "79147734" + ], + [ + "763939554575290", + "4893969099" + ], + [ + "763944513817433", + "9019889238" + ], + [ + "763954688543036", + "21118416942" + ], + [ + "763976072545528", + "54845693" + ], + [ + "763976182271147", + "52203689" + ], + [ + "763976306153164", + "51007458" + ], + [ + "763976388222525", + "1300355823" + ], + [ + "763981032254637", + "2130472638" + ], + [ + "763983236435828", + "69051736" + ], + [ + "764056339138453", + "516217762" + ], + [ + "764056921985326", + "1434013875" + ], + [ + "764059354079704", + "590245000" + ], + [ + "764454359166574", + "2799546066" + ], + [ + "764457168269474", + "797906392781" + ], + [ + "765255074662255", + "857156766102" + ], + [ + "767510533786724", + "123" + ], + [ + "767510533786847", + "165" + ], + [ + "767510533787012", + "206" + ], + [ + "767510533787218", + "288" + ], + [ + "767510533787506", + "330" + ], + [ + "767510533787836", + "371" + ], + [ + "767510533788207", + "413" + ], + [ + "767510533788620", + "454" + ], + [ + "767510533789074", + "495" + ], + [ + "767510533789569", + "537" + ], + [ + "767510533790106", + "578" + ], + [ + "767511386360882", + "620" + ], + [ + "767511386361502", + "662" + ], + [ + "767511386362164", + "703" + ], + [ + "767511386362867", + "745" + ], + [ + "767511386363612", + "786" + ], + [ + "767511386364398", + "828" + ], + [ + "767511386365226", + "870" + ], + [ + "767511386366096", + "912" + ], + [ + "767511386367008", + "954" + ], + [ + "767511386367962", + "996" + ], + [ + "767511386368958", + "1038" + ], + [ + "767511386369996", + "1081" + ], + [ + "767511386371077", + "1123" + ], + [ + "767511386372200", + "1165" + ], + [ + "767511386373365", + "1208" + ], + [ + "767511386374573", + "1251" + ], + [ + "767511386375824", + "1293" + ], + [ + "767511386377117", + "1336" + ], + [ + "767511386378453", + "1379" + ], + [ + "767511386379832", + "1421" + ], + [ + "767511386381253", + "1464" + ], + [ + "767511386382717", + "1507" + ], + [ + "767511386384265", + "83" + ], + [ + "767511386384348", + "125" + ], + [ + "767511386384473", + "167" + ], + [ + "767511386384640", + "209" + ], + [ + "767511386384849", + "251" + ], + [ + "767511386385100", + "293" + ], + [ + "767511386385393", + "335" + ], + [ + "767511386385728", + "378" + ], + [ + "767511386386106", + "420" + ], + [ + "767511386386526", + "462" + ], + [ + "767511386386988", + "504" + ], + [ + "767511386387492", + "546" + ], + [ + "767511386388038", + "589" + ], + [ + "767511386388627", + "631" + ], + [ + "767511386389258", + "673" + ], + [ + "767511386389931", + "716" + ], + [ + "767511386390647", + "758" + ], + [ + "767511386391405", + "800" + ], + [ + "767511386392205", + "843" + ], + [ + "767511386393048", + "927" + ], + [ + "767511386393975", + "1012" + ], + [ + "767511386394987", + "1096" + ], + [ + "767511386396083", + "1181" + ], + [ + "767511386397264", + "1266" + ], + [ + "767511386398530", + "1351" + ], + [ + "767511386399881", + "1435" + ], + [ + "767511386401316", + "1520" + ], + [ + "767511386402836", + "1605" + ], + [ + "767511386404441", + "1690" + ], + [ + "767511386406131", + "1817" + ], + [ + "767511386407948", + "1944" + ], + [ + "767511386409892", + "2072" + ], + [ + "767511386411964", + "2199" + ], + [ + "767511386414163", + "2327" + ], + [ + "767511386416490", + "2454" + ], + [ + "767511386418944", + "2582" + ], + [ + "767511386421526", + "2752" + ], + [ + "767511386424278", + "2922" + ], + [ + "767511386427200", + "3092" + ], + [ + "767511386430292", + "3262" + ], + [ + "767511386433554", + "3432" + ], + [ + "767511386436986", + "3645" + ], + [ + "767511386440631", + "3858" + ], + [ + "767511386444489", + "4071" + ], + [ + "767511386448560", + "4284" + ], + [ + "767511386452844", + "4540" + ], + [ + "767511386457384", + "4795" + ], + [ + "767511386462179", + "5051" + ], + [ + "767511386467230", + "5349" + ], + [ + "767511386472579", + "5648" + ], + [ + "767511386478227", + "5947" + ], + [ + "767511386484174", + "6288" + ], + [ + "767511386490462", + "6630" + ], + [ + "767511386497092", + "6971" + ], + [ + "767511386504063", + "7355" + ], + [ + "767511386511418", + "7740" + ], + [ + "767511386519158", + "8167" + ], + [ + "767511386527325", + "8595" + ], + [ + "767511386535920", + "9065" + ], + [ + "767511386544985", + "9535" + ], + [ + "767511386554520", + "10048" + ], + [ + "767511386564568", + "10604" + ], + [ + "767511386575172", + "11161" + ], + [ + "767511386586333", + "12408" + ], + [ + "767511386598741", + "13050" + ], + [ + "767511386611791", + "13736" + ], + [ + "767511386625527", + "14465" + ], + [ + "767511386639992", + "15236" + ], + [ + "767511386655228", + "16051" + ], + [ + "767511386671279", + "16909" + ], + [ + "767511386688188", + "17810" + ], + [ + "767511386705998", + "18754" + ], + [ + "767511386724752", + "19741" + ], + [ + "767511386744493", + "20771" + ], + [ + "767511386765264", + "21845" + ], + [ + "767511386787109", + "23004" + ], + [ + "767511386810113", + "24207" + ], + [ + "767511386834320", + "25454" + ], + [ + "767511386859774", + "26786" + ], + [ + "767511386886560", + "28162" + ], + [ + "767511386914722", + "29624" + ], + [ + "767548493417834", + "31172" + ], + [ + "767548493449006", + "32823" + ], + [ + "767548493481829", + "32830" + ], + [ + "767548493514659", + "34569" + ], + [ + "767548493549228", + "36379" + ], + [ + "767548493585607", + "38275" + ], + [ + "767548493623882", + "40258" + ], + [ + "767548493664140", + "42328" + ], + [ + "767548493706468", + "44528" + ], + [ + "767548493750996", + "46815" + ], + [ + "767548493797811", + "49232" + ], + [ + "767548493847043", + "51778" + ], + [ + "767548493898821", + "54455" + ], + [ + "767548493953276", + "57262" + ], + [ + "767548494010538", + "60200" + ], + [ + "767548494070738", + "63310" + ], + [ + "767548494134048", + "66594" + ], + [ + "767549755547042", + "70009" + ], + [ + "767549755617051", + "73632" + ], + [ + "767578296825681", + "77439" + ], + [ + "767578296903120", + "81459" + ], + [ + "767578296984579", + "85659" + ], + [ + "767578297070238", + "90077" + ], + [ + "767578297160315", + "94713" + ], + [ + "767578297255028", + "99567" + ], + [ + "767578297354595", + "104681" + ], + [ + "767578297459276", + "110058" + ], + [ + "767578297569334", + "115738" + ], + [ + "767578892875042", + "121681" + ], + [ + "767578892996723", + "127988" + ], + [ + "767578893124711", + "134587" + ], + [ + "767578893259298", + "141491" + ], + [ + "767578893400789", + "148745" + ], + [ + "767583217549534", + "156392" + ], + [ + "767583217705926", + "164507" + ], + [ + "767583217870433", + "172943" + ], + [ + "767583218043376", + "181816" + ], + [ + "767583218225192", + "191170" + ], + [ + "767583218416362", + "201004" + ], + [ + "767583218617366", + "211320" + ], + [ + "767583218828686", + "222160" + ], + [ + "767583219050846", + "233569" + ], + [ + "767583219284415", + "245547" + ], + [ + "767583219529962", + "258138" + ], + [ + "767583219788100", + "271385" + ], + [ + "767583220059485", + "285332" + ], + [ + "767583220344817", + "299980" + ], + [ + "767583220644797", + "315373" + ], + [ + "767583220960170", + "331555" + ], + [ + "767583221291725", + "348569" + ], + [ + "767583221640294", + "366459" + ], + [ + "767583222006753", + "385271" + ], + [ + "767583222392024", + "405047" + ], + [ + "767583222797071", + "425832" + ], + [ + "767583223222946", + "87" + ], + [ + "767583223223033", + "130" + ], + [ + "767583223223163", + "174" + ], + [ + "767583223223337", + "217" + ], + [ + "767583223223554", + "261" + ], + [ + "767626793223815", + "305" + ], + [ + "767626793224120", + "348" + ], + [ + "767626793224468", + "392" + ], + [ + "767626793224860", + "436" + ], + [ + "767626793225296", + "480" + ], + [ + "767626793225776", + "523" + ], + [ + "767626793226299", + "567" + ], + [ + "767626793226866", + "611" + ], + [ + "767626793227477", + "655" + ], + [ + "767626793228132", + "699" + ], + [ + "767626793228831", + "742" + ], + [ + "767626793229573", + "786" + ], + [ + "767626793230359", + "830" + ], + [ + "767626793231189", + "874" + ], + [ + "767626793232063", + "962" + ], + [ + "767642320933025", + "1050" + ], + [ + "767642320934075", + "1138" + ], + [ + "767642320935213", + "1226" + ], + [ + "767642320936439", + "1314" + ], + [ + "767642320937753", + "1401" + ], + [ + "767642320939154", + "1490" + ], + [ + "767642320940644", + "1580" + ], + [ + "767642320942224", + "1669" + ], + [ + "767642320943893", + "1757" + ], + [ + "767642320945650", + "1889" + ], + [ + "767642320947539", + "2023" + ], + [ + "767642320949562", + "2156" + ], + [ + "767642320951718", + "2290" + ], + [ + "767642320954008", + "2422" + ], + [ + "767642320956430", + "2555" + ], + [ + "767642320958985", + "2688" + ], + [ + "767642320961673", + "2865" + ], + [ + "767642320964538", + "3042" + ], + [ + "767642320967580", + "3219" + ], + [ + "767642320970799", + "3396" + ], + [ + "767642320974195", + "3573" + ], + [ + "767642320977768", + "3795" + ], + [ + "767642320981563", + "4016" + ], + [ + "767642883204174", + "4238" + ], + [ + "767642883208412", + "4462" + ], + [ + "767642883212874", + "4728" + ], + [ + "767642883217602", + "4994" + ], + [ + "767642883222596", + "5260" + ], + [ + "767682652111200", + "5571" + ], + [ + "767682652116771", + "5885" + ], + [ + "767682652122656", + "6196" + ], + [ + "767682652128852", + "6551" + ], + [ + "767682652135403", + "6907" + ], + [ + "767682652142310", + "7263" + ], + [ + "767682652149573", + "7663" + ], + [ + "767682652157236", + "8064" + ], + [ + "767682652165300", + "8509" + ], + [ + "767682652173809", + "8954" + ], + [ + "767682652182763", + "9444" + ], + [ + "767682652192207", + "9941" + ], + [ + "767682652202148", + "10476" + ], + [ + "767682652212624", + "11055" + ], + [ + "767682652223679", + "11635" + ], + [ + "767682652235314", + "12259" + ], + [ + "767682652247573", + "12929" + ], + [ + "767705524974897", + "13607" + ], + [ + "767705524988504", + "14322" + ], + [ + "767705525002826", + "15082" + ], + [ + "767705525017908", + "15886" + ], + [ + "767705525033794", + "16735" + ], + [ + "767705525050529", + "17629" + ], + [ + "767705525068158", + "18569" + ], + [ + "767705525086727", + "19553" + ], + [ + "767807852800338", + "20582" + ], + [ + "767812853087571", + "21651" + ], + [ + "767812853109222", + "22780" + ], + [ + "767812853132002", + "23989" + ], + [ + "767812853155991", + "25243" + ], + [ + "767824420255993", + "27944" + ], + [ + "767824420283937", + "29379" + ], + [ + "767824420313316", + "30904" + ], + [ + "767824420344220", + "32519" + ], + [ + "767824420376739", + "34224" + ], + [ + "767824420410963", + "36020" + ], + [ + "767825578892582", + "37871" + ], + [ + "767825585879797", + "41900" + ], + [ + "767825585921697", + "44054" + ], + [ + "767825585965751", + "46343" + ], + [ + "767825586012094", + "48723" + ], + [ + "767825586060817", + "51237" + ], + [ + "767825586112054", + "53887" + ], + [ + "767825586165941", + "56672" + ], + [ + "767825586222613", + "59593" + ], + [ + "767848361131422", + "62650" + ], + [ + "767848361194072", + "65916" + ], + [ + "767848361259988", + "69334" + ], + [ + "767848361329322", + "72889" + ], + [ + "767848361402211", + "76625" + ], + [ + "767848361478836", + "80586" + ], + [ + "767848361559422", + "84728" + ], + [ + "767848361644150", + "89097" + ], + [ + "767848361733247", + "93691" + ], + [ + "767848361826938", + "98512" + ], + [ + "767848361925450", + "103559" + ], + [ + "767848362029009", + "108878" + ], + [ + "767848362137887", + "114469" + ], + [ + "767848362252356", + "120376" + ], + [ + "767848362372732", + "126556" + ], + [ + "767848362499288", + "133053" + ], + [ + "767848362632341", + "139912" + ], + [ + "767848362772253", + "147088" + ], + [ + "767848362919341", + "154628" + ], + [ + "767848363073969", + "162575" + ], + [ + "767848363236544", + "170930" + ], + [ + "767848363407474", + "179695" + ], + [ + "767848363587169", + "188913" + ], + [ + "767848363776082", + "198630" + ], + [ + "767848363974712", + "208846" + ], + [ + "767848364183558", + "219562" + ], + [ + "767848364403120", + "230823" + ], + [ + "767848364633943", + "242675" + ], + [ + "767848364876618", + "255118" + ], + [ + "767848365131736", + "268197" + ], + [ + "767848365399933", + "281957" + ], + [ + "767848365681890", + "296446" + ], + [ + "767848365978336", + "311662" + ], + [ + "767848366289998", + "327651" + ], + [ + "767848366617649", + "344459" + ], + [ + "767848366962108", + "362133" + ], + [ + "767848367324241", + "380716" + ], + [ + "767848367704957", + "400256" + ], + [ + "767848368105213", + "420798" + ], + [ + "767848368526011", + "442387" + ], + [ + "767852884968443", + "90" + ], + [ + "767852884968533", + "135" + ], + [ + "767852884968668", + "181" + ], + [ + "767852884968849", + "226" + ], + [ + "767852884969075", + "271" + ], + [ + "767852884969346", + "317" + ], + [ + "767852884969663", + "362" + ], + [ + "767852884970025", + "408" + ], + [ + "767852884970433", + "453" + ], + [ + "767852884970886", + "498" + ], + [ + "767852884971384", + "544" + ], + [ + "767852884971928", + "589" + ], + [ + "767852884972517", + "635" + ], + [ + "767852884973152", + "681" + ], + [ + "767852884973833", + "727" + ], + [ + "767863326337265", + "91" + ], + [ + "767863362728577", + "18484478" + ], + [ + "767863381213055", + "5167937" + ], + [ + "767863386380992", + "18280626" + ], + [ + "767863404661618", + "18414676" + ], + [ + "767863423076294", + "18443046" + ], + [ + "767863441519340", + "18477486" + ], + [ + "767863459996826", + "16131224" + ], + [ + "767863476128050", + "16087207" + ], + [ + "767863525316862", + "10937836" + ], + [ + "767863536254698", + "16385295" + ], + [ + "767863569071432", + "15950506" + ], + [ + "768114582705503", + "298231122" + ], + [ + "768114880936625", + "18672957" + ], + [ + "768114899609582", + "330845521" + ], + [ + "768115230455103", + "331324585" + ], + [ + "768115978889820", + "296676806" + ], + [ + "768116275566626", + "296728765" + ], + [ + "768116572295391", + "296762499" + ], + [ + "768117464966063", + "298343543" + ], + [ + "768117763309606", + "137124064" + ], + [ + "768117900433793", + "123" + ], + [ + "768118170560501", + "256642528" + ], + [ + "768119631748125", + "302761187" + ], + [ + "768119934509312", + "280418672" + ], + [ + "768120771960939", + "279694893" + ], + [ + "768121602995954", + "276767301" + ], + [ + "768122461859189", + "296600700" + ], + [ + "768123348981826", + "302369890" + ], + [ + "768123947537693", + "296342950" + ], + [ + "768124836569745", + "290541691" + ], + [ + "768125127111556", + "291176686" + ], + [ + "768295826854698", + "285816521" + ], + [ + "768296112671219", + "285381250" + ], + [ + "768296398052469", + "284997197" + ], + [ + "768298198893914", + "68312976" + ], + [ + "768298267207290", + "201" + ], + [ + "768298267207491", + "273021877" + ], + [ + "768298540229368", + "317530794" + ], + [ + "768298857760162", + "322193785" + ], + [ + "768299179953947", + "331229342" + ], + [ + "768299511183289", + "331260558" + ], + [ + "768300505169969", + "321182204" + ], + [ + "768301129935086", + "312207718" + ], + [ + "768301442142804", + "288907800" + ], + [ + "768302650177158", + "308531054" + ], + [ + "768303848319913", + "252106840" + ], + [ + "768304100426753", + "244186585" + ], + [ + "768304606652316", + "114725072" + ], + [ + "768308228492462", + "158" + ], + [ + "768308228492620", + "197" + ], + [ + "768308228493053", + "276" + ], + [ + "768308228493329", + "315" + ], + [ + "768308228493644", + "354" + ], + [ + "768308729405919", + "510" + ], + [ + "768308729406978", + "588" + ], + [ + "768309128949088", + "364833293" + ], + [ + "768310260215587", + "347953848" + ], + [ + "768310608169435", + "201082346" + ], + [ + "768310809251781", + "201245887" + ], + [ + "768311435453153", + "116" + ], + [ + "768311435453424", + "194" + ], + [ + "768311435453618", + "232" + ], + [ + "768311435453850", + "271" + ], + [ + "768311826167816", + "116" + ], + [ + "768311826168087", + "193" + ], + [ + "768311937992490", + "197071061" + ], + [ + "768312135063782", + "155" + ], + [ + "768312623349155", + "499719459" + ], + [ + "768313123068614", + "210719422" + ], + [ + "768313474127194", + "154" + ], + [ + "768313474128044", + "309" + ], + [ + "768313474128353", + "348" + ], + [ + "768313474128701", + "387" + ], + [ + "768313474129088", + "426" + ], + [ + "768313474129514", + "465" + ], + [ + "768313474129979", + "504" + ], + [ + "768313474131026", + "582" + ], + [ + "768313474132229", + "660" + ], + [ + "768313474132889", + "699" + ], + [ + "768313474134326", + "777" + ], + [ + "768313474135958", + "933" + ], + [ + "768313474137902", + "1089" + ], + [ + "768313474138991", + "1167" + ], + [ + "768313474140158", + "1245" + ], + [ + "768313474144127", + "1480" + ], + [ + "768313474145607", + "1558" + ], + [ + "768313474147165", + "1675" + ], + [ + "768313474150633", + "1910" + ], + [ + "768313474152543", + "2028" + ], + [ + "768313474154571", + "2145" + ], + [ + "768313474156716", + "2263" + ], + [ + "768314355726830", + "88909462" + ], + [ + "768315901357256", + "339056370" + ], + [ + "768316240413626", + "301378783" + ], + [ + "768316541792409", + "35791954" + ] + ] + ], + [ + "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", + [ + [ + "322290480743612", + "94607705314" + ] + ] + ], + [ + "0x2E34723A04B9bb5938373DCFdD61410F43189246", + [ + [ + "67381548202218", + "1447784544" + ] + ] + ], + [ + "0x2E40961fd5Abd053128D2e724a61260C30715934", + [ + [ + "658105711671123", + "41555431100" + ], + [ + "658877005401946", + "136033474375" + ], + [ + "671451812872345", + "20082877176" + ], + [ + "676806771844942", + "22871716433" + ], + [ + "676852872846308", + "12839897666" + ], + [ + "679500898240401", + "150688818320" + ], + [ + "679689278965321", + "33005857560" + ], + [ + "720695437014319", + "243235296262" + ], + [ + "720938672310581", + "12267465638" + ], + [ + "725824924442098", + "269398121130" + ], + [ + "744798716338245", + "9220124675" + ], + [ + "860106144873359", + "79143367104" + ] + ] + ], + [ + "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", + [ + [ + "7415832970393", + "194762233747" + ], + [ + "78648530626824", + "138292382101" + ], + [ + "152208324465731", + "194272213416" + ], + [ + "156096698259859", + "320440448951" + ], + [ + "165896787517307", + "165634345762" + ], + [ + "166062421863069", + "162668432277" + ], + [ + "394996007186444", + "290768602971" + ], + [ + "573762332985345", + "53986261284" + ], + [ + "574794197119988", + "682695875" + ] + ] + ], + [ + "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872", + [ + [ + "76216082547355", + "7329461840" + ], + [ + "157638542244933", + "60174119496" + ], + [ + "213285967419772", + "21267206558" + ], + [ + "634864361051387", + "70921562500" + ], + [ + "647439464023467", + "15004452000" + ] + ] + ], + [ + "0x2e95A39eF19c5620887C0d9822916c0406E4E75e", + [ + [ + "159584961546434", + "99821724986" + ] + ] + ], + [ + "0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8", + [ + [ + "783376684764145", + "1000000" + ] + ] + ], + [ + "0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F", + [ + [ + "184026530861047", + "134623539909" + ] + ] + ], + [ + "0x2f89DB6B5E80C4849142789d777109D2F911F780", + [ + [ + "331726102506074", + "5251308075" + ] + ] + ], + [ + "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", + [ + [ + "326330661529391", + "16541491227" + ], + [ + "465286109667912", + "41138509764" + ], + [ + "531116209812109", + "109538139161" + ], + [ + "561676842598316", + "57729458645" + ], + [ + "574187702455863", + "199863307838" + ], + [ + "577754454852811", + "150501595883" + ], + [ + "591782385862752", + "164341630162" + ] + ] + ], + [ + "0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA", + [ + [ + "744297030626026", + "11165929503" + ], + [ + "744308196555529", + "33745270881" + ], + [ + "744341941826410", + "16872062514" + ] + ] + ], + [ + "0x30beFd253Ca972800150dBA8114F7A4EF53183D9", + [ + [ + "643649755203625", + "496254001" + ] + ] + ], + [ + "0x30d0DEb932b5535f792d359604D7341D1B357a35", + [ + [ + "92715335512140", + "260797078423" + ] + ] + ], + [ + "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", + [ + [ + "611709212072170", + "19083709019" + ] + ] + ], + [ + "0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F", + [ + [ + "344839852767681", + "1993933960" + ] + ] + ], + [ + "0x3103c84c86a534a4f10C3823606F2a5b90923924", + [ + [ + "350560995758670", + "1562442699" + ], + [ + "361237680058040", + "3203293071" + ] + ] + ], + [ + "0x31188536865De4593040fAfC4e175E190518e4Ef", + [ + [ + "70474963554843", + "42647602248" + ], + [ + "87355264432269", + "23229244940" + ], + [ + "159182841468143", + "25259530956" + ], + [ + "159208100999099", + "75628998693" + ], + [ + "247427787534240", + "39695519731" + ], + [ + "408397582477655", + "20847822433" + ] + ] + ], + [ + "0x317B157e02c3b5A16Efc3cc4eb26ACcC1cfF24e3", + [ + [ + "258450328339971", + "18991534679" + ] + ] + ], + [ + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", + [ + [ + "185408194792894", + "19585490430" + ], + [ + "199678543542300", + "10849956649" + ], + [ + "201457075097447", + "6841999986" + ], + [ + "656568060160113", + "1550661150" + ], + [ + "672612693625732", + "5000000000" + ] + ] + ], + [ + "0x31b9084568783Fd9D47c733F3799567379015e6D", + [ + [ + "598066496589195", + "100033987828" + ] + ] + ], + [ + "0x3213977900A71e183818472e795c76aF8cbC3a3E", + [ + [ + "209624708274640", + "2727243727" + ] + ] + ], + [ + "0x326481a3b0C792Cc7DF1df0c8e76490B5ccd7031", + [ + [ + "636333094290438", + "233865679687" + ] + ] + ], + [ + "0x328e124cE7F35d9aCe181B2e2B4071f51779B363", + [ + [ + "159684783271420", + "51108156265" + ] + ] + ], + [ + "0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39", + [ + [ + "355785898656583", + "159354982035" + ] + ] + ], + [ + "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e", + [ + [ + "51154858889104", + "22097720000" + ], + [ + "78544641460294", + "25407712000" + ], + [ + "85869322903816", + "96590650000" + ], + [ + "93193533981954", + "51428850000" + ], + [ + "160729464951818", + "27130320000" + ], + [ + "170334015806894", + "21861840000" + ], + [ + "198205724465484", + "17204908500" + ], + [ + "210838860371618", + "31699684500" + ], + [ + "249470894900355", + "141114556811" + ], + [ + "394957500386195", + "2656309347" + ], + [ + "451982392748406", + "3362213720" + ] + ] + ], + [ + "0x32ddCe808c77E45411CE3Bb28404499942db02a7", + [ + [ + "157572697483467", + "30301264175" + ], + [ + "672686690262012", + "9156068040" + ] + ] + ], + [ + "0x33033E306c89Dc5b662f01e74B12623f9a39CCE4", + [ + [ + "401134958523891", + "6000000000" + ] + ] + ], + [ + "0x33314cF610C14460d3c184a55363f51d609aa076", + [ + [ + "189165629280352", + "4" + ], + [ + "250764687174527", + "6" + ] + ] + ], + [ + "0x334bdeAA1A66E199CE2067A205506Bf72de14593", + [ + [ + "78581810315623", + "1" + ] + ] + ], + [ + "0x334f12F269213371fb59b328BB6e182C875e04B2", + [ + [ + "170459154928178", + "85849064810" + ], + [ + "187225592453120", + "100639688860" + ], + [ + "235248755463285", + "30184796751" + ], + [ + "532670891057032", + "5098240000" + ] + ] + ], + [ + "0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96", + [ + [ + "343800433705719", + "25762354710" + ], + [ + "355945253638618", + "61234325811" + ] + ] + ], + [ + "0x33c0BCac5c1835fe9D52D35079F6617A22c6C431", + [ + [ + "326347203020618", + "125324760000" + ], + [ + "328066927799830", + "36648000000" + ], + [ + "511268244803978", + "49788645972" + ], + [ + "533229385997211", + "202654427854" + ], + [ + "552807785951017", + "16210845885" + ], + [ + "553548932420572", + "43736535200" + ], + [ + "575265144492570", + "31060210793" + ] + ] + ], + [ + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", + [ + [ + "28423496858037", + "1897354001" + ] + ] + ], + [ + "0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F", + [ + [ + "151059913817209", + "718187220626" + ], + [ + "194136445740033", + "669600000000" + ], + [ + "398058157938414", + "131956563555" + ], + [ + "497621309855122", + "579087801478" + ], + [ + "525752878043783", + "4019068358051" + ], + [ + "574443423459533", + "291778458931" + ], + [ + "575412697794786", + "213651821494" + ] + ] + ], + [ + "0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91", + [ + [ + "700036877911620", + "6971971500" + ] + ] + ], + [ + "0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97", + [ + [ + "320197037442753", + "8912443926" + ] + ] + ], + [ + "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327", + [ + [ + "202773340970944", + "44765696589" + ], + [ + "274157284179751", + "130932379038" + ] + ] + ], + [ + "0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d", + [ + [ + "312543047721534", + "185860975995" + ] + ] + ], + [ + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", + [ + [ + "284272720466475", + "21940000000" + ], + [ + "367354986456086", + "159350000000" + ] + ] + ], + [ + "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30", + [ + [ + "326049910381759", + "24" + ], + [ + "340162996725906", + "1695292297" + ] + ] + ], + [ + "0x3489B1E99537432acAe2DEaDd3C289408401d893", + [ + [ + "634664031419046", + "20000000000" + ] + ] + ], + [ + "0x349E8490C47f42AB633D9392a077D6F1aF4d4c85", + [ + [ + "250842519878117", + "25098501333" + ] + ] + ], + [ + "0x34a649fde43cE36882091A010aAe2805A9FcFf0d", + [ + [ + "634036479771284", + "5482892893" + ] + ] + ], + [ + "0x34Aec84391B6602e7624363Df85Efe02A1FF35f5", + [ + [ + "248138998423714", + "100498286663" + ] + ] + ], + [ + "0x34d81294A7cf6F794F660e02B468449B31cA45fb", + [ + [ + "895516510872318", + "3743357026612" + ] + ] + ], + [ + "0x34e642520F4487D7D0229c07f2EDe107966D385E", + [ + [ + "367351784090731", + "3202365355" + ] + ] + ], + [ + "0x354F7a379e9478Ad1734f5c48e856F89E309a597", + [ + [ + "152084889110747", + "12083942493" + ] + ] + ], + [ + "0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209", + [ + [ + "292260794541850", + "2182702092311" + ] + ] + ], + [ + "0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e", + [ + [ + "174758503486224", + "44765525061" + ] + ] + ], + [ + "0x358B8a97658648Bcf81103b397D571A2FED677eE", + [ + [ + "917235408231892", + "32949877099" + ] + ] + ], + [ + "0x35a386D9B7517467a419DeC4af6FaFC4c669E788", + [ + [ + "344823646308651", + "10024424157" + ] + ] + ], + [ + "0x362FFA9F404A14F4E805A39D4985042932D42aFe", + [ + [ + "634133673151647", + "2420032442" + ] + ] + ], + [ + "0x3638570931B30FbBa478535A94D3f2ec1Cd802cB", + [ + [ + "197761671552490", + "327866270649" + ], + [ + "205770700307726", + "85677608975" + ] + ] + ], + [ + "0x368a5564F46Bd896C8b365A2Dd45536252008372", + [ + [ + "212251016823450", + "186137117756" + ] + ] + ], + [ + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", + [ + [ + "67075754733543", + "16604041484" + ], + [ + "67428770424441", + "6285570368" + ], + [ + "70451813250817", + "4716970693" + ], + [ + "273939484179751", + "217800000000" + ], + [ + "321517916923381", + "214258454662" + ], + [ + "429133499005020", + "436815986689" + ], + [ + "533603847212626", + "135734075338" + ], + [ + "547809199075962", + "71050000000" + ], + [ + "645809940109546", + "188831250000" + ] + ] + ], + [ + "0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E", + [ + [ + "768350362242073", + "34649098834" + ] + ] + ], + [ + "0x36C3094E86CB89e33a74F7e4c10659dd9366538C", + [ + [ + "634959436885365", + "19640500000" + ], + [ + "635245783302881", + "5356500000" + ] + ] + ], + [ + "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B", + [ + [ + "18115882730389", + "2184095098753" + ], + [ + "465379361625193", + "3458705615800" + ], + [ + "470054787273693", + "227774351500" + ] + ] + ], + [ + "0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc", + [ + [ + "531845211117628", + "3940485943" + ] + ] + ], + [ + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", + [ + [ + "217264218398563", + "73188666066" + ], + [ + "664983563595345", + "75343043560" + ] + ] + ], + [ + "0x37435b30f92749e3083597E834d9c1D549e2494B", + [ + [ + "22131306224508", + "4637368726000" + ], + [ + "32181495640124", + "8433459586" + ], + [ + "38769863596589", + "1565234930" + ], + [ + "76223412009195", + "178773400000" + ], + [ + "86845698678511", + "62444029452" + ], + [ + "86978458498127", + "27307181096" + ], + [ + "88869752900177", + "12050549452" + ], + [ + "93006185741954", + "23198240000" + ], + [ + "118308388563198", + "14166669028" + ], + [ + "141234198150981", + "17100712995" + ], + [ + "183773660297853", + "252870563194" + ], + [ + "186199081638585", + "49195388116" + ], + [ + "271980436404190", + "296688083935" + ], + [ + "352399758201369", + "1024763326668" + ], + [ + "359928453899368", + "1288012208388" + ], + [ + "363939676933011", + "1412385930810" + ], + [ + "395593019554380", + "654800000000" + ], + [ + "437070763478235", + "3840100000000" + ], + [ + "460737759569063", + "4527500000000" + ], + [ + "591966036774809", + "666686929557" + ], + [ + "593409232970016", + "563728148057" + ], + [ + "764332208498162", + "105792331133" + ] + ] + ], + [ + "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", + [ + [ + "340310565047777", + "2715874656" + ] + ] + ], + [ + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", + [ + [ + "805406787392676", + "271427897935" + ], + [ + "808841378952277", + "3741772811" + ], + [ + "861085838494193", + "18080297788" + ], + [ + "904804646944212", + "185595194790" + ], + [ + "917268358306518", + "195035742135" + ] + ] + ], + [ + "0x375C1DC69F05Ff526498C8aCa48805EeC52861d5", + [ + [ + "624706749861385", + "1293514654" + ] + ] + ], + [ + "0x377f781195d494779a6CcC2AA5C9fF961C683A27", + [ + [ + "677766884983003", + "10595565" + ] + ] + ], + [ + "0x3798AE2cbC444ed5B5f4fb38344044977066D13F", + [ + [ + "344843846701641", + "18931968095" + ], + [ + "376325075317086", + "7476138081" + ] + ] + ], + [ + "0x37d515Fa5DC710C588B93eC67DE42068090e3ED8", + [ + [ + "582564609492029", + "1539351282905" + ], + [ + "584103960774934", + "910855838514" + ], + [ + "585059745414822", + "387855469635" + ], + [ + "589065176123882", + "721956082204" + ], + [ + "589789721199545", + "700119128150" + ], + [ + "590489840327695", + "511974175317" + ] + ] + ], + [ + "0x3800645f556ee583E20D6491c3a60E9c32744376", + [ + [ + "190509412911548", + "44590358778" + ] + ] + ], + [ + "0x3810EAcf5020D020B3317B559E59376c5d02dCB2", + [ + [ + "309464729921305", + "87638844672" + ] + ] + ], + [ + "0x38293902871C8ee22720A6553585F24De019c78e", + [ + [ + "632904420406334", + "6459298878" + ] + ] + ], + [ + "0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E", + [ + [ + "227393755294232", + "90805720025" + ] + ] + ], + [ + "0x38AE800E603F61a43f3B02f5E429b44E32e01D84", + [ + [ + "649248685749729", + "12448041335" + ], + [ + "650066211440274", + "883672882" + ], + [ + "651485759293845", + "3572292465" + ], + [ + "735462721965817", + "38853572481" + ] + ] + ], + [ + "0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5", + [ + [ + "152135543630806", + "6119470222" + ], + [ + "207252364348652", + "17964245672" + ] + ] + ], + [ + "0x38f733Fb3180276bE19135B3878580126F32c5Ab", + [ + [ + "33291076017861", + "103108618" + ], + [ + "767122453744233", + "2293110488" + ], + [ + "767642320985579", + "562218595" + ] + ] + ], + [ + "0x39167e20B785B46EBd856CC86DDc615FeFa51E76", + [ + [ + "825748197827247", + "503880761345" + ] + ] + ], + [ + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", + [ + [ + "31613511996035", + "1422751578" + ], + [ + "56090190254115", + "11945702437" + ], + [ + "61070704728260", + "11265269800" + ] + ] + ], + [ + "0x3983b24542E637030af57a6Ca117B96Fc42Ace10", + [ + [ + "344971252855340", + "54716661232" + ], + [ + "357975339088994", + "60400014733" + ] + ] + ], + [ + "0x399baf8F9AD4B3289d905f416bD3e245792C5fA6", + [ + [ + "31881074513162", + "2271791105" + ] + ] + ], + [ + "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608", + [ + [ + "38729105409331", + "4520835534" + ], + [ + "75749856969161", + "8190484804" + ], + [ + "75768702250033", + "2592066456" + ], + [ + "544122918974124", + "90520524431" + ], + [ + "569988798013715", + "75915000000" + ], + [ + "634184272767738", + "4800266302" + ], + [ + "634395165820350", + "4971925933" + ], + [ + "637136003689549", + "5026085154" + ], + [ + "641232825579881", + "6901957424" + ], + [ + "644028956669800", + "6258715658" + ], + [ + "644035215385458", + "3739040895" + ], + [ + "644052141349672", + "5619908813" + ], + [ + "644073507478345", + "8688260900" + ], + [ + "644089221861766", + "9969767834" + ], + [ + "644099191629600", + "5282898032" + ], + [ + "644112169106375", + "11803118121" + ], + [ + "644143887959668", + "6586391868" + ], + [ + "644181540147936", + "5533430900" + ], + [ + "644217945713915", + "9775619115" + ], + [ + "644227721333030", + "7138145970" + ], + [ + "644235138725690", + "11087897889" + ], + [ + "644246424265017", + "9438007812" + ], + [ + "644266109923013", + "12728017527" + ], + [ + "648703066319944", + "475923815" + ], + [ + "650452044643940", + "210712873" + ], + [ + "740444343886258", + "37039953396" + ] + ] + ], + [ + "0x3a1Bc767d7442355E96BA646Ff83706f70518dAA", + [ + [ + "60534460423689", + "37943648860" + ], + [ + "60613921072549", + "337056974653" + ], + [ + "384808251979965", + "221162082281" + ], + [ + "385114975062246", + "68895138576" + ], + [ + "428730219817416", + "346162069888" + ], + [ + "444016501963211", + "63083410136" + ], + [ + "460460113879903", + "200388674016" + ], + [ + "510804923776436", + "196096790801" + ] + ] + ], + [ + "0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264", + [ + [ + "740644060961741", + "4860922695" + ] + ] + ], + [ + "0x3A529A643e5b89555712B02e911AEC6add0d3188", + [ + [ + "637148882075661", + "285714285" + ] + ] + ], + [ + "0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1", + [ + [ + "915394886313821", + "16285361281" + ] + ] + ], + [ + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", + [ + [ + "141910062421668", + "20166747481" + ], + [ + "147404101138230", + "19708496282" + ], + [ + "153213326271478", + "18867580234" + ], + [ + "160718808143920", + "10656807898" + ], + [ + "396504433540468", + "13250965252" + ], + [ + "396517684505720", + "21196418023" + ] + ] + ], + [ + "0x3b55DF245d5350c4024Acc36259B3061d42140D2", + [ + [ + "59303914981687", + "109032000000" + ], + [ + "395431577902828", + "61940000000" + ], + [ + "428517528130265", + "6682650000" + ], + [ + "430095496589579", + "1727500000" + ], + [ + "672251402712185", + "113626410" + ], + [ + "768408426239740", + "10530972784" + ] + ] + ], + [ + "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", + [ + [ + "33289326590234", + "1184036940" + ], + [ + "33386963858115", + "4658475375814" + ], + [ + "408425382414043", + "1123333332210" + ], + [ + "427517763505395", + "856500000000" + ], + [ + "477272425070829", + "3276576610442" + ], + [ + "759127319086261", + "542512540896" + ] + ] + ], + [ + "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd", + [ + [ + "561885444802308", + "194013000000" + ], + [ + "565476469810977", + "194013435000" + ], + [ + "567291750347146", + "194013435000" + ], + [ + "567707182532146", + "194013435000" + ], + [ + "570802112669484", + "192000000000" + ], + [ + "571217544854484", + "194013435000" + ] + ] + ], + [ + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", + [ + [ + "70932687821992", + "142530400862" + ], + [ + "211163571688407", + "90969668386" + ], + [ + "544006850006260", + "10532744358" + ], + [ + "653296446968959", + "1462730442" + ], + [ + "653477602499401", + "2382078228" + ], + [ + "848255254733335", + "2974087025" + ] + ] + ], + [ + "0x3BD142a93adC0554C69395AAE69433A74CFFc765", + [ + [ + "267825806174639", + "10928727606" + ], + [ + "325258451698078", + "141509657939" + ] + ] + ], + [ + "0x3BD4c721C1b547Ea42F728B5a19eB6233803963E", + [ + [ + "218781665879410", + "12034941079" + ] + ] + ], + [ + "0x3C087171AEBC50BE76A7C47cBB296928C32f5788", + [ + [ + "170943059650826", + "148060901697" + ], + [ + "179705651830652", + "176957775656" + ], + [ + "212069776260061", + "14038264688" + ], + [ + "215219527533100", + "16507846329" + ], + [ + "230427008120352", + "1592559438" + ], + [ + "232479752844281", + "2373299725" + ], + [ + "327841336645705", + "13592654125" + ], + [ + "339831945732017", + "224290993889" + ], + [ + "340465994882707", + "17923920296" + ], + [ + "408359393519053", + "10089000000" + ], + [ + "648211808724006", + "6721246743" + ], + [ + "743598654626181", + "2043540906" + ] + ] + ], + [ + "0x3C43674dfa916d791614827a50353fe65227B7f3", + [ + [ + "86224790513977", + "18752048727" + ], + [ + "249683318820186", + "10002984280" + ], + [ + "683068828515029", + "20162991875" + ], + [ + "781843303488481", + "90638399996" + ], + [ + "808097236727089", + "112991072036" + ], + [ + "883534894985575", + "82087297170" + ], + [ + "886970218030110", + "80917313200" + ], + [ + "902311722381291", + "2492924562921" + ], + [ + "911681851165911", + "148249317984" + ] + ] + ], + [ + "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", + [ + [ + "599117126788478", + "69159694993" + ] + ] + ], + [ + "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c", + [ + [ + "562585978802308", + "48492000000" + ], + [ + "564921455942708", + "48492118269" + ], + [ + "566579274363477", + "48492118269" + ], + [ + "568565179832546", + "48492118269" + ], + [ + "570247098801215", + "48492118269" + ], + [ + "571918080039484", + "48492118269" + ] + ] + ], + [ + "0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106", + [ + [ + "271881305006652", + "99131397538" + ] + ] + ], + [ + "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B", + [ + [ + "7282639421137", + "107872082286" + ], + [ + "67130960801289", + "208750536344" + ], + [ + "197652637069875", + "79560142678" + ], + [ + "506176315739631", + "751200000000" + ], + [ + "507737045334642", + "256843090229" + ], + [ + "551839541572649", + "464523649777" + ] + ] + ], + [ + "0x3Cdf2F8681b778E97D538DBa517bd614f2108647", + [ + [ + "158637651631405", + "96662646688" + ], + [ + "258849054768509", + "94179890197" + ], + [ + "265521940236427", + "70852648035" + ] + ] + ], + [ + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", + [ + [ + "239154025576778", + "93978424610" + ], + [ + "325815231767308", + "116109191366" + ], + [ + "340483918803003", + "107540812013" + ] + ] + ], + [ + "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", + [ + [ + "31605992022782", + "4486265388" + ] + ] + ], + [ + "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", + [ + [ + "559909549098070", + "9516000000" + ] + ] + ], + [ + "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", + [ + [ + "644123972224496", + "18442405" + ] + ] + ], + [ + "0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5", + [ + [ + "80481878020743", + "2335790276267" + ], + [ + "131490207784127", + "4068458197507" + ] + ] + ], + [ + "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", + [ + [ + "768326922278702", + "643659978" + ], + [ + "911906996407371", + "24032791791" + ] + ] + ], + [ + "0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6", + [ + [ + "87489402650273", + "92067166902" + ] + ] + ], + [ + "0x3e2EfD7D46a1260b927f179bC9275f2377b00634", + [ + [ + "325399961356017", + "11508897293" + ] + ] + ], + [ + "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB", + [ + [ + "562755073802308", + "30150000000" + ], + [ + "649506912428795", + "36390839843" + ], + [ + "649853488667170", + "65015748" + ] + ] + ], + [ + "0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c", + [ + [ + "534857972611245", + "18731220754" + ] + ] + ], + [ + "0x3e763998E3c70B15347D68dC93a9CA021385675d", + [ + [ + "647229043503533", + "3184477709" + ] + ] + ], + [ + "0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC", + [ + [ + "340708439500138", + "107810827136" + ], + [ + "343181072805930", + "327389493912" + ] + ] + ], + [ + "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c", + [ + [ + "141030334319023", + "70000039897" + ], + [ + "595385246220334", + "56722212500" + ], + [ + "644345312837307", + "5547402539" + ], + [ + "647224666133056", + "4377370477" + ], + [ + "647382462319478", + "6271703989" + ], + [ + "647555129566838", + "7781608168" + ], + [ + "742833918745520", + "14172500000" + ], + [ + "848237297659532", + "17957073803" + ] + ] + ], + [ + "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0", + [ + [ + "355636039477093", + "9985803845" + ], + [ + "355646025280938", + "2373276277" + ], + [ + "355773362907086", + "12535749497" + ] + ] + ], + [ + "0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA", + [ + [ + "294677956974210", + "187420307596" + ], + [ + "298745403795012", + "21089420430" + ] + ] + ], + [ + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", + [ + [ + "41285039823287", + "521806033" + ], + [ + "235853631746968", + "1533680526" + ], + [ + "531838649791416", + "6561326212" + ], + [ + "662650407520724", + "57172076" + ] + ] + ], + [ + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", + [ + [ + "647725612230182", + "29699469080" + ], + [ + "768304721377388", + "3507114838" + ] + ] + ], + [ + "0x400609FDd8FD4882B503a55aeb59c24a39d66555", + [ + [ + "13424355740040", + "46140000000" + ], + [ + "385212837461278", + "12793000337" + ] + ] + ], + [ + "0x4034adD1a1A750AA19142218A177D509b7A5448F", + [ + [ + "643088877454629", + "2992976846" + ], + [ + "643091870431475", + "4644226944" + ], + [ + "643125864984505", + "6948011478" + ], + [ + "643617546386516", + "2736651405" + ], + [ + "643629222103340", + "1334408552" + ], + [ + "643653609485430", + "3361817827" + ], + [ + "643656971303257", + "1840841812" + ], + [ + "643658812145069", + "1886219723" + ], + [ + "643660698364792", + "4196252501" + ], + [ + "643664894617293", + "3945346023" + ], + [ + "643697705822698", + "3069368803" + ], + [ + "643700775191501", + "2616399199" + ], + [ + "643704053550072", + "4354211152" + ], + [ + "643715616535597", + "4120838084" + ], + [ + "643735049573681", + "4950268423" + ], + [ + "643739999842104", + "4592612954" + ], + [ + "643751895992677", + "4449841152" + ], + [ + "643756345833829", + "6933768558" + ], + [ + "643774597107209", + "4927912318" + ], + [ + "643856593003930", + "5819342790" + ], + [ + "643882906499989", + "3569433363" + ], + [ + "643939083202841", + "2637229058" + ], + [ + "643985406845033", + "5924684744" + ], + [ + "643991331529777", + "2352760830" + ], + [ + "643993684290607", + "1884171975" + ], + [ + "643995568462582", + "3724339951" + ], + [ + "644082195739245", + "2039061143" + ], + [ + "644168293016051", + "3645902617" + ], + [ + "644256136851915", + "6416440826" + ], + [ + "644279469802093", + "2923459312" + ] + ] + ], + [ + "0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB", + [ + [ + "640996006666783", + "46563701848" + ], + [ + "646739353301167", + "10228948233" + ], + [ + "646772221095742", + "7915875000" + ], + [ + "647311018597283", + "23870625000" + ], + [ + "647458959804717", + "20307375000" + ], + [ + "647479267179717", + "26457093750" + ], + [ + "647637605929338", + "30143670312" + ], + [ + "647696885372209", + "28726857973" + ], + [ + "648474129091480", + "9060790481" + ], + [ + "658068499502639", + "37212168484" + ], + [ + "658229774319898", + "29767318612" + ] + ] + ], + [ + "0x404a75f728D7e89197C61c284d782EC246425aa6", + [ + [ + "883958086238857", + "171169191653" + ] + ] + ], + [ + "0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5", + [ + [ + "539608230930738", + "417347700552" + ], + [ + "553592668955772", + "222299277023" + ] + ] + ], + [ + "0x406874Ac226662369d23B4a2B76313f3Cb8da983", + [ + [ + "153232193851712", + "462937279977" + ], + [ + "338018255707329", + "357159363004" + ] + ] + ], + [ + "0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b", + [ + [ + "573650098517519", + "5734467826" + ] + ] + ], + [ + "0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22", + [ + [ + "76099819242179", + "19406193406" + ], + [ + "569797745263715", + "21159782439" + ], + [ + "634041962664177", + "2442109027" + ], + [ + "636931384475422", + "19937578021" + ], + [ + "639795300300187", + "86043643136" + ], + [ + "640684697352708", + "201965000000" + ] + ] + ], + [ + "0x40Da1406EeB71083290e2e068926F5FC8D8e0264", + [ + [ + "634461766777846", + "6291400830" + ], + [ + "679985260625921", + "71" + ], + [ + "742848091245520", + "1417250000" + ], + [ + "742849508495520", + "1417250000" + ] + ] + ], + [ + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", + [ + [ + "682116636977139", + "389208674898" + ], + [ + "683765325492995", + "643482107799" + ], + [ + "728528152871407", + "486415703664" + ], + [ + "790320470681371", + "129057167288" + ] + ] + ], + [ + "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7", + [ + [ + "75686171721947", + "63685247214" + ], + [ + "143377079152995", + "39159248155" + ], + [ + "564444697090208", + "27405315000" + ], + [ + "566108259745977", + "13702657500" + ], + [ + "569070983910815", + "13702657500" + ], + [ + "569784042606215", + "13702657500" + ], + [ + "572415925695253", + "13702657500" + ] + ] + ], + [ + "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8", + [ + [ + "284294660466475", + "32606569800" + ], + [ + "644738977704474", + "427917192" + ] + ] + ], + [ + "0x41954b53cFB5e4292223720cB3577d3ed885D4f7", + [ + [ + "96865545670304", + "150940785067" + ] + ] + ], + [ + "0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54", + [ + [ + "230525695001648", + "46558365900" + ] + ] + ], + [ + "0x41BF3C5167494cbCa4C08122237C1620A78267Ab", + [ + [ + "67474986688534", + "125375746500" + ], + [ + "624643963734953", + "14701274232" + ], + [ + "630547945246894", + "2249157051" + ], + [ + "630888770251188", + "4637283207" + ], + [ + "631053204527095", + "1713785306" + ], + [ + "631567031582009", + "2612709957" + ], + [ + "631709202386668", + "1277169126" + ], + [ + "631801066266314", + "3476565097" + ], + [ + "631804542831411", + "5257772247" + ], + [ + "631812869882326", + "7418551539" + ], + [ + "632715023362792", + "17060602162" + ], + [ + "632910879705212", + "9755905834" + ], + [ + "634018729724195", + "3815159692" + ], + [ + "634022544883887", + "4493860181" + ], + [ + "634166749613035", + "4202744958" + ], + [ + "634170952357993", + "6931782754" + ], + [ + "634194611311476", + "2472437836" + ], + [ + "634421333694120", + "6913927217" + ], + [ + "634752629850619", + "1490458288" + ], + [ + "634773085341398", + "8523970000" + ], + [ + "635868338517102", + "3485021203" + ], + [ + "636068032409490", + "221549064473" + ], + [ + "641729133359289", + "8198117831" + ], + [ + "643744592455058", + "7303537619" + ], + [ + "644282393261405", + "7914873408" + ], + [ + "647553646266733", + "1483300105" + ], + [ + "681835742516223", + "494751015" + ], + [ + "682505845652037", + "1132140582" + ], + [ + "706035819459340", + "98080531002" + ], + [ + "741718035195957", + "162218835" + ], + [ + "860392088596291", + "56073594" + ] + ] + ], + [ + "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B", + [ + [ + "86790953888750", + "38576992385" + ], + [ + "200625410465815", + "27121737219" + ], + [ + "203337173447397", + "44485730835" + ], + [ + "207234905273707", + "17459074945" + ], + [ + "207270328594324", + "49984112432" + ], + [ + "208172233828826", + "26535963154" + ], + [ + "209057370939437", + "19654542435" + ], + [ + "209905911270631", + "51680614449" + ], + [ + "209957591885080", + "193338988216" + ], + [ + "212591835915023", + "94239272075" + ], + [ + "213229524257532", + "56443162240" + ], + [ + "213336723478778", + "46929014315" + ], + [ + "213383652493093", + "46820732322" + ], + [ + "213658788094189", + "46596908794" + ], + [ + "214949047240394", + "135385700183" + ], + [ + "215084432940577", + "135094592523" + ], + [ + "215439620132931", + "89335158945" + ], + [ + "215528955291876", + "89207795460" + ], + [ + "215618163087336", + "89080704286" + ], + [ + "215707243791622", + "88953884657" + ], + [ + "217010587764381", + "46290484227" + ], + [ + "217563869893679", + "55156826488" + ], + [ + "221813776173855", + "37911640587" + ], + [ + "233377524301320", + "80126513749" + ], + [ + "237867225757655", + "94970341987" + ], + [ + "238323426120979", + "141765636262" + ], + [ + "238513085414760", + "141406044017" + ], + [ + "239248004001388", + "46885972163" + ], + [ + "239294889973551", + "24269363626" + ], + [ + "240291234403735", + "27327225251" + ], + [ + "240589084672177", + "187694536015" + ], + [ + "241109044343173", + "186820539992" + ], + [ + "247641838339634", + "101040572048" + ], + [ + "409557925200195", + "13862188950" + ], + [ + "411664283436334", + "13677512381" + ], + [ + "411709178648065", + "13606320365" + ], + [ + "411722784968430", + "33820000000" + ], + [ + "411756604968430", + "33820000000" + ], + [ + "415230639081557", + "16910000000" + ], + [ + "415247549081557", + "16910000000" + ], + [ + "415264459081557", + "16915000000" + ], + [ + "415281374081557", + "16915000000" + ], + [ + "415314425991557", + "13544000000" + ], + [ + "415327969991557", + "10158000000" + ], + [ + "415338127991557", + "6772000000" + ], + [ + "415344899991557", + "16930000000" + ], + [ + "415383569069219", + "13548000000" + ], + [ + "415397117069219", + "13548000000" + ], + [ + "415476876421248", + "13564000000" + ], + [ + "415552624743282", + "13389422861" + ], + [ + "415566014166143", + "14725577338" + ], + [ + "415580739743481", + "17399191046" + ], + [ + "415598138934527", + "13381218325" + ], + [ + "415611520152852", + "13378806625" + ], + [ + "415624898959477", + "13380333313" + ], + [ + "415638279292790", + "14715582102" + ], + [ + "415652994874892", + "16050036235" + ], + [ + "415669044911127", + "16046566435" + ], + [ + "415685091477562", + "16043097791" + ], + [ + "415701134575353", + "13593121522" + ], + [ + "415714727696875", + "13370532569" + ], + [ + "428524210780265", + "13268338278" + ], + [ + "573818581461780", + "41982081237" + ], + [ + "575626349616280", + "53257255812" + ], + [ + "741131517296797", + "95195568422" + ], + [ + "767989215426960", + "14606754787" + ], + [ + "771127544359367", + "12764830824" + ], + [ + "790591093043508", + "71074869547" + ], + [ + "868345234814461", + "178880088846" + ], + [ + "869175887842680", + "80331618390" + ], + [ + "869256219461070", + "87734515234" + ], + [ + "900352767003453", + "187169856894" + ], + [ + "912339955462822", + "95736000000" + ], + [ + "917463394063277", + "359610000000" + ] + ] + ], + [ + "0x41e2965406330A130e61B39d867c91fa86aA3bB8", + [ + [ + "638304410283199", + "57972833670" + ] + ] + ], + [ + "0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80", + [ + [ + "342977163712331", + "63975413862" + ] + ] + ], + [ + "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf", + [ + [ + "861104480251463", + "324510990839" + ], + [ + "870558058147864", + "49189108815" + ], + [ + "887051135343310", + "60164823097" + ], + [ + "887243147406769", + "46252901321" + ] + ] + ], + [ + "0x4254e393674B85688414a2baB8C064FF96a408F1", + [ + [ + "79244849356805", + "51965469308" + ], + [ + "143749224578097", + "195601904457" + ] + ] + ], + [ + "0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7", + [ + [ + "443860431104984", + "23385195001" + ] + ] + ], + [ + "0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31", + [ + [ + "179882609606308", + "176238775506" + ] + ] + ], + [ + "0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569", + [ + [ + "76402185409195", + "22516244343" + ] + ] + ], + [ + "0x43816d942FA5977425D2aF2a4Fc5Adef907dE010", + [ + [ + "744283423047316", + "5598000000" + ] + ] + ], + [ + "0x4384f7916e165F0d24Ab3935965492229dfd50ea", + [ + [ + "649143417557047", + "5043054" + ] + ] + ], + [ + "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7", + [ + [ + "190560408853579", + "17822553583" + ], + [ + "385200050200822", + "12787260456" + ] + ] + ], + [ + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", + [ + [ + "420829723023", + "12564061345" + ], + [ + "4942141056624", + "1129385753" + ], + [ + "4955774616406", + "85802365" + ], + [ + "28365015360976", + "1000000000" + ], + [ + "28366015360976", + "1000000000" + ], + [ + "28367015360976", + "1000000000" + ], + [ + "28396822783467", + "2180869530" + ], + [ + "28399003652997", + "19090914955" + ], + [ + "28436831873163", + "1109129488" + ], + [ + "28437941002651", + "1206768540" + ], + [ + "28439199913335", + "896325564" + ], + [ + "28456831873163", + "1000000000" + ], + [ + "28457831873163", + "1000000000" + ], + [ + "28476232963741", + "1000000000" + ], + [ + "28477232963741", + "1000000000" + ], + [ + "28861157837851", + "7671502446" + ], + [ + "31620980803307", + "25104421" + ], + [ + "32165371093183", + "5644256527" + ], + [ + "33155888849890", + "522412224" + ], + [ + "33178643999918", + "8231353455" + ], + [ + "33253286873261", + "9664144600" + ], + [ + "76006574486488", + "12000000000" + ], + [ + "78617270835971", + "22778336323" + ], + [ + "93244962831954", + "3466008022725" + ], + [ + "860235430554267", + "12817228360" + ], + [ + "861574350043908", + "4987547355" + ], + [ + "861688842729623", + "6378966633" + ], + [ + "866867341387950", + "1210047061" + ], + [ + "883474337359063", + "55249364508" + ], + [ + "883752711206313", + "17679122867" + ], + [ + "884692363137944", + "20022518305" + ], + [ + "886956426850400", + "13791046304" + ] + ] + ], + [ + "0x43b43aA7Ea873e8d7650f64ca24BeC007D6CD920", + [ + [ + "119938474317595", + "231684492403" + ], + [ + "197112848801207", + "191819355151" + ], + [ + "197304668156358", + "347968913517" + ], + [ + "634297257454226", + "8643272696" + ], + [ + "634318197219686", + "20000000000" + ], + [ + "634389262085325", + "5903735025" + ], + [ + "634951612625176", + "6468282284" + ], + [ + "635130589958365", + "59209280000" + ], + [ + "641243528586934", + "224172731213" + ], + [ + "643113131975195", + "4579348454" + ], + [ + "644402952187282", + "11034160064" + ], + [ + "644427143015560", + "10697128872" + ], + [ + "682720800766215", + "105474278261" + ], + [ + "759973111455038", + "190360000000" + ] + ] + ], + [ + "0x4432e64624F4c64633466655de3D5132ad407343", + [ + [ + "489636306256", + "76923076" + ], + [ + "499953138393", + "1624738693" + ], + [ + "759972749054172", + "53680953" + ], + [ + "761858063237895", + "53575113" + ], + [ + "762840533673019", + "40875451574" + ], + [ + "762881409124593", + "45392997396" + ], + [ + "766112516278924", + "256869092" + ] + ] + ], + [ + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", + [ + [ + "519636306256", + "435653558" + ], + [ + "28061198121035", + "18536597032" + ], + [ + "28425394212038", + "3071807226" + ], + [ + "28859391130925", + "1549632000" + ] + ] + ], + [ + "0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545", + [ + [ + "33151381475806", + "1044633475" + ], + [ + "643087290738377", + "1586716252" + ] + ] + ], + [ + "0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F", + [ + [ + "516363563859602", + "772670414147" + ] + ] + ], + [ + "0x448a549593020696455D9b5e25e0b0fB7a71201E", + [ + [ + "507995893644699", + "48468507344" + ], + [ + "529799210870675", + "13171499195" + ], + [ + "529862978616276", + "72277031524" + ] + ] + ], + [ + "0x4497aAbaa9C178dc1525827b1690a3b8f3647457", + [ + [ + "141593397391504", + "168801655493" + ] + ] + ], + [ + "0x44db0002349036164dD46A04327201Eb7698A53e", + [ + [ + "643938854351013", + "228851828" + ], + [ + "644373889298847", + "3084780492" + ], + [ + "768072180047322", + "2519675802" + ] + ] + ], + [ + "0x44E836EbFEF431e57442037b819B23fd29bc3B69", + [ + [ + "585452484380922", + "590804533993" + ], + [ + "634372867374605", + "167260560" + ], + [ + "634373034635165", + "2955966531" + ], + [ + "634384029519721", + "5232565604" + ], + [ + "634414601014386", + "6732679734" + ], + [ + "634471029687631", + "1144842671" + ], + [ + "634946964475864", + "4648149312" + ], + [ + "644729591640166", + "792144308" + ], + [ + "648094970693749", + "4657050598" + ], + [ + "649184311283738", + "11312622545" + ], + [ + "649761686809083", + "11781355408" + ], + [ + "652479040083562", + "3951780206" + ] + ] + ], + [ + "0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB", + [ + [ + "273550612806852", + "119672848374" + ] + ] + ], + [ + "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975", + [ + [ + "257953922346879", + "78731552385" + ], + [ + "309552368765977", + "50532033501" + ], + [ + "638949411896201", + "2100140818" + ], + [ + "643118187155825", + "5070971174" + ], + [ + "643811556089323", + "9000076282" + ], + [ + "643969388479223", + "2093638974" + ] + ] + ], + [ + "0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA", + [ + [ + "345230873758247", + "120151660091" + ] + ] + ], + [ + "0x4588a155d63CFFC23b3321b4F99E8d34128B227a", + [ + [ + "256610609452753", + "98878990000" + ] + ] + ], + [ + "0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e", + [ + [ + "300537735718283", + "9033860883" + ] + ] + ], + [ + "0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4", + [ + [ + "767502219582512", + "1017640" + ] + ] + ], + [ + "0x46387563927595f5ef11952f74DcC2Ce2E871E73", + [ + [ + "768717602283351", + "10000000" + ], + [ + "768717622283351", + "2694500000" + ] + ] + ], + [ + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", + [ + [ + "185586166390180", + "4605813333" + ] + ] + ], + [ + "0x46b7c8c6513818348beF33cc5638dDe99e5c9E74", + [ + [ + "408347529988115", + "11863530938" + ] + ] + ], + [ + "0x473812413b6A8267C62aB76095463546C1F65Dc7", + [ + [ + "767510533790684", + "852570198" + ], + [ + "769134631191932", + "143341492" + ] + ] + ], + [ + "0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb", + [ + [ + "139632121602326", + "73702619695" + ] + ] + ], + [ + "0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88", + [ + [ + "204109072732682", + "12907895307" + ] + ] + ], + [ + "0x47b2EFa18736C6C211505aEFd321bEC3AC3E8779", + [ + [ + "400534613369686", + "132789821695" + ] + ] + ], + [ + "0x47C2f43D7fE9604c0f9cd4F6D209648a4E8e0209", + [ + [ + "130708317757427", + "358852500300" + ] + ] + ], + [ + "0x48070111032FE753d1a72198d29b1811825A264e", + [ + [ + "665432395338264", + "268948474274" + ], + [ + "668538888477323", + "173806994620" + ], + [ + "669549803608896", + "188830987043" + ], + [ + "671213571259037", + "238241613308" + ], + [ + "671471895749521", + "224577013993" + ] + ] + ], + [ + "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351", + [ + [ + "194902848948000", + "678300326761" + ], + [ + "198400769373984", + "522905317827" + ], + [ + "220690466846146", + "526712108816" + ], + [ + "234257642043144", + "86640000000" + ], + [ + "237033531028709", + "216100000000" + ], + [ + "239428834403735", + "862400000000" + ], + [ + "245143778851644", + "240081188008" + ], + [ + "248239496710377", + "209638678922" + ], + [ + "248611315273600", + "643500000000" + ], + [ + "249254815273600", + "216079626755" + ], + [ + "252051631959570", + "859142789165" + ], + [ + "252910774748735", + "1020962098385" + ], + [ + "254599239282940", + "351175706375" + ], + [ + "254950414989315", + "1019094463438" + ], + [ + "255969509452753", + "641100000000" + ], + [ + "257492898458484", + "188408991793" + ] + ] + ], + [ + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", + [ + [ + "264978511678838", + "7633129939" + ], + [ + "311308648020422", + "23542648323" + ], + [ + "430074784791709", + "5342881647" + ], + [ + "458937267162882", + "1840684464" + ], + [ + "477187476187107", + "1918866314" + ], + [ + "477189395053421", + "1926694373" + ], + [ + "477191321747794", + "1925324510" + ], + [ + "477193247072304", + "1928422141" + ], + [ + "480549001681271", + "1936443717" + ], + [ + "507993888424871", + "2005219828" + ], + [ + "508044362152043", + "2021544393" + ], + [ + "638287014203068", + "6170341451" + ], + [ + "640681813289989", + "2884062719" + ], + [ + "643064981952810", + "5052470551" + ], + [ + "643862412346720", + "5109096170" + ], + [ + "647209674578671", + "10179109779" + ] + ] + ], + [ + "0x4888c0030b743c17C89A8AF875155cf75dCfd1E1", + [ + [ + "767302481235981", + "5239462203" + ] + ] + ], + [ + "0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91", + [ + [ + "586109598020889", + "5946000000" + ] + ] + ], + [ + "0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0", + [ + [ + "262708652965979", + "892676539" + ] + ] + ], + [ + "0x48e9E2F211371bD2462e44Af3d2d1aA610437f82", + [ + [ + "667085979405936", + "7331625468" + ] + ] + ], + [ + "0x48F8738386D62948148D0483a68D692492e53904", + [ + [ + "495222864611440", + "35654060356" + ] + ] + ], + [ + "0x4932Ad7cde36e2aD8724f86648dF772D0413c39E", + [ + [ + "83129576696094", + "517995825113" + ] + ] + ], + [ + "0x49444e6d0b374f33c43D5d27c53d0504241B9553", + [ + [ + "228469619062286", + "4748040000" + ], + [ + "264656791222470", + "47931342976" + ], + [ + "272768921777231", + "49267287724" + ], + [ + "311332190668745", + "92255508651" + ] + ] + ], + [ + "0x4949D9db8Af71A063971a60F918e3C63C30663d7", + [ + [ + "41140829546546", + "132215385271" + ], + [ + "41373044931815", + "2" + ], + [ + "170707469808407", + "15353990995" + ], + [ + "171091120552523", + "168884964002" + ], + [ + "260026533868529", + "42584740555" + ] + ] + ], + [ + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", + [ + [ + "33227297183704", + "653834157" + ], + [ + "212145439369214", + "1113699755" + ], + [ + "279405653734695", + "9627840936" + ], + [ + "320205949886679", + "5543007376" + ] + ] + ], + [ + "0x49cE991352A44f7B50AF79b89a50db6289013633", + [ + [ + "152187983101028", + "20341364703" + ], + [ + "152944600004612", + "25333867824" + ], + [ + "179694459833740", + "11191996912" + ], + [ + "189337100682911", + "32429850581" + ] + ] + ], + [ + "0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9", + [ + [ + "323336011972704", + "240943746648" + ] + ] + ], + [ + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", + [ + [ + "216246125608251", + "21731842340" + ], + [ + "235278940260036", + "30572743902" + ], + [ + "262709545642518", + "234423710407" + ], + [ + "262943969352925", + "856400000000" + ], + [ + "365352062863821", + "32075676524" + ] + ] + ], + [ + "0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256", + [ + [ + "339479065013191", + "22903272033" + ] + ] + ], + [ + "0x4a52078E4706884fc899b2Df902c4D2d852BF527", + [ + [ + "764116786012760", + "434385954" + ] + ] + ], + [ + "0x4A5867445A1Fa5F394268A521720D1d4E5609413", + [ + [ + "484489924611440", + "2578100000000" + ] + ] + ], + [ + "0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521", + [ + [ + "640452235842856", + "37062339827" + ] + ] + ], + [ + "0x4AAE8E210F814916778259840d635AA3e73A4783", + [ + [ + "201153918156661", + "24321462040" + ], + [ + "648113005876132", + "16950613281" + ] + ] + ], + [ + "0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0", + [ + [ + "345025969516572", + "39817721136" + ] + ] + ], + [ + "0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e", + [ + [ + "636825648638295", + "1260667121" + ] + ] + ], + [ + "0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A", + [ + [ + "344862778669736", + "9133462996" + ] + ] + ], + [ + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", + [ + [ + "164597798526063", + "2630224719" + ], + [ + "265994631181050", + "8090890905" + ], + [ + "378228371871768", + "1740766894" + ], + [ + "551460280407903", + "25275274698" + ], + [ + "562580496802308", + "5482000000" + ], + [ + "566627766481746", + "5482750000" + ], + [ + "568559697082546", + "5482750000" + ], + [ + "570295590919484", + "5482750000" + ], + [ + "571912597289484", + "5482750000" + ], + [ + "818727201955775", + "160270131472" + ] + ] + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + [ + [ + "20308652197223", + "42992538368" + ], + [ + "33128882677551", + "22434511734" + ], + [ + "38733626244865", + "36237351724" + ], + [ + "75851623491707", + "91376117280" + ], + [ + "97312189544226", + "962543493539" + ], + [ + "98274733037765", + "225761417993" + ], + [ + "109521368209337", + "25432470215" + ], + [ + "141107886434515", + "25140924405" + ], + [ + "164659166534057", + "656550874126" + ], + [ + "169398711509766", + "84912848439" + ], + [ + "182744208013826", + "594997480373" + ], + [ + "183339205494199", + "94951829258" + ], + [ + "184161154400956", + "57484083188" + ], + [ + "184684071457860", + "320813397796" + ], + [ + "203463090125887", + "277362737859" + ], + [ + "228695819280976", + "435400000000" + ], + [ + "229389778185936", + "59760464812" + ], + [ + "230333526120352", + "93482000000" + ], + [ + "230572253367548", + "434600000000" + ], + [ + "231006853367548", + "403315212327" + ], + [ + "231410168579875", + "434000000000" + ], + [ + "232256551893053", + "136081851228" + ], + [ + "234465804378976", + "433000000000" + ], + [ + "245678239246970", + "429600000000" + ], + [ + "246405622268848", + "429000000000" + ], + [ + "246834622268848", + "593165265392" + ], + [ + "266623247476225", + "31843087062" + ], + [ + "400533285433272", + "1327936414" + ], + [ + "524402842691769", + "277260761697" + ], + [ + "548030249075962", + "2737095195209" + ], + [ + "574794879815863", + "470264676707" + ], + [ + "576273196085064", + "475735746580" + ], + [ + "577250185805214", + "352964012203" + ], + [ + "577994078452897", + "428753685947" + ], + [ + "578422832138844", + "621546025531" + ], + [ + "579151783632625", + "511648078072" + ], + [ + "599186286483471", + "300681637829" + ], + [ + "606325525196387", + "430288154881" + ], + [ + "611048146529128", + "294537267480" + ], + [ + "611342683796608", + "122585177924" + ], + [ + "622350349441157", + "423020213781" + ], + [ + "622773369654938", + "188613792398" + ], + [ + "622976007236649", + "605799007104" + ], + [ + "631737544692156", + "57278437068" + ], + [ + "632737782810716", + "166637595618" + ], + [ + "632923458328218", + "3562084461" + ], + [ + "633174226086802", + "118340636454" + ], + [ + "633293616127503", + "68451648885" + ], + [ + "633362067776388", + "696785610" + ], + [ + "634050042239925", + "2029010620" + ], + [ + "634052071250545", + "1566534038" + ], + [ + "634053637784583", + "732611220" + ], + [ + "634200736479427", + "4790574316" + ], + [ + "634205527053743", + "2600593701" + ], + [ + "634433893789543", + "4541616170" + ], + [ + "634444626397101", + "3241881404" + ], + [ + "634447868278505", + "3785283994" + ], + [ + "636303124680973", + "5741625032" + ], + [ + "638269655222213", + "2789581992" + ], + [ + "639434921077105", + "197428820134" + ], + [ + "639687831454420", + "1841462496" + ], + [ + "639714195158937", + "1002910636" + ], + [ + "640275015971967", + "936457910" + ], + [ + "641492720431748", + "6670046454" + ], + [ + "643047432848730", + "2168510045" + ], + [ + "643899647055493", + "6808576094" + ], + [ + "643945769210064", + "6039028984" + ], + [ + "644368102368333", + "5786930514" + ], + [ + "647162978371458", + "3462235904" + ], + [ + "648721663311036", + "508035028" + ], + [ + "680142146935616", + "114648436337" + ], + [ + "741722138870112", + "1341090085" + ], + [ + "744371763079127", + "20897052664" + ], + [ + "744392660131791", + "12851063713" + ], + [ + "782518705963072", + "9770439640" + ], + [ + "810089111571412", + "50684223342" + ] + ] + ], + [ + "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", + [ + [ + "319932769634923", + "69289110000" + ] + ] + ], + [ + "0x4C3C27eB0C01088348132d6139F6d51FC592dDBD", + [ + [ + "310797339658113", + "5564385258" + ] + ] + ], + [ + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", + [ + [ + "212083814524749", + "53819165244" + ] + ] + ], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + [ + [ + "4905170401522", + "26072576416" + ], + [ + "106839237525292", + "4821011987" + ], + [ + "106846924633216", + "1424576250" + ], + [ + "127568340031921", + "929795062302" + ], + [ + "128498135094223", + "929805062302" + ], + [ + "129427940156525", + "10000000" + ], + [ + "190477983853123", + "31429058425" + ], + [ + "278886678120078", + "16930293743" + ], + [ + "315294748069199", + "4230684000" + ], + [ + "315298978753199", + "38949316540" + ], + [ + "672771638984332", + "58636813154" + ], + [ + "675003539778787", + "83138632015" + ], + [ + "679651587058721", + "17303169600" + ], + [ + "742546489600908", + "12755718599" + ], + [ + "744706441326176", + "26346793433" + ] + ] + ], + [ + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", + [ + [ + "148125503301315", + "613663117381" + ], + [ + "148782143329299", + "676628312802" + ], + [ + "152969933872436", + "202026433529" + ], + [ + "157281617133575", + "136137390673" + ], + [ + "160958961495278", + "49543800744" + ], + [ + "166316667085303", + "492948149258" + ], + [ + "167125029052537", + "433007073267" + ], + [ + "168960920980615", + "413035848007" + ], + [ + "172621356097887", + "637822580221" + ] + ] + ], + [ + "0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6", + [ + [ + "75787223567174", + "8000000000" + ] + ] + ], + [ + "0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315", + [ + [ + "670256915967082", + "9076923076" + ] + ] + ], + [ + "0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1", + [ + [ + "213167569962724", + "54975000000" + ] + ] + ], + [ + "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45", + [ + [ + "147423809634512", + "309692805971" + ], + [ + "829914755106014", + "216642349742" + ] + ] + ], + [ + "0x4d26976EC64f11ce10325297363862669fCaAaD5", + [ + [ + "232161195486445", + "95356406608" + ] + ] + ], + [ + "0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E", + [ + [ + "220231823417551", + "8388831222" + ] + ] + ], + [ + "0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59", + [ + [ + "632628975546639", + "9910714625" + ], + [ + "635426328011968", + "6512126913" + ], + [ + "767307720698184", + "2572274214" + ] + ] + ], + [ + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", + [ + [ + "31587707407402", + "1433039440" + ], + [ + "680815156134799", + "3527890346" + ], + [ + "811172285844826", + "7130903829" + ] + ] + ], + [ + "0x4E2572d9161Fc58743A4622046Ca30a1fB538670", + [ + [ + "185541048150117", + "45118240063" + ] + ] + ], + [ + "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a", + [ + [ + "167695362380301", + "28977789728" + ], + [ + "171893729223786", + "47575900440" + ], + [ + "189385728874825", + "1355785855" + ], + [ + "244974269772648", + "42559348679" + ], + [ + "341968317849767", + "21768707480" + ] + ] + ], + [ + "0x4e6DA2D137281CaDa5E82372849CbA8D65fC88C7", + [ + [ + "819841240087247", + "2404456000000" + ], + [ + "825748187827247", + "10000000" + ] + ] + ], + [ + "0x4E7837928eD3E7AccF715da1aE86c0A0f5280DC0", + [ + [ + "818887472087247", + "953768000000" + ], + [ + "822245696087247", + "1681687000000" + ] + ] + ], + [ + "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79", + [ + [ + "70430142099789", + "21671151028" + ], + [ + "141461024306948", + "25160811724" + ], + [ + "181615502967276", + "256079218906" + ], + [ + "182111406992128", + "540739337424" + ], + [ + "190604505005626", + "148971205022" + ], + [ + "218398796232609", + "371633895678" + ], + [ + "356006487964429", + "1968851124565" + ], + [ + "458578467162882", + "358800000000" + ], + [ + "562925665802308", + "496100000000" + ], + [ + "642621542329649", + "422340000000" + ] + ] + ], + [ + "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8", + [ + [ + "152096973053240", + "38570577566" + ], + [ + "168308503749870", + "17838668722" + ], + [ + "201024333624707", + "39603521290" + ] + ] + ], + [ + "0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9", + [ + [ + "595305161120334", + "32982900000" + ] + ] + ], + [ + "0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b", + [ + [ + "595129885790334", + "12195297500" + ] + ] + ], + [ + "0x4fE52118aeF6CE3916a27310019af44bbc64cc31", + [ + [ + "668527480798265", + "11407679058" + ] + ] + ], + [ + "0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869", + [ + [ + "888282326308800", + "20896050000" + ], + [ + "911830101743081", + "61984567762" + ] + ] + ], + [ + "0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6", + [ + [ + "335865006920670", + "298975120881" + ] + ] + ], + [ + "0x5004Be84E3C40fAf175218a50779b333B7c84276", + [ + [ + "106977570072731", + "28997073991" + ], + [ + "221600570194728", + "78967589731" + ] + ] + ], + [ + "0x507165FF0417126930D7F79163961DE8Ff19c8b8", + [ + [ + "299720079337431", + "61879832343" + ], + [ + "601480769346490", + "59538073434" + ] + ] + ], + [ + "0x5084949C8f7bf350c646796B242010919f70898E", + [ + [ + "310785629091202", + "11710566911" + ] + ] + ], + [ + "0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91", + [ + [ + "355452879506659", + "183159970434" + ] + ] + ], + [ + "0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE", + [ + [ + "20300839138393", + "7813058830" + ], + [ + "56088817072755", + "1373181360" + ], + [ + "75850623491707", + "1000000000" + ], + [ + "190753476210648", + "20871314978" + ] + ] + ], + [ + "0x51b2Adf97650A8D732380f2D04f5922D740122E3", + [ + [ + "429986874393417", + "2598292" + ] + ] + ], + [ + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", + [ + [ + "78582810315624", + "57126564" + ], + [ + "741720392463454", + "1213327771" + ], + [ + "741724318106214", + "903473746" + ], + [ + "768563220420978", + "624282480" + ], + [ + "848290002730558", + "29448441435" + ], + [ + "866984767069036", + "39504417438" + ] + ] + ], + [ + "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", + [ + [ + "4955860418771", + "1" + ], + [ + "31614934747613", + "1" + ] + ] + ], + [ + "0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04", + [ + [ + "160580454568520", + "48526305109" + ], + [ + "236912893424045", + "96525595990" + ], + [ + "265652667275489", + "38978848813" + ], + [ + "265744121929071", + "75907148840" + ] + ] + ], + [ + "0x52c9A7E7D265A09Db125b7369BC7487c589a7604", + [ + [ + "78590049172294", + "25000000000" + ], + [ + "78640049172294", + "8481454530" + ], + [ + "189369530533492", + "16198341333" + ], + [ + "661983733769654", + "15472843550" + ] + ] + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + [ + [ + "28363579478364", + "1435882612" + ], + [ + "28389816079096", + "1342441520" + ], + [ + "28543316405699", + "10000000000" + ], + [ + "31589140446842", + "1087363286" + ], + [ + "31895311480935", + "37500000000" + ], + [ + "33113307703346", + "1640314930" + ], + [ + "33114948018276", + "11391726558" + ], + [ + "87847550743905", + "1470857142" + ], + [ + "153927493640576", + "2840837091" + ], + [ + "218276915754234", + "4894741242" + ], + [ + "656417747360113", + "150312800000" + ], + [ + "659204039516835", + "162851173415" + ], + [ + "664082221035166", + "109968508060" + ], + [ + "680448990498012", + "15612748908" + ], + [ + "680583466401093", + "63765566607" + ], + [ + "764084044302811", + "8432491225" + ], + [ + "786445115477214", + "9733082256" + ], + [ + "786465641333843", + "361176492977" + ], + [ + "809741706356301", + "347405215111" + ], + [ + "831150810027751", + "4961004225375" + ], + [ + "849324103935428", + "22264686170" + ], + [ + "860327274630651", + "64806240466" + ], + [ + "861428991246261", + "67915110484" + ], + [ + "861519676698002", + "54673315682" + ], + [ + "867913521988801", + "85134432163" + ], + [ + "869671488793566", + "270561010095" + ], + [ + "883314902543648", + "80750086384" + ], + [ + "884197150881189", + "82735987498" + ], + [ + "884544061894467", + "148297525258" + ], + [ + "884712386053732", + "206866376884" + ], + [ + "887289400595318", + "528457624315" + ], + [ + "889130026620811", + "150451249816" + ], + [ + "908416080789833", + "495671778827" + ], + [ + "912103223076857", + "101489503304" + ], + [ + "915936244419798", + "556151437225" + ], + [ + "919459324797698", + "1874301801" + ] + ] + ], + [ + "0x52E03B19b1919867aC9fe7704E850287FC59d215", + [ + [ + "127528827082220", + "23" + ], + [ + "273300100037798", + "21" + ] + ] + ], + [ + "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e", + [ + [ + "647535673796014", + "8956445312" + ], + [ + "649914737881786", + "1060562802" + ], + [ + "649961535629507", + "926753565" + ], + [ + "650399504800190", + "50000000000" + ], + [ + "664371001883072", + "100000000000" + ], + [ + "664669584727359", + "100000000000" + ] + ] + ], + [ + "0x52f3F126342fca99AC76D7c8f364671C9bb3fC67", + [ + [ + "28378489699267", + "3525661709" + ], + [ + "28527337307937", + "8602703555" + ], + [ + "682719567415141", + "1233351074" + ], + [ + "794061190682938", + "105670000000" + ], + [ + "798295877222658", + "224080000000" + ], + [ + "802468945375515", + "612750000000" + ], + [ + "826629538553740", + "1000261800000" + ], + [ + "848319451171993", + "979453120800" + ], + [ + "859905651255175", + "304954128" + ], + [ + "859905956209303", + "308101440" + ], + [ + "859906264310743", + "159970000" + ], + [ + "859906424280743", + "149236172" + ], + [ + "859906573516915", + "309959561" + ] + ] + ], + [ + "0x532744D22891C4fccd5c4250D62894b3153667a7", + [ + [ + "313016691552535", + "2278056516664" + ] + ] + ], + [ + "0x533ac5848d57672399a281b65A834d88B0b2dF45", + [ + [ + "153772625926682", + "5169447509" + ], + [ + "170545003992988", + "34261572899" + ] + ] + ], + [ + "0x533af56B4E0F3B278841748E48F61566E6C763D6", + [ + [ + "50403384864418", + "684928780381" + ], + [ + "55978695528887", + "98624652124" + ], + [ + "71075218222854", + "1423422740439" + ], + [ + "85965913553816", + "246473581350" + ], + [ + "141984981846493", + "5305457400" + ], + [ + "168838927569280", + "43399440000" + ], + [ + "213156661163524", + "10908799200" + ], + [ + "395319335789415", + "10622166178" + ], + [ + "396247819554380", + "6712778652" + ], + [ + "396883196948187", + "9297374844" + ], + [ + "404830849052348", + "1333600000000" + ] + ] + ], + [ + "0x5355C2B0e056d032a4F11E096c235e9a59F5E6af", + [ + [ + "408369482519053", + "28099958602" + ], + [ + "441066506534105", + "177042580917" + ] + ] + ], + [ + "0x53bA90071fF3224AdCa6d3c7960Ad924796FED03", + [ + [ + "767807852820920", + "5000266651" + ] + ] + ], + [ + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", + [ + [ + "4962909295005", + "6537846472" + ], + [ + "88686339837893", + "72107788456" + ], + [ + "145481260679750", + "17152586398" + ], + [ + "643820556165605", + "802012435" + ], + [ + "669738634595939", + "93293333333" + ], + [ + "669838634595939", + "74368755714" + ], + [ + "677121804724326", + "50583045714" + ], + [ + "711185956536817", + "1734187672072" + ] + ] + ], + [ + "0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0", + [ + [ + "109550819978942", + "29596581820" + ], + [ + "664192189543226", + "178812339846" + ] + ] + ], + [ + "0x53dC93b33d63094770A623406277f3B83a265588", + [ + [ + "31610478288170", + "3033707865" + ], + [ + "72528477491993", + "3333333333" + ], + [ + "72531810825326", + "4063998521" + ], + [ + "88758447626349", + "20833333332" + ], + [ + "88779280959681", + "29006615802" + ], + [ + "680936349640484", + "151308941294" + ], + [ + "685845897019256", + "87924018978" + ], + [ + "699375941774655", + "57060000000" + ], + [ + "721168129970053", + "57100000000" + ] + ] + ], + [ + "0x540dC960E3e10304723bEC44D20F682258e705fC", + [ + [ + "643867521442890", + "5230119599" + ], + [ + "643941720431899", + "2570523222" + ], + [ + "643971482118197", + "7816313681" + ], + [ + "644041635442945", + "3961074335" + ], + [ + "644140807474986", + "474329513" + ], + [ + "644187073578869", + "1966296013" + ], + [ + "644509728633115", + "5911843872" + ], + [ + "644515640476987", + "4714730337" + ], + [ + "644520355207324", + "4844042113" + ], + [ + "644534799459665", + "3462430426" + ], + [ + "644565379373403", + "2378948420" + ], + [ + "644710856021943", + "4701268223" + ], + [ + "646582538399546", + "4154745941" + ], + [ + "646763711081949", + "3202908158" + ], + [ + "648687763421959", + "19697985" + ], + [ + "648731709846064", + "9695779077" + ], + [ + "664079793068081", + "2427967085" + ] + ] + ], + [ + "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d", + [ + [ + "632920635611046", + "2822717172" + ], + [ + "634428247621337", + "5646168206" + ], + [ + "860392157865027", + "160" + ], + [ + "860392157865187", + "160" + ], + [ + "860392157865347", + "160" + ], + [ + "860392157865507", + "160" + ], + [ + "860392157865667", + "160" + ], + [ + "860392157865827", + "160" + ], + [ + "860392157865987", + "160" + ], + [ + "860392157882045", + "160" + ], + [ + "860392157882205", + "160" + ] + ] + ], + [ + "0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235", + [ + [ + "156417138708810", + "394484096414" + ], + [ + "181268415341323", + "347087625953" + ] + ] + ], + [ + "0x54CE05973cFadd3bbACf46497C08Fc6DAe156521", + [ + [ + "150357663657575", + "3286403040" + ] + ] + ], + [ + "0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529", + [ + [ + "460662416079583", + "75343489480" + ] + ] + ], + [ + "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", + [ + [ + "743594952406230", + "3702219951" + ], + [ + "744275435422955", + "7987624361" + ], + [ + "744783236322609", + "5670211506" + ] + ] + ], + [ + "0x55179ffEFc2d49daB14BA15D25fb023408450409", + [ + [ + "28878829340297", + "26089431820" + ], + [ + "224456428823174", + "10654918204" + ], + [ + "224524060683299", + "8919410803" + ], + [ + "224532980094102", + "6674611456" + ], + [ + "232392633744281", + "6488496940" + ], + [ + "232609461916521", + "12502396040" + ], + [ + "249755146143756", + "4711804625" + ], + [ + "250087971175726", + "5374122600" + ], + [ + "511001020567237", + "58714000000" + ], + [ + "764092476794036", + "1122048723" + ], + [ + "766172653433120", + "8473331791" + ] + ] + ], + [ + "0x553114377d81bC47E316E238a5fE310D60a06418", + [ + [ + "164636156534057", + "23010000000" + ] + ] + ], + [ + "0x5540D536A128F584A652aA2F82FF837BeE6f5790", + [ + [ + "201770194996450", + "17567638887" + ] + ] + ], + [ + "0x554B1Bd47B7d180844175cA4635880da8A3c70B9", + [ + [ + "31590227810128", + "15764212654" + ] + ] + ], + [ + "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", + [ + [ + "415410665069219", + "66211352029" + ] + ] + ], + [ + "0x558C4aFf233f17Ac0d25335410fAEa0453328da8", + [ + [ + "4943270442377", + "5311147809" + ] + ] + ], + [ + "0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df", + [ + [ + "726112334601716", + "9764435234" + ] + ] + ], + [ + "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", + [ + [ + "83666355470554", + "70656147044" + ], + [ + "87397034064037", + "92368586236" + ] + ] + ], + [ + "0x567dA563057BE92a42B0c14a765bFB1a3dD250be", + [ + [ + "198134260543486", + "44675770159" + ] + ] + ], + [ + "0x568092fb0aA37027a4B75CFf2492Dbe298FcE650", + [ + [ + "322441410680368", + "320032018333" + ] + ] + ], + [ + "0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE", + [ + [ + "267055303304236", + "38563788377" + ] + ] + ], + [ + "0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95", + [ + [ + "192545949837218", + "35159275827" + ] + ] + ], + [ + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", + [ + [ + "27558939982817", + "104919293460" + ], + [ + "28704611676395", + "34985445810" + ], + [ + "28810185690105", + "49205440820" + ], + [ + "60572404072549", + "16517000000" + ], + [ + "61001668124646", + "10999922556" + ], + [ + "67382995986762", + "45774437679" + ], + [ + "67445055994809", + "29930693725" + ], + [ + "86605154393710", + "164176600500" + ], + [ + "88448221835372", + "5000000000" + ], + [ + "88950623419050", + "5174776280" + ], + [ + "135558665981634", + "60968023969" + ], + [ + "135619634005603", + "176852411011" + ], + [ + "135911624943885", + "11506814800" + ], + [ + "135923131758685", + "183632739945" + ], + [ + "136106764498630", + "505635357280" + ], + [ + "140140427866343", + "15229041840" + ], + [ + "153712262346661", + "12216139000" + ], + [ + "153724478485661", + "7868244366" + ], + [ + "180499904581500", + "18614866100" + ], + [ + "180518519447600", + "94477416180" + ], + [ + "185427780283324", + "113267866793" + ], + [ + "185590772203513", + "67134250000" + ], + [ + "185723300642827", + "45000000000" + ], + [ + "190994050615925", + "156533816852" + ], + [ + "204121980627989", + "292114744200" + ], + [ + "211474615401946", + "234173311666" + ], + [ + "212437153941206", + "50896592466" + ], + [ + "212488050533672", + "36881868335" + ], + [ + "215246589705839", + "19663672112" + ], + [ + "216146125608251", + "100000000000" + ], + [ + "218128970981269", + "85000000000" + ], + [ + "219566038129153", + "7309432177" + ], + [ + "223609195625824", + "23784920032" + ], + [ + "224386670956527", + "69757866647" + ], + [ + "224467083741378", + "56976941921" + ], + [ + "224539654705558", + "91774095238" + ], + [ + "229449538650748", + "40000000000" + ], + [ + "230164010722177", + "19574398175" + ], + [ + "230183585120352", + "79941000000" + ], + [ + "230263526120352", + "70000000000" + ], + [ + "232524752844281", + "84709072240" + ], + [ + "232624752844281", + "40000000000" + ], + [ + "235550743976314", + "89966016400" + ], + [ + "249616082767406", + "67236052780" + ], + [ + "249702012822236", + "33133321520" + ], + [ + "249775146143756", + "10000000000" + ], + [ + "249785146143756", + "235946386490" + ], + [ + "250060921972456", + "27049203270" + ], + [ + "250093345298326", + "16840000000" + ], + [ + "250747526004490", + "17161170037" + ], + [ + "258074901441630", + "7830821110" + ], + [ + "258830805144696", + "14803898208" + ], + [ + "264303602202615", + "9804554407" + ], + [ + "270466945437103", + "26274622666" + ], + [ + "300503468200478", + "34267517805" + ], + [ + "312842343103991", + "40248448544" + ], + [ + "322976729089818", + "26917828556" + ], + [ + "338388026785557", + "443282416104" + ], + [ + "376486089733614", + "3211888888" + ], + [ + "376489301659889", + "8274303563" + ], + [ + "376497575963452", + "18797185439" + ], + [ + "648990230194838", + "19899717937" + ], + [ + "657330275690372", + "153179376309" + ], + [ + "658709788202512", + "167217199434" + ], + [ + "659013038876321", + "33268342087" + ], + [ + "663001818967270", + "379699841755" + ], + [ + "664769584727359", + "98973775726" + ], + [ + "665151735234090", + "280660104174" + ], + [ + "668361111992693", + "103496806590" + ], + [ + "668504381526555", + "23099271710" + ], + [ + "669025371837989", + "82189769281" + ], + [ + "670213265504450", + "43650433333" + ], + [ + "681836237267238", + "34376130558" + ], + [ + "682519630375542", + "199937039599" + ], + [ + "683191224341172", + "565341232663" + ], + [ + "684408807600794", + "2150034146" + ], + [ + "684410957634940", + "583900111083" + ], + [ + "685282395588202", + "221013829371" + ], + [ + "685736066448290", + "109830570966" + ], + [ + "685933821038234", + "67873369400" + ], + [ + "686001694407634", + "178432547398" + ], + [ + "686180126955032", + "4714572065" + ], + [ + "699968832611949", + "68045299671" + ], + [ + "700043865765889", + "1122080009786" + ], + [ + "708854489473588", + "2331467063229" + ], + [ + "720550874525684", + "144562488635" + ], + [ + "721280717882254", + "114544305063" + ], + [ + "741445158783872", + "271967604583" + ], + [ + "741721605791225", + "533078887" + ], + [ + "742050186314922", + "151582713093" + ], + [ + "742267259580163", + "224105067098" + ], + [ + "759864406377749", + "45278692" + ], + [ + "759972377216198", + "1594793" + ], + [ + "759972486436407", + "34864069" + ], + [ + "759972521300476", + "24690921" + ], + [ + "759973028640596", + "39305197" + ], + [ + "760196673266902", + "98401627464" + ], + [ + "762926802121989", + "114425762" + ], + [ + "763793608493475", + "9689035799" + ], + [ + "764066849504423", + "17132148668" + ], + [ + "764298360543842", + "32902204320" + ], + [ + "766113678648016", + "58974785104" + ], + [ + "767132401168095", + "168190067886" + ], + [ + "828862490763473", + "1052264342541" + ], + [ + "849357802416126", + "207036916985" + ], + [ + "868148430520173", + "107099547303" + ] + ] + ], + [ + "0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF", + [ + [ + "343678737441661", + "114019585" + ] + ] + ], + [ + "0x57068722592FeD292Aa9fdfA186A156D00A87a59", + [ + [ + "92388384975723", + "113668344638" + ] + ] + ], + [ + "0x5775b780006cBaC39aA84432BC6157E11BC5f672", + [ + [ + "325931340958674", + "25332961300" + ] + ] + ], + [ + "0x579De8E7dA10b45b43a24aC21dA8b1a3a9452D64", + [ + [ + "647334889222283", + "22379191354" + ] + ] + ], + [ + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", + [ + [ + "4839056178271", + "66114223251" + ], + [ + "4969447141477", + "709218727" + ], + [ + "726122099036950", + "27741210361" + ] + ] + ], + [ + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", + [ + [ + "786871206108027", + "177450395" + ] + ] + ], + [ + "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00", + [ + [ + "634754120308907", + "3618830978" + ], + [ + "634821984317931", + "7385494623" + ] + ] + ], + [ + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", + [ + [ + "33164487220396", + "11277021864" + ], + [ + "87853421681484", + "90152601115" + ], + [ + "191484262155819", + "9788460106" + ], + [ + "193305911888160", + "42398880624" + ], + [ + "209627435518367", + "42239183866" + ], + [ + "209767630496078", + "138280774553" + ], + [ + "217337407064629", + "26811333934" + ], + [ + "659581106622223", + "150000000000" + ] + ] + ], + [ + "0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba", + [ + [ + "342111695751196", + "448608504781" + ] + ] + ], + [ + "0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746", + [ + [ + "195644797961898", + "2774320296" + ], + [ + "767317356953914", + "3894794928" + ], + [ + "767578893549534", + "4324000000" + ], + [ + "767848368968398", + "4516000000" + ], + [ + "767885198281509", + "4525000000" + ] + ] + ], + [ + "0x58e4e9D30Da309624c785069A99709b16276B196", + [ + [ + "595179326638334", + "9510069500" + ] + ] + ], + [ + "0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9", + [ + [ + "495326332814565", + "12999411038" + ] + ] + ], + [ + "0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509", + [ + [ + "327321196340864", + "12175651681" + ] + ] + ], + [ + "0x59229eFD5206968301ed67D5b08E1C39e0179897", + [ + [ + "342943443750453", + "4560091570" + ], + [ + "860664797310295", + "146130245088" + ] + ] + ], + [ + "0x59b9540ee2A8b2ab527a5312Ab622582b884749B", + [ + [ + "213449770801238", + "900000000" + ] + ] + ], + [ + "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", + [ + [ + "268214836546577", + "98936672471" + ] + ] + ], + [ + "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef", + [ + [ + "529636306256", + "3231807785977" + ], + [ + "369554524035869", + "1824524280000" + ], + [ + "508046383696436", + "2758540080000" + ] + ] + ], + [ + "0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F", + [ + [ + "506978128481636", + "138928506054" + ] + ] + ], + [ + "0x59dC1eaE22eEbD6CfbD144ee4b6f4048F8A59880", + [ + [ + "267569815164874", + "20246736273" + ] + ] + ], + [ + "0x5A25455Cf1c5309FE746FD3904af00e766Eca65f", + [ + [ + "668107032501837", + "207192309402" + ] + ] + ], + [ + "0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79", + [ + [ + "328103575799830", + "1472314798598" + ], + [ + "329599239087424", + "1929155008439" + ], + [ + "341145726299533", + "435082846929" + ], + [ + "378591197691403", + "969373424488" + ], + [ + "392591320788074", + "1062369645874" + ], + [ + "544017382750618", + "105536223506" + ] + ] + ], + [ + "0x5A32038d9a3e6b7CffC28229bB214776bf50CE50", + [ + [ + "468838067240993", + "658300036400" + ] + ] + ], + [ + "0x5a34897A6c1607811Ae763350839720c02107682", + [ + [ + "768720422249176", + "56918125000" + ] + ] + ], + [ + "0x5a57107A58A0447066C376b211059352B617c3BA", + [ + [ + "579117588495464", + "2191004882" + ] + ] + ], + [ + "0x5A803cD039d7c427AD01875990f76886cC574339", + [ + [ + "242331279929909", + "1009627934604" + ], + [ + "243539818135023", + "823622609198" + ] + ] + ], + [ + "0x5aB883168ab03c97239CEf348D5483FB2b57aFD9", + [ + [ + "319845777373781", + "86992261142" + ] + ] + ], + [ + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", + [ + [ + "634142881550290", + "4848909225" + ], + [ + "647192844826112", + "12287980322" + ], + [ + "647667749599650", + "29135772559" + ], + [ + "647819555574890", + "3934226800" + ] + ] + ], + [ + "0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b", + [ + [ + "575296204703363", + "831862117" + ] + ] + ], + [ + "0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725", + [ + [ + "270493220059769", + "1070861106258" + ] + ] + ], + [ + "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e", + [ + [ + "87943574282599", + "14956941882" + ], + [ + "181871582186182", + "25944797737" + ], + [ + "202299298031056", + "16158945430" + ] + ] + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + [ + [ + "76018574486488", + "10087313298" + ], + [ + "84547875356697", + "12856872500" + ], + [ + "86221799135166", + "2991378811" + ], + [ + "86279752500167", + "1993398346" + ], + [ + "164284645848934", + "77355000000" + ], + [ + "203382408914965", + "35447202880" + ], + [ + "218213970981269", + "62944772965" + ], + [ + "480550938124988", + "26915995911" + ], + [ + "582542383151295", + "20467308746" + ], + [ + "653082421968959", + "214025000000" + ], + [ + "655813672711333", + "156683400000" + ], + [ + "658409543724785", + "151481732090" + ], + [ + "676839643561375", + "13229284933" + ], + [ + "680256795371953", + "59389696996" + ], + [ + "744358813888924", + "12949190203" + ], + [ + "764060109940964", + "6739563459" + ], + [ + "781933941888477", + "68619328543" + ], + [ + "786454848653590", + "10604585661" + ], + [ + "800170499585294", + "1303886596053" + ], + [ + "809008960598650", + "515797412273" + ], + [ + "859662074503513", + "96628816629" + ], + [ + "859758704934542", + "80698396938" + ], + [ + "860810927686506", + "25000733085" + ], + [ + "861600293087365", + "53711143255" + ], + [ + "883395652630032", + "78684728679" + ], + [ + "884314681255677", + "229380229313" + ], + [ + "886077394374210", + "209848058617" + ], + [ + "887111300166407", + "131847120287" + ], + [ + "902015905173218", + "295817208073" + ], + [ + "908911752569097", + "2098652407026" + ], + [ + "912015746389452", + "50058887216" + ], + [ + "916492395857023", + "451136446595" + ], + [ + "919403195205502", + "2028637197" + ] + ] + ], + [ + "0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4", + [ + [ + "561775060168943", + "48462729763" + ] + ] + ], + [ + "0x5c0ed0a799c7025D3C9F10c561249A996502a62F", + [ + [ + "768471843729210", + "13425961618" + ], + [ + "768485269690828", + "55862378283" + ], + [ + "768546538365412", + "16682055566" + ] + ] + ], + [ + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", + [ + [ + "56102135956552", + "2287841173" + ], + [ + "61081969998060", + "2751729452" + ], + [ + "648056768763062", + "3850108834" + ], + [ + "664471001883072", + "50493335822" + ] + ] + ], + [ + "0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6", + [ + [ + "561471319192178", + "6531451600" + ] + ] + ], + [ + "0x5C6cE0d90b085f29c089D054Ba816610a5d42371", + [ + [ + "250867618379450", + "59395536292" + ] + ] + ], + [ + "0x5c9d09716404556646B0B4567Cb4621C18581f94", + [ + [ + "72555956226539", + "20000000000" + ] + ] + ], + [ + "0x5D02957cF469342084e42F9f4132403Ea4c5fE01", + [ + [ + "767507188351307", + "3345435335" + ], + [ + "786826869494538", + "44336089227" + ] + ] + ], + [ + "0x5D177d3f4878038521936e6449C17BeCd2D10cBA", + [ + [ + "240908580751005", + "28063592168" + ] + ] + ], + [ + "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", + [ + [ + "157835643639028", + "20828898066" + ] + ] + ], + [ + "0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee", + [ + [ + "199564902491196", + "22657073802" + ] + ] + ], + [ + "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", + [ + [ + "167759367131210", + "22900000000" + ], + [ + "167888523131210", + "55944700000" + ], + [ + "237962196099642", + "100073216296" + ], + [ + "310802904043371", + "14439424263" + ], + [ + "325514674435893", + "12665494224" + ], + [ + "326097719542277", + "39015199159" + ], + [ + "331731353814149", + "12750000000" + ], + [ + "394960156695542", + "13280063140" + ], + [ + "394973436758682", + "9294571287" + ], + [ + "394982731329969", + "13275856475" + ], + [ + "587176458056494", + "95701320000" + ], + [ + "588122611316494", + "39546000000" + ], + [ + "588426431066494", + "39546000000" + ], + [ + "588730250816494", + "39546000000" + ] + ] + ], + [ + "0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490", + [ + [ + "344363596850037", + "262152482" + ], + [ + "643965943463481", + "3445015742" + ] + ] + ], + [ + "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B", + [ + [ + "236244855469125", + "38237815837" + ], + [ + "245109370270781", + "34408580863" + ] + ] + ], + [ + "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6", + [ + [ + "33152426109285", + "950000000" + ], + [ + "376451535261141", + "20462887750" + ], + [ + "402285929035461", + "12155421305" + ], + [ + "601721714889098", + "16779875070" + ], + [ + "634408726140467", + "5874873919" + ], + [ + "636816242727841", + "9388515625" + ], + [ + "640269368983719", + "5646988248" + ], + [ + "644531424959665", + "3374500000" + ] + ] + ], + [ + "0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0", + [ + [ + "38718513657669", + "4030014620" + ] + ] + ], + [ + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", + [ + [ + "229131219280976", + "258558904960" + ], + [ + "272277124488125", + "42383755833" + ], + [ + "312882591552535", + "134100000000" + ], + [ + "643668839963316", + "842769388" + ], + [ + "648155192736605", + "7110933861" + ], + [ + "650498612856813", + "471976956" + ] + ] + ], + [ + "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2", + [ + [ + "309775525497403", + "43672091722" + ], + [ + "320003040403364", + "109484641436" + ] + ] + ], + [ + "0x5edd743E40c978590d987c74912b9424B7258677", + [ + [ + "221809097720471", + "4678453384" + ] + ] + ], + [ + "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391", + [ + [ + "266751336572658", + "87321731643" + ], + [ + "868135118214992", + "13312303253" + ] + ] + ], + [ + "0x5F067841319aD19eD32c432ac69DcF32AC3a773F", + [ + [ + "240506937851712", + "67319170048" + ] + ] + ], + [ + "0x5F0f6F695FebF386AA93126237b48c424961797B", + [ + [ + "402409775526018", + "30263707163" + ] + ] + ], + [ + "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", + [ + [ + "187149515866713", + "4230389743" + ] + ] + ], + [ + "0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD", + [ + [ + "782528476402712", + "75051323081" + ] + ] + ], + [ + "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA", + [ + [ + "529771946401834", + "27264468841" + ], + [ + "529812382369870", + "50596246406" + ] + ] + ], + [ + "0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a", + [ + [ + "228358236830906", + "37513251466" + ] + ] + ], + [ + "0x6040FDCa7f81540A89D39848dFC393DfE36efb92", + [ + [ + "120170158809998", + "32175706816" + ] + ] + ], + [ + "0x60A188efbC22bBC3aaB17084e2a0A26F85A640bC", + [ + [ + "27810434645322", + "249268258919" + ], + [ + "73925887383291", + "254078110756" + ], + [ + "180671778459665", + "175568451420" + ], + [ + "181897526983919", + "213880008209" + ], + [ + "185004884855656", + "175801604856" + ], + [ + "211719470709597", + "337001078730" + ], + [ + "395329957955593", + "34024756793" + ], + [ + "561850511130774", + "15695221534" + ], + [ + "562892769802308", + "32896000000" + ], + [ + "572224872945253", + "32896500000" + ], + [ + "579114950154306", + "2638341158" + ], + [ + "587092346756494", + "84111300000" + ], + [ + "603776314537146", + "3284158899" + ], + [ + "634044404773204", + "5637466721" + ], + [ + "634338197219686", + "28471528595" + ], + [ + "634400137746283", + "8588394184" + ], + [ + "634473649794302", + "7448178586" + ], + [ + "637043244126036", + "72498841440" + ], + [ + "643049601358775", + "4230557254" + ], + [ + "643081736145350", + "5554593027" + ], + [ + "643172812995983", + "131685951867" + ], + [ + "644589920367054", + "11609907184" + ], + [ + "659543492088550", + "6350979273" + ] + ] + ], + [ + "0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9", + [ + [ + "611674338974532", + "34873097638" + ] + ] + ], + [ + "0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF", + [ + [ + "31704149901004", + "64000000000" + ] + ] + ], + [ + "0x61C562283B268F982ffa1334B643118eACF54480", + [ + [ + "205756979635888", + "13720671838" + ] + ] + ], + [ + "0x61C95fe68834db2d1f323bb85F0590690002a06d", + [ + [ + "298766493215442", + "25000000000" + ] + ] + ], + [ + "0x61e193e514DE408F57A648a641d9fcD412CdeD82", + [ + [ + "316297504741935", + "1134976125606" + ] + ] + ], + [ + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", + [ + [ + "69169795658552", + "1194000000000" + ], + [ + "350562558201369", + "1837200000000" + ], + [ + "358055253899368", + "1873200000000" + ], + [ + "367514336456086", + "1912200000000" + ], + [ + "385786821567282", + "3253000000000" + ] + ] + ], + [ + "0x6223dd77dd5ED000592d7A8C745D68B2599C640D", + [ + [ + "595098019071334", + "7805953000" + ] + ] + ], + [ + "0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A", + [ + [ + "648525331599001", + "1795068" + ] + ] + ], + [ + "0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12", + [ + [ + "763836703327895", + "897670384" + ] + ] + ], + [ + "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", + [ + [ + "199790557977382", + "20307567726" + ], + [ + "203292613872621", + "44559574776" + ], + [ + "208496431950430", + "135909962633" + ], + [ + "222747868386967", + "432111595595" + ], + [ + "224182522802981", + "88646625543" + ], + [ + "238654491458777", + "122335228001" + ], + [ + "243345979795662", + "193838339361" + ], + [ + "681329690104184", + "100824447648" + ], + [ + "766650786494524", + "466125005645" + ], + [ + "867024271662802", + "228905711977" + ], + [ + "882883404002569", + "255298540903" + ] + ] + ], + [ + "0x632f3c0548f656c8470e2882582d02602CfF821C", + [ + [ + "7390511503423", + "5321466970" + ] + ] + ], + [ + "0x6343B307C288432BB9AD9003B4230B08B56b3b82", + [ + [ + "190774347525626", + "3001979267" + ], + [ + "227899892118673", + "9098821991" + ], + [ + "267222626735429", + "10019159841" + ], + [ + "318350491352535", + "10004250325" + ], + [ + "338983012660405", + "10015549677" + ], + [ + "361229466618475", + "5009439565" + ], + [ + "400381174841304", + "3004757667" + ], + [ + "400384179598971", + "2922196166" + ], + [ + "408334868608585", + "1844177360" + ], + [ + "408336712785945", + "1693453752" + ], + [ + "547242764896211", + "10048376141" + ] + ] + ], + [ + "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", + [ + [ + "429076381887304", + "39624686375" + ], + [ + "841660754217816", + "4019358849" + ] + ] + ], + [ + "0x6384F5369d601992309c3102ac7670c62D33c239", + [ + [ + "86426430669928", + "93757812192" + ], + [ + "120202334516814", + "76711875999" + ], + [ + "140665414631918", + "364919687105" + ] + ] + ], + [ + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", + [ + [ + "585447600884457", + "2534228224" + ], + [ + "586646633174881", + "5673597364" + ] + ] + ], + [ + "0x647bC16DCC2A3092A59a6b9F7944928d94301042", + [ + [ + "234363994367301", + "101810011675" + ], + [ + "595338144020334", + "47102200000" + ] + ] + ], + [ + "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", + [ + [ + "201178239618701", + "68900140210" + ], + [ + "250715780766453", + "25000000000" + ], + [ + "258249957689022", + "200370650949" + ], + [ + "258565835620739", + "183219147770" + ], + [ + "258845609042904", + "3445725605" + ], + [ + "637141029774703", + "5486788601" + ], + [ + "646951101223564", + "1957663487" + ], + [ + "647219853688450", + "4812444606" + ], + [ + "648341533215584", + "11578312077" + ], + [ + "650128399980624", + "3108966478" + ] + ] + ], + [ + "0x64e149a229fa88AaA2A2107359390F3b76E518AD", + [ + [ + "250672958372559", + "42822393894" + ] + ] + ], + [ + "0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287", + [ + [ + "219577491138396", + "76644307685" + ] + ] + ], + [ + "0x6525e122975C19CE287997E9BBA41AD0738cFcE4", + [ + [ + "408056818038549", + "78748758703" + ] + ] + ], + [ + "0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E", + [ + [ + "28060962539990", + "233215974" + ] + ] + ], + [ + "0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8", + [ + [ + "408040736449697", + "6081271018" + ] + ] + ], + [ + "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a", + [ + [ + "649773468164491", + "623800000" + ], + [ + "650496758556813", + "1854300000" + ], + [ + "650650384373882", + "1110960000" + ], + [ + "650881433728485", + "3081500000" + ], + [ + "651225562512104", + "675422900" + ], + [ + "651616768941819", + "3827342044" + ], + [ + "651857559559538", + "1653185142" + ], + [ + "653859484421522", + "1610442418" + ], + [ + "654202995304304", + "1550473112" + ], + [ + "811198403550001", + "12682309008" + ] + ] + ], + [ + "0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3", + [ + [ + "767642883227856", + "39768883344" + ] + ] + ], + [ + "0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22", + [ + [ + "326213533536434", + "11833992957" + ] + ] + ], + [ + "0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD", + [ + [ + "33204784130073", + "10666666666" + ] + ] + ], + [ + "0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60", + [ + [ + "245060804994381", + "1401270600" + ] + ] + ], + [ + "0x66B0115e839B954A6f6d8371DEe89dE90111C232", + [ + [ + "174758503486179", + "45" + ], + [ + "190554003270326", + "5514286863" + ], + [ + "190559517557189", + "891296390" + ], + [ + "190578231407162", + "26273598464" + ], + [ + "194817411438496", + "85437509504" + ], + [ + "201412155317743", + "29101504817" + ], + [ + "216687848171321", + "83474118399" + ], + [ + "237529097661776", + "81104453323" + ], + [ + "342905708461958", + "33242114013" + ], + [ + "342948003842023", + "29159870308" + ], + [ + "355390284502004", + "62595004655" + ], + [ + "525442674564630", + "41624181591" + ], + [ + "562634470802308", + "120603000000" + ], + [ + "564800852312708", + "120603630000" + ], + [ + "566205620733477", + "120603630000" + ], + [ + "568866721950815", + "120603630000" + ], + [ + "570126495171215", + "120603630000" + ], + [ + "571966572157753", + "120603630000" + ] + ] + ], + [ + "0x66D8293781eF24184aa9164878dfC0486cfa9Aac", + [ + [ + "343136977526193", + "2215279737" + ] + ] + ], + [ + "0x66F1089eD7D915bC7c7055d2d226487362347d39", + [ + [ + "323154203825866", + "1110069378" + ] + ] + ], + [ + "0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E", + [ + [ + "84457530104959", + "209844262" + ] + ] + ], + [ + "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD", + [ + [ + "267825369582182", + "436592457" + ], + [ + "273716745936018", + "6205732675" + ], + [ + "315755940953422", + "929512985" + ] + ] + ], + [ + "0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631", + [ + [ + "627581126030410", + "272397265638" + ], + [ + "779831387208671", + "1602671680567" + ], + [ + "784127342017442", + "1392774986727" + ], + [ + "790449527867009", + "141565176499" + ], + [ + "869613014234285", + "58474432063" + ] + ] + ], + [ + "0x676B0Add3De8d340201F3F58F486beFEDCD609cD", + [ + [ + "506941790964613", + "36337517023" + ] + ] + ], + [ + "0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6", + [ + [ + "866505232600864", + "362107628548" + ] + ] + ], + [ + "0x679AeE8b2fA079B23934A1afB2d7d48DD7244560", + [ + [ + "648088003454438", + "6967239311" + ] + ] + ], + [ + "0x679B4172E1698579d562D1d8b4774968305b80b2", + [ + [ + "395530746048580", + "6726740160" + ] + ] + ], + [ + "0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408", + [ + [ + "631039934526101", + "11565611800" + ] + ] + ], + [ + "0x6820572d10F8eC5B48694294F3FCFa1A640CFf40", + [ + [ + "229953796446901", + "10214275276" + ], + [ + "278918417135852", + "150000000000" + ], + [ + "279078204011052", + "40213124800" + ] + ] + ], + [ + "0x682864C9Bc8747c804A6137d6f0E8e087f49089e", + [ + [ + "764116409712760", + "376300000" + ], + [ + "766112231428357", + "103950567" + ], + [ + "767877082644924", + "4494000" + ], + [ + "768720341081119", + "10972000" + ], + [ + "768720352053119", + "54860000" + ] + ] + ], + [ + "0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21", + [ + [ + "237297173028709", + "34185829440" + ], + [ + "237610202115099", + "190472618512" + ], + [ + "257002346228995", + "490552229489" + ], + [ + "257720381137420", + "195286958683" + ] + ] + ], + [ + "0x686381d3D0162De16414A274ED5FbA9929d4B830", + [ + [ + "344768619702251", + "55026606400" + ] + ] + ], + [ + "0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3", + [ + [ + "720451623201018", + "43682114862" + ] + ] + ], + [ + "0x688b3a3771011145519bd8db845d0D0739351C5D", + [ + [ + "598166530577023", + "297938099" + ] + ] + ], + [ + "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07", + [ + [ + "637348332706520", + "3665297857" + ], + [ + "641239727537305", + "3801049629" + ] + ] + ], + [ + "0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe", + [ + [ + "338993028210082", + "30086002693" + ] + ] + ], + [ + "0x68ca44eD5d5Df216D10B14c13D18395a9151224a", + [ + [ + "327022674019051", + "298522321813" + ] + ] + ], + [ + "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3", + [ + [ + "59447104921333", + "48580563120" + ], + [ + "59495685484453", + "10000000" + ], + [ + "175839043720271", + "639000700700" + ], + [ + "326260465529391", + "17549000000" + ], + [ + "327866927799830", + "200000000000" + ], + [ + "458946849997346", + "1509444773173" + ], + [ + "487104864611440", + "8118000000000" + ], + [ + "529948130178467", + "60353499994" + ], + [ + "540025578631290", + "1050580350517" + ], + [ + "541230880735707", + "1053414238201" + ], + [ + "676535948745205", + "2281535426" + ], + [ + "788056651665705", + "1423950000000" + ] + ] + ], + [ + "0x6974611c9e1437D74c07b5F031779Fb88f19923E", + [ + [ + "808563031359360", + "138799301180" + ] + ] + ], + [ + "0x699095648BBc658450a22E90DF34BD7e168FCedB", + [ + [ + "350526188741041", + "1867890780" + ] + ] + ], + [ + "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2", + [ + [ + "205856377916701", + "23473305765" + ], + [ + "228443474467376", + "26144594910" + ], + [ + "229742216600874", + "196893643061" + ] + ] + ], + [ + "0x69e02D001146A86d4E2995F9eCf906265aA77d85", + [ + [ + "662653511432800", + "41531785" + ], + [ + "740688026571943", + "293208703330" + ], + [ + "831131397455690", + "19412572061" + ], + [ + "849564839333111", + "16363837424" + ] + ] + ], + [ + "0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B", + [ + [ + "156811622805224", + "6930000000" + ], + [ + "156818552805224", + "462200000000" + ], + [ + "430072033491709", + "1719000000" + ], + [ + "430073752491709", + "1032300000" + ] + ] + ], + [ + "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4", + [ + [ + "639689672916916", + "22501064889" + ], + [ + "643650251457626", + "3358027804" + ], + [ + "643834369008756", + "4844561817" + ], + [ + "643839213570573", + "10208237564" + ], + [ + "643944290955121", + "1478254943" + ], + [ + "643953518951321", + "8390490226" + ], + [ + "644024944088567", + "4012581233" + ], + [ + "644160211053924", + "6031653730" + ] + ] + ], + [ + "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", + [ + [ + "767548494200642", + "1261346400" + ] + ] + ], + [ + "0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b", + [ + [ + "650252699558669", + "893481478" + ] + ] + ], + [ + "0x6A7E0712838A0b257C20e042cf9b6C5E910F221F", + [ + [ + "50390109547988", + "13275316430" + ] + ] + ], + [ + "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", + [ + [ + "32060163672752", + "28148676958" + ], + [ + "150360950060615", + "242948254181" + ], + [ + "160053122684606", + "20023987333" + ], + [ + "161068340667787", + "20000000000" + ], + [ + "342560304255977", + "333305645984" + ], + [ + "344389113234876", + "51504000000" + ], + [ + "344551768397376", + "66850100000" + ], + [ + "361685681657312", + "62680000000" + ], + [ + "363769394312766", + "102337151992" + ], + [ + "369426536456086", + "127987579783" + ], + [ + "378552709136790", + "38488554613" + ], + [ + "395493517902828", + "6712331491" + ], + [ + "396929743473580", + "66231437063" + ], + [ + "402346745493273", + "26916949971" + ], + [ + "530133483678461", + "281553523845" + ], + [ + "576749818528380", + "128350847807" + ], + [ + "595690093032834", + "42417259406" + ], + [ + "624313265610454", + "235481948284" + ], + [ + "630539882897389", + "5506646911" + ], + [ + "630883526816254", + "5243434934" + ], + [ + "634139460032971", + "3421517319" + ], + [ + "634468058178676", + "2971508955" + ], + [ + "634935371920999", + "4637078134" + ], + [ + "639717387300187", + "77913000000" + ], + [ + "640555043042177", + "126770247812" + ], + [ + "643639272958859", + "7174635902" + ], + [ + "646904567079253", + "9652153237" + ], + [ + "680821347452730", + "115002187754" + ], + [ + "681087658581778", + "242031522406" + ], + [ + "792702109000794", + "102830000000" + ], + [ + "828751559244596", + "110931518877" + ], + [ + "846523170952449", + "523488988207" + ] + ] + ], + [ + "0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3", + [ + [ + "78446810994423", + "97830465871" + ] + ] + ], + [ + "0x6AB3E708231eBc450549B37f8DDF269E789ed322", + [ + [ + "139738901832021", + "217662351018" + ], + [ + "173645978954771", + "364480000000" + ], + [ + "177963922699291", + "567750000000" + ], + [ + "193365582223281", + "558500000000" + ], + [ + "198989464385361", + "323387400000" + ], + [ + "385686708784542", + "8120000000" + ], + [ + "385698306894276", + "11608985252" + ], + [ + "402298084456766", + "29146976013" + ], + [ + "403324142505816", + "17337534783" + ], + [ + "525484298746221", + "68490328982" + ], + [ + "573159215088219", + "7613761316" + ], + [ + "588069376316494", + "53235000000" + ], + [ + "588373196066494", + "53235000000" + ], + [ + "588677015816494", + "53235000000" + ], + [ + "635125146283365", + "5443675000" + ], + [ + "635372490238881", + "53837773087" + ], + [ + "637610400582193", + "150901692840" + ], + [ + "655777079955872", + "34680190734" + ], + [ + "657007246656249", + "26448621220" + ], + [ + "659046307218408", + "140966208215" + ], + [ + "675881740999403", + "58060000000" + ], + [ + "676880184584605", + "81212739087" + ], + [ + "682023052979739", + "49057997400" + ], + [ + "744289021047316", + "8009578710" + ] + ] + ], + [ + "0x6ab4566Df630Be242D3CD48777aa4CA19C635f56", + [ + [ + "339523096579827", + "66070456308" + ] + ] + ], + [ + "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43", + [ + [ + "67339711337633", + "38964529411" + ], + [ + "826344351400868", + "285187152872" + ] + ] + ], + [ + "0x6B7F8019390Aa85b4A8679f963295D568098Cf51", + [ + [ + "4970156360204", + "42435663718" + ] + ] + ], + [ + "0x6b87460Ce18951D31A7175cAbE2f3fc449E54256", + [ + [ + "298986493215464", + "38084213662" + ], + [ + "341689788844501", + "46789171777" + ] + ] + ], + [ + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", + [ + [ + "33151317189285", + "64286521" + ], + [ + "576748931831644", + "886696736" + ], + [ + "585450135112681", + "2349268241" + ], + [ + "634472174530302", + "1475264000" + ] + ] + ], + [ + "0x6bDd8c55a23D432D34c276A87584b8A96C03717F", + [ + [ + "52187916983200", + "19763851047" + ], + [ + "52207680834247", + "19747984525" + ] + ] + ], + [ + "0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d", + [ + [ + "861503972645416", + "15704000000" + ] + ] + ], + [ + "0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F", + [ + [ + "273007832358728", + "21" + ] + ] + ], + [ + "0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd", + [ + [ + "631710479555794", + "27065136362" + ] + ] + ], + [ + "0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09", + [ + [ + "187326232141980", + "250596023597" + ] + ] + ], + [ + "0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB", + [ + [ + "326049910381783", + "22789160494" + ], + [ + "340180819742396", + "88167423404" + ], + [ + "635083372725365", + "41773558000" + ], + [ + "635350828552881", + "21661686000" + ] + ] + ], + [ + "0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3", + [ + [ + "195647572282194", + "827187570265" + ] + ] + ], + [ + "0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27", + [ + [ + "535108406138660", + "1084177233275" + ], + [ + "536192583371935", + "1688110786406" + ], + [ + "537880694158341", + "1727536772397" + ], + [ + "542568043607639", + "1438806398621" + ] + ] + ], + [ + "0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190", + [ + [ + "228441190352276", + "2284115100" + ], + [ + "264360680476760", + "16145852467" + ] + ] + ], + [ + "0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674", + [ + [ + "769310460222539", + "1300464490557" + ], + [ + "771140309190191", + "3056591031171" + ], + [ + "774579618067014", + "4504970931573" + ] + ] + ], + [ + "0x6D4ed8a1599DEe2655D51B245f786293E03d58f7", + [ + [ + "768780574044414", + "4739952359" + ] + ] + ], + [ + "0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968", + [ + [ + "273349081469206", + "22041535128" + ] + ] + ], + [ + "0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06", + [ + [ + "837305979426084", + "1501381879417" + ] + ] + ], + [ + "0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B", + [ + [ + "770929992347971", + "34510450293" + ] + ] + ], + [ + "0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10", + [ + [ + "397022450164102", + "50261655503" + ] + ] + ], + [ + "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D", + [ + [ + "805211526908643", + "72305318668" + ], + [ + "883628500845473", + "82518671123" + ], + [ + "911959750190927", + "55938224595" + ], + [ + "919283383995914", + "76438100488" + ] + ] + ], + [ + "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E", + [ + [ + "565689461995977", + "151830000000" + ], + [ + "567495253157146", + "101220000000" + ], + [ + "567596473157146", + "101220000000" + ], + [ + "571005615479484", + "101220000000" + ], + [ + "571106835479484", + "101220000000" + ] + ] + ], + [ + "0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4", + [ + [ + "324867132703136", + "44584623736" + ] + ] + ], + [ + "0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C", + [ + [ + "636757155365094", + "22691440968" + ] + ] + ], + [ + "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9", + [ + [ + "199564902491192", + "4" + ], + [ + "344839373651771", + "479115910" + ], + [ + "641506736028021", + "2916178314" + ], + [ + "641509652206335", + "2749595885" + ], + [ + "643096514658419", + "5194777863" + ], + [ + "643101709436282", + "4222978151" + ], + [ + "643633701423724", + "5571535135" + ], + [ + "643798096101417", + "3171247947" + ], + [ + "643890241268202", + "4934195535" + ], + [ + "643895175463737", + "4471591756" + ], + [ + "644123990666901", + "8655423354" + ], + [ + "644290308134813", + "6411168248" + ], + [ + "644388265508089", + "8012158467" + ], + [ + "644422095342082", + "5047673478" + ], + [ + "644442516225274", + "5546831538" + ], + [ + "646729515149835", + "2514524429" + ], + [ + "648197602149037", + "2827660397" + ], + [ + "648807271975686", + "17620350" + ] + ] + ], + [ + "0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4", + [ + [ + "376299347730245", + "25727586841" + ] + ] + ], + [ + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", + [ + [ + "635536095356615", + "1027219504" + ], + [ + "635987453662106", + "880116472" + ], + [ + "641512401802220", + "5493342645" + ], + [ + "644555830955508", + "2808417895" + ], + [ + "646749582249400", + "903060349" + ], + [ + "646766913990107", + "1939941186" + ], + [ + "646945916373621", + "3045363522" + ], + [ + "767125477756875", + "1001496834" + ], + [ + "767300591235981", + "1890000000" + ], + [ + "767972799745643", + "4444320090" + ] + ] + ], + [ + "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", + [ + [ + "403467977485669", + "4265691158" + ] + ] + ], + [ + "0x6fBDc235B6f55755BE1c0B554469633108E60608", + [ + [ + "191901677757094", + "262000796007" + ] + ] + ], + [ + "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54", + [ + [ + "331756528135803", + "61934486285" + ], + [ + "408321036814023", + "6779928792" + ] + ] + ], + [ + "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B", + [ + [ + "420441198802", + "387146704" + ], + [ + "767889723281779", + "68608459317" + ] + ] + ], + [ + "0x702aA86601aBc776bEA3A8241688085125D75AE2", + [ + [ + "109497928877661", + "23439331676" + ], + [ + "205879851222466", + "33943660000" + ], + [ + "506165499383895", + "3604981492" + ], + [ + "506169104365387", + "7211374244" + ], + [ + "542284294973908", + "10000615500" + ] + ] + ], + [ + "0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b", + [ + [ + "385225630461615", + "15974580090" + ] + ] + ], + [ + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", + [ + [ + "157553403132001", + "19294351466" + ], + [ + "644387467914405", + "797593684" + ], + [ + "648282232925391", + "5285515919" + ], + [ + "649313442399124", + "18516226556" + ], + [ + "672632693625732", + "17500007580" + ] + ] + ], + [ + "0x70a9c497536E98F2DbB7C66911700fe2b2550900", + [ + [ + "643856074680084", + "518323846" + ], + [ + "644234859479000", + "279246690" + ], + [ + "644246226623579", + "197641438" + ], + [ + "644255862272829", + "274579086" + ], + [ + "644318860467072", + "289371263" + ], + [ + "644344232569703", + "1080267604" + ], + [ + "644350860239846", + "2255393372" + ], + [ + "644353115633218", + "4452414623" + ], + [ + "677491281789418", + "2857142857" + ], + [ + "681685922435654", + "25111379095" + ], + [ + "917061939949695", + "32052786097" + ] + ] + ], + [ + "0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793", + [ + [ + "340164692018203", + "16127724193" + ] + ] + ], + [ + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", + [ + [ + "33152426109281", + "4" + ], + [ + "41333271497978", + "668874033" + ], + [ + "41370284961658", + "2693066940" + ], + [ + "88857695552777", + "1354378846" + ], + [ + "647760366592966", + "25920905560" + ], + [ + "648612566573043", + "33" + ], + [ + "648651086279479", + "22959268" + ], + [ + "649184309005289", + "2278449" + ], + [ + "649236453132845", + "19324702" + ], + [ + "649284881951220", + "48009418" + ], + [ + "649682081565764", + "649539942" + ], + [ + "649693481105706", + "448369312" + ], + [ + "649874764673718", + "2584832868" + ], + [ + "739098370599205", + "19781032784" + ], + [ + "741941794536593", + "7498568832" + ], + [ + "760171881624417", + "11891246578" + ] + ] + ], + [ + "0x70c65accB3806917e0965C08A4a7D6c72F17651A", + [ + [ + "767503070574842", + "4117776465" + ] + ] + ], + [ + "0x70C8eE0223D10c150b0db98A0423EC18Ec5aCa89", + [ + [ + "317764819055205", + "94698329152" + ] + ] + ], + [ + "0x70F11dbD21809EbCd4C6604581103506A6a8443A", + [ + [ + "324855687987034", + "11444716102" + ] + ] + ], + [ + "0x7125B7C60Ec85F9aD33742D9362f6161d403EC92", + [ + [ + "185793383994705", + "206785636228" + ] + ] + ], + [ + "0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22", + [ + [ + "324806023022229", + "28234479163" + ], + [ + "397009213772846", + "13236391256" + ] + ] + ], + [ + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", + [ + [ + "59495695484453", + "504171940643" + ], + [ + "124490727082220", + "3038100000000" + ], + [ + "129427950156525", + "467400000000" + ], + [ + "202960513872621", + "332100000000" + ] + ] + ], + [ + "0x7193b82899461a6aC45B528d48d74355F54E7F56", + [ + [ + "409573727889316", + "100323000000" + ], + [ + "655166761861127", + "1629422984" + ], + [ + "679990486184882", + "101083948638" + ] + ] + ], + [ + "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8", + [ + [ + "43977781538372", + "960392727042" + ], + [ + "53415449139505", + "560000421094" + ], + [ + "84043081856785", + "88783500000" + ], + [ + "87737275673292", + "29174580000" + ], + [ + "121055292369428", + "595350750000" + ], + [ + "153930334477670", + "722113163135" + ], + [ + "337103989850712", + "208640000000" + ], + [ + "390858944448074", + "1732376340000" + ], + [ + "425808292285395", + "1709471220000" + ], + [ + "747250339620613", + "1065835841221" + ] + ] + ], + [ + "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", + [ + [ + "312728908697529", + "60865019612" + ], + [ + "396254532333032", + "26041274600" + ], + [ + "517161961415705", + "28582806091" + ], + [ + "525552789075203", + "119322721243" + ], + [ + "547526923635099", + "70107880058" + ], + [ + "561477850643778", + "198991954538" + ], + [ + "562816854802308", + "75915000000" + ], + [ + "564663155155208", + "75915000000" + ], + [ + "566032344745977", + "75915000000" + ], + [ + "569084686568315", + "75915000000" + ], + [ + "572148957945253", + "75915000000" + ], + [ + "672617693625732", + "15000000000" + ] + ] + ], + [ + "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", + [ + [ + "670969471210715", + "112808577" + ] + ] + ], + [ + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", + [ + [ + "258749054768509", + "81750376187" + ], + [ + "767116911500169", + "5542244064" + ] + ] + ], + [ + "0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246", + [ + [ + "495339332225603", + "10275174620" + ] + ] + ], + [ + "0x726C46B3E0d605ea8821712bD09686354175D448", + [ + [ + "42578680325272", + "921515463464" + ], + [ + "308307791521525", + "1085880660191" + ] + ] + ], + [ + "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2", + [ + [ + "90975474968757", + "37830812302" + ], + [ + "185768300642827", + "25083351878" + ], + [ + "189669106071687", + "31883191886" + ], + [ + "199587559564998", + "35132497379" + ], + [ + "274439437731803", + "42917709597" + ], + [ + "331649739813903", + "61822486683" + ] + ] + ], + [ + "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4", + [ + [ + "311021852055993", + "57433012261" + ], + [ + "311424446177396", + "1090720348401" + ], + [ + "315467930213071", + "136678730685" + ], + [ + "315662245991020", + "93694962402" + ], + [ + "393653690433948", + "40057990877" + ] + ] + ], + [ + "0x72e864CF239cD6ce0116b78F9e1299A5948beD9A", + [ + [ + "27196243734508", + "362696248309" + ] + ] + ], + [ + "0x7310E238f2260ff111a941059B023B3eBCF2D54e", + [ + [ + "174098989199832", + "54763564665" + ], + [ + "190777349504893", + "37329428702" + ] + ] + ], + [ + "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + [ + [ + "28553316405699", + "56203360846" + ], + [ + "32013293099710", + "15000000000" + ], + [ + "33262951017861", + "9375000000" + ], + [ + "33290510627174", + "565390687" + ], + [ + "118322555232226", + "5892426278" + ], + [ + "180071240663041", + "81992697619" + ], + [ + "317859517384357", + "291195415400" + ], + [ + "338910099578361", + "72913082044" + ], + [ + "444973868346640", + "61560768641" + ], + [ + "477195175494445", + "29857571563" + ], + [ + "706133899990342", + "2720589483246" + ], + [ + "721409921103392", + "4415003338706" + ], + [ + "726480740731617", + "2047412139790" + ], + [ + "729812277370084", + "5650444595733" + ], + [ + "735554122237517", + "2514215964115" + ], + [ + "744819318753537", + "98324836380" + ], + [ + "760472183068657", + "71399999953" + ] + ] + ], + [ + "0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14", + [ + [ + "340591459615016", + "116979885122" + ] + ] + ], + [ + "0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3", + [ + [ + "324758511737508", + "15676768579" + ] + ] + ], + [ + "0x73c09f642C4252f02a7a22801b5555f4f2b7B955", + [ + [ + "595188836707834", + "12745012500" + ] + ] + ], + [ + "0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C", + [ + [ + "157548809336026", + "4593795975" + ] + ] + ], + [ + "0x74231623D8058Afc0a62f919742e15Af0fb299e5", + [ + [ + "31883651774507", + "11659706427" + ], + [ + "90940749954930", + "34725013824" + ], + [ + "235813231354853", + "30400392115" + ] + ] + ], + [ + "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347", + [ + [ + "272818189064955", + "165298148930" + ], + [ + "278416305316531", + "240278890901" + ], + [ + "299226867063944", + "69420000075" + ] + ] + ], + [ + "0x74382a61e2e053353BECBC71a45adD91c0C21347", + [ + [ + "401546143727842", + "693694620220" + ] + ] + ], + [ + "0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6", + [ + [ + "601970356868999", + "4000480096" + ] + ] + ], + [ + "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", + [ + [ + "664669553141209", + "31586150" + ], + [ + "669913003351653", + "173562047" + ], + [ + "677766736232113", + "15476640" + ], + [ + "677766751708753", + "56970000" + ] + ] + ], + [ + "0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E", + [ + [ + "234344282043144", + "19712324157" + ], + [ + "235154344754292", + "94410708993" + ], + [ + "236283093284962", + "59063283900" + ], + [ + "239409804111193", + "19030292542" + ] + ] + ], + [ + "0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362", + [ + [ + "402899271425864", + "33691850736" + ] + ] + ], + [ + "0x74E096E78789F31061Fc47F6950279A55C03288c", + [ + [ + "680559945017520", + "366462731" + ], + [ + "680818684025145", + "2663427585" + ] + ] + ], + [ + "0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81", + [ + [ + "227523128809396", + "273973101221" + ] + ] + ], + [ + "0x7568614a27117EeEB6E06022D74540c3C5749B84", + [ + [ + "209623483887840", + "1224386800" + ], + [ + "312789773717141", + "7267067960" + ], + [ + "344841846701641", + "2000000000" + ], + [ + "646984807026252", + "6479854471" + ], + [ + "652726940100667", + "16139084611" + ] + ] + ], + [ + "0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3", + [ + [ + "362938922277631", + "76367829600" + ] + ] + ], + [ + "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515", + [ + [ + "75760702250033", + "8000000000" + ], + [ + "143366130662199", + "10948490796" + ] + ] + ], + [ + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", + [ + [ + "175146200354223", + "75138116495" + ], + [ + "187621160594244", + "16717595903" + ] + ] + ], + [ + "0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000", + [ + [ + "12684514908217", + "106416284126" + ] + ] + ], + [ + "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921", + [ + [ + "31614934747614", + "6046055693" + ], + [ + "573520471044196", + "83338470769" + ] + ] + ], + [ + "0x76A63B4ffb5E4d342371e312eBe62078760E8589", + [ + [ + "582285563910121", + "4410560000" + ] + ] + ], + [ + "0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc", + [ + [ + "640275952429877", + "258412979" + ] + ] + ], + [ + "0x76ce7A233804C5f662897bBfc469212d28D11613", + [ + [ + "432591748956398", + "124843530190" + ] + ] + ], + [ + "0x775B04CC1495447048313ddf868075f41F3bf3bB", + [ + [ + "323031012826145", + "49257554759" + ] + ] + ], + [ + "0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B", + [ + [ + "274388266066105", + "11429408683" + ] + ] + ], + [ + "0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D", + [ + [ + "487068024611440", + "36840000000" + ] + ] + ], + [ + "0x77f2cC48fD7dD11211A64650938a0B4004eBe72b", + [ + [ + "792668647859111", + "33461141683" + ] + ] + ], + [ + "0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5", + [ + [ + "603779598696045", + "571460608752" + ], + [ + "604351059304797", + "342600000000" + ], + [ + "606755813351268", + "201835314760" + ], + [ + "606957648666028", + "690100000000" + ], + [ + "626836023224058", + "72923998967" + ], + [ + "626908947223025", + "318351804364" + ], + [ + "627227299027389", + "320953676893" + ] + ] + ], + [ + "0x78320e6082f9E831DD3057272F553e143dFe5b9c", + [ + [ + "490546315924", + "61632407" + ] + ] + ], + [ + "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e", + [ + [ + "496345360673944", + "488241871617" + ], + [ + "523278607555107", + "149423611243" + ], + [ + "531225747951270", + "311109277563" + ] + ] + ], + [ + "0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E", + [ + [ + "87063919996383", + "31956558401" + ] + ] + ], + [ + "0x7893b13e58310cDAC183E5bA95774405CE373f83", + [ + [ + "648503987692687", + "6104653206" + ], + [ + "648537251303200", + "11543" + ], + [ + "648537251314743", + "322894" + ], + [ + "648651109238747", + "6969544474" + ], + [ + "648658078783221", + "1319829324" + ], + [ + "648687783119944", + "8278400000" + ], + [ + "648696061519944", + "7004800000" + ], + [ + "648716573711036", + "5089600000" + ], + [ + "648722171346064", + "9538500000" + ], + [ + "648931504537814", + "23555040000" + ], + [ + "648955059577814", + "4875640000" + ], + [ + "648959935217814", + "15070160000" + ], + [ + "649010795462125", + "16447600000" + ], + [ + "649027726170457", + "17894090000" + ], + [ + "649046499968065", + "22636340000" + ], + [ + "649069136308065", + "18328000000" + ], + [ + "649100844933065", + "18319300000" + ], + [ + "649119164233065", + "11365200000" + ], + [ + "649143422600101", + "11990900000" + ], + [ + "649284929960638", + "2827800000" + ], + [ + "649287827400680", + "15081600000" + ], + [ + "649398940602242", + "32614400000" + ], + [ + "649431555002242", + "33988820000" + ], + [ + "649573935073567", + "26412980000" + ], + [ + "649600986009465", + "17274840000" + ], + [ + "649618260849465", + "20654700000" + ], + [ + "649668950265764", + "13131300000" + ], + [ + "649832683807170", + "20804860000" + ], + [ + "649915798444588", + "18046700000" + ], + [ + "649933845144588", + "6658610000" + ], + [ + "649940503754588", + "4642174919" + ], + [ + "649962462383072", + "34628690000" + ], + [ + "651485759158523", + "135322" + ], + [ + "661338230306152", + "218560408342" + ], + [ + "808845120725088", + "163839873562" + ], + [ + "811211085859009", + "1285117945279" + ], + [ + "812496203804288", + "1246029256854" + ], + [ + "857581197479570", + "1634493779706" + ] + ] + ], + [ + "0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50", + [ + [ + "20360646192758", + "4967300995" + ], + [ + "859890207337852", + "11474760241" + ] + ] + ], + [ + "0x78A0A1F1E055c4ceeBb658AdF0c4954ae925e944", + [ + [ + "892341437280727", + "145860654491" + ], + [ + "892487297935218", + "3029212937100" + ] + ] + ], + [ + "0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21", + [ + [ + "409808938067549", + "84226188785" + ] + ] + ], + [ + "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54", + [ + [ + "227908990940664", + "435600000000" + ], + [ + "228474367102286", + "221452178690" + ] + ] + ], + [ + "0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c", + [ + [ + "385257800041705", + "316578014158" + ] + ] + ], + [ + "0x7A1184786066077022F671957299A685b2850BD6", + [ + [ + "635943922934682", + "525079813" + ], + [ + "635988333778578", + "8627689764" + ] + ] + ], + [ + "0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b", + [ + [ + "631796137362390", + "1440836515" + ] + ] + ], + [ + "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E", + [ + [ + "322952053290841", + "24675798977" + ], + [ + "340056236725906", + "53380000000" + ], + [ + "340109616725906", + "53380000000" + ] + ] + ], + [ + "0x7A63D7813039000e52Be63299D1302F1e03C7a6A", + [ + [ + "340313280922433", + "9750291736" + ] + ] + ], + [ + "0x7A6530B0970397414192A8F86c91d1e1f870a5A6", + [ + [ + "109585986971037", + "15454078646" + ], + [ + "644132646090255", + "8161384731" + ] + ] + ], + [ + "0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2", + [ + [ + "681870613397796", + "211456338" + ], + [ + "681870824854134", + "205872420" + ], + [ + "681991801335911", + "19315015127" + ], + [ + "683756565573835", + "8759919160" + ] + ] + ], + [ + "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", + [ + [ + "624665309966700", + "41439894685" + ] + ] + ], + [ + "0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48", + [ + [ + "319694369767515", + "36673342106" + ] + ] + ], + [ + "0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD", + [ + [ + "264752557419462", + "8605989205" + ] + ] + ], + [ + "0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E", + [ + [ + "644746452171666", + "213353964" + ] + ] + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + [ + [ + "738175767886792", + "725867793824" + ], + [ + "739166585934609", + "997011405679" + ], + [ + "740163597340288", + "280746545970" + ] + ] + ], + [ + "0x7B2d2934868077d5E938EfE238De65E0830Cf186", + [ + [ + "53975449560599", + "629903012456" + ] + ] + ], + [ + "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4", + [ + [ + "174459809952308", + "281091996530" + ], + [ + "311079285068254", + "225639161016" + ] + ] + ], + [ + "0x7bB955249d6f57345726569EA7131E2910CA9C0D", + [ + [ + "277940142360555", + "98218175816" + ], + [ + "603576947611080", + "199366926066" + ], + [ + "604978961867797", + "45804202500" + ], + [ + "605358509270297", + "85487500000" + ], + [ + "605777739970297", + "85487500000" + ] + ] + ], + [ + "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc", + [ + [ + "672373244407056", + "22359930276" + ], + [ + "673932629258168", + "57490196078" + ] + ] + ], + [ + "0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0", + [ + [ + "175144400293594", + "1800060629" + ] + ] + ], + [ + "0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F", + [ + [ + "337947415831374", + "1256098598" + ] + ] + ], + [ + "0x7c12222e79e1a2552CaF92ce8dA063e188a7234F", + [ + [ + "327333371992545", + "151078425653" + ] + ] + ], + [ + "0x7C28205352AD687348578f9cB2AB04DE1DcaA040", + [ + [ + "107456319203211", + "248840212420" + ] + ] + ], + [ + "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F", + [ + [ + "148739166418696", + "42976910603" + ], + [ + "149458771642101", + "17768345687" + ], + [ + "150072245775067", + "101280926262" + ], + [ + "199700241341159", + "90316636223" + ] + ] + ], + [ + "0x7c9551322a2e259830A7357e436107565EA79205", + [ + [ + "209578881176990", + "44602710850" + ], + [ + "273679685585512", + "20502770382" + ], + [ + "430048399348994", + "21915642715" + ], + [ + "564169770917708", + "253050000000" + ], + [ + "581983286394610", + "114580000000" + ], + [ + "650979810428062", + "126027343719" + ] + ] + ], + [ + "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3", + [ + [ + "227166312100795", + "90992725291" + ], + [ + "229554049269178", + "188167331696" + ] + ] + ], + [ + "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16", + [ + [ + "33126339744841", + "2542932710" + ], + [ + "647796025649944", + "2276035252" + ] + ] + ], + [ + "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", + [ + [ + "551487055682601", + "1270108409" + ] + ] + ], + [ + "0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0", + [ + [ + "517136234273749", + "25727141956" + ], + [ + "575297036565480", + "37469832650" + ] + ] + ], + [ + "0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb", + [ + [ + "264289719394296", + "13882808319" + ] + ] + ], + [ + "0x7D6261b4F9e117964210A8EE3a741499679438a0", + [ + [ + "193924082223281", + "212363516752" + ] + ] + ], + [ + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + [ + [ + "41331690648396", + "1580849582" + ], + [ + "41333940372011", + "1537628217" + ], + [ + "647755311699262", + "5054893704" + ], + [ + "648155116928042", + "75808563" + ], + [ + "656120433075312", + "50144887945" + ], + [ + "656895275442629", + "48622222222" + ], + [ + "660026375198031", + "42190522575" + ] + ] + ], + [ + "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", + [ + [ + "462646168927", + "1666666666" + ], + [ + "647175726076112", + "16711431033" + ], + [ + "720495305315880", + "55569209804" + ] + ] + ], + [ + "0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af", + [ + [ + "320112525044800", + "79896782500" + ] + ] + ], + [ + "0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20", + [ + [ + "219573347561330", + "3194476000" + ] + ] + ], + [ + "0x7eaF877B409740afa24226D4A448c980896Be795", + [ + [ + "609292089920626", + "20074904153" + ] + ] + ], + [ + "0x7eFaC69750cc933e7830829474F86149A7DD8e35", + [ + [ + "200844770244188", + "1000000" + ], + [ + "200844771244188", + "179562380519" + ], + [ + "210870560056118", + "293011632289" + ] + ] + ], + [ + "0x7F82e84C2021a311131e894ceFf475047deD4673", + [ + [ + "623581806243753", + "62496053737" + ] + ] + ], + [ + "0x7Fe78b37A3F8168Cd60C6860d176D22b81181555", + [ + [ + "783115581867489", + "232497931186" + ] + ] + ], + [ + "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70", + [ + [ + "20300839138392", + "1" + ], + [ + "141104093757416", + "2326237721" + ], + [ + "141106419995137", + "1466439378" + ], + [ + "157543059307151", + "3855741975" + ], + [ + "633362764561998", + "8976176800" + ] + ] + ], + [ + "0x80077CB3B35A6c30DC354469f63e0743eeff32D4", + [ + [ + "417435849352728", + "4099200000000" + ] + ] + ], + [ + "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5", + [ + [ + "41340350884137", + "5263157894" + ], + [ + "213307234626330", + "12500000000" + ], + [ + "380613889185508", + "10461930383" + ], + [ + "385650953907930", + "16235000000" + ], + [ + "646795333940977", + "6300493418" + ], + [ + "646842090324499", + "6350838475" + ], + [ + "648299147129728", + "14576284733" + ], + [ + "648377421210050", + "13030510108" + ], + [ + "653297909699401", + "24458875511" + ], + [ + "653479984577629", + "119019649033" + ], + [ + "662024206613204", + "79777206742" + ] + ] + ], + [ + "0x804Be57907807794D4982Bf60F8b86e9010A1639", + [ + [ + "76424701653538", + "94753388776" + ], + [ + "84731726100795", + "91448859303" + ] + ] + ], + [ + "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81", + [ + [ + "74179965494047", + "25544672634" + ], + [ + "166225090295346", + "87221043559" + ] + ] + ], + [ + "0x80771B6DC16d2c8C291e84C8f6D820150567534C", + [ + [ + "213457800486791", + "14257446361" + ], + [ + "213472057933152", + "186730161037" + ] + ] + ], + [ + "0x80915E89Ffe836216866d16Ec4F693053f205179", + [ + [ + "599110873255821", + "6253532657" + ] + ] + ], + [ + "0x80a2527A444C4f2b57a247191cDF1308c9EB210D", + [ + [ + "767511386944346", + "37106473488" + ] + ] + ], + [ + "0x81696d556eeCDc42bED7C3b53b027de923cC5038", + [ + [ + "319731043109621", + "14925453141" + ], + [ + "402373662443244", + "36113082774" + ] + ] + ], + [ + "0x81704Bce89289F64a4295134791848AaCd975311", + [ + [ + "644073460766211", + "46712134" + ], + [ + "644187073578836", + "33" + ] + ] + ], + [ + "0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19", + [ + [ + "237009419020035", + "24112008674" + ] + ] + ], + [ + "0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b", + [ + [ + "591001814503012", + "551376150000" + ] + ] + ], + [ + "0x81d8363845F96f94858Fac44A521117DADBfD837", + [ + [ + "332432233728809", + "324629738694" + ] + ] + ], + [ + "0x81eee01e854EC8b498543d9C2586e6aDCa3E2006", + [ + [ + "267836734902245", + "198456386297" + ], + [ + "273007832358749", + "292267679049" + ] + ] + ], + [ + "0x81F3C0A3115e4F115075eE079A48717c7dfdA800", + [ + [ + "85005128802664", + "17746542257" + ], + [ + "138205055379551", + "21229490022" + ] + ] + ], + [ + "0x821bb6973FdA779183d22C9891f566B2e59C8230", + [ + [ + "218770430128287", + "11235751123" + ] + ] + ], + [ + "0x8264EA7b0b15a7AD9339F06666D7E339129C9482", + [ + [ + "321485895691147", + "32021232234" + ] + ] + ], + [ + "0x829Ceb00fC74bD087b1e50d31ec628a90894cD52", + [ + [ + "323285415668114", + "50596304590" + ], + [ + "355313179311575", + "62470363029" + ], + [ + "367287703769008", + "64080321723" + ] + ] + ], + [ + "0x82a8409a264ea933405f5Fe0c4011c3327626D9B", + [ + [ + "870103302085771", + "48730138326" + ] + ] + ], + [ + "0x82CFf592c2D9238f05E0007F240c81990f17F764", + [ + [ + "273671446460892", + "8239124620" + ] + ] + ], + [ + "0x82F402847051BDdAAb0f5D4b481417281837c424", + [ + [ + "33153376109285", + "2512740605" + ], + [ + "215241439378309", + "5150327530" + ], + [ + "326072699542277", + "25020000000" + ], + [ + "335847619702697", + "10121780000" + ] + ] + ], + [ + "0x82Ff15f5de70250a96FC07a0E831D3e391e47c48", + [ + [ + "767984775426960", + "4440000000" + ] + ] + ], + [ + "0x8325D26d08DaBf644582D2a8da311D94DBD02A97", + [ + [ + "153701253487878", + "11008858783" + ], + [ + "232621964312561", + "2641422510" + ] + ] + ], + [ + "0x832fBA673d712fd5bC698a3326073D6674e57DF5", + [ + [ + "217540873751726", + "22996141953" + ], + [ + "265592792884462", + "23842558596" + ] + ] + ], + [ + "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751", + [ + [ + "581907954037154", + "1000000" + ], + [ + "581907955037154", + "9999000000" + ], + [ + "665701343812558", + "272195102173" + ], + [ + "669333969414822", + "215834194074" + ], + [ + "677431627790689", + "31545276943" + ], + [ + "678914917868431", + "570100000000" + ], + [ + "759972802735125", + "63916929" + ], + [ + "759972866652054", + "34919933" + ], + [ + "759972901571987", + "44762503" + ], + [ + "759972946334490", + "26506" + ], + [ + "759972946360996", + "54603" + ], + [ + "759972946415599", + "45639837" + ], + [ + "759972992055436", + "36372829" + ], + [ + "759973028428265", + "212331" + ], + [ + "760183772870995", + "237950000" + ], + [ + "760353370932416", + "640797" + ], + [ + "761858118071390", + "18166203" + ], + [ + "761858136237593", + "33655130" + ], + [ + "761858169892723", + "41246561" + ], + [ + "761858264676918", + "27291992" + ], + [ + "761860246451109", + "40407888" + ], + [ + "761860286858997", + "20624528" + ], + [ + "761861105640928", + "38655387" + ], + [ + "761861144296315", + "8965138" + ], + [ + "762295499061705", + "29510736" + ], + [ + "762295528572441", + "31584894" + ], + [ + "762295560157335", + "35342" + ], + [ + "762295560192677", + "19821585" + ], + [ + "762940981941034", + "21214050" + ], + [ + "763876944550921", + "126220" + ], + [ + "763876944677141", + "2145664" + ], + [ + "763877071172496", + "18553917" + ], + [ + "763877559163775", + "2178159" + ], + [ + "763898472187152", + "34733796" + ], + [ + "763898517945378", + "2604448" + ], + [ + "763904514777740", + "12880451" + ], + [ + "763904527658191", + "8645673" + ], + [ + "763904536303864", + "5775330" + ], + [ + "763904542079194", + "8086438" + ], + [ + "763904550165632", + "8189602" + ], + [ + "763904558355234", + "9042724" + ], + [ + "763904567397958", + "9831655" + ], + [ + "763904577229613", + "27363324" + ], + [ + "763908619462613", + "12836178" + ], + [ + "763910556401834", + "11888964" + ], + [ + "763910568290798", + "12803633" + ], + [ + "763910581094431", + "5385691" + ], + [ + "763910586480122", + "8796762" + ], + [ + "763976063428196", + "9117332" + ], + [ + "763976234474836", + "4457574" + ], + [ + "763976357160622", + "7294661" + ], + [ + "763976364455283", + "7550783" + ], + [ + "763976372006066", + "7917327" + ], + [ + "763976379923393", + "8299132" + ], + [ + "763977688578348", + "7313583" + ], + [ + "763977695891931", + "8256505" + ], + [ + "763977704148436", + "8272223" + ], + [ + "763977712420659", + "8438801" + ], + [ + "763977720859460", + "1226665" + ], + [ + "763977722086125", + "8329771" + ], + [ + "763977730415896", + "9430332" + ], + [ + "763977739846228", + "9446755" + ], + [ + "763977749292983", + "9551578" + ], + [ + "763977758844561", + "12158603" + ], + [ + "763977771003164", + "17003737" + ], + [ + "763977788006901", + "20306613" + ], + [ + "763977808313514", + "8074766" + ], + [ + "763977816388280", + "6279090" + ], + [ + "763978505738531", + "8847815" + ], + [ + "763983196643288", + "10869074" + ], + [ + "763983434298148", + "9849175" + ], + [ + "763985909132064", + "9752450" + ], + [ + "763985918884514", + "9787526" + ], + [ + "764056294370732", + "9351239" + ], + [ + "764056303721971", + "9560632" + ], + [ + "764058355999201", + "11112309" + ], + [ + "764059201744095", + "12584379" + ], + [ + "764059214328474", + "15014610" + ], + [ + "764059229343084", + "48861891" + ], + [ + "764059278204975", + "75874729" + ], + [ + "764059944324704", + "7505667" + ], + [ + "764059951830371", + "7635979" + ], + [ + "764059959466350", + "7814413" + ], + [ + "764059967280763", + "7718713" + ], + [ + "764059974999476", + "6432651" + ], + [ + "764059981432127", + "6505670" + ], + [ + "764059987937797", + "5540593" + ], + [ + "764059993478390", + "9367181" + ], + [ + "764060002845571", + "11137793" + ], + [ + "764060013983364", + "12401916" + ], + [ + "764060026385280", + "9288929" + ], + [ + "764060035674209", + "9390137" + ], + [ + "764060045064346", + "1450847" + ], + [ + "764060046515193", + "1501728" + ], + [ + "764060048016921", + "2894840" + ], + [ + "764060050911761", + "4941150" + ], + [ + "764060055852911", + "1301076" + ], + [ + "764060057153987", + "1700111" + ], + [ + "764060058854098", + "1809338" + ], + [ + "764060060663436", + "2557221" + ], + [ + "764060063220657", + "3319612" + ], + [ + "764060066540269", + "7533814" + ], + [ + "764060074074083", + "7779768" + ], + [ + "764452648625420", + "8106249" + ], + [ + "764452728661398", + "6424123" + ], + [ + "764454212950366", + "971045" + ], + [ + "767132400796221", + "371800" + ], + [ + "767132401168021", + "37" + ], + [ + "767132401168058", + "37" + ], + [ + "767825578930453", + "409264" + ], + [ + "767825579339717", + "6540080" + ], + [ + "767852884974560", + "16635629" + ] + ] + ], + [ + "0x8366bc75C14C481c93AaC21a11183807E1DE0630", + [ + [ + "76001221652173", + "5352834315" + ], + [ + "153738842061438", + "31920948003" + ], + [ + "648175958870466", + "11538942187" + ], + [ + "657207189000929", + "22663915925" + ] + ] + ], + [ + "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17", + [ + [ + "218815689873725", + "90674071972" + ], + [ + "511059734567237", + "208510236741" + ] + ] + ], + [ + "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", + [ + [ + "344618618497376", + "81000597500" + ] + ] + ], + [ + "0x83C9EC651027e061BcC39485c1Fb369297bD428c", + [ + [ + "41616804521094", + "961875804178" + ], + [ + "43500195788736", + "477585749636" + ], + [ + "45436352397595", + "303350065235" + ], + [ + "75054132455628", + "463749167922" + ], + [ + "75556189962930", + "129981759017" + ] + ] + ], + [ + "0x843F293423895a837DBe3Dca561604e49410576C", + [ + [ + "325979734145362", + "11660550051" + ] + ] + ], + [ + "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", + [ + [ + "635972973747079", + "594161902" + ], + [ + "638302750599290", + "1659683909" + ], + [ + "649155413500101", + "12127559908" + ] + ] + ], + [ + "0x8456f07Bed6156863C2020816063Be79E3bDAB88", + [ + [ + "312515166525797", + "27881195737" + ] + ] + ], + [ + "0x84649973923f8d3565E8520171618588508983aF", + [ + [ + "76120188262565", + "6666000000" + ] + ] + ], + [ + "0x848aB321B59da42521D10c07c2453870b9850c8A", + [ + [ + "676683082878726", + "419955" + ], + [ + "676686201559550", + "785945" + ] + ] + ], + [ + "0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849", + [ + [ + "84451783274191", + "5746830768" + ], + [ + "644558639373403", + "6740000000" + ], + [ + "644583603532321", + "6316834733" + ] + ] + ], + [ + "0x849eA9003Ba70e64D0de047730d47907762174C3", + [ + [ + "646770632841517", + "1588254225" + ] + ] + ], + [ + "0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b", + [ + [ + "408274916734309", + "46120079714" + ] + ] + ], + [ + "0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C", + [ + [ + "553461057474487", + "87874946085" + ] + ] + ], + [ + "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e", + [ + [ + "319387499836221", + "99947794980" + ], + [ + "319487447631201", + "99825855937" + ] + ] + ], + [ + "0x8525664820C549864982D4965a41F83A7d26AF58", + [ + [ + "28385711672356", + "4000000000" + ] + ] + ], + [ + "0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371", + [ + [ + "4952867558328", + "11407582" + ] + ] + ], + [ + "0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2", + [ + [ + "641528528201681", + "103236008" + ] + ] + ], + [ + "0x85971eb6073d28edF8f013221071bDBB9DEdA1af", + [ + [ + "195612355274761", + "16839687137" + ] + ] + ], + [ + "0x85bBE859d13c5311520167AAD51482672EEa654b", + [ + [ + "52088858820053", + "99058163147" + ], + [ + "96762775283557", + "102770386747" + ], + [ + "173386909282298", + "93706942656" + ], + [ + "361560759321922", + "124922335390" + ], + [ + "395500230234319", + "3355929998" + ], + [ + "395507210053015", + "1342546167" + ], + [ + "400387101795137", + "13305220778" + ], + [ + "408338406239697", + "2037424295" + ], + [ + "415550617895723", + "2006847559" + ], + [ + "443883816299985", + "132685663226" + ], + [ + "577904956448694", + "30085412412" + ], + [ + "836265440249827", + "101381274964" + ], + [ + "916958051049107", + "103888892461" + ] + ] + ], + [ + "0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a", + [ + [ + "676879061041574", + "401082333" + ] + ] + ], + [ + "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008", + [ + [ + "16396578434940", + "1386508934563" + ], + [ + "452122462229722", + "3565000000000" + ] + ] + ], + [ + "0x85Eada0D605d905262687Ad74314bc95837dB4F9", + [ + [ + "680106747582914", + "8091023787" + ], + [ + "681632124128030", + "7857742444" + ] + ] + ], + [ + "0x86642f87887c1313f284DBEc47E79Dc06593b82e", + [ + [ + "768785503361939", + "2853000000" + ] + ] + ], + [ + "0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5", + [ + [ + "265691646124302", + "52475804769" + ], + [ + "266029676145669", + "95013616645" + ], + [ + "428383641973567", + "133886156698" + ] + ] + ], + [ + "0x8675C7bc738b4771D29bd0d984c6f397326c9eC2", + [ + [ + "271861293951059", + "198152825" + ] + ] + ], + [ + "0x8687c54f8A431134cDE94Ae3782cB7cba9963D12", + [ + [ + "646497940474546", + "84596400000" + ] + ] + ], + [ + "0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c", + [ + [ + "760184740654334", + "11932612568" + ] + ] + ], + [ + "0x8709DD5FE0F07219D8d4cd60735B58E2C3009073", + [ + [ + "173486508329974", + "159470624797" + ], + [ + "190814678933595", + "29696822758" + ] + ] + ], + [ + "0x87104977d80256B00465d3411c6D93A63818723c", + [ + [ + "886456591570583", + "134558229863" + ] + ] + ], + [ + "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", + [ + [ + "740625640590276", + "3880736646" + ], + [ + "769309859020325", + "543636737" + ] + ] + ], + [ + "0x87316f7261E140273F5fC4162da578389070879F", + [ + [ + "33300451017861", + "86512840254" + ], + [ + "61109178571450", + "122328394500" + ], + [ + "634752629673424", + "177195" + ], + [ + "650887494287222", + "91918750000" + ], + [ + "662291967520724", + "358440000000" + ], + [ + "665973538914731", + "277554381613" + ], + [ + "666823186189970", + "262793215966" + ], + [ + "667093311031404", + "218769177704" + ] + ] + ], + [ + "0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D", + [ + [ + "318879364223287", + "100013282422" + ], + [ + "325544608143106", + "116174772099" + ] + ] + ], + [ + "0x876133657F5356e376B7ae27d251444727cE9488", + [ + [ + "768637502130744", + "6878063205" + ] + ] + ], + [ + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", + [ + [ + "29414505086527", + "2152396670739" + ], + [ + "32181015349710", + "480290414" + ], + [ + "67097307242526", + "33653558763" + ], + [ + "70363795658552", + "66346441237" + ], + [ + "87581469817175", + "155805856117" + ], + [ + "98500494455758", + "312782775000" + ], + [ + "221217178954962", + "79784359766" + ], + [ + "291950100636275", + "188949798464" + ], + [ + "353439836528037", + "30660000000" + ], + [ + "353470496528037", + "24576000000" + ], + [ + "362146672277631", + "792250000000" + ], + [ + "376516374904000", + "1617000000000" + ], + [ + "390771216202303", + "27097995630" + ], + [ + "390832166082933", + "26778365141" + ], + [ + "394108244766547", + "716760000000" + ], + [ + "396298286064032", + "26723534157" + ], + [ + "396325009598189", + "26805960384" + ], + [ + "396351815558573", + "19925216963" + ], + [ + "396876559988498", + "6636959689" + ], + [ + "403252895632721", + "26771365896" + ], + [ + "507117056987690", + "1891500000" + ], + [ + "551501858791010", + "4512000000" + ], + [ + "573655832985345", + "106500000000" + ], + [ + "588878841916038", + "131652538887" + ], + [ + "600406655075849", + "2363527378" + ], + [ + "639715198069573", + "2189230614" + ], + [ + "705891223608807", + "144595850533" + ], + [ + "741729751228268", + "1456044898" + ], + [ + "741749288606424", + "32651685550" + ], + [ + "741781940291974", + "61004241338" + ], + [ + "742560662343081", + "273256402439" + ], + [ + "743175173822909", + "94910366676" + ], + [ + "743314353435951", + "26369949937" + ], + [ + "743600702406369", + "29793092327" + ], + [ + "743684384239393", + "29401573282" + ], + [ + "744417709046481", + "288732279695" + ] + ] + ], + [ + "0x87834847477c82d340FCD37BE6b5524b4dF5e7c5", + [ + [ + "341736578016278", + "6454277235" + ] + ] + ], + [ + "0x87A774178D49C919be273f1022de2ae106E2581e", + [ + [ + "634773067987253", + "17354145" + ] + ] + ], + [ + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", + [ + [ + "7610595204140", + "5073919704077" + ], + [ + "38787729222746", + "2131906543178" + ], + [ + "57813809876489", + "1456044500354" + ], + [ + "170272286454622", + "56571249769" + ], + [ + "349019688741041", + "1506500000000" + ], + [ + "380692001264631", + "3775193029045" + ], + [ + "441243549115022", + "2601287700000" + ], + [ + "517190544221796", + "3763750720000" + ], + [ + "632606217533439", + "22758013200" + ], + [ + "745015672951634", + "2234666668979" + ] + ] + ], + [ + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", + [ + [ + "167782267131210", + "106256000000" + ], + [ + "827629800353740", + "110783253508" + ], + [ + "827740583607248", + "853190019303" + ] + ] + ], + [ + "0x880bba07fA004b948D22f4492808b255d853DFFe", + [ + [ + "550921667542369", + "41775210170" + ] + ] + ], + [ + "0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b", + [ + [ + "801693742643965", + "99999995904" + ] + ] + ], + [ + "0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F", + [ + [ + "644166242707654", + "2050308397" + ] + ] + ], + [ + "0x88F09Bdc8e99272588242a808052eb32702f88D0", + [ + [ + "85029199936365", + "840122967451" + ], + [ + "88453221835372", + "233118002521" + ], + [ + "153171960305965", + "41365965513" + ], + [ + "154999547640805", + "375222322618" + ], + [ + "165315717408183", + "439812976881" + ], + [ + "171503540188858", + "351737246973" + ], + [ + "218906363945697", + "267770208367" + ] + ] + ], + [ + "0x88F667664E61221160ddc0414868eF2f40e83324", + [ + [ + "350528056631821", + "31369126849" + ] + ] + ], + [ + "0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1", + [ + [ + "344900298455340", + "70954400000" + ] + ] + ], + [ + "0x891768B90Ea274e95B40a3a11437b0e98ae96493", + [ + [ + "542384825883218", + "183217724421" + ], + [ + "580263603894911", + "202078712746" + ], + [ + "580852891674604", + "240857146192" + ], + [ + "643546658124727", + "67704306110" + ], + [ + "646848441162974", + "13082343750" + ], + [ + "646861523506724", + "9963000000" + ], + [ + "647064793304491", + "19836000000" + ], + [ + "647361422909783", + "10074093750" + ], + [ + "647416263710967", + "9033750000" + ], + [ + "647580506034299", + "7345791596" + ], + [ + "648573161562432", + "8173059019" + ], + [ + "652685809874501", + "41130226166" + ], + [ + "653461600264912", + "16002234489" + ], + [ + "654979952361127", + "23536146483" + ], + [ + "699140429441765", + "235512332890" + ], + [ + "810139795794754", + "1021515561753" + ] + ] + ], + [ + "0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df", + [ + [ + "400667403191381", + "202636723695" + ], + [ + "408340443663992", + "1766184702" + ], + [ + "408342209848694", + "1766821870" + ], + [ + "408343976670564", + "1776377083" + ], + [ + "408345753047647", + "1776940468" + ], + [ + "409571787389145", + "1940500171" + ], + [ + "411707409641311", + "1769006754" + ], + [ + "460456294770519", + "1909649071" + ], + [ + "460458204419590", + "1909460313" + ], + [ + "460660502553919", + "1913525664" + ] + ] + ], + [ + "0x89979246e8764D8DCB794fC45F826437fDeC23b2", + [ + [ + "180499793470389", + "111111111" + ] + ] + ], + [ + "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a", + [ + [ + "228344590940664", + "13645890242" + ], + [ + "404814012582428", + "13502469920" + ] + ] + ], + [ + "0x8a178306ffF20fd120C6d96666F08AC7c8b31ded", + [ + [ + "341743032293513", + "96491602264" + ] + ] + ], + [ + "0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A", + [ + [ + "185180686460512", + "227508332382" + ] + ] + ], + [ + "0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234", + [ + [ + "657666540789773", + "75000000000" + ] + ] + ], + [ + "0x8A1B804543404477C19034593aCA22Ab699f0B7D", + [ + [ + "394825004766547", + "132495619648" + ] + ] + ], + [ + "0x8A30D3bb32291DBbB5F88F905433E499638387b7", + [ + [ + "624854422205544", + "365063359304" + ], + [ + "720966007001489", + "172940224850" + ], + [ + "790054047305179", + "266340074594" + ] + ] + ], + [ + "0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9", + [ + [ + "173480616224954", + "5892105020" + ] + ] + ], + [ + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", + [ + [ + "764117220398714", + "5082059700" + ] + ] + ], + [ + "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", + [ + [ + "31876165099710", + "4909413452" + ], + [ + "324785641390123", + "20381632106" + ], + [ + "337836629850712", + "110785980662" + ] + ] + ], + [ + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", + [ + [ + "4952878965910", + "25693" + ], + [ + "75795223567174", + "55399924533" + ], + [ + "270425564599223", + "6167341566" + ], + [ + "634279320795686", + "1458416574" + ], + [ + "634375990601696", + "8038918025" + ], + [ + "634684031419046", + "14524410119" + ], + [ + "636910709575795", + "43996256" + ], + [ + "636951322053443", + "5949833624" + ] + ] + ], + [ + "0x8a9C930896e453cA3D87f1918996423A589Dd529", + [ + [ + "599110871788478", + "1467343" + ] + ] + ], + [ + "0x8b08CA521FFbb87263Af2C6145E173c16576802d", + [ + [ + "273422474556206", + "86252721548" + ] + ] + ], + [ + "0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d", + [ + [ + "582413872658220", + "312333420" + ] + ] + ], + [ + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", + [ + [ + "648003472838380", + "12191197851" + ], + [ + "653322368574912", + "1500000000" + ], + [ + "656881019664829", + "5000000000" + ], + [ + "656943897664851", + "10000000000" + ] + ] + ], + [ + "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048", + [ + [ + "647544630241326", + "8159246655" + ], + [ + "656973507284806", + "14666666666" + ], + [ + "679488933480560", + "10109491684" + ] + ] + ], + [ + "0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5", + [ + [ + "273822660112045", + "7974066988" + ] + ] + ], + [ + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", + [ + [ + "918986387237878", + "39771142560" + ], + [ + "919359990785000", + "42954878920" + ] + ] + ], + [ + "0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F", + [ + [ + "534969937819543", + "135093374272" + ] + ] + ], + [ + "0x8BB07e694B421433c9545C0F3d75d99cc763d74A", + [ + [ + "201066794771608", + "25133316533" + ], + [ + "262064136145414", + "3613514390" + ], + [ + "429986876991709", + "54054054054" + ] + ] + ], + [ + "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", + [ + [ + "201109552307211", + "5955474760" + ], + [ + "217487565268538", + "44350084857" + ], + [ + "239366783598110", + "43020513083" + ], + [ + "299402420990124", + "221104866853" + ], + [ + "326242916529391", + "17549000000" + ], + [ + "326313112529391", + "17549000000" + ], + [ + "361863180975181", + "277218187043" + ], + [ + "522905481908356", + "367508589170" + ], + [ + "867419292286175", + "168927430163" + ], + [ + "869942050156433", + "161251868752" + ] + ] + ], + [ + "0x8bFe70E2D583f512E7248D67ACE918116B892aeA", + [ + [ + "278038360536371", + "43467727584" + ] + ] + ], + [ + "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", + [ + [ + "193207655597753", + "21615842337" + ] + ] + ], + [ + "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1", + [ + [ + "236244833829125", + "21640000" + ], + [ + "247467483053971", + "97017435775" + ], + [ + "268035191288542", + "43140000000" + ], + [ + "385713611898436", + "6012500000" + ] + ] + ], + [ + "0x8C35933C469406C8899882f5C2119649cD5B617f", + [ + [ + "738068338201632", + "87106285553" + ] + ] + ], + [ + "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9", + [ + [ + "320002058744923", + "981658441" + ], + [ + "396538880923743", + "3278000000" + ] + ] + ], + [ + "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b", + [ + [ + "634147730459515", + "19019153520" + ], + [ + "639381458599755", + "43462477350" + ], + [ + "640267729343515", + "1639640204" + ], + [ + "643109436914433", + "3695060762" + ], + [ + "656886019664829", + "9255777800" + ] + ] + ], + [ + "0x8D02496FA58682DB85034bCCCfE7Dd190000422e", + [ + [ + "343580534466152", + "26811409430" + ] + ] + ], + [ + "0x8D06Ffb1500343975571cC0240152C413d803778", + [ + [ + "28904918772117", + "509586314410" + ], + [ + "149476539987788", + "595705787279" + ], + [ + "150623260553725", + "436653263484" + ], + [ + "161092113186340", + "738480151497" + ], + [ + "162734759646450", + "737048150894" + ], + [ + "163471807797344", + "717665153748" + ], + [ + "174803269011285", + "323070981235" + ], + [ + "210525931443438", + "62132577144" + ], + [ + "232704752844281", + "204706266628" + ], + [ + "247742878911682", + "275332296988" + ], + [ + "253931736847120", + "290236580727" + ], + [ + "261970235265316", + "30303030303" + ], + [ + "272319508243958", + "438603533273" + ], + [ + "335529346845329", + "13913764863" + ], + [ + "340276769047777", + "33796000000" + ], + [ + "344515718397376", + "18025000000" + ], + [ + "344533743397376", + "18025000000" + ], + [ + "344833670732808", + "5702918963" + ], + [ + "429976284393417", + "10590000000" + ], + [ + "628854228397766", + "372857584031" + ], + [ + "629227085981797", + "216873485917" + ], + [ + "634643031419046", + "20948977130" + ], + [ + "637149167789946", + "4910026986" + ], + [ + "637351998004377", + "258192517612" + ], + [ + "639180990676042", + "199438094194" + ], + [ + "641522728201681", + "5800000000" + ], + [ + "641574417641439", + "154715717850" + ], + [ + "643909821821812", + "6902000000" + ], + [ + "643916723821812", + "10900958949" + ], + [ + "643999292802533", + "8204345668" + ], + [ + "644007497148201", + "11854871050" + ], + [ + "644045596517280", + "6544832392" + ], + [ + "644057761258485", + "8182865200" + ], + [ + "644065944123685", + "7516642526" + ], + [ + "644171938918668", + "9601229268" + ], + [ + "644306806412385", + "12054054687" + ], + [ + "644319149838335", + "10735050747" + ], + [ + "644329884889082", + "14347680621" + ], + [ + "644396277666556", + "6674520726" + ], + [ + "644525199249437", + "6225710228" + ], + [ + "644616712009539", + "14199853473" + ], + [ + "644642611623012", + "12249630834" + ], + [ + "646758741417842", + "4969664107" + ], + [ + "646871486506724", + "17642812500" + ], + [ + "646914219232490", + "8605864430" + ], + [ + "647002050880741", + "9799080000" + ], + [ + "647046808773241", + "17984531250" + ], + [ + "647084629304491", + "23544562500" + ], + [ + "647119660778668", + "15762838323" + ], + [ + "647151216777708", + "11761593750" + ], + [ + "647166440607362", + "9285468750" + ], + [ + "647371497003533", + "6381630000" + ], + [ + "647505902133654", + "6953600000" + ], + [ + "647527562675656", + "8111120358" + ], + [ + "647617732404338", + "19873525000" + ], + [ + "647798301685196", + "7654771125" + ], + [ + "647838858023565", + "29093546875" + ], + [ + "647908205457926", + "12756105568" + ], + [ + "647978638361818", + "24834476562" + ], + [ + "648017646545411", + "10268964843" + ], + [ + "648034585438303", + "11688871093" + ], + [ + "648106773674125", + "3568208882" + ], + [ + "648187497812653", + "10104336384" + ], + [ + "648233657616208", + "10357224170" + ], + [ + "648244014840378", + "8114610976" + ], + [ + "648252129451354", + "8545778006" + ], + [ + "648262194812840", + "8952959614" + ], + [ + "648271147772454", + "6063060479" + ], + [ + "648287518441310", + "7377849726" + ], + [ + "648416302604421", + "20715605468" + ], + [ + "648452542642294", + "21586449186" + ], + [ + "648483189881961", + "20797810726" + ], + [ + "648510092345893", + "15239253108" + ], + [ + "648616078919292", + "8718470609" + ], + [ + "648629542096134", + "21544183345" + ], + [ + "648750501960130", + "10150581160" + ], + [ + "648760652541290", + "23321057117" + ], + [ + "648783994477207", + "23277498479" + ], + [ + "648807289596036", + "20989718750" + ], + [ + "648828279314786", + "20297082735" + ], + [ + "648889660439973", + "41844097841" + ], + [ + "649214012945345", + "22440187500" + ], + [ + "649236472457547", + "7534311320" + ], + [ + "649261133791064", + "23748160156" + ], + [ + "649656745149465", + "12205116299" + ], + [ + "649693929475018", + "11667351669" + ], + [ + "657232832610979", + "97443079393" + ], + [ + "657631435066681", + "35105723092" + ], + [ + "657741540789773", + "84888584622" + ], + [ + "657986484502639", + "80000000000" + ], + [ + "658147267102223", + "82507217675" + ], + [ + "659366890690250", + "174474635475" + ], + [ + "665058906638905", + "92828595185" + ], + [ + "676664914525249", + "18043478260" + ], + [ + "676683083298681", + "3118260869" + ], + [ + "679750611381961", + "234067235160" + ], + [ + "681871200072623", + "12689035666" + ], + [ + "682844108475123", + "1148082700" + ], + [ + "741732026495866", + "17262110558" + ], + [ + "741842944533312", + "61092850308" + ], + [ + "763709016360993", + "44972105263" + ], + [ + "763803405580259", + "33297747636" + ], + [ + "768649803857758", + "67782688750" + ], + [ + "912555361492019", + "2704904821499" + ] + ] + ], + [ + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + [ + [ + "741717634585957", + "400610000" + ], + [ + "741718197414792", + "455722490" + ], + [ + "741726062974606", + "818667500" + ], + [ + "741731207273166", + "819222700" + ], + [ + "743584914211138", + "4590853221" + ] + ] + ], + [ + "0x8d5380a08b8010F14DC13FC1cFF655152e30998A", + [ + [ + "547597031515157", + "77364415010" + ] + ] + ], + [ + "0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D", + [ + [ + "44938174265414", + "58533046674" + ] + ] + ], + [ + "0x8d9261369E3BFba715F63303236C324D2E3C44eC", + [ + [ + "56104423797726", + "5555555555" + ], + [ + "56128647277576", + "115480969665" + ], + [ + "593991444075917", + "1088800000000" + ], + [ + "809590710610923", + "69000002695" + ] + ] + ], + [ + "0x8d98fFF066733b1867e83D1E9563dbe2ad93d933", + [ + [ + "682012823032558", + "229947181" + ], + [ + "726480239479153", + "501252464" + ] + ] + ], + [ + "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8", + [ + [ + "76139269514624", + "1990740993" + ], + [ + "76141260255617", + "5973245960" + ] + ] + ], + [ + "0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c", + [ + [ + "759849978560381", + "14385817538" + ] + ] + ], + [ + "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051", + [ + [ + "161830593337837", + "115150000000" + ], + [ + "202662490970944", + "110850000000" + ] + ] + ], + [ + "0x8E22B0945051f9ca957923490FffC42732A602bb", + [ + [ + "634788539076470", + "6276203466" + ], + [ + "634794815279936", + "9827545588" + ], + [ + "635904827427826", + "9070037632" + ], + [ + "636030747598704", + "5542323541" + ], + [ + "637155158025776", + "5119268057" + ], + [ + "637160277293833", + "4699403170" + ], + [ + "638272444804205", + "4087299849" + ], + [ + "638517747611099", + "59892617241" + ], + [ + "638577640228340", + "369705124715" + ], + [ + "639881343943323", + "3286401254" + ], + [ + "639884630344577", + "355774647137" + ], + [ + "640240404991714", + "27324351801" + ], + [ + "643614362430837", + "2066888224" + ], + [ + "643620283037921", + "8939065419" + ], + [ + "643694953463326", + "2752359372" + ], + [ + "643703391590700", + "661959372" + ], + [ + "643708407761224", + "7208774373" + ], + [ + "643719737373681", + "5569600000" + ], + [ + "643725306973681", + "9742600000" + ], + [ + "643779525019527", + "3820850000" + ], + [ + "643783345869527", + "1707040042" + ], + [ + "643785052909569", + "5763520000" + ], + [ + "643821358178040", + "7971800000" + ], + [ + "643829329978040", + "5039030716" + ], + [ + "644476737396027", + "16895000000" + ], + [ + "644493632396027", + "1504381620" + ], + [ + "644546930195508", + "8900760000" + ], + [ + "644630911863012", + "11699760000" + ], + [ + "644654861253846", + "10623920000" + ], + [ + "644665485173846", + "17638053943" + ], + [ + "644683123227789", + "9745450000" + ], + [ + "644715557290166", + "7386500000" + ], + [ + "644722943790166", + "6647850000" + ], + [ + "644730383784474", + "8593920000" + ], + [ + "644739405621666", + "7046550000" + ], + [ + "646586693145487", + "7647120000" + ], + [ + "646594340265487", + "7107300000" + ], + [ + "646601447565487", + "10325700000" + ], + [ + "646649283926819", + "13915200000" + ], + [ + "648975005377814", + "14240250000" + ], + [ + "649465991359682", + "39499055600" + ], + [ + "649543350358696", + "30370700000" + ], + [ + "649638915549465", + "17829600000" + ], + [ + "649682731105706", + "10750000000" + ], + [ + "649732321655883", + "29365153200" + ], + [ + "649853553682918", + "21210990800" + ], + [ + "649877349506586", + "37388375200" + ], + [ + "649945145929507", + "16389700000" + ], + [ + "649997091073072", + "23302500000" + ], + [ + "650021492240274", + "44719200000" + ], + [ + "650106319488124", + "22080492500" + ], + [ + "650180188928485", + "39053700000" + ], + [ + "650221099958669", + "31599600000" + ], + [ + "650253593040147", + "33458400000" + ], + [ + "650288534678033", + "30655350000" + ], + [ + "650320795125561", + "45806000000" + ], + [ + "650366601125561", + "30935000000" + ], + [ + "650452255356813", + "44503200000" + ], + [ + "650551388583982", + "35815000000" + ], + [ + "650651519952014", + "67859000000" + ], + [ + "650721535280868", + "77075000000" + ], + [ + "650801314728485", + "80119000000" + ], + [ + "651106116712104", + "119445800000" + ], + [ + "651226237935004", + "123080000000" + ], + [ + "651352897558523", + "132861600000" + ], + [ + "651490734941819", + "126034000000" + ], + [ + "651859212744680", + "131988500000" + ], + [ + "651994987597920", + "92040000000" + ], + [ + "652092559809813", + "106100900000" + ], + [ + "652200893903770", + "110340000000" + ], + [ + "652314223783562", + "164816300000" + ], + [ + "652482991863768", + "199030000000" + ], + [ + "656273596415795", + "139472000000" + ], + [ + "656726385959559", + "145320000000" + ], + [ + "657483455066681", + "147980000000" + ], + [ + "660094725857615", + "275770000000" + ], + [ + "663738170468081", + "341622600000" + ], + [ + "667521733568321", + "189440000000" + ], + [ + "667713496616813", + "185793800000" + ], + [ + "667901436175266", + "198119000000" + ], + [ + "668712695471943", + "188864000000" + ], + [ + "670464846916585", + "243812500000" + ], + [ + "670716975210715", + "252496000000" + ], + [ + "743136696323798", + "38477499111" + ] + ] + ], + [ + "0x8E32736429d2F0a39179214C826DeeF5B8A37861", + [ + [ + "217364218398563", + "2286050992" + ], + [ + "235843631746968", + "10000000000" + ] + ] + ], + [ + "0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9", + [ + [ + "533811200182803", + "10832666996" + ] + ] + ], + [ + "0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1", + [ + [ + "294885031008106", + "214939119695" + ] + ] + ], + [ + "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", + [ + [ + "33289238004194", + "88586040" + ] + ] + ], + [ + "0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f", + [ + [ + "261926912251264", + "43323014052" + ], + [ + "267608940617108", + "47689884851" + ] + ] + ], + [ + "0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E", + [ + [ + "228395750082372", + "40000269904" + ] + ] + ], + [ + "0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1", + [ + [ + "250822439474701", + "20080403416" + ] + ] + ], + [ + "0x8ED057F90b2442813136066C8D1F1C54A64f6bFa", + [ + [ + "823927383087247", + "1820804740000" + ] + ] + ], + [ + "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3", + [ + [ + "647923615594199", + "3641357127" + ], + [ + "656957870028532", + "10106346172" + ], + [ + "740606283858594", + "19356731682" + ], + [ + "763837600998279", + "7849710807" + ] + ] + ], + [ + "0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab", + [ + [ + "644084234800388", + "4987061378" + ] + ] + ], + [ + "0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3", + [ + [ + "298728570869450", + "16832925562" + ] + ] + ], + [ + "0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3", + [ + [ + "661958706677690", + "25027091964" + ], + [ + "763845450709086", + "30629325526" + ], + [ + "768080691689073", + "4437963" + ] + ] + ], + [ + "0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd", + [ + [ + "143431239052286", + "274715000000" + ], + [ + "160171656111929", + "64458305378" + ], + [ + "166312311338905", + "4355746398" + ], + [ + "283231288673626", + "85392080830" + ], + [ + "428537479118543", + "192740698873" + ] + ] + ], + [ + "0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E", + [ + [ + "636957271887067", + "7101122035" + ] + ] + ], + [ + "0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf", + [ + [ + "279415281575631", + "21362369519" + ] + ] + ], + [ + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", + [ + [ + "634067048999317", + "624152515" + ], + [ + "634313671519967", + "2917389996" + ], + [ + "634316588909963", + "1608309723" + ] + ] + ], + [ + "0x905B2Eb4B731B395E7517a4763CD829F6EC2f510", + [ + [ + "318867707803280", + "11656420007" + ] + ] + ], + [ + "0x90777294a457DDe6F7d297F66cCf30e1aD728997", + [ + [ + "635851055266738", + "6942682548" + ], + [ + "635865859827411", + "591391110" + ], + [ + "635866451218521", + "1887298581" + ], + [ + "635913897465458", + "4889469871" + ], + [ + "635924362730406", + "5619208960" + ], + [ + "635933837379991", + "466964066" + ], + [ + "635944448014495", + "11358834076" + ], + [ + "635955806848571", + "8964889758" + ], + [ + "636007716379648", + "11412961016" + ], + [ + "636019129340664", + "5321360246" + ], + [ + "636024450700910", + "6296897794" + ], + [ + "636036289922245", + "4024217651" + ], + [ + "636040314139896", + "7156191386" + ], + [ + "640489298182683", + "25062802988" + ], + [ + "640514360985671", + "40682056506" + ] + ] + ], + [ + "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", + [ + [ + "32880713693820", + "64911823433" + ] + ] + ], + [ + "0x90a69b1a180f60c0059f149577919c778cE2b9e1", + [ + [ + "768076090723695", + "4151494524" + ], + [ + "768080242218597", + "449469381" + ], + [ + "768317482790786", + "557834029" + ], + [ + "768563844703458", + "1171046769" + ], + [ + "883616982283453", + "11518551564" + ] + ] + ], + [ + "0x90B113Cf662039394D28505f51f0B1B4678Cc3b5", + [ + [ + "219654135446081", + "12564997296" + ] + ] + ], + [ + "0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50", + [ + [ + "580032854468122", + "88320699942" + ] + ] + ], + [ + "0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F", + [ + [ + "558624634802147", + "1237233093659" + ] + ] + ], + [ + "0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96", + [ + [ + "84457739949221", + "34043324970" + ] + ] + ], + [ + "0x922d012c7E8fCe3C46ac761179Bdb6d16246782D", + [ + [ + "88955798195330", + "25000000000" + ], + [ + "624243295610454", + "69069767441" + ] + ] + ], + [ + "0x923CC3D985cE69a254458001097012cb33FAb601", + [ + [ + "249612009457166", + "4073310240" + ], + [ + "322124343236298", + "166137507314" + ], + [ + "483902259120899", + "107641561256" + ], + [ + "744791150134115", + "7566204130" + ] + ] + ], + [ + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", + [ + [ + "28489123737390", + "4974815" + ], + [ + "343041139126193", + "95838400000" + ] + ] + ], + [ + "0x925a3A49f8F831879ee7A848524cEfb558921874", + [ + [ + "789556545675975", + "477950000000" + ] + ] + ], + [ + "0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36", + [ + [ + "201091928088141", + "17624219070" + ] + ] + ], + [ + "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA", + [ + [ + "217366504449555", + "302171" + ], + [ + "217531915353395", + "8958398331" + ], + [ + "218296843888721", + "80071865513" + ], + [ + "224631428800796", + "22378" + ], + [ + "231844168579875", + "306052702649" + ], + [ + "376516373148891", + "1755109" + ], + [ + "380624351115891", + "67650148740" + ], + [ + "395424902256127", + "6675646701" + ], + [ + "401212958523891", + "54089424183" + ], + [ + "643927624780761", + "11229570252" + ], + [ + "644546638392961", + "291802547" + ], + [ + "646780136970742", + "8953406250" + ], + [ + "646810991621895", + "8729437500" + ], + [ + "647028402460741", + "18406312500" + ], + [ + "647238526691033", + "17103187500" + ], + [ + "647587851825895", + "11928928125" + ], + [ + "650150114947102", + "30073981383" + ], + [ + "654554821960398", + "2548987716" + ], + [ + "654977582470147", + "2369890980" + ], + [ + "664868558503085", + "115005092260" + ], + [ + "667337080209108", + "100000000000" + ], + [ + "667437080209108", + "84653359213" + ] + ] + ], + [ + "0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB", + [ + [ + "299318297064041", + "56184744549" + ] + ] + ], + [ + "0x92e8E8760aBa91467A321230EF3ba081aD3998Fb", + [ + [ + "638142095832193", + "89554550" + ], + [ + "638276532104054", + "5326837099" + ] + ] + ], + [ + "0x930836bA4242071FEa039732ff8bf18B8401403E", + [ + [ + "78615049172294", + "2221663677" + ], + [ + "217475674512777", + "11890755761" + ], + [ + "299133073539652", + "93793524292" + ], + [ + "866979581798975", + "5154270000" + ], + [ + "912080623426716", + "22562763887" + ] + ] + ], + [ + "0x9336a604077688Ae5bB9e18EbDF305d81d474817", + [ + [ + "507627505426137", + "16376776057" + ] + ] + ], + [ + "0x9383E26556018f0E14D8255C5020d58b3f480Dac", + [ + [ + "221721022666875", + "88075053596" + ] + ] + ], + [ + "0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228", + [ + [ + "415361829991557", + "21739077662" + ] + ] + ], + [ + "0x9399943298b25632b21f4d1FA75DB0C5b8d457C5", + [ + [ + "342893609901961", + "12098559997" + ], + [ + "344871912132732", + "28386322608" + ] + ] + ], + [ + "0x93A185CD1579c015043Af80da2D88C90240Ab3a9", + [ + [ + "363871731464758", + "67603779457" + ], + [ + "470298210971887", + "82596094458" + ], + [ + "582132866585744", + "152697324377" + ] + ] + ], + [ + "0x93b34d74a134b403450f993e3f2fb75B751fa3d6", + [ + [ + "235668949340980", + "139782800000" + ] + ] + ], + [ + "0x93C950E36f3C155B2141f1516b7ea5B6D15eD981", + [ + [ + "768601886344092", + "32526495264" + ], + [ + "860250156865870", + "35738780868" + ], + [ + "868255530067476", + "89704746985" + ] + ] + ], + [ + "0x93d4E7442F62028ca0a44df7712c2d202dc214B9", + [ + [ + "153777795374191", + "148859700937" + ] + ] + ], + [ + "0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb", + [ + [ + "76137278825671", + "1990688953" + ], + [ + "643070034423361", + "6711451596" + ] + ] + ], + [ + "0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f", + [ + [ + "118268129285100", + "16859278098" + ] + ] + ], + [ + "0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74", + [ + [ + "343508462299842", + "21014656050" + ] + ] + ], + [ + "0x94cf16A6C45474B05d383d8779479C69f0c5a07A", + [ + [ + "580121175168064", + "85134042441" + ] + ] + ], + [ + "0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB", + [ + [ + "83647572521207", + "18782949347" + ], + [ + "271861492103884", + "19812902768" + ] + ] + ], + [ + "0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa", + [ + [ + "38045439233929", + "14316608969" + ] + ] + ], + [ + "0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95", + [ + [ + "203417856117845", + "45234008042" + ] + ] + ], + [ + "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5", + [ + [ + "76194265704929", + "3500000000" + ], + [ + "646832204344041", + "177292448" + ], + [ + "646841938136489", + "152188010" + ] + ] + ], + [ + "0x9558d273A81CF0b41931C78B502c4CB2Bd3deb42", + [ + [ + "131067170257727", + "423037526400" + ] + ] + ], + [ + "0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6", + [ + [ + "355295604996220", + "17574315355" + ], + [ + "559861867895806", + "7681062381" + ], + [ + "588875863204433", + "2978711605" + ] + ] + ], + [ + "0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13", + [ + [ + "563601797802308", + "150555000000" + ] + ] + ], + [ + "0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e", + [ + [ + "321946865430555", + "17115881788" + ] + ] + ], + [ + "0x96b793d04E0D068083792E4D6E7780EEE50755Fa", + [ + [ + "402932963276600", + "30982753569" + ] + ] + ], + [ + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", + [ + [ + "563752352802308", + "102495000000" + ], + [ + "566326224363477", + "253050000000" + ], + [ + "568613671950815", + "253050000000" + ], + [ + "569509116433715", + "253050000000" + ], + [ + "572451504525253", + "253050000000" + ], + [ + "595080378032834", + "10000000000" + ], + [ + "672201516338595", + "49886373590" + ], + [ + "742850925745520", + "13729367592" + ], + [ + "742864655113112", + "272041210686" + ] + ] + ], + [ + "0x96E4FD50CD0A761528626fc072Da54ADFD2F8593", + [ + [ + "741719419577984", + "1466608" + ] + ] + ], + [ + "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC", + [ + [ + "340404094520260", + "3964784011" + ], + [ + "646482350566546", + "15589908000" + ] + ] + ], + [ + "0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6", + [ + [ + "282819759198190", + "269171533434" + ] + ] + ], + [ + "0x9728444E6414E39d0F7F5389ca129B8abb4cB492", + [ + [ + "480577854120899", + "3324405000000" + ], + [ + "631799252766314", + "1813500000" + ], + [ + "643804834253676", + "6721835647" + ] + ] + ], + [ + "0x97Ada2E26C06C263c68ECCe43756708d0f03D94A", + [ + [ + "220240212248773", + "104797064592" + ] + ] + ], + [ + "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", + [ + [ + "679499042972244", + "1010851037" + ], + [ + "679985431655992", + "5054528890" + ], + [ + "911892086318462", + "14908452858" + ] + ] + ], + [ + "0x97b60488997482C29748d6f4EdC8665AF4A131B5", + [ + [ + "18053754491380", + "122517511" + ] + ] + ], + [ + "0x97c46EeC87a51320c05291286f36689967834854", + [ + [ + "415490440421248", + "60177474475" + ] + ] + ], + [ + "0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672", + [ + [ + "826335238626477", + "9112774391" + ] + ] + ], + [ + "0x97E89f88407d375cCF90eC1B710B5A914eB784Af", + [ + [ + "201768350656481", + "1844339969" + ], + [ + "220224852015278", + "6971402273" + ], + [ + "264821742218510", + "14054479986" + ], + [ + "310876801024927", + "8504661454" + ] + ] + ], + [ + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", + [ + [ + "428374263505395", + "9378468172" + ], + [ + "586115544020889", + "50921590468" + ], + [ + "595214601590334", + "15218730000" + ] + ] + ], + [ + "0x981793123af0E6126BEf8c8277Fdffec80eB13fd", + [ + [ + "649010129912775", + "665549350" + ], + [ + "649027243062125", + "483108332" + ], + [ + "649287757760638", + "69640042" + ] + ] + ], + [ + "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", + [ + [ + "668901559471943", + "2552486513" + ] + ] + ], + [ + "0x988fB2064B42a13eb556DF79077e23AA4924aF20", + [ + [ + "96723333293899", + "17313210068" + ], + [ + "217902719272293", + "226251708976" + ] + ] + ], + [ + "0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60", + [ + [ + "318373329094766", + "101752513973" + ] + ] + ], + [ + "0x989c235D8302fe906A84D076C24e51c1A7D44E3C", + [ + [ + "656118292039843", + "2141035469" + ], + [ + "659821030952031", + "142619335500" + ] + ] + ], + [ + "0x990cf47831822275a365e0C9239DC534b833922D", + [ + [ + "267334127487509", + "3651796730" + ] + ] + ], + [ + "0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a", + [ + [ + "562079457802308", + "379575000000" + ], + [ + "565096894810977", + "379575000000" + ], + [ + "566912175347146", + "379575000000" + ], + [ + "567901195967146", + "379575000000" + ], + [ + "570422537669484", + "379575000000" + ], + [ + "571411558289484", + "379575000000" + ] + ] + ], + [ + "0x992C5a47F13AB085de76BD598ED3842c995bDf1c", + [ + [ + "770897210700702", + "32781647269" + ] + ] + ], + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + [ + [ + "141100334358920", + "3759398496" + ], + [ + "157546915049126", + "1894286900" + ], + [ + "167724340170029", + "7142857142" + ], + [ + "201063937145997", + "2857625611" + ], + [ + "217470159827742", + "4221510559" + ], + [ + "262000538295619", + "1941820772" + ], + [ + "429969815360084", + "6469033333" + ], + [ + "430040931045763", + "7468303231" + ], + [ + "634268733708050", + "10587087636" + ], + [ + "634481097972888", + "857142857" + ], + [ + "634485782133373", + "1788298206" + ], + [ + "636910753572051", + "20630903371" + ], + [ + "641737331477120", + "4335852529" + ], + [ + "648129956489413", + "12056682276" + ], + [ + "672730845984332", + "4306282320" + ], + [ + "679500053823281", + "844417120" + ], + [ + "741257694168719", + "95204051" + ], + [ + "757912612741718", + "38494858016" + ], + [ + "763876080034612", + "623293283" + ], + [ + "764083981653091", + "62649720" + ], + [ + "764093598842759", + "6707198969" + ], + [ + "768095325828979", + "19256876112" + ], + [ + "848062102251836", + "58373882896" + ], + [ + "848140906334524", + "96391325008" + ], + [ + "860099248890927", + "6689760000" + ] + ] + ], + [ + "0x997563ba8058E80f1E4dd5b7f695b5C2B065408e", + [ + [ + "250927013915742", + "25000000000" + ] + ] + ], + [ + "0x9980234b18408E07C0F74aCE3dF940B02DD4095c", + [ + [ + "883529586723571", + "5308261827" + ] + ] + ], + [ + "0x99997957BF3c202446b1DCB1CAc885348C5b2222", + [ + [ + "224631428823174", + "22606820288" + ], + [ + "237800674733611", + "66551024044" + ] + ] + ], + [ + "0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b", + [ + [ + "767310292972398", + "1824412499" + ] + ] + ], + [ + "0x99e8845841BDe89e148663A6420a98C47e15EbCe", + [ + [ + "667899290416813", + "2145758453" + ] + ] + ], + [ + "0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221", + [ + [ + "190844375756353", + "112457271309" + ] + ] + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + [ + [ + "27675714415954", + "28428552478" + ], + [ + "28382015360976", + "3696311380" + ], + [ + "31670582016164", + "10000000000" + ], + [ + "31768149901004", + "1262870028" + ], + [ + "32346871499710", + "3745346177" + ], + [ + "32350616845887", + "279480420" + ], + [ + "32374040679120", + "10949720000" + ], + [ + "38665412577552", + "24234066624" + ], + [ + "38689646644176", + "25000000000" + ], + [ + "38771428831519", + "765933376" + ], + [ + "38772194764895", + "15534457850" + ], + [ + "41290690886174", + "33333333333" + ], + [ + "41373045659339", + "23121000000" + ], + [ + "41397566242672", + "22053409145" + ], + [ + "60450977817664", + "25794401425" + ], + [ + "60476772219089", + "57688204600" + ], + [ + "70456530221510", + "18433333333" + ], + [ + "72513985814422", + "14491677571" + ], + [ + "76155330934072", + "31663342271" + ], + [ + "76210249214022", + "5833333333" + ], + [ + "78786823008925", + "60000000000" + ], + [ + "86769330994210", + "21622894540" + ], + [ + "88930464353484", + "20159065566" + ], + [ + "107758212738194", + "26283248584" + ], + [ + "107784495986778", + "73418207324" + ], + [ + "164387799728437", + "209998797626" + ], + [ + "167679367131210", + "584126946" + ], + [ + "171855277435831", + "38451787955" + ], + [ + "185657906453513", + "65394189314" + ], + [ + "228435750352276", + "5440000000" + ], + [ + "245016829121327", + "43975873054" + ], + [ + "272983487213885", + "24345144843" + ], + [ + "278810931077752", + "61482926829" + ], + [ + "345065787237708", + "11163284655" + ], + [ + "384698308395580", + "109943584385" + ], + [ + "385029414062246", + "85561000000" + ], + [ + "409893164256334", + "1771119180000" + ], + [ + "470830034187107", + "6357442000000" + ], + [ + "634257675267110", + "11058440940" + ], + [ + "634663980396176", + "51022870" + ], + [ + "679984678617121", + "582008800" + ], + [ + "686252659342435", + "12828436637551" + ], + [ + "701165945775675", + "4725277211064" + ], + [ + "712925633754929", + "7525989446089" + ], + [ + "742249808817806", + "125000000" + ], + [ + "760295074894366", + "58283867892" + ], + [ + "761862357338505", + "193914722147" + ], + [ + "764182912505930", + "110218533197" + ], + [ + "862566363552351", + "3470058078836" + ], + [ + "873232203687519", + "875826549" + ], + [ + "873233079514068", + "1" + ], + [ + "873233079514069", + "8767124173450" + ] + ] + ], + [ + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", + [ + [ + "28079737718067", + "38853754100" + ], + [ + "28524969242262", + "2368065675" + ], + [ + "649543303268638", + "47090058" + ] + ] + ], + [ + "0x9A5d202C5384a032473b2370D636DcA39adcC28f", + [ + [ + "41274338068902", + "10701754385" + ] + ] + ], + [ + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + [ + [ + "28389711672356", + "104406740" + ], + [ + "33289034812134", + "202192060" + ], + [ + "33289237004194", + "1000000" + ], + [ + "33300426361001", + "1000000" + ], + [ + "33300427361001", + "5000000" + ], + [ + "33300432361001", + "5000000" + ], + [ + "33300437361001", + "13656860" + ], + [ + "61044373437038", + "25689347322" + ], + [ + "76147233501577", + "6856167984" + ], + [ + "429960272856509", + "9542503575" + ], + [ + "561871994522568", + "13450279740" + ], + [ + "643790816429569", + "7279671848" + ], + [ + "646935480690670", + "6157413604" + ], + [ + "647192437507145", + "407318967" + ], + [ + "649248676270246", + "9479483" + ], + [ + "650449504800190", + "2539843750" + ], + [ + "651725675783863", + "1673375675" + ], + [ + "653079279087019", + "3142881940" + ], + [ + "668346065728228", + "1702871488" + ], + [ + "676865712743974", + "13348297600" + ], + [ + "700043849883120", + "15882769" + ], + [ + "741061075495092", + "11965994685" + ], + [ + "741274318742427", + "170840041445" + ], + [ + "768308228493998", + "500910625" + ] + ] + ], + [ + "0x9af623bE3d125536929F8978233622A7BFc3feF4", + [ + [ + "79296814826113", + "1185063194630" + ], + [ + "188132972372439", + "634988906630" + ] + ] + ], + [ + "0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2", + [ + [ + "67661612435034", + "7500000000" + ], + [ + "326657149277910", + "365524741141" + ], + [ + "327607470128575", + "221232078910" + ] + ] + ], + [ + "0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0", + [ + [ + "201260587940851", + "66013841091" + ] + ] + ], + [ + "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F", + [ + [ + "561734572056961", + "18261807412" + ], + [ + "561752833864373", + "22055244259" + ] + ] + ], + [ + "0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52", + [ + [ + "141778150492051", + "8228218644" + ] + ] + ], + [ + "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", + [ + [ + "661999206613204", + "25000000000" + ] + ] + ], + [ + "0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E", + [ + [ + "343608586695690", + "6294220121" + ] + ] + ], + [ + "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C", + [ + [ + "647881759045440", + "106457720" + ], + [ + "647898572853160", + "795636" + ] + ] + ], + [ + "0x9c211891aFFB1ce6CF8A3e537efbF2f948162204", + [ + [ + "577935041861106", + "59036591791" + ] + ] + ], + [ + "0x9c695f16975b57f730727F30f399d110cFc71f10", + [ + [ + "461882379832", + "763789095" + ], + [ + "501577877086", + "8058429169" + ], + [ + "28378015360976", + "474338291" + ], + [ + "632732083964954", + "1303739940" + ], + [ + "633969304929591", + "49424794604" + ], + [ + "634191999230784", + "2612080692" + ], + [ + "699433001774655", + "535830837294" + ], + [ + "721395262187317", + "14658916075" + ], + [ + "740509548356246", + "96735502348" + ], + [ + "826252078588592", + "16970820644" + ], + [ + "885461415329976", + "566999495822" + ] + ] + ], + [ + "0x9C6f40999C82cd18f31421596Ca3b1C5C5083048", + [ + [ + "644385379072596", + "2088841809" + ] + ] + ], + [ + "0x9c7ac7abbD3EC00E1d4b330C497529166db84f63", + [ + [ + "323003646918374", + "27365907771" + ] + ] + ], + [ + "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753", + [ + [ + "28868829340297", + "1785516900" + ], + [ + "28870614857197", + "266145543" + ], + [ + "76029285005811", + "2" + ] + ] + ], + [ + "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b", + [ + [ + "385694828784542", + "3478109734" + ], + [ + "385719624398436", + "3179294885" + ], + [ + "395508552599182", + "2015623893" + ], + [ + "605147868070297", + "210641200000" + ], + [ + "632638886261264", + "76135000000" + ], + [ + "664655112978280", + "14440162929" + ], + [ + "675156678410802", + "83910292215" + ], + [ + "676829643561375", + "10000000000" + ] + ] + ], + [ + "0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8", + [ + [ + "141954294169149", + "30687677344" + ] + ] + ], + [ + "0x9D1334De1c51a46a9289D6258b986A267b09Ac18", + [ + [ + "624548747558738", + "15810994142" + ] + ] + ], + [ + "0x9D496BA09C9dDAE8de72F146DE012701a10400CC", + [ + [ + "298511519013444", + "217051856006" + ] + ] + ], + [ + "0x9d5b2a8Ad23E7d870CFa7c7B88A74C64FA098b46", + [ + [ + "32028293099710", + "14856250000" + ], + [ + "84597875356697", + "133850744098" + ], + [ + "97016486455371", + "254834033922" + ], + [ + "158734314278093", + "202188482247" + ], + [ + "171941305124226", + "512087118743" + ], + [ + "172453392242969", + "167963854918" + ], + [ + "250740780766453", + "6745238037" + ], + [ + "395286775789415", + "32560000000" + ], + [ + "564630258655208", + "32896500000" + ], + [ + "565841291995977", + "32896500000" + ], + [ + "569318757818315", + "32896500000" + ], + [ + "569955901513715", + "32896500000" + ], + [ + "635871823538305", + "8232935488" + ], + [ + "636053162040032", + "971681987" + ], + [ + "637126106210329", + "3549072302" + ], + [ + "637129677608084", + "6326081465" + ], + [ + "638142185386743", + "70301972656" + ], + [ + "638293184544519", + "3222535993" + ], + [ + "638952019925396", + "53884687500" + ], + [ + "644463766708048", + "12970687979" + ], + [ + "644495136777647", + "14591855468" + ], + [ + "645998771359546", + "402840000000" + ], + [ + "646991286880741", + "10764000000" + ], + [ + "648593843684716", + "9515295236" + ], + [ + "659752492504115", + "68538447916" + ], + [ + "682072110977139", + "44526000000" + ] + ] + ], + [ + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", + [ + [ + "531849151603571", + "116351049553" + ], + [ + "533550128922703", + "19753556385" + ], + [ + "544213439498555", + "93587607857" + ] + ] + ], + [ + "0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C", + [ + [ + "465366616460626", + "12745164567" + ], + [ + "534838741555277", + "19231055968" + ] + ] + ], + [ + "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196", + [ + [ + "145457231580719", + "24029099031" + ], + [ + "187576828165577", + "27608467355" + ] + ] + ], + [ + "0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A", + [ + [ + "189397241850520", + "74656417530" + ], + [ + "634499611419046", + "143420000000" + ] + ] + ], + [ + "0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d", + [ + [ + "151778101037835", + "204744106703" + ], + [ + "430070314991709", + "1718500000" + ] + ] + ], + [ + "0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4", + [ + [ + "886028414825798", + "48979547469" + ] + ] + ], + [ + "0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56", + [ + [ + "682506977792619", + "12652582923" + ] + ] + ], + [ + "0x9eD25251826C88122E16428CbB70e65a33E85B19", + [ + [ + "790034495675975", + "19551629204" + ] + ] + ], + [ + "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", + [ + [ + "236911541186226", + "1352237819" + ], + [ + "408418430300088", + "1389648589" + ], + [ + "634458769639996", + "2997137850" + ] + ] + ], + [ + "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE", + [ + [ + "142090287304002", + "17901404645" + ], + [ + "429116006573679", + "11930700081" + ] + ] + ], + [ + "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", + [ + [ + "76154089669561", + "1241264511" + ] + ] + ], + [ + "0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1", + [ + [ + "279436643945150", + "3073743220711" + ] + ] + ], + [ + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", + [ + [ + "88808287575483", + "30000000000" + ], + [ + "96740646503967", + "17128687218" + ], + [ + "229489538650748", + "32886283743" + ], + [ + "401152958523891", + "60000000000" + ], + [ + "609312164824779", + "1735981704349" + ] + ] + ], + [ + "0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402", + [ + [ + "636566959970125", + "151773247545" + ] + ] + ], + [ + "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8", + [ + [ + "660690919212731", + "289575171383" + ], + [ + "661622790183905", + "239200000000" + ], + [ + "668099555175266", + "7477326571" + ], + [ + "670969584019292", + "234760000000" + ], + [ + "674505181593279", + "234450921461" + ], + [ + "674739632514740", + "263907264047" + ], + [ + "675273135381879", + "259861322259" + ], + [ + "675532996704138", + "197622058472" + ], + [ + "675730618762610", + "151122236793" + ], + [ + "676029448628099", + "156891853803" + ], + [ + "676355375239188", + "179430599503" + ] + ] + ], + [ + "0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151", + [ + [ + "92502053320361", + "53620740838" + ] + ] + ], + [ + "0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc", + [ + [ + "632158717283728", + "132492430252" + ] + ] + ], + [ + "0xa03E8d9688844146867dEcb457A7308853699016", + [ + [ + "637610190521989", + "210060204" + ] + ] + ], + [ + "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", + [ + [ + "808559640519864", + "3390839496" + ] + ] + ], + [ + "0xA0df63b73f3B8D4a8cE353833848D672e65Ad818", + [ + [ + "202835949108939", + "22" + ] + ] + ], + [ + "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", + [ + [ + "282604279025472", + "19163060173" + ], + [ + "395376016689151", + "26717740160" + ] + ] + ], + [ + "0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7", + [ + [ + "764293131039127", + "5229504715" + ] + ] + ], + [ + "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf", + [ + [ + "523468438510750", + "57354074175" + ], + [ + "525245705716340", + "196968848290" + ], + [ + "530603875619848", + "61988431714" + ], + [ + "531536857228833", + "206618185436" + ], + [ + "586955456756494", + "136890000000" + ], + [ + "587932486316494", + "136890000000" + ], + [ + "588236306066494", + "136890000000" + ], + [ + "588540125816494", + "136890000000" + ], + [ + "634979077385365", + "10413750000" + ], + [ + "635251139802881", + "10413750000" + ] + ] + ], + [ + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", + [ + [ + "85026199936365", + "3000000000" + ], + [ + "88852883837163", + "4811715614" + ], + [ + "96710970854679", + "12362439220" + ], + [ + "106834324920574", + "4912604718" + ], + [ + "643886475933352", + "3765334850" + ] + ] + ], + [ + "0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0", + [ + [ + "845407075505547", + "149022357044" + ] + ] + ], + [ + "0xA256Aa181aF9046995aF92506498E31E620C747a", + [ + [ + "211328028616940", + "48907133253" + ], + [ + "250772216022849", + "50223451852" + ] + ] + ], + [ + "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6", + [ + [ + "635189799238365", + "55984064516" + ], + [ + "635432840138881", + "96417000000" + ] + ] + ], + [ + "0xa31CFf6aA0af969b6d9137690CF1557908df861B", + [ + [ + "676729211151593", + "22234228333" + ], + [ + "682011116351038", + "122067507" + ], + [ + "682012314843498", + "508189060" + ], + [ + "686184845909654", + "67813432781" + ] + ] + ], + [ + "0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714", + [ + [ + "355648398557215", + "124964349871" + ] + ] + ], + [ + "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e", + [ + [ + "12998236449826", + "426119290214" + ], + [ + "73062201497306", + "639498343615" + ], + [ + "145584038361780", + "447994980945" + ], + [ + "146717193948896", + "349624513178" + ], + [ + "147733502440483", + "358107845085" + ], + [ + "161945743337837", + "789016308613" + ], + [ + "187637878190147", + "382459205759" + ], + [ + "192336527239129", + "209422598089" + ], + [ + "204912402135128", + "844577500760" + ], + [ + "220380031906084", + "231048083326" + ], + [ + "262067749659804", + "640903306175" + ], + [ + "306964647833074", + "338382661514" + ], + [ + "523998966576689", + "403876115080" + ], + [ + "644357568047841", + "2333969425" + ], + [ + "760721375485603", + "44211467824" + ], + [ + "768308729410302", + "399538786" + ], + [ + "774509663364768", + "69954674028" + ], + [ + "860392158116449", + "34095737422" + ], + [ + "861654004231708", + "3679385472" + ] + ] + ], + [ + "0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c", + [ + [ + "575718099519476", + "32762422300" + ], + [ + "605567098770297", + "210641200000" + ], + [ + "836111814253126", + "153625996701" + ], + [ + "845020731525698", + "149234921085" + ], + [ + "859277327665173", + "150200542274" + ] + ] + ], + [ + "0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797", + [ + [ + "267140974896619", + "10071394154" + ] + ] + ], + [ + "0xA46322948459845Bb5d895ED9C1fdd798692a1dA", + [ + [ + "157856472537094", + "4473579144" + ], + [ + "220203807336965", + "10453702941" + ] + ] + ], + [ + "0xa48E7B26036360695be458D6904DE0892a5dB116", + [ + [ + "300546769579166", + "360670112242" + ] + ] + ], + [ + "0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5", + [ + [ + "267569813448805", + "1716069" + ], + [ + "589787132206086", + "2588993459" + ] + ] + ], + [ + "0xa4f79238d3c5b146054C8221A85DC442Ad87b45D", + [ + [ + "650651495333882", + "24618132" + ] + ] + ], + [ + "0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302", + [ + [ + "344745112963643", + "23506738608" + ] + ] + ], + [ + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", + [ + [ + "180058848381814", + "1317740918" + ], + [ + "180491055783453", + "8737686936" + ] + ] + ], + [ + "0xA5124bD6d445e23642F8D41c1ebf3Cd20FCe3056", + [ + [ + "448540020279257", + "424808836024" + ] + ] + ], + [ + "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", + [ + [ + "78581810315624", + "1000000000" + ] + ] + ], + [ + "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", + [ + [ + "177603077453261", + "22497716826" + ] + ] + ], + [ + "0xa714B49Ff1Bae62E141e6a05bb10356069C31518", + [ + [ + "860392158080817", + "160" + ], + [ + "860392158080977", + "160" + ], + [ + "860392158081137", + "160" + ], + [ + "860392158081297", + "160" + ], + [ + "860392158081457", + "160" + ], + [ + "860392158081617", + "160" + ], + [ + "860392158081777", + "160" + ], + [ + "860392158081937", + "160" + ], + [ + "860392158082097", + "160" + ], + [ + "860392158082257", + "160" + ], + [ + "860392158082417", + "160" + ], + [ + "860392158110026", + "160" + ], + [ + "860426253857405", + "160" + ], + [ + "860426253857565", + "160" + ], + [ + "860426253857725", + "160" + ], + [ + "860426253857885", + "160" + ], + [ + "860426253858045", + "160" + ], + [ + "860426253858205", + "160" + ], + [ + "860426253858365", + "160" + ], + [ + "860426253858525", + "160" + ], + [ + "860426253858685", + "160" + ], + [ + "860426253858845", + "160" + ], + [ + "860426253859005", + "160" + ], + [ + "860426253859165", + "160" + ], + [ + "860426253859325", + "160" + ], + [ + "860426253859485", + "160" + ], + [ + "860426253859645", + "160" + ], + [ + "860426253859805", + "160" + ], + [ + "860426253859965", + "160" + ], + [ + "860426253860125", + "160" + ], + [ + "860426253860285", + "160" + ], + [ + "860426253860445", + "160" + ], + [ + "860426253860605", + "160" + ], + [ + "860426253860765", + "160" + ], + [ + "860426253860925", + "159" + ], + [ + "860426253861084", + "159" + ], + [ + "860426253861243", + "159" + ], + [ + "860426253861402", + "159" + ], + [ + "860426253861561", + "159" + ], + [ + "860426253861720", + "159" + ], + [ + "860426253861879", + "159" + ], + [ + "860426253862038", + "159" + ], + [ + "860426253862197", + "159" + ], + [ + "860426253862356", + "159" + ], + [ + "860426253862515", + "159" + ], + [ + "860426253862674", + "159" + ], + [ + "860426253862833", + "159" + ], + [ + "860426253862992", + "159" + ], + [ + "860426253863151", + "159" + ], + [ + "860426253863310", + "159" + ], + [ + "860426253863469", + "159" + ], + [ + "860426253863628", + "159" + ], + [ + "860426253863787", + "159" + ], + [ + "860426253863946", + "159" + ], + [ + "860426253864105", + "159" + ], + [ + "860426253864264", + "159" + ], + [ + "860426253864423", + "159" + ], + [ + "860426253864582", + "159" + ], + [ + "860426254274753", + "159" + ], + [ + "860426254274912", + "159" + ], + [ + "860426254275071", + "159" + ], + [ + "860426254275230", + "159" + ], + [ + "860426254275389", + "159" + ], + [ + "860426254275548", + "159" + ], + [ + "860426254275707", + "159" + ], + [ + "860426254275866", + "159" + ], + [ + "860426254276025", + "159" + ], + [ + "860426254276184", + "158" + ], + [ + "860426254276342", + "158" + ], + [ + "860426254276500", + "158" + ], + [ + "860426254276658", + "158" + ], + [ + "860426255123753", + "158" + ], + [ + "860426260244926", + "158" + ], + [ + "860426260245084", + "158" + ], + [ + "860426260245242", + "158" + ], + [ + "860426260245400", + "158" + ], + [ + "860426260245558", + "158" + ], + [ + "860426260245716", + "158" + ], + [ + "860426260245874", + "158" + ], + [ + "860426260246032", + "158" + ], + [ + "860810927572524", + "158" + ], + [ + "860810927572682", + "158" + ], + [ + "860810927572840", + "158" + ], + [ + "860810927572998", + "158" + ], + [ + "860810927573156", + "158" + ], + [ + "860810927573314", + "158" + ], + [ + "860810927573472", + "158" + ], + [ + "860810927573630", + "158" + ], + [ + "860810927573788", + "158" + ], + [ + "860810927685874", + "158" + ], + [ + "860810927686032", + "158" + ], + [ + "860810927686190", + "158" + ], + [ + "860810927686348", + "158" + ], + [ + "861085838112763", + "158" + ], + [ + "861085838112921", + "158" + ], + [ + "861085838113079", + "158" + ], + [ + "861085838113237", + "158" + ], + [ + "861085838113395", + "158" + ], + [ + "861085838113711", + "158" + ], + [ + "861085838113869", + "158" + ], + [ + "861085838114027", + "158" + ], + [ + "861085838114185", + "158" + ], + [ + "861085838114343", + "158" + ], + [ + "861085838114501", + "158" + ], + [ + "861085838114659", + "158" + ], + [ + "861085838114817", + "158" + ], + [ + "861085838114975", + "158" + ], + [ + "861085838115133", + "158" + ], + [ + "861085838115291", + "158" + ], + [ + "861085838115449", + "158" + ], + [ + "861085838115607", + "158" + ], + [ + "861085838115765", + "158" + ], + [ + "861085838115923", + "158" + ], + [ + "861085838116081", + "158" + ], + [ + "861085838446610", + "160" + ], + [ + "861085838446770", + "160" + ], + [ + "861085838446930", + "160" + ], + [ + "861085838447090", + "159" + ], + [ + "861085838447249", + "159" + ], + [ + "861085838447408", + "159" + ], + [ + "861085838447567", + "159" + ], + [ + "861085838447726", + "159" + ], + [ + "861085838447885", + "159" + ], + [ + "861085838448044", + "159" + ], + [ + "861085838448203", + "159" + ], + [ + "861085838448362", + "159" + ], + [ + "861085838448521", + "159" + ], + [ + "861085838448680", + "159" + ], + [ + "861085838448839", + "159" + ], + [ + "861085838448998", + "159" + ], + [ + "861085838449157", + "159" + ], + [ + "861085838449316", + "159" + ], + [ + "861085838449475", + "159" + ], + [ + "861085838449634", + "159" + ], + [ + "861085838449793", + "159" + ], + [ + "861085838480292", + "160" + ], + [ + "861085838480452", + "160" + ], + [ + "861085838480612", + "159" + ], + [ + "861085838480771", + "159" + ], + [ + "861085838480930", + "159" + ], + [ + "861085838481089", + "159" + ], + [ + "861085838481248", + "159" + ], + [ + "861085838481407", + "159" + ], + [ + "861085838481566", + "159" + ], + [ + "861104013698685", + "158" + ], + [ + "861104013698843", + "158" + ], + [ + "861104013699001", + "158" + ], + [ + "861104013699159", + "476" + ], + [ + "861104013699635", + "634" + ], + [ + "861104013700269", + "793" + ], + [ + "861104013701062", + "952" + ], + [ + "861104013702172", + "1110" + ], + [ + "861104480230238", + "1268" + ], + [ + "861104480232140", + "1427" + ], + [ + "861104480234359", + "1585" + ], + [ + "861104480236895", + "1743" + ], + [ + "861104480239747", + "1902" + ], + [ + "861104480242916", + "2060" + ], + [ + "861104480246401", + "2218" + ], + [ + "861104480248619", + "158" + ], + [ + "861104480248935", + "158" + ], + [ + "861104480249251", + "158" + ], + [ + "861104480249883", + "316" + ], + [ + "861104480250199", + "158" + ], + [ + "861104480250515", + "158" + ] + ] + ], + [ + "0xa73329C4be0B6aD3b3640753c459526880E6C4a7", + [ + [ + "342007094123381", + "5537799063" + ] + ] + ], + [ + "0xa7be8b7C4819eC8edd05178673575F76974B4EaA", + [ + [ + "643105932414433", + "3504500000" + ] + ] + ], + [ + "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2", + [ + [ + "227302500823517", + "91254470715" + ], + [ + "240936644343173", + "172400000000" + ] + ] + ], + [ + "0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85", + [ + [ + "647522463818695", + "70976639" + ] + ] + ], + [ + "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E", + [ + [ + "87378493677209", + "18540386828" + ], + [ + "157789513042632", + "46130596396" + ] + ] + ], + [ + "0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7", + [ + [ + "524680103453466", + "565602262874" + ], + [ + "531965502653124", + "631379688396" + ], + [ + "533822032849799", + "1016708705478" + ] + ] + ], + [ + "0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5", + [ + [ + "322943294893160", + "8758397681" + ] + ] + ], + [ + "0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe", + [ + [ + "624708043376039", + "5666343221" + ] + ] + ], + [ + "0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c", + [ + [ + "28391158520616", + "5664262851" + ], + [ + "31624276642782", + "827500000" + ], + [ + "32010465599710", + "2827500000" + ], + [ + "32163187849710", + "827500000" + ], + [ + "32180546599710", + "468750000" + ] + ] + ], + [ + "0xA92b09947ab93529687d937eDf92A2B44D2fD204", + [ + [ + "174457557935439", + "2252016869" + ], + [ + "217090244886952", + "100017300000" + ] + ] + ], + [ + "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", + [ + [ + "647552789487981", + "25673034" + ] + ] + ], + [ + "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", + [ + [ + "342102180028527", + "9515722669" + ] + ] + ], + [ + "0xA97661df0380FF3eB6214709A6926526E38a3f68", + [ + [ + "579063492093806", + "43896808582" + ] + ] + ], + [ + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", + [ + [ + "189133019330752", + "32609949600" + ], + [ + "237255472873302", + "41700155407" + ], + [ + "650798610280868", + "2704447617" + ], + [ + "652198660709813", + "2233193957" + ], + [ + "661861990183905", + "96716493785" + ] + ] + ], + [ + "0xa9b13316697dEb755cd86585dE872ea09894EF0f", + [ + [ + "140155656908183", + "4149923574" + ], + [ + "198971377368461", + "18087016900" + ], + [ + "211708788713612", + "10681995985" + ], + [ + "241399390159934", + "842071924045" + ], + [ + "384563894405801", + "115228517177" + ], + [ + "563854847802308", + "18284000000" + ], + [ + "564151486302308", + "18284615400" + ], + [ + "566633249231746", + "18284615400" + ], + [ + "569490831818315", + "18284615400" + ], + [ + "572704554525253", + "18284615400" + ], + [ + "595117800435834", + "12085354500" + ], + [ + "640930157267749", + "65849399034" + ] + ] + ], + [ + "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c", + [ + [ + "31816265099710", + "59900000000" + ], + [ + "31935590099710", + "74875500000" + ], + [ + "32088312349710", + "74875500000" + ], + [ + "563579921802308", + "21876000000" + ], + [ + "564422820917708", + "21876172500" + ], + [ + "566153593653477", + "21876172500" + ], + [ + "569017476488315", + "21876172500" + ], + [ + "569762166433715", + "21876172500" + ], + [ + "572429628352753", + "21876172500" + ] + ] + ], + [ + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", + [ + [ + "28870881002740", + "7927293103" + ], + [ + "33175764242262", + "2879757656" + ], + [ + "33287034809521", + "2000002613" + ], + [ + "67071383981721", + "4370751822" + ], + [ + "76001219652173", + "2000000" + ], + [ + "224377827434669", + "8843521858" + ], + [ + "227266143617682", + "36357205835" + ], + [ + "346980492268033", + "299504678878" + ], + [ + "390489917323118", + "30009118039" + ], + [ + "390714321832800", + "15011668209" + ], + [ + "496313316602869", + "14480945853" + ], + [ + "496327797548722", + "17563125222" + ], + [ + "574176328586258", + "11373869605" + ], + [ + "581926056394610", + "57230000000" + ], + [ + "582414831630740", + "58387156830" + ], + [ + "646758540482222", + "200935620" + ], + [ + "648099627744347", + "7145929778" + ], + [ + "768350264491863", + "97750210" + ], + [ + "799970499717615", + "199999867679" + ], + [ + "859839460259246", + "49999681340" + ], + [ + "861579337591263", + "20955496102" + ], + [ + "866501316671921", + "3915489816" + ], + [ + "867998656653702", + "3760487192" + ], + [ + "868004210064042", + "11148893919" + ], + [ + "868717458995563", + "137089560126" + ], + [ + "882380209424876", + "25123931061" + ] + ] + ], + [ + "0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f", + [ + [ + "553814968232795", + "1000000" + ], + [ + "553814969232795", + "4769665935949" + ] + ] + ], + [ + "0xAA420e97534aB55637957e868b658193b112A551", + [ + [ + "31772724860478", + "43540239232" + ] + ] + ], + [ + "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15", + [ + [ + "767312117384897", + "5239569017" + ], + [ + "790723454198851", + "1404119830" + ] + ] + ], + [ + "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", + [ + [ + "86212387135166", + "9412000000" + ] + ] + ], + [ + "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", + [ + [ + "31662554742782", + "21750" + ], + [ + "790724858318681", + "201654015884" + ], + [ + "805283832227311", + "122955165365" + ] + ] + ], + [ + "0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01", + [ + [ + "270431731940789", + "35213496314" + ] + ] + ], + [ + "0xaaEB726768606079484aa6b3715efEEC7E901D13", + [ + [ + "164232302945961", + "52342902973" + ] + ] + ], + [ + "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3", + [ + [ + "396371740775536", + "132692764932" + ], + [ + "595154386328334", + "12415183500" + ] + ] + ], + [ + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", + [ + [ + "78583733231186", + "1178558112" + ], + [ + "87051010845698", + "12909150685" + ], + [ + "87849021681484", + "3600000000" + ], + [ + "87852621681484", + "800000000" + ] + ] + ], + [ + "0xABC508DdA7517F195e416d77C822A4861961947a", + [ + [ + "611465268974532", + "5766000000" + ], + [ + "611565632974532", + "108706000000" + ], + [ + "859912145350487", + "61408881869" + ] + ] + ], + [ + "0xAbe1ee131c420b5687893518043C5df21E7Da28f", + [ + [ + "219174134154064", + "257767294743" + ] + ] + ], + [ + "0xaBe78350f850924bAfF4B7139c17932d4c0560C5", + [ + [ + "170355877646894", + "103277281284" + ], + [ + "186591806305035", + "119796085879" + ] + ] + ], + [ + "0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2", + [ + [ + "532675989297032", + "13095000100" + ] + ] + ], + [ + "0xac34CF8CF7497a570C9462F16C4eceb95750dd26", + [ + [ + "558584635168744", + "8664709191" + ] + ] + ], + [ + "0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE", + [ + [ + "143354831843541", + "653648140" + ], + [ + "267347914229767", + "50626218743" + ], + [ + "595274550370334", + "30610750000" + ] + ] + ], + [ + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", + [ + [ + "70537827998930", + "394859823062" + ], + [ + "181019314406176", + "26533824991" + ], + [ + "191825120066350", + "32755674081" + ], + [ + "204414095372189", + "466944255800" + ], + [ + "918515480200659", + "103418450000" + ] + ] + ], + [ + "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", + [ + [ + "167664059643126", + "10271881722" + ], + [ + "173335964650235", + "50944632063" + ], + [ + "174153752764497", + "51388130513" + ], + [ + "340816250327274", + "13849594030" + ] + ] + ], + [ + "0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8", + [ + [ + "634757739139885", + "1075350000" + ] + ] + ], + [ + "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0", + [ + [ + "396280573607632", + "1310000000" + ], + [ + "547738448758023", + "2624259160" + ] + ] + ], + [ + "0xaDd2955F0efC871902A7E421054DA7E6734d3DCA", + [ + [ + "278872415592357", + "1605049904" + ], + [ + "278874020642261", + "1605019105" + ] + ] + ], + [ + "0xae0aAF5E7135058919aB10756C6CdD574a92e557", + [ + [ + "143154831843541", + "200000000000" + ] + ] + ], + [ + "0xae5c0ff6738cE54598C00ca3d14dC71176a9d929", + [ + [ + "266124689762314", + "14563973655" + ] + ] + ], + [ + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", + [ + [ + "150202730332467", + "98095645584" + ], + [ + "496833602545561", + "787707309561" + ] + ] + ], + [ + "0xAeB2914f66222Fa7Ad138e128a0575048Bc76032", + [ + [ + "643849421808137", + "6652871947" + ] + ] + ], + [ + "0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e", + [ + [ + "443844836815022", + "15594289962" + ] + ] + ], + [ + "0xAf93048424E9DBE29326AD1e1B00686760318f0D", + [ + [ + "325970651658765", + "9082486597" + ], + [ + "542294295589408", + "17206071534" + ] + ] + ], + [ + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", + [ + [ + "657182189000929", + "25000000000" + ], + [ + "657229852916854", + "2979694125" + ], + [ + "658066484502639", + "2015000000" + ], + [ + "664619505628982", + "15403726711" + ], + [ + "667312080209108", + "25000000000" + ], + [ + "670173265504450", + "40000000000" + ], + [ + "672719969501772", + "10876482560" + ] + ] + ], + [ + "0xafaAa25675447563a093BFae2d3Db5662ADf9593", + [ + [ + "637115742967476", + "637343258" + ] + ] + ], + [ + "0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0", + [ + [ + "396925635091619", + "2200000000" + ] + ] + ], + [ + "0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A", + [ + [ + "507127205293221", + "60620015754" + ], + [ + "516313933449950", + "49630409652" + ], + [ + "533061821284421", + "60249402002" + ] + ] + ], + [ + "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f", + [ + [ + "769134792577607", + "1295600000" + ], + [ + "770964524215275", + "10866330177" + ], + [ + "782603527725793", + "19357500000" + ], + [ + "783356308498157", + "20255000000" + ] + ] + ], + [ + "0xb0226e96c71F94C44d998CE1b34F6a47c3A82404", + [ + [ + "336175075840856", + "767141673418" + ] + ] + ], + [ + "0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A", + [ + [ + "570994112669484", + "2013435000" + ] + ] + ], + [ + "0xB0827d21e58354aa7ac05adFeb60861f85562376", + [ + [ + "648060618871896", + "108280308" + ] + ] + ], + [ + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", + [ + [ + "680570676055231", + "12790345862" + ], + [ + "741073041489777", + "58475807020" + ], + [ + "811161311356507", + "10974488319" + ], + [ + "811179416748655", + "18986801346" + ], + [ + "849346368621598", + "11433794528" + ], + [ + "861496906364983", + "7066180139" + ] + ] + ], + [ + "0xb13c60ee3eCEC5f689469260322093870aA1e842", + [ + [ + "264925932058496", + "11752493257" + ] + ] + ], + [ + "0xB17fC3D59de766b659644241Dba722546E32b163", + [ + [ + "530457276837452", + "21389399522" + ] + ] + ], + [ + "0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106", + [ + [ + "648783973598407", + "20878800" + ] + ] + ], + [ + "0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e", + [ + [ + "602679309587183", + "74690241246" + ], + [ + "602753999828429", + "822947782651" + ] + ] + ], + [ + "0xb319c06c96F676110AcC674a2B608ddb3117f43B", + [ + [ + "611471034974532", + "94598000000" + ], + [ + "636826909305416", + "83800270379" + ], + [ + "650587203583982", + "2695189900" + ], + [ + "652743079185278", + "141663189223" + ], + [ + "654431959023764", + "13424979052" + ], + [ + "654445384002816", + "109437957582" + ], + [ + "655168391284111", + "167255000000" + ], + [ + "656569610821263", + "155690600000" + ], + [ + "657033695277469", + "148493723460" + ], + [ + "657826429374395", + "145018797369" + ], + [ + "658259541638510", + "150002086275" + ], + [ + "658561025456875", + "148762745637" + ], + [ + "660384609944925", + "306309267806" + ], + [ + "660980494384114", + "322801544810" + ] + ] + ], + [ + "0xb338092f7eE37A5267642BaE60Ff514EB7088593", + [ + [ + "152402596679147", + "93039721219" + ], + [ + "152657826400366", + "185210230255" + ], + [ + "167944467831210", + "364035918660" + ], + [ + "168326342418592", + "142183392268" + ], + [ + "667711173568321", + "2323048492" + ], + [ + "779534812787850", + "16116959741" + ], + [ + "859649522699248", + "12551804265" + ] + ] + ], + [ + "0xB345720Ab089A6748CCec3b59caF642583e308Bf", + [ + [ + "634496771451551", + "2768287495" + ], + [ + "634746131014038", + "2338659386" + ], + [ + "634804642825524", + "15032871752" + ], + [ + "648328801845272", + "12731370312" + ], + [ + "648353111527661", + "10493080827" + ], + [ + "649167541060009", + "16767945280" + ], + [ + "649195623906283", + "18389039062" + ], + [ + "654358595160398", + "29902100900" + ], + [ + "654388497261298", + "43461762466" + ], + [ + "656871705959559", + "9313705270" + ], + [ + "660370495857615", + "14114087310" + ], + [ + "671696472763514", + "231205357536" + ], + [ + "671927678121050", + "252155202330" + ], + [ + "672398260373775", + "214433251957" + ], + [ + "672830275797486", + "210961749202" + ], + [ + "673041237546688", + "205321095099" + ], + [ + "673246558641787", + "240472769386" + ], + [ + "673487031411173", + "273039002863" + ], + [ + "673760070414036", + "172558844132" + ], + [ + "675240588703017", + "31281369769" + ] + ] + ], + [ + "0xB3561671651455D2E8BF99d2f9E2257f2a313a2c", + [ + [ + "262002480116391", + "61656029023" + ], + [ + "299029773648836", + "103299890816" + ], + [ + "299623525856977", + "96553480454" + ], + [ + "340830099921304", + "42326378229" + ], + [ + "341635869146462", + "53919698039" + ], + [ + "341990086557247", + "17007566134" + ], + [ + "343614880915811", + "56782954188" + ] + ] + ], + [ + "0xb3b0EFf26C982669a9BA47B31aC6b130A4721819", + [ + [ + "679985260625992", + "171030000" + ] + ] + ], + [ + "0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e", + [ + [ + "107211387355694", + "152715666195" + ], + [ + "247564500489746", + "77337849888" + ] + ] + ], + [ + "0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F", + [ + [ + "130196078661356", + "508123258818" + ] + ] + ], + [ + "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", + [ + [ + "191771322130870", + "4" + ] + ] + ], + [ + "0xb3F7DF25CB052052dF6d73d83EdBF6a2238c67de", + [ + [ + "532689084297132", + "625506" + ] + ] + ], + [ + "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", + [ + [ + "164600428750782", + "35727783275" + ] + ] + ], + [ + "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", + [ + [ + "680105835387283", + "912195631" + ] + ] + ], + [ + "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277", + [ + [ + "217894094937121", + "8624335172" + ], + [ + "729014568575071", + "291619601680" + ] + ] + ], + [ + "0xB5030cAc364bE50104803A49C30CCfA0d6A48629", + [ + [ + "210588064020582", + "198112928750" + ] + ] + ], + [ + "0xb53031b8E67293dC17659338220599F4b1F15738", + [ + [ + "219666700443377", + "55265901" + ], + [ + "224654035643462", + "40771987379" + ] + ] + ], + [ + "0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714", + [ + [ + "76119225435585", + "962826980" + ], + [ + "579111175545954", + "3774608352" + ], + [ + "634748469673424", + "4160000000" + ] + ] + ], + [ + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", + [ + [ + "83737011617598", + "306070239187" + ], + [ + "398321865655642", + "2054144320000" + ] + ] + ], + [ + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", + [ + [ + "4955860418772", + "7048876233" + ], + [ + "655811760146606", + "1801805718" + ] + ] + ], + [ + "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393", + [ + [ + "631462636069759", + "104395512250" + ], + [ + "631569644291966", + "139558094702" + ], + [ + "632291209713980", + "81489498170" + ] + ] + ], + [ + "0xB615e3E80f20beA214076c463D61B336f6676566", + [ + [ + "157631883911600", + "6658333333" + ], + [ + "452052986565565", + "7692307692" + ], + [ + "646401611359546", + "35903115000" + ] + ] + ], + [ + "0xb63050875231622e99cd8eF32360f9c7084e50a7", + [ + [ + "146717188782725", + "5166171" + ], + [ + "150200863181163", + "1867151304" + ], + [ + "150300825978051", + "18112431039" + ], + [ + "155767639963423", + "99245868053" + ] + ] + ], + [ + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", + [ + [ + "153735131926682", + "3710134756" + ], + [ + "679485017868431", + "3915612129" + ], + [ + "680114838606701", + "27308328915" + ], + [ + "685025137352998", + "25233193029" + ], + [ + "841664773576665", + "44866112401" + ] + ] + ], + [ + "0xB651078d1856EB206fB090fd9101f537c33589c2", + [ + [ + "670156602457239", + "16663047211" + ] + ] + ], + [ + "0xB65a725e921f3feB83230Bd409683ff601881f68", + [ + [ + "250639941891472", + "3441975352" + ], + [ + "250643383866824", + "29574505735" + ] + ] + ], + [ + "0xb66924A7A23e22A87ac555c950019385A3438951", + [ + [ + "154652447640805", + "347100000000" + ], + [ + "155374769963423", + "392870000000" + ], + [ + "160285058311354", + "100671341995" + ], + [ + "174205140895010", + "132445933047" + ], + [ + "202924952054531", + "35561818090" + ] + ] + ], + [ + "0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2", + [ + [ + "552304065222426", + "308085069906" + ], + [ + "577017952241768", + "78820430185" + ], + [ + "577096772671953", + "153413133261" + ] + ] + ], + [ + "0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5", + [ + [ + "158532389505642", + "22000000000" + ] + ] + ], + [ + "0xB6CC924486681a1ca489639200dcEB4c41C283d3", + [ + [ + "3761444092233", + "30919467843" + ], + [ + "86557982815957", + "47171577753" + ], + [ + "91035130926027", + "100278708038" + ], + [ + "107705159415631", + "32372691975" + ], + [ + "107737532107606", + "20680630588" + ], + [ + "189221726611474", + "50441908776" + ], + [ + "331897561408947", + "208972688693" + ] + ] + ], + [ + "0xB73a795F4b55dC779658E11037e373d66b3094c7", + [ + [ + "363939335244215", + "341688796" + ], + [ + "390558902441157", + "134653071054" + ], + [ + "401267047948074", + "134236764892" + ], + [ + "655972005039843", + "146287000000" + ] + ] + ], + [ + "0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D", + [ + [ + "648110341883007", + "332151166" + ] + ] + ], + [ + "0xb78003FCB54444E289969154A27Ca3106B3f41f6", + [ + [ + "164189472951092", + "11278479258" + ], + [ + "191781471592467", + "43648473883" + ], + [ + "385711073784542", + "2538113894" + ], + [ + "395411549090894", + "13353165233" + ], + [ + "562459032802308", + "121464000000" + ], + [ + "564975430810977", + "121464000000" + ], + [ + "566651533847146", + "121464000000" + ], + [ + "568419948467146", + "121464000000" + ], + [ + "570301073669484", + "121464000000" + ], + [ + "571791133289484", + "121464000000" + ] + ] + ], + [ + "0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70", + [ + [ + "191150584432777", + "327574162163" + ] + ] + ], + [ + "0xB81D739df194fA589e244C7FF5a15E5C04978D0D", + [ + [ + "764122302458414", + "389659428" + ] + ] + ], + [ + "0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B", + [ + [ + "321732175378043", + "214690052512" + ] + ] + ], + [ + "0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76", + [ + [ + "199312851785361", + "21012816705" + ] + ] + ], + [ + "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", + [ + [ + "61252565809868", + "616986784925" + ], + [ + "186580654253728", + "2582826931" + ], + [ + "193229271440090", + "76640448070" + ] + ] + ], + [ + "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5", + [ + [ + "88303018180293", + "145192655079" + ], + [ + "88448210835372", + "10000000" + ], + [ + "88448220835372", + "1000000" + ], + [ + "152141663101028", + "46320000000" + ], + [ + "201463917097433", + "98698631369" + ], + [ + "340872426299533", + "273300000000" + ], + [ + "638362383116869", + "152606794771" + ], + [ + "640276210842856", + "176025000000" + ] + ] + ], + [ + "0xBaD292Dbb933Aea623a3699621901A881E22FfAC", + [ + [ + "533432040425065", + "88596535296" + ], + [ + "551506370791010", + "333170781639" + ] + ] + ], + [ + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1", + [ + [ + "650399357993384", + "146806806" + ], + [ + "655638701856093", + "1192390513" + ], + [ + "656272714775312", + "881640483" + ], + [ + "712920144208889", + "5489546040" + ], + [ + "744734189369609", + "28037331000" + ], + [ + "760703583068610", + "17792416993" + ] + ] + ], + [ + "0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711", + [ + [ + "144769294835640", + "687936745079" + ], + [ + "184218638484144", + "465422973716" + ], + [ + "184684061457860", + "10000000" + ] + ] + ], + [ + "0xbb595fEF3C86FE664836a5Ea6C6E549ECeA28dEe", + [ + [ + "319745968562762", + "99808811019" + ] + ] + ], + [ + "0xbB69c6d675Db063a543d6D8fdA4435025f93b828", + [ + [ + "506927515739631", + "14275224982" + ] + ] + ], + [ + "0xbb9dDEE672BF27905663F49bf950090050C4e9ad", + [ + [ + "107364103021889", + "81983801879" + ] + ] + ], + [ + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6", + [ + [ + "140329444835781", + "217646800712" + ], + [ + "220611079989410", + "79386856736" + ], + [ + "234100743945240", + "142725497767" + ], + [ + "239319159337177", + "47624260933" + ] + ] + ], + [ + "0xBC0A7F1CB55d8f6eAdde498DbFE0FF2f78149A84", + [ + [ + "507643882202194", + "20759609713" + ] + ] + ], + [ + "0xbC3A1D31eb698Cd3c568f88C13b87081462054A8", + [ + [ + "646966739449551", + "173482798" + ] + ] + ], + [ + "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB", + [ + [ + "767979798694986", + "1562050000" + ], + [ + "767981360744986", + "1294270000" + ], + [ + "779648863431627", + "3082627625" + ] + ] + ], + [ + "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997", + [ + [ + "743356388661755", + "284047664" + ], + [ + "743356672709419", + "804932236" + ], + [ + "743357477641655", + "744601051" + ], + [ + "743358222242706", + "636559806" + ], + [ + "743358858802512", + "569027210" + ], + [ + "743359427829722", + "616622839" + ], + [ + "743360044452561", + "590416341" + ], + [ + "743360634868902", + "576948243" + ], + [ + "743361211817145", + "347174290" + ], + [ + "743361558991435", + "112939223481" + ], + [ + "743474498214916", + "37245408077" + ], + [ + "743511743622993", + "27738836042" + ], + [ + "743539482459035", + "36180207225" + ], + [ + "743575662666260", + "9251544878" + ], + [ + "743600698167087", + "4239282" + ], + [ + "743630495498696", + "25004744107" + ], + [ + "743655500242803", + "27838968460" + ], + [ + "743683339211263", + "1045028130" + ], + [ + "743715232207665", + "154091444" + ], + [ + "743715386299109", + "356610619" + ], + [ + "743715742909728", + "792560930" + ], + [ + "743716535470658", + "930442023" + ], + [ + "743717465912681", + "930527887" + ], + [ + "743718396440568", + "930718264" + ], + [ + "743719327158832", + "900100878" + ], + [ + "743720227259710", + "886888605" + ], + [ + "743721114148315", + "1195569000" + ], + [ + "743722931420691", + "332343086" + ], + [ + "743723263763777", + "983775747" + ], + [ + "743724247539524", + "409861551" + ], + [ + "743724657401075", + "97298663" + ], + [ + "743724754699738", + "86768693" + ], + [ + "743724841468431", + "33509916350" + ], + [ + "743758351384781", + "69774513803" + ], + [ + "743828125898584", + "21981814788" + ], + [ + "743850107713372", + "43182294" + ], + [ + "743850150895666", + "37264237" + ], + [ + "743850188159903", + "247711" + ], + [ + "743850188407614", + "417946" + ], + [ + "743850188825560", + "120504819738" + ], + [ + "743970693645298", + "178855695867" + ], + [ + "744149549341165", + "125886081790" + ], + [ + "759669831627157", + "91465441036" + ], + [ + "759761297451604", + "12346431080" + ], + [ + "759773643882684", + "1557369578" + ], + [ + "759775201252262", + "18264975890" + ], + [ + "759793466228152", + "133677" + ], + [ + "759794285432848", + "26613224094" + ], + [ + "759820979493945", + "70435190" + ], + [ + "759821049929135", + "64820367" + ], + [ + "759821114749502", + "315142246" + ], + [ + "759821772251897", + "342469548" + ], + [ + "759822114721445", + "22786793078" + ], + [ + "759844955449185", + "62362349" + ], + [ + "759845017811534", + "79862410" + ], + [ + "759845097673944", + "78350903" + ], + [ + "759845176024847", + "81575013" + ], + [ + "759845257599860", + "81611843" + ], + [ + "759845339211703", + "79874694" + ], + [ + "759845419086397", + "79925681" + ], + [ + "759845499012078", + "79231634" + ], + [ + "759845578243712", + "73291169" + ], + [ + "759845651534881", + "61264703" + ], + [ + "759845766640518", + "56977225" + ], + [ + "759845823617743", + "71386527" + ], + [ + "759845895004270", + "75906832" + ], + [ + "759846058683685", + "75729409" + ], + [ + "759846134413094", + "27722926" + ], + [ + "759846162136020", + "30197986" + ], + [ + "759846192334006", + "158241812" + ], + [ + "759846350575818", + "123926293" + ], + [ + "759846474502111", + "124139589" + ], + [ + "759846598641700", + "25193251" + ], + [ + "759846623834951", + "25387540" + ], + [ + "759846649222491", + "665345" + ], + [ + "759846954659102", + "631976394" + ], + [ + "759847586635496", + "66958527" + ], + [ + "759847653594023", + "44950580" + ], + [ + "759847698544603", + "46547201" + ], + [ + "759847745091804", + "18839036" + ], + [ + "759847763930840", + "270669443" + ], + [ + "759848034600283", + "365575215" + ], + [ + "759848595655012", + "187295653" + ], + [ + "759848782950665", + "25295452" + ], + [ + "759848808246117", + "173058283" + ], + [ + "759848981304400", + "63821133" + ], + [ + "759849045125533", + "25336780" + ], + [ + "759849070462313", + "29081391" + ], + [ + "759849099543704", + "29122172" + ], + [ + "759849128665876", + "28706993" + ], + [ + "759849157372869", + "13456201" + ], + [ + "759849170829070", + "36511282" + ], + [ + "759849207340352", + "41243780" + ], + [ + "759849248584132", + "33852678" + ], + [ + "759849282436810", + "33956125" + ], + [ + "759849316392935", + "34132617" + ], + [ + "759849350525552", + "17041223" + ], + [ + "759849367566775", + "20273897" + ], + [ + "759849387840672", + "9037475" + ], + [ + "759849396878147", + "45923781" + ], + [ + "759849442801928", + "52882809" + ], + [ + "759849495684737", + "71491609" + ], + [ + "759849567176346", + "39781360" + ], + [ + "759849606957706", + "35612937" + ], + [ + "759849642570643", + "45789959" + ], + [ + "759849688360602", + "46291324" + ], + [ + "759849734651926", + "46416554" + ], + [ + "759849781068480", + "46480026" + ], + [ + "759849827548506", + "28909947" + ], + [ + "759849856458453", + "20566561" + ], + [ + "759849877025014", + "20612970" + ], + [ + "759849897637984", + "9530420" + ], + [ + "759849923422103", + "43423401" + ], + [ + "759849966845504", + "11714877" + ], + [ + "759864364377919", + "13050269" + ], + [ + "759864377428188", + "28949561" + ], + [ + "759864451656441", + "45362892" + ], + [ + "759864497019333", + "45386397" + ], + [ + "759864542405730", + "44251644" + ], + [ + "759864623518170", + "16029726" + ], + [ + "759864639547896", + "27422448" + ], + [ + "759864666970344", + "45324196" + ], + [ + "759864712294540", + "45381527" + ], + [ + "759864794252615", + "45249060" + ], + [ + "759864839501675", + "38552197" + ], + [ + "759864878053872", + "45325980" + ], + [ + "759864923379852", + "45332668" + ], + [ + "759864968712520", + "14947041" + ], + [ + "759864983659561", + "44411176" + ], + [ + "759865028070737", + "45841550" + ], + [ + "759865073912287", + "37491304" + ], + [ + "759865111403591", + "35823677" + ], + [ + "759865189244823", + "45959807" + ], + [ + "759865235204630", + "28621023" + ], + [ + "759865309352063", + "54352361" + ], + [ + "759865363704424", + "37604905" + ], + [ + "759865401309329", + "48060122" + ], + [ + "759865502784387", + "41998112" + ], + [ + "759865545775991", + "43017774" + ], + [ + "759865588793765", + "45709130" + ], + [ + "759865634502895", + "20672897" + ], + [ + "759865655175792", + "18088532" + ], + [ + "759865673264324", + "176142052" + ], + [ + "759865849406376", + "249729828" + ], + [ + "759866099136204", + "111218297" + ], + [ + "759866210354501", + "27934473" + ], + [ + "759866238288974", + "27468895" + ], + [ + "759866265757869", + "1914618989" + ], + [ + "759868180376858", + "45603693" + ], + [ + "759868225980551", + "45842728" + ], + [ + "759868271823279", + "46014440" + ], + [ + "759868317837719", + "46063229" + ], + [ + "759868363900948", + "2621289" + ], + [ + "759868366522237", + "53709228" + ], + [ + "759868420231465", + "52228978" + ], + [ + "759868472460443", + "66561157603" + ], + [ + "759935033618046", + "45751501" + ], + [ + "759935079369547", + "45866818" + ], + [ + "759935171141704", + "45924323" + ], + [ + "759935217066027", + "27091944" + ], + [ + "759935244157971", + "47094028" + ], + [ + "759935291251999", + "4720868852" + ], + [ + "759940035846319", + "79415211" + ], + [ + "759940115261530", + "104887944" + ], + [ + "759940220149474", + "104422502" + ], + [ + "759940324571976", + "47123207" + ], + [ + "759940371695183", + "21522781" + ], + [ + "759940431848469", + "26567259" + ], + [ + "759940458415728", + "28464738" + ], + [ + "759940486880466", + "16535232" + ], + [ + "759940529740783", + "23798092" + ], + [ + "759940553538875", + "22130816" + ], + [ + "759940575669691", + "19923295" + ], + [ + "759940703254106", + "96921736" + ], + [ + "759944301288885", + "148924295" + ], + [ + "759944524831820", + "94934102" + ], + [ + "759944631176184", + "441416" + ], + [ + "759944876402388", + "86731197" + ], + [ + "759945236861297", + "37118" + ], + [ + "759945663978694", + "33147570" + ], + [ + "759947353926358", + "19648269869" + ], + [ + "759967315893614", + "43342636" + ], + [ + "759967359236250", + "73180835" + ], + [ + "759968303751614", + "86480048" + ], + [ + "759968390231662", + "87319503" + ], + [ + "759968565049433", + "57445411" + ], + [ + "759969182444540", + "86435423" + ], + [ + "759969313128560", + "78853009" + ], + [ + "759969922263950", + "86993082" + ], + [ + "759970009257032", + "87071115" + ], + [ + "759970096328147", + "87094141" + ], + [ + "759970659966091", + "7037654" + ], + [ + "759970895945609", + "88340633" + ], + [ + "759971171933682", + "103831674" + ], + [ + "759971792380007", + "55918771" + ], + [ + "759971848298778", + "51663688" + ], + [ + "759971899962466", + "51820149" + ], + [ + "759971951782615", + "53263163" + ], + [ + "759972005045778", + "46273362" + ], + [ + "759972051319140", + "11764053" + ], + [ + "759972063083193", + "44521152" + ], + [ + "759972107604345", + "54315334" + ], + [ + "759972270510579", + "52771216" + ], + [ + "759972378810991", + "53615733" + ], + [ + "759972432426724", + "54009683" + ], + [ + "759972545991397", + "40392605" + ], + [ + "759972586384002", + "40570272" + ], + [ + "759972626954274", + "29991995" + ], + [ + "759972656946269", + "27715408" + ], + [ + "759972684661677", + "10745158" + ], + [ + "759972695406835", + "53647337" + ], + [ + "759973067945793", + "43509245" + ], + [ + "760353358762258", + "10893874" + ], + [ + "760353369656132", + "992291" + ], + [ + "760353370648423", + "136316" + ], + [ + "760353370784739", + "147677" + ], + [ + "760353371573213", + "659890" + ], + [ + "760353372233103", + "46092807" + ], + [ + "760354201137939", + "3218014" + ], + [ + "760354238838872", + "3273321614" + ], + [ + "760357963287583", + "52520804" + ], + [ + "760358123735957", + "112541922486" + ], + [ + "760765586953427", + "195667368889" + ], + [ + "760961254322316", + "846285958415" + ], + [ + "761807542325030", + "712321671" + ], + [ + "761808255104338", + "10685317968" + ], + [ + "761818941407193", + "38669865140" + ], + [ + "761858011206868", + "52031027" + ], + [ + "761858211139284", + "53537634" + ], + [ + "761858291968910", + "1954482199" + ], + [ + "761860307483525", + "798157403" + ], + [ + "762237672060652", + "57392002182" + ], + [ + "762295918132248", + "68617976" + ], + [ + "762295986750224", + "181183510038" + ], + [ + "762477170260262", + "181104817321" + ], + [ + "762658275077583", + "181134595436" + ], + [ + "762928154263486", + "12718343972" + ], + [ + "762941373378458", + "61742453" + ], + [ + "762941584284511", + "53571451" + ], + [ + "762941637855962", + "53583667" + ], + [ + "762941691439629", + "503128696018" + ], + [ + "763444820135647", + "9452272123" + ], + [ + "763454275602361", + "24685659026" + ], + [ + "763478961261387", + "50245820668" + ], + [ + "763529207082055", + "45323986837" + ], + [ + "763574531068892", + "38976282600" + ], + [ + "763877196713494", + "54224527" + ], + [ + "763877250938021", + "54871543" + ], + [ + "763877347112986", + "53640521" + ], + [ + "763879425886186", + "18918512681" + ], + [ + "763899542751244", + "4287074277" + ], + [ + "763904856308950", + "91042132" + ], + [ + "763904947351082", + "3672111531" + ], + [ + "763908632298791", + "1924103043" + ], + [ + "763910715862653", + "4104368630" + ], + [ + "763938664793385", + "889781905" + ], + [ + "763975977681622", + "85746574" + ], + [ + "763976127391221", + "54879926" + ], + [ + "763976238932410", + "67220754" + ], + [ + "763978572723857", + "2432585925" + ], + [ + "763983475557042", + "2433575022" + ], + [ + "763985961279749", + "3362361779" + ], + [ + "763989323641528", + "66961666112" + ], + [ + "764448523798789", + "9214910" + ], + [ + "764448533013699", + "3175483736" + ], + [ + "764453314028098", + "886719471" + ], + [ + "766181126764911", + "110330114890" + ], + [ + "766291456879801", + "143444348214" + ], + [ + "767321251748842", + "180967833670" + ] + ] + ], + [ + "0xBd03118971755fC60e769C05067061ebf97064ba", + [ + [ + "659549843067823", + "31263554400" + ] + ] + ], + [ + "0xbd0D7F2115C73576464689883Ce7257A3b4D8eC4", + [ + [ + "267191382854147", + "12940102264" + ], + [ + "361789996206099", + "73184769082" + ] + ] + ], + [ + "0xBd120e919eb05343DbA68863f2f8468bd7010163", + [ + [ + "767877290752246", + "3696126503" + ] + ] + ], + [ + "0xbD50a98a99438325067302D987ccebA3C7a8a296", + [ + [ + "75771294316489", + "12993316305" + ], + [ + "648200429809434", + "6123877877" + ], + [ + "649600348053567", + "637955898" + ], + [ + "651105837771781", + "278940323" + ], + [ + "651489331586310", + "1403355509" + ], + [ + "652311233903770", + "2989879792" + ], + [ + "652884742374501", + "1819712518" + ], + [ + "680322705135552", + "78825736666" + ], + [ + "685503409417573", + "232657030717" + ], + [ + "744807936462920", + "11382290617" + ] + ] + ], + [ + "0xBD874A4e472AEc2777a137788A0c7cC1e043E8D7", + [ + [ + "593972961118073", + "18482957844" + ] + ] + ], + [ + "0xBe289902A13Ae7bA22524cb366B3C3666c10F38F", + [ + [ + "919027393391017", + "127964411211" + ] + ] + ], + [ + "0xBe41D609ad449e5F270863bBdCFcE2c55D80d039", + [ + [ + "259037301726920", + "13822416435" + ] + ] + ], + [ + "0xBe9998830C38910EF83e85eB33C90DD301D5516e", + [ + [ + "577679606726120", + "74848126691" + ] + ] + ], + [ + "0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A", + [ + [ + "212146554943366", + "60397999132" + ] + ] + ], + [ + "0xbF133C1763c0751494CE440300fCd6b8c4e80D83", + [ + [ + "219576542037330", + "949101066" + ] + ] + ], + [ + "0xBF843F2AA6425952aE92760250503cE9930342b4", + [ + [ + "316205515855236", + "91988886699" + ] + ] + ], + [ + "0xbf8A064c575093bf91674C5045E144A347EEe02E", + [ + [ + "218797758396004", + "17931477721" + ] + ] + ], + [ + "0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD", + [ + [ + "581907951378672", + "2658482" + ], + [ + "595080244075917", + "133956917" + ] + ] + ], + [ + "0xbf9Db3564c22fd22FF30A8dB7f689D654Bf5F1fD", + [ + [ + "188914676424740", + "36429294837" + ], + [ + "189272168520250", + "64932162661" + ] + ] + ], + [ + "0xbFc016652a6708b20ae850Ee92D2Ea23ccA5F31a", + [ + [ + "323155313895244", + "107622510400" + ] + ] + ], + [ + "0xbFC415Eb25AaCbEEf20aE5BC35f1F4CfdE9e3FC6", + [ + [ + "260863823810847", + "296038549245" + ] + ] + ], + [ + "0xbFd7ddd26653A7706146895d6e314aF42f7B18D5", + [ + [ + "143360093032540", + "6037629659" + ], + [ + "200612110581740", + "13299884075" + ], + [ + "208198769791980", + "115963890107" + ], + [ + "212686075187098", + "34585101999" + ], + [ + "251017966304542", + "6533099760" + ] + ] + ], + [ + "0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e", + [ + [ + "509636306256", + "10000000000" + ], + [ + "278903608413821", + "14808722031" + ] + ] + ], + [ + "0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb", + [ + [ + "52239273818772", + "1176175320733" + ] + ] + ], + [ + "0xc06320d9028F851c6cE46e43F04aFF0A426F446c", + [ + [ + "530665864051562", + "397510122725" + ] + ] + ], + [ + "0xc0985b8b744C63e23e4923264eFfaC7535E44f21", + [ + [ + "201145469378651", + "8448778010" + ], + [ + "663679779993400", + "42703247654" + ] + ] + ], + [ + "0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B", + [ + [ + "109547000981861", + "1568445146" + ], + [ + "644209271045580", + "212488219" + ], + [ + "644582850779283", + "752753038" + ] + ] + ], + [ + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04", + [ + [ + "643961909441547", + "4034021934" + ], + [ + "644376974079339", + "5902625669" + ] + ] + ], + [ + "0xc18BAB9f644187505F391E394768949793e9894f", + [ + [ + "186724418508416", + "170528981764" + ], + [ + "242241462083979", + "89817845930" + ], + [ + "254574488795587", + "24750487353" + ], + [ + "403310754822758", + "13387683058" + ] + ] + ], + [ + "0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57", + [ + [ + "28119702904292", + "243876574072" + ], + [ + "40919635765924", + "221193780622" + ], + [ + "662650464692800", + "3046740000" + ], + [ + "792845618564268", + "7027118670" + ], + [ + "867588238130283", + "7781921622" + ] + ] + ], + [ + "0xc1A5b1d88045be9e2F50A26D79FA54e25Dc31741", + [ + [ + "582414184991640", + "646639100" + ] + ] + ], + [ + "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d", + [ + [ + "767626793233025", + "15527700000" + ], + [ + "768634478089995", + "2965710000" + ], + [ + "870550439123708", + "7619023341" + ], + [ + "912065840201601", + "14772870000" + ] + ] + ], + [ + "0xC1E64944de6BEE91752431fF83507dCBd57E186b", + [ + [ + "28418094567952", + "5402290085" + ] + ] + ], + [ + "0xc1F80163cC753f460A190643d8FCbb7755a48409", + [ + [ + "579740120264228", + "292734203894" + ] + ] + ], + [ + "0xC21a7Fe78A0Fb9DF4Da21F2Ce78c76BdAe63e611", + [ + [ + "186249884026701", + "244753927997" + ], + [ + "189700989263573", + "432187654500" + ] + ] + ], + [ + "0xc22846cf4ACc22f38746792f59F319b216E3F338", + [ + [ + "41609890277915", + "6914243179" + ], + [ + "45130309743373", + "306042654222" + ], + [ + "278184754900258", + "197210596655" + ] + ] + ], + [ + "0xc240D9f8d38F2bE93900C5e5D1Acc10D2CC7AbAc", + [ + [ + "587324086316494", + "608400000000" + ], + [ + "646437514474546", + "44836092000" + ] + ] + ], + [ + "0xC25148EB441B3cAD327E2Ff9c45f317f087dF049", + [ + [ + "425806299352728", + "1992932667" + ] + ] + ], + [ + "0xC252A841Af842a55b0F0b507f68f3864bf1C02b5", + [ + [ + "321963981312343", + "160361923955" + ] + ] + ], + [ + "0xC2705469f7426E9EbE91e55095dCA2AdF19Bcbb2", + [ + [ + "325991394695413", + "58515686346" + ], + [ + "395550923425579", + "40079305121" + ], + [ + "409740016789035", + "34468618803" + ], + [ + "409774485407838", + "34452659711" + ] + ] + ], + [ + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", + [ + [ + "52078858686586", + "10000133467" + ], + [ + "61012668047202", + "10005184031" + ], + [ + "73915886636467", + "10000746824" + ], + [ + "86829530881135", + "10000266356" + ], + [ + "143416238401150", + "15000651136" + ], + [ + "256988067171679", + "14279057316" + ], + [ + "294866313282644", + "18717725462" + ], + [ + "315638804830547", + "23441160473" + ], + [ + "347420922294471", + "15015000000" + ], + [ + "353424521528037", + "15315000000" + ], + [ + "355375649674604", + "14634827400" + ], + [ + "361216466107756", + "13000510719" + ], + [ + "378142639509510", + "16170000000" + ], + [ + "385183870200822", + "16180000000" + ], + [ + "385241605041705", + "16195000000" + ], + [ + "385611716930516", + "16993320000" + ], + [ + "390754941202303", + "16275000000" + ], + [ + "393693748424825", + "16290000000" + ], + [ + "396281883607632", + "16402456400" + ], + [ + "403303754118846", + "7000703912" + ], + [ + "403472243176827", + "2000375209" + ], + [ + "404827515052348", + "3334000000" + ], + [ + "408135566797252", + "2955630274" + ], + [ + "441054504321225", + "12000847530" + ], + [ + "465265259569063", + "1850719590" + ], + [ + "465267110288653", + "12150844062" + ], + [ + "523567886445076", + "25001126129" + ], + [ + "547229764110060", + "5000036427" + ], + [ + "547234764146487", + "5000016150" + ], + [ + "547239764162637", + "3000733574" + ], + [ + "559869548958187", + "40000139883" + ], + [ + "560501448020094", + "25000547514" + ], + [ + "563873131802308", + "139177000000" + ], + [ + "564012308802308", + "139177500000" + ], + [ + "566772997847146", + "139177500000" + ], + [ + "568280770967146", + "139177500000" + ], + [ + "569351654318315", + "139177500000" + ], + [ + "572722839140653", + "139177500000" + ], + [ + "573603809514965", + "25000421511" + ], + [ + "573628809936476", + "21288581043" + ], + [ + "574735201918464", + "58995201524" + ], + [ + "576878169376187", + "63000942831" + ], + [ + "582097866394610", + "35000191134" + ], + [ + "582473218787570", + "35000228661" + ], + [ + "591745844920907", + "36540941845" + ], + [ + "595142081087834", + "12305240500" + ], + [ + "624564558552880", + "40000713511" + ], + [ + "634758814489885", + "5734247168" + ], + [ + "634782406037562", + "6133038908" + ], + [ + "634935282613887", + "89307112" + ], + [ + "634940008999133", + "3208487543" + ], + [ + "634943217486676", + "3746989188" + ], + [ + "635844374818344", + "6680448394" + ], + [ + "635880056473793", + "7513550787" + ], + [ + "635996961468342", + "10754911306" + ], + [ + "636059742984375", + "6314074947" + ], + [ + "636066057059322", + "1975350168" + ], + [ + "636317287032217", + "11529972428" + ], + [ + "636328817004645", + "4277285793" + ], + [ + "636779846806062", + "3074650514" + ], + [ + "636782921456576", + "8864634973" + ], + [ + "636794780671552", + "2241458357" + ], + [ + "636799725978514", + "4055303570" + ], + [ + "636806175149520", + "4328601383" + ], + [ + "636810503750903", + "5738976938" + ], + [ + "637146516563304", + "2365512357" + ], + [ + "637154077816932", + "1080208844" + ], + [ + "637164976697003", + "3573014871" + ], + [ + "637168549711874", + "931625563" + ], + [ + "638212487359399", + "2537549313" + ], + [ + "638215024908712", + "314474508" + ], + [ + "638215339383220", + "52536733222" + ], + [ + "638267876116442", + "1779105771" + ], + [ + "638296407080512", + "4262791526" + ], + [ + "638514989911640", + "2757699459" + ], + [ + "638947345353055", + "2066543146" + ], + [ + "639071073087278", + "703007479" + ], + [ + "639081512835493", + "3321184623" + ], + [ + "639084834020116", + "90773857834" + ], + [ + "641499390478202", + "7345549819" + ], + [ + "644104474527632", + "7694578743" + ], + [ + "644141281804499", + "2606155169" + ], + [ + "644150474351536", + "1217682417" + ], + [ + "644151692033953", + "4729098391" + ], + [ + "644189039874882", + "5181153567" + ], + [ + "644194221028449", + "4614678824" + ], + [ + "644437840144432", + "2236741375" + ], + [ + "644746665525630", + "1286803916" + ], + [ + "644747952329546", + "675932780000" + ], + [ + "646630391438461", + "5095772443" + ], + [ + "646750485309749", + "1383172473" + ], + [ + "646789090376992", + "1741026097" + ], + [ + "647135423616991", + "15793160717" + ], + [ + "647377878633533", + "4583685945" + ], + [ + "647898573648796", + "9631809130" + ], + [ + "647920961563494", + "2654030705" + ], + [ + "647965531551355", + "5174884798" + ], + [ + "648060727152204", + "3914086081" + ], + [ + "648081739559571", + "6263894867" + ], + [ + "648294896291036", + "4250838692" + ], + [ + "648603358979952", + "2709517491" + ], + [ + "648612566573076", + "3512346216" + ], + [ + "650884515228485", + "2979058737" + ], + [ + "652682021863768", + "3788010733" + ], + [ + "654027706763940", + "2048540364" + ], + [ + "681986525690132", + "5275645779" + ], + [ + "741718764888864", + "654689120" + ], + [ + "767124746854721", + "730902154" + ], + [ + "767812853181234", + "11567074759" + ], + [ + "792804939000794", + "40679563474" + ], + [ + "801474386181347", + "100095973919" + ], + [ + "845169966446783", + "16180260000" + ], + [ + "860185288240463", + "50134195376" + ], + [ + "872744803481867", + "16684472211" + ], + [ + "886591149800446", + "17207595616" + ], + [ + "887927593081973", + "96787778278" + ], + [ + "911931029269153", + "28719576579" + ], + [ + "912324173505063", + "15781954650" + ], + [ + "915411171677251", + "7131234758" + ], + [ + "915906356081116", + "9658190454" + ] + ] + ], + [ + "0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5", + [ + [ + "601540307419924", + "181407469174" + ] + ] + ], + [ + "0xc32B1e77879F3544e629261E711A0cc87ae01182", + [ + [ + "220214261039906", + "10590975372" + ] + ] + ], + [ + "0xC37e2C0D1d60512cFcBe657B0B050f0c82060d1b", + [ + [ + "542311501660942", + "73324222276" + ] + ] + ], + [ + "0xC3853C3A8fC9c454f59c9aeD2Fc6cfa1a41eB20E", + [ + [ + "498673499383895", + "7492000000000" + ], + [ + "551488325791010", + "4511000000" + ], + [ + "551492836791010", + "4511000000" + ], + [ + "551497347791010", + "4511000000" + ], + [ + "751231181338596", + "6681431403122" + ], + [ + "767852901610189", + "20713453" + ], + [ + "767852922323642", + "10369061723" + ], + [ + "767863326337356", + "18023755" + ], + [ + "767863344361111", + "18367466" + ], + [ + "767863585021938", + "2244638781" + ], + [ + "767865829660719", + "29394748" + ], + [ + "767865859055467", + "18061693" + ], + [ + "767865877117160", + "19853920" + ], + [ + "767865896971080", + "48125059" + ], + [ + "767865963072322", + "18461591" + ], + [ + "767865981533913", + "18584847" + ], + [ + "767866000118760", + "18610176" + ], + [ + "767866018728936", + "28388840" + ], + [ + "767866047117776", + "19357314" + ], + [ + "767866066475090", + "20621441" + ], + [ + "767866104834015", + "17980482" + ], + [ + "767866122816513", + "45837601" + ], + [ + "767876944657034", + "28464052" + ], + [ + "767876973121086", + "26863230" + ], + [ + "767876999984316", + "26895192" + ], + [ + "767877026879775", + "27548018" + ], + [ + "767877054427793", + "28216998" + ], + [ + "767877091634405", + "29350169" + ], + [ + "767877120984574", + "29996843" + ], + [ + "767877150981417", + "30037240" + ], + [ + "767877181018657", + "25845193" + ], + [ + "767877206868795", + "27937525" + ], + [ + "767877234806320", + "27963664" + ], + [ + "767877262769984", + "27965868" + ], + [ + "767880986878749", + "3696127187" + ], + [ + "767884683005981", + "51981307" + ], + [ + "767884734987288", + "53538922" + ], + [ + "767884788526210", + "53595366" + ], + [ + "767884842121576", + "53648094" + ], + [ + "767884895769670", + "53685792" + ], + [ + "767884949455462", + "53756201" + ], + [ + "767885003211663", + "53757357" + ], + [ + "767885059314528", + "46000793" + ], + [ + "767885105315321", + "54674835" + ], + [ + "767885168852528", + "29428981" + ], + [ + "767958331741096", + "49172676" + ], + [ + "767958380913772", + "24247755" + ], + [ + "767958405161527", + "54301984" + ], + [ + "767958459463511", + "55671278" + ], + [ + "767958515134789", + "49932915" + ], + [ + "767958565067704", + "46232029" + ], + [ + "767958611299733", + "46290910" + ], + [ + "767958657590643", + "47092065" + ], + [ + "767977244065733", + "51746997" + ], + [ + "767977295812730", + "51864871" + ], + [ + "767977347677601", + "51885952" + ], + [ + "767977399563553", + "51923430" + ], + [ + "767977451486983", + "52000205" + ], + [ + "767977503487188", + "52098447" + ], + [ + "767977555585635", + "41588546" + ], + [ + "767977597174181", + "326819929" + ], + [ + "767977923994110", + "100315681" + ], + [ + "767978025140033", + "46291635" + ], + [ + "767978071431668", + "115002884" + ], + [ + "767982655015431", + "53585186" + ], + [ + "767982708600661", + "57387245" + ], + [ + "767982765987906", + "52062214" + ], + [ + "767982818050120", + "52154474" + ], + [ + "767982870204594", + "52174026" + ], + [ + "767982922378620", + "52223998" + ], + [ + "767982974602618", + "52342953" + ], + [ + "767983026945571", + "52376533" + ], + [ + "767983079322104", + "52624240" + ], + [ + "767983131946344", + "52723335" + ], + [ + "768005575978063", + "88959924" + ], + [ + "768005664937987", + "88965369" + ], + [ + "768005753903356", + "88987154" + ], + [ + "768005842890510", + "89226963" + ], + [ + "768005932117473", + "87964643" + ], + [ + "768006020082116", + "88019206" + ], + [ + "768057032449331", + "128476264" + ], + [ + "768057834376360", + "176422081" + ], + [ + "768058010798441", + "179761567" + ], + [ + "768058190560008", + "177208771" + ], + [ + "768058367768779", + "157116092" + ], + [ + "768060220637757", + "130178393" + ], + [ + "768060350816150", + "130809579" + ], + [ + "768060481625729", + "130344936" + ], + [ + "768060611970665", + "171857267" + ], + [ + "768060783827932", + "177656305" + ], + [ + "768060961484237", + "180167935" + ], + [ + "768061141652172", + "175202642" + ], + [ + "768061316854814", + "178657631" + ], + [ + "768061495512445", + "176802174" + ], + [ + "768061672314619", + "180713665" + ], + [ + "768061853028284", + "195470410" + ], + [ + "768062048498694", + "243565730" + ], + [ + "768062292064424", + "164648641" + ], + [ + "768062456713065", + "173229094" + ], + [ + "768062629942159", + "174434688" + ], + [ + "768062804376847", + "150727580" + ], + [ + "768062955104427", + "173242647" + ], + [ + "768063128347074", + "169767136" + ], + [ + "768063298114210", + "170603520" + ], + [ + "768063468717730", + "171422086" + ], + [ + "768063640139816", + "208948785" + ], + [ + "768063849088601", + "254287053" + ], + [ + "768064103375654", + "250834890" + ], + [ + "768064354210544", + "251075847" + ], + [ + "768064605286391", + "252483402" + ], + [ + "768064857769793", + "252269929" + ], + [ + "768065110039722", + "250015653" + ], + [ + "768065360055375", + "256254623" + ], + [ + "768065616309998", + "253754318" + ], + [ + "768065870064316", + "252445162" + ], + [ + "768066122509478", + "258057037" + ], + [ + "768066380566515", + "234419925" + ], + [ + "768066614986440", + "240379800" + ], + [ + "768066855366240", + "257803262" + ], + [ + "768067113169502", + "257854008" + ], + [ + "768067371023510", + "257987098" + ], + [ + "768067643435479", + "121707880" + ], + [ + "768067765143359", + "260664711" + ], + [ + "768068025808070", + "261197174" + ], + [ + "768068287005244", + "247564493" + ], + [ + "768068534569737", + "260062721" + ], + [ + "768068794632458", + "269355157" + ], + [ + "768069063987615", + "277302750" + ], + [ + "768069341290365", + "99855222" + ], + [ + "768069444592669", + "175549097" + ], + [ + "768069620141766", + "262030088" + ], + [ + "768069882171854", + "262436001" + ], + [ + "768070144607855", + "262442517" + ], + [ + "768070407050372", + "251829283" + ], + [ + "768070658879655", + "251357371" + ], + [ + "768070910237026", + "251389288" + ], + [ + "768071161626314", + "251914401" + ], + [ + "768071413540715", + "252068631" + ], + [ + "768071665609346", + "256062949" + ], + [ + "768071921672295", + "258374985" + ], + [ + "768074699723208", + "239938588" + ], + [ + "768074939661796", + "258668967" + ], + [ + "768075198330763", + "258703377" + ], + [ + "768075457034140", + "304058411" + ], + [ + "768075761092551", + "329630473" + ], + [ + "768080696127837", + "339501066" + ], + [ + "768081035628903", + "339515551" + ], + [ + "768081375144454", + "339539367" + ], + [ + "768081714683821", + "339088407" + ], + [ + "768082053772228", + "342101711" + ], + [ + "768082395873939", + "343334644" + ], + [ + "768082739208583", + "336567035" + ], + [ + "768083075775618", + "336568008" + ], + [ + "768083412343626", + "336577785" + ], + [ + "768083748921411", + "336600038" + ], + [ + "768084085521449", + "336639350" + ], + [ + "768084422160799", + "207344990" + ], + [ + "768084630119770", + "143949165" + ], + [ + "768084774068935", + "25157036" + ], + [ + "768084799225971", + "242334532" + ], + [ + "768085041560503", + "338920919" + ], + [ + "768085380481422", + "333373694" + ], + [ + "768085713855116", + "339707841" + ], + [ + "768086053562957", + "338272825" + ], + [ + "768086391835782", + "330692562" + ], + [ + "768086722528344", + "312499645" + ], + [ + "768087035027989", + "319478781" + ], + [ + "768087354506770", + "320245877" + ], + [ + "768087674752647", + "332498329" + ], + [ + "768088007251846", + "342009060" + ], + [ + "768088679799508", + "338352791" + ], + [ + "768089018152299", + "345828360" + ], + [ + "768089363980907", + "342748182" + ], + [ + "768089706729089", + "342802390" + ], + [ + "768090049531520", + "341533463" + ], + [ + "768090391065024", + "167916547" + ], + [ + "768092267714905", + "289471581" + ], + [ + "768092557186486", + "370210732" + ], + [ + "768092927397218", + "374774809" + ], + [ + "768093302172151", + "20738554" + ], + [ + "768093322910705", + "343658176" + ], + [ + "768093666568922", + "181686465" + ], + [ + "768093848255635", + "164585323" + ], + [ + "768094012840958", + "170338449" + ], + [ + "768094183179407", + "168169530" + ], + [ + "768094351348937", + "167640491" + ], + [ + "768094518989428", + "172803705" + ], + [ + "768094691793133", + "168088032" + ], + [ + "768094859881165", + "229976032" + ], + [ + "768095089857197", + "172368151" + ], + [ + "768095262225348", + "63603508" + ], + [ + "768115561779729", + "208540385" + ], + [ + "768115770320114", + "208569583" + ], + [ + "768116869057890", + "297887432" + ], + [ + "768117166945322", + "298020741" + ], + [ + "768117900433916", + "270126585" + ], + [ + "768118427203029", + "294377826" + ], + [ + "768118721580855", + "293130334" + ], + [ + "768119014711189", + "308500185" + ], + [ + "768119323211374", + "308536751" + ], + [ + "768120214927984", + "278503557" + ], + [ + "768120493431541", + "278529398" + ], + [ + "768121051655832", + "275720986" + ], + [ + "768121327376818", + "275619136" + ], + [ + "768121879763255", + "285761256" + ], + [ + "768122165524511", + "296334678" + ], + [ + "768122758459889", + "296635210" + ], + [ + "768123055095099", + "293886727" + ], + [ + "768123651351716", + "296185977" + ], + [ + "768124243880643", + "296437776" + ], + [ + "768124540318419", + "296251326" + ], + [ + "768125418288242", + "85645987252" + ], + [ + "768296683049666", + "266080393" + ], + [ + "768296949130179", + "272923038" + ], + [ + "768297222053217", + "325606305" + ], + [ + "768297547659522", + "325614427" + ], + [ + "768297873273949", + "325619965" + ], + [ + "768299842443847", + "331360723" + ], + [ + "768300173804570", + "331365399" + ], + [ + "768300826352173", + "303582913" + ], + [ + "768301731050604", + "304837328" + ], + [ + "768302035887932", + "307143810" + ], + [ + "768302343031742", + "307145416" + ], + [ + "768302958708212", + "314005164" + ], + [ + "768303272713376", + "301281919" + ], + [ + "768303573995295", + "274324618" + ], + [ + "768304344613338", + "242447871" + ], + [ + "768304587061209", + "19591107" + ], + [ + "768309880391625", + "379823962" + ], + [ + "768311010497668", + "314837972" + ], + [ + "768311325335640", + "110117398" + ], + [ + "768311435454121", + "364214026" + ], + [ + "768311799668147", + "26499554" + ], + [ + "768311826168280", + "111824210" + ], + [ + "768312135064168", + "488284987" + ], + [ + "768313333788036", + "140338927" + ], + [ + "768313474158979", + "485518686" + ], + [ + "768313959677665", + "396049165" + ], + [ + "768314444636292", + "268156877" + ], + [ + "768314712793169", + "466564384" + ], + [ + "768315179357553", + "384235614" + ], + [ + "768315563593167", + "337764089" + ], + [ + "768316577584363", + "451615254" + ], + [ + "768317029199617", + "453591169" + ], + [ + "768318040625509", + "449420296" + ], + [ + "768318490045805", + "458938429" + ], + [ + "768318948984234", + "459206981" + ], + [ + "768319408191215", + "476640464" + ], + [ + "768319884831679", + "498441933" + ], + [ + "768320383273651", + "453333258" + ], + [ + "768320836606909", + "453568001" + ], + [ + "768321290174910", + "483963881" + ], + [ + "768321774138791", + "468654147" + ], + [ + "768322242792938", + "467371262" + ], + [ + "768322710164200", + "467545999" + ], + [ + "768323177710199", + "476772245" + ], + [ + "768323654482444", + "478125750" + ], + [ + "768324132608194", + "478791673" + ], + [ + "768324611399867", + "479723584" + ], + [ + "768325091123451", + "479787381" + ], + [ + "768325570910832", + "457334705" + ], + [ + "768326028245537", + "442671002" + ], + [ + "768326470916539", + "451362163" + ], + [ + "768598487779655", + "57435154" + ], + [ + "768634412841894", + "65176513" + ], + [ + "768637443814205", + "58118884" + ], + [ + "768649709031418", + "31398801" + ], + [ + "768649771035630", + "31946947" + ], + [ + "768785331126926", + "19331971" + ], + [ + "768788392446000", + "37728236" + ], + [ + "768788432042417", + "18112256" + ], + [ + "769134604286202", + "18283146" + ], + [ + "769134774536000", + "17988711" + ], + [ + "769136088339400", + "18160671" + ], + [ + "769309768983180", + "18299969" + ], + [ + "769309787283149", + "41304402" + ], + [ + "769309830279910", + "18550040" + ], + [ + "769310402660436", + "18466754" + ], + [ + "769310421127190", + "39095349" + ], + [ + "770964504749861", + "19458575" + ], + [ + "770975390546709", + "21971527" + ], + [ + "770975412524668", + "19519600" + ], + [ + "770975432104400", + "19582622" + ], + [ + "770975451953501", + "19683846" + ], + [ + "770983568070212", + "19824397" + ], + [ + "770983588083980", + "19866055" + ], + [ + "770983607950035", + "44799678" + ], + [ + "770983652749713", + "66674317" + ], + [ + "770983722368523", + "20254383" + ], + [ + "770983743394121", + "22884801" + ], + [ + "770983768718817", + "20670201" + ], + [ + "770983795023189", + "20575434" + ], + [ + "770983815599263", + "19901370" + ], + [ + "770983835515640", + "19962592" + ], + [ + "774509621828858", + "20760015" + ], + [ + "774509642589393", + "20774408" + ], + [ + "779084589001278", + "20868526" + ], + [ + "779084609915554", + "20913206" + ], + [ + "779534770843903", + "20956311" + ], + [ + "779534791801791", + "20970709" + ], + [ + "779550929749700", + "21023556" + ], + [ + "779831365982894", + "21112628" + ], + [ + "781813659102201", + "21239601" + ], + [ + "781813680485111", + "21279230" + ], + [ + "781843281538672", + "21450435" + ], + [ + "782695710282503", + "21873820" + ], + [ + "783348079936350", + "21953687" + ], + [ + "783355908909438", + "22099613" + ], + [ + "783355932373013", + "22297290" + ], + [ + "783355954798998", + "22333492" + ], + [ + "783355977747171", + "22427935" + ], + [ + "783356000357922", + "22474682" + ], + [ + "783356023247240", + "22549203" + ], + [ + "783356045796443", + "62743349" + ], + [ + "783356109046442", + "22662121" + ], + [ + "783356136833049", + "23243873" + ], + [ + "783356161262077", + "23430658" + ], + [ + "783356187591801", + "22218767" + ], + [ + "783356209825483", + "22277346" + ], + [ + "783356232106503", + "22292252" + ], + [ + "783356254506608", + "22386707" + ], + [ + "783356277016375", + "22436891" + ], + [ + "783376569600414", + "24177831" + ], + [ + "783376593779948", + "22660273" + ], + [ + "783376616446478", + "22689467" + ], + [ + "783376639159230", + "22734650" + ], + [ + "783376661900238", + "22749660" + ], + [ + "783426956576683", + "26606595" + ], + [ + "783426984260087", + "24043904" + ], + [ + "783427008588195", + "24098549" + ], + [ + "783427032954069", + "24150097" + ], + [ + "783427060310303", + "24310668" + ], + [ + "783427084917361", + "24645082" + ], + [ + "783427114815746", + "25240549" + ], + [ + "783427145183759", + "24947967" + ], + [ + "783427170132934", + "24138082" + ], + [ + "783427194314786", + "24257216" + ], + [ + "783427218708084", + "24331234" + ], + [ + "783427243272869", + "27476901" + ], + [ + "783427271155673", + "24495799" + ], + [ + "783427297019092", + "24693844" + ], + [ + "783427322428404", + "24491410" + ], + [ + "783427347470581", + "24893768" + ], + [ + "783427374727407", + "25182772" + ], + [ + "783427399910179", + "81883443" + ], + [ + "783427483389260", + "25432202" + ], + [ + "783427509295875", + "25535625" + ], + [ + "783427534831500", + "53493357" + ], + [ + "783427588324857", + "81204589" + ], + [ + "783427675951853", + "24620709" + ], + [ + "783427700580950", + "24658826" + ], + [ + "783427725275173", + "24713820" + ], + [ + "786465453353622", + "25361552" + ], + [ + "786465478715174", + "57296603" + ], + [ + "786465536027494", + "25380057" + ], + [ + "786465561793428", + "54072936" + ], + [ + "786465615870466", + "25461278" + ], + [ + "786826817838880", + "25508010" + ], + [ + "786826843354023", + "25526212" + ], + [ + "786871384368275", + "25938160" + ], + [ + "786871410306435", + "54792325" + ], + [ + "786871465338634", + "26000635" + ], + [ + "790320387380764", + "27705719" + ], + [ + "790320415095427", + "27741179" + ], + [ + "790320442861684", + "27783916" + ], + [ + "790723085363176", + "27884487" + ], + [ + "790723113325523", + "27919207" + ], + [ + "790723141244730", + "59088200" + ], + [ + "790723200368438", + "27942864" + ], + [ + "790723228331514", + "167772991" + ], + [ + "790723396104505", + "57830974" + ], + [ + "795314162443349", + "30147186" + ], + [ + "795314192590535", + "63821308" + ], + [ + "795314256414329", + "30164787" + ], + [ + "795314286589825", + "30191299" + ], + [ + "795314316945916", + "30294630" + ], + [ + "795314348089440", + "30485760" + ], + [ + "795314378575200", + "64475302" + ], + [ + "795314444981299", + "30755106" + ], + [ + "796038616003582", + "30872534" + ], + [ + "796038650383298", + "31284664" + ], + [ + "798286779456827", + "30605469" + ], + [ + "798286810065368", + "30617396" + ], + [ + "798286840682764", + "85933738" + ], + [ + "798286926647906", + "34539105" + ], + [ + "798519957859575", + "36651495" + ], + [ + "798519994511070", + "76830332" + ], + [ + "798520071341402", + "40845425" + ], + [ + "798520112186827", + "92100113" + ], + [ + "798520206441145", + "31445440" + ], + [ + "798520237886923", + "168090072" + ], + [ + "798520405976995", + "217361165" + ], + [ + "798520623354021", + "31627917" + ], + [ + "798520654981938", + "57663021" + ], + [ + "798520712644959", + "102511476" + ], + [ + "798520815203900", + "31783791" + ], + [ + "859889515253870", + "27921761" + ], + [ + "859889543175631", + "28959532" + ], + [ + "859889572135163", + "29045717" + ], + [ + "859889601180880", + "29088669" + ], + [ + "859889630269549", + "29147719" + ], + [ + "859889659417268", + "29783752" + ], + [ + "859889689201020", + "26018455" + ], + [ + "859889715219475", + "27056055" + ], + [ + "859889742275530", + "27313833" + ], + [ + "859889769589363", + "27399071" + ], + [ + "859889796988434", + "27431474" + ], + [ + "859889824419908", + "27689998" + ], + [ + "859889852109906", + "27991712" + ], + [ + "859889880101618", + "28049401" + ], + [ + "859889993410894", + "19597271" + ], + [ + "859890013008165", + "20470831" + ], + [ + "859890033478996", + "20481318" + ], + [ + "859890053960314", + "20503693" + ], + [ + "859890074464007", + "21353933" + ], + [ + "859890095817940", + "21803489" + ], + [ + "859901701716720", + "466655540" + ], + [ + "859902168372260", + "1000126500" + ], + [ + "859904193854654", + "626706986" + ], + [ + "859904820561640", + "59171176" + ], + [ + "859904879732816", + "18369973" + ], + [ + "859904898102789", + "18737807" + ], + [ + "859904916840596", + "18742785" + ], + [ + "859904935583381", + "18813885" + ], + [ + "859904961684747", + "42841684" + ], + [ + "859909143350878", + "827564741" + ], + [ + "859909970915619", + "533089640" + ], + [ + "859910504005259", + "22923642" + ], + [ + "859910526928901", + "27809951" + ], + [ + "859910586808968", + "268390599" + ], + [ + "859910855199567", + "544727606" + ], + [ + "859911399927173", + "60755363" + ], + [ + "859911460682536", + "61427004" + ], + [ + "859911522109540", + "59279402" + ], + [ + "859911581388942", + "59428509" + ], + [ + "859911640817451", + "59719927" + ], + [ + "859911700537378", + "59726542" + ], + [ + "859911760263920", + "47784863" + ], + [ + "859911810477761", + "296389404" + ], + [ + "859912106867165", + "38483322" + ] + ] + ], + [ + "0xc390578437F7BdEe1F766Fdb00f641848bc19366", + [ + [ + "311304924229270", + "3723791152" + ] + ] + ], + [ + "0xc40dcc52887e1F08c2c91Dcd650da630DE671bD7", + [ + [ + "343826196060429", + "54144875028" + ] + ] + ], + [ + "0xc47214a1a269F5FE7BB5ce462a2df514De60118C", + [ + [ + "681639981870474", + "38412816419" + ] + ] + ], + [ + "0xc493AA1EA56dfe12E3DC665c46E1425BC3ee426F", + [ + [ + "873145601423383", + "75091730521" + ], + [ + "873220693153904", + "11510533615" + ] + ] + ], + [ + "0xC4B07F805707e19d482056261F3502Ce08343648", + [ + [ + "221679537784459", + "15486010094" + ] + ] + ], + [ + "0xc4c89a41Ad3050Bb82deE573833f76f2c449353e", + [ + [ + "179511598042538", + "177374755656" + ], + [ + "188767961279069", + "41764894516" + ] + ] + ], + [ + "0xC4FF293174198e9AeB8f655673100EeEDcbBFb1a", + [ + [ + "229522424934491", + "4" + ], + [ + "232399122241221", + "75630603060" + ], + [ + "232482131595269", + "42621249012" + ], + [ + "232624752542941", + "301340" + ] + ] + ], + [ + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", + [ + [ + "650020393573072", + "1098667202" + ] + ] + ], + [ + "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", + [ + [ + "384679122922978", + "19185472602" + ], + [ + "385574378055863", + "21634719148" + ], + [ + "385596012775011", + "14044540659" + ], + [ + "385630405651189", + "10274242898" + ], + [ + "385642606733772", + "3852670584" + ], + [ + "385646459404356", + "2247289304" + ], + [ + "385648706693660", + "2247214270" + ], + [ + "385667188907930", + "1284050989" + ], + [ + "385668472958919", + "2182830492" + ], + [ + "385670655789411", + "11558542555" + ], + [ + "385682214331966", + "2568295359" + ], + [ + "385684782627325", + "1926157217" + ], + [ + "390479730516473", + "10186806645" + ], + [ + "395363982712386", + "12033976765" + ], + [ + "395402734429311", + "8814661583" + ], + [ + "403291710896747", + "12043222099" + ], + [ + "408327816742815", + "7051865770" + ], + [ + "452095029427929", + "27432801793" + ], + [ + "533213585977358", + "15800019853" + ], + [ + "592632723704366", + "24571328348" + ] + ] + ], + [ + "0xC555347d2b369B074be94fE6F7Ae9Ab43966B884", + [ + [ + "643646447594761", + "3307608864" + ] + ] + ], + [ + "0xc5581ef96bF2ab587306668fdd16E6ed7580c856", + [ + [ + "586380601477556", + "250325018887" + ], + [ + "586702306772245", + "253149984249" + ] + ] + ], + [ + "0xC5581F1aE61E34391824779D505Ca127a4566737", + [ + [ + "86908142707963", + "24835166666" + ], + [ + "86932977874629", + "16666637666" + ], + [ + "86977991831461", + "466666666" + ], + [ + "91135409634065", + "419873133" + ], + [ + "326295563529391", + "17549000000" + ], + [ + "507206932254232", + "254443278950" + ], + [ + "507461375533182", + "166129892955" + ], + [ + "767958704682708", + "1693399184" + ], + [ + "767960398081892", + "12401663706" + ], + [ + "783427750017442", + "699592000000" + ], + [ + "792852645682938", + "839680000000" + ], + [ + "917093992735792", + "11020518971" + ], + [ + "919405223842699", + "180173103" + ] + ] + ], + [ + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F", + [ + [ + "664634909355693", + "3473689961" + ], + [ + "664638383045654", + "16729932626" + ], + [ + "672747152266652", + "24486717680" + ], + [ + "679722284822881", + "25988043120" + ], + [ + "721138947226339", + "29182743714" + ], + [ + "741226712865219", + "30981303500" + ], + [ + "741904063740452", + "37545775027" + ], + [ + "741949862105425", + "92480062924" + ], + [ + "744917643589917", + "98029361717" + ], + [ + "842630543715852", + "2390187809846" + ] + ] + ], + [ + "0xc59821CBF1A4590cF659E2BA74de9Bbf7612E538", + [ + [ + "177384658053261", + "218419400000" + ] + ] + ], + [ + "0xc6302894cd030601D5E1F65c8F504C83D5361279", + [ + [ + "41396166659339", + "1399583333" + ], + [ + "680091570133520", + "4151396937" + ] + ] + ], + [ + "0xC65F06b01E114414Aac120d54a2E56d2B75b1F85", + [ + [ + "160236114417307", + "48943894047" + ], + [ + "167731483027171", + "27884104039" + ], + [ + "189471898268050", + "197207803637" + ], + [ + "216121430155375", + "24695452876" + ], + [ + "235640709992714", + "28239348266" + ], + [ + "251024499404302", + "864512459822" + ], + [ + "323262936405644", + "15025896" + ], + [ + "429832762991709", + "127509864800" + ], + [ + "531063374174287", + "52835637822" + ], + [ + "559919065098070", + "15686547585" + ], + [ + "575750861941776", + "455386821670" + ], + [ + "629443959467714", + "889490721033" + ], + [ + "630333450188747", + "185598910890" + ], + [ + "630525153681677", + "7406808617" + ], + [ + "632372699212150", + "32787945873" + ], + [ + "633371740738798", + "74135096485" + ], + [ + "643334646487850", + "94264084571" + ], + [ + "643428910572421", + "117747552306" + ] + ] + ], + [ + "0xC6e76A8CA58b58A72116d73256990F6B54EDC096", + [ + [ + "465279261132715", + "6848535197" + ], + [ + "579107388902388", + "3786643566" + ] + ] + ], + [ + "0xc6Ee516b0426c7fCa0399EaA73438e087B967d57", + [ + [ + "44996707312088", + "133602431285" + ], + [ + "139956564183039", + "183863683304" + ] + ] + ], + [ + "0xc76b280880686397F7b95AfC72B581b1a52e6Bad", + [ + [ + "547674395930167", + "64052827856" + ], + [ + "547741073017183", + "68126058779" + ] + ] + ], + [ + "0xC76d7eb6B13a8aDC5E93da2bD1ae4309806757c6", + [ + [ + "76186994276343", + "3938428586" + ], + [ + "109580416560764", + "4296524923" + ], + [ + "237249631028709", + "5841844593" + ], + [ + "343672219425554", + "6518016107" + ], + [ + "390823692929308", + "8473153625" + ], + [ + "602152092219919", + "71703585901" + ], + [ + "668347768599716", + "13343392977" + ], + [ + "672679569876372", + "7120385640" + ], + [ + "672695846330052", + "24123171720" + ] + ] + ], + [ + "0xC7B42F99c63126B22858f4eEd636f805CFe82c91", + [ + [ + "649465543822242", + "447537440" + ], + [ + "649505490415282", + "1422013513" + ], + [ + "649797987791548", + "5075788" + ], + [ + "649797992867336", + "34690939834" + ] + ] + ], + [ + "0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9", + [ + [ + "643979298431878", + "6108413155" + ] + ] + ], + [ + "0xC7c5a25141dfBB4eb586c58fE0f12efd5f999A2B", + [ + [ + "266655090563287", + "96246009371" + ] + ] + ], + [ + "0xC7ED443D168A21f85e0336aa1334208e8Ee55C68", + [ + [ + "586166465611357", + "162196409199" + ] + ] + ], + [ + "0xc80102BA8bFB97F2cD1b2B0dA158Dfe6200B33B3", + [ + [ + "199555864602066", + "9037889126" + ], + [ + "235857797006441", + "935134539" + ], + [ + "264231230920025", + "38918733214" + ], + [ + "350559425758670", + "1570000000" + ], + [ + "361236882058040", + "798000000" + ] + ] + ], + [ + "0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1", + [ + [ + "299374481808590", + "27939181534" + ], + [ + "309602900799478", + "172624697925" + ], + [ + "541076158981807", + "154721753900" + ], + [ + "634487570431579", + "7640019972" + ], + [ + "639071776094757", + "9736740736" + ], + [ + "641467701318147", + "19191681808" + ], + [ + "643763279602387", + "11317504822" + ], + [ + "643872751562489", + "10154937500" + ] + ] + ], + [ + "0xc83746C2da00F42bA46a8800812Cd0FdD483d24A", + [ + [ + "265616635443058", + "14621832431" + ] + ] + ], + [ + "0xC89A6f24b352d35e783ae7C330462A3f44242E89", + [ + [ + "84491783274191", + "56092082506" + ], + [ + "106844058537279", + "1662797550" + ], + [ + "174740901948838", + "17601537341" + ], + [ + "199333864602066", + "222000000000" + ], + [ + "230428600679790", + "97094321858" + ], + [ + "232666011188689", + "38741655592" + ], + [ + "268313773219048", + "645749915430" + ], + [ + "300907439691408", + "3360000896013" + ], + [ + "304267440587421", + "2571019861709" + ], + [ + "309819197589125", + "961279650599" + ], + [ + "339049177933472", + "137617079719" + ], + [ + "634767633861213", + "4394126040" + ], + [ + "735501575538298", + "52546699219" + ], + [ + "739118151631989", + "48434302620" + ], + [ + "741257789372770", + "15537852857" + ], + [ + "760163471455038", + "8410169379" + ] + ] + ], + [ + "0xC8D71db19694312177B99fB5d15a1d295b22671A", + [ + [ + "397075356057692", + "651831175983" + ] + ] + ], + [ + "0xC95186f04B68cfec0D9F585D08C3b5697C858fe0", + [ + [ + "45903487064375", + "4486622483613" + ] + ] + ], + [ + "0xc9931D499EcAA1AE3E1F46fc385E03f7a47C2E54", + [ + [ + "868094241599222", + "2826954882" + ], + [ + "868097068554104", + "16041000000" + ], + [ + "868113109554104", + "22008658478" + ] + ] + ], + [ + "0xC997B8078A2c4AA2aC8e17589583173518F3bc94", + [ + [ + "860392144669885", + "160" + ], + [ + "860392145297959", + "160" + ], + [ + "860392145963716", + "160" + ], + [ + "860392146669393", + "160" + ], + [ + "860392147417387", + "160" + ], + [ + "860392148210254", + "160" + ], + [ + "860392148210414", + "160" + ], + [ + "860392148210574", + "160" + ], + [ + "860392149050869", + "160" + ], + [ + "860392156525299", + "160" + ], + [ + "860392157864387", + "160" + ], + [ + "860392157864547", + "160" + ], + [ + "860392157864867", + "160" + ] + ] + ], + [ + "0xc99c16815c5aEa507c2D8AeB1e69eed4CC8e4E56", + [ + [ + "440910863478235", + "143640842990" + ] + ] + ], + [ + "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b", + [ + [ + "38723609418267", + "1437789097" + ], + [ + "72536573875278", + "19323965325" + ], + [ + "887877933908794", + "49659144709" + ] + ] + ], + [ + "0xC9cE413f3761aB1Df6be145fe48Fc6c28A8DCc1a", + [ + [ + "323080270380904", + "73933444962" + ] + ] + ], + [ + "0xc9EA118C809C72ccb561Dd227036ce3C88D892C2", + [ + [ + "141786378710695", + "123683710973" + ] + ] + ], + [ + "0xCa11d10CEb098f597a0CAb28117fC3465991a63c", + [ + [ + "273371123004334", + "51351551872" + ], + [ + "274399695474788", + "39742257015" + ], + [ + "278381965496913", + "34339819618" + ], + [ + "295099970127801", + "37362352211" + ], + [ + "324721165808840", + "37345928668" + ], + [ + "341839523895777", + "128793953990" + ], + [ + "400400407015915", + "132878417357" + ], + [ + "402473893644846", + "135260808947" + ], + [ + "402963946030169", + "235308225358" + ], + [ + "451985754962126", + "67231603439" + ], + [ + "458492770067490", + "45295250000" + ] + ] + ], + [ + "0xcA580c4e991061D151021B13b984De73B183b06e", + [ + [ + "92657538712857", + "57796799283" + ] + ] + ], + [ + "0xCAeEf0dFCF97641389F8673264b7AbAB25D17c99", + [ + [ + "339186795013191", + "292270000000" + ] + ] + ], + [ + "0xcB0838c828Ec4911f6a0ba48e58BC67a8c5f9c3f", + [ + [ + "299024577429126", + "2374729808" + ] + ] + ], + [ + "0xcb1Fda8A2c50e57601aa129ba2981318E025F68E", + [ + [ + "267093867092613", + "25610540326" + ], + [ + "267119477632939", + "21497263680" + ] + ] + ], + [ + "0xCB2d95308f1f7db3e53E4389A90798d3F7219a7e", + [ + [ + "264313406757022", + "47273719738" + ] + ] + ], + [ + "0xCB85C8f60a34D2cB566CC0b0ce9e8Fd66C2d961F", + [ + [ + "265631257275489", + "21410000000" + ] + ] + ], + [ + "0xcb89e2300E22Ec273F39e69E79E468723ad65158", + [ + [ + "764112894239427", + "567537293" + ] + ] + ], + [ + "0xCba1A275e2D858EcffaF7a87F606f74B719a8A93", + [ + [ + "17783087369503", + "268250911852" + ] + ] + ], + [ + "0xcBF3d4AB955d0bE844DbAed50d3A6e94Ada97E8b", + [ + [ + "28061195755964", + "2365071" + ] + ] + ], + [ + "0xcc5b337cd28b330705e2949a3e28e7EcA33FABF3", + [ + [ + "283088930731624", + "142357942002" + ] + ] + ], + [ + "0xcCA04Db4bbD395DFEC2B0c1b58550C38067C9849", + [ + [ + "561422449597801", + "48869594377" + ], + [ + "595249436770334", + "25113600000" + ] + ] + ], + [ + "0xcd1E27461aF28E23bd3e84eD87e2C9a281bF0d9F", + [ + [ + "250952013915742", + "65952388800" + ] + ] + ], + [ + "0xcD26f79e60fd260c867EEbAeAB45e021bAeCe92D", + [ + [ + "213450670801238", + "7129685553" + ] + ] + ], + [ + "0xCd3F4c42552F24d5d8b1f508F8b8d138b01af53F", + [ + [ + "87303228722937", + "52035709332" + ] + ] + ], + [ + "0xCD4950a8Bd67123807dA21985F2d4C4553EA1523", + [ + [ + "339717508972836", + "114436759181" + ] + ] + ], + [ + "0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB", + [ + [ + "310817959724546", + "58841300381" + ] + ] + ], + [ + "0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25", + [ + [ + "4832993651432", + "6062526839" + ], + [ + "18053877008891", + "7536464852" + ], + [ + "27675289563592", + "424852362" + ], + [ + "28478232963741", + "4310935609" + ], + [ + "28489128712205", + "3415187145" + ], + [ + "28535940011492", + "2679882917" + ], + [ + "28538619894409", + "4696511290" + ], + [ + "28609519766545", + "24485910620" + ], + [ + "28878808295843", + "21044454" + ], + [ + "31621005907728", + "3270735052" + ], + [ + "31662554764532", + "8027251632" + ], + [ + "31932811480935", + "2778618775" + ], + [ + "32043149349710", + "17014323042" + ], + [ + "32360918951598", + "13121727522" + ], + [ + "32384990399120", + "5000000000" + ], + [ + "32389990399120", + "5000000000" + ], + [ + "32397855283125", + "4013388795" + ], + [ + "33215451017861", + "10942222277" + ], + [ + "38722793672289", + "815745978" + ], + [ + "38725047207364", + "11695454" + ], + [ + "41324024219507", + "7666428889" + ], + [ + "41335478000228", + "3615511208" + ], + [ + "41345614042031", + "7918078619" + ], + [ + "51178433171006", + "17393391747" + ], + [ + "56115965067566", + "796338" + ], + [ + "67097301632169", + "5610342" + ], + [ + "67378675867044", + "94557397" + ], + [ + "67631612435034", + "30000000000" + ], + [ + "70537771802647", + "56196283" + ], + [ + "72555897840603", + "58385936" + ], + [ + "84560732229197", + "121127500" + ], + [ + "84597765892347", + "109464350" + ], + [ + "87766450253292", + "20614776328" + ], + [ + "88980798195330", + "135261670" + ], + [ + "219431901448807", + "45604467983" + ], + [ + "241371451997074", + "27938162860" + ], + [ + "646734467107104", + "4886194063" + ], + [ + "656967976374704", + "5530910102" + ], + [ + "675156493696266", + "184714536" + ], + [ + "682013052979739", + "10000000000" + ], + [ + "763753988466256", + "74999" + ], + [ + "830131397455756", + "999999999934" + ], + [ + "836397572902006", + "908406524078" + ], + [ + "845556097862591", + "298566425632" + ], + [ + "859427528207447", + "199999999855" + ], + [ + "886287242438488", + "169349127003" + ], + [ + "886608357396062", + "83959273729" + ], + [ + "899998398985209", + "210400000000" + ], + [ + "915279020630858", + "17257622755" + ], + [ + "915306539471611", + "36769914561" + ] + ] + ], + [ + "0xcdeC732853019E9F287A9Fdf02f21cfd5eFa0436", + [ + [ + "533122070686423", + "91515290935" + ] + ] + ], + [ + "0xCE1Ef18B8c756E2A3bf24fF86DF3e2a4a442691e", + [ + [ + "607647748666028", + "15320220000" + ] + ] + ], + [ + "0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0", + [ + [ + "170153133012310", + "42278925645" + ], + [ + "646948961737143", + "2139486421" + ], + [ + "915296278260783", + "10261208678" + ], + [ + "915343309386649", + "36776229843" + ] + ] + ], + [ + "0xcEB03369b7537eB3eCa2b2951DdfD6D032c01c41", + [ + [ + "138187077038470", + "17978341081" + ] + ] + ], + [ + "0xCeD392A0B38EEdC1f127179D88e986452aCe6433", + [ + [ + "888896819909979", + "66358992180" + ], + [ + "919155366825215", + "127986754747" + ] + ] + ], + [ + "0xCF04b3328326b24A1903cBd8c6Cab8E607594342", + [ + [ + "343607345875582", + "1240820108" + ] + ] + ], + [ + "0xCF0dCc80F6e15604E258138cca455A040ecb4605", + [ + [ + "203381659178232", + "749736733" + ], + [ + "633292566723256", + "391574385" + ], + [ + "767502450202574", + "572238513" + ], + [ + "768090558981612", + "1708733210" + ], + [ + "912204712982716", + "3541650000" + ], + [ + "919027354019614", + "3344108" + ] + ] + ], + [ + "0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0", + [ + [ + "120976342053697", + "78950315731" + ] + ] + ], + [ + "0xCfCF5A55708Cd1Ae90fdcad70C7445073eB04d94", + [ + [ + "211254541356793", + "73487260147" + ] + ] + ], + [ + "0xCfD2b6487AFA4A30b79408cF57b2103348660a02", + [ + [ + "325457158146323", + "57516289570" + ] + ] + ], + [ + "0xcfd9c9Ac52b4B6Fe30537803CaEb327daDD411bB", + [ + [ + "641486892999955", + "5827431793" + ] + ] + ], + [ + "0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a", + [ + [ + "204881039627989", + "10185616007" + ], + [ + "204891225243996", + "21176891132" + ], + [ + "246401099503479", + "4522765369" + ], + [ + "250449760950680", + "40625041509" + ], + [ + "680316185068949", + "1517396973" + ] + ] + ], + [ + "0xd00eb0185dadcEcF6d75E23632eC4201d66a4CD1", + [ + [ + "561823522898706", + "26988232068" + ] + ] + ], + [ + "0xD00fB8efFeE21177df7871F285B379Bb03d8A8b5", + [ + [ + "726174249768029", + "203162271017" + ], + [ + "764122692117842", + "60220388088" + ] + ] + ], + [ + "0xD0126092d4292F8DC755E6d8eEE8106fbf84583D", + [ + [ + "215276351515823", + "163268617108" + ], + [ + "224711937976318", + "78077936614" + ] + ] + ], + [ + "0xd03c52B3256b5e102ce4BF6bB53d4Be9d9963838", + [ + [ + "45756201571935", + "51343313907" + ], + [ + "45807544885842", + "95942178533" + ], + [ + "67378770424441", + "2777777777" + ], + [ + "138226284869573", + "1055586732753" + ], + [ + "168468525810860", + "370401758420" + ], + [ + "294443496634161", + "13501951210" + ], + [ + "400376009975642", + "5164865662" + ], + [ + "604693659304797", + "42860013000" + ], + [ + "605024766070297", + "46163250000" + ], + [ + "605443996770297", + "46163250000" + ], + [ + "649045620260457", + "879707608" + ], + [ + "740481383839654", + "5814129257" + ], + [ + "767583223223815", + "43570000000" + ], + [ + "767735029454938", + "44540000000" + ], + [ + "767779569454938", + "28283345400" + ], + [ + "769136106513922", + "32530000000" + ], + [ + "769168636528497", + "65100000000" + ], + [ + "769233736528497", + "61845000000" + ], + [ + "769295581528497", + "13020000000" + ], + [ + "779084630841278", + "37495000000" + ], + [ + "779122125841278", + "37495000000" + ], + [ + "779651946070419", + "151000000000" + ], + [ + "779802946070419", + "28419857376" + ], + [ + "841709639689066", + "149541493389" + ], + [ + "868988398928918", + "24205500000" + ], + [ + "901964134773218", + "51770400000" + ], + [ + "915657202915828", + "126520824627" + ], + [ + "915783723740455", + "122632340661" + ] + ] + ], + [ + "0xD0846D7D06f633b2Be43766E434eDf0acE9bA909", + [ + [ + "656725301421263", + "1084538296" + ] + ] + ], + [ + "0xD0ce08617E88D87696fDB034AF7Cc66f6ae2c203", + [ + [ + "532689084922638", + "368626892186" + ], + [ + "572875760572308", + "283454515911" + ] + ] + ], + [ + "0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81", + [ + [ + "28079734718067", + "3000000" + ], + [ + "61087221727512", + "21956843937" + ], + [ + "622961983447336", + "14023789313" + ] + ] + ], + [ + "0xD11FaEdC6F7af5b05137A3F62cb836Ab0aE5dbb6", + [ + [ + "268078331288542", + "136505258035" + ] + ] + ], + [ + "0xD12570dEDa60976612Eeac099Fb843F2cc53c394", + [ + [ + "213133125823597", + "23535339927" + ], + [ + "227877139590186", + "22752528487" + ], + [ + "273525690791323", + "24922015529" + ] + ] + ], + [ + "0xD130Ab894366e4376b1AfE3D52638a1087BE17F4", + [ + [ + "766112335378924", + "180900000" + ] + ] + ], + [ + "0xD1373DfB5Ff412291C06e5dFe6b25be239DBcf3E", + [ + [ + "120824143315649", + "152198738048" + ] + ] + ], + [ + "0xd14Cb607F99f9c5c9a47D1DEF59a02A3fBbf14Fd", + [ + [ + "477225033066008", + "47392004821" + ] + ] + ], + [ + "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", + [ + [ + "644156421132344", + "3789921580" + ], + [ + "644278837940540", + "631861553" + ], + [ + "648277210832933", + "20187647" + ], + [ + "648277231020580", + "5001904811" + ] + ] + ], + [ + "0xd16C24e9CCDdcD7630Dd59856791253F789b1640", + [ + [ + "393710038424825", + "398206341722" + ], + [ + "397727187233675", + "330970704739" + ], + [ + "398190114501969", + "131751153673" + ], + [ + "429127937273760", + "5561731260" + ] + ] + ], + [ + "0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0", + [ + [ + "87095876554784", + "217652983" + ] + ] + ], + [ + "0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691", + [ + [ + "318360495602860", + "10068277389" + ], + [ + "320192421827300", + "4615615453" + ], + [ + "325968454248765", + "2197410000" + ], + [ + "326590820591343", + "9627158590" + ] + ] + ], + [ + "0xD1C5599677A46067267B273179d45959a606401D", + [ + [ + "267212957011131", + "9669724298" + ] + ] + ], + [ + "0xD1F27c782978858A2937B147aa875391Bb8Fc278", + [ + [ + "141536646989557", + "56750401947" + ] + ] + ], + [ + "0xD2594436a220e90495cb3066b24d37A8252Fac0c", + [ + [ + "135846486416614", + "8639602506" + ] + ] + ], + [ + "0xd26Cc622697e8f6E580645094d62742EEc9bd4fc", + [ + [ + "801574482155266", + "119260488699" + ] + ] + ], + [ + "0xD2927a91570146218eD700566DF516d67C5ECFAB", + [ + [ + "250110185298326", + "5001219" + ], + [ + "400870039915076", + "264918608815" + ] + ] + ], + [ + "0xD2aC889e89A2A9743Db24f6379ac045633E344D2", + [ + [ + "390693555512211", + "20766320589" + ] + ] + ], + [ + "0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911", + [ + [ + "632027037517820", + "37390765908" + ] + ] + ], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + [ + [ + "278872414004581", + "1582439" + ], + [ + "327828702207485", + "12634438220" + ], + [ + "676682958003509", + "124875217" + ] + ] + ], + [ + "0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8", + [ + [ + "41419619651817", + "7158000000" + ], + [ + "41426777651817", + "183112626098" + ], + [ + "201562615728802", + "117463196595" + ], + [ + "234898804378976", + "255540375316" + ], + [ + "343139192805930", + "41880000000" + ], + [ + "641741667329649", + "879875000000" + ] + ] + ], + [ + "0xd30eB4f27aCac4d903a92A12a29f3fe758A6849c", + [ + [ + "32401868671920", + "478845021900" + ], + [ + "363015290107231", + "754104205535" + ], + [ + "602223795805820", + "455513781363" + ], + [ + "647819395829758", + "159745132" + ], + [ + "648076845628910", + "4893930661" + ], + [ + "648659398612545", + "216288453" + ] + ] + ], + [ + "0xd380b5Fed7b9BaAFF7521aA4cEfC257Db3043d26", + [ + [ + "250506377976775", + "57116660884" + ] + ] + ], + [ + "0xd39A31e5f23D90371D61A976cACb728842e04ca9", + [ + [ + "572862016640653", + "13743931655" + ], + [ + "588843945566494", + "310402500" + ], + [ + "605863227470297", + "5130435000" + ], + [ + "635529257138881", + "39926484" + ], + [ + "635837727008262", + "2347857" + ], + [ + "646582536874546", + "1525000" + ] + ] + ], + [ + "0xd3FeeDc8E702A9F191737c0482b685b74Be48CFa", + [ + [ + "213319734626330", + "16988852448" + ], + [ + "656988173951472", + "19072704777" + ] + ] + ], + [ + "0xd42E21c0b98c6b7EDbE350bCeD787CE0B9644877", + [ + [ + "402239838348062", + "6594438597" + ], + [ + "507187825308975", + "14697178768" + ], + [ + "507202522487743", + "4409766489" + ] + ] + ], + [ + "0xD441C97eF1458d847271f91714799007081494eF", + [ + [ + "214098369513043", + "255020597678" + ], + [ + "216771322289720", + "118731904635" + ], + [ + "238062269315938", + "261156805041" + ], + [ + "306953481354513", + "11166478561" + ], + [ + "347279996946911", + "10970351806" + ], + [ + "919414411576630", + "7795070" + ] + ] + ], + [ + "0xd480B92941CBe5CeAA56fecED93CED8B76E59615", + [ + [ + "631052405841503", + "798685592" + ] + ] + ], + [ + "0xD48E614c2CbAF0A588E8Be1BeD8675b35EEE93FC", + [ + [ + "401146958523891", + "6000000000" + ] + ] + ], + [ + "0xD497Ed50BE7A80788898956f9a2677eDa71D027E", + [ + [ + "187604436632932", + "16723961312" + ] + ] + ], + [ + "0xD49946B3dA0428fE4E69c5F4D6c4125e5D0bf942", + [ + [ + "216493767375229", + "90144976522" + ], + [ + "216583912351751", + "103935819570" + ] + ] + ], + [ + "0xD4B5541B7d82C6284e54910aB6068dC218Da1D1C", + [ + [ + "430097224089579", + "1565550000000" + ] + ] + ], + [ + "0xD5351308c8Cb15ca93a8159325bFb392DC1e52aC", + [ + [ + "195581149274761", + "31206000000" + ], + [ + "195629194961898", + "15603000000" + ] + ] + ], + [ + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", + [ + [ + "264990657361741", + "531282874686" + ], + [ + "265820029077911", + "145778407801" + ], + [ + "324911832765789", + "184511731281" + ] + ] + ], + [ + "0xD560fd84DAB03114C51448ab97AD82D21Cc3cEEc", + [ + [ + "28119702718067", + "186225" + ], + [ + "681871030726554", + "169346069" + ], + [ + "682011238418545", + "1076424953" + ], + [ + "686184841527097", + "4382557" + ], + [ + "699081095979986", + "59333461779" + ], + [ + "768348373649812", + "906241015" + ], + [ + "768385011340907", + "23414898833" + ], + [ + "769308601528497", + "1167009046" + ] + ] + ], + [ + "0xD567BEdb9EAe1DB39f0e704B79dF6dF7f846B9B0", + [ + [ + "252030250271831", + "21381687739" + ] + ] + ], + [ + "0xd56e3E325133EFEd6B1687C88571b8a91e517ab0", + [ + [ + "551228089758374", + "232190649529" + ] + ] + ], + [ + "0xd582359cC7c463aAd628936d7D1E31A20d6996f3", + [ + [ + "573860563543017", + "297359673383" + ] + ] + ], + [ + "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241", + [ + [ + "767842406169239", + "5954962183" + ] + ] + ], + [ + "0xD5bFBD8FCD5eD15d3df952b0D34edA81FF04Dabe", + [ + [ + "345076950522363", + "153923235884" + ] + ] + ], + [ + "0xd5eF94eC1a13a9356C67CF9902B8eD22Ebd6A0f6", + [ + [ + "74205510166681", + "49996694855" + ], + [ + "75003475298908", + "50657156720" + ] + ] + ], + [ + "0xD5eFa6Ce5E86C813d5b016ABd10Bf311648D9FE8", + [ + [ + "397072711819605", + "2644238087" + ] + ] + ], + [ + "0xD5Fe199029ee4626478D47caE4F6F68CEa142c4C", + [ + [ + "214353390110721", + "183879103897" + ] + ] + ], + [ + "0xd61296bc2FEaE9Ed107aB37d8BAF12562f770Bd5", + [ + [ + "159835498625093", + "39255134736" + ], + [ + "201326601781942", + "85553535801" + ] + ] + ], + [ + "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427", + [ + [ + "20351644735591", + "9001457167" + ], + [ + "28439147771191", + "52142144" + ], + [ + "28860940762925", + "217074926" + ], + [ + "61070062784360", + "641943900" + ], + [ + "75758047453965", + "2654796068" + ], + [ + "643117711323649", + "475832176" + ], + [ + "643123258126999", + "2606857506" + ], + [ + "648260675229360", + "1519583480" + ], + [ + "650319190028033", + "1605097528" + ], + [ + "655335646284111", + "1461715402" + ], + [ + "655481788199513", + "1975656580" + ], + [ + "741056183995411", + "4891499681" + ], + [ + "743589505064359", + "5447341871" + ], + [ + "768349279890827", + "984601036" + ], + [ + "768541132069111", + "5406296301" + ] + ] + ], + [ + "0xD6626eA482D804DDd83C6824284766f73A45D734", + [ + [ + "158141536110983", + "2023493366" + ], + [ + "175126339992520", + "18060301074" + ], + [ + "267151046290773", + "40336563374" + ] + ] + ], + [ + "0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF", + [ + [ + "547252813272352", + "274110362747" + ] + ] + ], + [ + "0xd6E52faa29312cFda21a8a5962E8568b7cfe179a", + [ + [ + "241295864883165", + "13659859623" + ] + ] + ], + [ + "0xD6e91233068c81b0eB6aAc77620641F72d27a039", + [ + [ + "28482543899350", + "4079835540" + ], + [ + "60950978047202", + "3798086400" + ] + ] + ], + [ + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3", + [ + [ + "655970356111333", + "1648928510" + ], + [ + "656413068415795", + "4678944318" + ], + [ + "659187273426623", + "16766090212" + ], + [ + "672179833323380", + "21683015215" + ], + [ + "672351516338595", + "21728068461" + ] + ] + ], + [ + "0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6", + [ + [ + "75942999608987", + "19019143753" + ], + [ + "76190932704929", + "3333000000" + ], + [ + "160696684858537", + "2541993926" + ], + [ + "191478158594940", + "6103560879" + ], + [ + "216999604194355", + "10981000000" + ], + [ + "248018211208670", + "20160241262" + ], + [ + "322437029949387", + "4380730981" + ], + [ + "403279666998617", + "12043898130" + ], + [ + "634136093184089", + "3366848882" + ] + ] + ], + [ + "0xd722B7b165bb87c77207a4e0e690596234Cf1aB6", + [ + [ + "135855126019120", + "56498924765" + ], + [ + "166809615234561", + "315413817976" + ], + [ + "186000169630933", + "69890902362" + ], + [ + "325096344497070", + "48660000000" + ] + ] + ], + [ + "0xD73d566e1424674C12F1D45aEA023C419e6EfeF5", + [ + [ + "378133374904000", + "9264605510" + ], + [ + "646768853931293", + "1778910224" + ] + ] + ], + [ + "0xd776347E2FD043Cb2903Fd6999533a07eD4D6B48", + [ + [ + "406210193414449", + "687592086" + ], + [ + "406210881006535", + "30575443162" + ] + ] + ], + [ + "0xD79e92124A020410C238B23Fb93C95B2922d0B9E", + [ + [ + "99170159054758", + "7664165865816" + ], + [ + "107857914194102", + "1640014683559" + ], + [ + "111621810380800", + "6646318904300" + ], + [ + "121650643119428", + "2840000000000" + ], + [ + "124490643119428", + "83962792" + ] + ] + ], + [ + "0xd80eC2F30FB3542F0577EeD01fBDCCF007257127", + [ + [ + "56244128247241", + "16889348072" + ] + ] + ], + [ + "0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce", + [ + [ + "119029547658504", + "123169868093" + ], + [ + "127528827082243", + "39512949678" + ], + [ + "160628980873629", + "19356262201" + ], + [ + "164214276736440", + "18026209521" + ], + [ + "170195411937955", + "8450043391" + ], + [ + "170203861981346", + "8448132900" + ], + [ + "170328857704391", + "5158102503" + ], + [ + "181045848231167", + "5350129812" + ], + [ + "181051198360979", + "21920789581" + ], + [ + "207320312706756", + "667581458244" + ], + [ + "233235906805369", + "141617495951" + ], + [ + "233457650815069", + "447408202484" + ], + [ + "238465191757241", + "47893657519" + ] + ] + ], + [ + "0xD87bc009C1Fd2d29A3f1dDF94e6529dEC1aFD7D3", + [ + [ + "244363440744221", + "564315536574" + ] + ] + ], + [ + "0xD8c84eaC995150662CC052E6ac76Ec184fcF1122", + [ + [ + "915916014272287", + "20230146794" + ] + ] + ], + [ + "0xD8f6877aec57C3d70F458C54a1382dDc90522E7D", + [ + [ + "919405404015802", + "4494144867" + ], + [ + "919409898160669", + "4513267965" + ] + ] + ], + [ + "0xD93cA8A20fE736C1a258134840b47526686D7307", + [ + [ + "56077445655086", + "11371417669" + ], + [ + "78584911789298", + "5137382996" + ], + [ + "647259313998298", + "14647098985" + ], + [ + "647599985149651", + "17747254687" + ], + [ + "648046274309396", + "10494453652" + ], + [ + "653323868574912", + "137731690000" + ] + ] + ], + [ + "0xD970Ba10ED5E88b678cd39FA37DaA765F6948733", + [ + [ + "142281870862196", + "10000000000" + ], + [ + "319686977627150", + "7392140365" + ] + ] + ], + [ + "0xD99f87535972Ba63B0fcE0bC2B3F7a2aF7193886", + [ + [ + "32189929099710", + "14262400000" + ], + [ + "530008483678461", + "125000000000" + ], + [ + "581919946089978", + "3352496869" + ] + ] + ], + [ + "0xD9e38D3487298f9CFB2109f83d93196be5AD7Cd3", + [ + [ + "634499539739046", + "71680000" + ], + [ + "636803781282084", + "726033140" + ] + ] + ], + [ + "0xD9E886861966Af24A09a4e34414E34aCfC497906", + [ + [ + "561774889108632", + "78840756" + ], + [ + "561774967949388", + "92219555" + ], + [ + "573412785654316", + "47759145702" + ] + ] + ], + [ + "0xd9f3F28735fDa3bF7207D19b9aD36fCF2701E329", + [ + [ + "768717612283351", + "10000000" + ] + ] + ], + [ + "0xDa12B5133e13e01d95f9a5BE0cc61496b17E5494", + [ + [ + "236714656093503", + "116182892576" + ] + ] + ], + [ + "0xda333519D92b4D7a83DBAACB4fd7a31cDB4f24A4", + [ + [ + "263800369352925", + "23097239478" + ], + [ + "264376826329227", + "46078127416" + ] + ] + ], + [ + "0xDa90d355b1bd4d01F6124fEE7669090d4cbD5778", + [ + [ + "643669682732704", + "2100818831" + ] + ] + ], + [ + "0xDaD87a8cCe8D5B9C57e44ae28111034e2A39eD50", + [ + [ + "403212677462308", + "40218170413" + ] + ] + ], + [ + "0xdAe3b4E9bA2F1bd8da873B7dd5a391781a8C1Ae4", + [ + [ + "157602998747642", + "28885163958" + ] + ] + ], + [ + "0xdb215bA8D9bed3aACE91E23307Caa00A8c9211f1", + [ + [ + "267590061901147", + "2005065961" + ] + ] + ], + [ + "0xDb22E2AC346617C2a7e20F5F0a49009F679cEED9", + [ + [ + "637129655282631", + "22325453" + ], + [ + "643043882329649", + "479746353" + ] + ] + ], + [ + "0xDB2480a43C79126F93Bd5a825dc0CBa46d7C0612", + [ + [ + "212146553068969", + "1874397" + ], + [ + "315467928069739", + "2143332" + ] + ] + ], + [ + "0xdB4fBc231F1D2b3B4c3d9e1602C895806fb06278", + [ + [ + "88019238910533", + "283779269760" + ], + [ + "155866885831476", + "229812428383" + ], + [ + "186894947490180", + "254568376533" + ], + [ + "216062301683602", + "59128471773" + ], + [ + "251889011864124", + "141238407707" + ], + [ + "326192232546177", + "21300990257" + ], + [ + "458939107847346", + "7742150000" + ], + [ + "636791786091549", + "2994580003" + ] + ] + ], + [ + "0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c", + [ + [ + "849298904292793", + "25199642635" + ] + ] + ], + [ + "0xDb8D484c46cE6B0bd00f38a51b299EB129928AC0", + [ + [ + "551224993414569", + "3096343805" + ] + ] + ], + [ + "0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661", + [ + [ + "20365613493753", + "1765692730755" + ], + [ + "51195826562753", + "883032123833" + ], + [ + "67683058505318", + "1486737153234" + ], + [ + "77991701919499", + "455109074924" + ], + [ + "353815863306220", + "1479741690000" + ], + [ + "448968517008406", + "3013875740000" + ], + [ + "544347600270060", + "2882163840000" + ], + [ + "757951107599734", + "1176211486527" + ] + ] + ], + [ + "0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D", + [ + [ + "13470495740040", + "149825000000" + ], + [ + "142108188708647", + "119851523542" + ], + [ + "158415379405767", + "115400000000" + ], + [ + "188020337395906", + "112634976533" + ], + [ + "208903230939437", + "154140000000" + ] + ] + ], + [ + "0xDBB493488991F070176367aF5c57De2B8de5aAb1", + [ + [ + "601904644340460", + "65712528539" + ] + ] + ], + [ + "0xdbC529316fe45F5Ce50528BF2356211051fB0F71", + [ + [ + "88838287575483", + "14596261680" + ], + [ + "208405652247102", + "90779703328" + ] + ] + ], + [ + "0xDC27b4a65F214743d68BEf4ba2004D4cCD6d7F65", + [ + [ + "552624493918713", + "110685400000" + ] + ] + ], + [ + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584", + [ + [ + "417523403595", + "2917795207" + ], + [ + "32164015349710", + "1355743473" + ], + [ + "32171015349710", + "9531250000" + ], + [ + "669837683611672", + "950984267" + ], + [ + "676751445379926", + "47414939" + ], + [ + "684994857746023", + "30279606975" + ], + [ + "742042342603575", + "131493030" + ], + [ + "742042474096605", + "236803966" + ], + [ + "742042710900571", + "232200706" + ], + [ + "742042943101277", + "7243213645" + ], + [ + "770975471658901", + "8095756597" + ] + ] + ], + [ + "0xDC50cB21557c8A1F1161683FC2ec4Cf5829ef50C", + [ + [ + "240776779208192", + "131801542813" + ], + [ + "395510568223075", + "13452513599" + ], + [ + "395524020736674", + "6725311906" + ] + ] + ], + [ + "0xdc95f2Ec354b814Fc253846524b13b03be739Cd6", + [ + [ + "593035604226730", + "373628743286" + ], + [ + "600409018603227", + "525104885508" + ], + [ + "601974357349095", + "169049978325" + ], + [ + "681430514551832", + "201609576198" + ], + [ + "911010404976562", + "533890656472" + ], + [ + "918302484323674", + "202995680000" + ], + [ + "918505480003674", + "10000000000" + ] + ] + ], + [ + "0xDD0C3175A65f7a26078FFF161B8Be32068ff8723", + [ + [ + "918883666019212", + "102716499306" + ] + ] + ], + [ + "0xDd6Ab3d27d63e7Ed502422918BBcc9D881c9F4B7", + [ + [ + "624713709719260", + "9318497890" + ] + ] + ], + [ + "0xDdBee81969465Bf34C390bdbebb51693aa60872A", + [ + [ + "643076745874957", + "4990270393" + ], + [ + "644200805140367", + "8465905213" + ], + [ + "644209483533799", + "8462180116" + ], + [ + "644262553292741", + "3556630272" + ], + [ + "644296719303061", + "10087109324" + ], + [ + "644359902017266", + "8096943325" + ], + [ + "644575794403820", + "7056375463" + ], + [ + "644601530274238", + "15181735301" + ], + [ + "644692868677789", + "10944597109" + ], + [ + "644703813274898", + "7042747045" + ], + [ + "646613954357648", + "1213482835" + ], + [ + "646615167840483", + "6581626316" + ], + [ + "646621749466799", + "8641971662" + ], + [ + "646635487210904", + "3405655439" + ], + [ + "646713685775027", + "6681000000" + ], + [ + "646751868482222", + "6672000000" + ], + [ + "646790831403089", + "4502537888" + ], + [ + "646801634434395", + "9357187500" + ], + [ + "646823890594041", + "8313750000" + ], + [ + "646832381636489", + "9556500000" + ], + [ + "646922825096920", + "12655593750" + ], + [ + "646953058887051", + "13680562500" + ], + [ + "646966912932349", + "7458750000" + ], + [ + "647011849960741", + "16552500000" + ], + [ + "647205132806434", + "4541772237" + ], + [ + "647273961097283", + "15852375000" + ], + [ + "647289813472283", + "21205125000" + ], + [ + "647357268413637", + "4154496146" + ], + [ + "647398482803133", + "1759220334" + ], + [ + "647400242023467", + "16021687500" + ], + [ + "647425297460967", + "14166562500" + ], + [ + "647454468475467", + "4491329250" + ], + [ + "647512855733654", + "9545312467" + ], + [ + "647522534795334", + "5027880322" + ], + [ + "647562911175006", + "6826288981" + ], + [ + "647569737463987", + "10768570312" + ], + [ + "647805956456321", + "13439373437" + ], + [ + "648363604608488", + "13816601562" + ], + [ + "648525333394069", + "11917909114" + ], + [ + "648537283609584", + "5707106019" + ], + [ + "648542990715603", + "6654318624" + ], + [ + "648549645034227", + "9785276073" + ], + [ + "648559430310300", + "13731252132" + ], + [ + "648581334621451", + "12509063265" + ], + [ + "648606068497443", + "6498075600" + ], + [ + "648741405625141", + "9096334989" + ], + [ + "648848576397521", + "41084042452" + ], + [ + "649331958625680", + "33400921875" + ], + [ + "649365359547555", + "33581054687" + ], + [ + "649705596826687", + "10429699117" + ], + [ + "649716026525804", + "16250253890" + ], + [ + "649774317320412", + "23670471136" + ], + [ + "650067095113156", + "39224374968" + ], + [ + "650131508947102", + "18606000000" + ], + [ + "650219242628485", + "1857330184" + ], + [ + "650499084833769", + "50659600000" + ], + [ + "650589898773882", + "60485600000" + ], + [ + "650719378952014", + "2156328854" + ], + [ + "651349317935004", + "3579623519" + ], + [ + "651620596283863", + "105079500000" + ], + [ + "651727349159538", + "130210400000" + ], + [ + "651991201244680", + "3786353240" + ], + [ + "652087027597920", + "5532211893" + ], + [ + "653599004226662", + "78606500967" + ], + [ + "653679357421522", + "180127000000" + ], + [ + "653861094863940", + "166611900000" + ], + [ + "654029755304304", + "173240000000" + ], + [ + "654204545777416", + "151205600000" + ], + [ + "654355751377416", + "2843782982" + ], + [ + "654770555948114", + "2469722016" + ], + [ + "655003488507610", + "163273353517" + ], + [ + "655337107999513", + "144680200000" + ], + [ + "655639894246606", + "52642714966" + ] + ] + ], + [ + "0xdDd607Ee226b65Ee1292bB2d67682b86cd024930", + [ + [ + "558593299877935", + "31334924212" + ] + ] + ], + [ + "0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8", + [ + [ + "142228040232189", + "53830630007" + ], + [ + "144067349353443", + "62240626757" + ] + ] + ], + [ + "0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78", + [ + [ + "174442438655439", + "15119280000" + ] + ] + ], + [ + "0xde03A13dfeeE02912Ae07a40c09dB2f99d940b00", + [ + [ + "726149840247311", + "24409520718" + ], + [ + "726387516970259", + "92722508894" + ], + [ + "729765633699329", + "46643670755" + ] + ] + ], + [ + "0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E", + [ + [ + "870187640701086", + "362798420992" + ], + [ + "888963178962244", + "163405602286" + ] + ] + ], + [ + "0xde13B8B32A0c7C1C300Cd4151772b7Ebd605660B", + [ + [ + "647232227981242", + "6298709791" + ], + [ + "652950104529552", + "129174557467" + ], + [ + "656170577963257", + "102136812055" + ] + ] + ], + [ + "0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f", + [ + [ + "768418957212524", + "52886516686" + ] + ] + ], + [ + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", + [ + [ + "3792363560076", + "9383000000" + ], + [ + "3802746560076", + "1028006841446" + ], + [ + "38059755842898", + "1000000000" + ], + [ + "38070755842898", + "10000000000" + ], + [ + "38080755842898", + "584656734654" + ], + [ + "91230555524265", + "1157829451458" + ], + [ + "141290731602814", + "170292704134" + ], + [ + "150603898314796", + "19362238929" + ], + [ + "157502362728117", + "19361828964" + ], + [ + "158143559604349", + "240053266239" + ], + [ + "186494637954698", + "86016299030" + ], + [ + "196474759852459", + "243144086944" + ], + [ + "200652532203034", + "192238041154" + ], + [ + "300250684477580", + "90840629787" + ], + [ + "300341525107367", + "95300097216" + ], + [ + "300436825204583", + "66642995895" + ], + [ + "326172188465217", + "20044080960" + ], + [ + "523592887571205", + "406079005484" + ], + [ + "659739725481923", + "12767022192" + ], + [ + "659963650287531", + "62724910500" + ], + [ + "660068565720606", + "26160137009" + ], + [ + "663722483241054", + "15687227027" + ], + [ + "668464608799283", + "39772727272" + ], + [ + "672253903713761", + "97191046863" + ], + [ + "676186340481902", + "169034757286" + ], + [ + "681883889108289", + "102345416157" + ], + [ + "729306188176751", + "405623000000" + ], + [ + "768211064275494", + "84762579204" + ], + [ + "809524758010923", + "65952600000" + ], + [ + "809659710613618", + "69419995133" + ], + [ + "809729130608751", + "12575747550" + ], + [ + "815316133061142", + "3341648896777" + ], + [ + "818657781957919", + "69419997856" + ], + [ + "841859181182455", + "771362533397" + ], + [ + "849581203170535", + "148989830915" + ], + [ + "860426260246190", + "238537054269" + ], + [ + "868015358965168", + "78882631651" + ], + [ + "868634110731086", + "83348258680" + ], + [ + "869012604430047", + "87269350362" + ], + [ + "882000203687519", + "380005737357" + ], + [ + "883770390346051", + "187695892447" + ], + [ + "884919252446654", + "542162881249" + ], + [ + "888303222439580", + "593597462776" + ], + [ + "912208351517452", + "5991548366" + ], + [ + "912214343065818", + "16933170970" + ], + [ + "915260266366180", + "18754209891" + ], + [ + "915380085616492", + "14800696613" + ] + ] + ], + [ + "0xde8351633c96Ac16860a78D90D3311fa390182BF", + [ + [ + "216408164726556", + "85602648673" + ] + ] + ], + [ + "0xDeaB5B36743feb01150e47Ad9FfD981b9d5b7E8a", + [ + [ + "326278014529391", + "17549000000" + ], + [ + "327854929299830", + "11998500000" + ] + ] + ], + [ + "0xdEBA22ef671936a5CB3964C8469fDC32cF745C0a", + [ + [ + "509636306255", + "1" + ], + [ + "529636306255", + "1" + ], + [ + "59412946981687", + "34157939646" + ], + [ + "141251298863976", + "39432738838" + ], + [ + "192163678553101", + "172848686028" + ], + [ + "241321879707070", + "49572290004" + ], + [ + "396542158923743", + "334401064755" + ] + ] + ], + [ + "0xDecaFa57F07292a338E59242AaC289594E6A0d68", + [ + [ + "271576077962668", + "140065079142" + ] + ] + ], + [ + "0xdF02A9ba6C6A5118CF259f01eD7A023A4599a945", + [ + [ + "78846823008925", + "398026347880" + ], + [ + "120279046392813", + "545096922836" + ], + [ + "170722823799402", + "220235851424" + ], + [ + "171260005516525", + "243534672333" + ], + [ + "180153233360660", + "337822422793" + ] + ] + ], + [ + "0xDF2501f4181Cd63D41ECE0F4EDcf722eEAd58EbD", + [ + [ + "600934123488735", + "546645857755" + ] + ] + ], + [ + "0xdF3A7C30313779D3b6AA577A28456259226Ff452", + [ + [ + "237417758858149", + "30553597699" + ] + ] + ], + [ + "0xDf3e8B69943AD8278D198681175E6f93135CDDfC", + [ + [ + "403341480040599", + "126497445070" + ] + ] + ], + [ + "0xDFc6b16343F92c1347B6E9700aA6c5d9E34794A1", + [ + [ + "4830753401522", + "2240249910" + ], + [ + "41339093511436", + "1257372701" + ], + [ + "533739581287964", + "3943680000" + ], + [ + "659731106622223", + "8618859700" + ] + ] + ], + [ + "0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0", + [ + [ + "167683177880987", + "4954971100" + ], + [ + "189387084660680", + "10157189840" + ], + [ + "201247139758911", + "13448181940" + ], + [ + "236366740568862", + "7878595540" + ], + [ + "326136734741436", + "35453723781" + ], + [ + "408419819948677", + "2084424649" + ], + [ + "409548715746253", + "4109706945" + ], + [ + "409552825453198", + "5099746997" + ], + [ + "415728098229444", + "1751123284" + ], + [ + "448964829115281", + "1810182949" + ], + [ + "630519049099637", + "6104582040" + ], + [ + "633292958297641", + "657829862" + ], + [ + "646611773265487", + "2181092161" + ], + [ + "646663199126819", + "14444964843" + ], + [ + "659541365325725", + "2126762825" + ], + [ + "661303295928924", + "34934377228" + ], + [ + "672395604337332", + "2656036443" + ], + [ + "674257105193099", + "20750304614" + ], + [ + "674277855497713", + "13068447328" + ] + ] + ], + [ + "0xE043b38b90712bdFf29a2D930047FF9A56660b0F", + [ + [ + "544307027106412", + "40573163648" + ] + ] + ], + [ + "0xe0842049837F79732d688d0d080aCee30b93578B", + [ + [ + "282623442085645", + "196317112545" + ], + [ + "283316680754456", + "956039712019" + ] + ] + ], + [ + "0xE09c29F85079035709b0CF2839750bcF5DcdE163", + [ + [ + "28118591472167", + "1111245900" + ], + [ + "33156411262114", + "8075958282" + ], + [ + "33227951017861", + "25000000000" + ], + [ + "87096541295698", + "18335245199" + ], + [ + "803081695375515", + "618050000000" + ], + [ + "838807361305501", + "1744820000000" + ], + [ + "888024381265015", + "257944663329" + ], + [ + "900744823053218", + "1219311720000" + ] + ] + ], + [ + "0xe0E297e67191AF140BCa9E7c8dd9FfA7F57D3862", + [ + [ + "325748686333297", + "381776902" + ], + [ + "361748361657312", + "2595240610" + ], + [ + "361750956897922", + "7669308177" + ] + ] + ], + [ + "0xe105EDc9d5E7B473251f91c3205bc62a6A30c446", + [ + [ + "676541698067218", + "7577094" + ], + [ + "676541705644312", + "4631200000" + ] + ] + ], + [ + "0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25", + [ + [ + "576206248763446", + "66947321618" + ], + [ + "595823368762510", + "108994425040" + ], + [ + "600077240176718", + "329414899131" + ], + [ + "602143407327420", + "8684892499" + ], + [ + "624173365610454", + "69726385000" + ], + [ + "729711811176751", + "53822522578" + ], + [ + "766450323360634", + "200463133890" + ], + [ + "767825586282206", + "16819887033" + ], + [ + "768007571928604", + "47461345022" + ], + [ + "783348102174276", + "7806418680" + ], + [ + "786392811090567", + "52304367680" + ], + [ + "867253177374779", + "166114705421" + ], + [ + "868854548555689", + "133850337277" + ], + [ + "869099873783314", + "76014058075" + ], + [ + "882508482561713", + "167461718509" + ], + [ + "883138702543472", + "176200000000" + ], + [ + "884129255430690", + "67895438272" + ], + [ + "900208798985209", + "143968018244" + ], + [ + "912231276236788", + "92897267558" + ], + [ + "919461199099499", + "5336224638" + ], + [ + "919466535324137", + "5334880032" + ], + [ + "919471870204169", + "5330937481" + ], + [ + "919477201141650", + "5329474143" + ], + [ + "919482530615793", + "5327908996" + ], + [ + "919487858524789", + "5325660310" + ], + [ + "919493184185099", + "5323103422" + ], + [ + "919498507288521", + "5318910648" + ], + [ + "919503826199169", + "5314703448" + ], + [ + "919509140902617", + "5311903271" + ], + [ + "919514452805888", + "5311945160" + ], + [ + "919519764751048", + "5310253791" + ], + [ + "919525075004839", + "5309104759" + ], + [ + "919530384109598", + "5308275026" + ], + [ + "919535692384624", + "5306308744" + ], + [ + "919540998693368", + "5305739221" + ], + [ + "919546304432589", + "5301862694" + ], + [ + "919551606295283", + "5301550053" + ], + [ + "919556907845336", + "5299540494" + ], + [ + "919562207385830", + "5302782308" + ], + [ + "919567510168138", + "5302768160" + ], + [ + "919572812936298", + "5302754012" + ], + [ + "919578115690310", + "5302740141" + ], + [ + "919583418430451", + "5301073185" + ], + [ + "919588719503636", + "5301772813" + ], + [ + "919594021276449", + "5300858469" + ], + [ + "919599322134918", + "5302714897" + ], + [ + "919604624849815", + "5301047940" + ], + [ + "919609925897755", + "5301033793" + ], + [ + "919615226931548", + "5301019645" + ], + [ + "919620527951193", + "5301005774" + ], + [ + "919625828956967", + "5300991904" + ], + [ + "919631129948871", + "5300977756" + ], + [ + "919636430926627", + "5300963885" + ], + [ + "919641731890512", + "5300949737" + ], + [ + "919647032840249", + "5299282781" + ], + [ + "919652332123030", + "5299268910" + ], + [ + "919657631391940", + "5299254485" + ], + [ + "919662930646425", + "5299240892" + ], + [ + "919668229887317", + "5297573658" + ], + [ + "919673527460975", + "5297559232" + ], + [ + "919678825020207", + "5299198448" + ], + [ + "919684124218655", + "5299184577" + ], + [ + "919689423403232", + "5297517343" + ], + [ + "919694720920575", + "5299156559" + ], + [ + "919700020077134", + "5297489325" + ], + [ + "919705317566459", + "5297475454" + ], + [ + "919710615041913", + "5297461307" + ], + [ + "919715912503220", + "5305707596" + ], + [ + "919721218210816", + "5305693726" + ], + [ + "919726523904542", + "5305679578" + ], + [ + "919731829584120", + "5305665707" + ], + [ + "919737135249827", + "5303998473" + ], + [ + "919742439248300", + "5303689771" + ], + [ + "919747742938071", + "5303675620" + ], + [ + "919753046613691", + "5303661746" + ], + [ + "919758350275437", + "5303647595" + ], + [ + "919763653923032", + "4733133482" + ] + ] + ], + [ + "0xe1762431241FE126a800c308D60178AdFF2D966a", + [ + [ + "402609154453793", + "3753371898" + ] + ] + ], + [ + "0xe182F132B7aB8639c3B2faEBa87f4c952B4b2319", + [ + [ + "859215691259276", + "45066341711" + ] + ] + ], + [ + "0xe1887385C1ed2d53782F0231D8032E4Ae570B3CE", + [ + [ + "106939782630762", + "37787441969" + ], + [ + "107006567146722", + "204820208972" + ] + ] + ], + [ + "0xE1aac3d6e7ad06F19052768ee50ea3165ca1fe70", + [ + [ + "634481955115745", + "3827017628" + ] + ] + ], + [ + "0xE1e98eAe1e00E692D77060237002a519E7e60b60", + [ + [ + "560021933444365", + "145614575729" + ], + [ + "635562948558262", + "125342100000" + ], + [ + "635712394908262", + "125332100000" + ], + [ + "647522401046121", + "62772574" + ], + [ + "793692325682938", + "368865000000" + ], + [ + "805803655452845", + "756420000000" + ], + [ + "808210227799125", + "59799118052" + ] + ] + ], + [ + "0xE203096D7583E30888902b2608652c720D6C38da", + [ + [ + "299026952158934", + "2821489902" + ], + [ + "322426733615915", + "10296333472" + ], + [ + "634451653562499", + "2156941193" + ] + ] + ], + [ + "0xE223138F87fA7Bf30a98F86b974937ED487de9E5", + [ + [ + "431662774089579", + "928974866819" + ] + ] + ], + [ + "0xe2282eA0D41b1a9D99B593e81D9adb500476C7C5", + [ + [ + "236830838986079", + "43499184625" + ] + ] + ], + [ + "0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41", + [ + [ + "604813458067797", + "165503800000" + ], + [ + "624312365377895", + "900232559" + ], + [ + "631054918312401", + "72951633394" + ], + [ + "632715021261264", + "2101528" + ] + ] + ], + [ + "0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458", + [ + [ + "385709915879528", + "1157905014" + ] + ] + ], + [ + "0xE2bDaE527f99a68724B9D5C271438437FC2A4695", + [ + [ + "51178430376491", + "2794515" + ], + [ + "637247853646254", + "8808401866" + ], + [ + "649573721058696", + "214014871" + ], + [ + "741723479960197", + "838146017" + ] + ] + ], + [ + "0xE2Bf7C6c86921E404f3D2cEc649E2272A92c64fE", + [ + [ + "633041964721928", + "628276300" + ] + ] + ], + [ + "0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C", + [ + [ + "52227428818772", + "11845000000" + ], + [ + "141990287303893", + "100000000109" + ], + [ + "197732197212553", + "25970203853" + ], + [ + "591946727492914", + "19309281895" + ], + [ + "641517895144865", + "4833056816" + ], + [ + "646974371682349", + "9424449262" + ], + [ + "859905330336636", + "320918539" + ], + [ + "861104013703599", + "466526164" + ], + [ + "868002417256020", + "1792614924" + ] + ] + ], + [ + "0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3", + [ + [ + "28801080459205", + "9105230900" + ], + [ + "235808732140980", + "4499213873" + ], + [ + "668329599792309", + "12303080568" + ], + [ + "668341902872877", + "4162855351" + ], + [ + "679668890228321", + "20388737000" + ], + [ + "740629521326922", + "14539634819" + ] + ] + ], + [ + "0xE2EdD6Ba259A7a7543e76df6F3Eab80154Ff7982", + [ + [ + "164200751430350", + "13525306090" + ], + [ + "186711602390914", + "12816117502" + ], + [ + "199689393498949", + "10847842210" + ], + [ + "223686687852134", + "15136415374" + ] + ] + ], + [ + "0xe341D029A0541f84F53de23E416BeE8132101E48", + [ + [ + "580247000743705", + "16603151206" + ], + [ + "595166801511834", + "12525126500" + ], + [ + "625294671474977", + "47650794261" + ], + [ + "627853523296048", + "83887520358" + ], + [ + "627937410816406", + "107921589892" + ], + [ + "630893603598361", + "64393349602" + ], + [ + "630957996947963", + "81937578138" + ], + [ + "631127869945795", + "334766123964" + ], + [ + "631809800603658", + "3069278668" + ], + [ + "631820288433865", + "45883804745" + ], + [ + "631866172238610", + "88335279210" + ], + [ + "632064428283728", + "56385109300" + ], + [ + "632545475514340", + "60742019099" + ], + [ + "632927020412679", + "4229348834" + ], + [ + "632931249761513", + "110714960415" + ], + [ + "633042592998228", + "131633088574" + ], + [ + "633576411835283", + "163614422357" + ], + [ + "633740026257640", + "229278671951" + ], + [ + "634177884140747", + "6388626991" + ], + [ + "634280779212260", + "7808539974" + ], + [ + "634288587752234", + "8669701992" + ], + [ + "634305900726953", + "4297820073" + ], + [ + "634310198547026", + "3472972941" + ], + [ + "634453810503692", + "4959136304" + ], + [ + "634698555829165", + "47575184873" + ], + [ + "634829369812554", + "7872033041" + ], + [ + "634837241845595", + "9121546150" + ], + [ + "634846363391745", + "9985602103" + ], + [ + "634856348993848", + "8012057539" + ], + [ + "635529297065365", + "6798291250" + ], + [ + "635837729356119", + "5724585625" + ], + [ + "635857997949286", + "7861878125" + ], + [ + "635929981939366", + "3855440625" + ], + [ + "635934304344057", + "9618590625" + ], + [ + "635964771738329", + "5345079375" + ], + [ + "635970116817704", + "2856929375" + ], + [ + "635973567908981", + "5700529375" + ], + [ + "635979268438356", + "8185223750" + ], + [ + "636047470331282", + "5691708750" + ], + [ + "636981200607403", + "5662841250" + ], + [ + "638281858941153", + "5155261915" + ], + [ + "641042570368631", + "190255211250" + ], + [ + "641528631437689", + "45786203750" + ] + ] + ], + [ + "0xE3546C83C06A298148214C8a25B4081d72a704B4", + [ + [ + "84411481307157", + "40301967034" + ] + ] + ], + [ + "0xE381CEb106717c176013AdFCE95F9957B5ea3dA9", + [ + [ + "726377412039046", + "5224487265" + ] + ] + ], + [ + "0xE382de4893143c06007bA7929D9532bFF2140A3F", + [ + [ + "376338980709500", + "87039194038" + ] + ] + ], + [ + "0xE3A2Ad75e3e9B893c8188030BA7f550FDfEeadac", + [ + [ + "551485555682601", + "1500000000" + ], + [ + "644456134939590", + "7631768458" + ] + ] + ], + [ + "0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6", + [ + [ + "0", + "417523403595" + ], + [ + "406241456449697", + "1799280000000" + ], + [ + "415729849352728", + "1706000000000" + ], + [ + "889280477870627", + "3060959410100" + ] + ] + ], + [ + "0xe3D73DAaE939518c3853e0E8e532ae707cC1A436", + [ + [ + "581923298586847", + "2757807763" + ] + ] + ], + [ + "0xE3faBA780BDe12D3DFEB226A120aA4271f1D72B2", + [ + [ + "180847346911085", + "123280084894" + ], + [ + "182652146329552", + "71454221208" + ], + [ + "207987894165000", + "1388897527" + ], + [ + "218376915754234", + "21880478375" + ], + [ + "294551473507760", + "126483466450" + ], + [ + "339023114212775", + "26063720697" + ], + [ + "384499544293676", + "63068683017" + ] + ] + ], + [ + "0xE3fEBd699133491dbf704A57b805bE1D284094Dd", + [ + [ + "581917954037154", + "1992052824" + ] + ] + ], + [ + "0xe4082AaCDEd950C0f21FEbAC03Aa6f48D15cd58D", + [ + [ + "245062206264981", + "47164005800" + ] + ] + ], + [ + "0xE4202F5919F22377dB816a5D04851557480921dF", + [ + [ + "282567856872602", + "19171570170" + ] + ] + ], + [ + "0xE42Ab6d6dC5cc1569802c26a25aF993eeF76cAA2", + [ + [ + "826269049409236", + "66189217241" + ], + [ + "836366821524791", + "30751377215" + ] + ] + ], + [ + "0xE432225AB3A24D0328c1eb8934f12C2C664dBF1E", + [ + [ + "59299083830384", + "4831151303" + ], + [ + "267592066967108", + "16873650000" + ], + [ + "378223623996434", + "4102512201" + ], + [ + "378230112638662", + "128819998128" + ] + ] + ], + [ + "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc", + [ + [ + "562785223802308", + "31631000000" + ], + [ + "564739070155208", + "31631250000" + ], + [ + "566121962403477", + "31631250000" + ], + [ + "569039352660815", + "31631250000" + ], + [ + "570064713013715", + "31631250000" + ], + [ + "572117326695253", + "31631250000" + ] + ] + ], + [ + "0xE48436022460c33e32FC98391CD6442d55CD1c69", + [ + [ + "76136468582591", + "810243080" + ] + ] + ], + [ + "0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74", + [ + [ + "78575652585161", + "6157730462" + ], + [ + "86839531147491", + "6167531020" + ], + [ + "87005765679223", + "13825576144" + ], + [ + "87096094207767", + "447087931" + ], + [ + "88859049931623", + "2191023676" + ], + [ + "88865298102549", + "4454797628" + ], + [ + "96757775191185", + "5000092372" + ], + [ + "107450450351040", + "5868852168" + ], + [ + "109601441049683", + "9469466929" + ], + [ + "193348310768784", + "17271454497" + ], + [ + "315604608943756", + "27270213991" + ], + [ + "318370563880249", + "2765214517" + ], + [ + "648142013171689", + "1598517724" + ], + [ + "649302909000680", + "10533398444" + ], + [ + "670082169136394", + "68703216153" + ] + ] + ], + [ + "0xe496c05e5E2a669cc60ab70572776ee22CA17F03", + [ + [ + "315631879157747", + "6925672800" + ], + [ + "390474369265448", + "5361251025" + ] + ] + ], + [ + "0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab", + [ + [ + "4952878991603", + "2895624803" + ], + [ + "767549755690683", + "28541134998" + ], + [ + "866901606412787", + "77975000000" + ] + ] + ], + [ + "0xe4E51bb8cF044FBcdd6A0bb995a389dDa15fB94e", + [ + [ + "507118948487690", + "8256805531" + ] + ] + ], + [ + "0xE543357D4F0EB174CfC6BeD6Ef5E7Ab5762f1B2B", + [ + [ + "118328447658504", + "701100000000" + ], + [ + "456091706917490", + "2401063150000" + ] + ] + ], + [ + "0xE58E375Cc657e434e6981218A356fAC756b98097", + [ + [ + "573816319246629", + "2262215151" + ], + [ + "647552815241326", + "831025407" + ] + ] + ], + [ + "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14", + [ + [ + "150183664003812", + "17199177351" + ], + [ + "248514128054572", + "97187219028" + ], + [ + "582508219016231", + "24771576854" + ], + [ + "624658665009185", + "6644957515" + ], + [ + "634129225542334", + "2422720577" + ], + [ + "634369628528770", + "3238845835" + ], + [ + "638300669872038", + "2080727252" + ], + [ + "643801267349364", + "3566904312" + ], + [ + "644198835707273", + "1969433094" + ], + [ + "644413986347378", + "1335994704" + ], + [ + "650397536125561", + "1821867823" + ], + [ + "669831927929272", + "5755682400" + ], + [ + "672735152266652", + "12000000000" + ], + [ + "845868159704226", + "7926000000" + ], + [ + "848120476134732", + "20430199792" + ], + [ + "889126584565133", + "3442047582" + ], + [ + "917105013254763", + "130394976890" + ] + ] + ], + [ + "0xE6375dF92796f95394a276E0BA4Efc4176D41D49", + [ + [ + "254356352427847", + "218136367740" + ] + ] + ], + [ + "0xE67ae530c6578bCD59230EDac111Dd18eE47b344", + [ + [ + "182723600550760", + "20607463066" + ] + ] + ], + [ + "0xe693eB739c0bE8c2bDD978C550B5D8b8022A8adA", + [ + [ + "146032033342725", + "685155440000" + ], + [ + "178737987409807", + "773610632731" + ], + [ + "333823566057414", + "1546846439684" + ], + [ + "607663068886028", + "1629021034598" + ], + [ + "764100342598098", + "11607641329" + ], + [ + "768309493782381", + "386609244" + ], + [ + "768327565938680", + "20807711132" + ], + [ + "860835928419591", + "249909693172" + ] + ] + ], + [ + "0xE6A0D70CFe2BB97E39D37ED2549c25FA8C238B1A", + [ + [ + "339589167036135", + "128341936701" + ] + ] + ], + [ + "0xE6C459B2d9e8EafD205b74201Ce1988B28Bd2a1F", + [ + [ + "575334506398130", + "2624718668" + ], + [ + "577649709443014", + "29897283106" + ] + ] + ], + [ + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0", + [ + [ + "662103983819946", + "130876975914" + ], + [ + "662234860795860", + "57106724864" + ], + [ + "662653552964585", + "348266002657" + ], + [ + "668904111958456", + "17808983511" + ], + [ + "669107561607270", + "226407807552" + ], + [ + "685050370546027", + "50304977904" + ], + [ + "685100675523931", + "181720064271" + ] + ] + ], + [ + "0xe78483c03249C1D5bb9687f3A95597f0c6360b84", + [ + [ + "636727155365094", + "30000000000" + ] + ] + ], + [ + "0xE79cCABDbF2AA68fDae8D7Fc39654A62b07e12e3", + [ + [ + "587272159376494", + "51926940000" + ], + [ + "588162157316494", + "74148750000" + ], + [ + "588465977066494", + "74148750000" + ], + [ + "588769796816494", + "74148750000" + ] + ] + ], + [ + "0xE7a9c882C15288E8FaDd3f84127bF89b04dF81b3", + [ + [ + "646643408283275", + "5875643544" + ], + [ + "646941638104274", + "4278269347" + ], + [ + "647786287498526", + "9738151418" + ], + [ + "647927256951326", + "8740549248" + ], + [ + "650287051440147", + "1483237886" + ] + ] + ], + [ + "0xE7cB38c67b4c07FfEA582bCa127fa5B4FFC568Fc", + [ + [ + "869525296235171", + "87717999114" + ] + ] + ], + [ + "0xe846880530689a4f03dBd4B34F0CDbb405609de1", + [ + [ + "90417231539023", + "45240683449" + ], + [ + "150318938409090", + "23744037762" + ], + [ + "217062489174505", + "27755712447" + ], + [ + "217190262186952", + "73956211611" + ], + [ + "340268987165800", + "7781881977" + ] + ] + ], + [ + "0xe86a6C1D778F22D50056a0fED8486127387741e2", + [ + [ + "563421765802308", + "158156000000" + ], + [ + "564472102405208", + "158156250000" + ], + [ + "565874188495977", + "158156250000" + ], + [ + "569160601568315", + "158156250000" + ], + [ + "569818905046154", + "136996467561" + ], + [ + "572257769445253", + "158156250000" + ] + ] + ], + [ + "0xE87CA36bcCA4dA5Ca25D92AF1E3B5755074565d6", + [ + [ + "564969948060977", + "5482750000" + ] + ] + ], + [ + "0xe886eCE8dEA22C64592E16CE9c6060C354e0cB46", + [ + [ + "141133027358920", + "101170792061" + ] + ] + ], + [ + "0xe8AB75921D5F00cC982bE1e8A5Cf435e137319e9", + [ + [ + "632733387704894", + "4395105822" + ] + ] + ], + [ + "0xE8c22A092593061D49d3Fbc2B5Ab733E82a66352", + [ + [ + "178737970339291", + "17070516" + ], + [ + "179688972798194", + "5487035546" + ], + [ + "183434157323457", + "339502974396" + ], + [ + "224694807630841", + "17130345477" + ], + [ + "337979232649148", + "39023058181" + ], + [ + "395503586164317", + "3623888698" + ], + [ + "522850564349158", + "54917559198" + ] + ] + ], + [ + "0xe8e8D10D48Bb4761E30A1A0C3f5705788E2Cf5Ca", + [ + [ + "217010585194355", + "2570026" + ], + [ + "331744103814149", + "12424321654" + ], + [ + "390798314197933", + "25378731375" + ] + ] + ], + [ + "0xe9886487879Cf286a7a212C8CFe5A9a948ea1649", + [ + [ + "530415037202306", + "6520295096" + ] + ] + ], + [ + "0xe9c6f6D44C546CdD54231e673Ba8b612972cdD07", + [ + [ + "186192254547662", + "1943105053" + ], + [ + "186194197652715", + "4883985870" + ] + ] + ], + [ + "0xE9D18dbFd105155eb367fcFef87eAaAFD15ea4B2", + [ + [ + "7405832970393", + "10000000000" + ] + ] + ], + [ + "0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C", + [ + [ + "361240883351111", + "319875970811" + ], + [ + "643951808239048", + "1710712273" + ] + ] + ], + [ + "0xe9ef7E644405dD6BD1cbd1550444bBF6B2Bfc7C1", + [ + [ + "331818462622088", + "1548786859" + ] + ] + ], + [ + "0xe9F55fF0Ce2c086a02154E18d10696026aFC0E63", + [ + [ + "159735891427685", + "99607197408" + ], + [ + "201680078925397", + "88271731084" + ], + [ + "236055332232551", + "189501596574" + ] + ] + ], + [ + "0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29", + [ + [ + "639712173981805", + "2021177132" + ] + ] + ], + [ + "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", + [ + [ + "634031481420456", + "3170719864" + ], + [ + "647388734023467", + "9748779666" + ], + [ + "721225229970053", + "55487912201" + ], + [ + "741007335527824", + "48848467587" + ], + [ + "743270084189585", + "44269246366" + ] + ] + ], + [ + "0xeA747056c4a5d2A8398EC64425989Ebf099733E9", + [ + [ + "636718733217670", + "8422147424" + ] + ] + ], + [ + "0xEa8f1607df5fd7e54BDd76a8Cb9dc4B0970089bD", + [ + [ + "648143611689413", + "16488629" + ] + ] + ], + [ + "0xeAB3981257d761d809E7036F498208F06ce0E5bb", + [ + [ + "396927835091619", + "1908381961" + ] + ] + ], + [ + "0xEaFc0e4AcF147e53398A4c9AE5F15950332Cce06", + [ + [ + "28428466019264", + "8365853899" + ], + [ + "28440096238899", + "16735634264" + ], + [ + "28458831873163", + "17401090578" + ], + [ + "28492543899350", + "32425342912" + ], + [ + "28634005677165", + "50000000000" + ], + [ + "28684005677165", + "20605999230" + ], + [ + "28739597122205", + "61483337000" + ], + [ + "31624276642780", + "2" + ], + [ + "31895311480934", + "1" + ], + [ + "32350918869547", + "82051" + ], + [ + "32350918951598", + "10000000000" + ], + [ + "32394990399120", + "2864884005" + ], + [ + "33175764242260", + "2" + ], + [ + "33187375353373", + "17408776700" + ], + [ + "33291179126479", + "9247234522" + ], + [ + "38787729222745", + "1" + ], + [ + "56104423797725", + "1" + ], + [ + "60588921072549", + "25000000000" + ], + [ + "72536373875277", + "1" + ], + [ + "109580416560762", + "2" + ], + [ + "150179053418897", + "287750862" + ], + [ + "153930334477667", + "3" + ], + [ + "161088340667787", + "3772518553" + ], + [ + "164362000848934", + "12645000000" + ], + [ + "167674331524848", + "5035606362" + ], + [ + "169483624358205", + "44175871750" + ], + [ + "187196027899392", + "29564553728" + ], + [ + "188951874950346", + "181144380406" + ], + [ + "227484561014257", + "20262705038" + ], + [ + "234007108345512", + "93635599728" + ], + [ + "238976826686778", + "177198890000" + ], + [ + "249735146143756", + "20000000000" + ], + [ + "249759857948381", + "15288195375" + ], + [ + "250021092530246", + "39829442210" + ], + [ + "409674050889316", + "65965899719" + ], + [ + "547880249075962", + "150000000000" + ], + [ + "634305900726922", + "31" + ], + [ + "670256915937783", + "29299" + ], + [ + "759972323281795", + "53934403" + ], + [ + "760354198244618", + "2893321" + ], + [ + "761858116813008", + "1258382" + ] + ] + ], + [ + "0xebDA75C5e193BBB82377b77e3c62c0b323240307", + [ + [ + "396892494323031", + "33140768588" + ], + [ + "396995974910643", + "13238862203" + ] + ] + ], + [ + "0xEC4009A246789e37EA5278F5Cc8bF7Bc7f11A7D7", + [ + [ + "31883346304267", + "305470240" + ], + [ + "273670285655226", + "1160805666" + ], + [ + "646889129319224", + "85072529" + ] + ] + ], + [ + "0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196", + [ + [ + "582562850460041", + "1759031988" + ], + [ + "639175607877950", + "5382798092" + ], + [ + "644038954426353", + "1008381544" + ], + [ + "644039962807897", + "1672635048" + ], + [ + "656953897664851", + "3972363681" + ], + [ + "670150872352547", + "5730104692" + ] + ] + ], + [ + "0xec94F1645651C65f154F48779Db1F4C36911a56a", + [ + [ + "344440617234876", + "75101162500" + ] + ] + ], + [ + "0xEC9F16FAacD809ED3EC90D22C92cE84C5C115FAC", + [ + [ + "236342156568862", + "24584000000" + ], + [ + "236374619164402", + "16484054460" + ] + ] + ], + [ + "0xECA7146bd5395A5BcAE51361989AcA45a87ae995", + [ + [ + "324834257501392", + "21430485642" + ] + ] + ], + [ + "0xeCdc4DD795D79F668Ff09961b2A2f47FE8e4f170", + [ + [ + "33252951017861", + "335855400" + ] + ] + ], + [ + "0xecEcd4D5f22a75307B10ebDd536Fc4Fa1696B0ED", + [ + [ + "573340826071941", + "35167457488" + ] + ] + ], + [ + "0xEd52006B09b111dAa000126598ACD95F991692D6", + [ + [ + "129895350156525", + "300728504831" + ], + [ + "140159806831757", + "169638004024" + ], + [ + "192581109113045", + "626546484708" + ] + ] + ], + [ + "0xed67448506A9C724E78bF42d5Cf35b4b617cE2F6", + [ + [ + "533743524967964", + "67675214839" + ] + ] + ], + [ + "0xEd8440f3476073DF5077b5F97d34556fBd6c1AEA", + [ + [ + "402327231432779", + "19514060494" + ], + [ + "402612907825691", + "286363600173" + ] + ] + ], + [ + "0xedC24C8a0B98715C4c42f23fA1a966D68d71DA40", + [ + [ + "150173526701329", + "5526717568" + ], + [ + "257915668096103", + "19129436224" + ], + [ + "523272990497526", + "2808581702" + ], + [ + "523275799079228", + "2808475879" + ] + ] + ], + [ + "0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef", + [ + [ + "229522424934495", + "16548755032" + ], + [ + "233220943523291", + "14963282078" + ] + ] + ], + [ + "0xeE55F7F410487965aCDC4543DDcE241E299032A4", + [ + [ + "205913794882466", + "87310833027" + ] + ] + ], + [ + "0xeE7840DAC7C3ec2cCDe49517fd3952e349997aB5", + [ + [ + "241309524742788", + "12354964282" + ], + [ + "259051124143355", + "52693409106" + ] + ] + ], + [ + "0xeEA71D769BE2028A276BBb5210eD87d2962E1bAD", + [ + [ + "322408920227818", + "17813388097" + ], + [ + "411677960948715", + "29448692596" + ] + ] + ], + [ + "0xeeBF4Ea438D5216115577f9340cD4fB0EDD29BD9", + [ + [ + "218793700820489", + "4057575515" + ], + [ + "273722951668693", + "99708443352" + ] + ] + ], + [ + "0xeEe59d723433a4b178fCD383CD936de9C8666111", + [ + [ + "323576955719352", + "1132721039915" + ] + ] + ], + [ + "0xEEf102b4B5A2f714aFd7c00C94257D7379dc913E", + [ + [ + "408421904373326", + "3478040717" + ] + ] + ], + [ + "0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee", + [ + [ + "768778833505999", + "1740538415" + ] + ] + ], + [ + "0xEF57259351dfD3BcE1a215C4688Cc67e6DCb258B", + [ + [ + "845248806005547", + "158269500000" + ] + ] + ], + [ + "0xEF64581Af57dFEc2722e618d4Dd5f3c9934C17De", + [ + [ + "212524932402007", + "66903513016" + ], + [ + "325411470253310", + "45687893013" + ] + ] + ], + [ + "0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C", + [ + [ + "274288216558789", + "100049507316" + ] + ] + ], + [ + "0xEfe609f34A17C919118C086F81d61ecA579AB2E7", + [ + [ + "872831613927583", + "313987459495" + ] + ] + ], + [ + "0xF024e42Bc0d60a79c152425123949EC11d932275", + [ + [ + "648056768763048", + "14" + ], + [ + "650979413037222", + "397390840" + ], + [ + "654773025670130", + "17" + ] + ] + ], + [ + "0xF05980BF83005362fdcBCB8F7A453fE40B669D96", + [ + [ + "91135829507198", + "94726017067" + ], + [ + "138128727038470", + "58350000000" + ], + [ + "140547091636493", + "118322995425" + ] + ] + ], + [ + "0xf05b641229bB2aA63b205Ad8B423a390F7Ef05A7", + [ + [ + "70517611157091", + "20160645556" + ], + [ + "84560853356697", + "36912535650" + ], + [ + "86281745898513", + "38582448637" + ], + [ + "87958531224481", + "60707686052" + ], + [ + "88881803449629", + "48660903855" + ], + [ + "90462472222472", + "478277732458" + ], + [ + "199810865545108", + "179758969535" + ], + [ + "199990624514643", + "621486067097" + ], + [ + "207989283062527", + "182950766299" + ], + [ + "208314733682087", + "90918565015" + ], + [ + "208632341913063", + "135599308194" + ], + [ + "208767941221257", + "135289718180" + ], + [ + "209077025481872", + "137288949299" + ], + [ + "210150930873296", + "192750606994" + ], + [ + "210343681480290", + "144178362548" + ], + [ + "211376935750193", + "97679651753" + ], + [ + "214560216445262", + "183278217511" + ], + [ + "214743494662773", + "182746566692" + ], + [ + "217381865553454", + "88294274288" + ], + [ + "221851687814442", + "441574023738" + ], + [ + "222293261838180", + "438574982507" + ], + [ + "223179979982562", + "429215643262" + ], + [ + "223701824267508", + "265026019680" + ], + [ + "235353324492895", + "197419483419" + ], + [ + "240318561628986", + "188376222726" + ], + [ + "245383860039652", + "294379207318" + ], + [ + "246107839246970", + "293260256509" + ], + [ + "248038371449932", + "100626973782" + ], + [ + "415298289081557", + "16136910000" + ], + [ + "575337131116798", + "75566677988" + ], + [ + "767705525106280", + "29504348658" + ], + [ + "779550950775667", + "97912655960" + ], + [ + "805678215290611", + "125440162234" + ], + [ + "868524114903307", + "109995827779" + ], + [ + "869343953976304", + "78994959396" + ], + [ + "869422948935700", + "102347299471" + ], + [ + "882675944280222", + "207459722347" + ], + [ + "883711019517835", + "41691686706" + ], + [ + "899259867898930", + "284863891869" + ], + [ + "899544731790799", + "453667194410" + ], + [ + "900539936860347", + "204886192871" + ], + [ + "912435691462822", + "119670000000" + ], + [ + "917823004063277", + "479480000000" + ] + ] + ], + [ + "0xF074d66B602DaE945d261673B10C5d6197Ae5175", + [ + [ + "84131865356785", + "93530736569" + ], + [ + "84225396093354", + "186085213803" + ], + [ + "84823174960098", + "181953842566" + ] + ] + ], + [ + "0xf0ec8fFED51B4Ba996005F04d38c3dBeF3A92773", + [ + [ + "401534840143736", + "5971851889" + ] + ] + ], + [ + "0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176", + [ + [ + "316203870466407", + "1645388829" + ], + [ + "395591002730700", + "2016823680" + ] + ] + ], + [ + "0xF14Ee792bb979Aa08b5c65B1069A4209159d13fE", + [ + [ + "85022875344921", + "3324591444" + ], + [ + "174426656552694", + "15782102745" + ] + ] + ], + [ + "0xf152581b8cb486b24d73aD51e23a3Fd3E0222538", + [ + [ + "318475081608739", + "392626194541" + ] + ] + ], + [ + "0xf1608f6796E1b121674036691203C8ecE7516cC2", + [ + [ + "560526448567608", + "896001030193" + ] + ] + ], + [ + "0xF18507A3D7907F2FDa0F80ea74b92707F67E0bd9", + [ + [ + "379560571115891", + "1003780000000" + ], + [ + "384467194293676", + "32350000000" + ] + ] + ], + [ + "0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657", + [ + [ + "324709676759267", + "11489049573" + ], + [ + "324774188506087", + "11452884036" + ], + [ + "444496063410773", + "460124357137" + ], + [ + "551041153301854", + "106391740000" + ], + [ + "560167548020094", + "333900000000" + ], + [ + "595105825024334", + "11975411500" + ], + [ + "604736519317797", + "76938750000" + ], + [ + "605070929320297", + "76938750000" + ], + [ + "605490160020297", + "76938750000" + ] + ] + ], + [ + "0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22", + [ + [ + "455687462229722", + "323395750214" + ] + ] + ], + [ + "0xF1cCFA46B1356589EC6361468f3520Aff95B21c3", + [ + [ + "636291150277722", + "3701958291" + ] + ] + ], + [ + "0xF1F2581Bd9BBd76134d5f111cA5CFF0a9753FD8E", + [ + [ + "263823466592403", + "138041583857" + ], + [ + "263961508176260", + "269722743765" + ] + ] + ], + [ + "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d", + [ + [ + "676535946061485", + "2683720" + ], + [ + "680560311480251", + "10364574980" + ] + ] + ], + [ + "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5", + [ + [ + "499636306256", + "316832137" + ], + [ + "677766808678753", + "76304250" + ], + [ + "740981235275273", + "11440000000" + ], + [ + "744788906534115", + "2243600000" + ], + [ + "884279886877909", + "34793830873" + ] + ] + ], + [ + "0xF28841b27FD011475184aC5BECadd12a14667e04", + [ + [ + "130704201920174", + "4115837253" + ] + ] + ], + [ + "0xF28df3a3924eEC94853b66dAaAce2c85e1EB24ca", + [ + [ + "210487859842838", + "38071600600" + ], + [ + "580206309210505", + "40691533200" + ], + [ + "625219485564848", + "18107943895" + ], + [ + "625237593508743", + "57077966234" + ], + [ + "625342322269238", + "716489188821" + ], + [ + "626275249578875", + "560773645183" + ], + [ + "627548252704282", + "32873326128" + ], + [ + "628045332406298", + "509503046565" + ], + [ + "628554835452863", + "191062696498" + ], + [ + "628745898149361", + "108330248405" + ], + [ + "630532560490294", + "7322407095" + ], + [ + "630550194403945", + "264187543819" + ], + [ + "630814381947764", + "69144868490" + ], + [ + "631954507517820", + "72530000000" + ], + [ + "632120813393028", + "37903890700" + ], + [ + "632406849288118", + "138626226222" + ], + [ + "633534258884283", + "42152951000" + ], + [ + "634027038744068", + "4442676388" + ], + [ + "634059948137280", + "2422335517" + ], + [ + "634062370472797", + "4678526520" + ], + [ + "634124637232993", + "4588309341" + ], + [ + "643304498947850", + "30147540000" + ], + [ + "646889214391753", + "15352687500" + ], + [ + "663381518809025", + "298261184375" + ] + ] + ], + [ + "0xf28E9401310E13Cfd3ae0A9AF083af9101069453", + [ + [ + "107456319203208", + "3" + ] + ] + ], + [ + "0xf295eCbE3cf6aB9fD521DFDF2B3ad296389d659F", + [ + [ + "78582867442188", + "865788998" + ], + [ + "647255629878533", + "3684119765" + ] + ] + ], + [ + "0xf2d67343cB0599317127591bcef979feaF32fF76", + [ + [ + "636804507315224", + "195414590" + ], + [ + "636804702729814", + "1472419706" + ] + ] + ], + [ + "0xF2Fb34C4323F9bf4a5c04fE277f96588dDE5316f", + [ + [ + "598166828515122", + "32623039080" + ] + ] + ], + [ + "0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e", + [ + [ + "157860946116238", + "280589994745" + ], + [ + "523428031166350", + "40407344400" + ] + ] + ], + [ + "0xF352e5320291298bE60D00a015b27D3960F879FA", + [ + [ + "143355485491681", + "4607540859" + ], + [ + "870152032882089", + "35607756446" + ], + [ + "882405333355937", + "103149205776" + ] + ] + ], + [ + "0xF38762504B458dC12E404Ac42B5ab618A7c4c78A", + [ + [ + "325527339930117", + "17268212989" + ], + [ + "339501968285224", + "21128294603" + ], + [ + "340323031214169", + "81063306091" + ] + ] + ], + [ + "0xf3999F964Ff170E2268Ba4c900e47d72313079c5", + [ + [ + "28486623734890", + "2500002500" + ], + [ + "212139883813659", + "5555555555" + ], + [ + "218281810495476", + "15033393245" + ], + [ + "456010857979936", + "80848937554" + ], + [ + "768565162278886", + "33325500000" + ] + ] + ], + [ + "0xf3dfdAf97eBda5556FCE939C4cf1CB1436138072", + [ + [ + "767682652260502", + "22872714395" + ] + ] + ], + [ + "0xf3E52C9756a7Cc53F15895B11cc248B1694C3D81", + [ + [ + "157280752805224", + "864328351" + ], + [ + "160385729653349", + "194724915171" + ], + [ + "160759888566087", + "199072929191" + ], + [ + "259317417552461", + "286813809151" + ], + [ + "403474243552036", + "135161490392" + ] + ] + ], + [ + "0xF3F03727e066B33323662ACa4BE939aFBE49d198", + [ + [ + "51176956609104", + "1473767387" + ] + ] + ], + [ + "0xF4003979abEbEf7dEdCE0FcB0A8064617ba1cb6c", + [ + [ + "12891501547142", + "16629145105" + ] + ] + ], + [ + "0xf454a5753C12d990A79A69729d1B541a526cD7F5", + [ + [ + "647505724273467", + "177860187" + ] + ] + ], + [ + "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F", + [ + [ + "188951105719577", + "769230769" + ], + [ + "215236035379429", + "5403998880" + ], + [ + "232624605735071", + "146807870" + ], + [ + "249693321804466", + "8691017770" + ], + [ + "726094322563228", + "3409439001" + ] + ] + ], + [ + "0xf476f6c0c97d088C3A1Ec2a076218C22EDFE018D", + [ + [ + "322761442698701", + "10839389709" + ], + [ + "322793684966211", + "149609926949" + ] + ] + ], + [ + "0xF4839123454F7A65f79edb514A977d0A443d9F91", + [ + [ + "335370412497098", + "158934348231" + ], + [ + "335543260610192", + "304359092505" + ], + [ + "336948934255787", + "155055594925" + ], + [ + "432716592486588", + "117060004485" + ] + ] + ], + [ + "0xF493Fd087093522526b1fF0A14Ec79A1f77945cF", + [ + [ + "783376685764145", + "80810000" + ] + ] + ], + [ + "0xF4a04D998A8d6Cf89C9328486a952874E50892DC", + [ + [ + "259966066593219", + "50467275310" + ] + ] + ], + [ + "0xf4ACCDFA928bF863D097eCF4C4bB57ad77aa0cb2", + [ + [ + "561866206352308", + "5788170260" + ] + ] + ], + [ + "0xF4B2300e02977720D590353725e4a73a67250bf3", + [ + [ + "191494050615925", + "277271514945" + ] + ] + ], + [ + "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C", + [ + [ + "647881865503160", + "16707350000" + ], + [ + "647935997500574", + "17834375000" + ] + ] + ], + [ + "0xF4CEC45FcdeDFafAa6bcB66736bBd332Ce43bA23", + [ + [ + "441066505168755", + "1365350" + ] + ] + ], + [ + "0xF4E3f1c01BD9A5398B92ac1B8bedb66ba4a2d627", + [ + [ + "309393672181716", + "71057739589" + ] + ] + ], + [ + "0xF50ABEF10CFcF99CdF69D52758799932933c3a80", + [ + [ + "152843036630621", + "101563373991" + ] + ] + ], + [ + "0xF57c5533a9037E25E5688726fbccD03E09738aCd", + [ + [ + "229538973689527", + "15075579651" + ] + ] + ], + [ + "0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3", + [ + [ + "648206553687311", + "5255036695" + ], + [ + "664521495218894", + "98010410066" + ] + ] + ], + [ + "0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2", + [ + [ + "5012592023922", + "2270047397215" + ], + [ + "421535049352728", + "4271250000000" + ] + ] + ], + [ + "0xf5f165910e11496C2d1B3D46319a5A07f09Bf2D9", + [ + [ + "250246936110653", + "202824840027" + ] + ] + ], + [ + "0xf62dC438Cd36b0E51DE92808382d040883f5A2d3", + [ + [ + "150179341169759", + "4322834053" + ] + ] + ], + [ + "0xf6Dd6A99A970d627A3F0D673cb162F0fe3D03251", + [ + [ + "402440039233181", + "33854411665" + ] + ] + ], + [ + "0xf6F46f437691b6C42cd92c91b1b7c251D6793222", + [ + [ + "680647231967700", + "28424235201" + ], + [ + "859627551039552", + "21971659696" + ] + ] + ], + [ + "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8", + [ + [ + "196717903939403", + "394944861804" + ], + [ + "209214314431171", + "364566745819" + ] + ] + ], + [ + "0xF6FE6b3f7792B0a3E3E92Fdbe42B381395C2BBd8", + [ + [ + "273508727277754", + "16963513569" + ] + ] + ], + [ + "0xf730c862ADFE955Be6a7612E092C123Ba89F50c6", + [ + [ + "886692316669791", + "264110000000" + ] + ] + ], + [ + "0xF75e363F695Eb259d00BFa90E2c2A35d3bFd585f", + [ + [ + "344699619094876", + "31013750000" + ] + ] + ], + [ + "0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765", + [ + [ + "219477505916790", + "88532212363" + ] + ] + ], + [ + "0xF7cCA800424e518728F88D7FC3B67Ed6dFa0693C", + [ + [ + "153695131131689", + "944058657" + ] + ] + ], + [ + "0xF7d48932f456e98d2FF824E38830E8F59De13f4A", + [ + [ + "32350896326307", + "22543240" + ] + ] + ], + [ + "0xF7f1dAEc57991db325a4d24Ca72E96a2EdF3683d", + [ + [ + "458538065317490", + "40401845392" + ] + ] + ], + [ + "0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC", + [ + [ + "490354466608", + "191849316" + ], + [ + "31578565099710", + "9142307692" + ], + [ + "31625104142782", + "17000000000" + ], + [ + "31642104142782", + "20450600000" + ], + [ + "31769412771032", + "3312089446" + ], + [ + "33272326017861", + "9375000000" + ], + [ + "33281701017861", + "5333791660" + ], + [ + "38714646644176", + "3867013493" + ], + [ + "56109979353281", + "5985714285" + ], + [ + "60354289907110", + "96687910554" + ], + [ + "60954776133602", + "27444310590" + ], + [ + "60982220444192", + "18658272727" + ], + [ + "67092358775027", + "4942857142" + ], + [ + "67600362435034", + "31250000000" + ], + [ + "67669112435034", + "13946070284" + ], + [ + "86243542562704", + "36209937463" + ], + [ + "86320328347150", + "35577140258" + ], + [ + "86949644512295", + "28347319166" + ], + [ + "87787065029620", + "60485714285" + ], + [ + "88861240955299", + "4057147250" + ], + [ + "106848349209466", + "24766754630" + ], + [ + "135796486416614", + "50000000000" + ], + [ + "148103260285591", + "22243015724" + ], + [ + "167679951258156", + "3226622831" + ], + [ + "190133176918073", + "258002454975" + ], + [ + "190391179373048", + "86804480075" + ], + [ + "191857875740431", + "43802016663" + ], + [ + "201787762635337", + "50046286217" + ], + [ + "204071711803219", + "37360929463" + ], + [ + "219666755709278", + "477438793550" + ], + [ + "229964010722177", + "200000000000" + ], + [ + "278661584207432", + "149346870320" + ], + [ + "279118417135852", + "92984020589" + ], + [ + "294456998585371", + "47251310108" + ], + [ + "294504249895479", + "47223612281" + ], + [ + "315337928069739", + "130000000000" + ], + [ + "738957888724280", + "72666479808" + ], + [ + "763613507351492", + "94393259501" + ], + [ + "763753988541255", + "38503952220" + ] + ] + ], + [ + "0xf80cDe9FBB874500E8932de19B374Ab473E7d207", + [ + [ + "209669674702233", + "97955793845" + ], + [ + "232909459110909", + "311484412382" + ], + [ + "236874338170704", + "37203015522" + ], + [ + "384562612976693", + "1281429108" + ], + [ + "385640679894087", + "1926839685" + ], + [ + "452088576565565", + "6452862364" + ] + ] + ], + [ + "0xF8444CF11708d3901Ee7B981b204eD0c7130fB93", + [ + [ + "224790015912932", + "793706626029" + ], + [ + "225583722538961", + "958053604507" + ], + [ + "226541776143468", + "624535957327" + ], + [ + "266139253735969", + "483993740256" + ], + [ + "307303030494588", + "1004761026937" + ] + ] + ], + [ + "0xF930b0A0500D8F53b2E7EFa4F7bCB5cc0c71067E", + [ + [ + "317432480867541", + "332338187664" + ] + ] + ], + [ + "0xf9380E9F90aDE257C8F23d53817b33FBbF975a19", + [ + [ + "533520636960361", + "29491962342" + ] + ] + ], + [ + "0xF96A38c599D458fDb4BB1Cd6d4f22c9851427c61", + [ + [ + "432833652491073", + "14210987162" + ] + ] + ], + [ + "0xf973554fbA6059F4aF0e362fcf48AB8497eC1d8f", + [ + [ + "342938950575971", + "4493174482" + ], + [ + "581093748820796", + "51435891210" + ] + ] + ], + [ + "0xFa0A637616BC13a47210B17DB8DD143aA9389334", + [ + [ + "319327451459267", + "60048376954" + ] + ] + ], + [ + "0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4", + [ + [ + "681721278895709", + "114463620514" + ] + ] + ], + [ + "0xFA2a3c48b85D6790B943F645Abf35A1E12770D09", + [ + [ + "73000545518997", + "61655978309" + ] + ] + ], + [ + "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d", + [ + [ + "18052621158047", + "133333333" + ], + [ + "741717126388455", + "508197502" + ], + [ + "741719421044592", + "971418862" + ], + [ + "768644380193949", + "5228000000" + ], + [ + "860285896625586", + "38098790184" + ] + ] + ], + [ + "0xfaAe91b5d3C0378eE245E120952b21736F382c59", + [ + [ + "636986863448653", + "222695155" + ], + [ + "647599780754020", + "204395631" + ], + [ + "647970706436153", + "7931925665" + ], + [ + "648027915510254", + "6669928049" + ], + [ + "648407651642033", + "8650962388" + ] + ] + ], + [ + "0xFaE9C276d513E6dC5060BB9bE5111c3124C4376c", + [ + [ + "315756870466407", + "447000000000" + ] + ] + ], + [ + "0xFb00Fab6af5a0aCD8718557D34B52828Ae128D34", + [ + [ + "213125875187098", + "7250636499" + ], + [ + "217619026720167", + "275068216954" + ], + [ + "256721448864723", + "266618306956" + ], + [ + "268959523134478", + "1466041464745" + ] + ] + ], + [ + "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef", + [ + [ + "76202249214022", + "8000000000" + ], + [ + "644415322342082", + "6773000000" + ], + [ + "657971448171764", + "15036330875" + ], + [ + "740648921884436", + "39104687507" + ] + ] + ], + [ + "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", + [ + [ + "41273044931817", + "1293137085" + ], + [ + "41285561629320", + "5129256854" + ], + [ + "72535874823847", + "499051430" + ], + [ + "87049010845698", + "2000000000" + ], + [ + "153770763009441", + "1862917241" + ], + [ + "376471998148891", + "5663243298" + ] + ] + ], + [ + "0xfb9f3c5E44f15467066bCCF47026f2E2773bd3F0", + [ + [ + "768565015750227", + "146528659" + ] + ] + ], + [ + "0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55", + [ + [ + "646638892866343", + "4515416932" + ] + ] + ], + [ + "0xFbDaA991B6C4e66581CFB0B11B513CA735cC0128", + [ + [ + "586639472056443", + "7161118438" + ] + ] + ], + [ + "0xfc22875F01ffeD27d6477983626E369844ff954C", + [ + [ + "646720366775027", + "9148374808" + ], + [ + "648624797389901", + "4744706233" + ], + [ + "648659614900998", + "10237860605" + ], + [ + "661556790714494", + "65999469411" + ] + ] + ], + [ + "0xFc748762F301229bCeA219B584Fdf8423D8060A1", + [ + [ + "86520188482120", + "37794333837" + ], + [ + "159916759048243", + "136363636363" + ], + [ + "169373956828622", + "24754681144" + ], + [ + "322772282088410", + "21402877801" + ], + [ + "338831309201661", + "78790376700" + ], + [ + "341580809146462", + "55060000000" + ], + [ + "676534805838691", + "1140222794" + ], + [ + "676538230280631", + "3467786587" + ] + ] + ], + [ + "0xfCA811318D6A0a118a7C79047D302E5B892bC723", + [ + [ + "347290967298717", + "129954995754" + ], + [ + "365384138540345", + "38482129867" + ], + [ + "498200397656600", + "35915488411" + ], + [ + "533057711814824", + "4109469597" + ], + [ + "535105031193815", + "3374944845" + ], + [ + "635918786935329", + "5575795077" + ], + [ + "636054133722019", + "5609262356" + ], + [ + "636289581473963", + "1568803759" + ], + [ + "636294852236013", + "1922612548" + ], + [ + "636296774848561", + "6349832412" + ], + [ + "636797022129909", + "2703848605" + ], + [ + "636964373009102", + "3681809550" + ], + [ + "636968054818652", + "4196702182" + ], + [ + "636972251520834", + "8949086569" + ], + [ + "638951512037019", + "507888377" + ], + [ + "639632349897239", + "14697397837" + ] + ] + ], + [ + "0xfcBa05D5556b6A450209A4c9E2fe9a259C84d50F", + [ + [ + "32204191499710", + "142680000000" + ], + [ + "142291870862196", + "862960981345" + ], + [ + "470282561625193", + "9000000000" + ] + ] + ], + [ + "0xfD67bbb8b3980801e28b8D9c49fd9d1eA487087B", + [ + [ + "310780477239724", + "5151851478" + ], + [ + "310817343467634", + "616256912" + ] + ] + ], + [ + "0xFD7998c9c23aa865590fd3405F19c23423a0611B", + [ + [ + "237331358858149", + "86400000000" + ] + ] + ], + [ + "0xFE09f953E10f3e6A9d22710cb6f743e4142321bd", + [ + [ + "76519455042314", + "1472246877185" + ], + [ + "432847863478235", + "4222900000000" + ], + [ + "595229820320334", + "19616450000" + ] + ] + ], + [ + "0xFe1640549e9D79fE9ba298C8d165D3eD3ABFa951", + [ + [ + "525742172189925", + "10705853858" + ], + [ + "529935255647800", + "12874530667" + ] + ] + ], + [ + "0xFe2da4E7e3675b00BE2Ff58c6a018Ed06237C81D", + [ + [ + "234243469443007", + "14172600137" + ] + ] + ], + [ + "0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7", + [ + [ + "74255506861536", + "747968437372" + ], + [ + "206442505715493", + "792399558214" + ], + [ + "346860555818338", + "119936449695" + ], + [ + "402246432786659", + "39496248802" + ], + [ + "403199254255527", + "13423206781" + ], + [ + "764438946829295", + "9576969494" + ] + ] + ], + [ + "0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f", + [ + [ + "860248248157181", + "1908656103" + ] + ] + ], + [ + "0xfEc2248956179BF6965865440328D73bAC4eB6D2", + [ + [ + "12790931192343", + "100570354799" + ], + [ + "27704142968432", + "106291676890" + ], + [ + "73815488466054", + "100398170413" + ], + [ + "292139050434739", + "121744107111" + ], + [ + "520954294941796", + "86620734894" + ], + [ + "635537122576119", + "25825982143" + ], + [ + "635688290658262", + "24104250000" + ], + [ + "782622885225793", + "57770720876" + ], + [ + "783376766574145", + "50190000000" + ], + [ + "789480601665705", + "75944000000" + ], + [ + "808701830660540", + "106624000000" + ] + ] + ], + [ + "0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943", + [ + [ + "385610057315670", + "1659614846" + ], + [ + "385628710250516", + "1695400673" + ] + ] + ], + [ + "0xFf4A6b6F1016695551355737d4F1236141ec018D", + [ + [ + "214537269214618", + "22947230644" + ], + [ + "214926241229465", + "22806010929" + ] + ] + ], + [ + "0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7", + [ + [ + "325768566324818", + "46665442490" + ] + ] + ], + [ + "0xfF961eD9c48FBEbDEf48542432D21efA546ddb89", [ - ["206627322508711", "42841247573"], - ["206670163756284", "42783848059"] + [ + "217366504751726", + "15360801728" + ], + [ + "637169481337437", + "33939057545" + ], + [ + "738901635680616", + "56253043664" + ], + [ + "782680655946669", + "15054264772" + ], + [ + "801793742639869", + "594211870964" + ], + [ + "861695221796542", + "871141743752" + ], + [ + "867596033602708", + "317487796774" + ], + [ + "887817858413331", + "60074607071" + ], + [ + "911544295653682", + "137555494670" + ], + [ + "918618917946000", + "264745198412" + ] ] ] -] +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/exports/beanstalk_barn.json b/scripts/beanstalkShipments/data/exports/beanstalk_barn.json new file mode 100644 index 00000000..6703e9bd --- /dev/null +++ b/scripts/beanstalkShipments/data/exports/beanstalk_barn.json @@ -0,0 +1,6901 @@ +{ + "beanBpf": "340802", + "adjustedBpf": "0", + "arbEOAs": { + "0xBd120e919eb05343DbA68863f2f8468bd7010163": { + "beanFert": { + "1334303": "161", + "2412881": "196", + "2891153": "324", + "3343293": "1764", + "3471339": "11619", + "6000000": "99988" + }, + "adjustedFert": { + "993501": "161", + "2072079": "196", + "2550351": "324", + "3002491": "1764", + "3130537": "11619", + "5659198": "99988" + } + }, + "0x5f5ad340348Cd7B1d8FABE62c7afE2E32d2dE359": { + "beanFert": { + "1334925": "112" + }, + "adjustedFert": { + "994123": "112" + } + }, + "0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73": { + "beanFert": { + "1334901": "500" + }, + "adjustedFert": { + "994099": "500" + } + }, + "0x3fc4310bf2eBae51BaC956dd60A81803A3f89188": { + "beanFert": { + "1334925": "335", + "6000000": "948" + }, + "adjustedFert": { + "994123": "335", + "5659198": "948" + } + }, + "0xa5D0084A766203b463b3164DFc49D91509C12daB": { + "beanFert": { + "1335008": "50" + }, + "adjustedFert": { + "994206": "50" + } + }, + "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B": { + "beanFert": { + "1335068": "499" + }, + "adjustedFert": { + "994266": "499" + } + }, + "0x87263a1AC2C342a516989124D0dBA63DF6D0E790": { + "beanFert": { + "1334925": "59", + "6000000": "533" + }, + "adjustedFert": { + "994123": "59", + "5659198": "533" + } + }, + "0x82Ff15f5de70250a96FC07a0E831D3e391e47c48": { + "beanFert": { + "1335304": "73" + }, + "adjustedFert": { + "994502": "73" + } + }, + "0x5090FeC124C090ca25179A996878A4Cd90147A1d": { + "beanFert": { + "1334925": "41" + }, + "adjustedFert": { + "994123": "41" + } + }, + "0x97b60488997482C29748d6f4EdC8665AF4A131B5": { + "beanFert": { + "1334880": "128" + }, + "adjustedFert": { + "994078": "128" + } + }, + "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2": { + "beanFert": { + "1334925": "394" + }, + "adjustedFert": { + "994123": "394" + } + }, + "0xCF0dCc80F6e15604E258138cca455A040ecb4605": { + "beanFert": { + "1338731": "116", + "6000000": "108" + }, + "adjustedFert": { + "997929": "116", + "5659198": "108" + } + }, + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA": { + "beanFert": { + "2871153": "652", + "6000000": "19732" + }, + "adjustedFert": { + "2530351": "652", + "5659198": "19732" + } + }, + "0xa5b200B10fd9897142dC2dd14708EFdF090A1b4d": { + "beanFert": { + "2871153": "585" + }, + "adjustedFert": { + "2530351": "585" + } + }, + "0x68e41BDD608fC5eE054615CF2D9d079f9e99c483": { + "beanFert": { + "2891153": "422", + "3467650": "1002", + "6000000": "9982" + }, + "adjustedFert": { + "2550351": "422", + "3126848": "1002", + "5659198": "9982" + } + }, + "0x6343B307C288432BB9AD9003B4230B08B56b3b82": { + "beanFert": { + "2901153": "284", + "6000000": "2168" + }, + "adjustedFert": { + "2560351": "284", + "5659198": "2168" + } + }, + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254": { + "beanFert": { + "2921113": "1500", + "3446568": "392", + "3470220": "443", + "6000000": "7240" + }, + "adjustedFert": { + "2580311": "1500", + "3105766": "392", + "3129418": "443", + "5659198": "7240" + } + }, + "0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B": { + "beanFert": { + "2767422": "597" + }, + "adjustedFert": { + "2426620": "597" + } + }, + "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c": { + "beanFert": { + "2452755": "130", + "6000000": "125" + }, + "adjustedFert": { + "2111953": "130", + "5659198": "125" + } + }, + "0x87546FA086F625961A900Dbfa953662449644492": { + "beanFert": { + "2886153": "423" + }, + "adjustedFert": { + "2545351": "423" + } + }, + "0x48e39dfd0450601Cb29F74cb43FC913A57FCA813": { + "beanFert": { + "2078193": "844" + }, + "adjustedFert": { + "1737391": "844" + } + }, + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56": { + "beanFert": { + "2811995": "45", + "6000000": "641" + }, + "adjustedFert": { + "2471193": "45", + "5659198": "641" + } + }, + "0x710B5BB4552f20524232ae3e2467a6dC74b21982": { + "beanFert": { + "1336323": "78" + }, + "adjustedFert": { + "995521": "78" + } + }, + "0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B": { + "beanFert": { + "1348369": "315" + }, + "adjustedFert": { + "1007567": "315" + } + }, + "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f": { + "beanFert": { + "1348369": "9" + }, + "adjustedFert": { + "1007567": "9" + } + }, + "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49": { + "beanFert": { + "2945769": "101", + "6000000": "793" + }, + "adjustedFert": { + "2604967": "101", + "5659198": "793" + } + }, + "0x971b4a65048319cc9843DfdBDC8Aa97AD47Ef19d": { + "beanFert": { + "1593637": "260" + }, + "adjustedFert": { + "1252835": "260" + } + }, + "0xF7d48932f456e98d2FF824E38830E8F59De13f4A": { + "beanFert": { + "2313052": "912", + "2502666": "20" + }, + "adjustedFert": { + "1972250": "912", + "2161864": "20" + } + }, + "0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458": { + "beanFert": { + "3005557": "283" + }, + "adjustedFert": { + "2664755": "283" + } + }, + "0x597D01CdfDC7ad72c19B562A18b2e31E41B67991": { + "beanFert": { + "2482696": "1000" + }, + "adjustedFert": { + "2141894": "1000" + } + }, + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85": { + "beanFert": { + "1348369": "1", + "2702430": "1" + }, + "adjustedFert": { + "1007567": "1", + "2361628": "1" + } + }, + "0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab": { + "beanFert": { + "1363641": "499" + }, + "adjustedFert": { + "1022839": "499" + } + }, + "0xC9F817EA7aABE604F5677bf9C1339e32Ef1B90F0": { + "beanFert": { + "1553682": "10" + }, + "adjustedFert": { + "1212880": "10" + } + }, + "0x46387563927595f5ef11952f74DcC2Ce2E871E73": { + "beanFert": { + "1348369": "9" + }, + "adjustedFert": { + "1007567": "9" + } + }, + "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1": { + "beanFert": { + "2975557": "342", + "6000000": "127" + }, + "adjustedFert": { + "2634755": "342", + "5659198": "127" + } + }, + "0x5c0ed0a799c7025D3C9F10c561249A996502a62F": { + "beanFert": { + "1348369": "299" + }, + "adjustedFert": { + "1007567": "299" + } + }, + "0x5a57711B103c6039eaddC160B94c932d499c6736": { + "beanFert": { + "2687438": "51", + "6000000": "391" + }, + "adjustedFert": { + "2346636": "51", + "5659198": "391" + } + }, + "0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1": { + "beanFert": { + "2373025": "2236" + }, + "adjustedFert": { + "2032223": "2236" + } + }, + "0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40": { + "beanFert": { + "1363069": "323" + }, + "adjustedFert": { + "1022267": "323" + } + }, + "0x4A337d1dF22d0D3077CaEFd083A1b70AA168d087": { + "beanFert": { + "2382999": "578" + }, + "adjustedFert": { + "2042197": "578" + } + }, + "0x44E836EbFEF431e57442037b819B23fd29bc3B69": { + "beanFert": { + "2955590": "500", + "3485472": "500" + }, + "adjustedFert": { + "2614788": "500", + "3144670": "500" + } + }, + "0xC5581F1aE61E34391824779D505Ca127a4566737": { + "beanFert": { + "1348369": "170", + "2492679": "65" + }, + "adjustedFert": { + "1007567": "170", + "2151877": "65" + } + }, + "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b": { + "beanFert": { + "1337953": "39" + }, + "adjustedFert": { + "997151": "39" + } + }, + "0x6D4ed8a1599DEe2655D51B245f786293E03d58f7": { + "beanFert": { + "1418854": "50" + }, + "adjustedFert": { + "1078052": "50" + } + }, + "0x507165FF0417126930D7F79163961DE8Ff19c8b8": { + "beanFert": { + "3045431": "955" + }, + "adjustedFert": { + "2704629": "955" + } + }, + "0x995D1e4e2807Ef2A8d7614B607A89be096313916": { + "beanFert": { + "3095329": "451", + "3413005": "246", + "3439448": "2071", + "3441470": "53", + "3445713": "50", + "3452735": "3555", + "3458512": "301", + "3458531": "251", + "3471339": "171", + "6000000": "5224" + }, + "adjustedFert": { + "2754527": "451", + "3072203": "246", + "3098646": "2071", + "3100668": "53", + "3104911": "50", + "3111933": "3555", + "3117710": "301", + "3117729": "251", + "3130537": "171", + "5659198": "5224" + } + }, + "0x3800645f556ee583E20D6491c3a60E9c32744376": { + "beanFert": { + "3015555": "997" + }, + "adjustedFert": { + "2674753": "997" + } + }, + "0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c": { + "beanFert": { + "3060408": "564" + }, + "adjustedFert": { + "2719606": "564" + } + }, + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507": { + "beanFert": { + "3125329": "332", + "3470220": "1056", + "6000000": "10000" + }, + "adjustedFert": { + "2784527": "332", + "3129418": "1056", + "5659198": "10000" + } + }, + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e": { + "beanFert": { + "3130329": "1918", + "3308426": "1385", + "3418005": "712", + "3445713": "635", + "3447839": "4401", + "3458512": "11695", + "3462428": "526", + "3463060": "2266", + "3465205": "1728", + "3466192": "1431", + "3467650": "1808", + "3470075": "890", + "3471339": "5543", + "3480951": "3185", + "6000000": "200000" + }, + "adjustedFert": { + "2789527": "1918", + "2967624": "1385", + "3077203": "712", + "3104911": "635", + "3107037": "4401", + "3117710": "11695", + "3121626": "526", + "3122258": "2266", + "3124403": "1728", + "3125390": "1431", + "3126848": "1808", + "3129273": "890", + "3130537": "5543", + "3140149": "3185", + "5659198": "200000" + } + }, + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45": { + "beanFert": { + "3125329": "5006", + "6000000": "4124" + }, + "adjustedFert": { + "2784527": "5006", + "5659198": "4124" + } + }, + "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe": { + "beanFert": { + "3164439": "606", + "6000000": "4735" + }, + "adjustedFert": { + "2823637": "606", + "5659198": "4735" + } + }, + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F": { + "beanFert": { + "3223426": "1240", + "3465205": "1828", + "6000000": "22547" + }, + "adjustedFert": { + "2882624": "1240", + "3124403": "1828", + "5659198": "22547" + } + }, + "0x394c357DB3177E33Bde63F259F0EB2c04A46827c": { + "beanFert": { + "3268426": "1740", + "3457989": "902", + "3470220": "664" + }, + "adjustedFert": { + "2927624": "1740", + "3117187": "902", + "3129418": "664" + } + }, + "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb": { + "beanFert": { + "3278426": "2540", + "6000000": "20059" + }, + "adjustedFert": { + "2937624": "2540", + "5659198": "20059" + } + }, + "0x679B4172E1698579d562D1d8b4774968305b80b2": { + "beanFert": { + "3293426": "2000", + "3452316": "134", + "6000000": "2017" + }, + "adjustedFert": { + "2952624": "2000", + "3111514": "134", + "5659198": "2017" + } + }, + "0x63a7255C515041fD243440e3db0D10f62f9936ae": { + "beanFert": { + "3268426": "500" + }, + "adjustedFert": { + "2927624": "500" + } + }, + "0x02aA96e8d266Cee1411bB2ADB4D09066f2e94489": { + "beanFert": { + "3268426": "800" + }, + "adjustedFert": { + "2927624": "800" + } + }, + "0xaf28E2A58Ef2D6d88fb4cDC28F380908BaDE162b": { + "beanFert": { + "3293426": "1020", + "3423005": "1807", + "3428005": "2183", + "3446568": "1856" + }, + "adjustedFert": { + "2952624": "1020", + "3082203": "1807", + "3087203": "2183", + "3105766": "1856" + } + }, + "0xD6626eA482D804DDd83C6824284766f73A45D734": { + "beanFert": { + "3328426": "5000" + }, + "adjustedFert": { + "2987624": "5000" + } + }, + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6": { + "beanFert": { + "3313426": "1395", + "3472026": "1508" + }, + "adjustedFert": { + "2972624": "1395", + "3131224": "1508" + } + }, + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655": { + "beanFert": { + "3328426": "294", + "3465205": "463", + "6000000": "5450" + }, + "adjustedFert": { + "2987624": "294", + "3124403": "463", + "5659198": "5450" + } + }, + "0xDf29Ee8F6D1b407808Eb0270f5b128DC28303684": { + "beanFert": { + "3338293": "176", + "6000000": "1250" + }, + "adjustedFert": { + "2997491": "176", + "5659198": "1250" + } + }, + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732": { + "beanFert": { + "3303426": "97" + }, + "adjustedFert": { + "2962624": "97" + } + }, + "0x52d3aBa582A24eeB9c1210D83EC312487815f405": { + "beanFert": { + "3393052": "399", + "3418005": "259", + "3439448": "14779", + "3446568": "2391", + "3450159": "320", + "3452316": "1571", + "3452735": "16090", + "3455539": "264", + "3461694": "664", + "3463060": "1883", + "3465087": "95", + "3467650": "1854", + "3470220": "2090", + "3471339": "1018", + "3472026": "522", + "3480951": "1198", + "6000000": "27888" + }, + "adjustedFert": { + "3052250": "399", + "3077203": "259", + "3098646": "14779", + "3105766": "2391", + "3109357": "320", + "3111514": "1571", + "3111933": "16090", + "3114737": "264", + "3120892": "664", + "3122258": "1883", + "3124285": "95", + "3126848": "1854", + "3129418": "2090", + "3130537": "1018", + "3131224": "522", + "3140149": "1198", + "5659198": "27888" + } + }, + "0xa3d63491abf28803116569058A263B1A407e66Fb": { + "beanFert": { + "3383071": "337" + }, + "adjustedFert": { + "3042269": "337" + } + }, + "0x5656cB4721C21E1F5DCbe03Db9026ac0203d6e4f": { + "beanFert": { + "3363293": "256", + "6000000": "2000" + }, + "adjustedFert": { + "3022491": "256", + "5659198": "2000" + } + }, + "0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd": { + "beanFert": { + "3413005": "960", + "3423005": "3677", + "6000000": "10053" + }, + "adjustedFert": { + "3072203": "960", + "3082203": "3677", + "5659198": "10053" + } + }, + "0xb78003FCB54444E289969154A27Ca3106B3f41f6": { + "beanFert": { + "3413005": "129", + "6000000": "1295" + }, + "adjustedFert": { + "3072203": "129", + "5659198": "1295" + } + }, + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584": { + "beanFert": { + "3413005": "2646", + "3458512": "628", + "3462428": "508", + "6000000": "7945" + }, + "adjustedFert": { + "3072203": "2646", + "3117710": "628", + "3121626": "508", + "5659198": "7945" + } + }, + "0xC38f042ae8C77f110c33eabfAA5Ed28861760Ac6": { + "beanFert": { + "3413005": "500" + }, + "adjustedFert": { + "3072203": "500" + } + }, + "0x58e4e9D30Da309624c785069A99709b16276B196": { + "beanFert": { + "3413005": "3534", + "3472026": "1000" + }, + "adjustedFert": { + "3072203": "3534", + "3131224": "1000" + } + }, + "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3": { + "beanFert": { + "3398029": "476" + }, + "adjustedFert": { + "3057227": "476" + } + }, + "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF": { + "beanFert": { + "3413005": "1095", + "6000000": "1006" + }, + "adjustedFert": { + "3072203": "1095", + "5659198": "1006" + } + }, + "0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1": { + "beanFert": { + "3423005": "30215", + "3428005": "305", + "3452735": "1078", + "3461694": "1187", + "6000000": "166667" + }, + "adjustedFert": { + "3082203": "30215", + "3087203": "305", + "3111933": "1078", + "3120892": "1187", + "5659198": "166667" + } + }, + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e": { + "beanFert": { + "3428005": "946", + "3463060": "1487", + "6000000": "17500" + }, + "adjustedFert": { + "3087203": "946", + "3122258": "1487", + "5659198": "17500" + } + }, + "0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb": { + "beanFert": { + "3423005": "16725", + "6000000": "111000" + }, + "adjustedFert": { + "3082203": "16725", + "5659198": "111000" + } + }, + "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5": { + "beanFert": { + "3433005": "26" + }, + "adjustedFert": { + "3092203": "26" + } + }, + "0x4a52078E4706884fc899b2Df902c4D2d852BF527": { + "beanFert": { + "3423005": "1670" + }, + "adjustedFert": { + "3082203": "1670" + } + }, + "0x1C4E440e9f9069427d11bB1bD73e57458eeA9577": { + "beanFert": { + "3438005": "1321", + "3463060": "1598" + }, + "adjustedFert": { + "3097203": "1321", + "3122258": "1598" + } + }, + "0x43b79f1E529330F1568e8741F1C04107db25EB28": { + "beanFert": { + "3418005": "500" + }, + "adjustedFert": { + "3077203": "500" + } + }, + "0xb7AdcE9Fa8bc98137247f9b606D89De76eA8aACc": { + "beanFert": { + "3438005": "1000" + }, + "adjustedFert": { + "3097203": "1000" + } + }, + "0x4330C25C858040aDbda9e05744Fa3ADF9A35664F": { + "beanFert": { + "3433005": "500" + }, + "adjustedFert": { + "3092203": "500" + } + }, + "0x487175f921A713d8E67a95BCDD75139C35a7d838": { + "beanFert": { + "3438005": "25" + }, + "adjustedFert": { + "3097203": "25" + } + }, + "0x3C43674dfa916d791614827a50353fe65227B7f3": { + "beanFert": { + "3439448": "492", + "6000000": "14760" + }, + "adjustedFert": { + "3098646": "492", + "5659198": "14760" + } + }, + "0xC89A6f24b352d35e783ae7C330462A3f44242E89": { + "beanFert": { + "3439448": "603", + "3465205": "1216", + "6000000": "19458" + }, + "adjustedFert": { + "3098646": "603", + "3124403": "1216", + "5659198": "19458" + } + }, + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430": { + "beanFert": { + "3439448": "3688", + "3443005": "685", + "3445713": "20000", + "3458512": "30954", + "3467650": "1435", + "3470220": "2479", + "6000000": "206" + }, + "adjustedFert": { + "3098646": "3688", + "3102203": "685", + "3104911": "20000", + "3117710": "30954", + "3126848": "1435", + "3129418": "2479", + "5659198": "206" + } + }, + "0x08Bf22fB93892583a815C598502b9B0a88124DAD": { + "beanFert": { + "3439448": "929", + "3462428": "2805", + "6000000": "27859" + }, + "adjustedFert": { + "3098646": "929", + "3121626": "2805", + "5659198": "27859" + } + }, + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6": { + "beanFert": { + "3441470": "182", + "3441822": "256", + "3445713": "3170", + "3446568": "244", + "3452316": "1936", + "3458512": "309", + "3463060": "3733", + "3467650": "3273", + "3471974": "248", + "6000000": "18000" + }, + "adjustedFert": { + "3100668": "182", + "3101020": "256", + "3104911": "3170", + "3105766": "244", + "3111514": "1936", + "3117710": "309", + "3122258": "3733", + "3126848": "3273", + "3131172": "248", + "5659198": "18000" + } + }, + "0x51AAD11e5A5Bd05B3409358853D0D6A66aa60c40": { + "beanFert": { + "3439448": "4", + "6000000": "10" + }, + "adjustedFert": { + "3098646": "4", + "5659198": "10" + } + }, + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57": { + "beanFert": { + "3441470": "220", + "3443005": "253", + "3452316": "230", + "3467650": "290", + "3471974": "209", + "6000000": "5973" + }, + "adjustedFert": { + "3100668": "220", + "3102203": "253", + "3111514": "230", + "3126848": "290", + "3131172": "209", + "5659198": "5973" + } + }, + "0xb47959506850b9b34A8f345179eD1C932aaA8bFa": { + "beanFert": { + "3439448": "1968" + }, + "adjustedFert": { + "3098646": "1968" + } + }, + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d": { + "beanFert": { + "3439448": "4274", + "3470220": "338" + }, + "adjustedFert": { + "3098646": "4274", + "3129418": "338" + } + }, + "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2": { + "beanFert": { + "3441470": "1000", + "3458512": "7000", + "3462428": "439", + "3465205": "373", + "6000000": "1988" + }, + "adjustedFert": { + "3100668": "1000", + "3117710": "7000", + "3121626": "439", + "3124403": "373", + "5659198": "1988" + } + }, + "0x96D48b045C9F825f2999C533Ad56B6B0fCa91F92": { + "beanFert": { + "3441470": "1681", + "3443526": "16" + }, + "adjustedFert": { + "3100668": "1681", + "3102724": "16" + } + }, + "0x840fe9Ce619cfAA1BE9e99C73F2A0eCbAb99f688": { + "beanFert": { + "3441470": "16784" + }, + "adjustedFert": { + "3100668": "16784" + } + }, + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7": { + "beanFert": { + "3441822": "158", + "3450159": "102", + "3452316": "157", + "3457989": "114", + "3463060": "152", + "3472026": "244", + "6000000": "6378" + }, + "adjustedFert": { + "3101020": "158", + "3109357": "102", + "3111514": "157", + "3117187": "114", + "3122258": "152", + "3131224": "244", + "5659198": "6378" + } + }, + "0xD6ff57479699e3F93fFd68295F3257f7C07E983e": { + "beanFert": { + "3441822": "576", + "6000000": "25327" + }, + "adjustedFert": { + "3101020": "576", + "5659198": "25327" + } + }, + "0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333": { + "beanFert": { + "3441470": "1676" + }, + "adjustedFert": { + "3100668": "1676" + } + }, + "0xE84c01208c4868d5615FCCf0b98f8c90f460d2b6": { + "beanFert": { + "3441822": "310", + "3458512": "285", + "3472520": "2500", + "3485472": "5000" + }, + "adjustedFert": { + "3101020": "310", + "3117710": "285", + "3131718": "2500", + "3144670": "5000" + } + }, + "0xC1A9BC22CC31AB64A78421bEFa10c359A1417ce3": { + "beanFert": { + "3441822": "70000", + "3445713": "100000", + "3450159": "30000" + }, + "adjustedFert": { + "3101020": "70000", + "3104911": "100000", + "3109357": "30000" + } + }, + "0x3822bBBd588fE86964c7751d6c6a6Bd010927307": { + "beanFert": { + "3441822": "2000", + "3465087": "1537" + }, + "adjustedFert": { + "3101020": "2000", + "3124285": "1537" + } + }, + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E": { + "beanFert": { + "3443005": "8500", + "3467650": "612", + "3476597": "857", + "6000000": "3000" + }, + "adjustedFert": { + "3102203": "8500", + "3126848": "612", + "3135795": "857", + "5659198": "3000" + } + }, + "0xcb89e2300E22Ec273F39e69E79E468723ad65158": { + "beanFert": { + "3443005": "342" + }, + "adjustedFert": { + "3102203": "342" + } + }, + "0x030ae585DB6d5169B3594eC37c008662f2494a1D": { + "beanFert": { + "3443005": "3000", + "3468402": "1000" + }, + "adjustedFert": { + "3102203": "3000", + "3127600": "1000" + } + }, + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3": { + "beanFert": { + "3445713": "2000", + "3452989": "266", + "3467650": "546", + "6000000": "5000" + }, + "adjustedFert": { + "3104911": "2000", + "3112187": "266", + "3126848": "546", + "5659198": "5000" + } + }, + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b": { + "beanFert": { + "3445713": "530", + "3446568": "810", + "3463060": "1026", + "6000000": "10003" + }, + "adjustedFert": { + "3104911": "530", + "3105766": "810", + "3122258": "1026", + "5659198": "10003" + } + }, + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0": { + "beanFert": { + "3445713": "1506", + "3452735": "1", + "3468402": "980", + "3490157": "1000", + "6000000": "1077" + }, + "adjustedFert": { + "3104911": "1506", + "3111933": "1", + "3127600": "980", + "3149355": "1000", + "5659198": "1077" + } + }, + "0x264c1cBEC44F201d0eBe67b269D16B3edc909C61": { + "beanFert": { + "3443526": "106", + "3452735": "124", + "3465205": "633", + "3471974": "231", + "6000000": "9207" + }, + "adjustedFert": { + "3102724": "106", + "3111933": "124", + "3124403": "633", + "3131172": "231", + "5659198": "9207" + } + }, + "0xDFe18DE4852AB020FC82502dcE862B1F4206C587": { + "beanFert": { + "3443526": "200" + }, + "adjustedFert": { + "3102724": "200" + } + }, + "0x17757B0252c84341E243Ff49EEf8729eFa32f5De": { + "beanFert": { + "3445713": "900", + "3446568": "1000", + "3447839": "100" + }, + "adjustedFert": { + "3104911": "900", + "3105766": "1000", + "3107037": "100" + } + }, + "0x85806019a442224D6345a1c2eD597d8a5DCE1F2B": { + "beanFert": { + "3445713": "500", + "6000000": "1000" + }, + "adjustedFert": { + "3104911": "500", + "5659198": "1000" + } + }, + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F": { + "beanFert": { + "3443526": "572", + "3458512": "3138" + }, + "adjustedFert": { + "3102724": "572", + "3117710": "3138" + } + }, + "0xF73FE15cFB88ea3C7f301F16adE3c02564ACa407": { + "beanFert": { + "3445713": "100" + }, + "adjustedFert": { + "3104911": "100" + } + }, + "0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e": { + "beanFert": { + "3446568": "1353", + "3452316": "329", + "3467650": "1554", + "3471339": "693", + "6000000": "25000" + }, + "adjustedFert": { + "3105766": "1353", + "3111514": "329", + "3126848": "1554", + "3130537": "693", + "5659198": "25000" + } + }, + "0x55179ffEFc2d49daB14BA15D25fb023408450409": { + "beanFert": { + "3446568": "2316", + "3468402": "4626", + "6000000": "116323" + }, + "adjustedFert": { + "3105766": "2316", + "3127600": "4626", + "5659198": "116323" + } + }, + "0x69b03bFC650B8174f5887B2320338b6c29150bCE": { + "beanFert": { + "3445713": "502", + "3463060": "1000" + }, + "adjustedFert": { + "3104911": "502", + "3122258": "1000" + } + }, + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F": { + "beanFert": { + "3446568": "513", + "3452316": "3238", + "6000000": "9492" + }, + "adjustedFert": { + "3105766": "513", + "3111514": "3238", + "5659198": "9492" + } + }, + "0x297751960DAD09c6d38b73538C1cce45457d796d": { + "beanFert": { + "3446568": "46", + "3452316": "52", + "3463060": "314", + "3466192": "1997", + "3468402": "994", + "3472026": "91", + "6000000": "4122" + }, + "adjustedFert": { + "3105766": "46", + "3111514": "52", + "3122258": "314", + "3125390": "1997", + "3127600": "994", + "3131224": "91", + "5659198": "4122" + } + }, + "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D": { + "beanFert": { + "3446568": "108", + "3462428": "118", + "3467650": "202", + "3472026": "329", + "6000000": "2009" + }, + "adjustedFert": { + "3105766": "108", + "3121626": "118", + "3126848": "202", + "3131224": "329", + "5659198": "2009" + } + }, + "0x88F667664E61221160ddc0414868eF2f40e83324": { + "beanFert": { + "3446568": "987", + "3452735": "2000", + "3500000": "1000" + }, + "adjustedFert": { + "3105766": "987", + "3111933": "2000", + "3159198": "1000" + } + }, + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7": { + "beanFert": { + "3447839": "299", + "3468402": "1567", + "6000000": "5000" + }, + "adjustedFert": { + "3107037": "299", + "3127600": "1567", + "5659198": "5000" + } + }, + "0x66C19e3612efa7b18C18ee4D75A8aaE1d7902225": { + "beanFert": { + "3446568": "1438" + }, + "adjustedFert": { + "3105766": "1438" + } + }, + "0xb871eE8C6b280463068627502c36b33CC79cc8d3": { + "beanFert": { + "3446568": "416", + "3457989": "196" + }, + "adjustedFert": { + "3105766": "416", + "3117187": "196" + } + }, + "0xf6F46f437691b6C42cd92c91b1b7c251D6793222": { + "beanFert": { + "3446568": "30122", + "3452316": "376", + "3463060": "688" + }, + "adjustedFert": { + "3105766": "30122", + "3111514": "376", + "3122258": "688" + } + }, + "0x09C88F29A308646204D11383c6139d9C93eFb6b8": { + "beanFert": { + "3446568": "400", + "3461694": "350" + }, + "adjustedFert": { + "3105766": "400", + "3120892": "350" + } + }, + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51": { + "beanFert": { + "3446568": "108", + "3470220": "119", + "6000000": "1999" + }, + "adjustedFert": { + "3105766": "108", + "3129418": "119", + "5659198": "1999" + } + }, + "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27": { + "beanFert": { + "3447839": "993", + "6000000": "1101" + }, + "adjustedFert": { + "3107037": "993", + "5659198": "1101" + } + }, + "0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8": { + "beanFert": { + "3447839": "88888" + }, + "adjustedFert": { + "3107037": "88888" + } + }, + "0xc6302894cd030601D5E1F65c8F504C83D5361279": { + "beanFert": { + "3447839": "1250", + "6000000": "5000" + }, + "adjustedFert": { + "3107037": "1250", + "5659198": "5000" + } + }, + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0": { + "beanFert": { + "3447990": "599", + "3485472": "5127", + "6000000": "6872" + }, + "adjustedFert": { + "3107188": "599", + "3144670": "5127", + "5659198": "6872" + } + }, + "0x4Ab209010345978254F1757a88cAc93CD19987a8": { + "beanFert": { + "3447990": "131", + "3452735": "1", + "3462428": "1", + "3495000": "2", + "6000000": "1033" + }, + "adjustedFert": { + "3107188": "131", + "3111933": "1", + "3121626": "1", + "3154198": "2", + "5659198": "1033" + } + }, + "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d": { + "beanFert": { + "3447990": "6825", + "6000000": "60200" + }, + "adjustedFert": { + "3107188": "6825", + "5659198": "60200" + } + }, + "0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408": { + "beanFert": { + "3446568": "3329" + }, + "adjustedFert": { + "3105766": "3329" + } + }, + "0xFc748762F301229bCeA219B584Fdf8423D8060A1": { + "beanFert": { + "3450159": "1678", + "3458512": "250", + "3470220": "940", + "6000000": "2017" + }, + "adjustedFert": { + "3109357": "1678", + "3117710": "250", + "3129418": "940", + "5659198": "2017" + } + }, + "0xF869B8e5a54e7D93D98fc7C5c9D48fe972C330CA": { + "beanFert": { + "3447990": "94", + "6000000": "1335" + }, + "adjustedFert": { + "3107188": "94", + "5659198": "1335" + } + }, + "0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41": { + "beanFert": { + "3447990": "855" + }, + "adjustedFert": { + "3107188": "855" + } + }, + "0x5ea7ea516720a8F59C9d245E2E98bCA0B6DF7441": { + "beanFert": { + "3447990": "314", + "6000000": "6294" + }, + "adjustedFert": { + "3107188": "314", + "5659198": "6294" + } + }, + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1": { + "beanFert": { + "3452316": "956", + "3462428": "1076", + "6000000": "14380" + }, + "adjustedFert": { + "3111514": "956", + "3121626": "1076", + "5659198": "14380" + } + }, + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1": { + "beanFert": { + "3452316": "1000", + "6000000": "5000" + }, + "adjustedFert": { + "3111514": "1000", + "5659198": "5000" + } + }, + "0x820A2943762236e27A3a2C6ea1024117518895a5": { + "beanFert": { + "3452316": "10000", + "3463060": "3000", + "3490157": "1123", + "6000000": "18334" + }, + "adjustedFert": { + "3111514": "10000", + "3122258": "3000", + "3149355": "1123", + "5659198": "18334" + } + }, + "0xC83414aBB6655320232fAA65eA72663dfD7198eC": { + "beanFert": { + "3452316": "332", + "3463060": "10000", + "6000000": "5000" + }, + "adjustedFert": { + "3111514": "332", + "3122258": "10000", + "5659198": "5000" + } + }, + "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e": { + "beanFert": { + "3450159": "60" + }, + "adjustedFert": { + "3109357": "60" + } + }, + "0xe4BF6E1967D7bc0Bd5E2C767c3A2CCAdf23446df": { + "beanFert": { + "3452316": "13948", + "6000000": "1000" + }, + "adjustedFert": { + "3111514": "13948", + "5659198": "1000" + } + }, + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D": { + "beanFert": { + "3452316": "74", + "6000000": "1113" + }, + "adjustedFert": { + "3111514": "74", + "5659198": "1113" + } + }, + "0x8D7ee51Ec16a0F95C7f241582De8cffB9A4c2293": { + "beanFert": { + "3452316": "2997", + "3470075": "298", + "3472520": "1000" + }, + "adjustedFert": { + "3111514": "2997", + "3129273": "298", + "3131718": "1000" + } + }, + "0xBB2E54038196A51f6a42A9BB5aD6BD0EB2CF6C01": { + "beanFert": { + "3452316": "148", + "3500000": "2237" + }, + "adjustedFert": { + "3111514": "148", + "3159198": "2237" + } + }, + "0x2c820271ADE646fDb3D6D0002712Ee6bdc7DC173": { + "beanFert": { + "3452316": "1195" + }, + "adjustedFert": { + "3111514": "1195" + } + }, + "0xEC5a0Dff55be882FAFe863895ef144b78aaEF097": { + "beanFert": { + "3452316": "10000", + "3470220": "451" + }, + "adjustedFert": { + "3111514": "10000", + "3129418": "451" + } + }, + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd": { + "beanFert": { + "3452316": "1031", + "3458512": "2213", + "3472026": "416" + }, + "adjustedFert": { + "3111514": "1031", + "3117710": "2213", + "3131224": "416" + } + }, + "0x17372637a937f7427871573a85e6FaC2400D147f": { + "beanFert": { + "3452316": "1500", + "3463060": "1500" + }, + "adjustedFert": { + "3111514": "1500", + "3122258": "1500" + } + }, + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A": { + "beanFert": { + "3452316": "105" + }, + "adjustedFert": { + "3111514": "105" + } + }, + "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b": { + "beanFert": { + "3452735": "4999", + "6000000": "6253" + }, + "adjustedFert": { + "3111933": "4999", + "5659198": "6253" + } + }, + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732": { + "beanFert": { + "3452735": "27", + "3457989": "237", + "3465205": "160", + "3467650": "424", + "6000000": "2007" + }, + "adjustedFert": { + "3111933": "27", + "3117187": "237", + "3124403": "160", + "3126848": "424", + "5659198": "2007" + } + }, + "0x6817be388a855cFa0F236aDCeBb56d7dc1DBd0Cf": { + "beanFert": { + "3452735": "67", + "3468402": "572", + "6000000": "4999" + }, + "adjustedFert": { + "3111933": "67", + "3127600": "572", + "5659198": "4999" + } + }, + "0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25": { + "beanFert": { + "3452735": "44905", + "6000000": "146816" + }, + "adjustedFert": { + "3111933": "44905", + "5659198": "146816" + } + }, + "0x85Eada0D605d905262687Ad74314bc95837dB4F9": { + "beanFert": { + "3452735": "2", + "6000000": "2753" + }, + "adjustedFert": { + "3111933": "2", + "5659198": "2753" + } + }, + "0xE8dFA9c13CaB87E38991961d51FA391aAbb8ca9c": { + "beanFert": { + "3452735": "1", + "6000000": "1" + }, + "adjustedFert": { + "3111933": "1", + "5659198": "1" + } + }, + "0x27291b970be79Eb325348752957F05c9739e1737": { + "beanFert": { + "3452735": "1", + "3471974": "3499", + "6000000": "1" + }, + "adjustedFert": { + "3111933": "1", + "3131172": "3499", + "5659198": "1" + } + }, + "0xb490aC9d599C2d4Fc24cC902ea4cd5af95EfF6e9": { + "beanFert": { + "3452735": "5110", + "3470220": "5000", + "6000000": "20" + }, + "adjustedFert": { + "3111933": "5110", + "3129418": "5000", + "5659198": "20" + } + }, + "0xf96A5d6c20872a7DdCacdDE4e825249040250d66": { + "beanFert": { + "3452735": "1" + }, + "adjustedFert": { + "3111933": "1" + } + }, + "0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4": { + "beanFert": { + "3452735": "300", + "3463060": "358" + }, + "adjustedFert": { + "3111933": "300", + "3122258": "358" + } + }, + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709": { + "beanFert": { + "3452735": "16329", + "3455539": "2858", + "3472026": "1990" + }, + "adjustedFert": { + "3111933": "16329", + "3114737": "2858", + "3131224": "1990" + } + }, + "0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3": { + "beanFert": { + "3452989": "341" + }, + "adjustedFert": { + "3112187": "341" + } + }, + "0x876133657F5356e376B7ae27d251444727cE9488": { + "beanFert": { + "3452735": "1010" + }, + "adjustedFert": { + "3111933": "1010" + } + }, + "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F": { + "beanFert": { + "3455539": "1008", + "3463060": "1019", + "3470220": "122" + }, + "adjustedFert": { + "3114737": "1008", + "3122258": "1019", + "3129418": "122" + } + }, + "0x48A2bC5DC9e3c5c0421E0483bF0648AaEE87daca": { + "beanFert": { + "3457989": "431", + "3463060": "527" + }, + "adjustedFert": { + "3117187": "431", + "3122258": "527" + } + }, + "0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677": { + "beanFert": { + "3457989": "114", + "3463060": "152" + }, + "adjustedFert": { + "3117187": "114", + "3122258": "152" + } + }, + "0x5f37479c76F16d94Afcc394b18Cf0727631d8F91": { + "beanFert": { + "3457989": "833", + "3462428": "2555" + }, + "adjustedFert": { + "3117187": "833", + "3121626": "2555" + } + }, + "0xDf406B91b4F27c942c4B42eB04fAC9323EEE8Aa1": { + "beanFert": { + "3457989": "75" + }, + "adjustedFert": { + "3117187": "75" + } + }, + "0x79bD65C17537daA78152E6018EC6dB63C6bE57F5": { + "beanFert": { + "3457989": "681" + }, + "adjustedFert": { + "3117187": "681" + } + }, + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C": { + "beanFert": { + "3458512": "10055", + "3458531": "1299", + "3466192": "3117", + "3470220": "5165", + "3471974": "1134", + "6000000": "143210" + }, + "adjustedFert": { + "3117710": "10055", + "3117729": "1299", + "3125390": "3117", + "3129418": "5165", + "3131172": "1134", + "5659198": "143210" + } + }, + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9": { + "beanFert": { + "3458512": "1077", + "3467650": "654", + "6000000": "23892" + }, + "adjustedFert": { + "3117710": "1077", + "3126848": "654", + "5659198": "23892" + } + }, + "0xcdea6A23B9383a88E246975aD3f38778ee0E81fc": { + "beanFert": { + "3457989": "2981" + }, + "adjustedFert": { + "3117187": "2981" + } + }, + "0xfF961eD9c48FBEbDEf48542432D21efA546ddb89": { + "beanFert": { + "3458512": "2017", + "6000000": "12145" + }, + "adjustedFert": { + "3117710": "2017", + "5659198": "12145" + } + }, + "0xDe975401d53178cdF36E1301Da633A8f82C33ceF": { + "beanFert": { + "3458512": "610", + "6000000": "1001" + }, + "adjustedFert": { + "3117710": "610", + "5659198": "1001" + } + }, + "0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781": { + "beanFert": { + "3458512": "114", + "3471974": "62", + "6000000": "1432" + }, + "adjustedFert": { + "3117710": "114", + "3131172": "62", + "5659198": "1432" + } + }, + "0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF": { + "beanFert": { + "3458512": "66", + "3463060": "1645", + "6000000": "1000" + }, + "adjustedFert": { + "3117710": "66", + "3122258": "1645", + "5659198": "1000" + } + }, + "0x4319fBf2c6B823e20EdAA4002F5eac872CcAd3BD": { + "beanFert": { + "3458512": "30000", + "3472520": "10000" + }, + "adjustedFert": { + "3117710": "30000", + "3131718": "10000" + } + }, + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2": { + "beanFert": { + "3458512": "457", + "6000000": "5788" + }, + "adjustedFert": { + "3117710": "457", + "5659198": "5788" + } + }, + "0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6": { + "beanFert": { + "3458512": "130" + }, + "adjustedFert": { + "3117710": "130" + } + }, + "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C": { + "beanFert": { + "3458512": "5000", + "3467650": "5000" + }, + "adjustedFert": { + "3117710": "5000", + "3126848": "5000" + } + }, + "0x46Fb59229922d98DCc95bB501EFC3b10FA83D938": { + "beanFert": { + "3458531": "726", + "6000000": "80109" + }, + "adjustedFert": { + "3117729": "726", + "5659198": "80109" + } + }, + "0xe6cF807E4B2A640DfE03ff06FA6Ab32C334c7dF4": { + "beanFert": { + "3458512": "2000" + }, + "adjustedFert": { + "3117710": "2000" + } + }, + "0xA7194f754b5befC3277D6Bfa258028450dA654BA": { + "beanFert": { + "3458512": "500" + }, + "adjustedFert": { + "3117710": "500" + } + }, + "0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74": { + "beanFert": { + "3458512": "1982" + }, + "adjustedFert": { + "3117710": "1982" + } + }, + "0x7e1CA6D381e2784Db210442bFC3e2B1451f773FD": { + "beanFert": { + "3458512": "200", + "3468691": "100" + }, + "adjustedFert": { + "3117710": "200", + "3127889": "100" + } + }, + "0x8d4122ffE442De3574871b9648868c1C3396A0AF": { + "beanFert": { + "3458531": "1000", + "3463060": "970", + "3470075": "586", + "3470220": "1006", + "6000000": "3831" + }, + "adjustedFert": { + "3117729": "1000", + "3122258": "970", + "3129273": "586", + "3129418": "1006", + "5659198": "3831" + } + }, + "0xeE55F7F410487965aCDC4543DDcE241E299032A4": { + "beanFert": { + "3458512": "668" + }, + "adjustedFert": { + "3117710": "668" + } + }, + "0xE203096D7583E30888902b2608652c720D6C38da": { + "beanFert": { + "3461694": "83", + "6000000": "462" + }, + "adjustedFert": { + "3120892": "83", + "5659198": "462" + } + }, + "0xdEb5b508847C9AB1295E83806855AbC3c9859B38": { + "beanFert": { + "3462428": "936", + "3472026": "1194", + "6000000": "15000" + }, + "adjustedFert": { + "3121626": "936", + "3131224": "1194", + "5659198": "15000" + } + }, + "0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df": { + "beanFert": { + "3461694": "703" + }, + "adjustedFert": { + "3120892": "703" + } + }, + "0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176": { + "beanFert": { + "3458531": "80", + "3485472": "34" + }, + "adjustedFert": { + "3117729": "80", + "3144670": "34" + } + }, + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2": { + "beanFert": { + "3462428": "1276", + "6000000": "10000" + }, + "adjustedFert": { + "3121626": "1276", + "5659198": "10000" + } + }, + "0xBAd4b03A764fb27Cdf65D23E2E59b76172526867": { + "beanFert": { + "3462428": "368", + "6000000": "2887" + }, + "adjustedFert": { + "3121626": "368", + "5659198": "2887" + } + }, + "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF": { + "beanFert": { + "3462428": "899", + "3466192": "100" + }, + "adjustedFert": { + "3121626": "899", + "3125390": "100" + } + }, + "0x515755b2c5A209976CF0de869c30f45aC7495a60": { + "beanFert": { + "3462428": "310", + "3472026": "10000", + "6000000": "10000" + }, + "adjustedFert": { + "3121626": "310", + "3131224": "10000", + "5659198": "10000" + } + }, + "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5": { + "beanFert": { + "3462428": "3400", + "6000000": "6561" + }, + "adjustedFert": { + "3121626": "3400", + "5659198": "6561" + } + }, + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37": { + "beanFert": { + "3463060": "4645", + "3467650": "1989", + "3472026": "1420", + "6000000": "10463" + }, + "adjustedFert": { + "3122258": "4645", + "3126848": "1989", + "3131224": "1420", + "5659198": "10463" + } + }, + "0x41922873B405216bb5a7751c5289f9DF853D9a9E": { + "beanFert": { + "3462428": "355", + "6000000": "2772" + }, + "adjustedFert": { + "3121626": "355", + "5659198": "2772" + } + }, + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17": { + "beanFert": { + "3463060": "1001", + "3467650": "999", + "3472026": "1000" + }, + "adjustedFert": { + "3122258": "1001", + "3126848": "999", + "3131224": "1000" + } + }, + "0x70Ce4bBa5076fa59E4fBDEe382663dF78402F2E0": { + "beanFert": { + "3463060": "3998", + "3465205": "3896", + "3467650": "3991" + }, + "adjustedFert": { + "3122258": "3998", + "3124403": "3896", + "3126848": "3991" + } + }, + "0x90030396F05AA263776c15e418a908Da4B018157": { + "beanFert": { + "3462428": "169" + }, + "adjustedFert": { + "3121626": "169" + } + }, + "0x525Fbe4bC0607933F4BE05cEB22F8a4b6B01800A": { + "beanFert": { + "3463060": "9853" + }, + "adjustedFert": { + "3122258": "9853" + } + }, + "0x3c5a438a2c19D024a3E53c27d45FAfAC9A45B4f7": { + "beanFert": { + "3463060": "373", + "3500000": "2490" + }, + "adjustedFert": { + "3122258": "373", + "3159198": "2490" + } + }, + "0x3Df83869B8367602E762FC42Baae3E81aA1f2a20": { + "beanFert": { + "3463060": "500", + "3471339": "5000" + }, + "adjustedFert": { + "3122258": "500", + "3130537": "5000" + } + }, + "0x0017dFe08BCc0dc9a323ca5d4831E371534E9320": { + "beanFert": { + "3465087": "1463", + "3467650": "3000" + }, + "adjustedFert": { + "3124285": "1463", + "3126848": "3000" + } + }, + "0xf3e9848D5accE2f83b8078ee21f458e59ec4289A": { + "beanFert": { + "3463060": "1021", + "3467650": "5768" + }, + "adjustedFert": { + "3122258": "1021", + "3126848": "5768" + } + }, + "0x48A5A6a01bA89cDdF97D2D552923d5a11401Ed19": { + "beanFert": { + "3463060": "660" + }, + "adjustedFert": { + "3122258": "660" + } + }, + "0x69e02D001146A86d4E2995F9eCf906265aA77d85": { + "beanFert": { + "3465205": "5098", + "3470075": "2156", + "6000000": "55000" + }, + "adjustedFert": { + "3124403": "5098", + "3129273": "2156", + "5659198": "55000" + } + }, + "0x5F074e4Afb3547407614BC55a103d76A4E05BA04": { + "beanFert": { + "3465205": "3488", + "6000000": "37645" + }, + "adjustedFert": { + "3124403": "3488", + "5659198": "37645" + } + }, + "0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4": { + "beanFert": { + "3463060": "16" + }, + "adjustedFert": { + "3122258": "16" + } + }, + "0xb8EEa697890dceFe14Be1c1C457Db0f436DCcF7a": { + "beanFert": { + "3463060": "105" + }, + "adjustedFert": { + "3122258": "105" + } + }, + "0x0519425dD15902466e7F7FA332F7b664c5c03503": { + "beanFert": { + "3465205": "8521", + "3471339": "741", + "6000000": "4848" + }, + "adjustedFert": { + "3124403": "8521", + "3130537": "741", + "5659198": "4848" + } + }, + "0xe90AFc1904E9A33499D8A708C01658A6d1899C6B": { + "beanFert": { + "3466192": "5136" + }, + "adjustedFert": { + "3125390": "5136" + } + }, + "0x42005e1156ea20EA50E7845E8CaC975C49774df0": { + "beanFert": { + "3466192": "50" + }, + "adjustedFert": { + "3125390": "50" + } + }, + "0x41e2965406330A130e61B39d867c91fa86aA3bB8": { + "beanFert": { + "3467650": "2289", + "6000000": "528" + }, + "adjustedFert": { + "3126848": "2289", + "5659198": "528" + } + }, + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde": { + "beanFert": { + "3467650": "30000", + "6000000": "33334" + }, + "adjustedFert": { + "3126848": "30000", + "5659198": "33334" + } + }, + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04": { + "beanFert": { + "3465205": "996", + "3466192": "199", + "3468402": "37", + "6000000": "212" + }, + "adjustedFert": { + "3124403": "996", + "3125390": "199", + "3127600": "37", + "5659198": "212" + } + }, + "0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a": { + "beanFert": { + "3467650": "529" + }, + "adjustedFert": { + "3126848": "529" + } + }, + "0x2E34723A04B9bb5938373DCFdD61410F43189246": { + "beanFert": { + "3465205": "101" + }, + "adjustedFert": { + "3124403": "101" + } + }, + "0x4626751B194018B6848797EA3eA40a9252eE86EE": { + "beanFert": { + "3465205": "286", + "6000000": "3100" + }, + "adjustedFert": { + "3124403": "286", + "5659198": "3100" + } + }, + "0x6872A46F83af5Cc03A704B2fE250F0b371Caf7d0": { + "beanFert": { + "3467650": "1000", + "3500000": "100" + }, + "adjustedFert": { + "3126848": "1000", + "3159198": "100" + } + }, + "0x25F69051858D6a8f9a6E54dAfb073e8eF3a94C1E": { + "beanFert": { + "3467650": "1764" + }, + "adjustedFert": { + "3126848": "1764" + } + }, + "0xCCF00d42bdEA5Fff0b46DD18a5e23FC8ac85a4AA": { + "beanFert": { + "3467650": "30019" + }, + "adjustedFert": { + "3126848": "30019" + } + }, + "0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F": { + "beanFert": { + "3468402": "3152", + "6000000": "25000" + }, + "adjustedFert": { + "3127600": "3152", + "5659198": "25000" + } + }, + "0x4fCD42eb2557E49C0201Fb3283CfF62c1BaF0Fb4": { + "beanFert": { + "3467650": "500" + }, + "adjustedFert": { + "3126848": "500" + } + }, + "0xc1F80163cC753f460A190643d8FCbb7755a48409": { + "beanFert": { + "3468402": "1863", + "6000000": "14783" + }, + "adjustedFert": { + "3127600": "1863", + "5659198": "14783" + } + }, + "0x5338035c008EA8c4b850052bc8Dad6A33dc2206c": { + "beanFert": { + "3467650": "20000" + }, + "adjustedFert": { + "3126848": "20000" + } + }, + "0x5b9A2267a9e9B81FbF01ba10026fCB7B2F7304d3": { + "beanFert": { + "3468402": "126", + "6000000": "1000" + }, + "adjustedFert": { + "3127600": "126", + "5659198": "1000" + } + }, + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA": { + "beanFert": { + "3468402": "122281", + "3471339": "74632", + "3471974": "116119", + "3472026": "86954", + "6000000": "15336" + }, + "adjustedFert": { + "3127600": "122281", + "3130537": "74632", + "3131172": "116119", + "3131224": "86954", + "5659198": "15336" + } + }, + "0xa3F90e801CBa1f94Eb6501146e4E0e791444E4d3": { + "beanFert": { + "3467650": "450" + }, + "adjustedFert": { + "3126848": "450" + } + }, + "0x5ab404ab63831bFcf824F53B4ac3737b9d155d90": { + "beanFert": { + "3467650": "1710" + }, + "adjustedFert": { + "3126848": "1710" + } + }, + "0x3C58492Ad9cAd0D9f8570a80b6A1f02C0C1dA2c5": { + "beanFert": { + "3468402": "564", + "6000000": "3500" + }, + "adjustedFert": { + "3127600": "564", + "5659198": "3500" + } + }, + "0xAb282590375f4ce7d3FfeD3A0D0e36cc5f9FF124": { + "beanFert": { + "3468402": "597", + "6000000": "5095" + }, + "adjustedFert": { + "3127600": "597", + "5659198": "5095" + } + }, + "0x6Afbf03Fe3Bea05640da67Ae9F0B136c783e315d": { + "beanFert": { + "3468402": "509" + }, + "adjustedFert": { + "3127600": "509" + } + }, + "0x60fC79EC08C5386f030912f056dCA91dAEC3A488": { + "beanFert": { + "3468402": "3" + }, + "adjustedFert": { + "3127600": "3" + } + }, + "0x4432e64624F4c64633466655de3D5132ad407343": { + "beanFert": { + "3468402": "10015" + }, + "adjustedFert": { + "3127600": "10015" + } + }, + "0x9dC4D973F76c0051bba8900F8ffB4652110f1591": { + "beanFert": { + "3470075": "115", + "3500000": "935" + }, + "adjustedFert": { + "3129273": "115", + "3159198": "935" + } + }, + "0x8623b240830fD2c33B1b5C8449f98fd606de88A8": { + "beanFert": { + "3468402": "338" + }, + "adjustedFert": { + "3127600": "338" + } + }, + "0x734A6263fE23c1d68Ec9042e03082575C34c968C": { + "beanFert": { + "3470075": "3260", + "3471974": "6540" + }, + "adjustedFert": { + "3129273": "3260", + "3131172": "6540" + } + }, + "0x6Cb50febbC4E796635963c1Ea9916099C69B4Bd9": { + "beanFert": { + "3470075": "153", + "3471974": "173" + }, + "adjustedFert": { + "3129273": "153", + "3131172": "173" + } + }, + "0x8eB354f1CBb0AB7ef0D038883b4c1065e008453F": { + "beanFert": { + "3470075": "500" + }, + "adjustedFert": { + "3129273": "500" + } + }, + "0x66F6Ac1E4c4c8aE7D84231451126f613bFE61D98": { + "beanFert": { + "3470220": "1533", + "6000000": "14135" + }, + "adjustedFert": { + "3129418": "1533", + "5659198": "14135" + } + }, + "0x4179FB53E818c228803cF30d88Bc0597189F141C": { + "beanFert": { + "3470220": "502", + "6000000": "5005" + }, + "adjustedFert": { + "3129418": "502", + "5659198": "5005" + } + }, + "0xc10535D71513ab2abDF192DFDAa2a3e94134b377": { + "beanFert": { + "3470220": "859", + "6000000": "10000" + }, + "adjustedFert": { + "3129418": "859", + "5659198": "10000" + } + }, + "0x241b2Fb0b7517c784Dd0c3e20a1f655985CFaa07": { + "beanFert": { + "3470220": "2959", + "6000000": "2469" + }, + "adjustedFert": { + "3129418": "2959", + "5659198": "2469" + } + }, + "0x124904f20eb8cf3B43A64EE728D01337b1dDc2b1": { + "beanFert": { + "3470220": "109", + "6000000": "1006" + }, + "adjustedFert": { + "3129418": "109", + "5659198": "1006" + } + }, + "0xA5EA62076326e0Eb89C34a4991A5aa58745266FC": { + "beanFert": { + "3470220": "1", + "6000000": "2" + }, + "adjustedFert": { + "3129418": "1", + "5659198": "2" + } + }, + "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22": { + "beanFert": { + "3470220": "136", + "3471974": "471", + "6000000": "1" + }, + "adjustedFert": { + "3129418": "136", + "3131172": "471", + "5659198": "1" + } + }, + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F": { + "beanFert": { + "3470220": "740", + "6000000": "6820" + }, + "adjustedFert": { + "3129418": "740", + "5659198": "6820" + } + }, + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD": { + "beanFert": { + "3470220": "429", + "6000000": "4002" + }, + "adjustedFert": { + "3129418": "429", + "5659198": "4002" + } + }, + "0x91443aF8B0B551Ba45208f03D32B22029969576c": { + "beanFert": { + "3470220": "1300", + "3500000": "1714" + }, + "adjustedFert": { + "3129418": "1300", + "3159198": "1714" + } + }, + "0x69EE985456C52c85BA2035d8fD8bFe0A51f0E0D2": { + "beanFert": { + "3470220": "299" + }, + "adjustedFert": { + "3129418": "299" + } + }, + "0x94d29Be06f423738f96A5E67A2627B4876098Cdc": { + "beanFert": { + "3470220": "1006", + "3495000": "1024" + }, + "adjustedFert": { + "3129418": "1006", + "3154198": "1024" + } + }, + "0xAf812E8BABab3173EdCE179fE6Fc6c2B1c482E39": { + "beanFert": { + "3471339": "215", + "3471974": "22186" + }, + "adjustedFert": { + "3130537": "215", + "3131172": "22186" + } + }, + "0xd43324eB6f31F86e361B48185797b339242f95f4": { + "beanFert": { + "3471339": "9450", + "3471974": "1000", + "3472026": "24000" + }, + "adjustedFert": { + "3130537": "9450", + "3131172": "1000", + "3131224": "24000" + } + }, + "0xfB464Fcd5342D2997A43C6B7bcA7615d0fbDEeD9": { + "beanFert": { + "3470220": "1025" + }, + "adjustedFert": { + "3129418": "1025" + } + }, + "0xF501c1084d8473399fa01c4F102FA72d0465192C": { + "beanFert": { + "3470220": "26830" + }, + "adjustedFert": { + "3129418": "26830" + } + }, + "0xE45D85B382EFd7833Da1B8CAB53B203D22340b1a": { + "beanFert": { + "3471339": "415" + }, + "adjustedFert": { + "3130537": "415" + } + }, + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F": { + "beanFert": { + "3470220": "433" + }, + "adjustedFert": { + "3129418": "433" + } + }, + "0x4Af7c12c7e210f4Cb8f2D8e340AaAdaE05A9f655": { + "beanFert": { + "3471339": "3000" + }, + "adjustedFert": { + "3130537": "3000" + } + }, + "0xD6e91233068c81b0eB6aAc77620641F72d27a039": { + "beanFert": { + "3471339": "12068", + "6000000": "100000" + }, + "adjustedFert": { + "3130537": "12068", + "5659198": "100000" + } + }, + "0x30CB1E845f6C03B988eC677A75700E70A019e2E4": { + "beanFert": { + "3471339": "3399" + }, + "adjustedFert": { + "3130537": "3399" + } + }, + "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803": { + "beanFert": { + "3471339": "997" + }, + "adjustedFert": { + "3130537": "997" + } + }, + "0xa5C9a58776682701Cfd014F68ED73D1895d9b372": { + "beanFert": { + "3471339": "635" + }, + "adjustedFert": { + "3130537": "635" + } + }, + "0xde40AaD5E8154C6F8C31D1e2043E4B1cB1745761": { + "beanFert": { + "3470220": "300" + }, + "adjustedFert": { + "3129418": "300" + } + }, + "0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9": { + "beanFert": { + "3471974": "2912", + "6000000": "20013" + }, + "adjustedFert": { + "3131172": "2912", + "5659198": "20013" + } + }, + "0x330BAb385492b88CE5BBa93b581ed808b00e6189": { + "beanFert": { + "3471974": "1000", + "6000000": "1000" + }, + "adjustedFert": { + "3131172": "1000", + "5659198": "1000" + } + }, + "0x66B0115e839B954A6f6d8371DEe89dE90111C232": { + "beanFert": { + "3471974": "1326", + "6000000": "1410" + }, + "adjustedFert": { + "3131172": "1326", + "5659198": "1410" + } + }, + "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427": { + "beanFert": { + "3471974": "69", + "6000000": "619" + }, + "adjustedFert": { + "3131172": "69", + "5659198": "619" + } + }, + "0x11D86e9F9C2a1cF597b974E50C660316c92215AA": { + "beanFert": { + "3471339": "599" + }, + "adjustedFert": { + "3130537": "599" + } + }, + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719": { + "beanFert": { + "3471974": "256", + "6000000": "526" + }, + "adjustedFert": { + "3131172": "256", + "5659198": "526" + } + }, + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3": { + "beanFert": { + "3471974": "165", + "3472026": "1000", + "3500000": "1493" + }, + "adjustedFert": { + "3131172": "165", + "3131224": "1000", + "3159198": "1493" + } + }, + "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6": { + "beanFert": { + "3471974": "3990" + }, + "adjustedFert": { + "3131172": "3990" + } + }, + "0x404a75f728D7e89197C61c284d782EC246425aa6": { + "beanFert": { + "3472026": "1491", + "6000000": "12784" + }, + "adjustedFert": { + "3131224": "1491", + "5659198": "12784" + } + }, + "0xf9563a8DaB33f6BEab2aBC34631c4eAF9EcC8b99": { + "beanFert": { + "3471974": "991" + }, + "adjustedFert": { + "3131172": "991" + } + }, + "0x7D6A2f6D7C2F7Dd51C47b5EA9faA3ae208185eC7": { + "beanFert": { + "3471974": "14328" + }, + "adjustedFert": { + "3131172": "14328" + } + }, + "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799": { + "beanFert": { + "3472026": "854", + "6000000": "7662" + }, + "adjustedFert": { + "3131224": "854", + "5659198": "7662" + } + }, + "0xe63E2CDd24695464C015b2f5ef723Ce17e96886B": { + "beanFert": { + "3472026": "1200", + "6000000": "1690" + }, + "adjustedFert": { + "3131224": "1200", + "5659198": "1690" + } + }, + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043": { + "beanFert": { + "3472026": "708", + "6000000": "1404" + }, + "adjustedFert": { + "3131224": "708", + "5659198": "1404" + } + }, + "0xE91F37f702032dd81142f009f273C132AB8AAe1D": { + "beanFert": { + "3472026": "20000" + }, + "adjustedFert": { + "3131224": "20000" + } + }, + "0xE3b2fC5a80B80C8F668484171D7395e3fDE76670": { + "beanFert": { + "3472026": "2671", + "3476597": "10020" + }, + "adjustedFert": { + "3131224": "2671", + "3135795": "10020" + } + }, + "0x2d96dAA63b1719DA208a72264e15b32ff818e79F": { + "beanFert": { + "3472026": "1", + "6000000": "1" + }, + "adjustedFert": { + "3131224": "1", + "5659198": "1" + } + }, + "0x4bCbB32e470627AB0D767AC56bBCB2c33c181BCE": { + "beanFert": { + "3472026": "800" + }, + "adjustedFert": { + "3131224": "800" + } + }, + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39": { + "beanFert": { + "3472520": "1717", + "6000000": "425" + }, + "adjustedFert": { + "3131718": "1717", + "5659198": "425" + } + }, + "0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E": { + "beanFert": { + "3472026": "5100" + }, + "adjustedFert": { + "3131224": "5100" + } + }, + "0x31DEae0DDc9f0D0207D13fc56927f067F493d324": { + "beanFert": { + "3472026": "17178" + }, + "adjustedFert": { + "3131224": "17178" + } + }, + "0xC3253E06fA7A2e4a3cd26cb561af4af83466902d": { + "beanFert": { + "3472026": "10000" + }, + "adjustedFert": { + "3131224": "10000" + } + }, + "0xA5F158e596D0e4051e70631D5d72a8Ee9d5A3B8A": { + "beanFert": { + "3476597": "2500" + }, + "adjustedFert": { + "3135795": "2500" + } + }, + "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905": { + "beanFert": { + "3476597": "686" + }, + "adjustedFert": { + "3135795": "686" + } + }, + "0xaF7ED02dE4B8A8967b996DF3b8bf28917B92EDcd": { + "beanFert": { + "3472026": "300" + }, + "adjustedFert": { + "3131224": "300" + } + }, + "0x7e7408fdD6315e965138509d9310b384C4FD1163": { + "beanFert": { + "3472026": "10000" + }, + "adjustedFert": { + "3131224": "10000" + } + }, + "0x4088E870e785320413288C605FD1BD6bD9D5BDAe": { + "beanFert": { + "3495000": "964" + }, + "adjustedFert": { + "3154198": "964" + } + }, + "0x4b10DA491b54ffe167Ec5AAf7046804fADA027d2": { + "beanFert": { + "3472520": "171" + }, + "adjustedFert": { + "3131718": "171" + } + }, + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758": { + "beanFert": { + "3485472": "342", + "3500000": "633" + }, + "adjustedFert": { + "3144670": "342", + "3159198": "633" + } + }, + "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1": { + "beanFert": { + "3495000": "500" + }, + "adjustedFert": { + "3154198": "500" + } + }, + "0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB": { + "beanFert": { + "3476597": "1544" + }, + "adjustedFert": { + "3135795": "1544" + } + }, + "0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78": { + "beanFert": { + "3490157": "28651", + "6000000": "16666" + }, + "adjustedFert": { + "3149355": "28651", + "5659198": "16666" + } + }, + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406": { + "beanFert": { + "3490157": "386", + "6000000": "1000" + }, + "adjustedFert": { + "3149355": "386", + "5659198": "1000" + } + }, + "0xaD63E4d4Be2229B080d20311c1402A2e45Cf7E75": { + "beanFert": { + "3495000": "508" + }, + "adjustedFert": { + "3154198": "508" + } + }, + "0x9241089cf848cB30c6020EE25Cd6a2b28c626744": { + "beanFert": { + "3476597": "146" + }, + "adjustedFert": { + "3135795": "146" + } + }, + "0xE2bDaE527f99a68724B9D5C271438437FC2A4695": { + "beanFert": { + "3495000": "33", + "6000000": "16312" + }, + "adjustedFert": { + "3154198": "33", + "5659198": "16312" + } + }, + "0x7Ac54882c1A9df477d583aDd40D1a47480F8a919": { + "beanFert": { + "3495000": "1" + }, + "adjustedFert": { + "3154198": "1" + } + }, + "0xd44dfDFDE075184e0f216C860e65913579F103Aa": { + "beanFert": { + "3500000": "100", + "6000000": "300" + }, + "adjustedFert": { + "3159198": "100", + "5659198": "300" + } + }, + "0x58737A9B0A8A5c8a2559C457fCC9e923F9d99FB7": { + "beanFert": { + "3500000": "2000", + "6000000": "1000" + }, + "adjustedFert": { + "3159198": "2000", + "5659198": "1000" + } + }, + "0xbE2075Ac5B3d3E92293C0E3f3EA3f503f8C0354d": { + "beanFert": { + "3500000": "165" + }, + "adjustedFert": { + "3159198": "165" + } + }, + "0xAa4f23a13f25E88bA710243dD59305f382376252": { + "beanFert": { + "3500000": "335" + }, + "adjustedFert": { + "3159198": "335" + } + }, + "0x8110331DBad6e7907F60B8BBb0E1A3af3dDb4BBd": { + "beanFert": { + "3500000": "250", + "6000000": "1243" + }, + "adjustedFert": { + "3159198": "250", + "5659198": "1243" + } + }, + "0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0": { + "beanFert": { + "3500000": "85" + }, + "adjustedFert": { + "3159198": "85" + } + }, + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B": { + "beanFert": { + "3500000": "500", + "6000000": "500" + }, + "adjustedFert": { + "3159198": "500", + "5659198": "500" + } + }, + "0x31b6020CeF40b72D1e53562229c1F9200d00CC12": { + "beanFert": { + "3500000": "1920" + }, + "adjustedFert": { + "3159198": "1920" + } + }, + "0xa1a234791392c42bD0c95e37e6908AE704D595BD": { + "beanFert": { + "3500000": "667" + }, + "adjustedFert": { + "3159198": "667" + } + }, + "0x74E096E78789F31061Fc47F6950279A55C03288c": { + "beanFert": { + "3500000": "223", + "6000000": "192" + }, + "adjustedFert": { + "3159198": "223", + "5659198": "192" + } + }, + "0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B": { + "beanFert": { + "3500000": "249" + }, + "adjustedFert": { + "3159198": "249" + } + }, + "0xd7bF571d4F19F63e3091Ca37E13ED395ca8e9969": { + "beanFert": { + "3500000": "995" + }, + "adjustedFert": { + "3159198": "995" + } + }, + "0x97A5370695c5A64004359f43889F398fb4D07fb1": { + "beanFert": { + "3500000": "939" + }, + "adjustedFert": { + "3159198": "939" + } + }, + "0xE9B05bC1FA8684EE3e01460aac2e64C678b9dA5d": { + "beanFert": { + "3500000": "1655" + }, + "adjustedFert": { + "3159198": "1655" + } + }, + "0x5292cF4e13F7Ed082Ec2996F8F8a549a05b2E6af": { + "beanFert": { + "3500000": "150" + }, + "adjustedFert": { + "3159198": "150" + } + }, + "0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3": { + "beanFert": { + "3500000": "1015" + }, + "adjustedFert": { + "3159198": "1015" + } + }, + "0x74F9fadb40Bee2574BCDd7C1eD73270373Af0D21": { + "beanFert": { + "3500000": "180" + }, + "adjustedFert": { + "3159198": "180" + } + }, + "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e": { + "beanFert": { + "3500000": "1851" + }, + "adjustedFert": { + "3159198": "1851" + } + }, + "0x184CbD89E91039E6B1EF94753B3fD41c55e40888": { + "beanFert": { + "3500000": "4961" + }, + "adjustedFert": { + "3159198": "4961" + } + }, + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED": { + "beanFert": { + "6000000": "788138" + }, + "adjustedFert": { + "5659198": "788138" + } + }, + "0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8": { + "beanFert": { + "3500000": "1000" + }, + "adjustedFert": { + "3159198": "1000" + } + }, + "0xB84e1E86eB2420887b10301cdCDFB729C4B9038b": { + "beanFert": { + "6000000": "16666" + }, + "adjustedFert": { + "5659198": "16666" + } + }, + "0xC95186f04B68cfec0D9F585D08C3b5697C858fe0": { + "beanFert": { + "6000000": "100000" + }, + "adjustedFert": { + "5659198": "100000" + } + }, + "0xDD11460317C683e4057E115eB14e1C9F7Ca41E12": { + "beanFert": { + "3500000": "1000" + }, + "adjustedFert": { + "3159198": "1000" + } + }, + "0x02009370Ff755704E9acbD96042C1ab832D6067e": { + "beanFert": { + "6000000": "95000" + }, + "adjustedFert": { + "5659198": "95000" + } + }, + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF": { + "beanFert": { + "6000000": "100000" + }, + "adjustedFert": { + "5659198": "100000" + } + }, + "0xB81D739df194fA589e244C7FF5a15E5C04978D0D": { + "beanFert": { + "6000000": "13437" + }, + "adjustedFert": { + "5659198": "13437" + } + }, + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910": { + "beanFert": { + "6000000": "83334" + }, + "adjustedFert": { + "5659198": "83334" + } + }, + "0xC725c98A214a3b79C0454Ef2151c73b248ce329c": { + "beanFert": { + "6000000": "15090" + }, + "adjustedFert": { + "5659198": "15090" + } + }, + "0xf060A025DDf6407f79F2fa0601666f61502a54A6": { + "beanFert": { + "6000000": "110000" + }, + "adjustedFert": { + "5659198": "110000" + } + }, + "0xc207Ceb0709E1D2B6Ff32E17989d4a4D87C91F37": { + "beanFert": { + "6000000": "150000" + }, + "adjustedFert": { + "5659198": "150000" + } + }, + "0xa734439d26Ce4dBf43ED7eb364Ec409D949bB369": { + "beanFert": { + "6000000": "29998" + }, + "adjustedFert": { + "5659198": "29998" + } + }, + "0xD0988045f54BAf8466a2EA9f097b22eEca8F7A00": { + "beanFert": { + "6000000": "20000" + }, + "adjustedFert": { + "5659198": "20000" + } + }, + "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43": { + "beanFert": { + "6000000": "12184" + }, + "adjustedFert": { + "5659198": "12184" + } + }, + "0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee": { + "beanFert": { + "6000000": "26843" + }, + "adjustedFert": { + "5659198": "26843" + } + }, + "0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0": { + "beanFert": { + "6000000": "15002" + }, + "adjustedFert": { + "5659198": "15002" + } + }, + "0xD441C97eF1458d847271f91714799007081494eF": { + "beanFert": { + "6000000": "13635" + }, + "adjustedFert": { + "5659198": "13635" + } + }, + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e": { + "beanFert": { + "6000000": "49517" + }, + "adjustedFert": { + "5659198": "49517" + } + }, + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A": { + "beanFert": { + "6000000": "101975" + }, + "adjustedFert": { + "5659198": "101975" + } + }, + "0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657": { + "beanFert": { + "6000000": "99781" + }, + "adjustedFert": { + "5659198": "99781" + } + }, + "0x7C27A1F60B5229340bc57449Cfb91Ca496C3c1c1": { + "beanFert": { + "6000000": "15048" + }, + "adjustedFert": { + "5659198": "15048" + } + }, + "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2": { + "beanFert": { + "6000000": "84990" + }, + "adjustedFert": { + "5659198": "84990" + } + }, + "0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E": { + "beanFert": { + "6000000": "12544" + }, + "adjustedFert": { + "5659198": "12544" + } + }, + "0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22": { + "beanFert": { + "6000000": "60319" + }, + "adjustedFert": { + "5659198": "60319" + } + }, + "0xD189b1d9402631770B19bdb25b5d5702f15830a8": { + "beanFert": { + "6000000": "49900" + }, + "adjustedFert": { + "5659198": "49900" + } + }, + "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf": { + "beanFert": { + "6000000": "13245" + }, + "adjustedFert": { + "5659198": "13245" + } + }, + "0xCDbe0c24C858a75eADC38eb9a8DDAEE7f1598f71": { + "beanFert": { + "6000000": "100000" + }, + "adjustedFert": { + "5659198": "100000" + } + }, + "0xa2321c2a5fAa8336b09519FB8fA5a19077da7794": { + "beanFert": { + "6000000": "50000" + }, + "adjustedFert": { + "5659198": "50000" + } + }, + "0x4A5867445A1Fa5F394268A521720D1d4E5609413": { + "beanFert": { + "6000000": "50000" + }, + "adjustedFert": { + "5659198": "50000" + } + }, + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282": { + "beanFert": { + "6000000": "15000" + }, + "adjustedFert": { + "5659198": "15000" + } + }, + "0x37A6156e4a6E8B60b2415AF040546cF5e91699bd": { + "beanFert": { + "6000000": "11570" + }, + "adjustedFert": { + "5659198": "11570" + } + }, + "0x4bD60086997F3896332B612eC36d30A6Ad57928E": { + "beanFert": { + "6000000": "12000" + }, + "adjustedFert": { + "5659198": "12000" + } + }, + "0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF": { + "beanFert": { + "6000000": "40000" + }, + "adjustedFert": { + "5659198": "40000" + } + }, + "0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb": { + "beanFert": { + "6000000": "50641" + }, + "adjustedFert": { + "5659198": "50641" + } + }, + "0x20798Fd64a342d1EE640348E42C14181fDC842d8": { + "beanFert": { + "6000000": "16667" + }, + "adjustedFert": { + "5659198": "16667" + } + }, + "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559": { + "beanFert": { + "6000000": "20000" + }, + "adjustedFert": { + "5659198": "20000" + } + }, + "0xb009714a5A4963d40Ac0625dB643E3EB6e755C25": { + "beanFert": { + "6000000": "74996" + }, + "adjustedFert": { + "5659198": "74996" + } + }, + "0x89979246e8764D8DCB794fC45F826437fDeC23b2": { + "beanFert": { + "6000000": "17593" + }, + "adjustedFert": { + "5659198": "17593" + } + }, + "0x0933F554312C7bcB86dF896c46A44AC2381383D1": { + "beanFert": { + "6000000": "16842" + }, + "adjustedFert": { + "5659198": "16842" + } + }, + "0x028afa72DADB6311107c382cF87504F37F11D482": { + "beanFert": { + "6000000": "19691" + }, + "adjustedFert": { + "5659198": "19691" + } + }, + "0x9c695f16975b57f730727F30f399d110cFc71f10": { + "beanFert": { + "6000000": "71969" + }, + "adjustedFert": { + "5659198": "71969" + } + }, + "0x8C35933C469406C8899882f5C2119649cD5B617f": { + "beanFert": { + "6000000": "29113" + }, + "adjustedFert": { + "5659198": "29113" + } + }, + "0xAE0ff6098365140e3030e8360CCD8C0B0462286C": { + "beanFert": { + "6000000": "30005" + }, + "adjustedFert": { + "5659198": "30005" + } + }, + "0x997563ba8058E80f1E4dd5b7f695b5C2B065408e": { + "beanFert": { + "6000000": "33338" + }, + "adjustedFert": { + "5659198": "33338" + } + }, + "0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59": { + "beanFert": { + "6000000": "30000" + }, + "adjustedFert": { + "5659198": "30000" + } + }, + "0x5d48f06eDE8715E7bD69414B97F97fF0706D6c71": { + "beanFert": { + "6000000": "20000" + }, + "adjustedFert": { + "5659198": "20000" + } + }, + "0xa87b23dB84e79a52CE4790E4b4aBE568a0102643": { + "beanFert": { + "6000000": "30448" + }, + "adjustedFert": { + "5659198": "30448" + } + }, + "0xF35e261393F9705e10B378C6785582B2a5A71094": { + "beanFert": { + "6000000": "36143" + }, + "adjustedFert": { + "5659198": "36143" + } + }, + "0xd0C5A91800f504E5517dcD1173F271635d2e8000": { + "beanFert": { + "6000000": "26356" + }, + "adjustedFert": { + "5659198": "26356" + } + }, + "0x2ADC4D8e3d2df0B37611130bc9eD82cDfa3e2762": { + "beanFert": { + "6000000": "48635" + }, + "adjustedFert": { + "5659198": "48635" + } + }, + "0x027be82BF7895db5fc1Fea5696117e875BbCc0dE": { + "beanFert": { + "6000000": "20250" + }, + "adjustedFert": { + "5659198": "20250" + } + }, + "0x2894457502751d0F92ed1e740e2c8935F879E8AE": { + "beanFert": { + "6000000": "50000" + }, + "adjustedFert": { + "5659198": "50000" + } + }, + "0x7D51910845011B41Cc32806644dA478FEfF2f11F": { + "beanFert": { + "6000000": "50000" + }, + "adjustedFert": { + "5659198": "50000" + } + }, + "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b": { + "beanFert": { + "6000000": "46089" + }, + "adjustedFert": { + "5659198": "46089" + } + }, + "0x1C0f042aE8dfFBac8113E3036d770339aB491a85": { + "beanFert": { + "6000000": "25000" + }, + "adjustedFert": { + "5659198": "25000" + } + }, + "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8": { + "beanFert": { + "6000000": "10037" + }, + "adjustedFert": { + "5659198": "10037" + } + }, + "0x12Ed7C9007Cf0CB79b37E33D0244aD90c2a65C0B": { + "beanFert": { + "6000000": "11257" + }, + "adjustedFert": { + "5659198": "11257" + } + }, + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11": { + "beanFert": { + "6000000": "50000" + }, + "adjustedFert": { + "5659198": "50000" + } + }, + "0x8D06Ffb1500343975571cC0240152C413d803778": { + "beanFert": { + "6000000": "50000" + }, + "adjustedFert": { + "5659198": "50000" + } + }, + "0x1d264de8264a506Ed0E88E5E092131915913Ed17": { + "beanFert": { + "6000000": "10015" + }, + "adjustedFert": { + "5659198": "10015" + } + }, + "0xB04fa1FB54a7317efe85a0962F57bD143867730E": { + "beanFert": { + "6000000": "25000" + }, + "adjustedFert": { + "5659198": "25000" + } + }, + "0x3af2098d4e068E5aa19d2102ef263d75867549Ef": { + "beanFert": { + "6000000": "22866" + }, + "adjustedFert": { + "5659198": "22866" + } + }, + "0x80077CB3B35A6c30DC354469f63e0743eeff32D4": { + "beanFert": { + "6000000": "26030" + }, + "adjustedFert": { + "5659198": "26030" + } + }, + "0x855a53E5f64C50bf8A5f3d18B485Bf43A5045e6A": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82": { + "beanFert": { + "6000000": "74253" + }, + "adjustedFert": { + "5659198": "74253" + } + }, + "0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0x122de1514670141D4c22e5675010B6D65386a9F6": { + "beanFert": { + "6000000": "10219" + }, + "adjustedFert": { + "5659198": "10219" + } + }, + "0x66801CC7Ab6791afb179CC94cBbd268CFBfcBc7b": { + "beanFert": { + "6000000": "10239" + }, + "adjustedFert": { + "5659198": "10239" + } + }, + "0xABC508DdA7517F195e416d77C822A4861961947a": { + "beanFert": { + "6000000": "8806" + }, + "adjustedFert": { + "5659198": "8806" + } + }, + "0x0bf7Fb51211b4842bAd8E831ba2F42fcB836C7e1": { + "beanFert": { + "6000000": "7906" + }, + "adjustedFert": { + "5659198": "7906" + } + }, + "0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3": { + "beanFert": { + "6000000": "7977" + }, + "adjustedFert": { + "5659198": "7977" + } + }, + "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0xaaB247F5b39012081a487470AfFb4288e8445418": { + "beanFert": { + "6000000": "10753" + }, + "adjustedFert": { + "5659198": "10753" + } + }, + "0x334f12F269213371fb59b328BB6e182C875e04B2": { + "beanFert": { + "6000000": "5002" + }, + "adjustedFert": { + "5659198": "5002" + } + }, + "0xB1fe6937a51870ea66B863BE76d668Fc98694f25": { + "beanFert": { + "6000000": "9593" + }, + "adjustedFert": { + "5659198": "9593" + } + }, + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0xFB3E532Bef028cCa0aa5a2276AAeF32D7e0b3d1B": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0x30142a0E5597f3203792CD00817638158163d21F": { + "beanFert": { + "6000000": "8000" + }, + "adjustedFert": { + "5659198": "8000" + } + }, + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0x9b04EA8897DfA0a817403ACACcDb24df019c7085": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0x91e795eB6a2307eDe1A0eeDe84e6F0914f60a9C3": { + "beanFert": { + "6000000": "8000" + }, + "adjustedFert": { + "5659198": "8000" + } + }, + "0x1fC84Da8c1DFD00a7F6D0970ed779cEc0BBf9CA4": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0x5270B883D12e6402a20675467e84364A2Eb542bF": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb": { + "beanFert": { + "6000000": "5068" + }, + "adjustedFert": { + "5659198": "5068" + } + }, + "0xCc81ec04591f56a730E429795729D3bD6C21D877": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25": { + "beanFert": { + "6000000": "44151" + }, + "adjustedFert": { + "5659198": "44151" + } + }, + "0x23807719299c9bA3C6d60d4097146259c7A16da3": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D": { + "beanFert": { + "6000000": "9929" + }, + "adjustedFert": { + "5659198": "9929" + } + }, + "0xF05980BF83005362fdcBCB8F7A453fE40B669D96": { + "beanFert": { + "6000000": "5116" + }, + "adjustedFert": { + "5659198": "5116" + } + }, + "0x3EE2E1B07b76B09b12578cE7f26ab4Bc739770E7": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0xc493AA1EA56dfe12E3DC665c46E1425BC3ee426F": { + "beanFert": { + "6000000": "8726" + }, + "adjustedFert": { + "5659198": "8726" + } + }, + "0x270252c5FAd90804CE9288F2C643d26EfA568cFC": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C": { + "beanFert": { + "6000000": "7812" + }, + "adjustedFert": { + "5659198": "7812" + } + }, + "0x1bFb00d16514560bb95d4312FDD39553395077aF": { + "beanFert": { + "6000000": "5085" + }, + "adjustedFert": { + "5659198": "5085" + } + }, + "0x8d0B5a21a4D6B00B39d0fc9D49d0459af18a77eD": { + "beanFert": { + "6000000": "5099" + }, + "adjustedFert": { + "5659198": "5099" + } + }, + "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542": { + "beanFert": { + "6000000": "5015" + }, + "adjustedFert": { + "5659198": "5015" + } + }, + "0x70a9c497536E98F2DbB7C66911700fe2b2550900": { + "beanFert": { + "6000000": "4221" + }, + "adjustedFert": { + "5659198": "4221" + } + }, + "0x5767795b4eFbF06A40cb36181ac08f47CDB0fcEc": { + "beanFert": { + "6000000": "4967" + }, + "adjustedFert": { + "5659198": "4967" + } + }, + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06": { + "beanFert": { + "6000000": "5364" + }, + "adjustedFert": { + "5659198": "5364" + } + }, + "0x6E93e171C5223493Ad5434ac406140E89BD606De": { + "beanFert": { + "6000000": "4057" + }, + "adjustedFert": { + "5659198": "4057" + } + }, + "0x82F402847051BDdAAb0f5D4b481417281837c424": { + "beanFert": { + "6000000": "4427" + }, + "adjustedFert": { + "5659198": "4427" + } + }, + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE": { + "beanFert": { + "6000000": "7500" + }, + "adjustedFert": { + "5659198": "7500" + } + }, + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6": { + "beanFert": { + "6000000": "4000" + }, + "adjustedFert": { + "5659198": "4000" + } + }, + "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202": { + "beanFert": { + "6000000": "5068" + }, + "adjustedFert": { + "5659198": "5068" + } + }, + "0xd53Adf794E2915b4F414BE1AB2282cA8DA56dCfD": { + "beanFert": { + "6000000": "4679" + }, + "adjustedFert": { + "5659198": "4679" + } + }, + "0x7004051A1baF0A89A568A8FA68DAd7e5B9790063": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906": { + "beanFert": { + "6000000": "2065" + }, + "adjustedFert": { + "5659198": "2065" + } + }, + "0xA256Aa181aF9046995aF92506498E31E620C747a": { + "beanFert": { + "6000000": "4000" + }, + "adjustedFert": { + "5659198": "4000" + } + }, + "0x4b1b04693a00F74B028215503eE97cC606f4ED66": { + "beanFert": { + "6000000": "4074" + }, + "adjustedFert": { + "5659198": "4074" + } + }, + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e": { + "beanFert": { + "6000000": "3783" + }, + "adjustedFert": { + "5659198": "3783" + } + }, + "0xdb4f969Eb7904A6ddf5528AE8d0E85F857991CFd": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6": { + "beanFert": { + "6000000": "3723" + }, + "adjustedFert": { + "5659198": "3723" + } + }, + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc": { + "beanFert": { + "6000000": "2064" + }, + "adjustedFert": { + "5659198": "2064" + } + }, + "0x3DB6401fe220E686D535BCd88BF8B2E8b8c55482": { + "beanFert": { + "6000000": "3886" + }, + "adjustedFert": { + "5659198": "3886" + } + }, + "0xC8D71db19694312177B99fB5d15a1d295b22671A": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0x41BF3C5167494cbCa4C08122237C1620A78267Ab": { + "beanFert": { + "6000000": "2008" + }, + "adjustedFert": { + "5659198": "2008" + } + }, + "0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e": { + "beanFert": { + "6000000": "4161" + }, + "adjustedFert": { + "5659198": "4161" + } + }, + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb": { + "beanFert": { + "6000000": "1855" + }, + "adjustedFert": { + "5659198": "1855" + } + }, + "0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57": { + "beanFert": { + "6000000": "3368" + }, + "adjustedFert": { + "5659198": "3368" + } + }, + "0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8": { + "beanFert": { + "6000000": "3716" + }, + "adjustedFert": { + "5659198": "3716" + } + }, + "0x73C91af57C657DfD05a31DAcA7Bff1aEb5754629": { + "beanFert": { + "6000000": "6001" + }, + "adjustedFert": { + "5659198": "6001" + } + }, + "0x19dfdc194Bb5CF599af78B1967dbb3783c590720": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0x3D63719699585FD0bb308174d3f0aD8082d8c5A2": { + "beanFert": { + "6000000": "3465" + }, + "adjustedFert": { + "5659198": "3465" + } + }, + "0xf679A24BBF27c79dB5148a4908488fA01ed51625": { + "beanFert": { + "6000000": "1700" + }, + "adjustedFert": { + "5659198": "1700" + } + }, + "0x1348EA8E35236AA0769b91ae291e7291117bf15C": { + "beanFert": { + "6000000": "4083" + }, + "adjustedFert": { + "5659198": "4083" + } + }, + "0x8E32736429d2F0a39179214C826DeeF5B8A37861": { + "beanFert": { + "6000000": "2000" + }, + "adjustedFert": { + "5659198": "2000" + } + }, + "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2": { + "beanFert": { + "6000000": "3000" + }, + "adjustedFert": { + "5659198": "3000" + } + }, + "0xC940a80B7ceeaF00798B9178E63210ffCd23Ba9b": { + "beanFert": { + "6000000": "4000" + }, + "adjustedFert": { + "5659198": "4000" + } + }, + "0x1df00f89bf7FdcdA1701A6787661A8962Cd49ef0": { + "beanFert": { + "6000000": "6667" + }, + "adjustedFert": { + "5659198": "6667" + } + }, + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B": { + "beanFert": { + "6000000": "3000" + }, + "adjustedFert": { + "5659198": "3000" + } + }, + "0x28570D9d66627e0733dFE4FCa79B8fD5b8128636": { + "beanFert": { + "6000000": "2001" + }, + "adjustedFert": { + "5659198": "2001" + } + }, + "0x617e336ff734097AdddF9Fc9aF09a5A7690FA091": { + "beanFert": { + "6000000": "3021" + }, + "adjustedFert": { + "5659198": "3021" + } + }, + "0x88cE2D4fB3cC542F0989d61A1c152fa137486d81": { + "beanFert": { + "6000000": "5000" + }, + "adjustedFert": { + "5659198": "5000" + } + }, + "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C": { + "beanFert": { + "6000000": "2000" + }, + "adjustedFert": { + "5659198": "2000" + } + }, + "0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7": { + "beanFert": { + "6000000": "1876" + }, + "adjustedFert": { + "5659198": "1876" + } + }, + "0xcbd7712D9335a7A38f35b38D5dC9B5970f04e8FD": { + "beanFert": { + "6000000": "2351" + }, + "adjustedFert": { + "5659198": "2351" + } + }, + "0x5ED2Cf60A0C6EE2e3A9c9d07195AC183c09A3D9e": { + "beanFert": { + "6000000": "4731" + }, + "adjustedFert": { + "5659198": "4731" + } + }, + "0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5": { + "beanFert": { + "6000000": "3000" + }, + "adjustedFert": { + "5659198": "3000" + } + }, + "0xD9463BE909eBB97964d3E95E94331063707fc059": { + "beanFert": { + "6000000": "1848" + }, + "adjustedFert": { + "5659198": "1848" + } + }, + "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8": { + "beanFert": { + "6000000": "1911" + }, + "adjustedFert": { + "5659198": "1911" + } + }, + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed": { + "beanFert": { + "6000000": "3705" + }, + "adjustedFert": { + "5659198": "3705" + } + }, + "0x34a649fde43cE36882091A010aAe2805A9FcFf0d": { + "beanFert": { + "6000000": "6499" + }, + "adjustedFert": { + "5659198": "6499" + } + }, + "0x629f61F97A29bd18de69B03ff71b2FA699c49f96": { + "beanFert": { + "6000000": "1877" + }, + "adjustedFert": { + "5659198": "1877" + } + }, + "0x30709180d8747E5BC0bD6E1BFf51baEdAB31328D": { + "beanFert": { + "6000000": "3145" + }, + "adjustedFert": { + "5659198": "3145" + } + }, + "0x2A23D58Ea4b5cC2e01ef53ea5dE51447C2528F16": { + "beanFert": { + "6000000": "3358" + }, + "adjustedFert": { + "5659198": "3358" + } + }, + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7": { + "beanFert": { + "6000000": "3708" + }, + "adjustedFert": { + "5659198": "3708" + } + }, + "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB": { + "beanFert": { + "6000000": "3002" + }, + "adjustedFert": { + "5659198": "3002" + } + }, + "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef": { + "beanFert": { + "6000000": "1852" + }, + "adjustedFert": { + "5659198": "1852" + } + }, + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6": { + "beanFert": { + "6000000": "1852" + }, + "adjustedFert": { + "5659198": "1852" + } + }, + "0xf286E07ED6889658A3285C05C4f736963cF41456": { + "beanFert": { + "6000000": "3000" + }, + "adjustedFert": { + "5659198": "3000" + } + }, + "0x752862DE6AE311B825e8589F78a400EB7251e995": { + "beanFert": { + "6000000": "2500" + }, + "adjustedFert": { + "5659198": "2500" + } + }, + "0x33B86fBC1Cc1F469d86655B3e0648fBB41010da0": { + "beanFert": { + "6000000": "2500" + }, + "adjustedFert": { + "5659198": "2500" + } + }, + "0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b": { + "beanFert": { + "6000000": "3050" + }, + "adjustedFert": { + "5659198": "3050" + } + }, + "0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56": { + "beanFert": { + "6000000": "2260" + }, + "adjustedFert": { + "5659198": "2260" + } + }, + "0xe066684F0fF25A746aa51d63BA676bFc1D38442D": { + "beanFert": { + "6000000": "2418" + }, + "adjustedFert": { + "5659198": "2418" + } + }, + "0x99e8845841BDe89e148663A6420a98C47e15EbCe": { + "beanFert": { + "6000000": "2500" + }, + "adjustedFert": { + "5659198": "2500" + } + }, + "0x02491D37984764d39b99e4077649dcD349221a62": { + "beanFert": { + "6000000": "3000" + }, + "adjustedFert": { + "5659198": "3000" + } + }, + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3": { + "beanFert": { + "6000000": "2540" + }, + "adjustedFert": { + "5659198": "2540" + } + }, + "0x3376Bde856bf6ec5dc7b9796895C788d53605da0": { + "beanFert": { + "6000000": "3691" + }, + "adjustedFert": { + "5659198": "3691" + } + }, + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F": { + "beanFert": { + "6000000": "2864" + }, + "adjustedFert": { + "5659198": "2864" + } + }, + "0x79608C564704fdFC1d7dE7E512995C907f46cA07": { + "beanFert": { + "6000000": "3000" + }, + "adjustedFert": { + "5659198": "3000" + } + }, + "0x01914D6E47657d6A7893F84Fc84660dc5aec08b6": { + "beanFert": { + "6000000": "10000" + }, + "adjustedFert": { + "5659198": "10000" + } + }, + "0x930836bA4242071FEa039732ff8bf18B8401403E": { + "beanFert": { + "6000000": "1852" + }, + "adjustedFert": { + "5659198": "1852" + } + }, + "0x8E8A5fb89F6Ab165F982fA4869b7d3aCD3E4eBfE": { + "beanFert": { + "6000000": "2500" + }, + "adjustedFert": { + "5659198": "2500" + } + }, + "0xeA47644f110CC08B0Ecc731E992cbE3569940dad": { + "beanFert": { + "6000000": "2000" + }, + "adjustedFert": { + "5659198": "2000" + } + }, + "0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C": { + "beanFert": { + "6000000": "2005" + }, + "adjustedFert": { + "5659198": "2005" + } + }, + "0x047B22BFE547d29843c825dbcBd9E0168649d631": { + "beanFert": { + "6000000": "1950" + }, + "adjustedFert": { + "5659198": "1950" + } + }, + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE": { + "beanFert": { + "6000000": "2221" + }, + "adjustedFert": { + "5659198": "2221" + } + }, + "0x90a69b1a180f60c0059f149577919c778cE2b9e1": { + "beanFert": { + "6000000": "2121" + }, + "adjustedFert": { + "5659198": "2121" + } + }, + "0x3aB1a190713Efdc091450aF618B8c1398281373E": { + "beanFert": { + "6000000": "3511" + }, + "adjustedFert": { + "5659198": "3511" + } + }, + "0xbEb5B4Aae36A1EBd8a525017fe7fd2141D544Ee5": { + "beanFert": { + "6000000": "1689" + }, + "adjustedFert": { + "5659198": "1689" + } + }, + "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d": { + "beanFert": { + "6000000": "2005" + }, + "adjustedFert": { + "5659198": "2005" + } + }, + "0x877cEA592fd83Dcc76243636dedC31CA7ce46cE1": { + "beanFert": { + "6000000": "1917" + }, + "adjustedFert": { + "5659198": "1917" + } + }, + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658": { + "beanFert": { + "6000000": "1999" + }, + "adjustedFert": { + "5659198": "1999" + } + }, + "0xCeD392A0B38EEdC1f127179D88e986452aCe6433": { + "beanFert": { + "6000000": "3140" + }, + "adjustedFert": { + "5659198": "3140" + } + }, + "0xF5Ca1b4F227257B5367515498B38908d593E1EBe": { + "beanFert": { + "6000000": "2968" + }, + "adjustedFert": { + "5659198": "2968" + } + }, + "0xe105EDc9d5E7B473251f91c3205bc62a6A30c446": { + "beanFert": { + "6000000": "2087" + }, + "adjustedFert": { + "5659198": "2087" + } + }, + "0x1083D7254E01beCd64C3230612BF20E14010d646": { + "beanFert": { + "6000000": "1992" + }, + "adjustedFert": { + "5659198": "1992" + } + }, + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8": { + "beanFert": { + "6000000": "1877" + }, + "adjustedFert": { + "5659198": "1877" + } + }, + "0xE9691477a468cC9084B690920B845C20dc54Ae04": { + "beanFert": { + "6000000": "3000" + }, + "adjustedFert": { + "5659198": "3000" + } + }, + "0x1aE02022a49b122a21bEBE24A1B1845113C37931": { + "beanFert": { + "6000000": "1893" + }, + "adjustedFert": { + "5659198": "1893" + } + }, + "0x193641EA463C3B9244cF9F00b77EE5220d4154e9": { + "beanFert": { + "6000000": "1878" + }, + "adjustedFert": { + "5659198": "1878" + } + }, + "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c": { + "beanFert": { + "6000000": "1726" + }, + "adjustedFert": { + "5659198": "1726" + } + }, + "0xD560fd84DAB03114C51448ab97AD82D21Cc3cEEc": { + "beanFert": { + "6000000": "2009" + }, + "adjustedFert": { + "5659198": "2009" + } + }, + "0x274d8bD90C11E7f5598242ee174085281fDE1aed": { + "beanFert": { + "6000000": "1738" + }, + "adjustedFert": { + "5659198": "1738" + } + }, + "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d": { + "beanFert": { + "6000000": "2780" + }, + "adjustedFert": { + "5659198": "2780" + } + }, + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f": { + "beanFert": { + "6000000": "2259" + }, + "adjustedFert": { + "5659198": "2259" + } + }, + "0x400609FDd8FD4882B503a55aeb59c24a39d66555": { + "beanFert": { + "6000000": "1600" + }, + "adjustedFert": { + "5659198": "1600" + } + }, + "0xe6a54e967ECB4E1e4b202678aED4918B5c492926": { + "beanFert": { + "6000000": "1949" + }, + "adjustedFert": { + "5659198": "1949" + } + }, + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad": { + "beanFert": { + "6000000": "1750" + }, + "adjustedFert": { + "5659198": "1750" + } + }, + "0xf84F39554247723C757066b8fd7789462aC25894": { + "beanFert": { + "6000000": "1746" + }, + "adjustedFert": { + "5659198": "1746" + } + }, + "0x2F0424705Ab89E72c6b9fAebfF6D4265F9d25fA2": { + "beanFert": { + "6000000": "1996" + }, + "adjustedFert": { + "5659198": "1996" + } + }, + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0": { + "beanFert": { + "6000000": "1680" + }, + "adjustedFert": { + "5659198": "1680" + } + }, + "0xd653971FA19ef68BC80BECb7720675307Bfb3EE6": { + "beanFert": { + "6000000": "1854" + }, + "adjustedFert": { + "5659198": "1854" + } + }, + "0xbD50a98a99438325067302D987ccebA3C7a8a296": { + "beanFert": { + "6000000": "1555" + }, + "adjustedFert": { + "5659198": "1555" + } + }, + "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c": { + "beanFert": { + "6000000": "2055" + }, + "adjustedFert": { + "5659198": "2055" + } + }, + "0x9C8623E1244fA3FB56Ed855aeAcCF97A4371FfE0": { + "beanFert": { + "6000000": "2366" + }, + "adjustedFert": { + "5659198": "2366" + } + }, + "0xc5Df8672232f1C2b75310e4f2B80863721705a12": { + "beanFert": { + "6000000": "2000" + }, + "adjustedFert": { + "5659198": "2000" + } + }, + "0xA88bbFF5B5edec5Ab232174cce7e0921EAAa0EdC": { + "beanFert": { + "6000000": "1582" + }, + "adjustedFert": { + "5659198": "1582" + } + }, + "0x16497eF5D7071a86F97f9140C651D68440527Bc4": { + "beanFert": { + "6000000": "1500" + }, + "adjustedFert": { + "5659198": "1500" + } + }, + "0x86642f87887c1313f284DBEc47E79Dc06593b82e": { + "beanFert": { + "6000000": "1658" + }, + "adjustedFert": { + "5659198": "1658" + } + }, + "0x0C040E41b5b17374b060872295cBE10Ec8954550": { + "beanFert": { + "6000000": "1132" + }, + "adjustedFert": { + "5659198": "1132" + } + }, + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126": { + "beanFert": { + "6000000": "1126" + }, + "adjustedFert": { + "5659198": "1126" + } + }, + "0xC52A0B002ac4E62bE0d269A948e55D126a48C767": { + "beanFert": { + "6000000": "1026" + }, + "adjustedFert": { + "5659198": "1026" + } + }, + "0x648457FC44EAAf5B1FeB75974c826F1ca44745b7": { + "beanFert": { + "6000000": "1442" + }, + "adjustedFert": { + "5659198": "1442" + } + }, + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345": { + "beanFert": { + "6000000": "1010" + }, + "adjustedFert": { + "5659198": "1010" + } + }, + "0x1B15ED3612CD3077ba4437a1e2B924C33d4de0F9": { + "beanFert": { + "6000000": "2011" + }, + "adjustedFert": { + "5659198": "2011" + } + }, + "0x9d1D4D631AE6BC24bD09aDfF6Ca82651e928B650": { + "beanFert": { + "6000000": "2000" + }, + "adjustedFert": { + "5659198": "2000" + } + }, + "0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7": { + "beanFert": { + "6000000": "1025" + }, + "adjustedFert": { + "5659198": "1025" + } + }, + "0x8A30D3bb32291DBbB5F88F905433E499638387b7": { + "beanFert": { + "6000000": "1975" + }, + "adjustedFert": { + "5659198": "1975" + } + }, + "0x0DE299534957329688a735d03961dBd848A5f87f": { + "beanFert": { + "6000000": "1100" + }, + "adjustedFert": { + "5659198": "1100" + } + }, + "0x0cE72b7Dde6Ea0e9e8feeB634FcD9245E81D34F3": { + "beanFert": { + "6000000": "1047" + }, + "adjustedFert": { + "5659198": "1047" + } + }, + "0x8AD30D5e981b4F7207A52Ed61B16639D02aA5a21": { + "beanFert": { + "6000000": "1100" + }, + "adjustedFert": { + "5659198": "1100" + } + }, + "0x13201714657f8B211f72c5050AEb146D1faFc890": { + "beanFert": { + "6000000": "1074" + }, + "adjustedFert": { + "5659198": "1074" + } + }, + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1": { + "beanFert": { + "6000000": "1615" + }, + "adjustedFert": { + "5659198": "1615" + } + }, + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6": { + "beanFert": { + "6000000": "1118" + }, + "adjustedFert": { + "5659198": "1118" + } + }, + "0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c": { + "beanFert": { + "6000000": "1059" + }, + "adjustedFert": { + "5659198": "1059" + } + }, + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72": { + "beanFert": { + "6000000": "1029" + }, + "adjustedFert": { + "5659198": "1029" + } + }, + "0x48e9E2F211371bD2462e44Af3d2d1aA610437f82": { + "beanFert": { + "6000000": "1012" + }, + "adjustedFert": { + "5659198": "1012" + } + }, + "0x62F9075e7Bc85B500efd0f0Ad9e98c3b799B3d98": { + "beanFert": { + "6000000": "1010" + }, + "adjustedFert": { + "5659198": "1010" + } + }, + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3": { + "beanFert": { + "6000000": "1256" + }, + "adjustedFert": { + "5659198": "1256" + } + }, + "0x958f5ee318e6CAf1Ec22d682A0f823dAAa70D758": { + "beanFert": { + "6000000": "1501" + }, + "adjustedFert": { + "5659198": "1501" + } + }, + "0xb2A147095999840BBcE5d679B97Ac379a658BFb9": { + "beanFert": { + "6000000": "1005" + }, + "adjustedFert": { + "5659198": "1005" + } + }, + "0x772b17A408b225694053a01d30fccf789a3Ec21C": { + "beanFert": { + "6000000": "1004" + }, + "adjustedFert": { + "5659198": "1004" + } + }, + "0x1aD66517368179738f521AF62E1acFe8816c22a4": { + "beanFert": { + "6000000": "1047" + }, + "adjustedFert": { + "5659198": "1047" + } + }, + "0x941169FFF3C353BE965e3f34823eeA63b772219c": { + "beanFert": { + "6000000": "1041" + }, + "adjustedFert": { + "5659198": "1041" + } + }, + "0x8A782809D316B5f32b9512f98368337258194006": { + "beanFert": { + "6000000": "1006" + }, + "adjustedFert": { + "5659198": "1006" + } + }, + "0x7c5FEFF51C3623183A920de28c1f84e5289eb8c9": { + "beanFert": { + "6000000": "1005" + }, + "adjustedFert": { + "5659198": "1005" + } + }, + "0x891768B90Ea274e95B40a3a11437b0e98ae96493": { + "beanFert": { + "6000000": "1161" + }, + "adjustedFert": { + "5659198": "1161" + } + }, + "0xB73a795F4b55dC779658E11037e373d66b3094c7": { + "beanFert": { + "6000000": "1263" + }, + "adjustedFert": { + "5659198": "1263" + } + }, + "0x38C5cA4ee678D4f9d8D94A7f238E2700A8978B36": { + "beanFert": { + "6000000": "1003" + }, + "adjustedFert": { + "5659198": "1003" + } + }, + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040": { + "beanFert": { + "6000000": "1031" + }, + "adjustedFert": { + "5659198": "1031" + } + }, + "0x8542ab72e61aC4a276c69A8a18706B5Cd49b38Ee": { + "beanFert": { + "6000000": "1250" + }, + "adjustedFert": { + "5659198": "1250" + } + }, + "0xe3a08ccE7E0167373A965B7B0D0dc57B6A2142f7": { + "beanFert": { + "6000000": "1149" + }, + "adjustedFert": { + "5659198": "1149" + } + }, + "0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C": { + "beanFert": { + "6000000": "862" + }, + "adjustedFert": { + "5659198": "862" + } + }, + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C": { + "beanFert": { + "6000000": "1040" + }, + "adjustedFert": { + "5659198": "1040" + } + }, + "0xDFf58819aB64C79d5276e4052d3e74ACa493658D": { + "beanFert": { + "6000000": "1175" + }, + "adjustedFert": { + "5659198": "1175" + } + }, + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7": { + "beanFert": { + "6000000": "1046" + }, + "adjustedFert": { + "5659198": "1046" + } + }, + "0x85eD5D7d62cC5d33aC57c1814faABc648AEc81e8": { + "beanFert": { + "6000000": "1486" + }, + "adjustedFert": { + "5659198": "1486" + } + }, + "0x8Fe316B09c8F570Fd00F1172665d1327a2c74c7E": { + "beanFert": { + "6000000": "1012" + }, + "adjustedFert": { + "5659198": "1012" + } + }, + "0x8781e4F7c3C20E8Ab7b65Df6E8Ae26d9d16821D4": { + "beanFert": { + "6000000": "925" + }, + "adjustedFert": { + "5659198": "925" + } + }, + "0x1f3236F64Cb6878F164e3A281c2a9393e19A6D00": { + "beanFert": { + "6000000": "1010" + }, + "adjustedFert": { + "5659198": "1010" + } + }, + "0xf80cDe9FBB874500E8932de19B374Ab473E7d207": { + "beanFert": { + "6000000": "1156" + }, + "adjustedFert": { + "5659198": "1156" + } + }, + "0x0F9548165C4960624DEbb7e38b504E9Fd524d6Af": { + "beanFert": { + "6000000": "1002" + }, + "adjustedFert": { + "5659198": "1002" + } + }, + "0x5FA8F6284E7d85C7fB21418a47De42580924F24d": { + "beanFert": { + "6000000": "1008" + }, + "adjustedFert": { + "5659198": "1008" + } + }, + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82": { + "beanFert": { + "6000000": "1501" + }, + "adjustedFert": { + "5659198": "1501" + } + }, + "0x3cc04875E98EDf01065a4B27e00bcfeDdb76CBA8": { + "beanFert": { + "6000000": "1341" + }, + "adjustedFert": { + "5659198": "1341" + } + }, + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31": { + "beanFert": { + "6000000": "1009" + }, + "adjustedFert": { + "5659198": "1009" + } + }, + "0x923CC3D985cE69a254458001097012cb33FAb601": { + "beanFert": { + "6000000": "1018" + }, + "adjustedFert": { + "5659198": "1018" + } + }, + "0xC0c0514363049224093eC8b610C00F292d80B621": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0xb5DC9dC6820E4EE9A1d844842EeE6256D2BC8399": { + "beanFert": { + "6000000": "1008" + }, + "adjustedFert": { + "5659198": "1008" + } + }, + "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15": { + "beanFert": { + "6000000": "1005" + }, + "adjustedFert": { + "5659198": "1005" + } + }, + "0xA3e1b60002a24f6cFf3f74E2AA260b8C17bbdF7D": { + "beanFert": { + "6000000": "1386" + }, + "adjustedFert": { + "5659198": "1386" + } + }, + "0xF352e5320291298bE60D00a015b27D3960F879FA": { + "beanFert": { + "6000000": "1265" + }, + "adjustedFert": { + "5659198": "1265" + } + }, + "0x4e4834a9DB68D2c3c1B8F043f52cd1AfD3c50Df6": { + "beanFert": { + "6000000": "1006" + }, + "adjustedFert": { + "5659198": "1006" + } + }, + "0xB09ffb206dDA09B6bc556b093eD28903872Ad124": { + "beanFert": { + "6000000": "1010" + }, + "adjustedFert": { + "5659198": "1010" + } + }, + "0x85312D6a50928F3ffC7a192444601E6E04A428a2": { + "beanFert": { + "6000000": "1002" + }, + "adjustedFert": { + "5659198": "1002" + } + }, + "0x71B49dd7E69CD8a1e81F7a1e3012C7c12195b7f9": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0xe12c849046d447e60E6Fb47bacA6Dc8561D3Cbf7": { + "beanFert": { + "6000000": "1001" + }, + "adjustedFert": { + "5659198": "1001" + } + }, + "0xA59EaBB3DB0042d13d4E821D7C1507d270EF4051": { + "beanFert": { + "6000000": "1001" + }, + "adjustedFert": { + "5659198": "1001" + } + }, + "0x81fAc8eD831262A4Ced09BC0024BAe266e6AE688": { + "beanFert": { + "6000000": "1008" + }, + "adjustedFert": { + "5659198": "1008" + } + }, + "0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x728897111210Dc78F311E8366297bc31ac8FA805": { + "beanFert": { + "6000000": "927" + }, + "adjustedFert": { + "5659198": "927" + } + }, + "0xf0F2DD63004315157b63d4c11dBbBa360cEB32a9": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x26E8F0F1Dfd919034c909055e90b0B70AdfB7047": { + "beanFert": { + "6000000": "1001" + }, + "adjustedFert": { + "5659198": "1001" + } + }, + "0x2612C1bc597799dc2A468D6537720B245f956A22": { + "beanFert": { + "6000000": "994" + }, + "adjustedFert": { + "5659198": "994" + } + }, + "0xBd80cee1D9EBe79a2005Fc338c9a49b2764cfc36": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x3BD142a93adC0554C69395AAE69433A74CFFc765": { + "beanFert": { + "6000000": "931" + }, + "adjustedFert": { + "5659198": "931" + } + }, + "0x2527F13bA7B1D8594365D8af829cdcc4FE445098": { + "beanFert": { + "6000000": "927" + }, + "adjustedFert": { + "5659198": "927" + } + }, + "0xfeC90Ae9638e5e5BcAee95D4e0478407155472eb": { + "beanFert": { + "6000000": "997" + }, + "adjustedFert": { + "5659198": "997" + } + }, + "0x53bA90071fF3224AdCa6d3c7960Ad924796FED03": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x2f0087909A6f638755689d88141F3466F582007d": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x0e4D2c272f192bCC5ef7Bb3D8A09bdA087652162": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x8F76d8D3C733B02B60521D8181598E4bC1E7dDdB": { + "beanFert": { + "6000000": "998" + }, + "adjustedFert": { + "5659198": "998" + } + }, + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x0e0826998f02b2353499a12a0Ea8d8EEbe27567f": { + "beanFert": { + "6000000": "919" + }, + "adjustedFert": { + "5659198": "919" + } + }, + "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99": { + "beanFert": { + "6000000": "750" + }, + "adjustedFert": { + "5659198": "750" + } + }, + "0x072Fa8a20fA621665B94745A8075073ceAdFE1DC": { + "beanFert": { + "6000000": "747" + }, + "adjustedFert": { + "5659198": "747" + } + }, + "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241": { + "beanFert": { + "6000000": "500" + }, + "adjustedFert": { + "5659198": "500" + } + }, + "0x7Df40fde5E8680c45BFEdAFCf61dD6962e688562": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d": { + "beanFert": { + "6000000": "783" + }, + "adjustedFert": { + "5659198": "783" + } + }, + "0x92470BDC0CB1FC2eD3De81c1b5e8668371C12A83": { + "beanFert": { + "6000000": "512" + }, + "adjustedFert": { + "5659198": "512" + } + }, + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F": { + "beanFert": { + "6000000": "942" + }, + "adjustedFert": { + "5659198": "942" + } + }, + "0xA1ae22c9744baceC7f321bE8F29B3eE6eF075205": { + "beanFert": { + "6000000": "523" + }, + "adjustedFert": { + "5659198": "523" + } + }, + "0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2": { + "beanFert": { + "6000000": "500" + }, + "adjustedFert": { + "5659198": "500" + } + }, + "0x4d498b930eD0dcBdeE385D7CBDBB292DAc0d1c91": { + "beanFert": { + "6000000": "270" + }, + "adjustedFert": { + "5659198": "270" + } + }, + "0x066E9372fF4D618ba8f9b1E366463A18DD711e5E": { + "beanFert": { + "6000000": "468" + }, + "adjustedFert": { + "5659198": "468" + } + }, + "0x44db0002349036164dD46A04327201Eb7698A53e": { + "beanFert": { + "6000000": "444" + }, + "adjustedFert": { + "5659198": "444" + } + }, + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7": { + "beanFert": { + "6000000": "780" + }, + "adjustedFert": { + "5659198": "780" + } + }, + "0xE381CEb106717c176013AdFCE95F9957B5ea3dA9": { + "beanFert": { + "6000000": "762" + }, + "adjustedFert": { + "5659198": "762" + } + }, + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73": { + "beanFert": { + "6000000": "744" + }, + "adjustedFert": { + "5659198": "744" + } + }, + "0xC0eB311C2f846BD359ed8eAA9a766D5E4736846A": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x525AaDb22D87cAa26B00587dC6BF9a6Cc2F414E5": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2": { + "beanFert": { + "6000000": "430" + }, + "adjustedFert": { + "5659198": "430" + } + }, + "0x13042AF2293C0a41119749d6Ed8f81145312e3D7": { + "beanFert": { + "6000000": "199" + }, + "adjustedFert": { + "5659198": "199" + } + }, + "0x30A1fbFc214D2Af0A68f6652A1d18a1b71Dfa9eA": { + "beanFert": { + "6000000": "353" + }, + "adjustedFert": { + "5659198": "353" + } + }, + "0xfB2594cE11e08cE68832adD3a11232CA8ef89B7d": { + "beanFert": { + "6000000": "250" + }, + "adjustedFert": { + "5659198": "250" + } + }, + "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf": { + "beanFert": { + "6000000": "746" + }, + "adjustedFert": { + "5659198": "746" + } + }, + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF": { + "beanFert": { + "6000000": "392" + }, + "adjustedFert": { + "5659198": "392" + } + }, + "0xd643F55F3B36c05588e4e34c1668E77Fe098B94F": { + "beanFert": { + "6000000": "351" + }, + "adjustedFert": { + "5659198": "351" + } + }, + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612": { + "beanFert": { + "6000000": "1000" + }, + "adjustedFert": { + "5659198": "1000" + } + }, + "0x5163938834eaC9bB929BdFb4746e3910D58d0eAE": { + "beanFert": { + "6000000": "196" + }, + "adjustedFert": { + "5659198": "196" + } + }, + "0xA9B7B0B422cB1F99dA3e75C3Df6feEc2E8cb32E7": { + "beanFert": { + "6000000": "600" + }, + "adjustedFert": { + "5659198": "600" + } + }, + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698": { + "beanFert": { + "6000000": "352" + }, + "adjustedFert": { + "5659198": "352" + } + }, + "0x368D80b383a401a231674B168E101706389656cB": { + "beanFert": { + "6000000": "446" + }, + "adjustedFert": { + "5659198": "446" + } + }, + "0xCEb1D8aC8f30c697f332b2665d12c96f6c794e37": { + "beanFert": { + "6000000": "337" + }, + "adjustedFert": { + "5659198": "337" + } + }, + "0xb0010aB3689B80177fF49773F1428aC9a0EDdfa0": { + "beanFert": { + "6000000": "500" + }, + "adjustedFert": { + "5659198": "500" + } + }, + "0xD8c84eaC995150662CC052E6ac76Ec184fcF1122": { + "beanFert": { + "6000000": "439" + }, + "adjustedFert": { + "5659198": "439" + } + }, + "0xbF133C1763c0751494CE440300fCd6b8c4e80D83": { + "beanFert": { + "6000000": "191" + }, + "adjustedFert": { + "5659198": "191" + } + }, + "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d": { + "beanFert": { + "6000000": "207" + }, + "adjustedFert": { + "5659198": "207" + } + }, + "0x0aF4a5c820cC97fC86d9be25d3cD4791eD436866": { + "beanFert": { + "6000000": "244" + }, + "adjustedFert": { + "5659198": "244" + } + }, + "0xeEEC0e4927704ab3BBE5df7F4EfFa818b43665a3": { + "beanFert": { + "6000000": "462" + }, + "adjustedFert": { + "5659198": "462" + } + }, + "0xeDB8260d0Db635b1C8df7AF174F0dAFdb5a04716": { + "beanFert": { + "6000000": "2000" + }, + "adjustedFert": { + "5659198": "2000" + } + }, + "0xb833B1B0eF7F2b2183076868C18Cf9A20661AC7E": { + "beanFert": { + "6000000": "577" + }, + "adjustedFert": { + "5659198": "577" + } + }, + "0x25f030D68E56F831011c8821913CED6248Dd0676": { + "beanFert": { + "6000000": "618" + }, + "adjustedFert": { + "5659198": "618" + } + }, + "0x5aD9b4F1D6bc470D3100533Ed4e32De9B2d011C6": { + "beanFert": { + "6000000": "178" + }, + "adjustedFert": { + "5659198": "178" + } + }, + "0xBB05755eF4eAB7dfD4e0b34Ef63b0bdD05cce20A": { + "beanFert": { + "6000000": "123" + }, + "adjustedFert": { + "5659198": "123" + } + }, + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360": { + "beanFert": { + "6000000": "453" + }, + "adjustedFert": { + "5659198": "453" + } + }, + "0x333Ce4d2eEFb9C2f0e687d3aa6e96BEBAaC57291": { + "beanFert": { + "6000000": "500" + }, + "adjustedFert": { + "5659198": "500" + } + }, + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6": { + "beanFert": { + "6000000": "365" + }, + "adjustedFert": { + "5659198": "365" + } + }, + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133": { + "beanFert": { + "6000000": "125" + }, + "adjustedFert": { + "5659198": "125" + } + }, + "0x94380039eD5562E29F38263b77AdcC976F84a57f": { + "beanFert": { + "6000000": "362" + }, + "adjustedFert": { + "5659198": "362" + } + }, + "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc": { + "beanFert": { + "6000000": "200" + }, + "adjustedFert": { + "5659198": "200" + } + }, + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8": { + "beanFert": { + "6000000": "272" + }, + "adjustedFert": { + "5659198": "272" + } + }, + "0xb75313Ee4f5bAb9aC4a004c430D5EA792ba27ed0": { + "beanFert": { + "6000000": "592" + }, + "adjustedFert": { + "5659198": "592" + } + }, + "0x4B202C0fDA7197af32949366909823B4468155f0": { + "beanFert": { + "6000000": "332" + }, + "adjustedFert": { + "5659198": "332" + } + }, + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D": { + "beanFert": { + "6000000": "131" + }, + "adjustedFert": { + "5659198": "131" + } + }, + "0x433b1b3bc573FcD6fDDDCf9A72CE377dB7A38bb5": { + "beanFert": { + "6000000": "613" + }, + "adjustedFert": { + "5659198": "613" + } + }, + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6": { + "beanFert": { + "6000000": "572" + }, + "adjustedFert": { + "5659198": "572" + } + }, + "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921": { + "beanFert": { + "6000000": "648" + }, + "adjustedFert": { + "5659198": "648" + } + }, + "0xdbC529316fe45F5Ce50528BF2356211051fB0F71": { + "beanFert": { + "6000000": "732" + }, + "adjustedFert": { + "5659198": "732" + } + }, + "0x7eaF877B409740afa24226D4A448c980896Be795": { + "beanFert": { + "6000000": "229" + }, + "adjustedFert": { + "5659198": "229" + } + }, + "0xa75b7833c78EBA62F1C5389f811ef3A7364D44DE": { + "beanFert": { + "6000000": "250" + }, + "adjustedFert": { + "5659198": "250" + } + }, + "0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A": { + "beanFert": { + "6000000": "125" + }, + "adjustedFert": { + "5659198": "125" + } + }, + "0xd2de1EE5C8453EDa993aC638772942A12B2C89e6": { + "beanFert": { + "6000000": "742" + }, + "adjustedFert": { + "5659198": "742" + } + }, + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2": { + "beanFert": { + "6000000": "649" + }, + "adjustedFert": { + "5659198": "649" + } + }, + "0x1c22C526E14D60BBbf493D6817B9901207D4f81D": { + "beanFert": { + "6000000": "167" + }, + "adjustedFert": { + "5659198": "167" + } + }, + "0x43D413b607Ec68f75aA1558Dd1918a90fcfc310d": { + "beanFert": { + "6000000": "169" + }, + "adjustedFert": { + "5659198": "169" + } + }, + "0x7Ace5390CAa52Ea0c0D1aB408eE2D27DCE3f2711": { + "beanFert": { + "6000000": "191" + }, + "adjustedFert": { + "5659198": "191" + } + }, + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE": { + "beanFert": { + "6000000": "187" + }, + "adjustedFert": { + "5659198": "187" + } + }, + "0xAa8Acf55F4Dd1e3E725d4Ba6A52A593260DBA249": { + "beanFert": { + "6000000": "163" + }, + "adjustedFert": { + "5659198": "163" + } + }, + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15": { + "beanFert": { + "6000000": "111" + }, + "adjustedFert": { + "5659198": "111" + } + }, + "0xf2eDb5d3E6Fe66BD951DD9BdDef436D4cF8b0Dd0": { + "beanFert": { + "6000000": "137" + }, + "adjustedFert": { + "5659198": "137" + } + }, + "0xD14f924DE730Bb2F0C6E5B45b21b37468950a2fF": { + "beanFert": { + "6000000": "188" + }, + "adjustedFert": { + "5659198": "188" + } + }, + "0x14019DBae34219EFC2305b0C1dB260Fce8520DbF": { + "beanFert": { + "6000000": "159" + }, + "adjustedFert": { + "5659198": "159" + } + }, + "0x31188536865De4593040fAfC4e175E190518e4Ef": { + "beanFert": { + "6000000": "185" + }, + "adjustedFert": { + "5659198": "185" + } + }, + "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26": { + "beanFert": { + "6000000": "100" + }, + "adjustedFert": { + "5659198": "100" + } + }, + "0xb03F5438f9A243De5C3B830B7841EC315034cD5f": { + "beanFert": { + "6000000": "184" + }, + "adjustedFert": { + "5659198": "184" + } + }, + "0x32C7006B7E287eBb972194B40135e0D15870Ab5E": { + "beanFert": { + "6000000": "104" + }, + "adjustedFert": { + "5659198": "104" + } + }, + "0xb343067A6fF1B6E4A9892fF4FDD123fDD48de5E4": { + "beanFert": { + "6000000": "166" + }, + "adjustedFert": { + "5659198": "166" + } + }, + "0x8fa93f9B47146DBE1108F49a8784AED775F472a5": { + "beanFert": { + "6000000": "156" + }, + "adjustedFert": { + "5659198": "156" + } + }, + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53": { + "beanFert": { + "6000000": "600" + }, + "adjustedFert": { + "5659198": "600" + } + }, + "0x6ee25671aa43C7E9153d19A1a839CCbBBE65d1EC": { + "beanFert": { + "6000000": "174" + }, + "adjustedFert": { + "5659198": "174" + } + }, + "0x473812413b6A8267C62aB76095463546C1F65Dc7": { + "beanFert": { + "6000000": "154" + }, + "adjustedFert": { + "5659198": "154" + } + }, + "0x1cE75A78Ce9FC7d7f2501157A2408Bd1bE4910f8": { + "beanFert": { + "6000000": "187" + }, + "adjustedFert": { + "5659198": "187" + } + }, + "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88": { + "beanFert": { + "6000000": "185" + }, + "adjustedFert": { + "5659198": "185" + } + }, + "0xb54f4f12c886277eeF6E34B7e1c12C4647b820B2": { + "beanFert": { + "6000000": "200" + }, + "adjustedFert": { + "5659198": "200" + } + }, + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565": { + "beanFert": { + "6000000": "556" + }, + "adjustedFert": { + "5659198": "556" + } + }, + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87": { + "beanFert": { + "6000000": "590" + }, + "adjustedFert": { + "5659198": "590" + } + }, + "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191": { + "beanFert": { + "6000000": "147" + }, + "adjustedFert": { + "5659198": "147" + } + }, + "0x79Af81df02789476F34E8dF5BAd9cb29fA57ad11": { + "beanFert": { + "6000000": "137" + }, + "adjustedFert": { + "5659198": "137" + } + }, + "0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12": { + "beanFert": { + "6000000": "173" + }, + "adjustedFert": { + "5659198": "173" + } + }, + "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34": { + "beanFert": { + "6000000": "529" + }, + "adjustedFert": { + "5659198": "529" + } + }, + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0": { + "beanFert": { + "6000000": "555" + }, + "adjustedFert": { + "5659198": "555" + } + }, + "0x64E29CCE3cC6E9056a144311A7eb3B8f381fd4ac": { + "beanFert": { + "6000000": "52" + }, + "adjustedFert": { + "5659198": "52" + } + }, + "0x41CC24B4E568715f33fE803a6C3419708205304d": { + "beanFert": { + "6000000": "51" + }, + "adjustedFert": { + "5659198": "51" + } + }, + "0xD2d038f866Ef6441e598E0f685f885693ef59917": { + "beanFert": { + "6000000": "49" + }, + "adjustedFert": { + "5659198": "49" + } + }, + "0xbaBADF2e1B6975bE66fcbED7387525c2f6b2101b": { + "beanFert": { + "6000000": "143" + }, + "adjustedFert": { + "5659198": "143" + } + }, + "0x576A4d006543d7Ba103933d6DBd1e3Cdf86E22d3": { + "beanFert": { + "6000000": "86" + }, + "adjustedFert": { + "5659198": "86" + } + }, + "0xBf4Aa57563dB2A8185148EC874EA96dff82CeB13": { + "beanFert": { + "6000000": "30" + }, + "adjustedFert": { + "5659198": "30" + } + }, + "0x8c256deF29ccd5089e68c9147d07eaDFBB53353e": { + "beanFert": { + "6000000": "51" + }, + "adjustedFert": { + "5659198": "51" + } + }, + "0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef": { + "beanFert": { + "6000000": "553" + }, + "adjustedFert": { + "5659198": "553" + } + }, + "0xEE9729290A878bA0C418AeB35E59c43526083DFE": { + "beanFert": { + "6000000": "50" + }, + "adjustedFert": { + "5659198": "50" + } + }, + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a": { + "beanFert": { + "6000000": "47" + }, + "adjustedFert": { + "5659198": "47" + } + }, + "0x935A937903d18f98A705803DC3c5F07277fAb1B6": { + "beanFert": { + "6000000": "42" + }, + "adjustedFert": { + "5659198": "42" + } + }, + "0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a": { + "beanFert": { + "6000000": "94" + }, + "adjustedFert": { + "5659198": "94" + } + }, + "0x68572eAcf9E64e6dCD6bB19f992Bdc4Eff465fd0": { + "beanFert": { + "6000000": "20" + }, + "adjustedFert": { + "5659198": "20" + } + }, + "0xaBA9DC3A7B4F06158dD8C0c447E55bf200426208": { + "beanFert": { + "6000000": "74" + }, + "adjustedFert": { + "5659198": "74" + } + }, + "0x2425F7f9e92e8b8709162F244146F4915AFF3D2F": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911": { + "beanFert": { + "6000000": "21" + }, + "adjustedFert": { + "5659198": "21" + } + }, + "0xDC5d7233CeC5C6A543A7837bb0202449bc35b01B": { + "beanFert": { + "6000000": "25" + }, + "adjustedFert": { + "5659198": "25" + } + }, + "0x234831d4CFF3B7027E0424e23F019657005635e1": { + "beanFert": { + "6000000": "44" + }, + "adjustedFert": { + "5659198": "44" + } + }, + "0xcf5C67136c5AaFcdBa3195E1dA38A3eE792434D6": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0xE203deCCbAdDcb21567DF9C3cAe82e2c481B2a53": { + "beanFert": { + "6000000": "74" + }, + "adjustedFert": { + "5659198": "74" + } + }, + "0x9ffDced20253eA90E13Eb1621447CFB3eC1E775e": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a": { + "beanFert": { + "6000000": "69" + }, + "adjustedFert": { + "5659198": "69" + } + }, + "0xD81a2cC2596E37Ae49322eDB198D84dc3986A3ed": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x06Bbf21A21eca16eB2a23093CC9c5A75D2Dd8648": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54": { + "beanFert": { + "6000000": "35" + }, + "adjustedFert": { + "5659198": "35" + } + }, + "0xa24bae25595E860D415817bE1680885386AAA682": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0xD4ccCdedAAA75E15FdEdDd6D01B2af0a91D42562": { + "beanFert": { + "6000000": "17" + }, + "adjustedFert": { + "5659198": "17" + } + }, + "0x7D38aE457a3E24E5aF60a637638e134c97e2a1d5": { + "beanFert": { + "6000000": "3" + }, + "adjustedFert": { + "5659198": "3" + } + }, + "0x1748672FbFA9D481c80d5feEeEdF7b30135e1F9f": { + "beanFert": { + "6000000": "87" + }, + "adjustedFert": { + "5659198": "87" + } + }, + "0x830575A2Bc43dE4d60D415dD2631b22E81ada059": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x177f44eCDEa293f7124C3071D9C54E59fcfD16f9": { + "beanFert": { + "6000000": "65" + }, + "adjustedFert": { + "5659198": "65" + } + }, + "0x793846163F80233F50d24eF06C44A8b2ba98f1Aa": { + "beanFert": { + "6000000": "100" + }, + "adjustedFert": { + "5659198": "100" + } + }, + "0x01529E0d0C38AdF57Db199AE1cCcd8F8694d8B74": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x542A94e6f4D9D15AaE550F7097d089f273E38f85": { + "beanFert": { + "6000000": "53" + }, + "adjustedFert": { + "5659198": "53" + } + }, + "0x3021D79Bfb91cf97B525Df72108b745Bf1071fE7": { + "beanFert": { + "6000000": "74" + }, + "adjustedFert": { + "5659198": "74" + } + }, + "0x8bCE57b7B84218397FFB6ceFaE99F4792Ee8161d": { + "beanFert": { + "6000000": "76" + }, + "adjustedFert": { + "5659198": "76" + } + }, + "0xC00B46fC0B2673F561811580b0fBf41d56EdCf83": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14": { + "beanFert": { + "6000000": "70" + }, + "adjustedFert": { + "5659198": "70" + } + }, + "0x4C3A97DB74D60410Bf17Ee64Edd98D09997f3929": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x83397cD5C698488176F8aB8Ce19580b75255b977": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE": { + "beanFert": { + "6000000": "54" + }, + "adjustedFert": { + "5659198": "54" + } + }, + "0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e": { + "beanFert": { + "6000000": "95" + }, + "adjustedFert": { + "5659198": "95" + } + }, + "0x1584B668643617D18321a0BEc6EF3786F4b8Eb7B": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x1397c24478cBe0a54572ADec2A333f87Ad75Ac02": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0xdC369e387b1906582FdC9e1CF75aD85774FaC894": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + }, + "0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81": { + "beanFert": { + "6000000": "100" + }, + "adjustedFert": { + "5659198": "100" + } + }, + "0x4e7ceb231714E80f90E895D13723a2c322F78127": { + "beanFert": { + "6000000": "1" + }, + "adjustedFert": { + "5659198": "1" + } + } + }, + "arbContracts": { + "0xd39A31e5f23D90371D61A976cACb728842e04ca9": { + "beanFert": { + "6000000": "2000" + }, + "adjustedFert": { + "5659198": "2000" + } + }, + "0xeCdc4DD795D79F668Ff09961b2A2f47FE8e4f170": { + "beanFert": { + "6000000": "20" + }, + "adjustedFert": { + "5659198": "20" + } + } + }, + "ethContracts": { + "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29": { + "beanFert": { + "3458512": "542767", + "3458531": "56044", + "3470220": "291896", + "6000000": "8046712" + }, + "adjustedFert": { + "3117710": "542767", + "3117729": "56044", + "3129418": "291896", + "5659198": "8046712" + } + }, + "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909": { + "beanFert": { + "3500000": "40000", + "6000000": "51100" + }, + "adjustedFert": { + "3159198": "40000", + "5659198": "51100" + } + }, + "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11": { + "beanFert": { + "6000000": "3025" + }, + "adjustedFert": { + "5659198": "3025" + } + }, + "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E": { + "beanFert": { + "3471974": "10" + }, + "adjustedFert": { + "3131172": "10" + } + }, + "0xea3154098a58eEbfA89d705F563E6C5Ac924959e": { + "beanFert": { + "6000000": "3180" + }, + "adjustedFert": { + "5659198": "3180" + } + } + }, + "storage": { + "fertilizer": { + "1334303": "161", + "1334880": "128", + "1334901": "500", + "1334925": "941", + "1335008": "50", + "1335068": "499", + "1335304": "73", + "1336323": "78", + "1337953": "39", + "1338731": "116", + "1348369": "803", + "1363069": "323", + "1363641": "499", + "1418854": "50", + "1553682": "10", + "1593637": "260", + "2078193": "844", + "2313052": "912", + "2373025": "2236", + "2382999": "578", + "2412881": "196", + "2452755": "130", + "2482696": "1000", + "2492679": "65", + "2502666": "20", + "2687438": "51", + "2702430": "1", + "2767422": "597", + "2811995": "45", + "2871153": "1237", + "2886153": "423", + "2891153": "746", + "2901153": "284", + "2921113": "1500", + "2945769": "101", + "2955590": "500", + "2975557": "342", + "3005557": "283", + "3015555": "997", + "3045431": "955", + "3060408": "564", + "3095329": "451", + "3125329": "5338", + "3130329": "1918", + "3164439": "606", + "3223426": "1240", + "3268426": "3040", + "3278426": "2540", + "3293426": "3020", + "3303426": "97", + "3308426": "1385", + "3313426": "1395", + "3328426": "5294", + "3338293": "176", + "3343293": "1764", + "3363293": "256", + "3383071": "337", + "3393052": "399", + "3398029": "476", + "3413005": "9110", + "3418005": "1471", + "3423005": "54094", + "3428005": "3434", + "3433005": "526", + "3438005": "2346", + "3439448": "28808", + "3441470": "21596", + "3441822": "73300", + "3443005": "12780", + "3443526": "894", + "3445713": "129893", + "3446568": "47829", + "3447839": "95931", + "3447990": "8818", + "3450159": "32160", + "3452316": "51309", + "3452735": "95601", + "3452989": "607", + "3455539": "4130", + "3457989": "6564", + "3458512": "654416", + "3458531": "59400", + "3461694": "2987", + "3462428": "15741", + "3463060": "55490", + "3465087": "3095", + "3465205": "28787", + "3466192": "12030", + "3467650": "122662", + "3468402": "149224", + "3468691": "100", + "3470075": "7958", + "3470220": "350230", + "3471339": "130195", + "3471974": "176919", + "3472026": "201971", + "3472520": "15388", + "3476597": "15753", + "3480951": "4383", + "3485472": "11003", + "3490157": "31160", + "3495000": "3032", + "3500000": "70842", + "6000000": "14364122" + }, + "nextFid": { + "1334303": "1334880", + "1334880": "1334901", + "1334901": "1334925", + "1334925": "1335008", + "1335008": "1335068", + "1335068": "1335304", + "1335304": "1336323", + "1336323": "1337953", + "1337953": "1338731", + "1338731": "1348369", + "1348369": "1363069", + "1363069": "1363641", + "1363641": "1418854", + "1418854": "1553682", + "1553682": "1593637", + "1593637": "2078193", + "2078193": "2313052", + "2313052": "2373025", + "2373025": "2382999", + "2382999": "2412881", + "2412881": "2452755", + "2452755": "2482696", + "2482696": "2492679", + "2492679": "2502666", + "2502666": "2687438", + "2687438": "2702430", + "2702430": "2767422", + "2767422": "2811995", + "2811995": "2871153", + "2871153": "2886153", + "2886153": "2891153", + "2891153": "2901153", + "2901153": "2921113", + "2921113": "2945769", + "2945769": "2955590", + "2955590": "2975557", + "2975557": "3005557", + "3005557": "3015555", + "3015555": "3045431", + "3045431": "3060408", + "3060408": "3095329", + "3095329": "3125329", + "3125329": "3130329", + "3130329": "3164439", + "3164439": "3223426", + "3223426": "3268426", + "3268426": "3278426", + "3278426": "3293426", + "3293426": "3303426", + "3303426": "3308426", + "3308426": "3313426", + "3313426": "3328426", + "3328426": "3338293", + "3338293": "3343293", + "3343293": "3363293", + "3363293": "3383071", + "3383071": "3393052", + "3393052": "3398029", + "3398029": "3413005", + "3413005": "3418005", + "3418005": "3423005", + "3423005": "3428005", + "3428005": "3433005", + "3433005": "3438005", + "3438005": "3439448", + "3439448": "3441470", + "3441470": "3441822", + "3441822": "3443005", + "3443005": "3443526", + "3443526": "3445713", + "3445713": "3446568", + "3446568": "3447839", + "3447839": "3447990", + "3447990": "3450159", + "3450159": "3452316", + "3452316": "3452735", + "3452735": "3452989", + "3452989": "3455539", + "3455539": "3457989", + "3457989": "3458512", + "3458512": "3458531", + "3458531": "3461694", + "3461694": "3462428", + "3462428": "3463060", + "3463060": "3465087", + "3465087": "3465205", + "3465205": "3466192", + "3466192": "3467650", + "3467650": "3468402", + "3468402": "3468691", + "3468691": "3470075", + "3470075": "3470220", + "3470220": "3471339", + "3471339": "3471974", + "3471974": "3472026", + "3472026": "3472520", + "3472520": "3476597", + "3476597": "3480951", + "3480951": "3485472", + "3485472": "3490157", + "3490157": "3495000", + "3495000": "3500000", + "3500000": "6000000", + "6000000": "0" + }, + "activeFertilizer": "17216958", + "fertilizedIndex": "5654645373178", + "unfertilizedIndex": "95821405245000", + "fertilizedPaidIndex": "5654645373178", + "fertFirst": "1334303", + "fertLast": "6000000", + "bpf": "340802", + "recapitalized": "7911825820391", + "leftoverBeans": "0" + } +} \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/exports/beanstalk_field.json b/scripts/beanstalkShipments/data/exports/beanstalk_field.json new file mode 100644 index 00000000..e528b453 --- /dev/null +++ b/scripts/beanstalkShipments/data/exports/beanstalk_field.json @@ -0,0 +1,10660 @@ +{ + "arbEOAs": { + "0x01e82e6c90fa599067E1F59323064055F5007A26": { + "250630106837323": "9835054149", + "271564081166027": "11996796641" + }, + "0x01914D6E47657d6A7893F84Fc84660dc5aec08b6": { + "161008505296022": "59835371765", + "220345009313365": "35022592719", + "203740452863746": "331258939473" + }, + "0x029D058CFdBE37eb93949e4143c516557B89EB3c": { + "595201581720334": "13019870000" + }, + "0x028afa72DADB6311107c382cF87504F37F11D482": { + "88980933457000": "260798082000", + "403609405042428": "1204607540000", + "165762525917307": "134261600000", + "31694149901004": "10000000000", + "31680582016164": "13567884840" + }, + "0x00aaEa7B4dC89E4a4fACDa32da496ba5D8E1216d": { + "198222929373984": "177840000000", + "213966489513043": "131880000000", + "152495636400366": "162190000000", + "186070060533295": "122194014367", + "264439440285636": "202965998727", + "264835796698496": "90135360000", + "264761163408667": "60578809843" + }, + "0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97": { + "198178936313645": "26788151839" + }, + "0x02A527084F5E73AF7781846762c8753aCD096461": { + "273300100037819": "48981431387" + }, + "0x0259D65954DfbD0735E094C9CdACC256e5A29dD4": { + "164374645848934": "13153879503" + }, + "0x0255b20571acc2e1708ADE387b692360537F9e89": { + "248449135389299": "64992665273" + }, + "0x00427C81629Cd592Aa068B0290425261cbB8Eba2": { + "159283729997792": "224945750526", + "236391103218862": "323552874641", + "158383620094496": "31759311271", + "235858732140980": "196600091571", + "158383612870588": "7223908", + "159131870998418": "50970469725" + }, + "0x02df7e960FFda6Db4030003D1784A7639947d200": { + "644019352019251": "5592069316", + "202100397809503": "89570739830", + "579119779500346": "32004132279", + "306863667237270": "89814117243", + "639380428770236": "1029829519", + "654773025670147": "204556800000" + }, + "0x047B22BFE547d29843c825dbcBd9E0168649d631": { + "278656584207432": "5000000000", + "232474752844281": "5000000000" + }, + "0x0440bDd684444f1433f3d1E0208656abF9993C52": { + "521040915676690": "42943568151", + "312797040785101": "45302318890" + }, + "0x05Dc8E95a479dDA8C8Fc5a27Eb825f5042048937": { + "180970626995979": "48687410197", + "206001105715493": "441400000000", + "310885305686381": "130307882672" + }, + "0x0399ecFbb2a9D0D520738b3179FA685cD5c6D692": { + "264986144808777": "4512552964", + "264937684551753": "40827127085" + }, + "0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8": { + "170579265565887": "128204242520", + "170212310114246": "42212058637", + "148091610285568": "11650000023", + "173259178678108": "76785972127", + "181092044450627": "176370890696", + "213705385002983": "232473608236", + "174337586828057": "89069724637", + "174010458954771": "88530245061", + "298876493215442": "110000000022", + "237448312455848": "80785205928", + "342012631922444": "89548106083", + "378158809509510": "64814486924", + "395537472788740": "13450636839", + "385722803693321": "64017873961" + }, + "0x072Fa8a20fA621665B94745A8075073ceAdFE1DC": { + "232664752844281": "1258344408", + "564770701405208": "14602525520", + "390752246489046": "2694713257" + }, + "0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122": { + "227504823719295": "18305090101" + }, + "0x083aA7FF9AE00099471902178bf2fda4e6aC14Bf": { + "54605352573055": "1373342955832", + "511318033449950": "4995900000000" + }, + "0x0872FcfE9C10993c0e55bb0d0c61c327933D6549": { + "445035429115281": "3504591163976" + }, + "0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b": { + "144129589980200": "93939450745" + }, + "0x0968d6491823b97446220081C511328d8d9Fb61D": { + "199622692062377": "55851479923", + "191771322130874": "10149461593" + }, + "0x0933F554312C7bcB86dF896c46A44AC2381383D1": { + "637256662048120": "91670658400", + "75962018752740": "33932867140", + "76029285005813": "70534236366", + "637203420394982": "44433251272", + "4948581590186": "4285968142", + "768788451162563": "346152924157", + "770983855480092": "143688821720", + "770610924713096": "286285987606", + "639671571035721": "16260418699", + "774196900221362": "312721607422", + "781434059035895": "379600000000", + "779159620841278": "375150000000", + "782695732185651": "419849681838", + "782002561454671": "451981999254", + "785520117004169": "872694086398", + "792033220145217": "624274000000", + "794166860682938": "1147301756523", + "786872877610696": "1183774050841", + "790926512334565": "1106707810652", + "795314475906460": "724139532487", + "796123272256431": "2163507174639", + "802387954510833": "80990864682", + "798520847002038": "1449652715577", + "806560075452845": "1537161274244", + "808270026917177": "289613602687", + "808808454660540": "32924291737", + "845876085704226": "647085248223", + "803699745375515": "1511781533128", + "856782173429570": "799024050000", + "849733863279818": "7048310149752", + "813742233061142": "1573900000000", + "847046659940656": "1015442311180", + "849730193001450": "3670278368", + "861657683658414": "31158988487", + "866036421812532": "464894511809", + "866868551952987": "33054418018" + }, + "0x09Ad186D43615aa3131c6064538aF6E0A643Ce12": { + "655692536961572": "84542994300" + }, + "0x09Bc3c127ED4c491880c2A250d6d034696cb5fC1": { + "56077320181011": "125474075", + "653677610727629": "1746693893", + "650549744433769": "1644150213" + }, + "0x0b8e605A7446801ae645e57de5AAbbc251cD1e3c": { + "56261017595313": "1552792281176", + "98813277230758": "356881824000", + "61231506965950": "21058843918", + "56115965863904": "12681413672", + "20299977829142": "861309250", + "139705824222021": "33077610000", + "159874753759829": "42005288414", + "150342682446852": "14981210723", + "568541412467146": "18284615400", + "106873115964096": "66666666666", + "595090378032834": "7641038500", + "630545389544300": "2555702594", + "631797578198905": "1674567409", + "634131648262911": "2024888736", + "762056272060652": "181400000000" + }, + "0x0baBD9Eba4c7C739Edd2dBCd6de0b7C483068948": { + "181073119150560": "18925300067" + }, + "0x0C040E41b5b17374b060872295cBE10Ec8954550": { + "92996221514521": "9964227433", + "768777478216036": "1310476723" + }, + "0x0ccBCaA60D8b59bDf751B70Ee623d58c609170ac": { + "634366668748281": "2959780489", + "634958080907460": "1355977905", + "634189073034040": "1210963754" + }, + "0x0e109847630A42fc85E1D47040ACAd1803078DCc": { + "648989245627814": "984567024" + }, + "0x0DE299534957329688a735d03961dBd848A5f87f": { + "636987086143808": "56157982228", + "639005904612896": "65168474382", + "637120276063881": "5830146448" + }, + "0x0e40Cf5c020ADa54351699a004fAEbE5e709a3A2": { + "448966639298230": "1877710176" + }, + "0x0e4D2c272f192bCC5ef7Bb3D8A09bdA087652162": { + "861103918869384": "94606769" + }, + "0x0f26F792fB89daF87A10a40f57eD1a0093b74Ad7": { + "160073146671939": "98509439990", + "202835949108961": "89002945570" + }, + "0x0E9a7280741E9B018beb5Fe409e6e21689F3B8EF": { + "343671663869999": "555555555" + }, + "0x0f5F4b5b7ca352cf4F5f2fc1Ac8A9889DECc4fCB": { + "157698716364429": "90796678203", + "318150712799757": "95195252943" + }, + "0x0F7aFAa9DAC8F9ada59a25fa02AA6Ab32E56b145": { + "168882327009280": "78593971335", + "406190034469921": "20158944528", + "390729333501009": "22912988037", + "579044378164375": "19113929431" + }, + "0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59": { + "741273327225627": "991516800" + }, + "0x0FBF5E9C8D7cB0AeDd6F02Df0018178099c7d76A": { + "265965807485712": "28823695338", + "282510387165861": "38293655362", + "266002722071955": "26954073714" + }, + "0x10bf1Dcb5ab7860baB1C3320163C6dddf8DCC0e4": { + "411790424968430": "3440214113127", + "235309513003938": "43811488957", + "320237788655909": "1248107035238", + "284327267036275": "7622833600000" + }, + "0x1083D7254E01beCd64C3230612BF20E14010d646": { + "306838460449130": "25206788140", + "260016533868529": "10000000000", + "390519926441157": "38976000000", + "271716143041810": "145150909249", + "61109178571449": "1", + "586652306772245": "50000000000", + "586380559477556": "42000000", + "643044362076002": "1850039534", + "743340723385888": "15655978265" + }, + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040": { + "681678394686893": "7527748761", + "742249933817806": "375414" + }, + "0x11D86e9F9C2a1cF597b974E50C660316c92215AA": { + "574157923216400": "18405369858" + }, + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043": { + "361234476058040": "2406000000" + }, + "0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186": { + "564785303930728": "1165879450" + }, + "0x1348EA8E35236AA0769b91ae291e7291117bf15C": { + "489737823532": "616643076" + }, + "0x12f1412fECBf2767D10031f01D772d618594Ea28": { + "406186663275278": "1685616675", + "452060678873257": "27897692308", + "406188348891953": "1685577968" + }, + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3": { + "145498413266148": "42841247573", + "145541254513721": "42783848059" + }, + "0x13b1ddb38c80327257Bdcb0e321c834401399967": { + "644382876705008": "2502367588" + }, + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3": { + "61084721727512": "2500000000" + }, + "0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b": { + "158530779405767": "1610099875" + }, + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1": { + "672251516338595": "2387375166", + "672351094760624": "421577971", + "634772027987253": "1040000000", + "624243091995454": "203615000", + "646732029674264": "2437432840", + "738155444487185": "20323399607", + "681986234524446": "291165686", + "760471037973169": "1145095488", + "840552181305501": "1108572912315" + }, + "0x14A9034C185f04a82FdB93926787f713024c1d04": { + "859976582989678": "122609442232" + }, + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b": { + "828593773626551": "157785618045", + "782454543582055": "64162381017" + }, + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53": { + "33226393240138": "903943566", + "798286961231309": "8915991349", + "489713229332": "24594200" + }, + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF": { + "623644302297490": "529063312964", + "611728295781189": "10622053659968" + }, + "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573": { + "646991286880723": "18" + }, + "0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21": { + "227831611065108": "45528525078" + }, + "0x15e83602FDE900DdDdafC07bB67E18F64437b21e": { + "264704722565446": "47834854016" + }, + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F": { + "151982845144538": "102043966209", + "27663859276277": "11430287315", + "216890054194355": "109550000000", + "202189968549333": "109329481723", + "12908130692247": "69000000000", + "221296963314728": "303606880000", + "223966850287188": "215672515793", + "250110190299545": "136745811108", + "326600447749933": "56701527977", + "259103817552461": "213600000000", + "337312629850712": "524000000000", + "331820011408947": "77550000000", + "532596882341520": "74008715512", + "550963442752539": "77710549315", + "551147545041854": "77448372715", + "580467264306437": "385627368167", + "591553190653012": "192654267895", + "550767344271171": "154323271198", + "588844255968994": "7190333320", + "643053831916029": "6077435843", + "643685414367282": "9539096044", + "643678692520761": "6721846521", + "643671783551535": "6908969226", + "588851446302314": "24416902119" + }, + "0x15e6e23b97D513ac117807bb88366f00fE6d6e17": { + "530478666236974": "125209382874", + "530421557497402": "35719340050", + "498236313145011": "437186238884", + "521083859244841": "1766705104317" + }, + "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3": { + "605868357905297": "390832131713", + "365422620670212": "1865083098796", + "72575956226539": "357542100000", + "89241731539000": "1175500000023", + "389039821567282": "1434547698166", + "748316175461834": "2915005876762" + }, + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE": { + "109546800679552": "200302309", + "646819721059395": "4169534646", + "635887570024580": "8122037505", + "635843453941744": "920876600", + "705891222986739": "622068", + "767503022441087": "48133673" + }, + "0x168c6aC0268a29c3C0645917a4510ccd73F4D923": { + "672650193633312": "29376243060" + }, + "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d": { + "859906883476476": "2259704612", + "860324021288753": "3253278012", + "859973554233311": "3028756367", + "916943532304574": "14518741904" + }, + "0x16785ca8422Cb4008CB9792fcD756ADbEe42878E": { + "267302406877711": "20209787690" + }, + "0x183be3011809A2D41198e528d2b20Cc91b4C9665": { + "213937858611219": "791280000", + "215796197676279": "266104007323", + "213938649891219": "27839621824" + }, + "0x16942d62E8ad78A9026E41Fab484C265FC90b228": { + "160756595271818": "3293294269" + }, + "0x184CbD89E91039E6B1EF94753B3fD41c55e40888": { + "768598545236540": "3341098908" + }, + "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b": { + "768088349260906": "329449782" + }, + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F": { + "319075687721742": "251763737525", + "33215450796739": "221122", + "325660782915205": "87903418092", + "337948671929972": "30560719176", + "167688132852087": "7229528214", + "406165758407037": "20904868241", + "484393115998796": "25643572670", + "523525792584925": "42093860151", + "531743475414269": "42662135276", + "507664641811907": "72403522735", + "567485763782146": "9489375000", + "567697693157146": "9489375000", + "570996126104484": "9489375000", + "565670483245977": "18978750000", + "571208055479484": "9489375000", + "579663431710697": "76688553531", + "589010494454925": "54681668957", + "606259190037010": "65298375971", + "624604559266391": "39404468562", + "645423885109546": "386055000000", + "647867951570440": "13807475000" + }, + "0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C": { + "720950939776219": "15067225270" + }, + "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD": { + "259604231361612": "361835231607", + "258082732262740": "167225426282" + }, + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C": { + "76197765704929": "4483509093", + "624723028217150": "131393988394", + "636308866306005": "8420726212", + "639647047295076": "24523740645", + "635895692062085": "9135365741" + }, + "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b": { + "212720660289097": "405214898001" + }, + "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d": { + "643132812995983": "40000000000", + "643906455631587": "3366190225" + }, + "0x1a368885B299D51E477c2737E0330aB35529154a": { + "318979377505709": "96310216033" + }, + "0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b": { + "170254522172883": "17764281739" + }, + "0x1d264de8264a506Ed0E88E5E092131915913Ed17": { + "649244006768867": "4669501379", + "796038682086854": "84590167390" + }, + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7": { + "229945432548668": "8363898233", + "153700721920471": "531500000", + "279072354530852": "5849480200", + "220191598626128": "187950000", + "229939110243935": "6322304733", + "279068417135852": "3937395000" + }, + "0x1aD66517368179738f521AF62E1acFe8816c22a4": { + "640886662352708": "43494915041", + "634197083749312": "3652730115", + "639424921077105": "10000000000", + "38725058902818": "4046506513", + "634438435405713": "6190991388", + "680807511563555": "7644571244" + }, + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8": { + "433393784368": "736682080", + "401540811995625": "5331732217", + "160699226852463": "19581291457" + }, + "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974": { + "72498640963293": "15344851129", + "531786137549545": "52512241871", + "254221973427847": "134379000000" + }, + "0x1faD27B543326E66185b7D1519C4E3d234D54A9C": { + "38060755842898": "10000000000", + "3801746560076": "1000000000" + }, + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7": { + "781813701764341": "29578830513" + }, + "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb": { + "331711562300586": "14540205488", + "336942217514274": "6716741513", + "336163982041551": "11093799305", + "338375415070333": "12611715224" + }, + "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e": { + "655813561952324": "110759009", + "742491932947261": "50650088368" + }, + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B": { + "634819675697276": "2308620655", + "109584713085687": "1273885350" + }, + "0x2032d6Fa962f05b05a648d0492936DCf879b0646": { + "167642878992324": "21180650802", + "189165629280356": "22812490844", + "188809726173585": "7159870568", + "220191786590698": "12020746267" + }, + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D": { + "681711033814749": "10245080960", + "726097732002229": "14602599487", + "376477661392189": "8428341425", + "859260757600987": "16570064186" + }, + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406": { + "420828345506": "1377517", + "649774091964491": "225355921", + "76028661799786": "19169818", + "636825631243466": "17394829", + "741728265380372": "1485847896", + "741904058094753": "5645699", + "741904037383620": "10245498", + "741725221579960": "841394646", + "741941701669357": "92867236", + "741726881642106": "1383738266", + "742543415225088": "372130074", + "741941609515479": "92153878", + "741904047629118": "10465635", + "742491364647261": "568300000", + "742559245319507": "23574", + "742542697400264": "717824824", + "742559245343081": "1417000000", + "742546464455268": "549510", + "742546475800692": "13800216", + "741949293105425": "569000000", + "743356385356542": "3305213", + "743713785812675": "470214653", + "742543787625982": "1418750000", + "742042342168349": "435226", + "742545206375982": "1258079286", + "742542583035629": "114364635", + "743356379364153": "5992389", + "743714256027328": "748372634", + "742543787355162": "270820", + "743722930608746": "811945", + "743715004399962": "227807703", + "742546465004778": "10795914", + "744405537675934": "28404548", + "743722309717315": "620891431", + "744405511195504": "26480430", + "759845712799584": "53840934", + "759793466361829": "819071019", + "744405566080482": "26650792", + "744763627950609": "1402000000", + "759844901514523": "53934662", + "759820898656942": "80837003", + "744732788119609": "1401250000", + "759848400175498": "195479514", + "744762226700609": "1401250000", + "759846649887836": "304771266", + "759821429891748": "342360149", + "759845970911102": "87772583", + "759761297068193": "383411", + "759864601964356": "21553814", + "759865449369451": "53414936", + "759849907168404": "16253699", + "759864586657374": "4116617", + "759864757676067": "33837399", + "759865263825653": "45526410", + "759940800175842": "40606663", + "759864595987803": "5976553", + "759864791513466": "2739149", + "759865544782499": "993492", + "759864590773991": "5213812", + "759942162471691": "1897738286", + "759944486840696": "37991124", + "759940393217964": "38630505", + "759865147227268": "42017555", + "759944631617600": "33378", + "759940012120851": "23725468", + "759935125236365": "45905339", + "759944619765922": "11358356", + "759940595592986": "107661120", + "759940503415698": "26325085", + "759944060209977": "241078908", + "759944631124278": "51906", + "759940865471691": "1297000000", + "759944450213180": "36627516", + "759945516088082": "36709909", + "759944963133585": "87037848", + "759967014934113": "20249217", + "759940840782505": "24689186", + "759945392492147": "42108896", + "759944823021573": "53380815", + "759946051348440": "38327918", + "759945868690635": "7586684", + "759945973296146": "19315364", + "759945935904078": "19702291", + "759946031550145": "19798295", + "759944821366270": "25686", + "759945477571703": "38516379", + "759945897174446": "20964956", + "759967925396858": "87139341", + "759967810587867": "28296198", + "759968250860141": "52891473", + "759945236898415": "64214208", + "759944631650978": "59927806", + "759968215991934": "34868207", + "759945224833937": "12027360", + "759946089676358": "1264250000", + "759945301112623": "91379524", + "759967610591800": "40621903", + "759967002196227": "1067960", + "759945725301987": "136593205", + "759945918139402": "17764676", + "759968950027700": "80148595", + "759967704315497": "53110612", + "759945137778477": "87055460", + "759945955606369": "17689777", + "759945992611510": "19419665", + "759944821460775": "1560798", + "759968181181183": "34810751", + "759967009062179": "5871934", + "759945552797991": "37022875", + "759967838884065": "86512793", + "759967651213703": "53101794", + "759945697126264": "9283973", + "759968622494844": "84942957", + "759969030176295": "53806658", + "759945861895192": "6795443", + "759945706410237": "174300", + "759968792685315": "77422809", + "759945876277319": "20897127", + "759968012536199": "87943134", + "759968100479333": "80701850", + "759945626880578": "37098116", + "759968870108124": "79919576", + "759967035183330": "191466067", + "759967590621088": "19970712", + "759969083982953": "11106068", + "759969095089021": "754844", + "759970831699973": "28787919", + "759970731379838": "64736772", + "759967226649397": "89244217", + "759945434601043": "42970660", + "759967432417085": "84963582", + "759945706584537": "18717450", + "759944691578784": "129787486", + "759945589820866": "37059712", + "759969531321250": "88939198", + "759970263350597": "63434690", + "759969268879963": "44248597", + "759969477612220": "53709030", + "759946012031175": "19518970", + "759967517380667": "73240421", + "759970536185077": "96930960", + "759970326785287": "209399790", + "759969391981569": "85630651", + "759970796116610": "35583363", + "759968477551165": "87498268", + "759970880258983": "15686626", + "759970657007297": "2958794", + "759945050171433": "87607044", + "759969095843865": "86600675", + "759970667003745": "64376093", + "759944821391956": "68819", + "759969798689373": "123574577", + "759970860487892": "19771091", + "759967003264187": "5797992", + "759969620260448": "178428925", + "759970633116037": "23891260", + "759967757426109": "53161758", + "759968707437801": "85247514", + "759970183422288": "79928309", + "759971627851715": "54459743", + "759971483927874": "104457385", + "759971379779125": "104148749", + "759971682311458": "54613470", + "759972216646270": "53864309", + "759971071661075": "100272607", + "760353442214928": "935137", + "760353444040772": "934897", + "759972161919679": "54726591", + "759971588385259": "39466456", + "760353985817320": "21080639", + "759971275765356": "104013769", + "759971736924928": "55455079", + "760353439633785": "2581143", + "760353443150065": "890707", + "760353446924252": "444260593", + "760354227302562": "11536310", + "760357797387632": "70550823", + "760358069654824": "54081133", + "760354071554435": "45612372", + "760357673905447": "54141970", + "760353418325910": "21307875", + "760354026093921": "45460514", + "760354191339880": "696496", + "760354117166807": "36974408", + "760357566025048": "53933512", + "760354204355953": "470384", + "760354216002096": "11300466", + "759970984286242": "87374833", + "760354195638182": "2606436", + "760357728047417": "69340215", + "760357619958560": "53946887", + "760357867938455": "70867493", + "760358015808387": "53846437", + "760354174064616": "17275264", + "760354204826337": "11175759", + "760353909203783": "53690506", + "760354192036376": "1303460", + "760357938805948": "24481635", + "760353891184845": "18018938", + "760353444975669": "1008171", + "760354193339836": "2298346", + "760354006897959": "19195962", + "760354154141215": "19923401", + "760353962894289": "22923031", + "760357512160486": "53864562", + "760353445983840": "940412", + "761807541489361": "835669", + "761807540441276": "429708", + "761857751531502": "13484900", + "761857703266835": "34787792", + "761818940422306": "984887", + "761857836613098": "53726319", + "761808254646701": "457637", + "760470665658443": "785942", + "761857738054627": "13476875", + "761807540870984": "618377", + "761857969004003": "27685781", + "761807540280731": "160545", + "762295175383754": "53936630", + "761857686187423": "17079412", + "761857611272333": "28944037", + "762295750137282": "79440408", + "761857765016402": "27660968", + "761857640216370": "22956002", + "760470667588689": "1310135", + "761857792677370": "43935728", + "762295391419018": "54159010", + "762295064062834": "111320920", + "761857941348808": "27655195", + "761857890339417": "31567337", + "762295696622532": "53514750", + "761857921906754": "19442054", + "762295445578028": "53483677", + "761857996689784": "14517084", + "761861153261453": "17618940", + "762295229320384": "54010885", + "762295580014262": "86989838", + "761861170880393": "52708112", + "762941535359284": "2889658", + "762940872607458": "54177313", + "760470666444385": "1144304", + "761861223588505": "1133750000", + "762295283331269": "54033702", + "762839409673019": "1124000000", + "762295829577690": "88554558", + "762295667004100": "29618432", + "761857663172372": "23015051", + "762295337364971": "54054047", + "762941319015824": "54362634", + "762941265449370": "53566454", + "762940926784771": "55156263", + "762927030763486": "1123500000", + "762926916547751": "98431377", + "762941538248942": "46035569", + "762927014979128": "15784358", + "762941211932186": "53517184", + "762941055474680": "156457506", + "762941003155084": "52319596", + "762941435120911": "100238373", + "763454272407770": "3194591", + "763803297529274": "53478200", + "763707900610993": "1115750000", + "763876965675995": "87811", + "763877315984662": "11924506", + "763876887479990": "390583", + "763877143199595": "53513899", + "763876942972769": "1578152", + "763876965763806": "46267543", + "763877305809564": "9728992", + "763876946822805": "18853190", + "763877500454321": "53637818", + "763876887870573": "55102196", + "763877089726413": "53473182", + "763877315566929": "65545", + "763877315538556": "28373", + "763879378249844": "7153056", + "763879385402900": "7227368", + "763879392630268": "11477736", + "763877315632474": "92711", + "763879404108004": "10660055", + "763898408185121": "64002031", + "763877775783746": "36230820", + "763877454434453": "2130383", + "763904669689059": "18842007", + "763877671602766": "43770152", + "763877559085126": "78649", + "763898506920948": "861786", + "763877327909168": "19203818", + "763904604592937": "29092593", + "763877315831012": "153650", + "763877456564836": "43889485", + "763904720947114": "15825494", + "763904651670509": "18018550", + "763877615021613": "53699711", + "763877012031349": "59141147", + "763904633685530": "17984979", + "763877315725185": "105827", + "763877561341934": "53679679", + "763899495538368": "9243915", + "763904705219934": "15727180", + "763899504782283": "37968961", + "763898344398867": "63786254", + "763904688531066": "16688868", + "763879414768059": "11118127", + "763898507782734": "10162644", + "763904794966676": "8970126", + "763904736772608": "17883715", + "763904779633335": "10728257", + "763877554092139": "4992987", + "763877668721324": "2881442", + "763904790361592": "4605084", + "763877812014566": "71702191", + "763904769103300": "10530035", + "763904767184551": "1918749", + "763904754656323": "12528228", + "763877715372918": "60410828", + "763876849645270": "37834720", + "763803351007474": "54572785", + "763876749529752": "46564085", + "763876796093837": "53551433", + "763792492493475": "1116000000", + "763910642066339": "73796314", + "763910619581527": "12428237", + "763944448544389": "15498278", + "763910604106528": "3311197", + "763938649705538": "15087847", + "763910595276884": "8829644", + "763910607417725": "12163802", + "763910632009764": "10056575", + "763953567332761": "11465066", + "763953616497872": "7982235", + "763953624480107": "9765854", + "763975892054034": "85627588", + "763953555997099": "11335662", + "763953544714351": "11282748", + "763953644043036": "1044500000", + "763953533706671": "11007680", + "763975806959978": "85094056", + "763944488872910": "24944523", + "763944464042667": "24830243", + "763953603611124": "12886748", + "763978523729890": "9413342", + "763953634245961": "9797075", + "763978452917294": "8046683", + "763978479335665": "4689652", + "763978496922984": "8815547", + "763977822667370": "3016979", + "763953590733578": "12877546", + "763978552933925": "19789932", + "763978542560117": "10373808", + "763978424126203": "9543362", + "763983207512362": "9837030", + "763981005309782": "8883084", + "763978443280861": "9636433", + "763978433669565": "9611296", + "763978394784096": "29342107", + "763983218450221": "66658", + "763953578797827": "11935751", + "763977825684349": "3091465", + "763978386164008": "8620088", + "763978460963977": "10828154", + "763983173100113": "901279", + "763983174001392": "11304378", + "763981023177865": "9076772", + "763978514586346": "9143544", + "763977828775814": "557388194", + "763978484025317": "12897667", + "763983218516879": "73073", + "763983217349392": "1100829", + "763978533143232": "9416885", + "763981014192866": "8984999", + "763978471792131": "7543534", + "763983162727275": "10372838", + "763983185305770": "11337518", + "763983406905488": "1866587", + "763983444147323": "10906649", + "763983235663532": "104758", + "763983424502497": "9795651", + "763983455053972": "11996728", + "763983408772075": "9980195", + "763983467050700": "8506342", + "763985950944758": "10334991", + "763983219004030": "16583629", + "764056326097538": "13040915", + "763983334791777": "5644455", + "763985939609552": "11006773", + "763983236088050": "347778", + "764056912772119": "9213207", + "764056313282603": "12814935", + "763983340436232": "7945168", + "763983235587659": "75873", + "764056901390614": "2177420", + "763983326501080": "8290697", + "763983348381400": "13385894", + "763985928672040": "10937512", + "763983218589952": "414078", + "763985950616325": "328433", + "763983305487564": "10457152", + "764056890421198": "10969416", + "764056863375790": "12804398", + "764059101865032": "4195172", + "764056285307640": "9063092", + "764058367111510": "11163969", + "764058389576217": "5496270", + "763983315944716": "10556364", + "764058395072487": "361195", + "763983418752270": "5750227", + "763983235768290": "319760", + "764056876180188": "14241010", + "764058396205786": "696608867", + "763983361767294": "45138194", + "764056903568034": "9204085", + "764056855356215": "8019575", + "764059092814653": "9050379", + "764059146123479": "10009538", + "764058395433682": "772104", + "764059117596062": "255180", + "764060090057899": "9732642", + "764059126820520": "9303793", + "764059106060204": "11535858", + "764058378275479": "11300738", + "764059117851242": "8969278", + "764060081853851": "8204048", + "764059157349701": "33393007", + "764059136124313": "9999166", + "764060099790541": "10150423", + "764059156133017": "1216684", + "764059191478085": "10266010", + "764059190742708": "735377", + "764100324024242": "18573856", + "764115364005276": "35299689", + "764115406012080": "10253563", + "764111950239427": "944000000", + "764100306041728": "17982514", + "764113477005276": "943500000", + "764115399304965": "6707115", + "764451728765461": "10443811", + "764452645434589": "3190831", + "764114420505276": "943500000", + "764452681206110": "5437824", + "764453238662922": "9945879", + "764451708497435": "10007361", + "764115416265643": "52697117", + "764452703084709": "4836310", + "764452737604505": "8786495", + "764113461776720": "6235875", + "764453276023995": "18998861", + "764452735085521": "1617109", + "764451718504796": "10260665", + "764452672998259": "8207851", + "764452715309017": "5693285", + "764451750093358": "895341231", + "764452664857517": "8140742", + "764454208761531": "344483", + "764452755187994": "483474928", + "764452746391000": "8796994", + "764113468012595": "8992681", + "764451739209272": "10884086", + "764115468962760": "940750000", + "764452688308927": "6680863", + "764454200747569": "8013962", + "764452721002302": "7659096", + "764438000829295": "946000000", + "764331262748162": "945750000", + "764453248608801": "9384752", + "764452710268550": "2444950", + "764452656731669": "8125848", + "764452707921019": "2347531", + "764452686643934": "1634581", + "764452712713500": "2595517", + "764452696380785": "6703924", + "764452736702630": "901875", + "764452688278515": "30412", + "764453257993553": "18030442", + "764452694989790": "1390995", + "764454241857660": "10385991", + "764454356573592": "244246", + "764454232353672": "9503988", + "764454356817838": "399227", + "764454213921411": "8933515", + "764454312781240": "8991244", + "764454222854926": "9498746", + "764454321772484": "12424176", + "764454358575212": "591362", + "764454290989029": "9335269", + "764454356385139": "188453", + "764454281680431": "9308598", + "764454262711090": "9988705", + "764454357217065": "428167", + "766112773148016": "905500000", + "764454358082213": "492999", + "764454339688243": "16696896", + "764454300324298": "7550863", + "764457158712640": "9556834", + "764454334196660": "4683059", + "764454252243651": "10467439", + "764454209106014": "3844352", + "764454338879719": "808524", + "764454272699795": "8980636", + "764454357645232": "436981", + "764453295022856": "19005242", + "764454307875161": "4906079", + "767983237407155": "53575704", + "767984557666083": "88333125", + "768005141832580": "81397820", + "767983400104436": "47061647", + "767983344751711": "55352725", + "767984645999208": "129427752", + "768005021619380": "54621494", + "767983184669679": "52737476", + "767983447166083": "1110500000", + "768003822182998": "1121250000", + "768005076240874": "65591706", + "768005223230400": "89638206", + "768004943433356": "78186024", + "768005401085066": "85936196", + "767983290982859": "53768852", + "768005312868606": "88216460", + "768005487021262": "88956801", + "768006284178011": "88084070", + "768006108101322": "88031169", + "768006372262081": "88157182", + "768006460420859": "1111500000", + "768059312907313": "87683732", + "768006196132491": "88045520", + "768056539802666": "124378256", + "768059573653110": "86619651", + "768059660272761": "87730086", + "768057551762077": "132785034", + "768058871493374": "86484069", + "768055033287471": "1118250000", + "768058784564381": "86928993", + "768056664180922": "119219224", + "768059400591045": "86467952", + "768059044994317": "88333175", + "768059834400537": "86441349", + "768057684547111": "149829249", + "768056280053235": "127000562", + "768058695732148": "88832233", + "768056904169092": "128280239", + "768058957977443": "87016874", + "768059224996897": "87910416", + "768058524884871": "83536024", + "768057290493283": "129626968", + "768059133327492": "91669405", + "768056151539394": "128513841", + "768059487058997": "86594113", + "768059748002847": "86397690", + "768056407053797": "132748869", + "768060009185434": "88187255", + "768060097372689": "123265068", + "768058608420895": "87311253", + "768057160925595": "129567688", + "768059920841886": "88343548", + "768057420120251": "131641826", + "768056783400146": "120768946", + "845854664288223": "3559343229", + "859627528207302": "22832250", + "845866435719825": "1723984401", + "859839448707147": "1781388", + "845863187056234": "3248663591", + "859839403662421": "1613900", + "859839405276321": "19836791", + "859839450488535": "9760866", + "859839403492930": "169491", + "859839403331480": "161450", + "859758703320142": "1614400", + "859839445398584": "1613300", + "845858223631452": "4963424782", + "859839425113112": "20285472", + "859903168498760": "1025355734", + "859839447011884": "1695263", + "860099248701456": "189471", + "859905004526751": "325809885", + "859909143181247": "169472", + "860099248522619": "178837", + "860099248353783": "168836", + "860106018269867": "178231", + "860106007379004": "158770", + "860106007537774": "168264", + "860106018448098": "188829" + }, + "0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa": { + "637116380310734": "3895753147" + }, + "0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A": { + "376332551455167": "6429254333" + }, + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1": { + "634989491135365": "93881590000", + "635261553552881": "89275000000" + }, + "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb": { + "141930229169149": "14065000000", + "626058811458059": "125719249019" + }, + "0x234831d4CFF3B7027E0424e23F019657005635e1": { + "767502220600152": "229602422" + }, + "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2": { + "649732276779694": "44876189" + }, + "0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3": { + "919026220879929": "1124719481" + }, + "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2": { + "61869552594793": "5201831386928", + "372394178664282": "2871900000000", + "82817668297010": "311908399084" + }, + "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6": { + "201837808921554": "262588887949", + "220191786576128": "14570", + "202394225136865": "268265834079" + }, + "0x25d5Eb0603f36c47A53529b6A745A0805467B21F": { + "299296287064019": "22010000022" + }, + "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905": { + "186583237080659": "8569224376" + }, + "0x2612C1bc597799dc2A468D6537720B245f956A22": { + "649130529433065": "220044920" + }, + "0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9": { + "266838658304301": "216644999935" + }, + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6": { + "4931242977938": "10898078686", + "520071959814": "9564346441", + "490607948331": "9028357925", + "464312835593": "25323470663", + "434130466448": "27751913384", + "343529476955892": "26569428177", + "581145184712006": "762766666666", + "644413986347346": "32", + "644546638392929": "32", + "647552815161015": "80311", + "647953831875574": "11699675781", + "648143628178042": "11488750000", + "647823489801690": "15368221875", + "648162303670466": "13655200000", + "648064641238285": "12204390625", + "648218529970749": "15127645459", + "648437018209889": "15524432405", + "648537251303183": "17", + "648390451720158": "17199921875", + "648319733131161": "9068714111", + "648703542243759": "13031467277", + "649087464308065": "13380625000", + "648669852761603": "17910660356", + "649130749477985": "12668079062", + "654557370948114": "213185000000", + "655483763856093": "154938000000", + "663001818967242": "28", + "664619505628960": "22", + "666528215127551": "294971062419", + "665701343812538": "20", + "669913176913700": "168992222694", + "666251093296344": "277121831207", + "670265992890158": "3760739846", + "670269753630004": "195093286581", + "671204344019292": "9227239745", + "676596737600631": "14641791657", + "670708659416585": "8315794130", + "674290923945041": "214257648238", + "676751492794865": "125608", + "676583388500991": "13349099640", + "673990119841486": "266985351613", + "673990119454246": "387240", + "676645196991154": "19717534095", + "676611379392288": "16023438417", + "676627402830705": "17794160449", + "677298382653430": "55297098356", + "675271870072786": "1265309093", + "677395489090900": "36138699789", + "676686202345495": "21015744781", + "676571720267113": "11668233878", + "676546386034429": "6694533342", + "675939800999403": "89647628696", + "677172387770040": "6131806238", + "676561580044292": "10140222821", + "677353679751786": "41809339114", + "676553080567771": "8499476521", + "677178519576278": "59202430775", + "676879462123907": "722460698", + "676751492920473": "55278924469", + "678239342665651": "675575202780", + "677046284982397": "75519741929", + "677237722007053": "60660646377", + "676707218090276": "21993061317", + "677463173067632": "28108721786", + "676961397323692": "84887658705", + "677515056626469": "10550613290", + "677511504808903": "3551817566", + "677525607239759": "4793787549", + "677945482458043": "293860207608", + "677530401027308": "236335204805", + "677766895578568": "178586879475", + "682931132099696": "137696415333", + "682845259142899": "85872956797", + "682826275044476": "17833430647", + "683088991506904": "102232834268" + }, + "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2": { + "311015613569053": "6238486940" + }, + "0x2894457502751d0F92ed1e740e2c8935F879E8AE": { + "744765029950609": "18206372000", + "18052754491380": "1000000000", + "141944294169149": "10000000000" + }, + "0x277FC128D042B081F3EE99881802538E05af8c43": { + "267204322956411": "8634054720" + }, + "0x28A40076496E02a9A527D7323175b15050b6C67c": { + "273700188355894": "16557580124", + "406164854088038": "499650000", + "325749068110199": "19498214619", + "326472527780618": "118292810725", + "406164449052348": "405035690", + "406165353738038": "404668999" + }, + "0x284A2d22620974fb416D866c18a1f3c848E7b7Bc": { + "644367998960591": "103407742" + }, + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37": { + "766434901228015": "15422132619", + "160648337135830": "30093729527", + "637761302275033": "380793557160" + }, + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE": { + "153926655075128": "838565448", + "67435055994809": "10000000000", + "33186875353373": "500000000", + "282587028442772": "17250582700", + "630893407534395": "196063966", + "595441968432834": "80085100000", + "872761488129531": "70125007621", + "525672111796446": "70060393479" + }, + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17": { + "18051388645691": "1232512356", + "18051338281355": "50364336" + }, + "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20": { + "408046817720715": "10000317834", + "51129502193945": "25356695159", + "202818106667533": "17842441406" + }, + "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3": { + "160678430865357": "18253993180", + "634190283997794": "1715232990", + "167558036125804": "84842866520" + }, + "0x297751960DAD09c6d38b73538C1cce45457d796d": { + "67097307242511": "15", + "90975474968754": "3", + "41373044931817": "727522", + "153701253420471": "67407", + "87849021601047": "80437", + "232482126144006": "5451263", + "376489301622502": "37387" + }, + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82": { + "760184010820995": "729833339", + "680317702465922": "5002669630", + "760470668898824": "369074345", + "76028680969604": "604036207" + }, + "0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F": { + "258032653899264": "42247542366" + }, + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a": { + "157521724557081": "21334750070", + "159085770998418": "46100000000", + "59269854376843": "29229453541", + "97271320489293": "40869054933", + "189188441771200": "19872173070", + "189208313944270": "13412667204" + }, + "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65": { + "75517881623550": "38308339380", + "244927756280795": "46513491853", + "118284988563198": "23400000000", + "243340907864513": "5071931149", + "319587273487138": "99704140012", + "331528394095863": "121345718040" + }, + "0x2bF046A052942B53Ca6746de4D3295d8f10d4562": { + "740992675275273": "14660252551" + }, + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8": { + "213430473225415": "19297575823", + "197758167416406": "3504136084", + "91013305781059": "21825144968", + "61022673231233": "21700205805", + "227797101910617": "34509154491", + "227257304826086": "8838791596", + "235855165427494": "2631578947", + "648015664036231": "1982509180" + }, + "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3": { + "107446086823768": "4363527272", + "78570049172294": "5603412867", + "28059702904241": "1259635749" + }, + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE": { + "568987325580815": "30150907500", + "566175469825977": "30150907500", + "564786469810178": "14382502530", + "136612399855910": "1516327182560", + "180612996863780": "58781595885", + "570096344263715": "30150907500", + "572087175787753": "30150907500" + }, + "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0": { + "322290480743612": "94607705314" + }, + "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8": { + "78648530626824": "138292382101", + "165896787517307": "165634345762", + "152208324465731": "194272213416", + "7415832970393": "194762233747", + "156096698259859": "320440448951", + "166062421863069": "162668432277", + "394996007186444": "290768602971", + "573762332985345": "53986261284", + "574794197119988": "682695875" + }, + "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872": { + "647439464023467": "15004452000", + "213285967419772": "21267206558", + "634864361051387": "70921562500", + "76216082547355": "7329461840", + "157638542244933": "60174119496" + }, + "0x2e95A39eF19c5620887C0d9822916c0406E4E75e": { + "159584961546434": "99821724986" + }, + "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb": { + "561676842598316": "57729458645", + "465286109667912": "41138509764", + "577754454852811": "150501595883", + "326330661529391": "16541491227", + "531116209812109": "109538139161", + "574187702455863": "199863307838", + "591782385862752": "164341630162" + }, + "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26": { + "611709212072170": "19083709019" + }, + "0x31188536865De4593040fAfC4e175E190518e4Ef": { + "159182841468143": "25259530956", + "247427787534240": "39695519731", + "87355264432269": "23229244940", + "70474963554843": "42647602248", + "159208100999099": "75628998693", + "408397582477655": "20847822433" + }, + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0": { + "201457075097447": "6841999986", + "672612693625732": "5000000000", + "185408194792894": "19585490430", + "199678543542300": "10849956649", + "656568060160113": "1550661150" + }, + "0x3213977900A71e183818472e795c76aF8cbC3a3E": { + "209624708274640": "2727243727" + }, + "0x32ddCe808c77E45411CE3Bb28404499942db02a7": { + "672686690262012": "9156068040", + "157572697483467": "30301264175" + }, + "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e": { + "51154858889104": "22097720000", + "93193533981954": "51428850000", + "85869322903816": "96590650000", + "78544641460294": "25407712000", + "170334015806894": "21861840000", + "198205724465484": "17204908500", + "210838860371618": "31699684500", + "249470894900355": "141114556811", + "394957500386195": "2656309347", + "451982392748406": "3362213720", + "160729464951818": "27130320000" + }, + "0x33314cF610C14460d3c184a55363f51d609aa076": { + "189165629280352": "4", + "250764687174527": "6" + }, + "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb": { + "345351025418338": "1509530400000", + "763877400753507": "53680946", + "347475827541041": "1543861200000", + "13620320740040": "2776257694900", + "763876703327895": "46201857", + "763898520549826": "974988542", + "763903829825521": "684952219", + "763877883716757": "1494533087", + "763914820231283": "23750326521", + "763904803936802": "52372148", + "763938570557804": "79147734", + "763944513817433": "9019889238", + "763939554575290": "4893969099", + "763954688543036": "21118416942", + "763976072545528": "54845693", + "763976182271147": "52203689", + "763976306153164": "51007458", + "763976388222525": "1300355823", + "763981032254637": "2130472638", + "764056339138453": "516217762", + "763983236435828": "69051736", + "764059354079704": "590245000", + "764056921985326": "1434013875", + "764454359166574": "2799546066", + "767510533786724": "123", + "767510533786847": "165", + "764457168269474": "797906392781", + "765255074662255": "857156766102", + "767510533787012": "206", + "767510533787218": "288", + "767510533787506": "330", + "767510533787836": "371", + "767510533788620": "454", + "767510533789074": "495", + "767510533789569": "537", + "767510533790106": "578", + "767510533788207": "413", + "767511386360882": "620", + "767511386361502": "662", + "767511386362164": "703", + "767511386362867": "745", + "767511386363612": "786", + "767511386364398": "828", + "767511386365226": "870", + "767511386366096": "912", + "767511386367008": "954", + "767511386369996": "1081", + "767511386371077": "1123", + "767511386367962": "996", + "767511386368958": "1038", + "767511386372200": "1165", + "767511386373365": "1208", + "767511386374573": "1251", + "767511386377117": "1336", + "767511386378453": "1379", + "767511386375824": "1293", + "767511386379832": "1421", + "767511386381253": "1464", + "767511386384265": "83", + "767511386382717": "1507", + "767511386384348": "125", + "767511386384473": "167", + "767511386384849": "251", + "767511386385100": "293", + "767511386384640": "209", + "767511386385728": "378", + "767511386385393": "335", + "767511386386106": "420", + "767511386386526": "462", + "767511386386988": "504", + "767511386387492": "546", + "767511386388627": "631", + "767511386388038": "589", + "767511386389258": "673", + "767511386389931": "716", + "767511386390647": "758", + "767511386393048": "927", + "767511386391405": "800", + "767511386393975": "1012", + "767511386392205": "843", + "767511386394987": "1096", + "767511386396083": "1181", + "767511386397264": "1266", + "767511386398530": "1351", + "767511386399881": "1435", + "767511386401316": "1520", + "767511386404441": "1690", + "767511386406131": "1817", + "767511386402836": "1605", + "767511386407948": "1944", + "767511386411964": "2199", + "767511386409892": "2072", + "767511386414163": "2327", + "767511386416490": "2454", + "767511386421526": "2752", + "767511386418944": "2582", + "767511386424278": "2922", + "767511386427200": "3092", + "767511386430292": "3262", + "767511386433554": "3432", + "767511386436986": "3645", + "767511386444489": "4071", + "767511386440631": "3858", + "767511386448560": "4284", + "767511386452844": "4540", + "767511386462179": "5051", + "767511386457384": "4795", + "767511386472579": "5648", + "767511386467230": "5349", + "767511386478227": "5947", + "767511386484174": "6288", + "767511386497092": "6971", + "767511386504063": "7355", + "767511386490462": "6630", + "767511386511418": "7740", + "767511386519158": "8167", + "767511386527325": "8595", + "767511386535920": "9065", + "767511386554520": "10048", + "767511386544985": "9535", + "767511386564568": "10604", + "767511386575172": "11161", + "767511386586333": "12408", + "767511386598741": "13050", + "767511386625527": "14465", + "767511386611791": "13736", + "767511386639992": "15236", + "767511386671279": "16909", + "767511386655228": "16051", + "767511386688188": "17810", + "767511386724752": "19741", + "767511386744493": "20771", + "767511386705998": "18754", + "767511386765264": "21845", + "767511386787109": "23004", + "767511386834320": "25454", + "767511386886560": "28162", + "767511386810113": "24207", + "767511386859774": "26786", + "767511386914722": "29624", + "767548493417834": "31172", + "767548493449006": "32823", + "767548493481829": "32830", + "767548493514659": "34569", + "767548493549228": "36379", + "767548493585607": "38275", + "767548493623882": "40258", + "767548493664140": "42328", + "767548493750996": "46815", + "767548493706468": "44528", + "767548493847043": "51778", + "767548493898821": "54455", + "767548493797811": "49232", + "767548493953276": "57262", + "767548494070738": "63310", + "767548494010538": "60200", + "767548494134048": "66594", + "767549755547042": "70009", + "767549755617051": "73632", + "767578296825681": "77439", + "767578296903120": "81459", + "767578296984579": "85659", + "767578297255028": "99567", + "767578297160315": "94713", + "767578297070238": "90077", + "767578297459276": "110058", + "767578297354595": "104681", + "767578297569334": "115738", + "767578892875042": "121681", + "767578892996723": "127988", + "767578893124711": "134587", + "767578893259298": "141491", + "767578893400789": "148745", + "767583217549534": "156392", + "767583217705926": "164507", + "767583217870433": "172943", + "767583218043376": "181816", + "767583218416362": "201004", + "767583218617366": "211320", + "767583218225192": "191170", + "767583218828686": "222160", + "767583219050846": "233569", + "767583219284415": "245547", + "767583219788100": "271385", + "767583219529962": "258138", + "767583220059485": "285332", + "767583220344817": "299980", + "767583220644797": "315373", + "767583220960170": "331555", + "767583221291725": "348569", + "767583221640294": "366459", + "767583222392024": "405047", + "767583223222946": "87", + "767583222797071": "425832", + "767583223223033": "130", + "767583222006753": "385271", + "767583223223163": "174", + "767626793223815": "305", + "767583223223554": "261", + "767583223223337": "217", + "767626793225296": "480", + "767626793224860": "436", + "767626793224468": "392", + "767626793225776": "523", + "767626793226299": "567", + "767626793227477": "655", + "767626793226866": "611", + "767626793228132": "699", + "767626793224120": "348", + "767626793228831": "742", + "767626793229573": "786", + "767626793230359": "830", + "767626793231189": "874", + "767626793232063": "962", + "767642320933025": "1050", + "767642320934075": "1138", + "767642320936439": "1314", + "767642320935213": "1226", + "767642320939154": "1490", + "767642320937753": "1401", + "767642320940644": "1580", + "767642320943893": "1757", + "767642320942224": "1669", + "767642320945650": "1889", + "767642320949562": "2156", + "767642320954008": "2422", + "767642320947539": "2023", + "767642320951718": "2290", + "767642320956430": "2555", + "767642320958985": "2688", + "767642320961673": "2865", + "767642320967580": "3219", + "767642320964538": "3042", + "767642320970799": "3396", + "767642320974195": "3573", + "767642320977768": "3795", + "767642320981563": "4016", + "767642883204174": "4238", + "767642883212874": "4728", + "767642883222596": "5260", + "767642883217602": "4994", + "767642883208412": "4462", + "767682652116771": "5885", + "767682652135403": "6907", + "767682652111200": "5571", + "767682652128852": "6551", + "767682652122656": "6196", + "767682652142310": "7263", + "767682652149573": "7663", + "767682652165300": "8509", + "767682652173809": "8954", + "767682652157236": "8064", + "767682652192207": "9941", + "767682652182763": "9444", + "767682652202148": "10476", + "767682652212624": "11055", + "767682652235314": "12259", + "767682652223679": "11635", + "767682652247573": "12929", + "767705524974897": "13607", + "767705524988504": "14322", + "767705525002826": "15082", + "767705525033794": "16735", + "767705525050529": "17629", + "767705525068158": "18569", + "767705525086727": "19553", + "767807852800338": "20582", + "767705525017908": "15886", + "767812853087571": "21651", + "767812853109222": "22780", + "767812853132002": "23989", + "767812853155991": "25243", + "767824420313316": "30904", + "767824420283937": "29379", + "767824420255993": "27944", + "767824420344220": "32519", + "767824420376739": "34224", + "767824420410963": "36020", + "767825578892582": "37871", + "767825585879797": "41900", + "767825585921697": "44054", + "767825585965751": "46343", + "767825586012094": "48723", + "767825586060817": "51237", + "767825586112054": "53887", + "767825586165941": "56672", + "767825586222613": "59593", + "767848361131422": "62650", + "767848361194072": "65916", + "767848361402211": "76625", + "767848361329322": "72889", + "767848361259988": "69334", + "767848361478836": "80586", + "767848361644150": "89097", + "767848361559422": "84728", + "767848361733247": "93691", + "767848361826938": "98512", + "767848361925450": "103559", + "767848362137887": "114469", + "767848362252356": "120376", + "767848362029009": "108878", + "767848362499288": "133053", + "767848362372732": "126556", + "767848362772253": "147088", + "767848362632341": "139912", + "767848362919341": "154628", + "767848363073969": "162575", + "767848363587169": "188913", + "767848363236544": "170930", + "767848363776082": "198630", + "767848363407474": "179695", + "767848363974712": "208846", + "767848364183558": "219562", + "767848364876618": "255118", + "767848364633943": "242675", + "767848364403120": "230823", + "767848365131736": "268197", + "767848365399933": "281957", + "767848365681890": "296446", + "767848365978336": "311662", + "767848366617649": "344459", + "767848366289998": "327651", + "767848366962108": "362133", + "767848367704957": "400256", + "767848367324241": "380716", + "767848368105213": "420798", + "767848368526011": "442387", + "767852884968443": "90", + "767852884968668": "181", + "767852884968849": "226", + "767852884968533": "135", + "767852884969075": "271", + "767852884969346": "317", + "767852884970025": "408", + "767852884969663": "362", + "767852884970433": "453", + "767852884971384": "544", + "767852884970886": "498", + "767852884971928": "589", + "767852884972517": "635", + "767852884973152": "681", + "767852884973833": "727", + "767863362728577": "18484478", + "767863381213055": "5167937", + "767863326337265": "91", + "767863404661618": "18414676", + "767863386380992": "18280626", + "767863423076294": "18443046", + "767863441519340": "18477486", + "767863476128050": "16087207", + "767863525316862": "10937836", + "767863459996826": "16131224", + "767863536254698": "16385295", + "767863569071432": "15950506", + "768114880936625": "18672957", + "768114582705503": "298231122", + "768115230455103": "331324585", + "768114899609582": "330845521", + "768115978889820": "296676806", + "768116275566626": "296728765", + "768116572295391": "296762499", + "768117464966063": "298343543", + "768117900433793": "123", + "768117763309606": "137124064", + "768118170560501": "256642528", + "768119631748125": "302761187", + "768119934509312": "280418672", + "768120771960939": "279694893", + "768122461859189": "296600700", + "768123348981826": "302369890", + "768121602995954": "276767301", + "768123947537693": "296342950", + "768124836569745": "290541691", + "768125127111556": "291176686", + "768295826854698": "285816521", + "768296112671219": "285381250", + "768296398052469": "284997197", + "768298198893914": "68312976", + "768298267207290": "201", + "768298267207491": "273021877", + "768298857760162": "322193785", + "768298540229368": "317530794", + "768299179953947": "331229342", + "768299511183289": "331260558", + "768301129935086": "312207718", + "768300505169969": "321182204", + "768302650177158": "308531054", + "768301442142804": "288907800", + "768303848319913": "252106840", + "768304100426753": "244186585", + "768308228492462": "158", + "768304606652316": "114725072", + "768308228493053": "276", + "768308228492620": "197", + "768308228493644": "354", + "768308729405919": "510", + "768308228493329": "315", + "768308729406978": "588", + "768310260215587": "347953848", + "768309128949088": "364833293", + "768310608169435": "201082346", + "768310809251781": "201245887", + "768311435453153": "116", + "768311435453424": "194", + "768311435453850": "271", + "768311435453618": "232", + "768311826167816": "116", + "768311826168087": "193", + "768311937992490": "197071061", + "768312135063782": "155", + "768313123068614": "210719422", + "768313474127194": "154", + "768312623349155": "499719459", + "768313474128044": "309", + "768313474128353": "348", + "768313474129088": "426", + "768313474128701": "387", + "768313474129979": "504", + "768313474129514": "465", + "768313474131026": "582", + "768313474132229": "660", + "768313474132889": "699", + "768313474134326": "777", + "768313474135958": "933", + "768313474137902": "1089", + "768313474138991": "1167", + "768313474140158": "1245", + "768313474144127": "1480", + "768313474145607": "1558", + "768313474147165": "1675", + "768313474150633": "1910", + "768313474152543": "2028", + "768313474154571": "2145", + "768314355726830": "88909462", + "768315901357256": "339056370", + "768316240413626": "301378783", + "768316541792409": "35791954", + "768313474156716": "2263" + }, + "0x334bdeAA1A66E199CE2067A205506Bf72de14593": { + "78581810315623": "1" + }, + "0x334f12F269213371fb59b328BB6e182C875e04B2": { + "235248755463285": "30184796751", + "170459154928178": "85849064810", + "187225592453120": "100639688860", + "532670891057032": "5098240000" + }, + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2": { + "28423496858037": "1897354001" + }, + "0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91": { + "700036877911620": "6971971500" + }, + "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327": { + "274157284179751": "130932379038", + "202773340970944": "44765696589" + }, + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad": { + "367354986456086": "159350000000", + "284272720466475": "21940000000" + }, + "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30": { + "326049910381759": "24", + "340162996725906": "1695292297" + }, + "0x34a649fde43cE36882091A010aAe2805A9FcFf0d": { + "634036479771284": "5482892893" + }, + "0x36C3094E86CB89e33a74F7e4c10659dd9366538C": { + "634959436885365": "19640500000", + "635245783302881": "5356500000" + }, + "0x362FFA9F404A14F4E805A39D4985042932D42aFe": { + "634133673151647": "2420032442" + }, + "0x34e642520F4487D7D0229c07f2EDe107966D385E": { + "367351784090731": "3202365355" + }, + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F": { + "70451813250817": "4716970693", + "321517916923381": "214258454662", + "67428770424441": "6285570368", + "67075754733543": "16604041484", + "273939484179751": "217800000000", + "429133499005020": "436815986689", + "547809199075962": "71050000000", + "533603847212626": "135734075338", + "645809940109546": "188831250000" + }, + "0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc": { + "531845211117628": "3940485943" + }, + "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B": { + "465379361625193": "3458705615800", + "470054787273693": "227774351500", + "18115882730389": "2184095098753" + }, + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6": { + "664983563595345": "75343043560", + "217264218398563": "73188666066" + }, + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9": { + "904804646944212": "185595194790", + "861085838494193": "18080297788", + "808841378952277": "3741772811", + "805406787392676": "271427897935", + "917268358306518": "195035742135" + }, + "0x3800645f556ee583E20D6491c3a60E9c32744376": { + "190509412911548": "44590358778" + }, + "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C": { + "340310565047777": "2715874656" + }, + "0x37435b30f92749e3083597E834d9c1D549e2494B": { + "86845698678511": "62444029452", + "38769863596589": "1565234930", + "32181495640124": "8433459586", + "22131306224508": "4637368726000", + "76223412009195": "178773400000", + "86978458498127": "27307181096", + "88869752900177": "12050549452", + "93006185741954": "23198240000", + "118308388563198": "14166669028", + "141234198150981": "17100712995", + "186199081638585": "49195388116", + "183773660297853": "252870563194", + "363939676933011": "1412385930810", + "271980436404190": "296688083935", + "359928453899368": "1288012208388", + "395593019554380": "654800000000", + "352399758201369": "1024763326668", + "437070763478235": "3840100000000", + "460737759569063": "4527500000000", + "591966036774809": "666686929557", + "764332208498162": "105792331133", + "593409232970016": "563728148057" + }, + "0x38AE800E603F61a43f3B02f5E429b44E32e01D84": { + "649248685749729": "12448041335", + "735462721965817": "38853572481", + "651485759293845": "3572292465", + "650066211440274": "883672882" + }, + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3": { + "31613511996035": "1422751578", + "56090190254115": "11945702437", + "61070704728260": "11265269800" + }, + "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608": { + "38729105409331": "4520835534", + "569988798013715": "75915000000", + "75768702250033": "2592066456", + "75749856969161": "8190484804", + "544122918974124": "90520524431", + "634184272767738": "4800266302", + "634395165820350": "4971925933", + "637136003689549": "5026085154", + "644089221861766": "9969767834", + "641232825579881": "6901957424", + "644112169106375": "11803118121", + "644073507478345": "8688260900", + "644099191629600": "5282898032", + "644143887959668": "6586391868", + "644028956669800": "6258715658", + "644181540147936": "5533430900", + "644052141349672": "5619908813", + "644035215385458": "3739040895", + "644266109923013": "12728017527", + "644227721333030": "7138145970", + "644235138725690": "11087897889", + "644217945713915": "9775619115", + "644246424265017": "9438007812", + "648703066319944": "475923815", + "650452044643940": "210712873", + "740444343886258": "37039953396" + }, + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7": { + "153213326271478": "18867580234", + "396504433540468": "13250965252", + "160718808143920": "10656807898", + "147404101138230": "19708496282", + "141910062421668": "20166747481", + "396517684505720": "21196418023" + }, + "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb": { + "33289326590234": "1184036940", + "33386963858115": "4658475375814", + "408425382414043": "1123333332210", + "427517763505395": "856500000000", + "759127319086261": "542512540896", + "477272425070829": "3276576610442" + }, + "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd": { + "561885444802308": "194013000000", + "567291750347146": "194013435000", + "570802112669484": "192000000000", + "567707182532146": "194013435000", + "565476469810977": "194013435000", + "571217544854484": "194013435000" + }, + "0x3b55DF245d5350c4024Acc36259B3061d42140D2": { + "59303914981687": "109032000000", + "428517528130265": "6682650000", + "430095496589579": "1727500000", + "672251402712185": "113626410", + "768408426239740": "10530972784", + "395431577902828": "61940000000" + }, + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133": { + "70932687821992": "142530400862", + "653477602499401": "2382078228", + "211163571688407": "90969668386", + "848255254733335": "2974087025", + "544006850006260": "10532744358", + "653296446968959": "1462730442" + }, + "0x3C087171AEBC50BE76A7C47cBB296928C32f5788": { + "179705651830652": "176957775656", + "170943059650826": "148060901697", + "232479752844281": "2373299725", + "212069776260061": "14038264688", + "215219527533100": "16507846329", + "327841336645705": "13592654125", + "230427008120352": "1592559438", + "340465994882707": "17923920296", + "408359393519053": "10089000000", + "339831945732017": "224290993889", + "648211808724006": "6721246743", + "743598654626181": "2043540906" + }, + "0x3C43674dfa916d791614827a50353fe65227B7f3": { + "781843303488481": "90638399996", + "808097236727089": "112991072036", + "886970218030110": "80917313200", + "902311722381291": "2492924562921", + "883534894985575": "82087297170", + "911681851165911": "148249317984", + "249683318820186": "10002984280", + "683068828515029": "20162991875", + "86224790513977": "18752048727" + }, + "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B": { + "507737045334642": "256843090229", + "506176315739631": "751200000000", + "197652637069875": "79560142678", + "7282639421137": "107872082286", + "67130960801289": "208750536344", + "551839541572649": "464523649777" + }, + "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2": { + "599117126788478": "69159694993" + }, + "0x3Cdf2F8681b778E97D538DBa517bd614f2108647": { + "265521940236427": "70852648035", + "158637651631405": "96662646688", + "258849054768509": "94179890197" + }, + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06": { + "325815231767308": "116109191366", + "239154025576778": "93978424610", + "340483918803003": "107540812013" + }, + "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542": { + "31605992022782": "4486265388" + }, + "0x3e2EfD7D46a1260b927f179bC9275f2377b00634": { + "325399961356017": "11508897293" + }, + "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b": { + "644123972224496": "18442405" + }, + "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803": { + "559909549098070": "9516000000" + }, + "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c": { + "141030334319023": "70000039897", + "647224666133056": "4377370477", + "647382462319478": "6271703989", + "644345312837307": "5547402539", + "595385246220334": "56722212500", + "647555129566838": "7781608168", + "848237297659532": "17957073803", + "742833918745520": "14172500000" + }, + "0x3e763998E3c70B15347D68dC93a9CA021385675d": { + "647229043503533": "3184477709" + }, + "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0": { + "355646025280938": "2373276277", + "355773362907086": "12535749497", + "355636039477093": "9985803845" + }, + "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB": { + "649853488667170": "65015748", + "562755073802308": "30150000000", + "649506912428795": "36390839843" + }, + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2": { + "235853631746968": "1533680526", + "531838649791416": "6561326212", + "662650407520724": "57172076", + "41285039823287": "521806033" + }, + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed": { + "768304721377388": "3507114838", + "647725612230182": "29699469080" + }, + "0x404a75f728D7e89197C61c284d782EC246425aa6": { + "883958086238857": "171169191653" + }, + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde": { + "728528152871407": "486415703664", + "683765325492995": "643482107799", + "682116636977139": "389208674898", + "790320470681371": "129057167288" + }, + "0x400609FDd8FD4882B503a55aeb59c24a39d66555": { + "13424355740040": "46140000000", + "385212837461278": "12793000337" + }, + "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8": { + "284294660466475": "32606569800", + "644738977704474": "427917192" + }, + "0x41BF3C5167494cbCa4C08122237C1620A78267Ab": { + "630547945246894": "2249157051", + "630888770251188": "4637283207", + "624643963734953": "14701274232", + "67474986688534": "125375746500", + "631053204527095": "1713785306", + "631567031582009": "2612709957", + "632715023362792": "17060602162", + "632910879705212": "9755905834", + "631801066266314": "3476565097", + "631709202386668": "1277169126", + "631804542831411": "5257772247", + "631812869882326": "7418551539", + "634018729724195": "3815159692", + "634022544883887": "4493860181", + "634194611311476": "2472437836", + "634170952357993": "6931782754", + "634421333694120": "6913927217", + "634752629850619": "1490458288", + "634166749613035": "4202744958", + "634773085341398": "8523970000", + "635868338517102": "3485021203", + "636068032409490": "221549064473", + "641729133359289": "8198117831", + "643744592455058": "7303537619", + "644282393261405": "7914873408", + "682505845652037": "1132140582", + "647553646266733": "1483300105", + "681835742516223": "494751015", + "706035819459340": "98080531002", + "741718035195957": "162218835", + "860392088596291": "56073594" + }, + "0x41e2965406330A130e61B39d867c91fa86aA3bB8": { + "638304410283199": "57972833670" + }, + "0x4254e393674B85688414a2baB8C064FF96a408F1": { + "143749224578097": "195601904457", + "79244849356805": "51965469308" + }, + "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B": { + "86790953888750": "38576992385", + "207234905273707": "17459074945", + "209057370939437": "19654542435", + "207270328594324": "49984112432", + "200625410465815": "27121737219", + "208172233828826": "26535963154", + "209957591885080": "193338988216", + "203337173447397": "44485730835", + "209905911270631": "51680614449", + "212591835915023": "94239272075", + "213229524257532": "56443162240", + "213658788094189": "46596908794", + "214949047240394": "135385700183", + "213383652493093": "46820732322", + "213336723478778": "46929014315", + "215084432940577": "135094592523", + "215439620132931": "89335158945", + "215618163087336": "89080704286", + "215707243791622": "88953884657", + "215528955291876": "89207795460", + "217010587764381": "46290484227", + "217563869893679": "55156826488", + "221813776173855": "37911640587", + "233377524301320": "80126513749", + "238323426120979": "141765636262", + "238513085414760": "141406044017", + "239248004001388": "46885972163", + "237867225757655": "94970341987", + "240291234403735": "27327225251", + "239294889973551": "24269363626", + "240589084672177": "187694536015", + "247641838339634": "101040572048", + "241109044343173": "186820539992", + "411709178648065": "13606320365", + "411722784968430": "33820000000", + "415230639081557": "16910000000", + "415397117069219": "13548000000", + "415476876421248": "13564000000", + "415247549081557": "16910000000", + "411756604968430": "33820000000", + "409557925200195": "13862188950", + "415264459081557": "16915000000", + "415338127991557": "6772000000", + "415383569069219": "13548000000", + "415566014166143": "14725577338", + "415611520152852": "13378806625", + "415652994874892": "16050036235", + "415327969991557": "10158000000", + "415580739743481": "17399191046", + "415685091477562": "16043097791", + "415552624743282": "13389422861", + "415624898959477": "13380333313", + "415714727696875": "13370532569", + "411664283436334": "13677512381", + "415314425991557": "13544000000", + "415701134575353": "13593121522", + "415344899991557": "16930000000", + "415281374081557": "16915000000", + "415669044911127": "16046566435", + "415638279292790": "14715582102", + "428524210780265": "13268338278", + "415598138934527": "13381218325", + "575626349616280": "53257255812", + "573818581461780": "41982081237", + "741131517296797": "95195568422", + "767989215426960": "14606754787", + "790591093043508": "71074869547", + "771127544359367": "12764830824", + "869175887842680": "80331618390", + "868345234814461": "178880088846", + "900352767003453": "187169856894", + "869256219461070": "87734515234", + "912339955462822": "95736000000", + "917463394063277": "359610000000" + }, + "0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7": { + "443860431104984": "23385195001" + }, + "0x43816d942FA5977425D2aF2a4Fc5Adef907dE010": { + "744283423047316": "5598000000" + }, + "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7": { + "190560408853579": "17822553583", + "385200050200822": "12787260456" + }, + "0x4384f7916e165F0d24Ab3935965492229dfd50ea": { + "649143417557047": "5043054" + }, + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e": { + "4955774616406": "85802365", + "420829723023": "12564061345", + "28439199913335": "896325564", + "28476232963741": "1000000000", + "4942141056624": "1129385753", + "28399003652997": "19090914955", + "28366015360976": "1000000000", + "28365015360976": "1000000000", + "28396822783467": "2180869530", + "28367015360976": "1000000000", + "28436831873163": "1109129488", + "28457831873163": "1000000000", + "28437941002651": "1206768540", + "28477232963741": "1000000000", + "28861157837851": "7671502446", + "32165371093183": "5644256527", + "28456831873163": "1000000000", + "33253286873261": "9664144600", + "31620980803307": "25104421", + "33178643999918": "8231353455", + "33155888849890": "522412224", + "93244962831954": "3466008022725", + "76006574486488": "12000000000", + "860235430554267": "12817228360", + "78617270835971": "22778336323", + "861688842729623": "6378966633", + "861574350043908": "4987547355", + "866867341387950": "1210047061", + "883474337359063": "55249364508", + "883752711206313": "17679122867", + "884692363137944": "20022518305", + "886956426850400": "13791046304" + }, + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d": { + "519636306256": "435653558", + "28859391130925": "1549632000", + "28425394212038": "3071807226", + "28061198121035": "18536597032" + }, + "0x4432e64624F4c64633466655de3D5132ad407343": { + "761858063237895": "53575113", + "499953138393": "1624738693", + "762881409124593": "45392997396", + "759972749054172": "53680953", + "489636306256": "76923076", + "766112516278924": "256869092", + "762840533673019": "40875451574" + }, + "0x448a549593020696455D9b5e25e0b0fB7a71201E": { + "507995893644699": "48468507344", + "529862978616276": "72277031524", + "529799210870675": "13171499195" + }, + "0x44db0002349036164dD46A04327201Eb7698A53e": { + "643938854351013": "228851828", + "644373889298847": "3084780492", + "768072180047322": "2519675802" + }, + "0x44E836EbFEF431e57442037b819B23fd29bc3B69": { + "585452484380922": "590804533993", + "634373034635165": "2955966531", + "634384029519721": "5232565604", + "634414601014386": "6732679734", + "634372867374605": "167260560", + "634471029687631": "1144842671", + "634946964475864": "4648149312", + "644729591640166": "792144308", + "649184311283738": "11312622545", + "648094970693749": "4657050598", + "652479040083562": "3951780206", + "649761686809083": "11781355408" + }, + "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975": { + "257953922346879": "78731552385", + "638949411896201": "2100140818", + "643118187155825": "5070971174", + "309552368765977": "50532033501", + "643811556089323": "9000076282", + "643969388479223": "2093638974" + }, + "0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4": { + "767502219582512": "1017640" + }, + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719": { + "185586166390180": "4605813333" + }, + "0x46387563927595f5ef11952f74DcC2Ce2E871E73": { + "768717602283351": "10000000", + "768717622283351": "2694500000" + }, + "0x473812413b6A8267C62aB76095463546C1F65Dc7": { + "767510533790684": "852570198", + "769134631191932": "143341492" + }, + "0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88": { + "204109072732682": "12907895307" + }, + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39": { + "264978511678838": "7633129939", + "430074784791709": "5342881647", + "458937267162882": "1840684464", + "480549001681271": "1936443717", + "311308648020422": "23542648323", + "477189395053421": "1926694373", + "507993888424871": "2005219828", + "477193247072304": "1928422141", + "477191321747794": "1925324510", + "477187476187107": "1918866314", + "508044362152043": "2021544393", + "640681813289989": "2884062719", + "643064981952810": "5052470551", + "643862412346720": "5109096170", + "638287014203068": "6170341451", + "647209674578671": "10179109779" + }, + "0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0": { + "262708652965979": "892676539" + }, + "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351": { + "194902848948000": "678300326761", + "234257642043144": "86640000000", + "198400769373984": "522905317827", + "220690466846146": "526712108816", + "237033531028709": "216100000000", + "245143778851644": "240081188008", + "249254815273600": "216079626755", + "239428834403735": "862400000000", + "252051631959570": "859142789165", + "254599239282940": "351175706375", + "252910774748735": "1020962098385", + "248239496710377": "209638678922", + "254950414989315": "1019094463438", + "248611315273600": "643500000000", + "255969509452753": "641100000000", + "257492898458484": "188408991793" + }, + "0x4949D9db8Af71A063971a60F918e3C63C30663d7": { + "171091120552523": "168884964002", + "41140829546546": "132215385271", + "260026533868529": "42584740555", + "170707469808407": "15353990995", + "41373044931815": "2" + }, + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360": { + "33227297183704": "653834157", + "279405653734695": "9627840936", + "320205949886679": "5543007376", + "212145439369214": "1113699755" + }, + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2": { + "216246125608251": "21731842340", + "365352062863821": "32075676524", + "235278940260036": "30572743902", + "262709545642518": "234423710407", + "262943969352925": "856400000000" + }, + "0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9": { + "323336011972704": "240943746648" + }, + "0x4A5867445A1Fa5F394268A521720D1d4E5609413": { + "484489924611440": "2578100000000" + }, + "0x4AAE8E210F814916778259840d635AA3e73A4783": { + "648113005876132": "16950613281", + "201153918156661": "24321462040" + }, + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6": { + "265994631181050": "8090890905", + "562580496802308": "5482000000", + "378228371871768": "1740766894", + "164597798526063": "2630224719", + "551460280407903": "25275274698", + "568559697082546": "5482750000", + "566627766481746": "5482750000", + "570295590919484": "5482750000", + "571912597289484": "5482750000", + "818727201955775": "160270131472" + }, + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507": { + "212083814524749": "53819165244" + }, + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C": { + "4905170401522": "26072576416", + "127568340031921": "929795062302", + "106839237525292": "4821011987", + "106846924633216": "1424576250", + "129427940156525": "10000000", + "128498135094223": "929805062302", + "278886678120078": "16930293743", + "190477983853123": "31429058425", + "315294748069199": "4230684000", + "315298978753199": "38949316540", + "672771638984332": "58636813154", + "675003539778787": "83138632015", + "679651587058721": "17303169600", + "742546489600908": "12755718599", + "744706441326176": "26346793433" + }, + "0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6": { + "75787223567174": "8000000000" + }, + "0x4C3C27eB0C01088348132d6139F6d51FC592dDBD": { + "310797339658113": "5564385258" + }, + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11": { + "157281617133575": "136137390673", + "152969933872436": "202026433529", + "160958961495278": "49543800744", + "148782143329299": "676628312802", + "148125503301315": "613663117381", + "166316667085303": "492948149258", + "168960920980615": "413035848007", + "167125029052537": "433007073267", + "172621356097887": "637822580221" + }, + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6": { + "38733626244865": "36237351724", + "20308652197223": "42992538368", + "33128882677551": "22434511734", + "75851623491707": "91376117280", + "97312189544226": "962543493539", + "98274733037765": "225761417993", + "141107886434515": "25140924405", + "169398711509766": "84912848439", + "109521368209337": "25432470215", + "164659166534057": "656550874126", + "182744208013826": "594997480373", + "184684071457860": "320813397796", + "183339205494199": "94951829258", + "184161154400956": "57484083188", + "203463090125887": "277362737859", + "228695819280976": "435400000000", + "232256551893053": "136081851228", + "230333526120352": "93482000000", + "231006853367548": "403315212327", + "229389778185936": "59760464812", + "234465804378976": "433000000000", + "230572253367548": "434600000000", + "246834622268848": "593165265392", + "245678239246970": "429600000000", + "231410168579875": "434000000000", + "246405622268848": "429000000000", + "266623247476225": "31843087062", + "524402842691769": "277260761697", + "400533285433272": "1327936414", + "548030249075962": "2737095195209", + "574794879815863": "470264676707", + "577994078452897": "428753685947", + "578422832138844": "621546025531", + "579151783632625": "511648078072", + "576273196085064": "475735746580", + "577250185805214": "352964012203", + "599186286483471": "300681637829", + "606325525196387": "430288154881", + "622350349441157": "423020213781", + "622773369654938": "188613792398", + "622976007236649": "605799007104", + "611342683796608": "122585177924", + "611048146529128": "294537267480", + "632737782810716": "166637595618", + "632923458328218": "3562084461", + "633362067776388": "696785610", + "633174226086802": "118340636454", + "631737544692156": "57278437068", + "633293616127503": "68451648885", + "634050042239925": "2029010620", + "634052071250545": "1566534038", + "634053637784583": "732611220", + "634200736479427": "4790574316", + "634205527053743": "2600593701", + "634433893789543": "4541616170", + "634444626397101": "3241881404", + "634447868278505": "3785283994", + "636303124680973": "5741625032", + "638269655222213": "2789581992", + "639434921077105": "197428820134", + "640275015971967": "936457910", + "639687831454420": "1841462496", + "639714195158937": "1002910636", + "643047432848730": "2168510045", + "641492720431748": "6670046454", + "643945769210064": "6039028984", + "644368102368333": "5786930514", + "643899647055493": "6808576094", + "647162978371458": "3462235904", + "648721663311036": "508035028", + "680142146935616": "114648436337", + "741722138870112": "1341090085", + "744371763079127": "20897052664", + "782518705963072": "9770439640", + "744392660131791": "12851063713", + "810089111571412": "50684223342" + }, + "0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315": { + "670256915967082": "9076923076" + }, + "0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1": { + "213167569962724": "54975000000" + }, + "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45": { + "147423809634512": "309692805971", + "829914755106014": "216642349742" + }, + "0x4E2572d9161Fc58743A4622046Ca30a1fB538670": { + "185541048150117": "45118240063" + }, + "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a": { + "341968317849767": "21768707480", + "171893729223786": "47575900440", + "167695362380301": "28977789728", + "189385728874825": "1355785855", + "244974269772648": "42559348679" + }, + "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79": { + "70430142099789": "21671151028", + "190604505005626": "148971205022", + "181615502967276": "256079218906", + "182111406992128": "540739337424", + "141461024306948": "25160811724", + "218398796232609": "371633895678", + "356006487964429": "1968851124565", + "458578467162882": "358800000000", + "562925665802308": "496100000000", + "642621542329649": "422340000000" + }, + "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8": { + "152096973053240": "38570577566", + "201024333624707": "39603521290", + "168308503749870": "17838668722" + }, + "0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b": { + "595129885790334": "12195297500" + }, + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56": { + "741720392463454": "1213327771", + "768563220420978": "624282480", + "741724318106214": "903473746", + "848290002730558": "29448441435", + "78582810315624": "57126564", + "866984767069036": "39504417438" + }, + "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB": { + "31614934747613": "1", + "4955860418771": "1" + }, + "0x52c9A7E7D265A09Db125b7369BC7487c589a7604": { + "661983733769654": "15472843550", + "78590049172294": "25000000000", + "189369530533492": "16198341333", + "78640049172294": "8481454530" + }, + "0x52E03B19b1919867aC9fe7704E850287FC59d215": { + "273300100037798": "21", + "127528827082220": "23" + }, + "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e": { + "650399504800190": "50000000000", + "647535673796014": "8956445312", + "649961535629507": "926753565", + "664371001883072": "100000000000", + "649914737881786": "1060562802", + "664669584727359": "100000000000" + }, + "0x52d3aBa582A24eeB9c1210D83EC312487815f405": { + "87847550743905": "1470857142", + "153927493640576": "2840837091", + "31895311480935": "37500000000", + "33113307703346": "1640314930", + "33114948018276": "11391726558", + "664082221035166": "109968508060", + "656417747360113": "150312800000", + "218276915754234": "4894741242", + "680448990498012": "15612748908", + "659204039516835": "162851173415", + "680583466401093": "63765566607", + "764084044302811": "8432491225", + "786445115477214": "9733082256", + "809741706356301": "347405215111", + "849324103935428": "22264686170", + "786465641333843": "361176492977", + "831150810027751": "4961004225375", + "860327274630651": "64806240466", + "861428991246261": "67915110484", + "861519676698002": "54673315682", + "869671488793566": "270561010095", + "867913521988801": "85134432163", + "883314902543648": "80750086384", + "884197150881189": "82735987498", + "884544061894467": "148297525258", + "884712386053732": "206866376884", + "887289400595318": "528457624315", + "889130026620811": "150451249816", + "908416080789833": "495671778827", + "912103223076857": "101489503304", + "915936244419798": "556151437225", + "28543316405699": "10000000000", + "31589140446842": "1087363286", + "919459324797698": "1874301801", + "28363579478364": "1435882612", + "28389816079096": "1342441520" + }, + "0x533af56B4E0F3B278841748E48F61566E6C763D6": { + "50403384864418": "684928780381", + "71075218222854": "1423422740439", + "141984981846493": "5305457400", + "85965913553816": "246473581350", + "55978695528887": "98624652124", + "396883196948187": "9297374844", + "213156661163524": "10908799200", + "168838927569280": "43399440000", + "395319335789415": "10622166178", + "396247819554380": "6712778652", + "404830849052348": "1333600000000" + }, + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910": { + "4962909295005": "6537846472", + "88686339837893": "72107788456", + "669738634595939": "93293333333", + "145481260679750": "17152586398", + "643820556165605": "802012435", + "711185956536817": "1734187672072", + "677121804724326": "50583045714", + "669838634595939": "74368755714" + }, + "0x53dC93b33d63094770A623406277f3B83a265588": { + "88779280959681": "29006615802", + "31610478288170": "3033707865", + "72531810825326": "4063998521", + "88758447626349": "20833333332", + "72528477491993": "3333333333", + "685845897019256": "87924018978", + "680936349640484": "151308941294", + "721168129970053": "57100000000", + "699375941774655": "57060000000" + }, + "0x53bA90071fF3224AdCa6d3c7960Ad924796FED03": { + "767807852820920": "5000266651" + }, + "0x540dC960E3e10304723bEC44D20F682258e705fC": { + "643941720431899": "2570523222", + "643867521442890": "5230119599", + "644041635442945": "3961074335", + "643971482118197": "7816313681", + "644187073578869": "1966296013", + "644140807474986": "474329513", + "644520355207324": "4844042113", + "644515640476987": "4714730337", + "644534799459665": "3462430426", + "644509728633115": "5911843872", + "644710856021943": "4701268223", + "644565379373403": "2378948420", + "646582538399546": "4154745941", + "646763711081949": "3202908158", + "648731709846064": "9695779077", + "648687763421959": "19697985", + "664079793068081": "2427967085" + }, + "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d": { + "860392157865187": "160", + "860392157865667": "160", + "632920635611046": "2822717172", + "860392157865027": "160", + "634428247621337": "5646168206", + "860392157865827": "160", + "860392157865507": "160", + "860392157865347": "160", + "860392157865987": "160", + "860392157882045": "160", + "860392157882205": "160" + }, + "0x553114377d81bC47E316E238a5fE310D60a06418": { + "164636156534057": "23010000000" + }, + "0x5540D536A128F584A652aA2F82FF837BeE6f5790": { + "201770194996450": "17567638887" + }, + "0x554B1Bd47B7d180844175cA4635880da8A3c70B9": { + "31590227810128": "15764212654" + }, + "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5": { + "415410665069219": "66211352029" + }, + "0x558C4aFf233f17Ac0d25335410fAEa0453328da8": { + "4943270442377": "5311147809" + }, + "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C": { + "87397034064037": "92368586236", + "83666355470554": "70656147044" + }, + "0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE": { + "267055303304236": "38563788377" + }, + "0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95": { + "192545949837218": "35159275827" + }, + "0x5775b780006cBaC39aA84432BC6157E11BC5f672": { + "325931340958674": "25332961300" + }, + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e": { + "726122099036950": "27741210361", + "4839056178271": "66114223251", + "4969447141477": "709218727" + }, + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED": { + "28810185690105": "49205440820", + "60572404072549": "16517000000", + "27558939982817": "104919293460", + "61001668124646": "10999922556", + "28704611676395": "34985445810", + "67382995986762": "45774437679", + "67445055994809": "29930693725", + "86605154393710": "164176600500", + "88448221835372": "5000000000", + "88950623419050": "5174776280", + "135911624943885": "11506814800", + "135558665981634": "60968023969", + "135619634005603": "176852411011", + "136106764498630": "505635357280", + "140140427866343": "15229041840", + "135923131758685": "183632739945", + "153724478485661": "7868244366", + "153712262346661": "12216139000", + "180499904581500": "18614866100", + "180518519447600": "94477416180", + "185427780283324": "113267866793", + "185590772203513": "67134250000", + "190994050615925": "156533816852", + "185723300642827": "45000000000", + "204121980627989": "292114744200", + "211474615401946": "234173311666", + "212488050533672": "36881868335", + "212437153941206": "50896592466", + "215246589705839": "19663672112", + "216146125608251": "100000000000", + "218128970981269": "85000000000", + "219566038129153": "7309432177", + "224386670956527": "69757866647", + "224467083741378": "56976941921", + "224539654705558": "91774095238", + "223609195625824": "23784920032", + "229449538650748": "40000000000", + "230263526120352": "70000000000", + "232624752844281": "40000000000", + "230164010722177": "19574398175", + "232524752844281": "84709072240", + "230183585120352": "79941000000", + "249785146143756": "235946386490", + "235550743976314": "89966016400", + "250060921972456": "27049203270", + "249616082767406": "67236052780", + "249702012822236": "33133321520", + "250093345298326": "16840000000", + "250747526004490": "17161170037", + "249775146143756": "10000000000", + "258074901441630": "7830821110", + "258830805144696": "14803898208", + "264303602202615": "9804554407", + "270466945437103": "26274622666", + "322976729089818": "26917828556", + "312842343103991": "40248448544", + "300503468200478": "34267517805", + "376489301659889": "8274303563", + "338388026785557": "443282416104", + "376486089733614": "3211888888", + "376497575963452": "18797185439", + "657330275690372": "153179376309", + "648990230194838": "19899717937", + "659013038876321": "33268342087", + "658709788202512": "167217199434", + "663001818967270": "379699841755", + "668361111992693": "103496806590", + "669025371837989": "82189769281", + "665151735234090": "280660104174", + "664769584727359": "98973775726", + "670213265504450": "43650433333", + "668504381526555": "23099271710", + "681836237267238": "34376130558", + "684410957634940": "583900111083", + "686180126955032": "4714572065", + "684408807600794": "2150034146", + "683191224341172": "565341232663", + "682519630375542": "199937039599", + "685933821038234": "67873369400", + "686001694407634": "178432547398", + "685282395588202": "221013829371", + "685736066448290": "109830570966", + "699968832611949": "68045299671", + "700043865765889": "1122080009786", + "720550874525684": "144562488635", + "721280717882254": "114544305063", + "708854489473588": "2331467063229", + "741721605791225": "533078887", + "741445158783872": "271967604583", + "742267259580163": "224105067098", + "742050186314922": "151582713093", + "759972521300476": "24690921", + "759864406377749": "45278692", + "759972486436407": "34864069", + "759973028640596": "39305197", + "759972377216198": "1594793", + "760196673266902": "98401627464", + "762926802121989": "114425762", + "763793608493475": "9689035799", + "766113678648016": "58974785104", + "764066849504423": "17132148668", + "764298360543842": "32902204320", + "767132401168095": "168190067886", + "828862490763473": "1052264342541", + "849357802416126": "207036916985", + "868148430520173": "107099547303" + }, + "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00": { + "634821984317931": "7385494623", + "634754120308907": "3618830978" + }, + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85": { + "786871206108027": "177450395" + }, + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F": { + "33164487220396": "11277021864", + "209627435518367": "42239183866", + "191484262155819": "9788460106", + "87853421681484": "90152601115", + "193305911888160": "42398880624", + "209767630496078": "138280774553", + "217337407064629": "26811333934", + "659581106622223": "150000000000" + }, + "0x59229eFD5206968301ed67D5b08E1C39e0179897": { + "342943443750453": "4560091570", + "860664797310295": "146130245088" + }, + "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c": { + "268214836546577": "98936672471" + }, + "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef": { + "369554524035869": "1824524280000", + "529636306256": "3231807785977", + "508046383696436": "2758540080000" + }, + "0x5A25455Cf1c5309FE746FD3904af00e766Eca65f": { + "668107032501837": "207192309402" + }, + "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e": { + "87943574282599": "14956941882", + "202299298031056": "16158945430", + "181871582186182": "25944797737" + }, + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87": { + "647667749599650": "29135772559", + "647819555574890": "3934226800", + "634142881550290": "4848909225", + "647192844826112": "12287980322" + }, + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430": { + "164284645848934": "77355000000", + "480550938124988": "26915995911", + "218213970981269": "62944772965", + "76018574486488": "10087313298", + "84547875356697": "12856872500", + "582542383151295": "20467308746", + "653082421968959": "214025000000", + "658409543724785": "151481732090", + "676839643561375": "13229284933", + "655813672711333": "156683400000", + "680256795371953": "59389696996", + "744358813888924": "12949190203", + "764060109940964": "6739563459", + "786454848653590": "10604585661", + "781933941888477": "68619328543", + "800170499585294": "1303886596053", + "809008960598650": "515797412273", + "859758704934542": "80698396938", + "859662074503513": "96628816629", + "861600293087365": "53711143255", + "883395652630032": "78684728679", + "884314681255677": "229380229313", + "860810927686506": "25000733085", + "886077394374210": "209848058617", + "887111300166407": "131847120287", + "902015905173218": "295817208073", + "908911752569097": "2098652407026", + "912015746389452": "50058887216", + "919403195205502": "2028637197", + "203382408914965": "35447202880", + "916492395857023": "451136446595", + "86279752500167": "1993398346", + "86221799135166": "2991378811" + }, + "0x5C6cE0d90b085f29c089D054Ba816610a5d42371": { + "250867618379450": "59395536292" + }, + "0x5c0ed0a799c7025D3C9F10c561249A996502a62F": { + "768546538365412": "16682055566", + "768485269690828": "55862378283", + "768471843729210": "13425961618" + }, + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7": { + "61081969998060": "2751729452", + "648056768763062": "3850108834", + "56102135956552": "2287841173", + "664471001883072": "50493335822" + }, + "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be": { + "157835643639028": "20828898066" + }, + "0x5c9d09716404556646B0B4567Cb4621C18581f94": { + "72555956226539": "20000000000" + }, + "0x5dd28BD033C86e96365c2EC6d382d857751D8e00": { + "310802904043371": "14439424263", + "237962196099642": "100073216296", + "167888523131210": "55944700000", + "325514674435893": "12665494224", + "167759367131210": "22900000000", + "331731353814149": "12750000000", + "326097719542277": "39015199159", + "394973436758682": "9294571287", + "394960156695542": "13280063140", + "394982731329969": "13275856475", + "588122611316494": "39546000000", + "588730250816494": "39546000000", + "587176458056494": "95701320000", + "588426431066494": "39546000000" + }, + "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B": { + "245109370270781": "34408580863", + "236244855469125": "38237815837" + }, + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2": { + "643668839963316": "842769388", + "229131219280976": "258558904960", + "648155192736605": "7110933861", + "272277124488125": "42383755833", + "312882591552535": "134100000000", + "650498612856813": "471976956" + }, + "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2": { + "320003040403364": "109484641436", + "309775525497403": "43672091722" + }, + "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391": { + "868135118214992": "13312303253", + "266751336572658": "87321731643" + }, + "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C": { + "187149515866713": "4230389743" + }, + "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA": { + "529771946401834": "27264468841", + "529812382369870": "50596246406" + }, + "0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF": { + "31704149901004": "64000000000" + }, + "0x6040FDCa7f81540A89D39848dFC393DfE36efb92": { + "120170158809998": "32175706816" + }, + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345": { + "385786821567282": "3253000000000", + "69169795658552": "1194000000000", + "350562558201369": "1837200000000", + "358055253899368": "1873200000000", + "367514336456086": "1912200000000" + }, + "0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A": { + "648525331599001": "1795068" + }, + "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d": { + "199790557977382": "20307567726", + "203292613872621": "44559574776", + "222747868386967": "432111595595", + "208496431950430": "135909962633", + "224182522802981": "88646625543", + "238654491458777": "122335228001", + "243345979795662": "193838339361", + "681329690104184": "100824447648", + "766650786494524": "466125005645", + "867024271662802": "228905711977", + "882883404002569": "255298540903" + }, + "0x6343B307C288432BB9AD9003B4230B08B56b3b82": { + "318350491352535": "10004250325", + "227899892118673": "9098821991", + "267222626735429": "10019159841", + "338983012660405": "10015549677", + "190774347525626": "3001979267", + "408336712785945": "1693453752", + "361229466618475": "5009439565", + "400384179598971": "2922196166", + "400381174841304": "3004757667", + "408334868608585": "1844177360", + "547242764896211": "10048376141" + }, + "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8": { + "429076381887304": "39624686375", + "841660754217816": "4019358849" + }, + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc": { + "585447600884457": "2534228224", + "586646633174881": "5673597364" + }, + "0x647bC16DCC2A3092A59a6b9F7944928d94301042": { + "234363994367301": "101810011675", + "595338144020334": "47102200000" + }, + "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61": { + "258565835620739": "183219147770", + "250715780766453": "25000000000", + "201178239618701": "68900140210", + "258249957689022": "200370650949", + "258845609042904": "3445725605", + "647219853688450": "4812444606", + "637141029774703": "5486788601", + "648341533215584": "11578312077", + "646951101223564": "1957663487", + "650128399980624": "3108966478" + }, + "0x64e149a229fa88AaA2A2107359390F3b76E518AD": { + "250672958372559": "42822393894" + }, + "0x6525e122975C19CE287997E9BBA41AD0738cFcE4": { + "408056818038549": "78748758703" + }, + "0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8": { + "408040736449697": "6081271018" + }, + "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a": { + "650496758556813": "1854300000", + "650881433728485": "3081500000", + "651225562512104": "675422900", + "650650384373882": "1110960000", + "649773468164491": "623800000", + "653859484421522": "1610442418", + "651616768941819": "3827342044", + "654202995304304": "1550473112", + "651857559559538": "1653185142", + "811198403550001": "12682309008" + }, + "0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22": { + "326213533536434": "11833992957" + }, + "0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6": { + "866505232600864": "362107628548" + }, + "0x66B0115e839B954A6f6d8371DEe89dE90111C232": { + "190559517557189": "891296390", + "194817411438496": "85437509504", + "174758503486179": "45", + "190578231407162": "26273598464", + "190554003270326": "5514286863", + "201412155317743": "29101504817", + "216687848171321": "83474118399", + "342905708461958": "33242114013", + "237529097661776": "81104453323", + "342948003842023": "29159870308", + "525442674564630": "41624181591", + "355390284502004": "62595004655", + "564800852312708": "120603630000", + "566205620733477": "120603630000", + "570126495171215": "120603630000", + "571966572157753": "120603630000", + "568866721950815": "120603630000", + "562634470802308": "120603000000" + }, + "0x679B4172E1698579d562D1d8b4774968305b80b2": { + "395530746048580": "6726740160" + }, + "0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD": { + "33204784130073": "10666666666" + }, + "0x682864C9Bc8747c804A6137d6f0E8e087f49089e": { + "764116409712760": "376300000", + "766112231428357": "103950567", + "768720341081119": "10972000", + "768720352053119": "54860000", + "767877082644924": "4494000" + }, + "0x688b3a3771011145519bd8db845d0D0739351C5D": { + "598166530577023": "297938099" + }, + "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07": { + "641239727537305": "3801049629", + "637348332706520": "3665297857" + }, + "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3": { + "326260465529391": "17549000000", + "175839043720271": "639000700700", + "327866927799830": "200000000000", + "59495685484453": "10000000", + "59447104921333": "48580563120", + "529948130178467": "60353499994", + "458946849997346": "1509444773173", + "487104864611440": "8118000000000", + "541230880735707": "1053414238201", + "540025578631290": "1050580350517", + "788056651665705": "1423950000000", + "676535948745205": "2281535426" + }, + "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2": { + "229742216600874": "196893643061", + "228443474467376": "26144594910", + "205856377916701": "23473305765" + }, + "0x69e02D001146A86d4E2995F9eCf906265aA77d85": { + "662653511432800": "41531785", + "831131397455690": "19412572061", + "849564839333111": "16363837424", + "740688026571943": "293208703330" + }, + "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559": { + "767548494200642": "1261346400" + }, + "0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b": { + "650252699558669": "893481478" + }, + "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7": { + "342560304255977": "333305645984", + "150360950060615": "242948254181", + "32060163672752": "28148676958", + "161068340667787": "20000000000", + "160053122684606": "20023987333", + "344551768397376": "66850100000", + "344389113234876": "51504000000", + "363769394312766": "102337151992", + "361685681657312": "62680000000", + "369426536456086": "127987579783", + "395493517902828": "6712331491", + "378552709136790": "38488554613", + "396929743473580": "66231437063", + "402346745493273": "26916949971", + "530133483678461": "281553523845", + "576749818528380": "128350847807", + "624313265610454": "235481948284", + "595690093032834": "42417259406", + "630539882897389": "5506646911", + "630883526816254": "5243434934", + "634139460032971": "3421517319", + "634468058178676": "2971508955", + "634935371920999": "4637078134", + "640555043042177": "126770247812", + "643639272958859": "7174635902", + "639717387300187": "77913000000", + "681087658581778": "242031522406", + "646904567079253": "9652153237", + "680821347452730": "115002187754", + "792702109000794": "102830000000", + "846523170952449": "523488988207", + "828751559244596": "110931518877" + }, + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D": { + "634472174530302": "1475264000", + "585450135112681": "2349268241", + "33151317189285": "64286521", + "576748931831644": "886696736" + }, + "0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd": { + "631710479555794": "27065136362" + }, + "0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F": { + "273007832358728": "21" + }, + "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D": { + "911959750190927": "55938224595", + "883628500845473": "82518671123", + "919283383995914": "76438100488", + "805211526908643": "72305318668" + }, + "0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10": { + "397022450164102": "50261655503" + }, + "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9": { + "199564902491192": "4", + "643101709436282": "4222978151", + "641506736028021": "2916178314", + "344839373651771": "479115910", + "641509652206335": "2749595885", + "643890241268202": "4934195535", + "643096514658419": "5194777863", + "643633701423724": "5571535135", + "643895175463737": "4471591756", + "643798096101417": "3171247947", + "644442516225274": "5546831538", + "644123990666901": "8655423354", + "644422095342082": "5047673478", + "644290308134813": "6411168248", + "644388265508089": "8012158467", + "646729515149835": "2514524429", + "648197602149037": "2827660397", + "648807271975686": "17620350" + }, + "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54": { + "408321036814023": "6779928792", + "331756528135803": "61934486285" + }, + "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906": { + "403467977485669": "4265691158" + }, + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A": { + "635987453662106": "880116472", + "644555830955508": "2808417895", + "646749582249400": "903060349", + "641512401802220": "5493342645", + "635536095356615": "1027219504", + "646766913990107": "1939941186", + "646945916373621": "3045363522", + "767125477756875": "1001496834", + "767300591235981": "1890000000", + "767972799745643": "4444320090" + }, + "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B": { + "767889723281779": "68608459317", + "420441198802": "387146704" + }, + "0x702aA86601aBc776bEA3A8241688085125D75AE2": { + "542284294973908": "10000615500", + "506169104365387": "7211374244", + "506165499383895": "3604981492", + "205879851222466": "33943660000", + "109497928877661": "23439331676" + }, + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565": { + "157553403132001": "19294351466", + "648282232925391": "5285515919", + "644387467914405": "797593684", + "649313442399124": "18516226556", + "672632693625732": "17500007580" + }, + "0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793": { + "340164692018203": "16127724193" + }, + "0x70a9c497536E98F2DbB7C66911700fe2b2550900": { + "644255862272829": "274579086", + "644318860467072": "289371263", + "644234859479000": "279246690", + "644350860239846": "2255393372", + "643856074680084": "518323846", + "644344232569703": "1080267604", + "644353115633218": "4452414623", + "677491281789418": "2857142857", + "644246226623579": "197641438", + "681685922435654": "25111379095", + "917061939949695": "32052786097" + }, + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31": { + "88857695552777": "1354378846", + "33152426109281": "4", + "41370284961658": "2693066940", + "647760366592966": "25920905560", + "41333271497978": "668874033", + "648612566573043": "33", + "649184309005289": "2278449", + "648651086279479": "22959268", + "649236453132845": "19324702", + "649682081565764": "649539942", + "649693481105706": "448369312", + "739098370599205": "19781032784", + "649874764673718": "2584832868", + "649284881951220": "48009418", + "741941794536593": "7498568832", + "760171881624417": "11891246578" + }, + "0x70c65accB3806917e0965C08A4a7D6c72F17651A": { + "767503070574842": "4117776465" + }, + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82": { + "129427950156525": "467400000000", + "124490727082220": "3038100000000", + "59495695484453": "504171940643", + "202960513872621": "332100000000" + }, + "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8": { + "87737275673292": "29174580000", + "43977781538372": "960392727042", + "121055292369428": "595350750000", + "84043081856785": "88783500000", + "53415449139505": "560000421094", + "153930334477670": "722113163135", + "337103989850712": "208640000000", + "390858944448074": "1732376340000", + "425808292285395": "1709471220000", + "747250339620613": "1065835841221" + }, + "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537": { + "396254532333032": "26041274600", + "517161961415705": "28582806091", + "312728908697529": "60865019612", + "525552789075203": "119322721243", + "561477850643778": "198991954538", + "562816854802308": "75915000000", + "566032344745977": "75915000000", + "547526923635099": "70107880058", + "569084686568315": "75915000000", + "572148957945253": "75915000000", + "672617693625732": "15000000000", + "564663155155208": "75915000000" + }, + "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2": { + "670969471210715": "112808577" + }, + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126": { + "258749054768509": "81750376187", + "767116911500169": "5542244064" + }, + "0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246": { + "495339332225603": "10275174620" + }, + "0x726C46B3E0d605ea8821712bD09686354175D448": { + "42578680325272": "921515463464", + "308307791521525": "1085880660191" + }, + "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2": { + "185768300642827": "25083351878", + "90975474968757": "37830812302", + "274439437731803": "42917709597", + "199587559564998": "35132497379", + "189669106071687": "31883191886", + "331649739813903": "61822486683" + }, + "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4": { + "315662245991020": "93694962402", + "315467930213071": "136678730685", + "311021852055993": "57433012261", + "393653690433948": "40057990877", + "311424446177396": "1090720348401" + }, + "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347": { + "278416305316531": "240278890901", + "299226867063944": "69420000075", + "272818189064955": "165298148930" + }, + "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515": { + "75760702250033": "8000000000", + "143366130662199": "10948490796" + }, + "0x74231623D8058Afc0a62f919742e15Af0fb299e5": { + "90940749954930": "34725013824", + "235813231354853": "30400392115", + "31883651774507": "11659706427" + }, + "0x7568614a27117EeEB6E06022D74540c3C5749B84": { + "209623483887840": "1224386800", + "344841846701641": "2000000000", + "312789773717141": "7267067960", + "646984807026252": "6479854471", + "652726940100667": "16139084611" + }, + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658": { + "187621160594244": "16717595903", + "175146200354223": "75138116495" + }, + "0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000": { + "12684514908217": "106416284126" + }, + "0x76A63B4ffb5E4d342371e312eBe62078760E8589": { + "582285563910121": "4410560000" + }, + "0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc": { + "640275952429877": "258412979" + }, + "0x775B04CC1495447048313ddf868075f41F3bf3bB": { + "323031012826145": "49257554759" + }, + "0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B": { + "274388266066105": "11429408683" + }, + "0x78320e6082f9E831DD3057272F553e143dFe5b9c": { + "490546315924": "61632407" + }, + "0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E": { + "87063919996383": "31956558401" + }, + "0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D": { + "487068024611440": "36840000000" + }, + "0x7893b13e58310cDAC183E5bA95774405CE373f83": { + "648696061519944": "7004800000", + "648503987692687": "6104653206", + "648658078783221": "1319829324", + "648651109238747": "6969544474", + "648537251303200": "11543", + "648716573711036": "5089600000", + "648722171346064": "9538500000", + "648537251314743": "322894", + "648687783119944": "8278400000", + "648959935217814": "15070160000", + "649027726170457": "17894090000", + "649100844933065": "18319300000", + "649010795462125": "16447600000", + "649069136308065": "18328000000", + "649431555002242": "33988820000", + "648931504537814": "23555040000", + "648955059577814": "4875640000", + "649119164233065": "11365200000", + "649046499968065": "22636340000", + "649398940602242": "32614400000", + "649284929960638": "2827800000", + "649618260849465": "20654700000", + "649287827400680": "15081600000", + "649573935073567": "26412980000", + "649940503754588": "4642174919", + "649668950265764": "13131300000", + "649143422600101": "11990900000", + "649933845144588": "6658610000", + "649915798444588": "18046700000", + "649962462383072": "34628690000", + "649832683807170": "20804860000", + "651485759158523": "135322", + "649600986009465": "17274840000", + "661338230306152": "218560408342", + "811211085859009": "1285117945279", + "808845120725088": "163839873562", + "812496203804288": "1246029256854", + "857581197479570": "1634493779706" + }, + "0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50": { + "20360646192758": "4967300995", + "859890207337852": "11474760241" + }, + "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E": { + "340056236725906": "53380000000", + "340109616725906": "53380000000", + "322952053290841": "24675798977" + }, + "0x7A63D7813039000e52Be63299D1302F1e03C7a6A": { + "340313280922433": "9750291736" + }, + "0x7A6530B0970397414192A8F86c91d1e1f870a5A6": { + "644132646090255": "8161384731", + "109585986971037": "15454078646" + }, + "0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E": { + "644746452171666": "213353964" + }, + "0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD": { + "264752557419462": "8605989205" + }, + "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6": { + "624665309966700": "41439894685" + }, + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e": { + "738175767886792": "725867793824", + "740163597340288": "280746545970", + "739166585934609": "997011405679" + }, + "0x7B2d2934868077d5E938EfE238De65E0830Cf186": { + "53975449560599": "629903012456" + }, + "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4": { + "311079285068254": "225639161016", + "174459809952308": "281091996530" + }, + "0x7bB955249d6f57345726569EA7131E2910CA9C0D": { + "605777739970297": "85487500000", + "603576947611080": "199366926066", + "277940142360555": "98218175816", + "605358509270297": "85487500000", + "604978961867797": "45804202500" + }, + "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F": { + "199700241341159": "90316636223", + "150072245775067": "101280926262", + "148739166418696": "42976910603", + "149458771642101": "17768345687" + }, + "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc": { + "673932629258168": "57490196078", + "672373244407056": "22359930276" + }, + "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3": { + "229554049269178": "188167331696", + "227166312100795": "90992725291" + }, + "0x7D6261b4F9e117964210A8EE3a741499679438a0": { + "193924082223281": "212363516752" + }, + "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16": { + "647796025649944": "2276035252", + "33126339744841": "2542932710" + }, + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E": { + "656895275442629": "48622222222", + "41331690648396": "1580849582", + "648155116928042": "75808563", + "41333940372011": "1537628217", + "647755311699262": "5054893704", + "656120433075312": "50144887945", + "660026375198031": "42190522575" + }, + "0x80077CB3B35A6c30DC354469f63e0743eeff32D4": { + "417435849352728": "4099200000000" + }, + "0x7eaF877B409740afa24226D4A448c980896Be795": { + "609292089920626": "20074904153" + }, + "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5": { + "41340350884137": "5263157894", + "213307234626330": "12500000000", + "646795333940977": "6300493418", + "385650953907930": "16235000000", + "380613889185508": "10461930383", + "646842090324499": "6350838475", + "648377421210050": "13030510108", + "653479984577629": "119019649033", + "648299147129728": "14576284733", + "653297909699401": "24458875511", + "662024206613204": "79777206742" + }, + "0x7F82e84C2021a311131e894ceFf475047deD4673": { + "623581806243753": "62496053737" + }, + "0x804Be57907807794D4982Bf60F8b86e9010A1639": { + "84731726100795": "91448859303", + "76424701653538": "94753388776" + }, + "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81": { + "166225090295346": "87221043559", + "74179965494047": "25544672634" + }, + "0x81F3C0A3115e4F115075eE079A48717c7dfdA800": { + "138205055379551": "21229490022", + "85005128802664": "17746542257" + }, + "0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19": { + "237009419020035": "24112008674" + }, + "0x81704Bce89289F64a4295134791848AaCd975311": { + "644073460766211": "46712134", + "644187073578836": "33" + }, + "0x82F402847051BDdAAb0f5D4b481417281837c424": { + "33153376109285": "2512740605", + "215241439378309": "5150327530", + "326072699542277": "25020000000", + "335847619702697": "10121780000" + }, + "0x80a2527A444C4f2b57a247191cDF1308c9EB210D": { + "767511386944346": "37106473488" + }, + "0x832fBA673d712fd5bC698a3326073D6674e57DF5": { + "217540873751726": "22996141953", + "265592792884462": "23842558596" + }, + "0x8366bc75C14C481c93AaC21a11183807E1DE0630": { + "76001221652173": "5352834315", + "657207189000929": "22663915925", + "648175958870466": "11538942187", + "153738842061438": "31920948003" + }, + "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17": { + "218815689873725": "90674071972", + "511059734567237": "208510236741" + }, + "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751": { + "581907955037154": "9999000000", + "665701343812558": "272195102173", + "678914917868431": "570100000000", + "581907954037154": "1000000", + "669333969414822": "215834194074", + "677431627790689": "31545276943", + "759972946334490": "26506", + "759972802735125": "63916929", + "759972901571987": "44762503", + "760183772870995": "237950000", + "759972946415599": "45639837", + "759972866652054": "34919933", + "759972946360996": "54603", + "759972992055436": "36372829", + "759973028428265": "212331", + "760353370932416": "640797", + "761860246451109": "40407888", + "761861144296315": "8965138", + "762295528572441": "31584894", + "761860286858997": "20624528", + "761858264676918": "27291992", + "761858118071390": "18166203", + "761858136237593": "33655130", + "761861105640928": "38655387", + "761858169892723": "41246561", + "762295560157335": "35342", + "762940981941034": "21214050", + "762295560192677": "19821585", + "762295499061705": "29510736", + "763877071172496": "18553917", + "763876944550921": "126220", + "763876944677141": "2145664", + "763877559163775": "2178159", + "763898517945378": "2604448", + "763904542079194": "8086438", + "763904550165632": "8189602", + "763904558355234": "9042724", + "763904527658191": "8645673", + "763904567397958": "9831655", + "763904514777740": "12880451", + "763898472187152": "34733796", + "763904536303864": "5775330", + "763904577229613": "27363324", + "763910568290798": "12803633", + "763908619462613": "12836178", + "763910581094431": "5385691", + "763910556401834": "11888964", + "763976063428196": "9117332", + "763977749292983": "9551578", + "763977808313514": "8074766", + "763910586480122": "8796762", + "763977704148436": "8272223", + "763977712420659": "8438801", + "763976364455283": "7550783", + "763977730415896": "9430332", + "763977695891931": "8256505", + "763977720859460": "1226665", + "763977688578348": "7313583", + "763977739846228": "9446755", + "763976372006066": "7917327", + "763977722086125": "8329771", + "763983196643288": "10869074", + "763977816388280": "6279090", + "763977788006901": "20306613", + "763977771003164": "17003737", + "763977758844561": "12158603", + "763976379923393": "8299132", + "763976357160622": "7294661", + "763978505738531": "8847815", + "763976234474836": "4457574", + "763985909132064": "9752450", + "763985918884514": "9787526", + "764059201744095": "12584379", + "763983434298148": "9849175", + "764060013983364": "12401916", + "764056294370732": "9351239", + "764060046515193": "1501728", + "764058355999201": "11112309", + "764060045064346": "1450847", + "764056303721971": "9560632", + "764060050911761": "4941150", + "764060060663436": "2557221", + "764059951830371": "7635979", + "764059974999476": "6432651", + "764060058854098": "1809338", + "764059981432127": "6505670", + "764060074074083": "7779768", + "764059214328474": "15014610", + "764060063220657": "3319612", + "764060048016921": "2894840", + "764060026385280": "9288929", + "764060057153987": "1700111", + "764059993478390": "9367181", + "764059987937797": "5540593", + "764060066540269": "7533814", + "764060055852911": "1301076", + "764059959466350": "7814413", + "764059229343084": "48861891", + "764059967280763": "7718713", + "764060035674209": "9390137", + "764059944324704": "7505667", + "764059278204975": "75874729", + "764060002845571": "11137793", + "764452728661398": "6424123", + "764452648625420": "8106249", + "764454212950366": "971045", + "767132400796221": "371800", + "767132401168058": "37", + "767132401168021": "37", + "767825578930453": "409264", + "767825579339717": "6540080", + "767852884974560": "16635629" + }, + "0x83C9EC651027e061BcC39485c1Fb369297bD428c": { + "45436352397595": "303350065235", + "41616804521094": "961875804178", + "43500195788736": "477585749636", + "75556189962930": "129981759017", + "75054132455628": "463749167922" + }, + "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D": { + "638302750599290": "1659683909", + "635972973747079": "594161902", + "649155413500101": "12127559908" + }, + "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e": { + "319387499836221": "99947794980", + "319487447631201": "99825855937" + }, + "0x8456f07Bed6156863C2020816063Be79E3bDAB88": { + "312515166525797": "27881195737" + }, + "0x848aB321B59da42521D10c07c2453870b9850c8A": { + "676686201559550": "785945", + "676683082878726": "419955" + }, + "0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b": { + "408274916734309": "46120079714" + }, + "0x85971eb6073d28edF8f013221071bDBB9DEdA1af": { + "195612355274761": "16839687137" + }, + "0x85bBE859d13c5311520167AAD51482672EEa654b": { + "395500230234319": "3355929998", + "173386909282298": "93706942656", + "96762775283557": "102770386747", + "52088858820053": "99058163147", + "361560759321922": "124922335390", + "400387101795137": "13305220778", + "408338406239697": "2037424295", + "395507210053015": "1342546167", + "415550617895723": "2006847559", + "443883816299985": "132685663226", + "577904956448694": "30085412412", + "836265440249827": "101381274964", + "916958051049107": "103888892461" + }, + "0x87263a1AC2C342a516989124D0dBA63DF6D0E790": { + "769309859020325": "543636737", + "740625640590276": "3880736646" + }, + "0x85Eada0D605d905262687Ad74314bc95837dB4F9": { + "681632124128030": "7857742444", + "680106747582914": "8091023787" + }, + "0x8675C7bc738b4771D29bd0d984c6f397326c9eC2": { + "271861293951059": "198152825" + }, + "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008": { + "452122462229722": "3565000000000", + "16396578434940": "1386508934563" + }, + "0x87316f7261E140273F5fC4162da578389070879F": { + "634752629673424": "177195", + "662291967520724": "358440000000", + "61109178571450": "122328394500", + "33300451017861": "86512840254", + "650887494287222": "91918750000", + "667093311031404": "218769177704", + "666823186189970": "262793215966", + "665973538914731": "277554381613" + }, + "0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c": { + "760184740654334": "11932612568" + }, + "0x876133657F5356e376B7ae27d251444727cE9488": { + "768637502130744": "6878063205" + }, + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45": { + "827740583607248": "853190019303", + "167782267131210": "106256000000", + "827629800353740": "110783253508" + }, + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e": { + "57813809876489": "1456044500354", + "7610595204140": "5073919704077", + "170272286454622": "56571249769", + "38787729222746": "2131906543178", + "349019688741041": "1506500000000", + "380692001264631": "3775193029045", + "441243549115022": "2601287700000", + "632606217533439": "22758013200", + "517190544221796": "3763750720000", + "745015672951634": "2234666668979" + }, + "0x88F09Bdc8e99272588242a808052eb32702f88D0": { + "88453221835372": "233118002521", + "165315717408183": "439812976881", + "153171960305965": "41365965513", + "85029199936365": "840122967451", + "154999547640805": "375222322618", + "171503540188858": "351737246973", + "218906363945697": "267770208367" + }, + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA": { + "32181015349710": "480290414", + "29414505086527": "2152396670739", + "87581469817175": "155805856117", + "70363795658552": "66346441237", + "67097307242526": "33653558763", + "98500494455758": "312782775000", + "221217178954962": "79784359766", + "291950100636275": "188949798464", + "353439836528037": "30660000000", + "353470496528037": "24576000000", + "362146672277631": "792250000000", + "376516374904000": "1617000000000", + "390832166082933": "26778365141", + "394108244766547": "716760000000", + "390771216202303": "27097995630", + "396876559988498": "6636959689", + "396298286064032": "26723534157", + "396325009598189": "26805960384", + "396351815558573": "19925216963", + "403252895632721": "26771365896", + "507117056987690": "1891500000", + "551501858791010": "4512000000", + "600406655075849": "2363527378", + "573655832985345": "106500000000", + "588878841916038": "131652538887", + "639715198069573": "2189230614", + "741729751228268": "1456044898", + "741781940291974": "61004241338", + "705891223608807": "144595850533", + "741749288606424": "32651685550", + "743314353435951": "26369949937", + "743175173822909": "94910366676", + "743684384239393": "29401573282", + "742560662343081": "273256402439", + "744417709046481": "288732279695", + "743600702406369": "29793092327" + }, + "0x88F667664E61221160ddc0414868eF2f40e83324": { + "350528056631821": "31369126849" + }, + "0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1": { + "344900298455340": "70954400000" + }, + "0x891768B90Ea274e95B40a3a11437b0e98ae96493": { + "643546658124727": "67704306110", + "580263603894911": "202078712746", + "580852891674604": "240857146192", + "646848441162974": "13082343750", + "542384825883218": "183217724421", + "647064793304491": "19836000000", + "646861523506724": "9963000000", + "647361422909783": "10074093750", + "647416263710967": "9033750000", + "647580506034299": "7345791596", + "648573161562432": "8173059019", + "653461600264912": "16002234489", + "654979952361127": "23536146483", + "652685809874501": "41130226166", + "699140429441765": "235512332890", + "810139795794754": "1021515561753" + }, + "0x89979246e8764D8DCB794fC45F826437fDeC23b2": { + "180499793470389": "111111111" + }, + "0x8A30D3bb32291DBbB5F88F905433E499638387b7": { + "624854422205544": "365063359304", + "720966007001489": "172940224850", + "790054047305179": "266340074594" + }, + "0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9": { + "173480616224954": "5892105020" + }, + "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B": { + "324785641390123": "20381632106", + "31876165099710": "4909413452", + "337836629850712": "110785980662" + }, + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF": { + "634375990601696": "8038918025", + "634279320795686": "1458416574", + "270425564599223": "6167341566", + "4952878965910": "25693", + "75795223567174": "55399924533", + "634684031419046": "14524410119", + "636951322053443": "5949833624", + "636910709575795": "43996256" + }, + "0x8b08CA521FFbb87263Af2C6145E173c16576802d": { + "273422474556206": "86252721548" + }, + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72": { + "656881019664829": "5000000000", + "653322368574912": "1500000000", + "648003472838380": "12191197851", + "656943897664851": "10000000000" + }, + "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048": { + "647544630241326": "8159246655", + "679488933480560": "10109491684", + "656973507284806": "14666666666" + }, + "0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5": { + "273822660112045": "7974066988" + }, + "0x8BB07e694B421433c9545C0F3d75d99cc763d74A": { + "262064136145414": "3613514390", + "201066794771608": "25133316533", + "429986876991709": "54054054054" + }, + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612": { + "918986387237878": "39771142560", + "919359990785000": "42954878920" + }, + "0x8be275DE1AF323ec3b146aB683A3aCd772A13648": { + "239366783598110": "43020513083", + "326242916529391": "17549000000", + "217487565268538": "44350084857", + "299402420990124": "221104866853", + "201109552307211": "5955474760", + "361863180975181": "277218187043", + "326313112529391": "17549000000", + "522905481908356": "367508589170", + "869942050156433": "161251868752", + "867419292286175": "168927430163" + }, + "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1": { + "247467483053971": "97017435775", + "268035191288542": "43140000000", + "236244833829125": "21640000", + "385713611898436": "6012500000" + }, + "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE": { + "193207655597753": "21615842337" + }, + "0x8C35933C469406C8899882f5C2119649cD5B617f": { + "738068338201632": "87106285553" + }, + "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9": { + "396538880923743": "3278000000", + "320002058744923": "981658441" + }, + "0x8D02496FA58682DB85034bCCCfE7Dd190000422e": { + "343580534466152": "26811409430" + }, + "0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D": { + "44938174265414": "58533046674" + }, + "0x8d5380a08b8010F14DC13FC1cFF655152e30998A": { + "547597031515157": "77364415010" + }, + "0x8D06Ffb1500343975571cC0240152C413d803778": { + "28904918772117": "509586314410", + "150623260553725": "436653263484", + "162734759646450": "737048150894", + "149476539987788": "595705787279", + "163471807797344": "717665153748", + "174803269011285": "323070981235", + "161092113186340": "738480151497", + "210525931443438": "62132577144", + "232704752844281": "204706266628", + "247742878911682": "275332296988", + "253931736847120": "290236580727", + "261970235265316": "30303030303", + "272319508243958": "438603533273", + "335529346845329": "13913764863", + "340276769047777": "33796000000", + "344533743397376": "18025000000", + "344515718397376": "18025000000", + "344833670732808": "5702918963", + "429976284393417": "10590000000", + "629227085981797": "216873485917", + "637149167789946": "4910026986", + "628854228397766": "372857584031", + "634643031419046": "20948977130", + "637351998004377": "258192517612", + "641574417641439": "154715717850", + "641522728201681": "5800000000", + "639180990676042": "199438094194", + "643909821821812": "6902000000", + "643916723821812": "10900958949", + "644007497148201": "11854871050", + "644065944123685": "7516642526", + "644057761258485": "8182865200", + "644045596517280": "6544832392", + "643999292802533": "8204345668", + "644171938918668": "9601229268", + "644306806412385": "12054054687", + "644319149838335": "10735050747", + "644329884889082": "14347680621", + "644396277666556": "6674520726", + "644525199249437": "6225710228", + "644616712009539": "14199853473", + "644642611623012": "12249630834", + "646758741417842": "4969664107", + "646914219232490": "8605864430", + "646871486506724": "17642812500", + "647371497003533": "6381630000", + "647002050880741": "9799080000", + "647119660778668": "15762838323", + "647527562675656": "8111120358", + "647166440607362": "9285468750", + "647617732404338": "19873525000", + "647151216777708": "11761593750", + "647505902133654": "6953600000", + "647908205457926": "12756105568", + "647838858023565": "29093546875", + "647046808773241": "17984531250", + "647978638361818": "24834476562", + "647084629304491": "23544562500", + "648034585438303": "11688871093", + "647798301685196": "7654771125", + "648106773674125": "3568208882", + "648017646545411": "10268964843", + "648187497812653": "10104336384", + "648616078919292": "8718470609", + "648233657616208": "10357224170", + "648252129451354": "8545778006", + "648510092345893": "15239253108", + "648262194812840": "8952959614", + "648483189881961": "20797810726", + "648452542642294": "21586449186", + "648244014840378": "8114610976", + "648416302604421": "20715605468", + "648271147772454": "6063060479", + "648783994477207": "23277498479", + "648629542096134": "21544183345", + "648750501960130": "10150581160", + "648287518441310": "7377849726", + "648760652541290": "23321057117", + "648889660439973": "41844097841", + "648807289596036": "20989718750", + "648828279314786": "20297082735", + "649261133791064": "23748160156", + "649214012945345": "22440187500", + "649693929475018": "11667351669", + "649656745149465": "12205116299", + "649236472457547": "7534311320", + "658147267102223": "82507217675", + "659366890690250": "174474635475", + "657631435066681": "35105723092", + "657986484502639": "80000000000", + "657741540789773": "84888584622", + "676683083298681": "3118260869", + "657232832610979": "97443079393", + "665058906638905": "92828595185", + "676664914525249": "18043478260", + "682844108475123": "1148082700", + "679750611381961": "234067235160", + "741842944533312": "61092850308", + "681871200072623": "12689035666", + "763803405580259": "33297747636", + "741732026495866": "17262110558", + "768649803857758": "67782688750", + "763709016360993": "44972105263", + "912555361492019": "2704904821499" + }, + "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8": { + "76141260255617": "5973245960", + "76139269514624": "1990740993" + }, + "0x8d9261369E3BFba715F63303236C324D2E3C44eC": { + "809590710610923": "69000002695", + "593991444075917": "1088800000000", + "56104423797726": "5555555555", + "56128647277576": "115480969665" + }, + "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051": { + "161830593337837": "115150000000", + "202662490970944": "110850000000" + }, + "0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c": { + "759849978560381": "14385817538" + }, + "0x8E32736429d2F0a39179214C826DeeF5B8A37861": { + "235843631746968": "10000000000", + "217364218398563": "2286050992" + }, + "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6": { + "33289238004194": "88586040" + }, + "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3": { + "763837600998279": "7849710807", + "647923615594199": "3641357127", + "740606283858594": "19356731682", + "656957870028532": "10106346172" + }, + "0x8E22B0945051f9ca957923490FffC42732A602bb": { + "634794815279936": "9827545588", + "637155158025776": "5119268057", + "636030747598704": "5542323541", + "635904827427826": "9070037632", + "634788539076470": "6276203466", + "638272444804205": "4087299849", + "638517747611099": "59892617241", + "638577640228340": "369705124715", + "637160277293833": "4699403170", + "639881343943323": "3286401254", + "639884630344577": "355774647137", + "640240404991714": "27324351801", + "643694953463326": "2752359372", + "643614362430837": "2066888224", + "643785052909569": "5763520000", + "643821358178040": "7971800000", + "643725306973681": "9742600000", + "643620283037921": "8939065419", + "643779525019527": "3820850000", + "643708407761224": "7208774373", + "643829329978040": "5039030716", + "643719737373681": "5569600000", + "643703391590700": "661959372", + "643783345869527": "1707040042", + "644683123227789": "9745450000", + "644476737396027": "16895000000", + "644493632396027": "1504381620", + "644739405621666": "7046550000", + "644730383784474": "8593920000", + "644715557290166": "7386500000", + "644630911863012": "11699760000", + "644722943790166": "6647850000", + "644546930195508": "8900760000", + "644665485173846": "17638053943", + "646586693145487": "7647120000", + "644654861253846": "10623920000", + "646649283926819": "13915200000", + "646594340265487": "7107300000", + "646601447565487": "10325700000", + "648975005377814": "14240250000", + "649682731105706": "10750000000", + "649638915549465": "17829600000", + "649853553682918": "21210990800", + "649543350358696": "30370700000", + "649465991359682": "39499055600", + "649877349506586": "37388375200", + "649945145929507": "16389700000", + "649732321655883": "29365153200", + "650021492240274": "44719200000", + "650180188928485": "39053700000", + "650106319488124": "22080492500", + "649997091073072": "23302500000", + "650221099958669": "31599600000", + "650253593040147": "33458400000", + "650320795125561": "45806000000", + "650801314728485": "80119000000", + "650721535280868": "77075000000", + "650651519952014": "67859000000", + "650452255356813": "44503200000", + "651490734941819": "126034000000", + "651352897558523": "132861600000", + "650288534678033": "30655350000", + "650551388583982": "35815000000", + "650366601125561": "30935000000", + "651859212744680": "131988500000", + "652092559809813": "106100900000", + "651106116712104": "119445800000", + "652482991863768": "199030000000", + "652200893903770": "110340000000", + "651226237935004": "123080000000", + "651994987597920": "92040000000", + "652314223783562": "164816300000", + "656726385959559": "145320000000", + "660094725857615": "275770000000", + "656273596415795": "139472000000", + "657483455066681": "147980000000", + "663738170468081": "341622600000", + "667713496616813": "185793800000", + "668712695471943": "188864000000", + "667901436175266": "198119000000", + "667521733568321": "189440000000", + "670716975210715": "252496000000", + "743136696323798": "38477499111", + "670464846916585": "243812500000" + }, + "0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab": { + "644084234800388": "4987061378" + }, + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD": { + "634067048999317": "624152515", + "634316588909963": "1608309723", + "634313671519967": "2917389996" + }, + "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2": { + "32880713693820": "64911823433" + }, + "0x90a69b1a180f60c0059f149577919c778cE2b9e1": { + "768076090723695": "4151494524", + "883616982283453": "11518551564", + "768080242218597": "449469381", + "768563844703458": "1171046769", + "768317482790786": "557834029" + }, + "0x923CC3D985cE69a254458001097012cb33FAb601": { + "322124343236298": "166137507314", + "249612009457166": "4073310240", + "744791150134115": "7566204130", + "483902259120899": "107641561256" + }, + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1": { + "343041139126193": "95838400000", + "28489123737390": "4974815" + }, + "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA": { + "218296843888721": "80071865513", + "217531915353395": "8958398331", + "224631428800796": "22378", + "217366504449555": "302171", + "231844168579875": "306052702649", + "380624351115891": "67650148740", + "395424902256127": "6675646701", + "401212958523891": "54089424183", + "376516373148891": "1755109", + "643927624780761": "11229570252", + "644546638392961": "291802547", + "646810991621895": "8729437500", + "646780136970742": "8953406250", + "647587851825895": "11928928125", + "647238526691033": "17103187500", + "647028402460741": "18406312500", + "650150114947102": "30073981383", + "654554821960398": "2548987716", + "654977582470147": "2369890980", + "664868558503085": "115005092260", + "667337080209108": "100000000000", + "667437080209108": "84653359213" + }, + "0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB": { + "299318297064041": "56184744549" + }, + "0x930836bA4242071FEa039732ff8bf18B8401403E": { + "78615049172294": "2221663677", + "912080623426716": "22562763887", + "866979581798975": "5154270000", + "217475674512777": "11890755761", + "299133073539652": "93793524292" + }, + "0x9383E26556018f0E14D8255C5020d58b3f480Dac": { + "221721022666875": "88075053596" + }, + "0x93d4E7442F62028ca0a44df7712c2d202dc214B9": { + "153777795374191": "148859700937" + }, + "0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f": { + "118268129285100": "16859278098" + }, + "0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa": { + "38045439233929": "14316608969" + }, + "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5": { + "76194265704929": "3500000000", + "646841938136489": "152188010", + "646832204344041": "177292448" + }, + "0x9728444E6414E39d0F7F5389ca129B8abb4cB492": { + "480577854120899": "3324405000000", + "631799252766314": "1813500000", + "643804834253676": "6721835647" + }, + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb": { + "572451504525253": "253050000000", + "563752352802308": "102495000000", + "566326224363477": "253050000000", + "568613671950815": "253050000000", + "569509116433715": "253050000000", + "595080378032834": "10000000000", + "742864655113112": "272041210686", + "672201516338595": "49886373590", + "742850925745520": "13729367592" + }, + "0x97b60488997482C29748d6f4EdC8665AF4A131B5": { + "18053754491380": "122517511" + }, + "0x97E89f88407d375cCF90eC1B710B5A914eB784Af": { + "264821742218510": "14054479986", + "201768350656481": "1844339969", + "310876801024927": "8504661454", + "220224852015278": "6971402273" + }, + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A": { + "586115544020889": "50921590468", + "428374263505395": "9378468172", + "595214601590334": "15218730000" + }, + "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1": { + "668901559471943": "2552486513" + }, + "0x981793123af0E6126BEf8c8277Fdffec80eB13fd": { + "649027243062125": "483108332", + "649010129912775": "665549350", + "649287757760638": "69640042" + }, + "0x988fB2064B42a13eb556DF79077e23AA4924aF20": { + "217902719272293": "226251708976", + "96723333293899": "17313210068" + }, + "0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60": { + "318373329094766": "101752513973" + }, + "0x989c235D8302fe906A84D076C24e51c1A7D44E3C": { + "659821030952031": "142619335500", + "656118292039843": "2141035469" + }, + "0x992C5a47F13AB085de76BD598ED3842c995bDf1c": { + "770897210700702": "32781647269" + }, + "0x995D1e4e2807Ef2A8d7614B607A89be096313916": { + "157546915049126": "1894286900", + "201063937145997": "2857625611", + "860099248890927": "6689760000", + "141100334358920": "3759398496", + "167724340170029": "7142857142", + "217470159827742": "4221510559", + "262000538295619": "1941820772", + "430040931045763": "7468303231", + "429969815360084": "6469033333", + "634268733708050": "10587087636", + "634481097972888": "857142857", + "634485782133373": "1788298206", + "636910753572051": "20630903371", + "641737331477120": "4335852529", + "648129956489413": "12056682276", + "672730845984332": "4306282320", + "741257694168719": "95204051", + "679500053823281": "844417120", + "757912612741718": "38494858016", + "764083981653091": "62649720", + "763876080034612": "623293283", + "764093598842759": "6707198969", + "848140906334524": "96391325008", + "768095325828979": "19256876112", + "848062102251836": "58373882896" + }, + "0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b": { + "767310292972398": "1824412499" + }, + "0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221": { + "190844375756353": "112457271309" + }, + "0x99e8845841BDe89e148663A6420a98C47e15EbCe": { + "667899290416813": "2145758453" + }, + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f": { + "649543303268638": "47090058", + "28079737718067": "38853754100", + "28524969242262": "2368065675" + }, + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA": { + "31768149901004": "1262870028", + "31670582016164": "10000000000", + "28382015360976": "3696311380", + "27675714415954": "28428552478", + "32374040679120": "10949720000", + "32346871499710": "3745346177", + "32350616845887": "279480420", + "38771428831519": "765933376", + "38665412577552": "24234066624", + "38689646644176": "25000000000", + "38772194764895": "15534457850", + "41373045659339": "23121000000", + "41290690886174": "33333333333", + "41397566242672": "22053409145", + "60476772219089": "57688204600", + "60450977817664": "25794401425", + "70456530221510": "18433333333", + "72513985814422": "14491677571", + "76155330934072": "31663342271", + "78786823008925": "60000000000", + "76210249214022": "5833333333", + "86769330994210": "21622894540", + "88930464353484": "20159065566", + "107784495986778": "73418207324", + "167679367131210": "584126946", + "107758212738194": "26283248584", + "171855277435831": "38451787955", + "185657906453513": "65394189314", + "164387799728437": "209998797626", + "228435750352276": "5440000000", + "245016829121327": "43975873054", + "278810931077752": "61482926829", + "385029414062246": "85561000000", + "272983487213885": "24345144843", + "345065787237708": "11163284655", + "384698308395580": "109943584385", + "409893164256334": "1771119180000", + "470830034187107": "6357442000000", + "634257675267110": "11058440940", + "634663980396176": "51022870", + "701165945775675": "4725277211064", + "679984678617121": "582008800", + "686252659342435": "12828436637551", + "712925633754929": "7525989446089", + "742249808817806": "125000000", + "760295074894366": "58283867892", + "764182912505930": "110218533197", + "761862357338505": "193914722147", + "862566363552351": "3470058078836", + "873232203687519": "875826549", + "873233079514069": "8767124173450", + "873233079514068": "1" + }, + "0x9af623bE3d125536929F8978233622A7BFc3feF4": { + "188132972372439": "634988906630", + "79296814826113": "1185063194630" + }, + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F": { + "33300432361001": "5000000", + "28389711672356": "104406740", + "33289237004194": "1000000", + "33289034812134": "202192060", + "33300427361001": "5000000", + "33300437361001": "13656860", + "76147233501577": "6856167984", + "429960272856509": "9542503575", + "61044373437038": "25689347322", + "33300426361001": "1000000", + "561871994522568": "13450279740", + "646935480690670": "6157413604", + "647192437507145": "407318967", + "649248676270246": "9479483", + "643790816429569": "7279671848", + "650449504800190": "2539843750", + "653079279087019": "3142881940", + "651725675783863": "1673375675", + "668346065728228": "1702871488", + "676865712743974": "13348297600", + "700043849883120": "15882769", + "741274318742427": "170840041445", + "768308228493998": "500910625", + "741061075495092": "11965994685" + }, + "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb": { + "661999206613204": "25000000000" + }, + "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C": { + "647881759045440": "106457720", + "647898572853160": "795636" + }, + "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F": { + "561752833864373": "22055244259", + "561734572056961": "18261807412" + }, + "0x9c211891aFFB1ce6CF8A3e537efbF2f948162204": { + "577935041861106": "59036591791" + }, + "0x9c695f16975b57f730727F30f399d110cFc71f10": { + "633969304929591": "49424794604", + "632732083964954": "1303739940", + "461882379832": "763789095", + "501577877086": "8058429169", + "28378015360976": "474338291", + "634191999230784": "2612080692", + "699433001774655": "535830837294", + "740509548356246": "96735502348", + "721395262187317": "14658916075", + "826252078588592": "16970820644", + "885461415329976": "566999495822" + }, + "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753": { + "28868829340297": "1785516900", + "76029285005811": "2", + "28870614857197": "266145543" + }, + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698": { + "531849151603571": "116351049553", + "533550128922703": "19753556385", + "544213439498555": "93587607857" + }, + "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196": { + "187576828165577": "27608467355", + "145457231580719": "24029099031" + }, + "0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56": { + "682506977792619": "12652582923" + }, + "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E": { + "408418430300088": "1389648589", + "634458769639996": "2997137850", + "236911541186226": "1352237819" + }, + "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE": { + "429116006573679": "11930700081", + "142090287304002": "17901404645" + }, + "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c": { + "76154089669561": "1241264511" + }, + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282": { + "229489538650748": "32886283743", + "609312164824779": "1735981704349", + "401152958523891": "60000000000", + "96740646503967": "17128687218", + "88808287575483": "30000000000" + }, + "0xa03E8d9688844146867dEcb457A7308853699016": { + "637610190521989": "210060204" + }, + "0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc": { + "632158717283728": "132492430252" + }, + "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e": { + "808559640519864": "3390839496" + }, + "0xA0df63b73f3B8D4a8cE353833848D672e65Ad818": { + "202835949108939": "22" + }, + "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE": { + "395376016689151": "26717740160", + "282604279025472": "19163060173" + }, + "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf": { + "531536857228833": "206618185436", + "588236306066494": "136890000000", + "523468438510750": "57354074175", + "530603875619848": "61988431714", + "525245705716340": "196968848290", + "588540125816494": "136890000000", + "586955456756494": "136890000000", + "635251139802881": "10413750000", + "587932486316494": "136890000000", + "634979077385365": "10413750000" + }, + "0xA256Aa181aF9046995aF92506498E31E620C747a": { + "211328028616940": "48907133253", + "250772216022849": "50223451852" + }, + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655": { + "96710970854679": "12362439220", + "106834324920574": "4912604718", + "85026199936365": "3000000000", + "88852883837163": "4811715614", + "643886475933352": "3765334850" + }, + "0xa31CFf6aA0af969b6d9137690CF1557908df861B": { + "676729211151593": "22234228333", + "682011116351038": "122067507", + "686184845909654": "67813432781", + "682012314843498": "508189060" + }, + "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6": { + "635189799238365": "55984064516", + "635432840138881": "96417000000" + }, + "0xA46322948459845Bb5d895ED9C1fdd798692a1dA": { + "157856472537094": "4473579144", + "220203807336965": "10453702941" + }, + "0xa4f79238d3c5b146054C8221A85DC442Ad87b45D": { + "650651495333882": "24618132" + }, + "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e": { + "146717193948896": "349624513178", + "147733502440483": "358107845085", + "145584038361780": "447994980945", + "73062201497306": "639498343615", + "12998236449826": "426119290214", + "161945743337837": "789016308613", + "192336527239129": "209422598089", + "187637878190147": "382459205759", + "204912402135128": "844577500760", + "220380031906084": "231048083326", + "262067749659804": "640903306175", + "644357568047841": "2333969425", + "306964647833074": "338382661514", + "523998966576689": "403876115080", + "760721375485603": "44211467824", + "768308729410302": "399538786", + "774509663364768": "69954674028", + "860392158116449": "34095737422", + "861654004231708": "3679385472" + }, + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15": { + "180491055783453": "8737686936", + "180058848381814": "1317740918" + }, + "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99": { + "177603077453261": "22497716826" + }, + "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191": { + "78581810315624": "1000000000" + }, + "0xa73329C4be0B6aD3b3640753c459526880E6C4a7": { + "342007094123381": "5537799063" + }, + "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2": { + "240936644343173": "172400000000", + "227302500823517": "91254470715" + }, + "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E": { + "87378493677209": "18540386828", + "157789513042632": "46130596396" + }, + "0xA92b09947ab93529687d937eDf92A2B44D2fD204": { + "217090244886952": "100017300000", + "174457557935439": "2252016869" + }, + "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34": { + "342102180028527": "9515722669" + }, + "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22": { + "647552789487981": "25673034" + }, + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7": { + "652198660709813": "2233193957", + "189133019330752": "32609949600", + "650798610280868": "2704447617", + "237255472873302": "41700155407", + "661861990183905": "96716493785" + }, + "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c": { + "32088312349710": "74875500000", + "569017476488315": "21876172500", + "31816265099710": "59900000000", + "564422820917708": "21876172500", + "31935590099710": "74875500000", + "569762166433715": "21876172500", + "563579921802308": "21876000000", + "566153593653477": "21876172500", + "572429628352753": "21876172500" + }, + "0xa9b13316697dEb755cd86585dE872ea09894EF0f": { + "140155656908183": "4149923574", + "241399390159934": "842071924045", + "211708788713612": "10681995985", + "198971377368461": "18087016900", + "384563894405801": "115228517177", + "563854847802308": "18284000000", + "569490831818315": "18284615400", + "564151486302308": "18284615400", + "572704554525253": "18284615400", + "566633249231746": "18284615400", + "595117800435834": "12085354500", + "640930157267749": "65849399034" + }, + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73": { + "28870881002740": "7927293103", + "67071383981721": "4370751822", + "33175764242262": "2879757656", + "76001219652173": "2000000", + "33287034809521": "2000002613", + "224377827434669": "8843521858", + "390714321832800": "15011668209", + "346980492268033": "299504678878", + "390489917323118": "30009118039", + "227266143617682": "36357205835", + "496313316602869": "14480945853", + "581926056394610": "57230000000", + "582414831630740": "58387156830", + "574176328586258": "11373869605", + "496327797548722": "17563125222", + "648099627744347": "7145929778", + "646758540482222": "200935620", + "799970499717615": "199999867679", + "768350264491863": "97750210", + "859839460259246": "49999681340", + "861579337591263": "20955496102", + "866501316671921": "3915489816", + "867998656653702": "3760487192", + "868717458995563": "137089560126", + "868004210064042": "11148893919", + "882380209424876": "25123931061" + }, + "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15": { + "790723454198851": "1404119830", + "767312117384897": "5239569017" + }, + "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C": { + "805283832227311": "122955165365", + "31662554742782": "21750", + "790724858318681": "201654015884" + }, + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732": { + "87849021681484": "3600000000", + "87852621681484": "800000000", + "78583733231186": "1178558112", + "87051010845698": "12909150685" + }, + "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc": { + "86212387135166": "9412000000" + }, + "0xABC508DdA7517F195e416d77C822A4861961947a": { + "859912145350487": "61408881869", + "611565632974532": "108706000000", + "611465268974532": "5766000000" + }, + "0xaBe78350f850924bAfF4B7139c17932d4c0560C5": { + "170355877646894": "103277281284", + "186591806305035": "119796085879" + }, + "0xAbe1ee131c420b5687893518043C5df21E7Da28f": { + "219174134154064": "257767294743" + }, + "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B": { + "167664059643126": "10271881722", + "174153752764497": "51388130513", + "173335964650235": "50944632063", + "340816250327274": "13849594030" + }, + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6": { + "150202730332467": "98095645584", + "496833602545561": "787707309561" + }, + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758": { + "657182189000929": "25000000000", + "667312080209108": "25000000000", + "658066484502639": "2015000000", + "657229852916854": "2979694125", + "664619505628982": "15403726711", + "670173265504450": "40000000000", + "672719969501772": "10876482560" + }, + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821": { + "204414095372189": "466944255800", + "918515480200659": "103418450000", + "191825120066350": "32755674081", + "70537827998930": "394859823062", + "181019314406176": "26533824991" + }, + "0xafaAa25675447563a093BFae2d3Db5662ADf9593": { + "637115742967476": "637343258" + }, + "0xb13c60ee3eCEC5f689469260322093870aA1e842": { + "264925932058496": "11752493257" + }, + "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0": { + "547738448758023": "2624259160", + "396280573607632": "1310000000" + }, + "0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106": { + "648783973598407": "20878800" + }, + "0xb338092f7eE37A5267642BaE60Ff514EB7088593": { + "168326342418592": "142183392268", + "152657826400366": "185210230255", + "667711173568321": "2323048492", + "152402596679147": "93039721219", + "167944467831210": "364035918660", + "779534812787850": "16116959741", + "859649522699248": "12551804265" + }, + "0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F": { + "130196078661356": "508123258818" + }, + "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277": { + "729014568575071": "291619601680", + "217894094937121": "8624335172" + }, + "0xB345720Ab089A6748CCec3b59caF642583e308Bf": { + "634804642825524": "15032871752", + "634746131014038": "2338659386", + "634496771451551": "2768287495", + "648328801845272": "12731370312", + "648353111527661": "10493080827", + "649195623906283": "18389039062", + "649167541060009": "16767945280", + "654388497261298": "43461762466", + "660370495857615": "14114087310", + "656871705959559": "9313705270", + "671696472763514": "231205357536", + "672398260373775": "214433251957", + "654358595160398": "29902100900", + "671927678121050": "252155202330", + "672830275797486": "210961749202", + "673487031411173": "273039002863", + "673246558641787": "240472769386", + "675240588703017": "31281369769", + "673760070414036": "172558844132", + "673041237546688": "205321095099" + }, + "0xb53031b8E67293dC17659338220599F4b1F15738": { + "219666700443377": "55265901", + "224654035643462": "40771987379" + }, + "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88": { + "164600428750782": "35727783275" + }, + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A": { + "398321865655642": "2054144320000", + "83737011617598": "306070239187" + }, + "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393": { + "631569644291966": "139558094702", + "632291209713980": "81489498170", + "631462636069759": "104395512250" + }, + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0": { + "4955860418772": "7048876233", + "655811760146606": "1801805718" + }, + "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B": { + "191771322130870": "4" + }, + "0xb63050875231622e99cd8eF32360f9c7084e50a7": { + "146717188782725": "5166171", + "155767639963423": "99245868053", + "150300825978051": "18112431039", + "150200863181163": "1867151304" + }, + "0xB65a725e921f3feB83230Bd409683ff601881f68": { + "250639941891472": "3441975352", + "250643383866824": "29574505735" + }, + "0xb66924A7A23e22A87ac555c950019385A3438951": { + "174205140895010": "132445933047", + "202924952054531": "35561818090", + "155374769963423": "392870000000", + "160285058311354": "100671341995", + "154652447640805": "347100000000" + }, + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6": { + "679485017868431": "3915612129", + "685025137352998": "25233193029", + "680114838606701": "27308328915", + "841664773576665": "44866112401", + "153735131926682": "3710134756" + }, + "0xB73a795F4b55dC779658E11037e373d66b3094c7": { + "390558902441157": "134653071054", + "655972005039843": "146287000000", + "401267047948074": "134236764892", + "363939335244215": "341688796" + }, + "0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B": { + "321732175378043": "214690052512" + }, + "0xb78003FCB54444E289969154A27Ca3106B3f41f6": { + "562459032802308": "121464000000", + "191781471592467": "43648473883", + "385711073784542": "2538113894", + "395411549090894": "13353165233", + "164189472951092": "11278479258", + "564975430810977": "121464000000", + "568419948467146": "121464000000", + "566651533847146": "121464000000", + "571791133289484": "121464000000", + "570301073669484": "121464000000" + }, + "0xB81D739df194fA589e244C7FF5a15E5C04978D0D": { + "764122302458414": "389659428" + }, + "0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D": { + "648110341883007": "332151166" + }, + "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202": { + "186580654253728": "2582826931", + "61252565809868": "616986784925", + "193229271440090": "76640448070" + }, + "0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711": { + "184684061457860": "10000000", + "184218638484144": "465422973716", + "144769294835640": "687936745079" + }, + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1": { + "655638701856093": "1192390513", + "656272714775312": "881640483", + "760703583068610": "17792416993", + "712920144208889": "5489546040", + "650399357993384": "146806806", + "744734189369609": "28037331000" + }, + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6": { + "140329444835781": "217646800712", + "239319159337177": "47624260933", + "220611079989410": "79386856736", + "234100743945240": "142725497767" + }, + "0xbC3A1D31eb698Cd3c568f88C13b87081462054A8": { + "646966739449551": "173482798" + }, + "0xbd0D7F2115C73576464689883Ce7257A3b4D8eC4": { + "267191382854147": "12940102264", + "361789996206099": "73184769082" + }, + "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB": { + "767981360744986": "1294270000", + "779648863431627": "3082627625", + "767979798694986": "1562050000" + }, + "0xBd03118971755fC60e769C05067061ebf97064ba": { + "659549843067823": "31263554400" + }, + "0xbD50a98a99438325067302D987ccebA3C7a8a296": { + "651105837771781": "278940323", + "649600348053567": "637955898", + "651489331586310": "1403355509", + "75771294316489": "12993316305", + "648200429809434": "6123877877", + "680322705135552": "78825736666", + "652311233903770": "2989879792", + "652884742374501": "1819712518", + "685503409417573": "232657030717", + "744807936462920": "11382290617" + }, + "0xBD874A4e472AEc2777a137788A0c7cC1e043E8D7": { + "593972961118073": "18482957844" + }, + "0xBe289902A13Ae7bA22524cb366B3C3666c10F38F": { + "919027393391017": "127964411211" + }, + "0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A": { + "212146554943366": "60397999132" + }, + "0xBe41D609ad449e5F270863bBdCFcE2c55D80d039": { + "259037301726920": "13822416435" + }, + "0xbf8A064c575093bf91674C5045E144A347EEe02E": { + "218797758396004": "17931477721" + }, + "0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e": { + "509636306256": "10000000000", + "278903608413821": "14808722031" + }, + "0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb": { + "52239273818772": "1176175320733" + }, + "0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD": { + "595080244075917": "133956917", + "581907951378672": "2658482" + }, + "0xc06320d9028F851c6cE46e43F04aFF0A426F446c": { + "530665864051562": "397510122725" + }, + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04": { + "644376974079339": "5902625669", + "643961909441547": "4034021934" + }, + "0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B": { + "109547000981861": "1568445146", + "644582850779283": "752753038", + "644209271045580": "212488219" + }, + "0xc0985b8b744C63e23e4923264eFfaC7535E44f21": { + "663679779993400": "42703247654", + "201145469378651": "8448778010" + }, + "0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57": { + "867588238130283": "7781921622", + "792845618564268": "7027118670", + "28119702904292": "243876574072", + "40919635765924": "221193780622", + "662650464692800": "3046740000" + }, + "0xc18BAB9f644187505F391E394768949793e9894f": { + "403310754822758": "13387683058", + "254574488795587": "24750487353", + "242241462083979": "89817845930", + "186724418508416": "170528981764" + }, + "0xc1F80163cC753f460A190643d8FCbb7755a48409": { + "579740120264228": "292734203894" + }, + "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d": { + "912065840201601": "14772870000", + "870550439123708": "7619023341", + "768634478089995": "2965710000", + "767626793233025": "15527700000" + }, + "0xc22846cf4ACc22f38746792f59F319b216E3F338": { + "278184754900258": "197210596655", + "45130309743373": "306042654222", + "41609890277915": "6914243179" + }, + "0xc240D9f8d38F2bE93900C5e5D1Acc10D2CC7AbAc": { + "646437514474546": "44836092000", + "587324086316494": "608400000000" + }, + "0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5": { + "601540307419924": "181407469174" + }, + "0xC4B07F805707e19d482056261F3502Ce08343648": { + "221679537784459": "15486010094" + }, + "0xc493AA1EA56dfe12E3DC665c46E1425BC3ee426F": { + "873220693153904": "11510533615", + "873145601423383": "75091730521" + }, + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732": { + "52078858686586": "10000133467", + "73915886636467": "10000746824", + "86829530881135": "10000266356", + "143416238401150": "15000651136", + "61012668047202": "10005184031", + "315638804830547": "23441160473", + "256988067171679": "14279057316", + "294866313282644": "18717725462", + "355375649674604": "14634827400", + "361216466107756": "13000510719", + "353424521528037": "15315000000", + "378142639509510": "16170000000", + "385183870200822": "16180000000", + "347420922294471": "15015000000", + "385611716930516": "16993320000", + "390754941202303": "16275000000", + "385241605041705": "16195000000", + "396281883607632": "16402456400", + "403303754118846": "7000703912", + "393693748424825": "16290000000", + "403472243176827": "2000375209", + "404827515052348": "3334000000", + "441054504321225": "12000847530", + "408135566797252": "2955630274", + "465267110288653": "12150844062", + "523567886445076": "25001126129", + "465265259569063": "1850719590", + "547234764146487": "5000016150", + "547229764110060": "5000036427", + "547239764162637": "3000733574", + "559869548958187": "40000139883", + "560501448020094": "25000547514", + "563873131802308": "139177000000", + "566772997847146": "139177500000", + "564012308802308": "139177500000", + "569351654318315": "139177500000", + "568280770967146": "139177500000", + "572722839140653": "139177500000", + "574735201918464": "58995201524", + "573628809936476": "21288581043", + "582473218787570": "35000228661", + "573603809514965": "25000421511", + "582097866394610": "35000191134", + "576878169376187": "63000942831", + "591745844920907": "36540941845", + "595142081087834": "12305240500", + "624564558552880": "40000713511", + "634940008999133": "3208487543", + "634758814489885": "5734247168", + "634943217486676": "3746989188", + "634935282613887": "89307112", + "634782406037562": "6133038908", + "635880056473793": "7513550787", + "635844374818344": "6680448394", + "635996961468342": "10754911306", + "636059742984375": "6314074947", + "636782921456576": "8864634973", + "636794780671552": "2241458357", + "636328817004645": "4277285793", + "636066057059322": "1975350168", + "636799725978514": "4055303570", + "636317287032217": "11529972428", + "636779846806062": "3074650514", + "637154077816932": "1080208844", + "637146516563304": "2365512357", + "636806175149520": "4328601383", + "638212487359399": "2537549313", + "637168549711874": "931625563", + "638296407080512": "4262791526", + "636810503750903": "5738976938", + "637164976697003": "3573014871", + "638215339383220": "52536733222", + "639084834020116": "90773857834", + "638215024908712": "314474508", + "638267876116442": "1779105771", + "639071073087278": "703007479", + "639081512835493": "3321184623", + "641499390478202": "7345549819", + "638947345353055": "2066543146", + "638514989911640": "2757699459", + "644141281804499": "2606155169", + "644104474527632": "7694578743", + "644150474351536": "1217682417", + "644194221028449": "4614678824", + "644437840144432": "2236741375", + "644189039874882": "5181153567", + "646750485309749": "1383172473", + "644746665525630": "1286803916", + "644747952329546": "675932780000", + "646630391438461": "5095772443", + "644151692033953": "4729098391", + "646789090376992": "1741026097", + "647135423616991": "15793160717", + "647377878633533": "4583685945", + "647965531551355": "5174884798", + "647920961563494": "2654030705", + "648060727152204": "3914086081", + "647898573648796": "9631809130", + "648081739559571": "6263894867", + "648612566573076": "3512346216", + "650884515228485": "2979058737", + "648294896291036": "4250838692", + "648603358979952": "2709517491", + "652682021863768": "3788010733", + "654027706763940": "2048540364", + "741718764888864": "654689120", + "681986525690132": "5275645779", + "767124746854721": "730902154", + "767812853181234": "11567074759", + "792804939000794": "40679563474", + "845169966446783": "16180260000", + "801474386181347": "100095973919", + "860185288240463": "50134195376", + "872744803481867": "16684472211", + "886591149800446": "17207595616", + "887927593081973": "96787778278", + "911931029269153": "28719576579", + "915411171677251": "7131234758", + "915906356081116": "9658190454", + "912324173505063": "15781954650" + }, + "0xC4FF293174198e9AeB8f655673100EeEDcbBFb1a": { + "232482131595269": "42621249012", + "229522424934491": "4", + "232624752542941": "301340", + "232399122241221": "75630603060" + }, + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F": { + "650020393573072": "1098667202" + }, + "0xC52A0B002ac4E62bE0d269A948e55D126a48C767": { + "385684782627325": "1926157217", + "385596012775011": "14044540659", + "384679122922978": "19185472602", + "385574378055863": "21634719148", + "385630405651189": "10274242898", + "385667188907930": "1284050989", + "385670655789411": "11558542555", + "390479730516473": "10186806645", + "385648706693660": "2247214270", + "385642606733772": "3852670584", + "385682214331966": "2568295359", + "385668472958919": "2182830492", + "385646459404356": "2247289304", + "395363982712386": "12033976765", + "395402734429311": "8814661583", + "403291710896747": "12043222099", + "452095029427929": "27432801793", + "408327816742815": "7051865770", + "533213585977358": "15800019853", + "592632723704366": "24571328348" + }, + "0xC5581F1aE61E34391824779D505Ca127a4566737": { + "91135409634065": "419873133", + "326295563529391": "17549000000", + "86977991831461": "466666666", + "86908142707963": "24835166666", + "86932977874629": "16666637666", + "507461375533182": "166129892955", + "507206932254232": "254443278950", + "767958704682708": "1693399184", + "783427750017442": "699592000000", + "767960398081892": "12401663706", + "792852645682938": "839680000000", + "917093992735792": "11020518971", + "919405223842699": "180173103" + }, + "0xc6302894cd030601D5E1F65c8F504C83D5361279": { + "41396166659339": "1399583333", + "680091570133520": "4151396937" + }, + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F": { + "679722284822881": "25988043120", + "664638383045654": "16729932626", + "721138947226339": "29182743714", + "664634909355693": "3473689961", + "672747152266652": "24486717680", + "741226712865219": "30981303500", + "741949862105425": "92480062924", + "741904063740452": "37545775027", + "744917643589917": "98029361717", + "842630543715852": "2390187809846" + }, + "0xC555347d2b369B074be94fE6F7Ae9Ab43966B884": { + "643646447594761": "3307608864" + }, + "0xC37e2C0D1d60512cFcBe657B0B050f0c82060d1b": { + "542311501660942": "73324222276" + }, + "0xC65F06b01E114414Aac120d54a2E56d2B75b1F85": { + "235640709992714": "28239348266", + "189471898268050": "197207803637", + "160236114417307": "48943894047", + "216121430155375": "24695452876", + "167731483027171": "27884104039", + "323262936405644": "15025896", + "559919065098070": "15686547585", + "531063374174287": "52835637822", + "251024499404302": "864512459822", + "429832762991709": "127509864800", + "630525153681677": "7406808617", + "630333450188747": "185598910890", + "629443959467714": "889490721033", + "575750861941776": "455386821670", + "632372699212150": "32787945873", + "643334646487850": "94264084571", + "633371740738798": "74135096485", + "643428910572421": "117747552306" + }, + "0xC6e76A8CA58b58A72116d73256990F6B54EDC096": { + "579107388902388": "3786643566", + "465279261132715": "6848535197" + }, + "0xC3853C3A8fC9c454f59c9aeD2Fc6cfa1a41eB20E": { + "751231181338596": "6681431403122", + "551497347791010": "4511000000", + "551488325791010": "4511000000", + "498673499383895": "7492000000000", + "551492836791010": "4511000000", + "767852922323642": "10369061723", + "767852901610189": "20713453", + "767863326337356": "18023755", + "767863344361111": "18367466", + "767865859055467": "18061693", + "767865829660719": "29394748", + "767863585021938": "2244638781", + "767865877117160": "19853920", + "767865896971080": "48125059", + "767865981533913": "18584847", + "767866000118760": "18610176", + "767865963072322": "18461591", + "767866018728936": "28388840", + "767866047117776": "19357314", + "767866066475090": "20621441", + "767866122816513": "45837601", + "767876944657034": "28464052", + "767866104834015": "17980482", + "767876973121086": "26863230", + "767876999984316": "26895192", + "767877026879775": "27548018", + "767877054427793": "28216998", + "767877091634405": "29350169", + "767877150981417": "30037240", + "767877120984574": "29996843", + "767877206868795": "27937525", + "767877181018657": "25845193", + "767877262769984": "27965868", + "767877234806320": "27963664", + "767880986878749": "3696127187", + "767884683005981": "51981307", + "767884734987288": "53538922", + "767884788526210": "53595366", + "767884842121576": "53648094", + "767884949455462": "53756201", + "767885003211663": "53757357", + "767884895769670": "53685792", + "767885059314528": "46000793", + "767885168852528": "29428981", + "767958380913772": "24247755", + "767885105315321": "54674835", + "767958331741096": "49172676", + "767958405161527": "54301984", + "767958459463511": "55671278", + "767958611299733": "46290910", + "767958565067704": "46232029", + "767958515134789": "49932915", + "767958657590643": "47092065", + "767977244065733": "51746997", + "767977295812730": "51864871", + "767977451486983": "52000205", + "767977347677601": "51885952", + "767977399563553": "51923430", + "767977503487188": "52098447", + "767977555585635": "41588546", + "767977597174181": "326819929", + "767977923994110": "100315681", + "767978071431668": "115002884", + "767978025140033": "46291635", + "767982655015431": "53585186", + "767982708600661": "57387245", + "767982818050120": "52154474", + "767982870204594": "52174026", + "767982765987906": "52062214", + "767982922378620": "52223998", + "767982974602618": "52342953", + "767983026945571": "52376533", + "767983079322104": "52624240", + "767983131946344": "52723335", + "768005575978063": "88959924", + "768005664937987": "88965369", + "768005753903356": "88987154", + "768005842890510": "89226963", + "768006020082116": "88019206", + "768005932117473": "87964643", + "768057032449331": "128476264", + "768057834376360": "176422081", + "768058190560008": "177208771", + "768058010798441": "179761567", + "768060350816150": "130809579", + "768060220637757": "130178393", + "768058367768779": "157116092", + "768060481625729": "130344936", + "768060611970665": "171857267", + "768060783827932": "177656305", + "768060961484237": "180167935", + "768061316854814": "178657631", + "768061495512445": "176802174", + "768061853028284": "195470410", + "768061672314619": "180713665", + "768061141652172": "175202642", + "768062048498694": "243565730", + "768062629942159": "174434688", + "768062456713065": "173229094", + "768062292064424": "164648641", + "768062804376847": "150727580", + "768062955104427": "173242647", + "768063128347074": "169767136", + "768063298114210": "170603520", + "768063468717730": "171422086", + "768063640139816": "208948785", + "768063849088601": "254287053", + "768064103375654": "250834890", + "768064354210544": "251075847", + "768065110039722": "250015653", + "768065360055375": "256254623", + "768064857769793": "252269929", + "768064605286391": "252483402", + "768065616309998": "253754318", + "768066122509478": "258057037", + "768065870064316": "252445162", + "768066855366240": "257803262", + "768066614986440": "240379800", + "768066380566515": "234419925", + "768067113169502": "257854008", + "768067371023510": "257987098", + "768067643435479": "121707880", + "768067765143359": "260664711", + "768068025808070": "261197174", + "768068287005244": "247564493", + "768068794632458": "269355157", + "768068534569737": "260062721", + "768069063987615": "277302750", + "768069341290365": "99855222", + "768069444592669": "175549097", + "768069620141766": "262030088", + "768069882171854": "262436001", + "768070144607855": "262442517", + "768070658879655": "251357371", + "768070407050372": "251829283", + "768070910237026": "251389288", + "768071161626314": "251914401", + "768071413540715": "252068631", + "768071665609346": "256062949", + "768074699723208": "239938588", + "768071921672295": "258374985", + "768074939661796": "258668967", + "768075198330763": "258703377", + "768075761092551": "329630473", + "768075457034140": "304058411", + "768081035628903": "339515551", + "768080696127837": "339501066", + "768081714683821": "339088407", + "768082053772228": "342101711", + "768081375144454": "339539367", + "768082395873939": "343334644", + "768082739208583": "336567035", + "768083075775618": "336568008", + "768083412343626": "336577785", + "768083748921411": "336600038", + "768084085521449": "336639350", + "768084630119770": "143949165", + "768084422160799": "207344990", + "768084774068935": "25157036", + "768084799225971": "242334532", + "768085041560503": "338920919", + "768085380481422": "333373694", + "768086053562957": "338272825", + "768085713855116": "339707841", + "768086722528344": "312499645", + "768086391835782": "330692562", + "768087035027989": "319478781", + "768087354506770": "320245877", + "768088007251846": "342009060", + "768087674752647": "332498329", + "768089018152299": "345828360", + "768088679799508": "338352791", + "768089363980907": "342748182", + "768089706729089": "342802390", + "768090049531520": "341533463", + "768090391065024": "167916547", + "768092557186486": "370210732", + "768092267714905": "289471581", + "768092927397218": "374774809", + "768093302172151": "20738554", + "768093322910705": "343658176", + "768093666568922": "181686465", + "768094012840958": "170338449", + "768093848255635": "164585323", + "768094183179407": "168169530", + "768094351348937": "167640491", + "768094518989428": "172803705", + "768094691793133": "168088032", + "768094859881165": "229976032", + "768095089857197": "172368151", + "768095262225348": "63603508", + "768115561779729": "208540385", + "768115770320114": "208569583", + "768116869057890": "297887432", + "768117900433916": "270126585", + "768118427203029": "294377826", + "768117166945322": "298020741", + "768118721580855": "293130334", + "768119323211374": "308536751", + "768120214927984": "278503557", + "768119014711189": "308500185", + "768120493431541": "278529398", + "768121051655832": "275720986", + "768121327376818": "275619136", + "768121879763255": "285761256", + "768122165524511": "296334678", + "768123055095099": "293886727", + "768122758459889": "296635210", + "768123651351716": "296185977", + "768124243880643": "296437776", + "768124540318419": "296251326", + "768125418288242": "85645987252", + "768297222053217": "325606305", + "768296683049666": "266080393", + "768296949130179": "272923038", + "768297547659522": "325614427", + "768297873273949": "325619965", + "768299842443847": "331360723", + "768300173804570": "331365399", + "768300826352173": "303582913", + "768302035887932": "307143810", + "768301731050604": "304837328", + "768302343031742": "307145416", + "768303272713376": "301281919", + "768303573995295": "274324618", + "768304587061209": "19591107", + "768304344613338": "242447871", + "768302958708212": "314005164", + "768311325335640": "110117398", + "768311010497668": "314837972", + "768309880391625": "379823962", + "768311435454121": "364214026", + "768311799668147": "26499554", + "768312135064168": "488284987", + "768313333788036": "140338927", + "768311826168280": "111824210", + "768313474158979": "485518686", + "768313959677665": "396049165", + "768314444636292": "268156877", + "768315179357553": "384235614", + "768314712793169": "466564384", + "768315563593167": "337764089", + "768317029199617": "453591169", + "768318040625509": "449420296", + "768318490045805": "458938429", + "768316577584363": "451615254", + "768318948984234": "459206981", + "768319408191215": "476640464", + "768320383273651": "453333258", + "768319884831679": "498441933", + "768320836606909": "453568001", + "768321774138791": "468654147", + "768322242792938": "467371262", + "768322710164200": "467545999", + "768321290174910": "483963881", + "768323177710199": "476772245", + "768323654482444": "478125750", + "768324611399867": "479723584", + "768324132608194": "478791673", + "768325091123451": "479787381", + "768326028245537": "442671002", + "768326470916539": "451362163", + "768325570910832": "457334705", + "768598487779655": "57435154", + "768634412841894": "65176513", + "768637443814205": "58118884", + "768649709031418": "31398801", + "768649771035630": "31946947", + "768785331126926": "19331971", + "768788432042417": "18112256", + "768788392446000": "37728236", + "769134604286202": "18283146", + "769136088339400": "18160671", + "769309768983180": "18299969", + "769134774536000": "17988711", + "769309830279910": "18550040", + "769309787283149": "41304402", + "769310402660436": "18466754", + "769310421127190": "39095349", + "770975390546709": "21971527", + "770964504749861": "19458575", + "770975412524668": "19519600", + "770975432104400": "19582622", + "770975451953501": "19683846", + "770983568070212": "19824397", + "770983607950035": "44799678", + "770983652749713": "66674317", + "770983588083980": "19866055", + "770983722368523": "20254383", + "770983743394121": "22884801", + "770983768718817": "20670201", + "770983795023189": "20575434", + "774509621828858": "20760015", + "770983835515640": "19962592", + "770983815599263": "19901370", + "774509642589393": "20774408", + "779084609915554": "20913206", + "779534770843903": "20956311", + "779084589001278": "20868526", + "779534791801791": "20970709", + "779550929749700": "21023556", + "779831365982894": "21112628", + "781813659102201": "21239601", + "781813680485111": "21279230", + "781843281538672": "21450435", + "783355908909438": "22099613", + "782695710282503": "21873820", + "783348079936350": "21953687", + "783355932373013": "22297290", + "783355977747171": "22427935", + "783355954798998": "22333492", + "783356000357922": "22474682", + "783356023247240": "22549203", + "783356045796443": "62743349", + "783356209825483": "22277346", + "783356187591801": "22218767", + "783356109046442": "22662121", + "783356161262077": "23430658", + "783356136833049": "23243873", + "783356232106503": "22292252", + "783356254506608": "22386707", + "783356277016375": "22436891", + "783376569600414": "24177831", + "783376593779948": "22660273", + "783376616446478": "22689467", + "783376639159230": "22734650", + "783376661900238": "22749660", + "783426956576683": "26606595", + "783427008588195": "24098549", + "783426984260087": "24043904", + "783427032954069": "24150097", + "783427060310303": "24310668", + "783427084917361": "24645082", + "783427114815746": "25240549", + "783427170132934": "24138082", + "783427194314786": "24257216", + "783427145183759": "24947967", + "783427243272869": "27476901", + "783427218708084": "24331234", + "783427271155673": "24495799", + "783427297019092": "24693844", + "783427322428404": "24491410", + "783427347470581": "24893768", + "783427399910179": "81883443", + "783427483389260": "25432202", + "783427509295875": "25535625", + "783427374727407": "25182772", + "783427534831500": "53493357", + "783427675951853": "24620709", + "783427588324857": "81204589", + "783427700580950": "24658826", + "786465453353622": "25361552", + "783427725275173": "24713820", + "786465478715174": "57296603", + "786465536027494": "25380057", + "786465615870466": "25461278", + "786465561793428": "54072936", + "786826817838880": "25508010", + "786871384368275": "25938160", + "786826843354023": "25526212", + "786871410306435": "54792325", + "790320387380764": "27705719", + "786871465338634": "26000635", + "790320442861684": "27783916", + "790320415095427": "27741179", + "790723085363176": "27884487", + "790723200368438": "27942864", + "790723113325523": "27919207", + "790723228331514": "167772991", + "790723141244730": "59088200", + "790723396104505": "57830974", + "795314256414329": "30164787", + "795314162443349": "30147186", + "795314192590535": "63821308", + "795314286589825": "30191299", + "795314316945916": "30294630", + "795314348089440": "30485760", + "795314378575200": "64475302", + "795314444981299": "30755106", + "796038650383298": "31284664", + "796038616003582": "30872534", + "798286779456827": "30605469", + "798286810065368": "30617396", + "798286926647906": "34539105", + "798286840682764": "85933738", + "798519957859575": "36651495", + "798520071341402": "40845425", + "798519994511070": "76830332", + "798520112186827": "92100113", + "798520206441145": "31445440", + "798520405976995": "217361165", + "798520623354021": "31627917", + "798520237886923": "168090072", + "798520654981938": "57663021", + "798520712644959": "102511476", + "798520815203900": "31783791", + "859889515253870": "27921761", + "859889543175631": "28959532", + "859889572135163": "29045717", + "859889630269549": "29147719", + "859889659417268": "29783752", + "859889601180880": "29088669", + "859889689201020": "26018455", + "859889715219475": "27056055", + "859889742275530": "27313833", + "859889769589363": "27399071", + "859889796988434": "27431474", + "859889852109906": "27991712", + "859889880101618": "28049401", + "859889824419908": "27689998", + "859890013008165": "20470831", + "859889993410894": "19597271", + "859890033478996": "20481318", + "859890053960314": "20503693", + "859901701716720": "466655540", + "859890095817940": "21803489", + "859890074464007": "21353933", + "859902168372260": "1000126500", + "859904193854654": "626706986", + "859904820561640": "59171176", + "859904879732816": "18369973", + "859904898102789": "18737807", + "859904916840596": "18742785", + "859904961684747": "42841684", + "859909143350878": "827564741", + "859904935583381": "18813885", + "859909970915619": "533089640", + "859910504005259": "22923642", + "859910855199567": "544727606", + "859910586808968": "268390599", + "859910526928901": "27809951", + "859911399927173": "60755363", + "859911460682536": "61427004", + "859911522109540": "59279402", + "859911581388942": "59428509", + "859911640817451": "59719927", + "859911760263920": "47784863", + "859911810477761": "296389404", + "859911700537378": "59726542", + "859912106867165": "38483322" + }, + "0xc6Ee516b0426c7fCa0399EaA73438e087B967d57": { + "44996707312088": "133602431285", + "139956564183039": "183863683304" + }, + "0xC7B42F99c63126B22858f4eEd636f805CFe82c91": { + "649797992867336": "34690939834", + "649465543822242": "447537440", + "649797987791548": "5075788", + "649505490415282": "1422013513" + }, + "0xC76d7eb6B13a8aDC5E93da2bD1ae4309806757c6": { + "343672219425554": "6518016107", + "109580416560764": "4296524923", + "390823692929308": "8473153625", + "237249631028709": "5841844593", + "76186994276343": "3938428586", + "668347768599716": "13343392977", + "672695846330052": "24123171720", + "672679569876372": "7120385640", + "602152092219919": "71703585901" + }, + "0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9": { + "643979298431878": "6108413155" + }, + "0xC7ED443D168A21f85e0336aa1334208e8Ee55C68": { + "586166465611357": "162196409199" + }, + "0xC7c5a25141dfBB4eb586c58fE0f12efd5f999A2B": { + "266655090563287": "96246009371" + }, + "0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1": { + "541076158981807": "154721753900", + "309602900799478": "172624697925", + "299374481808590": "27939181534", + "634487570431579": "7640019972", + "639071776094757": "9736740736", + "643872751562489": "10154937500", + "641467701318147": "19191681808", + "643763279602387": "11317504822" + }, + "0xc83746C2da00F42bA46a8800812Cd0FdD483d24A": { + "265616635443058": "14621832431" + }, + "0xC89A6f24b352d35e783ae7C330462A3f44242E89": { + "106844058537279": "1662797550", + "232666011188689": "38741655592", + "199333864602066": "222000000000", + "174740901948838": "17601537341", + "84491783274191": "56092082506", + "268313773219048": "645749915430", + "300907439691408": "3360000896013", + "309819197589125": "961279650599", + "230428600679790": "97094321858", + "304267440587421": "2571019861709", + "339049177933472": "137617079719", + "735501575538298": "52546699219", + "634767633861213": "4394126040", + "739118151631989": "48434302620", + "741257789372770": "15537852857", + "760163471455038": "8410169379" + }, + "0xC95186f04B68cfec0D9F585D08C3b5697C858fe0": { + "45903487064375": "4486622483613" + }, + "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b": { + "38723609418267": "1437789097", + "887877933908794": "49659144709", + "72536573875278": "19323965325" + }, + "0xcb1Fda8A2c50e57601aa129ba2981318E025F68E": { + "267119477632939": "21497263680", + "267093867092613": "25610540326" + }, + "0xCa11d10CEb098f597a0CAb28117fC3465991a63c": { + "324721165808840": "37345928668", + "295099970127801": "37362352211", + "274399695474788": "39742257015", + "278381965496913": "34339819618", + "273371123004334": "51351551872", + "402963946030169": "235308225358", + "341839523895777": "128793953990", + "400400407015915": "132878417357", + "458492770067490": "45295250000", + "402473893644846": "135260808947", + "451985754962126": "67231603439" + }, + "0xCB85C8f60a34D2cB566CC0b0ce9e8Fd66C2d961F": { + "265631257275489": "21410000000" + }, + "0xcb89e2300E22Ec273F39e69E79E468723ad65158": { + "764112894239427": "567537293" + }, + "0xCba1A275e2D858EcffaF7a87F606f74B719a8A93": { + "17783087369503": "268250911852" + }, + "0xCE1Ef18B8c756E2A3bf24fF86DF3e2a4a442691e": { + "607647748666028": "15320220000" + }, + "0xCeD392A0B38EEdC1f127179D88e986452aCe6433": { + "919155366825215": "127986754747", + "888896819909979": "66358992180" + }, + "0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0": { + "170153133012310": "42278925645", + "646948961737143": "2139486421", + "915343309386649": "36776229843", + "915296278260783": "10261208678" + }, + "0xCF0dCc80F6e15604E258138cca455A040ecb4605": { + "767502450202574": "572238513", + "203381659178232": "749736733", + "912204712982716": "3541650000", + "768090558981612": "1708733210", + "633292566723256": "391574385", + "919027354019614": "3344108" + }, + "0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a": { + "204891225243996": "21176891132", + "246401099503479": "4522765369", + "680316185068949": "1517396973", + "204881039627989": "10185616007", + "250449760950680": "40625041509" + }, + "0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0": { + "120976342053697": "78950315731" + }, + "0xcfd9c9Ac52b4B6Fe30537803CaEb327daDD411bB": { + "641486892999955": "5827431793" + }, + "0xD12570dEDa60976612Eeac099Fb843F2cc53c394": { + "273525690791323": "24922015529", + "213133125823597": "23535339927", + "227877139590186": "22752528487" + }, + "0xd03c52B3256b5e102ce4BF6bB53d4Be9d9963838": { + "45756201571935": "51343313907", + "45807544885842": "95942178533", + "168468525810860": "370401758420", + "67378770424441": "2777777777", + "138226284869573": "1055586732753", + "294443496634161": "13501951210", + "400376009975642": "5164865662", + "604693659304797": "42860013000", + "605443996770297": "46163250000", + "605024766070297": "46163250000", + "740481383839654": "5814129257", + "767583223223815": "43570000000", + "649045620260457": "879707608", + "767779569454938": "28283345400", + "767735029454938": "44540000000", + "769136106513922": "32530000000", + "769168636528497": "65100000000", + "769233736528497": "61845000000", + "769295581528497": "13020000000", + "779122125841278": "37495000000", + "779802946070419": "28419857376", + "779651946070419": "151000000000", + "841709639689066": "149541493389", + "779084630841278": "37495000000", + "868988398928918": "24205500000", + "901964134773218": "51770400000", + "915657202915828": "126520824627", + "915783723740455": "122632340661" + }, + "0xD00fB8efFeE21177df7871F285B379Bb03d8A8b5": { + "764122692117842": "60220388088", + "726174249768029": "203162271017" + }, + "0xD130Ab894366e4376b1AfE3D52638a1087BE17F4": { + "766112335378924": "180900000" + }, + "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799": { + "644156421132344": "3789921580", + "648277210832933": "20187647", + "644278837940540": "631861553", + "648277231020580": "5001904811" + }, + "0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691": { + "320192421827300": "4615615453", + "318360495602860": "10068277389", + "326590820591343": "9627158590", + "325968454248765": "2197410000" + }, + "0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0": { + "87095876554784": "217652983" + }, + "0xD1C5599677A46067267B273179d45959a606401D": { + "267212957011131": "9669724298" + }, + "0xD2594436a220e90495cb3066b24d37A8252Fac0c": { + "135846486416614": "8639602506" + }, + "0xD1F27c782978858A2937B147aa875391Bb8Fc278": { + "141536646989557": "56750401947" + }, + "0xD2aC889e89A2A9743Db24f6379ac045633E344D2": { + "390693555512211": "20766320589" + }, + "0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911": { + "632027037517820": "37390765908" + }, + "0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8": { + "41419619651817": "7158000000", + "201562615728802": "117463196595", + "41426777651817": "183112626098", + "343139192805930": "41880000000", + "641741667329649": "879875000000", + "234898804378976": "255540375316" + }, + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57": { + "327828702207485": "12634438220", + "676682958003509": "124875217", + "278872414004581": "1582439" + }, + "0xd3FeeDc8E702A9F191737c0482b685b74Be48CFa": { + "213319734626330": "16988852448", + "656988173951472": "19072704777" + }, + "0xD441C97eF1458d847271f91714799007081494eF": { + "216771322289720": "118731904635", + "347279996946911": "10970351806", + "306953481354513": "11166478561", + "214098369513043": "255020597678", + "238062269315938": "261156805041", + "919414411576630": "7795070" + }, + "0xd30eB4f27aCac4d903a92A12a29f3fe758A6849c": { + "647819395829758": "159745132", + "363015290107231": "754104205535", + "32401868671920": "478845021900", + "602223795805820": "455513781363", + "648659398612545": "216288453", + "648076845628910": "4893930661" + }, + "0xD497Ed50BE7A80788898956f9a2677eDa71D027E": { + "187604436632932": "16723961312" + }, + "0xD4B5541B7d82C6284e54910aB6068dC218Da1D1C": { + "430097224089579": "1565550000000" + }, + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709": { + "264990657361741": "531282874686", + "324911832765789": "184511731281", + "265820029077911": "145778407801" + }, + "0xD560fd84DAB03114C51448ab97AD82D21Cc3cEEc": { + "682011238418545": "1076424953", + "686184841527097": "4382557", + "28119702718067": "186225", + "681871030726554": "169346069", + "699081095979986": "59333461779", + "768385011340907": "23414898833", + "768348373649812": "906241015", + "769308601528497": "1167009046" + }, + "0xD567BEdb9EAe1DB39f0e704B79dF6dF7f846B9B0": { + "252030250271831": "21381687739" + }, + "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241": { + "767842406169239": "5954962183" + }, + "0xd582359cC7c463aAd628936d7D1E31A20d6996f3": { + "573860563543017": "297359673383" + }, + "0xD5eFa6Ce5E86C813d5b016ABd10Bf311648D9FE8": { + "397072711819605": "2644238087" + }, + "0xD5Fe199029ee4626478D47caE4F6F68CEa142c4C": { + "214353390110721": "183879103897" + }, + "0xd61296bc2FEaE9Ed107aB37d8BAF12562f770Bd5": { + "201326601781942": "85553535801", + "159835498625093": "39255134736" + }, + "0xD6626eA482D804DDd83C6824284766f73A45D734": { + "175126339992520": "18060301074", + "158141536110983": "2023493366", + "267151046290773": "40336563374" + }, + "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427": { + "61070062784360": "641943900", + "75758047453965": "2654796068", + "28860940762925": "217074926", + "28439147771191": "52142144", + "20351644735591": "9001457167", + "643117711323649": "475832176", + "643123258126999": "2606857506", + "648260675229360": "1519583480", + "650319190028033": "1605097528", + "655481788199513": "1975656580", + "655335646284111": "1461715402", + "743589505064359": "5447341871", + "741056183995411": "4891499681", + "768541132069111": "5406296301", + "768349279890827": "984601036" + }, + "0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF": { + "547252813272352": "274110362747" + }, + "0xD6e91233068c81b0eB6aAc77620641F72d27a039": { + "60950978047202": "3798086400", + "28482543899350": "4079835540" + }, + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3": { + "659187273426623": "16766090212", + "655970356111333": "1648928510", + "672179833323380": "21683015215", + "672351516338595": "21728068461", + "656413068415795": "4678944318" + }, + "0xd722B7b165bb87c77207a4e0e690596234Cf1aB6": { + "186000169630933": "69890902362", + "166809615234561": "315413817976", + "325096344497070": "48660000000", + "135855126019120": "56498924765" + }, + "0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6": { + "191478158594940": "6103560879", + "75942999608987": "19019143753", + "216999604194355": "10981000000", + "76190932704929": "3333000000", + "160696684858537": "2541993926", + "248018211208670": "20160241262", + "403279666998617": "12043898130", + "322437029949387": "4380730981", + "634136093184089": "3366848882" + }, + "0xD79e92124A020410C238B23Fb93C95B2922d0B9E": { + "107857914194102": "1640014683559", + "99170159054758": "7664165865816", + "111621810380800": "6646318904300", + "121650643119428": "2840000000000", + "124490643119428": "83962792" + }, + "0xD87bc009C1Fd2d29A3f1dDF94e6529dEC1aFD7D3": { + "244363440744221": "564315536574" + }, + "0xD8c84eaC995150662CC052E6ac76Ec184fcF1122": { + "915916014272287": "20230146794" + }, + "0xD93cA8A20fE736C1a258134840b47526686D7307": { + "78584911789298": "5137382996", + "647259313998298": "14647098985", + "56077445655086": "11371417669", + "648046274309396": "10494453652", + "647599985149651": "17747254687", + "653323868574912": "137731690000" + }, + "0xD9E886861966Af24A09a4e34414E34aCfC497906": { + "573412785654316": "47759145702", + "561774967949388": "92219555", + "561774889108632": "78840756" + }, + "0xD970Ba10ED5E88b678cd39FA37DaA765F6948733": { + "142281870862196": "10000000000", + "319686977627150": "7392140365" + }, + "0xdAe3b4E9bA2F1bd8da873B7dd5a391781a8C1Ae4": { + "157602998747642": "28885163958" + }, + "0xdb215bA8D9bed3aACE91E23307Caa00A8c9211f1": { + "267590061901147": "2005065961" + }, + "0xdB4fBc231F1D2b3B4c3d9e1602C895806fb06278": { + "251889011864124": "141238407707", + "216062301683602": "59128471773", + "155866885831476": "229812428383", + "88019238910533": "283779269760", + "186894947490180": "254568376533", + "326192232546177": "21300990257", + "458939107847346": "7742150000", + "636791786091549": "2994580003" + }, + "0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c": { + "849298904292793": "25199642635" + }, + "0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661": { + "67683058505318": "1486737153234", + "20365613493753": "1765692730755", + "51195826562753": "883032123833", + "353815863306220": "1479741690000", + "77991701919499": "455109074924", + "544347600270060": "2882163840000", + "448968517008406": "3013875740000", + "757951107599734": "1176211486527" + }, + "0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D": { + "158415379405767": "115400000000", + "13470495740040": "149825000000", + "188020337395906": "112634976533", + "208903230939437": "154140000000", + "142108188708647": "119851523542" + }, + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584": { + "32171015349710": "9531250000", + "32164015349710": "1355743473", + "676751445379926": "47414939", + "417523403595": "2917795207", + "669837683611672": "950984267", + "684994857746023": "30279606975", + "742042342603575": "131493030", + "742042474096605": "236803966", + "742042943101277": "7243213645", + "742042710900571": "232200706", + "770975471658901": "8095756597" + }, + "0xDC50cB21557c8A1F1161683FC2ec4Cf5829ef50C": { + "240776779208192": "131801542813", + "395510568223075": "13452513599", + "395524020736674": "6725311906" + }, + "0xDD0C3175A65f7a26078FFF161B8Be32068ff8723": { + "918883666019212": "102716499306" + }, + "0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78": { + "174442438655439": "15119280000" + }, + "0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8": { + "144067349353443": "62240626757", + "142228040232189": "53830630007" + }, + "0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f": { + "768418957212524": "52886516686" + }, + "0xdEBA22ef671936a5CB3964C8469fDC32cF745C0a": { + "192163678553101": "172848686028", + "509636306255": "1", + "59412946981687": "34157939646", + "141251298863976": "39432738838", + "529636306255": "1", + "241321879707070": "49572290004", + "396542158923743": "334401064755" + }, + "0xDFc6b16343F92c1347B6E9700aA6c5d9E34794A1": { + "4830753401522": "2240249910", + "41339093511436": "1257372701", + "659731106622223": "8618859700", + "533739581287964": "3943680000" + }, + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0": { + "3802746560076": "1028006841446", + "38080755842898": "584656734654", + "3792363560076": "9383000000", + "38070755842898": "10000000000", + "38059755842898": "1000000000", + "150603898314796": "19362238929", + "91230555524265": "1157829451458", + "141290731602814": "170292704134", + "157502362728117": "19361828964", + "158143559604349": "240053266239", + "186494637954698": "86016299030", + "200652532203034": "192238041154", + "196474759852459": "243144086944", + "300250684477580": "90840629787", + "300436825204583": "66642995895", + "523592887571205": "406079005484", + "326172188465217": "20044080960", + "300341525107367": "95300097216", + "660068565720606": "26160137009", + "659963650287531": "62724910500", + "659739725481923": "12767022192", + "663722483241054": "15687227027", + "668464608799283": "39772727272", + "729306188176751": "405623000000", + "672253903713761": "97191046863", + "681883889108289": "102345416157", + "676186340481902": "169034757286", + "768211064275494": "84762579204", + "809659710613618": "69419995133", + "809524758010923": "65952600000", + "809729130608751": "12575747550", + "818657781957919": "69419997856", + "815316133061142": "3341648896777", + "849581203170535": "148989830915", + "860426260246190": "238537054269", + "841859181182455": "771362533397", + "868015358965168": "78882631651", + "868634110731086": "83348258680", + "869012604430047": "87269350362", + "882000203687519": "380005737357", + "883770390346051": "187695892447", + "884919252446654": "542162881249", + "888303222439580": "593597462776", + "912214343065818": "16933170970", + "912208351517452": "5991548366", + "915380085616492": "14800696613", + "915260266366180": "18754209891" + }, + "0xE09c29F85079035709b0CF2839750bcF5DcdE163": { + "87096541295698": "18335245199", + "803081695375515": "618050000000", + "28118591472167": "1111245900", + "33156411262114": "8075958282", + "33227951017861": "25000000000", + "900744823053218": "1219311720000", + "838807361305501": "1744820000000", + "888024381265015": "257944663329" + }, + "0xe0842049837F79732d688d0d080aCee30b93578B": { + "283316680754456": "956039712019", + "282623442085645": "196317112545" + }, + "0xe105EDc9d5E7B473251f91c3205bc62a6A30c446": { + "676541705644312": "4631200000", + "676541698067218": "7577094" + }, + "0xe1762431241FE126a800c308D60178AdFF2D966a": { + "402609154453793": "3753371898" + }, + "0xE1e98eAe1e00E692D77060237002a519E7e60b60": { + "647522401046121": "62772574", + "635712394908262": "125332100000", + "560021933444365": "145614575729", + "793692325682938": "368865000000", + "635562948558262": "125342100000", + "805803655452845": "756420000000", + "808210227799125": "59799118052" + }, + "0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25": { + "600077240176718": "329414899131", + "624173365610454": "69726385000", + "602143407327420": "8684892499", + "576206248763446": "66947321618", + "595823368762510": "108994425040", + "766450323360634": "200463133890", + "729711811176751": "53822522578", + "767825586282206": "16819887033", + "768007571928604": "47461345022", + "783348102174276": "7806418680", + "786392811090567": "52304367680", + "867253177374779": "166114705421", + "869099873783314": "76014058075", + "868854548555689": "133850337277", + "883138702543472": "176200000000", + "882508482561713": "167461718509", + "900208798985209": "143968018244", + "884129255430690": "67895438272", + "912231276236788": "92897267558", + "919466535324137": "5334880032", + "919461199099499": "5336224638", + "919471870204169": "5330937481", + "919477201141650": "5329474143", + "919482530615793": "5327908996", + "919487858524789": "5325660310", + "919498507288521": "5318910648", + "919503826199169": "5314703448", + "919493184185099": "5323103422", + "919514452805888": "5311945160", + "919509140902617": "5311903271", + "919519764751048": "5310253791", + "919525075004839": "5309104759", + "919530384109598": "5308275026", + "919535692384624": "5306308744", + "919540998693368": "5305739221", + "919551606295283": "5301550053", + "919546304432589": "5301862694", + "919556907845336": "5299540494", + "919562207385830": "5302782308", + "919567510168138": "5302768160", + "919572812936298": "5302754012", + "919578115690310": "5302740141", + "919583418430451": "5301073185", + "919588719503636": "5301772813", + "919594021276449": "5300858469", + "919599322134918": "5302714897", + "919604624849815": "5301047940", + "919615226931548": "5301019645", + "919609925897755": "5301033793", + "919620527951193": "5301005774", + "919625828956967": "5300991904", + "919631129948871": "5300977756", + "919636430926627": "5300963885", + "919652332123030": "5299268910", + "919647032840249": "5299282781", + "919641731890512": "5300949737", + "919657631391940": "5299254485", + "919662930646425": "5299240892", + "919668229887317": "5297573658", + "919673527460975": "5297559232", + "919678825020207": "5299198448", + "919684124218655": "5299184577", + "919689423403232": "5297517343", + "919694720920575": "5299156559", + "919710615041913": "5297461307", + "919700020077134": "5297489325", + "919705317566459": "5297475454", + "919715912503220": "5305707596", + "919721218210816": "5305693726", + "919726523904542": "5305679578", + "919731829584120": "5305665707", + "919737135249827": "5303998473", + "919747742938071": "5303675620", + "919742439248300": "5303689771", + "919753046613691": "5303661746", + "919758350275437": "5303647595", + "919763653923032": "4733133482" + }, + "0xE203096D7583E30888902b2608652c720D6C38da": { + "299026952158934": "2821489902", + "322426733615915": "10296333472", + "634451653562499": "2156941193" + }, + "0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41": { + "624312365377895": "900232559", + "604813458067797": "165503800000", + "631054918312401": "72951633394", + "632715021261264": "2101528" + }, + "0xE2bDaE527f99a68724B9D5C271438437FC2A4695": { + "649573721058696": "214014871", + "637247853646254": "8808401866", + "51178430376491": "2794515", + "741723479960197": "838146017" + }, + "0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C": { + "141990287303893": "100000000109", + "197732197212553": "25970203853", + "641517895144865": "4833056816", + "591946727492914": "19309281895", + "52227428818772": "11845000000", + "646974371682349": "9424449262", + "859905330336636": "320918539", + "861104013703599": "466526164", + "868002417256020": "1792614924" + }, + "0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3": { + "28801080459205": "9105230900", + "668329599792309": "12303080568", + "668341902872877": "4162855351", + "235808732140980": "4499213873", + "679668890228321": "20388737000", + "740629521326922": "14539634819" + }, + "0xE2EdD6Ba259A7a7543e76df6F3Eab80154Ff7982": { + "199689393498949": "10847842210", + "223686687852134": "15136415374", + "186711602390914": "12816117502", + "164200751430350": "13525306090" + }, + "0xE381CEb106717c176013AdFCE95F9957B5ea3dA9": { + "726377412039046": "5224487265" + }, + "0xE3A2Ad75e3e9B893c8188030BA7f550FDfEeadac": { + "644456134939590": "7631768458", + "551485555682601": "1500000000" + }, + "0xE382de4893143c06007bA7929D9532bFF2140A3F": { + "376338980709500": "87039194038" + }, + "0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6": { + "0": "417523403595", + "415729849352728": "1706000000000", + "406241456449697": "1799280000000", + "889280477870627": "3060959410100" + }, + "0xE432225AB3A24D0328c1eb8934f12C2C664dBF1E": { + "378223623996434": "4102512201", + "59299083830384": "4831151303", + "267592066967108": "16873650000", + "378230112638662": "128819998128" + }, + "0xE58E375Cc657e434e6981218A356fAC756b98097": { + "573816319246629": "2262215151", + "647552815241326": "831025407" + }, + "0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74": { + "86839531147491": "6167531020", + "87096094207767": "447087931", + "78575652585161": "6157730462", + "87005765679223": "13825576144", + "88859049931623": "2191023676", + "96757775191185": "5000092372", + "109601441049683": "9469466929", + "107450450351040": "5868852168", + "88865298102549": "4454797628", + "193348310768784": "17271454497", + "648142013171689": "1598517724", + "318370563880249": "2765214517", + "649302909000680": "10533398444", + "670082169136394": "68703216153", + "315604608943756": "27270213991" + }, + "0xE543357D4F0EB174CfC6BeD6Ef5E7Ab5762f1B2B": { + "456091706917490": "2401063150000", + "118328447658504": "701100000000" + }, + "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14": { + "582508219016231": "24771576854", + "150183664003812": "17199177351", + "624658665009185": "6644957515", + "634129225542334": "2422720577", + "248514128054572": "97187219028", + "638300669872038": "2080727252", + "634369628528770": "3238845835", + "643801267349364": "3566904312", + "644198835707273": "1969433094", + "644413986347378": "1335994704", + "650397536125561": "1821867823", + "848120476134732": "20430199792", + "669831927929272": "5755682400", + "672735152266652": "12000000000", + "845868159704226": "7926000000", + "889126584565133": "3442047582", + "917105013254763": "130394976890" + }, + "0xe693eB739c0bE8c2bDD978C550B5D8b8022A8adA": { + "178737987409807": "773610632731", + "333823566057414": "1546846439684", + "764100342598098": "11607641329", + "607663068886028": "1629021034598", + "146032033342725": "685155440000", + "768309493782381": "386609244", + "768327565938680": "20807711132", + "860835928419591": "249909693172" + }, + "0xE6C459B2d9e8EafD205b74201Ce1988B28Bd2a1F": { + "577649709443014": "29897283106", + "575334506398130": "2624718668" + }, + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0": { + "662103983819946": "130876975914", + "662653552964585": "348266002657", + "662234860795860": "57106724864", + "685100675523931": "181720064271", + "685050370546027": "50304977904", + "668904111958456": "17808983511", + "669107561607270": "226407807552" + }, + "0xE7a9c882C15288E8FaDd3f84127bF89b04dF81b3": { + "647786287498526": "9738151418", + "646941638104274": "4278269347", + "646643408283275": "5875643544", + "647927256951326": "8740549248", + "650287051440147": "1483237886" + }, + "0xe846880530689a4f03dBd4B34F0CDbb405609de1": { + "90417231539023": "45240683449", + "340268987165800": "7781881977", + "217062489174505": "27755712447", + "217190262186952": "73956211611", + "150318938409090": "23744037762" + }, + "0xe886eCE8dEA22C64592E16CE9c6060C354e0cB46": { + "141133027358920": "101170792061" + }, + "0xe8e8D10D48Bb4761E30A1A0C3f5705788E2Cf5Ca": { + "217010585194355": "2570026", + "390798314197933": "25378731375", + "331744103814149": "12424321654" + }, + "0xe86a6C1D778F22D50056a0fED8486127387741e2": { + "563421765802308": "158156000000", + "569160601568315": "158156250000", + "564472102405208": "158156250000", + "565874188495977": "158156250000", + "569818905046154": "136996467561", + "572257769445253": "158156250000" + }, + "0xe9c6f6D44C546CdD54231e673Ba8b612972cdD07": { + "186194197652715": "4883985870", + "186192254547662": "1943105053" + }, + "0xe9886487879Cf286a7a212C8CFe5A9a948ea1649": { + "530415037202306": "6520295096" + }, + "0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C": { + "643951808239048": "1710712273", + "361240883351111": "319875970811" + }, + "0xe9F55fF0Ce2c086a02154E18d10696026aFC0E63": { + "159735891427685": "99607197408", + "236055332232551": "189501596574", + "201680078925397": "88271731084" + }, + "0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29": { + "639712173981805": "2021177132" + }, + "0xEC4009A246789e37EA5278F5Cc8bF7Bc7f11A7D7": { + "273670285655226": "1160805666", + "31883346304267": "305470240", + "646889129319224": "85072529" + }, + "0xEaFc0e4AcF147e53398A4c9AE5F15950332Cce06": { + "28440096238899": "16735634264", + "28458831873163": "17401090578", + "28428466019264": "8365853899", + "761858116813008": "1258382", + "28492543899350": "32425342912", + "28684005677165": "20605999230", + "28739597122205": "61483337000", + "28634005677165": "50000000000", + "31624276642780": "2", + "32350918869547": "82051", + "32350918951598": "10000000000", + "31895311480934": "1", + "33187375353373": "17408776700", + "33175764242260": "2", + "38787729222745": "1", + "32394990399120": "2864884005", + "33291179126479": "9247234522", + "72536373875277": "1", + "150179053418897": "287750862", + "56104423797725": "1", + "60588921072549": "25000000000", + "109580416560762": "2", + "153930334477667": "3", + "164362000848934": "12645000000", + "161088340667787": "3772518553", + "167674331524848": "5035606362", + "169483624358205": "44175871750", + "188951874950346": "181144380406", + "187196027899392": "29564553728", + "227484561014257": "20262705038", + "234007108345512": "93635599728", + "238976826686778": "177198890000", + "250021092530246": "39829442210", + "249735146143756": "20000000000", + "249759857948381": "15288195375", + "409674050889316": "65965899719", + "547880249075962": "150000000000", + "634305900726922": "31", + "670256915937783": "29299", + "759972323281795": "53934403", + "760354198244618": "2893321" + }, + "0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196": { + "644038954426353": "1008381544", + "656953897664851": "3972363681", + "582562850460041": "1759031988", + "644039962807897": "1672635048", + "639175607877950": "5382798092", + "670150872352547": "5730104692" + }, + "0xEd8440f3476073DF5077b5F97d34556fBd6c1AEA": { + "402612907825691": "286363600173", + "402327231432779": "19514060494" + }, + "0xedC24C8a0B98715C4c42f23fA1a966D68d71DA40": { + "523272990497526": "2808581702", + "150173526701329": "5526717568", + "523275799079228": "2808475879", + "257915668096103": "19129436224" + }, + "0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef": { + "233220943523291": "14963282078", + "229522424934495": "16548755032" + }, + "0xeE7840DAC7C3ec2cCDe49517fd3952e349997aB5": { + "259051124143355": "52693409106", + "241309524742788": "12354964282" + }, + "0xeE55F7F410487965aCDC4543DDcE241E299032A4": { + "205913794882466": "87310833027" + }, + "0xeEA71D769BE2028A276BBb5210eD87d2962E1bAD": { + "411677960948715": "29448692596", + "322408920227818": "17813388097" + }, + "0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee": { + "768778833505999": "1740538415" + }, + "0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C": { + "274288216558789": "100049507316" + }, + "0xF024e42Bc0d60a79c152425123949EC11d932275": { + "654773025670130": "17", + "650979413037222": "397390840", + "648056768763048": "14" + }, + "0xF05980BF83005362fdcBCB8F7A453fE40B669D96": { + "140547091636493": "118322995425", + "91135829507198": "94726017067", + "138128727038470": "58350000000" + }, + "0xF14Ee792bb979Aa08b5c65B1069A4209159d13fE": { + "174426656552694": "15782102745", + "85022875344921": "3324591444" + }, + "0xf05b641229bB2aA63b205Ad8B423a390F7Ef05A7": { + "70517611157091": "20160645556", + "88881803449629": "48660903855", + "87958531224481": "60707686052", + "84560853356697": "36912535650", + "86281745898513": "38582448637", + "90462472222472": "478277732458", + "199810865545108": "179758969535", + "199990624514643": "621486067097", + "210343681480290": "144178362548", + "210150930873296": "192750606994", + "208314733682087": "90918565015", + "207989283062527": "182950766299", + "208767941221257": "135289718180", + "208632341913063": "135599308194", + "214560216445262": "183278217511", + "211376935750193": "97679651753", + "209077025481872": "137288949299", + "217381865553454": "88294274288", + "214743494662773": "182746566692", + "222293261838180": "438574982507", + "221851687814442": "441574023738", + "235353324492895": "197419483419", + "223179979982562": "429215643262", + "223701824267508": "265026019680", + "248038371449932": "100626973782", + "240318561628986": "188376222726", + "245383860039652": "294379207318", + "246107839246970": "293260256509", + "415298289081557": "16136910000", + "767705525106280": "29504348658", + "575337131116798": "75566677988", + "779550950775667": "97912655960", + "805678215290611": "125440162234", + "868524114903307": "109995827779", + "869422948935700": "102347299471", + "869343953976304": "78994959396", + "882675944280222": "207459722347", + "883711019517835": "41691686706", + "899544731790799": "453667194410", + "899259867898930": "284863891869", + "900539936860347": "204886192871", + "912435691462822": "119670000000", + "917823004063277": "479480000000" + }, + "0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657": { + "324774188506087": "11452884036", + "444496063410773": "460124357137", + "324709676759267": "11489049573", + "560167548020094": "333900000000", + "551041153301854": "106391740000", + "605490160020297": "76938750000", + "604736519317797": "76938750000", + "605070929320297": "76938750000", + "595105825024334": "11975411500" + }, + "0xF18507A3D7907F2FDa0F80ea74b92707F67E0bd9": { + "384467194293676": "32350000000", + "379560571115891": "1003780000000" + }, + "0xF1cCFA46B1356589EC6361468f3520Aff95B21c3": { + "636291150277722": "3701958291" + }, + "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d": { + "680560311480251": "10364574980", + "676535946061485": "2683720" + }, + "0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22": { + "455687462229722": "323395750214" + }, + "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5": { + "884279886877909": "34793830873", + "499636306256": "316832137", + "677766808678753": "76304250", + "740981235275273": "11440000000", + "744788906534115": "2243600000" + }, + "0xf28E9401310E13Cfd3ae0A9AF083af9101069453": { + "107456319203208": "3" + }, + "0xf295eCbE3cf6aB9fD521DFDF2B3ad296389d659F": { + "647255629878533": "3684119765", + "78582867442188": "865788998" + }, + "0xf2d67343cB0599317127591bcef979feaF32fF76": { + "636804507315224": "195414590", + "636804702729814": "1472419706" + }, + "0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e": { + "523428031166350": "40407344400", + "157860946116238": "280589994745" + }, + "0xf3999F964Ff170E2268Ba4c900e47d72313079c5": { + "28486623734890": "2500002500", + "768565162278886": "33325500000", + "456010857979936": "80848937554", + "218281810495476": "15033393245", + "212139883813659": "5555555555" + }, + "0xF38762504B458dC12E404Ac42B5ab618A7c4c78A": { + "339501968285224": "21128294603", + "325527339930117": "17268212989", + "340323031214169": "81063306091" + }, + "0xf3E52C9756a7Cc53F15895B11cc248B1694C3D81": { + "403474243552036": "135161490392", + "160385729653349": "194724915171", + "259317417552461": "286813809151", + "157280752805224": "864328351", + "160759888566087": "199072929191" + }, + "0xF4003979abEbEf7dEdCE0FcB0A8064617ba1cb6c": { + "12891501547142": "16629145105" + }, + "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F": { + "215236035379429": "5403998880", + "188951105719577": "769230769", + "249693321804466": "8691017770", + "726094322563228": "3409439001", + "232624605735071": "146807870" + }, + "0xf476f6c0c97d088C3A1Ec2a076218C22EDFE018D": { + "322793684966211": "149609926949", + "322761442698701": "10839389709" + }, + "0xF4CEC45FcdeDFafAa6bcB66736bBd332Ce43bA23": { + "441066505168755": "1365350" + }, + "0xF50ABEF10CFcF99CdF69D52758799932933c3a80": { + "152843036630621": "101563373991" + }, + "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C": { + "647881865503160": "16707350000", + "647935997500574": "17834375000" + }, + "0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3": { + "664521495218894": "98010410066", + "648206553687311": "5255036695" + }, + "0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2": { + "5012592023922": "2270047397215", + "421535049352728": "4271250000000" + }, + "0xf62dC438Cd36b0E51DE92808382d040883f5A2d3": { + "150179341169759": "4322834053" + }, + "0xF7d48932f456e98d2FF824E38830E8F59De13f4A": { + "32350896326307": "22543240" + }, + "0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765": { + "219477505916790": "88532212363" + }, + "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8": { + "209214314431171": "364566745819", + "196717903939403": "394944861804" + }, + "0xf80cDe9FBB874500E8932de19B374Ab473E7d207": { + "232909459110909": "311484412382", + "384562612976693": "1281429108", + "385640679894087": "1926839685", + "209669674702233": "97955793845", + "236874338170704": "37203015522", + "452088576565565": "6452862364" + }, + "0xf973554fbA6059F4aF0e362fcf48AB8497eC1d8f": { + "581093748820796": "51435891210", + "342938950575971": "4493174482" + }, + "0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC": { + "31642104142782": "20450600000", + "31578565099710": "9142307692", + "31769412771032": "3312089446", + "490354466608": "191849316", + "31625104142782": "17000000000", + "33281701017861": "5333791660", + "33272326017861": "9375000000", + "38714646644176": "3867013493", + "56109979353281": "5985714285", + "60354289907110": "96687910554", + "60982220444192": "18658272727", + "60954776133602": "27444310590", + "67600362435034": "31250000000", + "67669112435034": "13946070284", + "86243542562704": "36209937463", + "67092358775027": "4942857142", + "86320328347150": "35577140258", + "86949644512295": "28347319166", + "88861240955299": "4057147250", + "87787065029620": "60485714285", + "106848349209466": "24766754630", + "135796486416614": "50000000000", + "167679951258156": "3226622831", + "148103260285591": "22243015724", + "190391179373048": "86804480075", + "190133176918073": "258002454975", + "191857875740431": "43802016663", + "201787762635337": "50046286217", + "219666755709278": "477438793550", + "229964010722177": "200000000000", + "204071711803219": "37360929463", + "278661584207432": "149346870320", + "294456998585371": "47251310108", + "294504249895479": "47223612281", + "279118417135852": "92984020589", + "315337928069739": "130000000000", + "763613507351492": "94393259501", + "763753988541255": "38503952220", + "738957888724280": "72666479808" + }, + "0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4": { + "681721278895709": "114463620514" + }, + "0xFa0A637616BC13a47210B17DB8DD143aA9389334": { + "319327451459267": "60048376954" + }, + "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d": { + "741719421044592": "971418862", + "741717126388455": "508197502", + "860285896625586": "38098790184", + "18052621158047": "133333333", + "768644380193949": "5228000000" + }, + "0xfaAe91b5d3C0378eE245E120952b21736F382c59": { + "648407651642033": "8650962388", + "648027915510254": "6669928049", + "636986863448653": "222695155", + "647970706436153": "7931925665", + "647599780754020": "204395631" + }, + "0xFb00Fab6af5a0aCD8718557D34B52828Ae128D34": { + "217619026720167": "275068216954", + "268959523134478": "1466041464745", + "256721448864723": "266618306956", + "213125875187098": "7250636499" + }, + "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef": { + "740648921884436": "39104687507", + "657971448171764": "15036330875", + "76202249214022": "8000000000", + "644415322342082": "6773000000" + }, + "0xFaE9C276d513E6dC5060BB9bE5111c3124C4376c": { + "315756870466407": "447000000000" + }, + "0xfc22875F01ffeD27d6477983626E369844ff954C": { + "648624797389901": "4744706233", + "646720366775027": "9148374808", + "661556790714494": "65999469411", + "648659614900998": "10237860605" + }, + "0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55": { + "646638892866343": "4515416932" + }, + "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27": { + "153770763009441": "1862917241", + "41273044931817": "1293137085", + "72535874823847": "499051430", + "87049010845698": "2000000000", + "41285561629320": "5129256854", + "376471998148891": "5663243298" + }, + "0xFc748762F301229bCeA219B584Fdf8423D8060A1": { + "322772282088410": "21402877801", + "338831309201661": "78790376700", + "169373956828622": "24754681144", + "159916759048243": "136363636363", + "86520188482120": "37794333837", + "676534805838691": "1140222794", + "341580809146462": "55060000000", + "676538230280631": "3467786587" + }, + "0xfCA811318D6A0a118a7C79047D302E5B892bC723": { + "498200397656600": "35915488411", + "347290967298717": "129954995754", + "533057711814824": "4109469597", + "535105031193815": "3374944845", + "365384138540345": "38482129867", + "635918786935329": "5575795077", + "636289581473963": "1568803759", + "636797022129909": "2703848605", + "636296774848561": "6349832412", + "636054133722019": "5609262356", + "636294852236013": "1922612548", + "636972251520834": "8949086569", + "636968054818652": "4196702182", + "636964373009102": "3681809550", + "638951512037019": "507888377", + "639632349897239": "14697397837" + }, + "0xfcBa05D5556b6A450209A4c9E2fe9a259C84d50F": { + "142291870862196": "862960981345", + "470282561625193": "9000000000", + "32204191499710": "142680000000" + }, + "0xfD67bbb8b3980801e28b8D9c49fd9d1eA487087B": { + "310817343467634": "616256912", + "310780477239724": "5151851478" + }, + "0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7": { + "346860555818338": "119936449695", + "402246432786659": "39496248802", + "403199254255527": "13423206781", + "206442505715493": "792399558214", + "74255506861536": "747968437372", + "764438946829295": "9576969494" + }, + "0xFE09f953E10f3e6A9d22710cb6f743e4142321bd": { + "595229820320334": "19616450000", + "76519455042314": "1472246877185", + "432847863478235": "4222900000000" + }, + "0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f": { + "860248248157181": "1908656103" + }, + "0xfEc2248956179BF6965865440328D73bAC4eB6D2": { + "12790931192343": "100570354799", + "27704142968432": "106291676890", + "520954294941796": "86620734894", + "73815488466054": "100398170413", + "292139050434739": "121744107111", + "635537122576119": "25825982143", + "782622885225793": "57770720876", + "635688290658262": "24104250000", + "783376766574145": "50190000000", + "789480601665705": "75944000000", + "808701830660540": "106624000000" + }, + "0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943": { + "385628710250516": "1695400673", + "385610057315670": "1659614846" + }, + "0xFf4A6b6F1016695551355737d4F1236141ec018D": { + "214537269214618": "22947230644", + "214926241229465": "22806010929" + }, + "0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c": { + "859277327665173": "150200542274", + "605567098770297": "210641200000", + "845020731525698": "149234921085", + "836111814253126": "153625996701", + "575718099519476": "32762422300" + }, + "0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7": { + "325768566324818": "46665442490" + }, + "0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0": { + "189387084660680": "10157189840", + "201247139758911": "13448181940", + "167683177880987": "4954971100", + "326136734741436": "35453723781", + "236366740568862": "7878595540", + "409548715746253": "4109706945", + "408419819948677": "2084424649", + "415728098229444": "1751123284", + "409552825453198": "5099746997", + "448964829115281": "1810182949", + "630519049099637": "6104582040", + "633292958297641": "657829862", + "646611773265487": "2181092161", + "646663199126819": "14444964843", + "659541365325725": "2126762825", + "661303295928924": "34934377228", + "672395604337332": "2656036443", + "674277855497713": "13068447328", + "674257105193099": "20750304614" + }, + "0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746": { + "767848368968398": "4516000000", + "767317356953914": "3894794928", + "195644797961898": "2774320296", + "767578893549534": "4324000000", + "767885198281509": "4525000000" + }, + "0x49cE991352A44f7B50AF79b89a50db6289013633": { + "179694459833740": "11191996912", + "152944600004612": "25333867824", + "152187983101028": "20341364703", + "189337100682911": "32429850581" + }, + "0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a": { + "571411558289484": "379575000000", + "567901195967146": "379575000000", + "566912175347146": "379575000000", + "565096894810977": "379575000000", + "562079457802308": "379575000000", + "570422537669484": "379575000000" + }, + "0x6820572d10F8eC5B48694294F3FCFa1A640CFf40": { + "229953796446901": "10214275276", + "279078204011052": "40213124800", + "278918417135852": "150000000000" + }, + "0xF28df3a3924eEC94853b66dAaAce2c85e1EB24ca": { + "580206309210505": "40691533200", + "625237593508743": "57077966234", + "210487859842838": "38071600600", + "625219485564848": "18107943895", + "626275249578875": "560773645183", + "630550194403945": "264187543819", + "628045332406298": "509503046565", + "625342322269238": "716489188821", + "628745898149361": "108330248405", + "628554835452863": "191062696498", + "627548252704282": "32873326128", + "630532560490294": "7322407095", + "630814381947764": "69144868490", + "631954507517820": "72530000000", + "632406849288118": "138626226222", + "633534258884283": "42152951000", + "634059948137280": "2422335517", + "632120813393028": "37903890700", + "634027038744068": "4442676388", + "634124637232993": "4588309341", + "634062370472797": "4678526520", + "643304498947850": "30147540000", + "646889214391753": "15352687500", + "663381518809025": "298261184375" + }, + "0x9eD25251826C88122E16428CbB70e65a33E85B19": { + "790034495675975": "19551629204" + }, + "0x2E34723A04B9bb5938373DCFdD61410F43189246": { + "67381548202218": "1447784544" + }, + "0xBd120e919eb05343DbA68863f2f8468bd7010163": { + "767877290752246": "3696126503" + }, + "0xc80102BA8bFB97F2cD1b2B0dA158Dfe6200B33B3": { + "199555864602066": "9037889126", + "264231230920025": "38918733214", + "235857797006441": "935134539", + "361236882058040": "798000000", + "350559425758670": "1570000000" + }, + "0xc9931D499EcAA1AE3E1F46fc385E03f7a47C2E54": { + "868113109554104": "22008658478", + "868094241599222": "2826954882", + "868097068554104": "16041000000" + }, + "0xcBF3d4AB955d0bE844DbAed50d3A6e94Ada97E8b": { + "28061195755964": "2365071" + }, + "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b": { + "605147868070297": "210641200000", + "395508552599182": "2015623893", + "385694828784542": "3478109734", + "632638886261264": "76135000000", + "385719624398436": "3179294885", + "675156678410802": "83910292215", + "664655112978280": "14440162929", + "676829643561375": "10000000000" + }, + "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc": { + "569039352660815": "31631250000", + "564739070155208": "31631250000", + "562785223802308": "31631000000", + "566121962403477": "31631250000", + "572117326695253": "31631250000", + "570064713013715": "31631250000" + }, + "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397": { + "677766736232113": "15476640", + "677766751708753": "56970000", + "664669553141209": "31586150", + "669913003351653": "173562047" + }, + "0x5a34897A6c1607811Ae763350839720c02107682": { + "768720422249176": "56918125000" + }, + "0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab": { + "4952878991603": "2895624803", + "767549755690683": "28541134998", + "866901606412787": "77975000000" + }, + "0xE42Ab6d6dC5cc1569802c26a25aF993eeF76cAA2": { + "836366821524791": "30751377215", + "826269049409236": "66189217241" + }, + "0x224e69025A2f705C8f31EFB6694398f8Fd09ac5C": { + "767578297685072": "595189970" + }, + "0x6D4ed8a1599DEe2655D51B245f786293E03d58f7": { + "768780574044414": "4739952359" + }, + "0x82Ff15f5de70250a96FC07a0E831D3e391e47c48": { + "767984775426960": "4440000000" + }, + "0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c": { + "32010465599710": "2827500000", + "31624276642782": "827500000", + "32180546599710": "468750000", + "28391158520616": "5664262851", + "32163187849710": "827500000" + }, + "0x08Bf22fB93892583a815C598502b9B0a88124DAD": { + "216267857450591": "135654646253", + "153696075190346": "4646730125", + "212137633689993": "2250123666", + "106845721334829": "1203298387", + "153732346730027": "2785196655", + "343880340935457": "483255914580", + "238776826686778": "200000000000", + "380564351115891": "49538069617", + "429570314991709": "111570000000", + "631051500137901": "905703602", + "597930691852522": "135804736673", + "634764548737053": "3085124160", + "429698551658375": "134211333334", + "739030555204088": "67815395117", + "742249934193220": "7411190987", + "744405592731274": "12116315207", + "742257345384207": "9914195956" + }, + "0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E": { + "84457530104959": "209844262" + }, + "0xC997B8078A2c4AA2aC8e17589583173518F3bc94": { + "860392148210254": "160", + "860392157864867": "160", + "860392145297959": "160", + "860392149050869": "160", + "860392147417387": "160", + "860392144669885": "160", + "860392145963716": "160", + "860392148210414": "160", + "860392156525299": "160", + "860392157864387": "160", + "860392157864547": "160", + "860392148210574": "160", + "860392146669393": "160" + }, + "0xfF961eD9c48FBEbDEf48542432D21efA546ddb89": { + "217366504751726": "15360801728", + "782680655946669": "15054264772", + "637169481337437": "33939057545", + "738901635680616": "56253043664", + "801793742639869": "594211870964", + "918618917946000": "264745198412", + "861695221796542": "871141743752", + "911544295653682": "137555494670", + "867596033602708": "317487796774", + "887817858413331": "60074607071" + }, + "0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E": { + "28060962539990": "233215974" + }, + "0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25": { + "27675289563592": "424852362", + "28535940011492": "2679882917", + "4832993651432": "6062526839", + "18053877008891": "7536464852", + "28478232963741": "4310935609", + "28609519766545": "24485910620", + "28878808295843": "21044454", + "28489128712205": "3415187145", + "28538619894409": "4696511290", + "31621005907728": "3270735052", + "31932811480935": "2778618775", + "31662554764532": "8027251632", + "32397855283125": "4013388795", + "32389990399120": "5000000000", + "32360918951598": "13121727522", + "32043149349710": "17014323042", + "32384990399120": "5000000000", + "33215451017861": "10942222277", + "38725047207364": "11695454", + "56115965067566": "796338", + "38722793672289": "815745978", + "41335478000228": "3615511208", + "41324024219507": "7666428889", + "51178433171006": "17393391747", + "41345614042031": "7918078619", + "67097301632169": "5610342", + "67378675867044": "94557397", + "67631612435034": "30000000000", + "70537771802647": "56196283", + "72555897840603": "58385936", + "84597765892347": "109464350", + "87766450253292": "20614776328", + "84560732229197": "121127500", + "88980798195330": "135261670", + "241371451997074": "27938162860", + "219431901448807": "45604467983", + "646734467107104": "4886194063", + "656967976374704": "5530910102", + "675156493696266": "184714536", + "682013052979739": "10000000000", + "763753988466256": "74999", + "830131397455756": "999999999934", + "845556097862591": "298566425632", + "859427528207447": "199999999855", + "836397572902006": "908406524078", + "886287242438488": "169349127003", + "899998398985209": "210400000000", + "915279020630858": "17257622755", + "886608357396062": "83959273729", + "915306539471611": "36769914561" + }, + "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF": { + "911892086318462": "14908452858", + "679985431655992": "5054528890", + "679499042972244": "1010851037" + }, + "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f": { + "782603527725793": "19357500000", + "769134792577607": "1295600000", + "770964524215275": "10866330177", + "783356308498157": "20255000000" + }, + "0x38f733Fb3180276bE19135B3878580126F32c5Ab": { + "33291076017861": "103108618", + "767642320985579": "562218595", + "767122453744233": "2293110488" + }, + "0x82a8409a264ea933405f5Fe0c4011c3327626D9B": { + "870103302085771": "48730138326" + }, + "0xf6F46f437691b6C42cd92c91b1b7c251D6793222": { + "859627551039552": "21971659696", + "680647231967700": "28424235201" + }, + "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf": { + "786871494302699": "450790656", + "786871945093355": "932517247" + }, + "0xB615e3E80f20beA214076c463D61B336f6676566": { + "646401611359546": "35903115000", + "157631883911600": "6658333333", + "452052986565565": "7692307692" + }, + "0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91": { + "586109598020889": "5946000000" + }, + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51": { + "31587707407402": "1433039440", + "811172285844826": "7130903829", + "680815156134799": "3527890346" + }, + "0x09Ea3281Eeb7395DaD7851E7e37ad6aff9d68a4c": { + "444956187767910": "17680578730" + }, + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254": { + "849346368621598": "11433794528", + "741073041489777": "58475807020", + "680570676055231": "12790345862", + "811179416748655": "18986801346", + "811161311356507": "10974488319", + "861496906364983": "7066180139" + }, + "0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458": { + "385709915879528": "1157905014" + }, + "0xF493Fd087093522526b1fF0A14Ec79A1f77945cF": { + "783376685764145": "80810000" + }, + "0x032865e6e27E90F465968ffc635900a4F7CEEB84": { + "726382636526311": "4880443948" + }, + "0x55179ffEFc2d49daB14BA15D25fb023408450409": { + "224456428823174": "10654918204", + "224532980094102": "6674611456", + "232392633744281": "6488496940", + "28878829340297": "26089431820", + "224524060683299": "8919410803", + "232609461916521": "12502396040", + "249755146143756": "4711804625", + "250087971175726": "5374122600", + "511001020567237": "58714000000", + "764092476794036": "1122048723", + "766172653433120": "8473331791" + }, + "0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4": { + "740490199664782": "19348691464", + "740487197968911": "3001695871" + }, + "0x0519425dD15902466e7F7FA332F7b664c5c03503": { + "680675656202901": "131855360654", + "680401530872218": "47459625794", + "680464603246920": "95341770600", + "848258228820360": "31773910198" + }, + "0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6": { + "335865006920670": "298975120881" + }, + "0xB6CC924486681a1ca489639200dcEB4c41C283d3": { + "91035130926027": "100278708038", + "86557982815957": "47171577753", + "107705159415631": "32372691975", + "107737532107606": "20680630588", + "3761444092233": "30919467843", + "331897561408947": "208972688693", + "189221726611474": "50441908776" + }, + "0x6B7F8019390Aa85b4A8679f963295D568098Cf51": { + "4970156360204": "42435663718" + }, + "0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df": { + "726112334601716": "9764435234" + }, + "0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371": { + "4952867558328": "11407582" + }, + "0x632f3c0548f656c8470e2882582d02602CfF821C": { + "7390511503423": "5321466970" + }, + "0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4": { + "7395832970393": "10000000000" + }, + "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70": { + "20300839138392": "1", + "141106419995137": "1466439378", + "141104093757416": "2326237721", + "633362764561998": "8976176800", + "157543059307151": "3855741975" + }, + "0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE": { + "75850623491707": "1000000000", + "20300839138393": "7813058830", + "56088817072755": "1373181360", + "190753476210648": "20871314978" + }, + "0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E": { + "12977130692247": "21105757579" + }, + "0x0d619C8e3194b2aA5eddDdE5768c431bA76E27A4": { + "18061413473743": "54469256646" + }, + "0xE9D18dbFd105155eb367fcFef87eAaAFD15ea4B2": { + "7405832970393": "10000000000" + }, + "0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81": { + "28079734718067": "3000000", + "61087221727512": "21956843937", + "622961983447336": "14023789313" + }, + "0x52f3F126342fca99AC76D7c8f364671C9bb3fC67": { + "28378489699267": "3525661709", + "28527337307937": "8602703555", + "682719567415141": "1233351074", + "794061190682938": "105670000000", + "798295877222658": "224080000000", + "826629538553740": "1000261800000", + "848319451171993": "979453120800", + "859906424280743": "149236172", + "859906573516915": "309959561", + "802468945375515": "612750000000", + "859906264310743": "159970000", + "859905651255175": "304954128", + "859905956209303": "308101440" + }, + "0xC1E64944de6BEE91752431fF83507dCBd57E186b": { + "28418094567952": "5402290085" + }, + "0x12B9D75389409d119Dd9a96DF1D41092204e8f32": { + "31566901757266": "11663342444" + }, + "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921": { + "573520471044196": "83338470769", + "31614934747614": "6046055693" + }, + "0xD99f87535972Ba63B0fcE0bC2B3F7a2aF7193886": { + "32189929099710": "14262400000", + "530008483678461": "125000000000", + "581919946089978": "3352496869" + }, + "0x399baf8F9AD4B3289d905f416bD3e245792C5fA6": { + "31881074513162": "2271791105" + }, + "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6": { + "601721714889098": "16779875070", + "634408726140467": "5874873919", + "33152426109285": "950000000", + "402285929035461": "12155421305", + "376451535261141": "20462887750", + "640269368983719": "5646988248", + "636816242727841": "9388515625", + "644531424959665": "3374500000" + }, + "0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6": { + "33126339744834": "7" + }, + "0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545": { + "33151381475806": "1044633475", + "643087290738377": "1586716252" + }, + "0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b": { + "32945625517253": "161247227588" + }, + "0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0": { + "38718513657669": "4030014620" + }, + "0x284f942F11a5046a5D11BCbEC9beCb46d1172512": { + "258469319874650": "96515746089", + "51088313644799": "41188549146" + }, + "0x9A5d202C5384a032473b2370D636DcA39adcC28f": { + "41274338068902": "10701754385" + }, + "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248": { + "41372978028598": "66903217", + "41353532120650": "16752841008", + "264270149653239": "19569741057" + }, + "0xF3F03727e066B33323662ACa4BE939aFBE49d198": { + "51176956609104": "1473767387" + }, + "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe": { + "87114876540897": "188352182040", + "267499749038976": "70064409829", + "267398540448510": "101208590466", + "45739702462830": "16499109105", + "250563494637659": "51857289010", + "573375993529429": "36792124887", + "870607247677965": "2137555078286" + }, + "0x6A7E0712838A0b257C20e042cf9b6C5E910F221F": { + "50390109547988": "13275316430" + }, + "0x6bDd8c55a23D432D34c276A87584b8A96C03717F": { + "52187916983200": "19763851047", + "52207680834247": "19747984525" + }, + "0xd80eC2F30FB3542F0577EeD01fBDCCF007257127": { + "56244128247241": "16889348072" + }, + "0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303": { + "59999867425096": "354422482014" + }, + "0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2": { + "327607470128575": "221232078910", + "67661612435034": "7500000000", + "326657149277910": "365524741141" + }, + "0x3a1Bc767d7442355E96BA646Ff83706f70518dAA": { + "384808251979965": "221162082281", + "60534460423689": "37943648860", + "60613921072549": "337056974653", + "428730219817416": "346162069888", + "385114975062246": "68895138576", + "444016501963211": "63083410136", + "510804923776436": "196096790801", + "460460113879903": "200388674016" + }, + "0xFA2a3c48b85D6790B943F645Abf35A1E12770D09": { + "73000545518997": "61655978309" + }, + "0x084a35aE3B2F2513FF92fab6ad2954A1DF418093": { + "73709873347859": "105615118195", + "73701699840921": "8173506938", + "141762199046997": "15951445054" + }, + "0xd5eF94eC1a13a9356C67CF9902B8eD22Ebd6A0f6": { + "75003475298908": "50657156720", + "74205510166681": "49996694855" + }, + "0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22": { + "636931384475422": "19937578021", + "634041962664177": "2442109027", + "639795300300187": "86043643136", + "569797745263715": "21159782439", + "76099819242179": "19406193406", + "640684697352708": "201965000000" + }, + "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43": { + "67339711337633": "38964529411", + "826344351400868": "285187152872" + }, + "0x085656Bd50C53E7e93D19270546956B00711FE2B": { + "72933498326539": "67047192458" + }, + "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7": { + "569070983910815": "13702657500", + "75686171721947": "63685247214", + "564444697090208": "27405315000", + "143377079152995": "39159248155", + "566108259745977": "13702657500", + "572415925695253": "13702657500", + "569784042606215": "13702657500" + }, + "0x84649973923f8d3565E8520171618588508983aF": { + "76120188262565": "6666000000" + }, + "0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714": { + "634748469673424": "4160000000", + "76119225435585": "962826980", + "579111175545954": "3774608352" + }, + "0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb": { + "76137278825671": "1990688953", + "643070034423361": "6711451596" + }, + "0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5": { + "80481878020743": "2335790276267", + "131490207784127": "4068458197507" + }, + "0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3": { + "78446810994423": "97830465871" + }, + "0x19CB3CfB44B052077E2c4dF7095900ce0b634056": { + "76126854262565": "9614320026" + }, + "0xdF02A9ba6C6A5118CF259f01eD7A023A4599a945": { + "180153233360660": "337822422793", + "78846823008925": "398026347880", + "170722823799402": "220235851424", + "120279046392813": "545096922836", + "171260005516525": "243534672333" + }, + "0xE48436022460c33e32FC98391CD6442d55CD1c69": { + "76136468582591": "810243080" + }, + "0xF074d66B602DaE945d261673B10C5d6197Ae5175": { + "84225396093354": "186085213803", + "84131865356785": "93530736569", + "84823174960098": "181953842566" + }, + "0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569": { + "76402185409195": "22516244343" + }, + "0x4932Ad7cde36e2aD8724f86648dF772D0413c39E": { + "83129576696094": "517995825113" + }, + "0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB": { + "83647572521207": "18782949347", + "271861492103884": "19812902768" + }, + "0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849": { + "84451783274191": "5746830768", + "644558639373403": "6740000000", + "644583603532321": "6316834733" + }, + "0x1B89a08D82079337740e1cef68c571069725306e": { + "87019591255367": "29419590331" + }, + "0xE3546C83C06A298148214C8a25B4081d72a704B4": { + "84411481307157": "40301967034" + }, + "0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96": { + "84457739949221": "34043324970" + }, + "0x0c492D61651965E3096740306F8345516fCd8990": { + "139281871602326": "350250000000", + "119152717526597": "785756790998", + "86355905487408": "70525182520" + }, + "0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6": { + "87489402650273": "92067166902" + }, + "0x6384F5369d601992309c3102ac7670c62D33c239": { + "86426430669928": "93757812192", + "120202334516814": "76711875999", + "140665414631918": "364919687105" + }, + "0xCd3F4c42552F24d5d8b1f508F8b8d138b01af53F": { + "87303228722937": "52035709332" + }, + "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5": { + "88448210835372": "10000000", + "88303018180293": "145192655079", + "152141663101028": "46320000000", + "201463917097433": "98698631369", + "88448220835372": "1000000", + "340872426299533": "273300000000", + "638362383116869": "152606794771", + "640276210842856": "176025000000" + }, + "0xdbC529316fe45F5Ce50528BF2356211051fB0F71": { + "208405652247102": "90779703328", + "88838287575483": "14596261680" + }, + "0x262126FD37D04321D7f824c8984976542fCA2C36": { + "92555674061199": "101864651658" + }, + "0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151": { + "92502053320361": "53620740838" + }, + "0x922d012c7E8fCe3C46ac761179Bdb6d16246782D": { + "88955798195330": "25000000000", + "624243295610454": "69069767441" + }, + "0xcA580c4e991061D151021B13b984De73B183b06e": { + "92657538712857": "57796799283" + }, + "0x085E98CD14e00f9FC3E9F670e1740F954124e824": { + "212056471788327": "13304471734", + "210786176949332": "52683422286", + "93029383981954": "164150000000" + }, + "0x219312542D51cae86E47a1A18585f0bac6E6867B": { + "92976132590563": "20088923958" + }, + "0x57068722592FeD292Aa9fdfA186A156D00A87a59": { + "92388384975723": "113668344638" + }, + "0x41954b53cFB5e4292223720cB3577d3ed885D4f7": { + "96865545670304": "150940785067" + }, + "0x30d0DEb932b5535f792d359604D7341D1B357a35": { + "92715335512140": "260797078423" + }, + "0x7C28205352AD687348578f9cB2AB04DE1DcaA040": { + "107456319203211": "248840212420" + }, + "0xe1887385C1ed2d53782F0231D8032E4Ae570B3CE": { + "106939782630762": "37787441969", + "107006567146722": "204820208972" + }, + "0x5004Be84E3C40fAf175218a50779b333B7c84276": { + "106977570072731": "28997073991", + "221600570194728": "78967589731" + }, + "0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0": { + "109550819978942": "29596581820", + "664192189543226": "178812339846" + }, + "0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e": { + "247564500489746": "77337849888", + "107211387355694": "152715666195" + }, + "0x0e9dc8fFc3a5A04A2Abdd5C5cBc52187E6653E42": { + "169527800229955": "111542849445", + "109610910516612": "2010899864188", + "169639343079400": "513789932910", + "144223529430945": "545765404695", + "147066818462074": "337282676156", + "175221338470718": "617705249553", + "176478044420971": "133802493354", + "444079585373347": "416478037426", + "176611846914325": "772811138936", + "470292561625193": "5649346694", + "484009900682155": "383215316641", + "470291561625193": "1000000000" + }, + "0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce": { + "127528827082243": "39512949678", + "119029547658504": "123169868093", + "160628980873629": "19356262201", + "170195411937955": "8450043391", + "164214276736440": "18026209521", + "170203861981346": "8448132900", + "181045848231167": "5350129812", + "170328857704391": "5158102503", + "207320312706756": "667581458244", + "181051198360979": "21920789581", + "233235906805369": "141617495951", + "238465191757241": "47893657519", + "233457650815069": "447408202484" + }, + "0x26f781D7f59c67BBd16acED83dB4ba90d1e47689": { + "109548569427007": "2250551935" + }, + "0xF28841b27FD011475184aC5BECadd12a14667e04": { + "130704201920174": "4115837253" + }, + "0xbb9dDEE672BF27905663F49bf950090050C4e9ad": { + "107364103021889": "81983801879" + }, + "0xEd52006B09b111dAa000126598ACD95F991692D6": { + "192581109113045": "626546484708", + "140159806831757": "169638004024", + "129895350156525": "300728504831" + }, + "0xD1373DfB5Ff412291C06e5dFe6b25be239DBcf3E": { + "120824143315649": "152198738048" + }, + "0xcEB03369b7537eB3eCa2b2951DdfD6D032c01c41": { + "138187077038470": "17978341081" + }, + "0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb": { + "139632121602326": "73702619695" + }, + "0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52": { + "141778150492051": "8228218644" + }, + "0x6AB3E708231eBc450549B37f8DDF269E789ed322": { + "193365582223281": "558500000000", + "198989464385361": "323387400000", + "173645978954771": "364480000000", + "177963922699291": "567750000000", + "139738901832021": "217662351018", + "385698306894276": "11608985252", + "385686708784542": "8120000000", + "402298084456766": "29146976013", + "403324142505816": "17337534783", + "525484298746221": "68490328982", + "573159215088219": "7613761316", + "588069376316494": "53235000000", + "588373196066494": "53235000000", + "635372490238881": "53837773087", + "635125146283365": "5443675000", + "637610400582193": "150901692840", + "655777079955872": "34680190734", + "588677015816494": "53235000000", + "676880184584605": "81212739087", + "659046307218408": "140966208215", + "675881740999403": "58060000000", + "657007246656249": "26448621220", + "682023052979739": "49057997400", + "744289021047316": "8009578710" + }, + "0x4497aAbaa9C178dc1525827b1690a3b8f3647457": { + "141593397391504": "168801655493" + }, + "0x1904e56D521aC77B05270caefB55E18033b9b520": { + "158936502760340": "149268238078", + "141486185118672": "50461870885" + }, + "0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE": { + "267347914229767": "50626218743", + "143354831843541": "653648140", + "595274550370334": "30610750000" + }, + "0x0c940e42D91FE16E0f0Eccc964b26dde7808ab5d": { + "143705954052286": "43270525811" + }, + "0xc9EA118C809C72ccb561Dd227036ce3C88D892C2": { + "141786378710695": "123683710973" + }, + "0xbFd7ddd26653A7706146895d6e314aF42f7B18D5": { + "143360093032540": "6037629659", + "251017966304542": "6533099760", + "200612110581740": "13299884075", + "208198769791980": "115963890107", + "212686075187098": "34585101999" + }, + "0xae0aAF5E7135058919aB10756C6CdD574a92e557": { + "143154831843541": "200000000000" + }, + "0xF352e5320291298bE60D00a015b27D3960F879FA": { + "882405333355937": "103149205776", + "870152032882089": "35607756446", + "143355485491681": "4607540859" + }, + "0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd": { + "283231288673626": "85392080830", + "143431239052286": "274715000000", + "160171656111929": "64458305378", + "428537479118543": "192740698873", + "166312311338905": "4355746398" + }, + "0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8": { + "141954294169149": "30687677344" + }, + "0x54CE05973cFadd3bbACf46497C08Fc6DAe156521": { + "150357663657575": "3286403040" + }, + "0x136e6F25117aF5e5ff5d353dC41A0e91F013D461": { + "143944826482554": "122522870889" + }, + "0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F": { + "194136445740033": "669600000000", + "525752878043783": "4019068358051", + "151059913817209": "718187220626", + "398058157938414": "131956563555", + "497621309855122": "579087801478", + "574443423459533": "291778458931", + "575412697794786": "213651821494" + }, + "0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B": { + "430072033491709": "1719000000", + "156818552805224": "462200000000", + "430073752491709": "1032300000", + "156811622805224": "6930000000" + }, + "0x8325D26d08DaBf644582D2a8da311D94DBD02A97": { + "232621964312561": "2641422510", + "153701253487878": "11008858783" + }, + "0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5": { + "152135543630806": "6119470222", + "207252364348652": "17964245672" + }, + "0x354F7a379e9478Ad1734f5c48e856F89E309a597": { + "152084889110747": "12083942493" + }, + "0xF7cCA800424e518728F88D7FC3B67Ed6dFa0693C": { + "153695131131689": "944058657" + }, + "0x406874Ac226662369d23B4a2B76313f3Cb8da983": { + "338018255707329": "357159363004", + "153232193851712": "462937279977" + }, + "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714": { + "159508675748318": "2305000000", + "159580351546434": "4610000000" + }, + "0x07f7cA325221752380d6CdFBcFF9B5E5E9EC058F": { + "158554389505642": "83262125763" + }, + "0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5": { + "159510980748318": "69370798116", + "340408059304271": "57935578436" + }, + "0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5": { + "158532389505642": "22000000000" + }, + "0x2bDB0cB25Db0012dF643041B3490d163A1809eE6": { + "157417754524248": "84608203869" + }, + "0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235": { + "156417138708810": "394484096414", + "181268415341323": "347087625953" + }, + "0x533ac5848d57672399a281b65A834d88B0b2dF45": { + "170545003992988": "34261572899", + "153772625926682": "5169447509" + }, + "0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d": { + "151778101037835": "204744106703", + "430070314991709": "1718500000" + }, + "0x328e124cE7F35d9aCe181B2e2B4071f51779B363": { + "159684783271420": "51108156265" + }, + "0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C": { + "157548809336026": "4593795975" + }, + "0x058107C8b15Dd30eFF1c1d01Cf15bd68e6BEf26F": { + "165755530385064": "6995532243" + }, + "0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04": { + "236912893424045": "96525595990", + "265744121929071": "75907148840", + "160580454568520": "48526305109", + "265652667275489": "38978848813" + }, + "0xc59821CBF1A4590cF659E2BA74de9Bbf7612E538": { + "177384658053261": "218419400000" + }, + "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2": { + "177625575170087": "338347529204", + "178531672699291": "206297640000" + }, + "0x8709DD5FE0F07219D8d4cd60735B58E2C3009073": { + "190814678933595": "29696822758", + "173486508329974": "159470624797" + }, + "0xaaEB726768606079484aa6b3715efEEC7E901D13": { + "164232302945961": "52342902973" + }, + "0xE8c22A092593061D49d3Fbc2B5Ab733E82a66352": { + "337979232649148": "39023058181", + "183434157323457": "339502974396", + "224694807630841": "17130345477", + "178737970339291": "17070516", + "179688972798194": "5487035546", + "395503586164317": "3623888698", + "522850564349158": "54917559198" + }, + "0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31": { + "179882609606308": "176238775506" + }, + "0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e": { + "174758503486224": "44765525061" + }, + "0x7310E238f2260ff111a941059B023B3eBCF2D54e": { + "190777349504893": "37329428702", + "174098989199832": "54763564665" + }, + "0xE67ae530c6578bCD59230EDac111Dd18eE47b344": { + "182723600550760": "20607463066" + }, + "0x06E6932ed7D7De9bcF5bD7a11723Dc698D813F7e": { + "213222544962724": "6979294808", + "264642406284363": "14384938107", + "180060166122732": "11074540309" + }, + "0xE3faBA780BDe12D3DFEB226A120aA4271f1D72B2": { + "180847346911085": "123280084894", + "294551473507760": "126483466450", + "218376915754234": "21880478375", + "207987894165000": "1388897527", + "182652146329552": "71454221208", + "384499544293676": "63068683017", + "339023114212775": "26063720697" + }, + "0x7125B7C60Ec85F9aD33742D9362f6161d403EC92": { + "185793383994705": "206785636228" + }, + "0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0": { + "175144400293594": "1800060629" + }, + "0xc4c89a41Ad3050Bb82deE573833f76f2c449353e": { + "188767961279069": "41764894516", + "179511598042538": "177374755656" + }, + "0xC21a7Fe78A0Fb9DF4Da21F2Ce78c76BdAe63e611": { + "189700989263573": "432187654500", + "186249884026701": "244753927997" + }, + "0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C": { + "634495210451551": "1561000000", + "186248277026701": "1607000000" + }, + "0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F": { + "184026530861047": "134623539909" + }, + "0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A": { + "185180686460512": "227508332382" + }, + "0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37": { + "187153746256456": "42281642936" + }, + "0x09DaDF51d403684A67886DB545AE1703d7856056": { + "188816886044153": "97790380587" + }, + "0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09": { + "187326232141980": "250596023597" + }, + "0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A": { + "634499611419046": "143420000000", + "189397241850520": "74656417530" + }, + "0xbf9Db3564c22fd22FF30A8dB7f689D654Bf5F1fD": { + "189272168520250": "64932162661", + "188914676424740": "36429294837" + }, + "0xF4B2300e02977720D590353725e4a73a67250bf3": { + "191494050615925": "277271514945" + }, + "0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3": { + "195647572282194": "827187570265" + }, + "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D": { + "632405487158023": "1362130095", + "634781609311398": "796726164", + "190956833027662": "37217588263" + }, + "0x567dA563057BE92a42B0c14a765bFB1a3dD250be": { + "198134260543486": "44675770159" + }, + "0x0846Bf78c84C11D58Bb2320Fc8807C1983A2797C": { + "198089537823139": "44722720347", + "198923674691811": "47702676650" + }, + "0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70": { + "191150584432777": "327574162163" + }, + "0xD5351308c8Cb15ca93a8159325bFb392DC1e52aC": { + "195629194961898": "15603000000", + "195581149274761": "31206000000" + }, + "0x3638570931B30FbBa478535A94D3f2ec1Cd802cB": { + "205770700307726": "85677608975", + "197761671552490": "327866270649" + }, + "0x6fBDc235B6f55755BE1c0B554469633108E60608": { + "191901677757094": "262000796007" + }, + "0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76": { + "199312851785361": "21012816705" + }, + "0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee": { + "199564902491196": "22657073802" + }, + "0x0A7ED639830269B08eE845776E9b7a9EFD178574": { + "194806045740033": "11365698463" + }, + "0x15682A522C149029F90108e2792A114E94AB4187": { + "201115507781971": "9954888600", + "201125462670571": "20006708080" + }, + "0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36": { + "201091928088141": "17624219070" + }, + "0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f": { + "201441256822560": "15818274887" + }, + "0x7eFaC69750cc933e7830829474F86149A7DD8e35": { + "210870560056118": "293011632289", + "200844771244188": "179562380519", + "200844770244188": "1000000" + }, + "0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0": { + "201260587940851": "66013841091" + }, + "0x7c9551322a2e259830A7357e436107565EA79205": { + "209578881176990": "44602710850", + "581983286394610": "114580000000", + "430048399348994": "21915642715", + "273679685585512": "20502770382", + "564169770917708": "253050000000", + "650979810428062": "126027343719" + }, + "0x09147d29d27E0c8122fC0b66Ff6Ca060Cda40aDc": { + "202315456976486": "78768160379", + "279211401156441": "194252578254" + }, + "0x61C562283B268F982ffa1334B643118eACF54480": { + "205756979635888": "13720671838" + }, + "0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95": { + "203417856117845": "45234008042" + }, + "0xB5030cAc364bE50104803A49C30CCfA0d6A48629": { + "210588064020582": "198112928750" + }, + "0xEF64581Af57dFEc2722e618d4Dd5f3c9934C17De": { + "212524932402007": "66903513016", + "325411470253310": "45687893013" + }, + "0x80771B6DC16d2c8C291e84C8f6D820150567534C": { + "213472057933152": "186730161037", + "213457800486791": "14257446361" + }, + "0xCfCF5A55708Cd1Ae90fdcad70C7445073eB04d94": { + "211254541356793": "73487260147" + }, + "0x0B7021897485cC2Db909866D78A1D82657A4be6F": { + "257681307450277": "39073687143", + "212206952942498": "44063880952" + }, + "0xcD26f79e60fd260c867EEbAeAB45e021bAeCe92D": { + "213450670801238": "7129685553" + }, + "0x59b9540ee2A8b2ab527a5312Ab622582b884749B": { + "213449770801238": "900000000" + }, + "0xD0126092d4292F8DC755E6d8eEE8106fbf84583D": { + "215276351515823": "163268617108", + "224711937976318": "78077936614" + }, + "0x368a5564F46Bd896C8b365A2Dd45536252008372": { + "212251016823450": "186137117756" + }, + "0xDB2480a43C79126F93Bd5a825dc0CBa46d7C0612": { + "212146553068969": "1874397", + "315467928069739": "2143332" + }, + "0xD49946B3dA0428fE4E69c5F4D6c4125e5D0bf942": { + "216583912351751": "103935819570", + "216493767375229": "90144976522" + }, + "0xde8351633c96Ac16860a78D90D3311fa390182BF": { + "216408164726556": "85602648673" + }, + "0x0A0761a91009101a86B7a0D786dBbA744cE2E240": { + "217056878248608": "5610925897", + "216403512096844": "4652629712" + }, + "0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20": { + "219573347561330": "3194476000" + }, + "0x0F0520237DB57A05728fa0880F8f08A1fd57ccff": { + "215266253377951": "10098137872" + }, + "0xeeBF4Ea438D5216115577f9340cD4fB0EDD29BD9": { + "273722951668693": "99708443352", + "218793700820489": "4057575515" + }, + "0x821bb6973FdA779183d22C9891f566B2e59C8230": { + "218770430128287": "11235751123" + }, + "0x90B113Cf662039394D28505f51f0B1B4678Cc3b5": { + "219654135446081": "12564997296" + }, + "0x3BD4c721C1b547Ea42F728B5a19eB6233803963E": { + "218781665879410": "12034941079" + }, + "0xc32B1e77879F3544e629261E711A0cc87ae01182": { + "220214261039906": "10590975372" + }, + "0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287": { + "219577491138396": "76644307685" + }, + "0x0e56C87075CD53477C497D5B5F68CdcA8605cBF7": { + "222731836820687": "2185380063", + "250764687174533": "7528848316" + }, + "0x97Ada2E26C06C263c68ECCe43756708d0f03D94A": { + "220240212248773": "104797064592" + }, + "0x5edd743E40c978590d987c74912b9424B7258677": { + "221809097720471": "4678453384" + }, + "0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81": { + "227523128809396": "273973101221" + }, + "0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E": { + "220231823417551": "8388831222" + }, + "0x110dfBb05F447880B9B29206c1140C07372090dc": { + "221695023794553": "25998872322" + }, + "0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7": { + "261159862360092": "767049891172", + "274482355441400": "3457786919155", + "222734022200750": "13846186217", + "223632980545856": "53707306278" + }, + "0x019285701d4502df31141dF600A472c61c054e63": { + "224271169428524": "106658006145", + "233905059017553": "102049327959" + }, + "0xF8444CF11708d3901Ee7B981b204eD0c7130fB93": { + "225583722538961": "958053604507", + "307303030494588": "1004761026937", + "224790015912932": "793706626029", + "266139253735969": "483993740256", + "226541776143468": "624535957327" + }, + "0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E": { + "228395750082372": "40000269904" + }, + "0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E": { + "227393755294232": "90805720025" + }, + "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54": { + "227908990940664": "435600000000", + "228474367102286": "221452178690" + }, + "0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190": { + "264360680476760": "16145852467", + "228441190352276": "2284115100" + }, + "0xF57c5533a9037E25E5688726fbccD03E09738aCd": { + "229538973689527": "15075579651" + }, + "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a": { + "228344590940664": "13645890242", + "404814012582428": "13502469920" + }, + "0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a": { + "228358236830906": "37513251466" + }, + "0x99997957BF3c202446b1DCB1CAc885348C5b2222": { + "237800674733611": "66551024044", + "224631428823174": "22606820288" + }, + "0x49444e6d0b374f33c43D5d27c53d0504241B9553": { + "272768921777231": "49267287724", + "264656791222470": "47931342976", + "228469619062286": "4748040000", + "311332190668745": "92255508651" + }, + "0x4d26976EC64f11ce10325297363862669fCaAaD5": { + "232161195486445": "95356406608" + }, + "0x08b6e06F64f62b7255840329b2DDB592d6A2c336": { + "232150221282524": "10974203921" + }, + "0xFe2da4E7e3675b00BE2Ff58c6a018Ed06237C81D": { + "234243469443007": "14172600137" + }, + "0xDa12B5133e13e01d95f9a5BE0cc61496b17E5494": { + "236714656093503": "116182892576" + }, + "0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E": { + "239409804111193": "19030292542", + "234344282043144": "19712324157", + "236283093284962": "59063283900", + "235154344754292": "94410708993" + }, + "0xe2282eA0D41b1a9D99B593e81D9adb500476C7C5": { + "236830838986079": "43499184625" + }, + "0x93b34d74a134b403450f993e3f2fb75B751fa3d6": { + "235668949340980": "139782800000" + }, + "0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21": { + "257720381137420": "195286958683", + "237297173028709": "34185829440", + "257002346228995": "490552229489", + "237610202115099": "190472618512" + }, + "0xFD7998c9c23aa865590fd3405F19c23423a0611B": { + "237331358858149": "86400000000" + }, + "0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54": { + "230525695001648": "46558365900" + }, + "0xEC9F16FAacD809ED3EC90D22C92cE84C5C115FAC": { + "236342156568862": "24584000000", + "236374619164402": "16484054460" + }, + "0xdF3A7C30313779D3b6AA577A28456259226Ff452": { + "237417758858149": "30553597699" + }, + "0xd6E52faa29312cFda21a8a5962E8568b7cfe179a": { + "241295864883165": "13659859623" + }, + "0x27320AAc0E3bbc165E6048aFc0F28500091dca73": { + "240574257021760": "14827650417" + }, + "0x5F067841319aD19eD32c432ac69DcF32AC3a773F": { + "240506937851712": "67319170048" + }, + "0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60": { + "245060804994381": "1401270600" + }, + "0x5D177d3f4878038521936e6449C17BeCd2D10cBA": { + "240908580751005": "28063592168" + }, + "0x34Aec84391B6602e7624363Df85Efe02A1FF35f5": { + "248138998423714": "100498286663" + }, + "0x5A803cD039d7c427AD01875990f76886cC574339": { + "243539818135023": "823622609198", + "242331279929909": "1009627934604" + }, + "0xf5f165910e11496C2d1B3D46319a5A07f09Bf2D9": { + "250246936110653": "202824840027" + }, + "0xe4082AaCDEd950C0f21FEbAC03Aa6f48D15cd58D": { + "245062206264981": "47164005800" + }, + "0x220c12268c6f1744553f456c3BF161bd8b423662": { + "250615351926669": "14754910654" + }, + "0xd380b5Fed7b9BaAFF7521aA4cEfC257Db3043d26": { + "250506377976775": "57116660884" + }, + "0xcd1E27461aF28E23bd3e84eD87e2C9a281bF0d9F": { + "250952013915742": "65952388800" + }, + "0xD2927a91570146218eD700566DF516d67C5ECFAB": { + "250110185298326": "5001219", + "400870039915076": "264918608815" + }, + "0x349E8490C47f42AB633D9392a077D6F1aF4d4c85": { + "250842519878117": "25098501333" + }, + "0x997563ba8058E80f1E4dd5b7f695b5C2B065408e": { + "250927013915742": "25000000000" + }, + "0x4588a155d63CFFC23b3321b4F99E8d34128B227a": { + "256610609452753": "98878990000" + }, + "0x0948934A39767226E1FfC53bd0B95efa90055178": { + "250490385992189": "15991984586" + }, + "0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1": { + "250822439474701": "20080403416" + }, + "0xE6375dF92796f95394a276E0BA4Efc4176D41D49": { + "254356352427847": "218136367740" + }, + "0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca": { + "256709488442753": "11960421970" + }, + "0xF4a04D998A8d6Cf89C9328486a952874E50892DC": { + "259966066593219": "50467275310" + }, + "0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f": { + "267608940617108": "47689884851", + "261926912251264": "43323014052" + }, + "0x317B157e02c3b5A16Efc3cc4eb26ACcC1cfF24e3": { + "258450328339971": "18991534679" + }, + "0x26AFBbC659076B062548e8f46D424842Bc715064": { + "258943234658706": "94067068214" + }, + "0xda333519D92b4D7a83DBAACB4fd7a31cDB4f24A4": { + "263800369352925": "23097239478", + "264376826329227": "46078127416" + }, + "0x299e4B9591993c6001822baCF41aff63F9C1C93F": { + "297745264892311": "766254121133", + "267656630501959": "150336454905", + "295137332480012": "2607932412299", + "260069118609084": "794705201763" + }, + "0x215F97a79287BE4192990FCc4555F7a102a7D3DE": { + "257934797532327": "19124814552" + }, + "0xbFC415Eb25AaCbEEf20aE5BC35f1F4CfdE9e3FC6": { + "260863823810847": "296038549245" + }, + "0xae5c0ff6738cE54598C00ca3d14dC71176a9d929": { + "266124689762314": "14563973655" + }, + "0xF1F2581Bd9BBd76134d5f111cA5CFF0a9753FD8E": { + "263961508176260": "269722743765", + "263823466592403": "138041583857" + }, + "0xB3561671651455D2E8BF99d2f9E2257f2a313a2c": { + "299029773648836": "103299890816", + "262002480116391": "61656029023", + "299623525856977": "96553480454", + "341990086557247": "17007566134", + "340830099921304": "42326378229", + "341635869146462": "53919698039", + "343614880915811": "56782954188" + }, + "0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb": { + "264289719394296": "13882808319" + }, + "0xCB2d95308f1f7db3e53E4389A90798d3F7219a7e": { + "264313406757022": "47273719738" + }, + "0x16b5e68f83684740b2DA481DB60EAb42362884b9": { + "267337779284239": "10134945528" + }, + "0x08507B93B82152488512fe20Da7E42F4260D1209": { + "267232645895270": "69760982441", + "318245908052700": "104583299835" + }, + "0x0690166a66626C670be8f1A09bcC4D23c0838D35": { + "264422904456643": "16535828993" + }, + "0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797": { + "267140974896619": "10071394154" + }, + "0x990cf47831822275a365e0C9239DC534b833922D": { + "267334127487509": "3651796730" + }, + "0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5": { + "266029676145669": "95013616645", + "428383641973567": "133886156698", + "265691646124302": "52475804769" + }, + "0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5": { + "267569813448805": "1716069", + "589787132206086": "2588993459" + }, + "0x28aB25Bf7A691416445A85290717260971151eD2": { + "267322616665401": "11510822108" + }, + "0x3BD142a93adC0554C69395AAE69433A74CFFc765": { + "267825806174639": "10928727606", + "325258451698078": "141509657939" + }, + "0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106": { + "271881305006652": "99131397538" + }, + "0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01": { + "270431731940789": "35213496314" + }, + "0x59dC1eaE22eEbD6CfbD144ee4b6f4048F8A59880": { + "267569815164874": "20246736273" + }, + "0x81eee01e854EC8b498543d9C2586e6aDCa3E2006": { + "267836734902245": "198456386297", + "273007832358749": "292267679049" + }, + "0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968": { + "273349081469206": "22041535128" + }, + "0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB": { + "272758111777231": "10810000000" + }, + "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD": { + "267825369582182": "436592457", + "315755940953422": "929512985", + "273716745936018": "6205732675" + }, + "0x82CFf592c2D9238f05E0007F240c81990f17F764": { + "273671446460892": "8239124620" + }, + "0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB": { + "273550612806852": "119672848374" + }, + "0x0FF2FAa2294434919501475CF58117ee89e2729c": { + "278875625661366": "11052458712" + }, + "0xF6FE6b3f7792B0a3E3E92Fdbe42B381395C2BBd8": { + "273508727277754": "16963513569" + }, + "0x201ad214891136FC37750029A14008D99B9ab814": { + "273830634179033": "108850000718" + }, + "0xD11FaEdC6F7af5b05137A3F62cb836Ab0aE5dbb6": { + "268078331288542": "136505258035" + }, + "0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0": { + "267806966956864": "18402625318" + }, + "0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1": { + "279436643945150": "3073743220711" + }, + "0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725": { + "270493220059769": "1070861106258" + }, + "0x095CB8F5E61b69A0C2fE075A772bb953f2d11C2A": { + "278081828263955": "102926636303" + }, + "0xaDd2955F0efC871902A7E421054DA7E6734d3DCA": { + "278872415592357": "1605049904", + "278874020642261": "1605019105" + }, + "0xcc5b337cd28b330705e2949a3e28e7EcA33FABF3": { + "283088930731624": "142357942002" + }, + "0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE": { + "278872415587020": "5337" + }, + "0xE4202F5919F22377dB816a5D04851557480921dF": { + "282567856872602": "19171570170" + }, + "0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209": { + "292260794541850": "2182702092311" + }, + "0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6": { + "282819759198190": "269171533434" + }, + "0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf": { + "279415281575631": "21362369519" + }, + "0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb": { + "282548680821223": "19176051379" + }, + "0x8bFe70E2D583f512E7248D67ACE918116B892aeA": { + "278038360536371": "43467727584" + }, + "0xDecaFa57F07292a338E59242AaC289594E6A0d68": { + "271576077962668": "140065079142" + }, + "0x61C95fe68834db2d1f323bb85F0590690002a06d": { + "298766493215442": "25000000000" + }, + "0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA": { + "294677956974210": "187420307596", + "298745403795012": "21089420430" + }, + "0xcB0838c828Ec4911f6a0ba48e58BC67a8c5f9c3f": { + "299024577429126": "2374729808" + }, + "0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3": { + "298728570869450": "16832925562" + }, + "0x6b87460Ce18951D31A7175cAbE2f3fc449E54256": { + "341689788844501": "46789171777", + "298986493215464": "38084213662" + }, + "0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a": { + "298791493215442": "85000000000" + }, + "0x009A2534fd10c879D69daf4eE3000A6cb7E609Bb": { + "294865377281806": "936000838", + "552612150292332": "12343626381" + }, + "0x507165FF0417126930D7F79163961DE8Ff19c8b8": { + "601480769346490": "59538073434", + "299720079337431": "61879832343" + }, + "0x9D496BA09C9dDAE8de72F146DE012701a10400CC": { + "298511519013444": "217051856006" + }, + "0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1": { + "294885031008106": "214939119695" + }, + "0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e": { + "300537735718283": "9033860883" + }, + "0x3810EAcf5020D020B3317B559E59376c5d02dCB2": { + "309464729921305": "87638844672" + }, + "0x2352FDd9A457c549D822451B4cD43203580a29d1": { + "299781959169774": "468725307806" + }, + "0x5084949C8f7bf350c646796B242010919f70898E": { + "310785629091202": "11710566911" + }, + "0xF4E3f1c01BD9A5398B92ac1B8bedb66ba4a2d627": { + "309393672181716": "71057739589" + }, + "0xa48E7B26036360695be458D6904DE0892a5dB116": { + "300546769579166": "360670112242" + }, + "0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB": { + "310817959724546": "58841300381" + }, + "0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d": { + "312543047721534": "185860975995" + }, + "0x532744D22891C4fccd5c4250D62894b3153667a7": { + "313016691552535": "2278056516664" + }, + "0xc390578437F7BdEe1F766Fdb00f641848bc19366": { + "311304924229270": "3723791152" + }, + "0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D": { + "318879364223287": "100013282422", + "325544608143106": "116174772099" + }, + "0xF930b0A0500D8F53b2E7EFa4F7bCB5cc0c71067E": { + "317432480867541": "332338187664" + }, + "0xf152581b8cb486b24d73aD51e23a3Fd3E0222538": { + "318475081608739": "392626194541" + }, + "0x61e193e514DE408F57A648a641d9fcD412CdeD82": { + "316297504741935": "1134976125606" + }, + "0x70C8eE0223D10c150b0db98A0423EC18Ec5aCa89": { + "317764819055205": "94698329152" + }, + "0xe496c05e5E2a669cc60ab70572776ee22CA17F03": { + "315631879157747": "6925672800", + "390474369265448": "5361251025" + }, + "0xBF843F2AA6425952aE92760250503cE9930342b4": { + "316205515855236": "91988886699" + }, + "0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176": { + "316203870466407": "1645388829", + "395591002730700": "2016823680" + }, + "0xbb595fEF3C86FE664836a5Ea6C6E549ECeA28dEe": { + "319745968562762": "99808811019" + }, + "0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48": { + "319694369767515": "36673342106" + }, + "0x905B2Eb4B731B395E7517a4763CD829F6EC2f510": { + "318867707803280": "11656420007" + }, + "0x568092fb0aA37027a4B75CFf2492Dbe298FcE650": { + "322441410680368": "320032018333" + }, + "0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af": { + "320112525044800": "79896782500" + }, + "0xC252A841Af842a55b0F0b507f68f3864bf1C02b5": { + "321963981312343": "160361923955" + }, + "0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e": { + "321946865430555": "17115881788" + }, + "0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5": { + "322943294893160": "8758397681" + }, + "0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97": { + "320197037442753": "8912443926" + }, + "0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D": { + "323262951431540": "22464236574" + }, + "0x5aB883168ab03c97239CEf348D5483FB2b57aFD9": { + "319845777373781": "86992261142" + }, + "0x0B297D1e15bd63e7318AF0224ebeA1883eA1B78b": { + "320211492894055": "26295761854" + }, + "0x8264EA7b0b15a7AD9339F06666D7E339129C9482": { + "321485895691147": "32021232234" + }, + "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC": { + "319932769634923": "69289110000" + }, + "0x66F1089eD7D915bC7c7055d2d226487362347d39": { + "323154203825866": "1110069378" + }, + "0x9c7ac7abbD3EC00E1d4b330C497529166db84f63": { + "323003646918374": "27365907771" + }, + "0x829Ceb00fC74bD087b1e50d31ec628a90894cD52": { + "323285415668114": "50596304590", + "355313179311575": "62470363029", + "367287703769008": "64080321723" + }, + "0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22": { + "397009213772846": "13236391256", + "324806023022229": "28234479163" + }, + "0x08364bdB63045c391D33cb83d6AEd7582b94701d": { + "322385088448926": "23831778892" + }, + "0xbFc016652a6708b20ae850Ee92D2Ea23ccA5F31a": { + "323155313895244": "107622510400" + }, + "0x81696d556eeCDc42bED7C3b53b027de923cC5038": { + "402373662443244": "36113082774", + "319731043109621": "14925453141" + }, + "0x70F11dbD21809EbCd4C6604581103506A6a8443A": { + "324855687987034": "11444716102" + }, + "0xECA7146bd5395A5BcAE51361989AcA45a87ae995": { + "324834257501392": "21430485642" + }, + "0xCfD2b6487AFA4A30b79408cF57b2103348660a02": { + "325457158146323": "57516289570" + }, + "0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4": { + "324867132703136": "44584623736" + }, + "0xeEe59d723433a4b178fCD383CD936de9C8666111": { + "323576955719352": "1132721039915" + }, + "0x29e1A68927a46f42d3B82417A01645Ee23F86bD9": { + "324911717326872": "115438917" + }, + "0xe0E297e67191AF140BCa9E7c8dd9FfA7F57D3862": { + "361748361657312": "2595240610", + "361750956897922": "7669308177", + "325748686333297": "381776902" + }, + "0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3": { + "324758511737508": "15676768579" + }, + "0xC2705469f7426E9EbE91e55095dCA2AdF19Bcbb2": { + "395550923425579": "40079305121", + "409774485407838": "34452659711", + "409740016789035": "34468618803", + "325991394695413": "58515686346" + }, + "0xC9cE413f3761aB1Df6be145fe48Fc6c28A8DCc1a": { + "323080270380904": "73933444962" + }, + "0x843F293423895a837DBe3Dca561604e49410576C": { + "325979734145362": "11660550051" + }, + "0xAf93048424E9DBE29326AD1e1B00686760318f0D": { + "325970651658765": "9082486597", + "542294295589408": "17206071534" + }, + "0x26C08ce60A17a130f5483D50C404bDE46985bCaf": { + "325145004497070": "113447201008" + }, + "0x68ca44eD5d5Df216D10B14c13D18395a9151224a": { + "327022674019051": "298522321813" + }, + "0x33c0BCac5c1835fe9D52D35079F6617A22c6C431": { + "552807785951017": "16210845885", + "533229385997211": "202654427854", + "511268244803978": "49788645972", + "326347203020618": "125324760000", + "553548932420572": "43736535200", + "575265144492570": "31060210793", + "328066927799830": "36648000000" + }, + "0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509": { + "327321196340864": "12175651681" + }, + "0x0be0eCC301a1c0175f07A66243cfF628c24DB852": { + "325956673919974": "11780328791" + }, + "0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17": { + "326225367529391": "17549000000" + }, + "0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB": { + "326049910381783": "22789160494", + "635083372725365": "41773558000", + "340180819742396": "88167423404", + "635350828552881": "21661686000" + }, + "0x7c12222e79e1a2552CaF92ce8dA063e188a7234F": { + "327333371992545": "151078425653" + }, + "0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E": { + "327484450418198": "123019710377" + }, + "0xDeaB5B36743feb01150e47Ad9FfD981b9d5b7E8a": { + "326278014529391": "17549000000", + "327854929299830": "11998500000" + }, + "0x2f89DB6B5E80C4849142789d777109D2F911F780": { + "331726102506074": "5251308075" + }, + "0x0C2301083B7f8021fB967C05a4C2fb1ab731C302": { + "329575890598428": "23348488996" + }, + "0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79": { + "328103575799830": "1472314798598", + "329599239087424": "1929155008439", + "378591197691403": "969373424488", + "341145726299533": "435082846929", + "392591320788074": "1062369645874", + "544017382750618": "105536223506" + }, + "0x04A9b41a1288871FB60c6d015F3489612d36EB48": { + "333558446493169": "64363620944" + }, + "0xF4839123454F7A65f79edb514A977d0A443d9F91": { + "335543260610192": "304359092505", + "335370412497098": "158934348231", + "336948934255787": "155055594925", + "432716592486588": "117060004485" + }, + "0xb0226e96c71F94C44d998CE1b34F6a47c3A82404": { + "336175075840856": "767141673418" + }, + "0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f": { + "332106534097640": "325699631169" + }, + "0x81d8363845F96f94858Fac44A521117DADBfD837": { + "332432233728809": "324629738694" + }, + "0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED": { + "335861224023043": "3782897627", + "335857741482697": "3482540346" + }, + "0xe9ef7E644405dD6BD1cbd1550444bBF6B2Bfc7C1": { + "331818462622088": "1548786859" + }, + "0x08c16a9c76Df28eE6bf9764B761E7C4cE411E890": { + "332756863467503": "801583025666" + }, + "0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F": { + "337947415831374": "1256098598" + }, + "0x6ab4566Df630Be242D3CD48777aa4CA19C635f56": { + "339523096579827": "66070456308" + }, + "0xCAeEf0dFCF97641389F8673264b7AbAB25D17c99": { + "339186795013191": "292270000000" + }, + "0xE6A0D70CFe2BB97E39D37ED2549c25FA8C238B1A": { + "339589167036135": "128341936701" + }, + "0xCD4950a8Bd67123807dA21985F2d4C4553EA1523": { + "339717508972836": "114436759181" + }, + "0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256": { + "339479065013191": "22903272033" + }, + "0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe": { + "338993028210082": "30086002693" + }, + "0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC": { + "343181072805930": "327389493912", + "340708439500138": "107810827136" + }, + "0x9399943298b25632b21f4d1FA75DB0C5b8d457C5": { + "344871912132732": "28386322608", + "342893609901961": "12098559997" + }, + "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC": { + "340404094520260": "3964784011", + "646482350566546": "15589908000" + }, + "0x87834847477c82d340FCD37BE6b5524b4dF5e7c5": { + "341736578016278": "6454277235" + }, + "0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba": { + "342111695751196": "448608504781" + }, + "0x66D8293781eF24184aa9164878dfC0486cfa9Aac": { + "343136977526193": "2215279737" + }, + "0x8a178306ffF20fd120C6d96666F08AC7c8b31ded": { + "341743032293513": "96491602264" + }, + "0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14": { + "340591459615016": "116979885122" + }, + "0xCF04b3328326b24A1903cBd8c6Cab8E607594342": { + "343607345875582": "1240820108" + }, + "0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74": { + "343508462299842": "21014656050" + }, + "0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF": { + "343678737441661": "114019585" + }, + "0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80": { + "342977163712331": "63975413862" + }, + "0xF75e363F695Eb259d00BFa90E2c2A35d3bFd585f": { + "344699619094876": "31013750000" + }, + "0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490": { + "643965943463481": "3445015742", + "344363596850037": "262152482" + }, + "0x0A6f465033A42B1EC9D8Cd371386d124E9D3b408": { + "343678851461246": "121582244473" + }, + "0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E": { + "343608586695690": "6294220121" + }, + "0x686381d3D0162De16414A274ED5FbA9929d4B830": { + "344768619702251": "55026606400" + }, + "0x1a5280B471024622714DEc80344E2AC2823fd841": { + "343556046384069": "24488082083" + }, + "0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA": { + "345230873758247": "120151660091" + }, + "0x2BeaB5818689309117AAfB0B89cd6F276C824D34": { + "344363859002519": "25254232357" + }, + "0x3983b24542E637030af57a6Ca117B96Fc42Ace10": { + "357975339088994": "60400014733", + "344971252855340": "54716661232" + }, + "0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0": { + "345025969516572": "39817721136" + }, + "0x3798AE2cbC444ed5B5f4fb38344044977066D13F": { + "376325075317086": "7476138081", + "344843846701641": "18931968095" + }, + "0xec94F1645651C65f154F48779Db1F4C36911a56a": { + "344440617234876": "75101162500" + }, + "0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96": { + "343800433705719": "25762354710", + "355945253638618": "61234325811" + }, + "0xc40dcc52887e1F08c2c91Dcd650da630DE671bD7": { + "343826196060429": "54144875028" + }, + "0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A": { + "344862778669736": "9133462996" + }, + "0x0fbb76b9B283Dd22eCbD402B82EbFA6807e44260": { + "347435937294471": "39890246570" + }, + "0x3103c84c86a534a4f10C3823606F2a5b90923924": { + "361237680058040": "3203293071", + "350560995758670": "1562442699" + }, + "0x35a386D9B7517467a419DeC4af6FaFC4c669E788": { + "344823646308651": "10024424157" + }, + "0x2437Db820DE92d8DD64B524954fA0D160767c471": { + "344730632844876": "14480118767" + }, + "0xD5bFBD8FCD5eD15d3df952b0D34edA81FF04Dabe": { + "345076950522363": "153923235884" + }, + "0x699095648BBc658450a22E90DF34BD7e168FCedB": { + "350526188741041": "1867890780" + }, + "0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4": { + "353495072528037": "320790778183" + }, + "0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F": { + "344839852767681": "1993933960" + }, + "0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39": { + "355785898656583": "159354982035" + }, + "0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302": { + "344745112963643": "23506738608" + }, + "0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6": { + "355295604996220": "17574315355", + "559861867895806": "7681062381", + "588875863204433": "2978711605" + }, + "0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91": { + "355452879506659": "183159970434" + }, + "0x2342670674C652157c1282d7E7F1bD7460EFa9E2": { + "358035739103727": "19514795641" + }, + "0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3": { + "362938922277631": "76367829600" + }, + "0x93A185CD1579c015043Af80da2D88C90240Ab3a9": { + "582132866585744": "152697324377", + "363871731464758": "67603779457", + "470298210971887": "82596094458" + }, + "0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714": { + "355648398557215": "124964349871" + }, + "0x18ED928719A8951729fBD4dbf617B7968D940c7B": { + "375266078664282": "1033269065963", + "371379048315869": "1015130348413" + }, + "0x08C1eBaC9aD1933E08718A790bc7D1026e588c9b": { + "361758626206099": "31370000000" + }, + "0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4": { + "376299347730245": "25727586841" + }, + "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d": { + "376426019903538": "25515357603", + "362140399162224": "6273115407" + }, + "0x0b406697078c0C74e327856Fc57561a3A81FB925": { + "378358932636790": "193776500000" + }, + "0xD73d566e1424674C12F1D45aEA023C419e6EfeF5": { + "378133374904000": "9264605510", + "646768853931293": "1778910224" + }, + "0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b": { + "385225630461615": "15974580090" + }, + "0xd16C24e9CCDdcD7630Dd59856791253F789b1640": { + "429127937273760": "5561731260", + "398190114501969": "131751153673", + "393710038424825": "398206341722", + "397727187233675": "330970704739" + }, + "0x8A1B804543404477C19034593aCA22Ab699f0B7D": { + "394825004766547": "132495619648" + }, + "0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c": { + "385257800041705": "316578014158" + }, + "0xeAB3981257d761d809E7036F498208F06ce0E5bb": { + "396927835091619": "1908381961" + }, + "0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0": { + "396925635091619": "2200000000" + }, + "0xC8D71db19694312177B99fB5d15a1d295b22671A": { + "397075356057692": "651831175983" + }, + "0xebDA75C5e193BBB82377b77e3c62c0b323240307": { + "396995974910643": "13238862203", + "396892494323031": "33140768588" + }, + "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3": { + "396371740775536": "132692764932", + "595154386328334": "12415183500" + }, + "0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df": { + "408340443663992": "1766184702", + "400667403191381": "202636723695", + "408345753047647": "1776940468", + "408343976670564": "1776377083", + "409571787389145": "1940500171", + "460458204419590": "1909460313", + "408342209848694": "1766821870", + "411707409641311": "1769006754", + "460660502553919": "1913525664", + "460456294770519": "1909649071" + }, + "0xf0ec8fFED51B4Ba996005F04d38c3dBeF3A92773": { + "401534840143736": "5971851889" + }, + "0x47b2EFa18736C6C211505aEFd321bEC3AC3E8779": { + "400534613369686": "132789821695" + }, + "0x2C01E651a64387352EbAF860165778049031e190": { + "401140958523891": "6000000000" + }, + "0x33033E306c89Dc5b662f01e74B12623f9a39CCE4": { + "401134958523891": "6000000000" + }, + "0xD48E614c2CbAF0A588E8Be1BeD8675b35EEE93FC": { + "401146958523891": "6000000000" + }, + "0xDaD87a8cCe8D5B9C57e44ae28111034e2A39eD50": { + "403212677462308": "40218170413" + }, + "0x5F0f6F695FebF386AA93126237b48c424961797B": { + "402409775526018": "30263707163" + }, + "0x74382a61e2e053353BECBC71a45adD91c0C21347": { + "401546143727842": "693694620220" + }, + "0x2d0DDb67B7D551aFa7c8FA4D31F86DA9cc947450": { + "401401284712966": "133555430770" + }, + "0x96b793d04E0D068083792E4D6E7780EEE50755Fa": { + "402932963276600": "30982753569" + }, + "0xd42E21c0b98c6b7EDbE350bCeD787CE0B9644877": { + "507187825308975": "14697178768", + "402239838348062": "6594438597", + "507202522487743": "4409766489" + }, + "0xf6Dd6A99A970d627A3F0D673cb162F0fe3D03251": { + "402440039233181": "33854411665" + }, + "0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362": { + "402899271425864": "33691850736" + }, + "0xd776347E2FD043Cb2903Fd6999533a07eD4D6B48": { + "406210881006535": "30575443162", + "406210193414449": "687592086" + }, + "0x03fFDf41a57Fabf55C245F9175fc8644F8381C48": { + "408138522427526": "67839692592" + }, + "0x0ACe049e9378FfDbcFcb93AEE763d72A935038AE": { + "408206362120118": "678503700" + }, + "0x46b7c8c6513818348beF33cc5638dDe99e5c9E74": { + "408347529988115": "11863530938" + }, + "0xDf3e8B69943AD8278D198681175E6f93135CDDfC": { + "403341480040599": "126497445070" + }, + "0x1FA517A273cC7e4305843DD136c09c8c370814be": { + "408207040623818": "67876110491" + }, + "0x7193b82899461a6aC45B528d48d74355F54E7F56": { + "679990486184882": "101083948638", + "655166761861127": "1629422984", + "409573727889316": "100323000000" + }, + "0xEEf102b4B5A2f714aFd7c00C94257D7379dc913E": { + "408421904373326": "3478040717" + }, + "0x5355C2B0e056d032a4F11E096c235e9a59F5E6af": { + "408369482519053": "28099958602", + "441066506534105": "177042580917" + }, + "0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21": { + "409808938067549": "84226188785" + }, + "0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228": { + "415361829991557": "21739077662" + }, + "0x97c46EeC87a51320c05291286f36689967834854": { + "415490440421248": "60177474475" + }, + "0x76ce7A233804C5f662897bBfc469212d28D11613": { + "432591748956398": "124843530190" + }, + "0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76": { + "429681884991709": "16666666666" + }, + "0xC25148EB441B3cAD327E2Ff9c45f317f087dF049": { + "425806299352728": "1992932667" + }, + "0xc99c16815c5aEa507c2D8AeB1e69eed4CC8e4E56": { + "440910863478235": "143640842990" + }, + "0x1aA6F8B965d692c8162131F98219a6986DD10A83": { + "430080127673356": "15368916223" + }, + "0xF96A38c599D458fDb4BB1Cd6d4f22c9851427c61": { + "432833652491073": "14210987162" + }, + "0x51b2Adf97650A8D732380f2D04f5922D740122E3": { + "429986874393417": "2598292" + }, + "0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529": { + "460662416079583": "75343489480" + }, + "0xE223138F87fA7Bf30a98F86b974937ED487de9E5": { + "431662774089579": "928974866819" + }, + "0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e": { + "443844836815022": "15594289962" + }, + "0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C": { + "465366616460626": "12745164567", + "534838741555277": "19231055968" + }, + "0x21D4Df25397446300C02338f334d0D219ABcc9C3": { + "470792431286210": "37602900897", + "534876703831999": "93233987544", + "495732571780643": "253709415566", + "495349607400223": "382964380420", + "470380807066345": "411624219865", + "552735179318713": "72606632304", + "552823996796902": "637060677585", + "573166828849535": "173997222406" + }, + "0xF7f1dAEc57991db325a4d24Ca72E96a2EdF3683d": { + "458538065317490": "40401845392" + }, + "0x21754dF1E545e836be345B0F56Cde2D8419a21B2": { + "465327248177676": "39368282950" + }, + "0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9": { + "495326332814565": "12999411038" + }, + "0xd14Cb607F99f9c5c9a47D1DEF59a02A3fBbf14Fd": { + "477225033066008": "47392004821" + }, + "0x09d8591fc4D4d483565bd0AD22ccBc8c6Dd0fF55": { + "484418759571466": "71165039974" + }, + "0x120Be1406E6B46dDD7878EDC06069C811f608844": { + "585014816613448": "44928801374", + "495258518671796": "67814142769" + }, + "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e": { + "531225747951270": "311109277563", + "523278607555107": "149423611243", + "496345360673944": "488241871617" + }, + "0x48F8738386D62948148D0483a68D692492e53904": { + "495222864611440": "35654060356" + }, + "0x676B0Add3De8d340201F3F58F486beFEDCD609cD": { + "506941790964613": "36337517023" + }, + "0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F": { + "506978128481636": "138928506054" + }, + "0x2817a8dFe9DCff27449C8C66Fa02e05530859B73": { + "495986281196209": "327035406660" + }, + "0xe4E51bb8cF044FBcdd6A0bb995a389dDa15fB94e": { + "507118948487690": "8256805531" + }, + "0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A": { + "507127205293221": "60620015754", + "533061821284421": "60249402002", + "516313933449950": "49630409652" + }, + "0x9336a604077688Ae5bB9e18EbDF305d81d474817": { + "507627505426137": "16376776057" + }, + "0xbB69c6d675Db063a543d6D8fdA4435025f93b828": { + "506927515739631": "14275224982" + }, + "0xBC0A7F1CB55d8f6eAdde498DbFE0FF2f78149A84": { + "507643882202194": "20759609713" + }, + "0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0": { + "575297036565480": "37469832650", + "517136234273749": "25727141956" + }, + "0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7": { + "524680103453466": "565602262874", + "533822032849799": "1016708705478", + "531965502653124": "631379688396" + }, + "0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F": { + "516363563859602": "772670414147" + }, + "0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2": { + "532675989297032": "13095000100" + }, + "0xFe1640549e9D79fE9ba298C8d165D3eD3ABFa951": { + "525742172189925": "10705853858", + "529935255647800": "12874530667" + }, + "0xBaD292Dbb933Aea623a3699621901A881E22FfAC": { + "533432040425065": "88596535296", + "551506370791010": "333170781639" + }, + "0xcdeC732853019E9F287A9Fdf02f21cfd5eFa0436": { + "533122070686423": "91515290935" + }, + "0xB17fC3D59de766b659644241Dba722546E32b163": { + "530457276837452": "21389399522" + }, + "0xD0ce08617E88D87696fDB034AF7Cc66f6ae2c203": { + "532689084922638": "368626892186", + "572875760572308": "283454515911" + }, + "0xb3F7DF25CB052052dF6d73d83EdBF6a2238c67de": { + "532689084297132": "625506" + }, + "0xf9380E9F90aDE257C8F23d53817b33FBbF975a19": { + "533520636960361": "29491962342" + }, + "0x0EdAc71d6c67BFA7A4dDD79A75967D9c0984F1ce": { + "533569882479088": "33964733538" + }, + "0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9": { + "533811200182803": "10832666996" + }, + "0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F": { + "534969937819543": "135093374272" + }, + "0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27": { + "542568043607639": "1438806398621", + "535108406138660": "1084177233275", + "537880694158341": "1727536772397", + "536192583371935": "1688110786406" + }, + "0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5": { + "553592668955772": "222299277023", + "539608230930738": "417347700552" + }, + "0xac34CF8CF7497a570C9462F16C4eceb95750dd26": { + "558584635168744": "8664709191" + }, + "0xc76b280880686397F7b95AfC72B581b1a52e6Bad": { + "547674395930167": "64052827856", + "547741073017183": "68126058779" + }, + "0xf4ACCDFA928bF863D097eCF4C4bB57ad77aa0cb2": { + "561866206352308": "5788170260" + }, + "0xed67448506A9C724E78bF42d5Cf35b4b617cE2F6": { + "533743524967964": "67675214839" + }, + "0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c": { + "534857972611245": "18731220754" + }, + "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8": { + "551487055682601": "1270108409" + }, + "0xcCA04Db4bbD395DFEC2B0c1b58550C38067C9849": { + "561422449597801": "48869594377", + "595249436770334": "25113600000" + }, + "0x880bba07fA004b948D22f4492808b255d853DFFe": { + "550921667542369": "41775210170" + }, + "0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2": { + "552304065222426": "308085069906", + "577096772671953": "153413133261", + "577017952241768": "78820430185" + }, + "0xE043b38b90712bdFf29a2D930047FF9A56660b0F": { + "544307027106412": "40573163648" + }, + "0xd00eb0185dadcEcF6d75E23632eC4201d66a4CD1": { + "561823522898706": "26988232068" + }, + "0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6": { + "561471319192178": "6531451600" + }, + "0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C": { + "553461057474487": "87874946085" + }, + "0xf1608f6796E1b121674036691203C8ecE7516cC2": { + "560526448567608": "896001030193" + }, + "0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f": { + "553814969232795": "4769665935949", + "553814968232795": "1000000" + }, + "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c": { + "562585978802308": "48492000000", + "566579274363477": "48492118269", + "564921455942708": "48492118269", + "570247098801215": "48492118269", + "568565179832546": "48492118269", + "571918080039484": "48492118269" + }, + "0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F": { + "558624634802147": "1237233093659" + }, + "0xDb8D484c46cE6B0bd00f38a51b299EB129928AC0": { + "551224993414569": "3096343805" + }, + "0xd56e3E325133EFEd6B1687C88571b8a91e517ab0": { + "551228089758374": "232190649529" + }, + "0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4": { + "561775060168943": "48462729763" + }, + "0xDC27b4a65F214743d68BEf4ba2004D4cCD6d7F65": { + "552624493918713": "110685400000" + }, + "0xdDd607Ee226b65Ee1292bB2d67682b86cd024930": { + "558593299877935": "31334924212" + }, + "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E": { + "571005615479484": "101220000000", + "571106835479484": "101220000000", + "565689461995977": "151830000000", + "567596473157146": "101220000000", + "567495253157146": "101220000000" + }, + "0x03B431AC8c662a40765dbE98a0C44DecfF22067C": { + "559934751645655": "87181798710" + }, + "0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13": { + "563601797802308": "150555000000" + }, + "0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A": { + "570994112669484": "2013435000" + }, + "0xE87CA36bcCA4dA5Ca25D92AF1E3B5755074565d6": { + "564969948060977": "5482750000" + }, + "0x5a57107A58A0447066C376b211059352B617c3BA": { + "579117588495464": "2191004882" + }, + "0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b": { + "575296204703363": "831862117" + }, + "0x20627f29B05c9ecd191542677492213aA51d9A61": { + "576941170319018": "76781922750", + "592657295032714": "378309194016", + "595932363187550": "903793388372", + "586328662020556": "51897457000", + "577603149817417": "46559625597", + "596836156575922": "629685276600", + "599486968121300": "259777962939", + "597465841852522": "464850000000", + "599746746084239": "330494092479", + "595732510292240": "90858470270", + "601738494764168": "166149576292" + }, + "0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe": { + "573460544800018": "59926244178" + }, + "0xBe9998830C38910EF83e85eB33C90DD301D5516e": { + "577679606726120": "74848126691" + }, + "0xA97661df0380FF3eB6214709A6926526E38a3f68": { + "579063492093806": "43896808582" + }, + "0x37d515Fa5DC710C588B93eC67DE42068090e3ED8": { + "585059745414822": "387855469635", + "589065176123882": "721956082204", + "584103960774934": "910855838514", + "582564609492029": "1539351282905", + "590489840327695": "511974175317", + "589789721199545": "700119128150" + }, + "0x04298C47FB301571e97496c3AE0E97711325CFaA": { + "582289974470121": "105966227923", + "644567758321823": "8036081997", + "646677644091662": "21869865192", + "644448063056812": "8071882778", + "646699513956854": "14171818173", + "668921920941967": "103450896022", + "644538261890091": "8376502838", + "647108173866991": "11486911677" + }, + "0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50": { + "580032854468122": "88320699942" + }, + "0xe3D73DAaE939518c3853e0E8e532ae707cC1A436": { + "581923298586847": "2757807763" + }, + "0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b": { + "582532990593085": "9392558210" + }, + "0xecEcd4D5f22a75307B10ebDd536Fc4Fa1696B0ED": { + "573340826071941": "35167457488" + }, + "0x94cf16A6C45474B05d383d8779479C69f0c5a07A": { + "580121175168064": "85134042441" + }, + "0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d": { + "582413872658220": "312333420" + }, + "0x2745a1f9774FF3b59cbDfC139c6f19f003392e2C": { + "643616429319061": "1117067455", + "643630556511892": "3144911832", + "643059909351872": "5072600938", + "643046212115536": "1220733194", + "580465682607657": "1581698780", + "644440076885807": "2439339467", + "646983796131611": "1010894641" + }, + "0xc1A5b1d88045be9e2F50A26D79FA54e25Dc31741": { + "582414184991640": "646639100" + }, + "0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933": { + "582395940698044": "17931960176" + }, + "0xe341D029A0541f84F53de23E416BeE8132101E48": { + "627937410816406": "107921589892", + "625294671474977": "47650794261", + "580247000743705": "16603151206", + "595166801511834": "12525126500", + "627853523296048": "83887520358", + "630957996947963": "81937578138", + "630893603598361": "64393349602", + "631127869945795": "334766123964", + "632545475514340": "60742019099", + "631809800603658": "3069278668", + "632931249761513": "110714960415", + "632064428283728": "56385109300", + "632927020412679": "4229348834", + "631820288433865": "45883804745", + "633740026257640": "229278671951", + "634177884140747": "6388626991", + "633576411835283": "163614422357", + "631866172238610": "88335279210", + "634310198547026": "3472972941", + "633042592998228": "131633088574", + "634305900726953": "4297820073", + "634280779212260": "7808539974", + "634288587752234": "8669701992", + "634698555829165": "47575184873", + "634856348993848": "8012057539", + "634829369812554": "7872033041", + "634453810503692": "4959136304", + "635529297065365": "6798291250", + "634846363391745": "9985602103", + "634837241845595": "9121546150", + "635837729356119": "5724585625", + "635964771738329": "5345079375", + "635929981939366": "3855440625", + "635857997949286": "7861878125", + "635970116817704": "2856929375", + "635934304344057": "9618590625", + "635973567908981": "5700529375", + "636047470331282": "5691708750", + "635979268438356": "8185223750", + "636981200607403": "5662841250", + "638281858941153": "5155261915", + "641042570368631": "190255211250", + "641528631437689": "45786203750" + }, + "0xE3fEBd699133491dbf704A57b805bE1D284094Dd": { + "581917954037154": "1992052824" + }, + "0xE79cCABDbF2AA68fDae8D7Fc39654A62b07e12e3": { + "587272159376494": "51926940000", + "588162157316494": "74148750000", + "588769796816494": "74148750000", + "588465977066494": "74148750000" + }, + "0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b": { + "573650098517519": "5734467826" + }, + "0xc5581ef96bF2ab587306668fdd16E6ed7580c856": { + "586702306772245": "253149984249", + "586380601477556": "250325018887" + }, + "0xdc95f2Ec354b814Fc253846524b13b03be739Cd6": { + "593035604226730": "373628743286", + "600409018603227": "525104885508", + "681430514551832": "201609576198", + "911010404976562": "533890656472", + "601974357349095": "169049978325", + "918505480003674": "10000000000", + "918302484323674": "202995680000" + }, + "0xFbDaA991B6C4e66581CFB0B11B513CA735cC0128": { + "586639472056443": "7161118438" + }, + "0x73c09f642C4252f02a7a22801b5555f4f2b7B955": { + "595188836707834": "12745012500" + }, + "0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b": { + "591001814503012": "551376150000" + }, + "0x0F1d41cc51e97DC9d0CAd80DC681777EED3675E3": { + "586043288914915": "26005505974" + }, + "0xF2Fb34C4323F9bf4a5c04fE277f96588dDE5316f": { + "598166828515122": "32623039080" + }, + "0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C": { + "598229195571107": "175120144248", + "598404315715355": "706556073123" + }, + "0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9": { + "595305161120334": "32982900000" + }, + "0x6223dd77dd5ED000592d7A8C745D68B2599C640D": { + "595098019071334": "7805953000" + }, + "0x58e4e9D30Da309624c785069A99709b16276B196": { + "595179326638334": "9510069500" + }, + "0x035bb6b7D76562320dFFb5ec23128ED1541823cf": { + "586630926496443": "8545560000" + }, + "0x8a9C930896e453cA3D87f1918996423A589Dd529": { + "599110871788478": "1467343" + }, + "0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db": { + "598199451554202": "29744016905" + }, + "0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5": { + "586069294420889": "40303600000" + }, + "0x80915E89Ffe836216866d16Ec4F693053f205179": { + "599110873255821": "6253532657" + }, + "0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB": { + "595522053532834": "168039500000" + }, + "0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9": { + "611674338974532": "34873097638" + }, + "0x31b9084568783Fd9D47c733F3799567379015e6D": { + "598066496589195": "100033987828" + }, + "0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6": { + "601970356868999": "4000480096" + }, + "0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5": { + "603779598696045": "571460608752", + "606957648666028": "690100000000", + "604351059304797": "342600000000", + "606755813351268": "201835314760", + "626836023224058": "72923998967", + "626908947223025": "318351804364", + "627227299027389": "320953676893" + }, + "0xDBB493488991F070176367aF5c57De2B8de5aAb1": { + "601904644340460": "65712528539" + }, + "0xDF2501f4181Cd63D41ECE0F4EDcf722eEAd58EbD": { + "600934123488735": "546645857755" + }, + "0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e": { + "602679309587183": "74690241246", + "602753999828429": "822947782651" + }, + "0xb319c06c96F676110AcC674a2B608ddb3117f43B": { + "652743079185278": "141663189223", + "654445384002816": "109437957582", + "636826909305416": "83800270379", + "650587203583982": "2695189900", + "611471034974532": "94598000000", + "655168391284111": "167255000000", + "654431959023764": "13424979052", + "656569610821263": "155690600000", + "657033695277469": "148493723460", + "658561025456875": "148762745637", + "658259541638510": "150002086275", + "660384609944925": "306309267806", + "657826429374395": "145018797369", + "660980494384114": "322801544810" + }, + "0x23b7413b721AB75FE7024E7782F9EdcE053f220C": { + "606324488412981": "1036783406" + }, + "0xDd6Ab3d27d63e7Ed502422918BBcc9D881c9F4B7": { + "624713709719260": "9318497890" + }, + "0x375C1DC69F05Ff526498C8aCa48805EeC52861d5": { + "624706749861385": "1293514654" + }, + "0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe": { + "624708043376039": "5666343221" + }, + "0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631": { + "784127342017442": "1392774986727", + "869613014234285": "58474432063", + "627581126030410": "272397265638", + "779831387208671": "1602671680567", + "790449527867009": "141565176499" + }, + "0x9D1334De1c51a46a9289D6258b986A267b09Ac18": { + "624548747558738": "15810994142" + }, + "0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b": { + "631796137362390": "1440836515" + }, + "0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408": { + "631039934526101": "11565611800" + }, + "0xe8AB75921D5F00cC982bE1e8A5Cf435e137319e9": { + "632733387704894": "4395105822" + }, + "0x29841AfFE231392BF0826B85488e411C3E5B9cC4": { + "631794823129224": "1314233166" + }, + "0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59": { + "632628975546639": "9910714625", + "635426328011968": "6512126913", + "767307720698184": "2572274214" + }, + "0x122de1514670141D4c22e5675010B6D65386a9F6": { + "648313723414461": "6009716700", + "634067673151832": "56964081161", + "634208127647444": "49547619666", + "633445875835283": "88383049000", + "634054370395803": "5577741477", + "668314224811239": "15374981070", + "675086678410802": "69815285464", + "679748272866001": "2338515960", + "677494138932275": "17365876628", + "742201769028015": "48039789791" + }, + "0x38293902871C8ee22720A6553585F24De019c78e": { + "632904420406334": "6459298878" + }, + "0xd480B92941CBe5CeAA56fecED93CED8B76E59615": { + "631052405841503": "798685592" + }, + "0xE2Bf7C6c86921E404f3D2cEc649E2272A92c64fE": { + "633041964721928": "628276300" + }, + "0x3489B1E99537432acAe2DEaDd3C289408401d893": { + "634664031419046": "20000000000" + }, + "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b": { + "640267729343515": "1639640204", + "656886019664829": "9255777800", + "634147730459515": "19019153520", + "639381458599755": "43462477350", + "643109436914433": "3695060762" + }, + "0x40Da1406EeB71083290e2e068926F5FC8D8e0264": { + "742848091245520": "1417250000", + "679985260625921": "71", + "634461766777846": "6291400830", + "742849508495520": "1417250000" + }, + "0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8": { + "634757739139885": "1075350000" + }, + "0xD9e38D3487298f9CFB2109f83d93196be5AD7Cd3": { + "636803781282084": "726033140", + "634499539739046": "71680000" + }, + "0xE1aac3d6e7ad06F19052768ee50ea3165ca1fe70": { + "634481955115745": "3827017628" + }, + "0x7A1184786066077022F671957299A685b2850BD6": { + "635943922934682": "525079813", + "635988333778578": "8627689764" + }, + "0x87A774178D49C919be273f1022de2ae106E2581e": { + "634773067987253": "17354145" + }, + "0x90777294a457DDe6F7d297F66cCf30e1aD728997": { + "635933837379991": "466964066", + "635944448014495": "11358834076", + "635955806848571": "8964889758", + "635865859827411": "591391110", + "635851055266738": "6942682548", + "635924362730406": "5619208960", + "636019129340664": "5321360246", + "635866451218521": "1887298581", + "635913897465458": "4889469871", + "636040314139896": "7156191386", + "636036289922245": "4024217651", + "636007716379648": "11412961016", + "636024450700910": "6296897794", + "640489298182683": "25062802988", + "640514360985671": "40682056506" + }, + "0xe78483c03249C1D5bb9687f3A95597f0c6360b84": { + "636727155365094": "30000000000" + }, + "0x326481a3b0C792Cc7DF1df0c8e76490B5ccd7031": { + "636333094290438": "233865679687" + }, + "0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402": { + "636566959970125": "151773247545" + }, + "0xeA747056c4a5d2A8398EC64425989Ebf099733E9": { + "636718733217670": "8422147424" + }, + "0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e": { + "636825648638295": "1260667121" + }, + "0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E": { + "636957271887067": "7101122035" + }, + "0x3A529A643e5b89555712B02e911AEC6add0d3188": { + "637148882075661": "285714285" + }, + "0xDb22E2AC346617C2a7e20F5F0a49009F679cEED9": { + "643043882329649": "479746353", + "637129655282631": "22325453" + }, + "0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C": { + "636757155365094": "22691440968" + }, + "0x92e8E8760aBa91467A321230EF3ba081aD3998Fb": { + "638142095832193": "89554550", + "638276532104054": "5326837099" + }, + "0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB": { + "647311018597283": "23870625000", + "640996006666783": "46563701848", + "646772221095742": "7915875000", + "646739353301167": "10228948233", + "647637605929338": "30143670312", + "647696885372209": "28726857973", + "647479267179717": "26457093750", + "648474129091480": "9060790481", + "647458959804717": "20307375000", + "658229774319898": "29767318612", + "658068499502639": "37212168484" + }, + "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4": { + "643944290955121": "1478254943", + "643953518951321": "8390490226", + "639689672916916": "22501064889", + "643834369008756": "4844561817", + "643650251457626": "3358027804", + "643839213570573": "10208237564", + "644024944088567": "4012581233", + "644160211053924": "6031653730" + }, + "0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521": { + "640452235842856": "37062339827" + }, + "0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2": { + "641528528201681": "103236008" + }, + "0x30beFd253Ca972800150dBA8114F7A4EF53183D9": { + "643649755203625": "496254001" + }, + "0x4034adD1a1A750AA19142218A177D509b7A5448F": { + "643125864984505": "6948011478", + "643617546386516": "2736651405", + "643091870431475": "4644226944", + "643660698364792": "4196252501", + "643088877454629": "2992976846", + "643664894617293": "3945346023", + "643656971303257": "1840841812", + "643756345833829": "6933768558", + "643700775191501": "2616399199", + "643658812145069": "1886219723", + "643704053550072": "4354211152", + "643715616535597": "4120838084", + "643629222103340": "1334408552", + "643774597107209": "4927912318", + "643751895992677": "4449841152", + "643697705822698": "3069368803", + "643739999842104": "4592612954", + "643653609485430": "3361817827", + "643882906499989": "3569433363", + "643856593003930": "5819342790", + "643939083202841": "2637229058", + "643735049573681": "4950268423", + "643995568462582": "3724339951", + "643993684290607": "1884171975", + "643985406845033": "5924684744", + "643991331529777": "2352760830", + "644168293016051": "3645902617", + "644082195739245": "2039061143", + "644256136851915": "6416440826", + "644279469802093": "2923459312" + }, + "0xa7be8b7C4819eC8edd05178673575F76974B4EaA": { + "643105932414433": "3504500000" + }, + "0xDdBee81969465Bf34C390bdbebb51693aa60872A": { + "644200805140367": "8465905213", + "644262553292741": "3556630272", + "644296719303061": "10087109324", + "644359902017266": "8096943325", + "643076745874957": "4990270393", + "644209483533799": "8462180116", + "644703813274898": "7042747045", + "644601530274238": "15181735301", + "644575794403820": "7056375463", + "644692868677789": "10944597109", + "646635487210904": "3405655439", + "646613954357648": "1213482835", + "646615167840483": "6581626316", + "646823890594041": "8313750000", + "646751868482222": "6672000000", + "646801634434395": "9357187500", + "646713685775027": "6681000000", + "646621749466799": "8641971662", + "646832381636489": "9556500000", + "646790831403089": "4502537888", + "646953058887051": "13680562500", + "646922825096920": "12655593750", + "647398482803133": "1759220334", + "647011849960741": "16552500000", + "646966912932349": "7458750000", + "647289813472283": "21205125000", + "647273961097283": "15852375000", + "647205132806434": "4541772237", + "647569737463987": "10768570312", + "647357268413637": "4154496146", + "647454468475467": "4491329250", + "647425297460967": "14166562500", + "647512855733654": "9545312467", + "647400242023467": "16021687500", + "647562911175006": "6826288981", + "647805956456321": "13439373437", + "647522534795334": "5027880322", + "648363604608488": "13816601562", + "648581334621451": "12509063265", + "648537283609584": "5707106019", + "648559430310300": "13731252132", + "648525333394069": "11917909114", + "648606068497443": "6498075600", + "648741405625141": "9096334989", + "648542990715603": "6654318624", + "648549645034227": "9785276073", + "648848576397521": "41084042452", + "649365359547555": "33581054687", + "649716026525804": "16250253890", + "649331958625680": "33400921875", + "650067095113156": "39224374968", + "649705596826687": "10429699117", + "649774317320412": "23670471136", + "650219242628485": "1857330184", + "650131508947102": "18606000000", + "650719378952014": "2156328854", + "650499084833769": "50659600000", + "653679357421522": "180127000000", + "652087027597920": "5532211893", + "650589898773882": "60485600000", + "651349317935004": "3579623519", + "653861094863940": "166611900000", + "653599004226662": "78606500967", + "651991201244680": "3786353240", + "654029755304304": "173240000000", + "651727349159538": "130210400000", + "654355751377416": "2843782982", + "654204545777416": "151205600000", + "655337107999513": "144680200000", + "654770555948114": "2469722016", + "655003488507610": "163273353517", + "655639894246606": "52642714966", + "651620596283863": "105079500000" + }, + "0xDa90d355b1bd4d01F6124fEE7669090d4cbD5778": { + "643669682732704": "2100818831" + }, + "0x9C6f40999C82cd18f31421596Ca3b1C5C5083048": { + "644385379072596": "2088841809" + }, + "0xAeB2914f66222Fa7Ad138e128a0575048Bc76032": { + "643849421808137": "6652871947" + }, + "0x849eA9003Ba70e64D0de047730d47907762174C3": { + "646770632841517": "1588254225" + }, + "0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F": { + "644166242707654": "2050308397" + }, + "0x8687c54f8A431134cDE94Ae3782cB7cba9963D12": { + "646497940474546": "84596400000" + }, + "0x579De8E7dA10b45b43a24aC21dA8b1a3a9452D64": { + "647334889222283": "22379191354" + }, + "0xde13B8B32A0c7C1C300Cd4151772b7Ebd605660B": { + "656170577963257": "102136812055", + "647232227981242": "6298709791", + "652950104529552": "129174557467" + }, + "0xB0827d21e58354aa7ac05adFeb60861f85562376": { + "648060618871896": "108280308" + }, + "0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85": { + "647522463818695": "70976639" + }, + "0x679AeE8b2fA079B23934A1afB2d7d48DD7244560": { + "648088003454438": "6967239311" + }, + "0xf454a5753C12d990A79A69729d1B541a526cD7F5": { + "647505724273467": "177860187" + }, + "0xEa8f1607df5fd7e54BDd76a8Cb9dc4B0970089bD": { + "648143611689413": "16488629" + }, + "0x1298751f99f2f715178Cc58fB3779C55e91C26bC": { + "648537251637637": "31971947" + }, + "0x08e0F0DE1e81051826464043e7Ae513457B27a86": { + "648110674034173": "2331841959" + }, + "0x2E40961fd5Abd053128D2e724a61260C30715934": { + "658105711671123": "41555431100", + "679500898240401": "150688818320", + "671451812872345": "20082877176", + "658877005401946": "136033474375", + "676806771844942": "22871716433", + "679689278965321": "33005857560", + "676852872846308": "12839897666", + "720695437014319": "243235296262", + "720938672310581": "12267465638", + "725824924442098": "269398121130", + "744798716338245": "9220124675", + "860106144873359": "79143367104" + }, + "0x113560910CE2258559d7E1B38A4dD308C64d6D6a": { + "652886562087019": "63542442533" + }, + "0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234": { + "657666540789773": "75000000000" + }, + "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8": { + "661622790183905": "239200000000", + "660690919212731": "289575171383", + "668099555175266": "7477326571", + "675273135381879": "259861322259", + "676029448628099": "156891853803", + "670969584019292": "234760000000", + "674739632514740": "263907264047", + "674505181593279": "234450921461", + "675730618762610": "151122236793", + "676355375239188": "179430599503", + "675532996704138": "197622058472" + }, + "0xD0846D7D06f633b2Be43766E434eDf0acE9bA909": { + "656725301421263": "1084538296" + }, + "0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3": { + "661958706677690": "25027091964", + "763845450709086": "30629325526", + "768080691689073": "4437963" + }, + "0x48e9E2F211371bD2462e44Af3d2d1aA610437f82": { + "667085979405936": "7331625468" + }, + "0x48070111032FE753d1a72198d29b1811825A264e": { + "665432395338264": "268948474274", + "671213571259037": "238241613308", + "669549803608896": "188830987043", + "668538888477323": "173806994620", + "671471895749521": "224577013993" + }, + "0x088374e1aDf3111F2b77Af3a06d1F9Af8298910b": { + "676546336844312": "49190117" + }, + "0xB651078d1856EB206fB090fd9101f537c33589c2": { + "670156602457239": "16663047211" + }, + "0x377f781195d494779a6CcC2AA5C9fF961C683A27": { + "677766884983003": "10595565" + }, + "0x4fE52118aeF6CE3916a27310019af44bbc64cc31": { + "668527480798265": "11407679058" + }, + "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5": { + "682845256557823": "2585076", + "741718653137282": "111751582" + }, + "0x8d98fFF066733b1867e83D1E9563dbe2ad93d933": { + "726480239479153": "501252464", + "682012823032558": "229947181" + }, + "0x74E096E78789F31061Fc47F6950279A55C03288c": { + "680559945017520": "366462731", + "680818684025145": "2663427585" + }, + "0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2": { + "681870613397796": "211456338", + "683756565573835": "8759919160", + "681870824854134": "205872420", + "681991801335911": "19315015127" + }, + "0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a": { + "676879061041574": "401082333" + }, + "0xc47214a1a269F5FE7BB5ce462a2df514De60118C": { + "681639981870474": "38412816419" + }, + "0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3": { + "720451623201018": "43682114862" + }, + "0xb3b0EFf26C982669a9BA47B31aC6b130A4721819": { + "679985260625992": "171030000" + }, + "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c": { + "680105835387283": "912195631" + }, + "0xde03A13dfeeE02912Ae07a40c09dB2f99d940b00": { + "726387516970259": "92722508894", + "729765633699329": "46643670755", + "726149840247311": "24409520718" + }, + "0x8d4122ffE442De3574871b9648868c1C3396A0AF": { + "741731207273166": "819222700", + "741717634585957": "400610000", + "741726062974606": "818667500", + "741718197414792": "455722490", + "743584914211138": "4590853221" + }, + "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1": { + "744275435422955": "7987624361", + "743594952406230": "3702219951", + "744783236322609": "5670211506" + }, + "0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264": { + "740644060961741": "4860922695" + }, + "0x96E4FD50CD0A761528626fc072Da54ADFD2F8593": { + "741719419577984": "1466608" + }, + "0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA": { + "744297030626026": "11165929503", + "744341941826410": "16872062514", + "744308196555529": "33745270881" + }, + "0x06849E470D08bAb98007ff0758C1215a2D750219": { + "760543583068610": "160000000000" + }, + "0x4a52078E4706884fc899b2Df902c4D2d852BF527": { + "764116786012760": "434385954" + }, + "0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12": { + "763836703327895": "897670384" + }, + "0x18D467c40568dE5D1Ca2177f576d589c2504dE73": { + "767126479253709": "5921542512" + }, + "0x4888c0030b743c17C89A8AF875155cf75dCfd1E1": { + "767302481235981": "5239462203" + }, + "0x5D02957cF469342084e42F9f4132403Ea4c5fE01": { + "786826869494538": "44336089227", + "767507188351307": "3345435335" + }, + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B": { + "764117220398714": "5082059700" + }, + "0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7": { + "764293131039127": "5229504715" + }, + "0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3": { + "767642883227856": "39768883344" + }, + "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49": { + "911906996407371": "24032791791", + "768326922278702": "643659978" + }, + "0xf3dfdAf97eBda5556FCE939C4cf1CB1436138072": { + "767682652260502": "22872714395" + }, + "0x098616F858B4876Ff3BE60BA979d0f7620B53494": { + "767866168654114": "10776000000" + }, + "0xfb9f3c5E44f15467066bCCF47026f2E2773bd3F0": { + "768565015750227": "146528659" + }, + "0x93C950E36f3C155B2141f1516b7ea5B6D15eD981": { + "768601886344092": "32526495264", + "868255530067476": "89704746985", + "860250156865870": "35738780868" + }, + "0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E": { + "768350362242073": "34649098834" + }, + "0xd9f3F28735fDa3bF7207D19b9aD36fCF2701E329": { + "768717612283351": "10000000" + }, + "0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674": { + "769310460222539": "1300464490557", + "774579618067014": "4504970931573", + "771140309190191": "3056591031171" + }, + "0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD": { + "782528476402712": "75051323081" + }, + "0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B": { + "770929992347971": "34510450293" + }, + "0x7Fe78b37A3F8168Cd60C6860d176D22b81181555": { + "783115581867489": "232497931186" + }, + "0x86642f87887c1313f284DBEc47E79Dc06593b82e": { + "768785503361939": "2853000000" + }, + "0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8": { + "783376684764145": "1000000" + }, + "0x925a3A49f8F831879ee7A848524cEfb558921874": { + "789556545675975": "477950000000" + }, + "0x77f2cC48fD7dD11211A64650938a0B4004eBe72b": { + "792668647859111": "33461141683" + }, + "0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b": { + "801693742643965": "99999995904" + }, + "0x6974611c9e1437D74c07b5F031779Fb88f19923E": { + "808563031359360": "138799301180" + }, + "0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06": { + "837305979426084": "1501381879417" + }, + "0xd26Cc622697e8f6E580645094d62742EEc9bd4fc": { + "801574482155266": "119260488699" + }, + "0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0": { + "845407075505547": "149022357044" + }, + "0xe182F132B7aB8639c3B2faEBa87f4c952B4b2319": { + "859215691259276": "45066341711" + }, + "0xEF57259351dfD3BcE1a215C4688Cc67e6DCb258B": { + "845248806005547": "158269500000" + }, + "0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672": { + "826335238626477": "9112774391" + }, + "0x39167e20B785B46EBd856CC86DDc615FeFa51E76": { + "825748197827247": "503880761345" + }, + "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf": { + "887243147406769": "46252901321", + "870558058147864": "49189108815", + "887051135343310": "60164823097", + "861104480251463": "324510990839" + }, + "0xEfe609f34A17C919118C086F81d61ecA579AB2E7": { + "872831613927583": "313987459495" + }, + "0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d": { + "861503972645416": "15704000000" + }, + "0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E": { + "888963178962244": "163405602286", + "870187640701086": "362798420992" + }, + "0xE7cB38c67b4c07FfEA582bCa127fa5B4FFC568Fc": { + "869525296235171": "87717999114" + }, + "0x9980234b18408E07C0F74aCE3dF940B02DD4095c": { + "883529586723571": "5308261827" + }, + "0xf730c862ADFE955Be6a7612E092C123Ba89F50c6": { + "886692316669791": "264110000000" + }, + "0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4": { + "886028414825798": "48979547469" + }, + "0x87104977d80256B00465d3411c6D93A63818723c": { + "886456591570583": "134558229863" + }, + "0xa714B49Ff1Bae62E141e6a05bb10356069C31518": { + "860392158082257": "160", + "860392158081777": "160", + "860392158080977": "160", + "860392158082417": "160", + "860392158081617": "160", + "860392158081297": "160", + "860392158081137": "160", + "860426253859325": "160", + "860392158082097": "160", + "860426253857885": "160", + "860392158081457": "160", + "860426253859165": "160", + "860392158080817": "160", + "860426253859805": "160", + "860392158081937": "160", + "860426253859645": "160", + "860426253859965": "160", + "860392158110026": "160", + "860426253859485": "160", + "860426253861561": "159", + "860426253863310": "159", + "860426253862674": "159", + "860426253861879": "159", + "860426253858205": "160", + "860426253864582": "159", + "860426253862992": "159", + "860426253858845": "160", + "860426253863151": "159", + "860426253864105": "159", + "860426253860765": "160", + "860426253860605": "160", + "860426253857565": "160", + "860426253862515": "159", + "860426253864423": "159", + "860426253858685": "160", + "860426253857725": "160", + "860426253860445": "160", + "860426253861084": "159", + "860426253862833": "159", + "860426253858525": "160", + "860426253863469": "159", + "860426253863946": "159", + "860426253860125": "160", + "860426253861720": "159", + "860426253863628": "159", + "860426253861402": "159", + "860426253858365": "160", + "860426253860285": "160", + "860426253858045": "160", + "860426253859005": "160", + "860426253862197": "159", + "860426253862356": "159", + "860426253861243": "159", + "860426253857405": "160", + "860426253863787": "159", + "860426253860925": "159", + "860426253864264": "159", + "860426253862038": "159", + "860426260245242": "158", + "860426254276342": "158", + "860426260245400": "158", + "860426260246032": "158", + "860426254274912": "159", + "860426260244926": "158", + "860426254275866": "159", + "860426260245084": "158", + "860810927573314": "158", + "860426254275548": "159", + "860426254276500": "158", + "861085838114817": "158", + "860810927572682": "158", + "860426254276658": "158", + "860426254276184": "158", + "860810927573630": "158", + "860426254275389": "159", + "861085838115449": "158", + "860426254275071": "159", + "860810927573788": "158", + "860810927686348": "158", + "860426260245874": "158", + "860810927572524": "158", + "860426254275707": "159", + "860426254274753": "159", + "860426254276025": "159", + "860810927686032": "158", + "860426260245716": "158", + "860810927573156": "158", + "860810927686190": "158", + "860810927572840": "158", + "860810927573472": "158", + "860426254275230": "159", + "860426260245558": "158", + "860810927685874": "158", + "861085838113395": "158", + "861085838112921": "158", + "861085838115291": "158", + "861085838116081": "158", + "861085838115923": "158", + "861085838115133": "158", + "861085838112763": "158", + "861085838115607": "158", + "861085838114343": "158", + "861085838113079": "158", + "861085838115765": "158", + "860810927572998": "158", + "861085838114975": "158", + "861085838114185": "158", + "861085838114027": "158", + "861085838113711": "158", + "861085838114659": "158", + "860426255123753": "158", + "861085838113237": "158", + "861085838114501": "158", + "861085838113869": "158", + "861085838446610": "160", + "861085838447090": "159", + "861085838447567": "159", + "861085838446930": "160", + "861085838447726": "159", + "861085838447249": "159", + "861085838448362": "159", + "861085838447885": "159", + "861085838448044": "159", + "861085838446770": "160", + "861085838448521": "159", + "861085838447408": "159", + "861085838448203": "159", + "861085838448680": "159", + "861085838448839": "159", + "861085838480292": "160", + "861085838449157": "159", + "861085838480452": "160", + "861085838481248": "159", + "861085838449316": "159", + "861085838480771": "159", + "861085838480612": "159", + "861085838481407": "159", + "861085838449475": "159", + "861085838449793": "159", + "861104013700269": "793", + "861085838449634": "159", + "861085838480930": "159", + "861104013698843": "158", + "861104480230238": "1268", + "861104013699159": "476", + "861104013698685": "158", + "861085838481089": "159", + "861104013699001": "158", + "861104013702172": "1110", + "861104013701062": "952", + "861104013699635": "634", + "861085838481566": "159", + "861085838448998": "159", + "861104480232140": "1427", + "861104480236895": "1743", + "861104480248619": "158", + "861104480250199": "158", + "861104480249251": "158", + "861104480246401": "2218", + "861104480249883": "316", + "861104480248935": "158", + "861104480234359": "1585", + "861104480239747": "1902", + "861104480250515": "158", + "861104480242916": "2060" + }, + "0x214e02A853dCAd01B2ab341e7827a656655A1B81": { + "904990242139002": "3425838650831" + }, + "0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869": { + "911830101743081": "61984567762", + "888282326308800": "20896050000" + }, + "0x4e6DA2D137281CaDa5E82372849CbA8D65fC88C7": { + "825748187827247": "10000000", + "819841240087247": "2404456000000" + }, + "0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1": { + "915394886313821": "16285361281" + }, + "0x23cAea94eB856767cf71a30824d72Ed5B93aA365": { + "915418302913680": "238900000000" + }, + "0x358B8a97658648Bcf81103b397D571A2FED677eE": { + "917235408231892": "32949877099" + }, + "0x47C2f43D7fE9604c0f9cd4F6D209648a4E8e0209": { + "130708317757427": "358852500300" + }, + "0x9558d273A81CF0b41931C78B502c4CB2Bd3deb42": { + "131067170257727": "423037526400" + }, + "0x8ED057F90b2442813136066C8D1F1C54A64f6bFa": { + "823927383087247": "1820804740000" + }, + "0x60A188efbC22bBC3aaB17084e2a0A26F85A640bC": { + "643081736145350": "5554593027", + "27810434645322": "249268258919", + "644589920367054": "11609907184", + "643172812995983": "131685951867", + "659543492088550": "6350979273", + "634473649794302": "7448178586", + "643049601358775": "4230557254", + "637043244126036": "72498841440", + "634400137746283": "8588394184", + "73925887383291": "254078110756", + "185004884855656": "175801604856", + "181897526983919": "213880008209", + "180671778459665": "175568451420", + "211719470709597": "337001078730", + "395329957955593": "34024756793", + "561850511130774": "15695221534", + "587092346756494": "84111300000", + "562892769802308": "32896000000", + "603776314537146": "3284158899", + "579114950154306": "2638341158", + "572224872945253": "32896500000", + "634044404773204": "5637466721", + "634338197219686": "28471528595" + }, + "0x4E7837928eD3E7AccF715da1aE86c0A0f5280DC0": { + "818887472087247": "953768000000", + "822245696087247": "1681687000000" + }, + "0x43b43aA7Ea873e8d7650f64ca24BeC007D6CD920": { + "682720800766215": "105474278261", + "644427143015560": "10697128872", + "644402952187282": "11034160064", + "643113131975195": "4579348454", + "759973111455038": "190360000000", + "635130589958365": "59209280000", + "641243528586934": "224172731213", + "634389262085325": "5903735025", + "634951612625176": "6468282284", + "634318197219686": "20000000000", + "634297257454226": "8643272696", + "197304668156358": "347968913517", + "197112848801207": "191819355151", + "119938474317595": "231684492403" + }, + "0x1d18B7E78a9a92a9DF8a1e3546b4B1fB825e012A": { + "469496367277393": "558419996300" + }, + "0x9d5b2a8Ad23E7d870CFa7c7B88A74C64FA098b46": { + "84597875356697": "133850744098", + "32028293099710": "14856250000", + "158734314278093": "202188482247", + "171941305124226": "512087118743", + "97016486455371": "254834033922", + "172453392242969": "167963854918", + "250740780766453": "6745238037", + "564630258655208": "32896500000", + "565841291995977": "32896500000", + "395286775789415": "32560000000", + "569318757818315": "32896500000", + "569955901513715": "32896500000", + "635871823538305": "8232935488", + "637126106210329": "3549072302", + "636053162040032": "971681987", + "637129677608084": "6326081465", + "638293184544519": "3222535993", + "638142185386743": "70301972656", + "644495136777647": "14591855468", + "644463766708048": "12970687979", + "638952019925396": "53884687500", + "646991286880741": "10764000000", + "645998771359546": "402840000000", + "648593843684716": "9515295236", + "659752492504115": "68538447916", + "682072110977139": "44526000000" + }, + "0x78A0A1F1E055c4ceeBb658AdF0c4954ae925e944": { + "892341437280727": "145860654491", + "892487297935218": "3029212937100" + }, + "0x34d81294A7cf6F794F660e02B468449B31cA45fb": { + "895516510872318": "3743357026612" + }, + "0x5A32038d9a3e6b7CffC28229bB214776bf50CE50": { + "468838067240993": "658300036400" + }, + "0x72e864CF239cD6ce0116b78F9e1299A5948beD9A": { + "27196243734508": "362696248309" + }, + "0x24367F22624f739D7F8AB2976012FbDaB8dd33f4": { + "26768674950508": "427568784000" + }, + "0xD8f6877aec57C3d70F458C54a1382dDc90522E7D": { + "919409898160669": "4513267965", + "919405404015802": "4494144867" + }, + "0xbF133C1763c0751494CE440300fCd6b8c4e80D83": { + "219576542037330": "949101066" + }, + "0xA5124bD6d445e23642F8D41c1ebf3Cd20FCe3056": { + "448540020279257": "424808836024" + }, + "0x2BEe2D53261B16892733B448351a8Fd8c0f743e7": { + "919414411428634": "147996" + }, + "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF": { + "919414419371700": "44905425998" + } + }, + "arbContracts": { + "0xeCdc4DD795D79F668Ff09961b2A2f47FE8e4f170": { + "33252951017861": "335855400" + }, + "0xd39A31e5f23D90371D61A976cACb728842e04ca9": { + "572862016640653": "13743931655", + "605863227470297": "5130435000", + "588843945566494": "310402500", + "635529257138881": "39926484", + "635837727008262": "2347857", + "646582536874546": "1525000" + } + }, + "ethContracts": { + "0x251FAe8f687545BDD462Ba4FCDd7581051740463": { + "28368015360976": "10000000000", + "38722543672289": "250000000", + "33106872744841": "6434958505", + "61000878716919": "789407727", + "72536373875278": "200000000", + "75995951619880": "5268032293", + "75784287632794": "2935934380", + "217474381338301": "1293174476", + "220144194502828": "47404123300", + "333622810114113": "200755943301", + "378227726508635": "645363133", + "574387565763701": "55857695832", + "575679606872092": "38492647384", + "626184530707078": "90718871797", + "634034652140320": "1827630964", + "680095721530457": "10113856826", + "767824420446983": "1158445599", + "767978192014986": "1606680000", + "792657494145217": "11153713894", + "790662167913055": "60917382823", + "845186146706783": "62659298764" + }, + "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29": { + "28553316405699": "56203360846", + "33290510627174": "565390687", + "32013293099710": "15000000000", + "33262951017861": "9375000000", + "118322555232226": "5892426278", + "180071240663041": "81992697619", + "317859517384357": "291195415400", + "338910099578361": "72913082044", + "444973868346640": "61560768641", + "477195175494445": "29857571563", + "706133899990342": "2720589483246", + "726480740731617": "2047412139790", + "721409921103392": "4415003338706", + "735554122237517": "2514215964115", + "729812277370084": "5650444595733", + "744819318753537": "98324836380", + "760472183068657": "71399999953" + }, + "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11": { + "462646168927": "1666666666", + "647175726076112": "16711431033", + "720495305315880": "55569209804" + }, + "0x83A758a6a24FE27312C1f8BDa7F3277993b64783": { + "344618618497376": "81000597500" + }, + "0x8525664820C549864982D4965a41F83A7d26AF58": { + "28385711672356": "4000000000" + }, + "0xAA420e97534aB55637957e868b658193b112A551": { + "31772724860478": "43540239232" + }, + "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997": { + "743356388661755": "284047664", + "743361211817145": "347174290", + "743715232207665": "154091444", + "743356672709419": "804932236", + "743360634868902": "576948243", + "743722931420691": "332343086", + "743361558991435": "112939223481", + "743721114148315": "1195569000", + "743723263763777": "983775747", + "743359427829722": "616622839", + "743719327158832": "900100878", + "743630495498696": "25004744107", + "743717465912681": "930527887", + "743850150895666": "37264237", + "743360044452561": "590416341", + "743474498214916": "37245408077", + "743600698167087": "4239282", + "743850188159903": "247711", + "743357477641655": "744601051", + "743828125898584": "21981814788", + "743724841468431": "33509916350", + "743358222242706": "636559806", + "743539482459035": "36180207225", + "743718396440568": "930718264", + "743655500242803": "27838968460", + "743720227259710": "886888605", + "743683339211263": "1045028130", + "743716535470658": "930442023", + "743724247539524": "409861551", + "743724754699738": "86768693", + "743758351384781": "69774513803", + "743715386299109": "356610619", + "743511743622993": "27738836042", + "744149549341165": "125886081790", + "743850188825560": "120504819738", + "743715742909728": "792560930", + "743850107713372": "43182294", + "743850188407614": "417946", + "743724657401075": "97298663", + "743970693645298": "178855695867", + "743575662666260": "9251544878", + "743358858802512": "569027210", + "759846598641700": "25193251", + "759845499012078": "79231634", + "759820979493945": "70435190", + "759848782950665": "25295452", + "759849170829070": "36511282", + "759846192334006": "158241812", + "759845097673944": "78350903", + "759846954659102": "631976394", + "759847586635496": "66958527", + "759849350525552": "17041223", + "759846134413094": "27722926", + "759849070462313": "29081391", + "759849282436810": "33956125", + "759849367566775": "20273897", + "759847763930840": "270669443", + "759846649222491": "665345", + "759794285432848": "26613224094", + "759849642570643": "45789959", + "759849606957706": "35612937", + "759847653594023": "44950580", + "759822114721445": "22786793078", + "759848034600283": "365575215", + "759846162136020": "30197986", + "759845257599860": "81611843", + "759775201252262": "18264975890", + "759849567176346": "39781360", + "759844955449185": "62362349", + "759845419086397": "79925681", + "759848981304400": "63821133", + "759846623834951": "25387540", + "759849442801928": "52882809", + "759793466228152": "133677", + "759845578243712": "73291169", + "759847745091804": "18839036", + "759849099543704": "29122172", + "759845339211703": "79874694", + "759845895004270": "75906832", + "759821772251897": "342469548", + "759849495684737": "71491609", + "759669831627157": "91465441036", + "759849316392935": "34132617", + "759773643882684": "1557369578", + "759847698544603": "46547201", + "759849045125533": "25336780", + "759821049929135": "64820367", + "759849396878147": "45923781", + "759849207340352": "41243780", + "759845766640518": "56977225", + "759821114749502": "315142246", + "759848595655012": "187295653", + "759761297451604": "12346431080", + "759845651534881": "61264703", + "759846350575818": "123926293", + "759849157372869": "13456201", + "759848808246117": "173058283", + "759846058683685": "75729409", + "759845176024847": "81575013", + "759845823617743": "71386527", + "759849128665876": "28706993", + "759849387840672": "9037475", + "759849248584132": "33852678", + "759846474502111": "124139589", + "759845017811534": "79862410", + "759868363900948": "2621289", + "759849734651926": "46416554", + "759935079369547": "45866818", + "759865634502895": "20672897", + "759864451656441": "45362892", + "759868472460443": "66561157603", + "759866238288974": "27468895", + "759940035846319": "79415211", + "759864923379852": "45332668", + "759866210354501": "27934473", + "759865189244823": "45959807", + "759864968712520": "14947041", + "759868225980551": "45842728", + "759864623518170": "16029726", + "759865849406376": "249729828", + "759868271823279": "46014440", + "759849923422103": "43423401", + "759865028070737": "45841550", + "759864666970344": "45324196", + "759944631176184": "441416", + "759865401309329": "48060122", + "759849688360602": "46291324", + "759849966845504": "11714877", + "759868366522237": "53709228", + "759935291251999": "4720868852", + "759864377428188": "28949561", + "759864983659561": "44411176", + "759865309352063": "54352361", + "759849877025014": "20612970", + "759940529740783": "23798092", + "759940575669691": "19923295", + "759940703254106": "96921736", + "759849781068480": "46480026", + "759865588793765": "45709130", + "759866099136204": "111218297", + "759940324571976": "47123207", + "759865073912287": "37491304", + "759865673264324": "176142052", + "759864839501675": "38552197", + "759864497019333": "45386397", + "759865111403591": "35823677", + "759868180376858": "45603693", + "759865363704424": "37604905", + "759864712294540": "45381527", + "759940458415728": "28464738", + "759864794252615": "45249060", + "759864878053872": "45325980", + "759940371695183": "21522781", + "759944524831820": "94934102", + "759940115261530": "104887944", + "759865502784387": "41998112", + "759864364377919": "13050269", + "759849897637984": "9530420", + "759868420231465": "52228978", + "759865655175792": "18088532", + "759935217066027": "27091944", + "759940486880466": "16535232", + "759935244157971": "47094028", + "759940220149474": "104422502", + "759935033618046": "45751501", + "759864542405730": "44251644", + "759935171141704": "45924323", + "759868317837719": "46063229", + "759864639547896": "27422448", + "759865545775991": "43017774", + "759944301288885": "148924295", + "759865235204630": "28621023", + "759940553538875": "22130816", + "759866265757869": "1914618989", + "759849827548506": "28909947", + "759849856458453": "20566561", + "759940431848469": "26567259", + "759944876402388": "86731197", + "759970096328147": "87094141", + "759968303751614": "86480048", + "759970009257032": "87071115", + "759969922263950": "86993082", + "759945236861297": "37118", + "759968390231662": "87319503", + "759969313128560": "78853009", + "759947353926358": "19648269869", + "759945663978694": "33147570", + "759968565049433": "57445411", + "759967359236250": "73180835", + "759969182444540": "86435423", + "759970659966091": "7037654", + "759967315893614": "43342636", + "760353370648423": "136316", + "760353371573213": "659890", + "759971792380007": "55918771", + "759971171933682": "103831674", + "759972626954274": "29991995", + "759972684661677": "10745158", + "760353369656132": "992291", + "759972063083193": "44521152", + "759972656946269": "27715408", + "760357963287583": "52520804", + "759972051319140": "11764053", + "759972432426724": "54009683", + "759972545991397": "40392605", + "759972270510579": "52771216", + "759972107604345": "54315334", + "760353358762258": "10893874", + "760353370784739": "147677", + "759972005045778": "46273362", + "759971951782615": "53263163", + "760354238838872": "3273321614", + "759971848298778": "51663688", + "759971899962466": "51820149", + "759972695406835": "53647337", + "760354201137939": "3218014", + "759972378810991": "53615733", + "759972586384002": "40570272", + "759973067945793": "43509245", + "760353372233103": "46092807", + "759970895945609": "88340633", + "760358123735957": "112541922486", + "761858291968910": "1954482199", + "761807542325030": "712321671", + "760961254322316": "846285958415", + "762477170260262": "181104817321", + "762295918132248": "68617976", + "762237672060652": "57392002182", + "761858211139284": "53537634", + "762941637855962": "53583667", + "762941584284511": "53571451", + "761808255104338": "10685317968", + "761858011206868": "52031027", + "762928154263486": "12718343972", + "762658275077583": "181134595436", + "760765586953427": "195667368889", + "762941373378458": "61742453", + "761860307483525": "798157403", + "763444820135647": "9452272123", + "762295986750224": "181183510038", + "762941691439629": "503128696018", + "761818941407193": "38669865140", + "763877250938021": "54871543", + "763574531068892": "38976282600", + "763877196713494": "54224527", + "763879425886186": "18918512681", + "763478961261387": "50245820668", + "763529207082055": "45323986837", + "763454275602361": "24685659026", + "763877347112986": "53640521", + "763899542751244": "4287074277", + "763938664793385": "889781905", + "763976238932410": "67220754", + "763976127391221": "54879926", + "763908632298791": "1924103043", + "763904947351082": "3672111531", + "763904856308950": "91042132", + "763978572723857": "2432585925", + "763910715862653": "4104368630", + "763975977681622": "85746574", + "763989323641528": "66961666112", + "763985961279749": "3362361779", + "763983475557042": "2433575022", + "764453314028098": "886719471", + "764448533013699": "3175483736", + "764448523798789": "9214910", + "766181126764911": "110330114890", + "767321251748842": "180967833670", + "766291456879801": "143444348214" + }, + "0xea3154098a58eEbfA89d705F563E6C5Ac924959e": { + "634031481420456": "3170719864", + "647388734023467": "9748779666", + "721225229970053": "55487912201", + "741007335527824": "48848467587", + "743270084189585": "44269246366" + } + } +} \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/exports/beanstalk_silo.json b/scripts/beanstalkShipments/data/exports/beanstalk_silo.json new file mode 100644 index 00000000..b294ecb2 --- /dev/null +++ b/scripts/beanstalkShipments/data/exports/beanstalk_silo.json @@ -0,0 +1,39208 @@ +{ + "arbEOAs": { + "0x00975ae9c986df066c7bbDA496103B4cC44B26c3": { + "tokens": { + "bean": "832063255", + "lp": "14521654261" + }, + "bdvAtSnapshot": { + "bean": "238998521", + "lp": "6836547958", + "total": "7075546479" + }, + "bdvAtRecapitalization": { + "bean": "832063255", + "lp": "28669579627", + "total": "29501642882" + } + }, + "0x008D63fab8179Ee0aE2082Bb57C72ED0c61f990f": { + "tokens": { + "bean": "2121937716", + "lp": "55369927823" + }, + "bdvAtSnapshot": { + "bean": "609496902", + "lp": "26067220730", + "total": "26676717632" + }, + "bdvAtRecapitalization": { + "bean": "2121937716", + "lp": "109314856707", + "total": "111436794423" + } + }, + "0x006b4b47C7F404335c87E85355e217305F97E789": { + "tokens": { + "bean": "1759086133", + "lp": "9798069112" + }, + "bdvAtSnapshot": { + "bean": "505272864", + "lp": "4612764371", + "total": "5118037235" + }, + "bdvAtRecapitalization": { + "bean": "1759086133", + "lp": "19343975387", + "total": "21103061520" + } + }, + "0x00C459905bC314E03Af933020dea4644BE06aaD9": { + "tokens": { + "bean": "42227193", + "lp": "3012208218" + }, + "bdvAtSnapshot": { + "bean": "12129170", + "lp": "1418096421", + "total": "1430225591" + }, + "bdvAtRecapitalization": { + "bean": "42227193", + "lp": "5946894328", + "total": "5989121521" + } + }, + "0x008829aCd7Ec452Fc50989aA9BFa5d196Baae20a": { + "tokens": { + "bean": "23702662572", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "6808257987", + "lp": "0", + "total": "6808257987" + }, + "bdvAtRecapitalization": { + "bean": "23702662572", + "lp": "2", + "total": "23702662574" + } + }, + "0x0063886D458CC0790a170dEBA645A0bcCC7f44D9": { + "tokens": { + "bean": "2542276640", + "lp": "10645283012" + }, + "bdvAtSnapshot": { + "bean": "730233373", + "lp": "5011618272", + "total": "5741851645" + }, + "bdvAtRecapitalization": { + "bean": "2542276640", + "lp": "21016599313", + "total": "23558875953" + } + }, + "0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97": { + "tokens": { + "bean": "4055519229", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1164891121", + "lp": "0", + "total": "1164891121" + }, + "bdvAtRecapitalization": { + "bean": "4055519229", + "lp": "0", + "total": "4055519229" + } + }, + "0x001f43cd9E84d90E1ee9DB192724ceF073D3FB2e": { + "tokens": { + "bean": "525968", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "151077", + "lp": "0", + "total": "151077" + }, + "bdvAtRecapitalization": { + "bean": "525968", + "lp": "0", + "total": "525968" + } + }, + "0x002505eefcBd852a148f03cA3451811032A72f96": { + "tokens": { + "bean": "742042285", + "lp": "891022603" + }, + "bdvAtSnapshot": { + "bean": "213141258", + "lp": "419478294", + "total": "632619552" + }, + "bdvAtRecapitalization": { + "bean": "742042285", + "lp": "1759113873", + "total": "2501156158" + } + }, + "0x00427C81629Cd592Aa068B0290425261cbB8Eba2": { + "tokens": { + "bean": "146208339309", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "41996298550", + "lp": "0", + "total": "41996298550" + }, + "bdvAtRecapitalization": { + "bean": "146208339309", + "lp": "2", + "total": "146208339311" + } + }, + "0x00aaEa7B4dC89E4a4fACDa32da496ba5D8E1216d": { + "tokens": { + "bean": "0", + "lp": "59416892837" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "27972463060", + "total": "27972463060" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "117304634154", + "total": "117304634154" + } + }, + "0x01C7145c01d06a026D3dDA4700b727fE62677628": { + "tokens": { + "bean": "305796468", + "lp": "828241366" + }, + "bdvAtSnapshot": { + "bean": "87835754", + "lp": "389921955", + "total": "477757709" + }, + "bdvAtRecapitalization": { + "bean": "305796468", + "lp": "1635167135", + "total": "1940963603" + } + }, + "0x01914D6E47657d6A7893F84Fc84660dc5aec08b6": { + "tokens": { + "bean": "140140961", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "40253529", + "lp": "0", + "total": "40253529" + }, + "bdvAtRecapitalization": { + "bean": "140140961", + "lp": "0", + "total": "140140961" + } + }, + "0x0259D65954DfbD0735E094C9CdACC256e5A29dD4": { + "tokens": { + "bean": "2258456160", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "648709914", + "lp": "0", + "total": "648709914" + }, + "bdvAtRecapitalization": { + "bean": "2258456160", + "lp": "0", + "total": "2258456160" + } + }, + "0x01e82e6c90fa599067E1F59323064055F5007A26": { + "tokens": { + "bean": "183919949", + "lp": "546133423" + }, + "bdvAtSnapshot": { + "bean": "52828430", + "lp": "257110331", + "total": "309938761" + }, + "bdvAtRecapitalization": { + "bean": "183919949", + "lp": "1078211571", + "total": "1262131520" + } + }, + "0x02A527084F5E73AF7781846762c8753aCD096461": { + "tokens": { + "bean": "6292120010", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1807323383", + "lp": "0", + "total": "1807323383" + }, + "bdvAtRecapitalization": { + "bean": "6292120010", + "lp": "0", + "total": "6292120010" + } + }, + "0x0301871FeDc523AB336535Ed14B939A956c4c39F": { + "tokens": { + "bean": "179127657", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "51451912", + "lp": "0", + "total": "51451912" + }, + "bdvAtRecapitalization": { + "bean": "179127657", + "lp": "0", + "total": "179127657" + } + }, + "0x02009370Ff755704E9acbD96042C1ab832D6067e": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x028afa72DADB6311107c382cF87504F37F11D482": { + "tokens": { + "bean": "1378926563651", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "396077350437", + "lp": "0", + "total": "396077350437" + }, + "bdvAtRecapitalization": { + "bean": "1378926563651", + "lp": "2", + "total": "1378926563653" + } + }, + "0x02df7e960FFda6Db4030003D1784A7639947d200": { + "tokens": { + "bean": "2392", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "687", + "lp": "0", + "total": "687" + }, + "bdvAtRecapitalization": { + "bean": "2392", + "lp": "0", + "total": "2392" + } + }, + "0x02FE27e7000C7B31E25E08dC3cDFdE5F39d659c5": { + "tokens": { + "bean": "12641981", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3631232", + "lp": "0", + "total": "3631232" + }, + "bdvAtRecapitalization": { + "bean": "12641981", + "lp": "0", + "total": "12641981" + } + }, + "0x02bfbb25bf8396910378bF3b3ce82C0CE6d5E61d": { + "tokens": { + "bean": "856227823", + "lp": "15800296659" + }, + "bdvAtSnapshot": { + "bean": "245939455", + "lp": "7438511062", + "total": "7684450517" + }, + "bdvAtRecapitalization": { + "bean": "856227823", + "lp": "31193957318", + "total": "32050185141" + } + }, + "0x0255b20571acc2e1708ADE387b692360537F9e89": { + "tokens": { + "bean": "1219966013", + "lp": "10832822743" + }, + "bdvAtSnapshot": { + "bean": "350418158", + "lp": "5099908789", + "total": "5450326947" + }, + "bdvAtRecapitalization": { + "bean": "1219966013", + "lp": "21386852258", + "total": "22606818271" + } + }, + "0x029D058CFdBE37eb93949e4143c516557B89EB3c": { + "tokens": { + "bean": "1046259987", + "lp": "1785058851" + }, + "bdvAtSnapshot": { + "bean": "300523534", + "lp": "840375361", + "total": "1140898895" + }, + "bdvAtRecapitalization": { + "bean": "1046259987", + "lp": "3524177477", + "total": "4570437464" + } + }, + "0x0127F5b0e559D1C8C054d83f8F187CDFDc80B608": { + "tokens": { + "bean": "722940032", + "lp": "547256693" + }, + "bdvAtSnapshot": { + "bean": "207654403", + "lp": "257639148", + "total": "465293551" + }, + "bdvAtRecapitalization": { + "bean": "722940032", + "lp": "1080429203", + "total": "1803369235" + } + }, + "0x03768446C681761669Ab6DC721762Aa065c81f26": { + "tokens": { + "bean": "3341835753", + "lp": "7118038027" + }, + "bdvAtSnapshot": { + "bean": "959895534", + "lp": "3351051296", + "total": "4310946830" + }, + "bdvAtRecapitalization": { + "bean": "3341835753", + "lp": "14052886423", + "total": "17394722176" + } + }, + "0x031B8ece36b2C1f14C870421A1989AEbe3d7bcFa": { + "tokens": { + "bean": "1349249757", + "lp": "7930105185" + }, + "bdvAtSnapshot": { + "bean": "387553103", + "lp": "3733358709", + "total": "4120911812" + }, + "bdvAtRecapitalization": { + "bean": "1349249757", + "lp": "15656121401", + "total": "17005371158" + } + }, + "0x0399ecFbb2a9D0D520738b3179FA685cD5c6D692": { + "tokens": { + "bean": "325920231", + "lp": "788212169" + }, + "bdvAtSnapshot": { + "bean": "93616023", + "lp": "371076890", + "total": "464692913" + }, + "bdvAtRecapitalization": { + "bean": "325920231", + "lp": "1556138931", + "total": "1882059162" + } + }, + "0x03F52a039d9665C19a771204493B53B81C9405aF": { + "tokens": { + "bean": "98189173", + "lp": "72415687" + }, + "bdvAtSnapshot": { + "bean": "28203465", + "lp": "34092074", + "total": "62295539" + }, + "bdvAtRecapitalization": { + "bean": "98189173", + "lp": "142967686", + "total": "241156859" + } + }, + "0x04Dc1bDcb450Ea6734F5001B9CeCb0Cd09690f4f": { + "tokens": { + "bean": "6778525253", + "lp": "39451725680" + }, + "bdvAtSnapshot": { + "bean": "1947036480", + "lp": "18573201771", + "total": "20520238251" + }, + "bdvAtRecapitalization": { + "bean": "6778525253", + "lp": "77888122833", + "total": "84666648086" + } + }, + "0x0519064e3216cf6d6643Cc65dB1C39C20ABE50e0": { + "tokens": { + "bean": "875658037", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "251520512", + "lp": "0", + "total": "251520512" + }, + "bdvAtRecapitalization": { + "bean": "875658037", + "lp": "0", + "total": "875658037" + } + }, + "0x04F095a8B608527B336DcfE5cC8A5Ac253007Dec": { + "tokens": { + "bean": "191567896", + "lp": "488545699" + }, + "bdvAtSnapshot": { + "bean": "55025196", + "lp": "229999010", + "total": "285024206" + }, + "bdvAtRecapitalization": { + "bean": "191567896", + "lp": "964518199", + "total": "1156086095" + } + }, + "0x0440bDd684444f1433f3d1E0208656abF9993C52": { + "tokens": { + "bean": "178201766", + "lp": "24419058885" + }, + "bdvAtSnapshot": { + "bean": "51185962", + "lp": "11496077799", + "total": "11547263761" + }, + "bdvAtRecapitalization": { + "bean": "178201766", + "lp": "48209669542", + "total": "48387871308" + } + }, + "0x051f77131b0ea6d149608021E06c7206317782CC": { + "tokens": { + "bean": "2098586", + "lp": "295722634" + }, + "bdvAtSnapshot": { + "bean": "602789", + "lp": "139221189", + "total": "139823978" + }, + "bdvAtRecapitalization": { + "bean": "2098586", + "lp": "583834558", + "total": "585933144" + } + }, + "0x04776ef6C70C281E13deDaf50AA8bbA75fbecA31": { + "tokens": { + "bean": "7703031720", + "lp": "98853704765" + }, + "bdvAtSnapshot": { + "bean": "2212588019", + "lp": "46538643690", + "total": "48751231709" + }, + "bdvAtRecapitalization": { + "bean": "7703031720", + "lp": "195163313304", + "total": "202866345024" + } + }, + "0x052E8fABDCE1dB054590664944B16e1df4B57898": { + "tokens": { + "bean": "3440515", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "988240", + "lp": "0", + "total": "988240" + }, + "bdvAtRecapitalization": { + "bean": "3440515", + "lp": "0", + "total": "3440515" + } + }, + "0x055C419F4841f6A3153E64a4E174a242A4fFA6f0": { + "tokens": { + "bean": "467506679", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "134284748", + "lp": "0", + "total": "134284748" + }, + "bdvAtRecapitalization": { + "bean": "467506679", + "lp": "0", + "total": "467506679" + } + }, + "0x05cD14412ccd74F05379199181aA1847ed4802fd": { + "tokens": { + "bean": "2931172830", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "841938359", + "lp": "0", + "total": "841938359" + }, + "bdvAtRecapitalization": { + "bean": "2931172830", + "lp": "0", + "total": "2931172830" + } + }, + "0x0562695929503E930DE265F944B899dEBF93Df7c": { + "tokens": { + "bean": "5112", + "lp": "106370027078" + }, + "bdvAtSnapshot": { + "bean": "1468", + "lp": "50077200458", + "total": "50077201926" + }, + "bdvAtRecapitalization": { + "bean": "5112", + "lp": "210002518065", + "total": "210002523177" + } + }, + "0x05Dc8E95a479dDA8C8Fc5a27Eb825f5042048937": { + "tokens": { + "bean": "1137065378", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "326606111", + "lp": "0", + "total": "326606111" + }, + "bdvAtRecapitalization": { + "bean": "1137065378", + "lp": "2", + "total": "1137065380" + } + }, + "0x056590F16D5b314a132BbCFb1283fEc5D5C6E670": { + "tokens": { + "bean": "3", + "lp": "152199151453" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "71652773118", + "total": "71652773119" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "300481309731", + "total": "300481309734" + } + }, + "0x0625fAaD99bCD3d22C91aB317079F6616e81e3c0": { + "tokens": { + "bean": "6947132453", + "lp": "40226235143" + }, + "bdvAtSnapshot": { + "bean": "1995466537", + "lp": "18937827659", + "total": "20933294196" + }, + "bdvAtRecapitalization": { + "bean": "6947132453", + "lp": "79417209005", + "total": "86364341458" + } + }, + "0x06319B2e91A7C559105eE81fF599FaFFEDbAd000": { + "tokens": { + "bean": "1548620079", + "lp": "321412412" + }, + "bdvAtSnapshot": { + "bean": "444819437", + "lp": "151315500", + "total": "596134937" + }, + "bdvAtRecapitalization": { + "bean": "1548620079", + "lp": "634552963", + "total": "2183173042" + } + }, + "0x066E9372fF4D618ba8f9b1E366463A18DD711e5E": { + "tokens": { + "bean": "3", + "lp": "1289883264" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "607255113", + "total": "607255114" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "2546570128", + "total": "2546570131" + } + }, + "0x0686002661e6a2A1E86b8Cb897C2eC226060481b": { + "tokens": { + "bean": "96240059", + "lp": "2927947200" + }, + "bdvAtSnapshot": { + "bean": "27643610", + "lp": "1378427767", + "total": "1406071377" + }, + "bdvAtRecapitalization": { + "bean": "96240059", + "lp": "5780540831", + "total": "5876780890" + } + }, + "0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8": { + "tokens": { + "bean": "11451791578", + "lp": "23894655710" + }, + "bdvAtSnapshot": { + "bean": "3289366806", + "lp": "11249197699", + "total": "14538564505" + }, + "bdvAtRecapitalization": { + "bean": "11451791578", + "lp": "47174359218", + "total": "58626150796" + } + }, + "0x0692Ee6b5c88870DA8105aFEAA834A20091a29Ff": { + "tokens": { + "bean": "105509727", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "30306192", + "lp": "0", + "total": "30306192" + }, + "bdvAtRecapitalization": { + "bean": "105509727", + "lp": "0", + "total": "105509727" + } + }, + "0x0694356524F17a18A0Ac3e1d8e767eeEBd8A4ad9": { + "tokens": { + "bean": "388961339", + "lp": "13403090147" + }, + "bdvAtSnapshot": { + "bean": "111723699", + "lp": "6309946989", + "total": "6421670688" + }, + "bdvAtRecapitalization": { + "bean": "388961339", + "lp": "26461238735", + "total": "26850200074" + } + }, + "0x077165031d8d46B52368A8C92E8333437fb60EF8": { + "tokens": { + "bean": "361369097", + "lp": "293698345" + }, + "bdvAtSnapshot": { + "bean": "103798214", + "lp": "138268188", + "total": "242066402" + }, + "bdvAtRecapitalization": { + "bean": "361369097", + "lp": "579838077", + "total": "941207174" + } + }, + "0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122": { + "tokens": { + "bean": "536208", + "lp": "382246" + }, + "bdvAtSnapshot": { + "bean": "154018", + "lp": "179955", + "total": "333973" + }, + "bdvAtRecapitalization": { + "bean": "536208", + "lp": "754655", + "total": "1290863" + } + }, + "0x069e85D4F1010DD961897dC8C095FBB5FF297434": { + "tokens": { + "bean": "1076430182", + "lp": "22280886252" + }, + "bdvAtSnapshot": { + "bean": "309189500", + "lp": "10489462472", + "total": "10798651972" + }, + "bdvAtRecapitalization": { + "bean": "1076430182", + "lp": "43988352228", + "total": "45064782410" + } + }, + "0x07806c232D6F669Eb9cD33FD2834869aa14EE4F4": { + "tokens": { + "bean": "43847978", + "lp": "1329232324" + }, + "bdvAtSnapshot": { + "bean": "12594718", + "lp": "625779981", + "total": "638374699" + }, + "bdvAtRecapitalization": { + "bean": "43847978", + "lp": "2624255561", + "total": "2668103539" + } + }, + "0x07A75Ba044cDAaa624aAbAD27CB95C42510AF4B5": { + "tokens": { + "bean": "11739905179", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3372123404", + "lp": "0", + "total": "3372123404" + }, + "bdvAtRecapitalization": { + "bean": "11739905179", + "lp": "0", + "total": "11739905179" + } + }, + "0x084D73726d2824478dF09bE72EcAB4177F7F1bd7": { + "tokens": { + "bean": "11033122", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3169110", + "lp": "0", + "total": "3169110" + }, + "bdvAtRecapitalization": { + "bean": "11033122", + "lp": "0", + "total": "11033122" + } + }, + "0x072Fa8a20fA621665B94745A8075073ceAdFE1DC": { + "tokens": { + "bean": "2652779850", + "lp": "274039097" + }, + "bdvAtSnapshot": { + "bean": "761973873", + "lp": "129012948", + "total": "890986821" + }, + "bdvAtRecapitalization": { + "bean": "2652779850", + "lp": "541025531", + "total": "3193805381" + } + }, + "0x0872FcfE9C10993c0e55bb0d0c61c327933D6549": { + "tokens": { + "bean": "378568367240", + "lp": "227594709997" + }, + "bdvAtSnapshot": { + "bean": "108738463533", + "lp": "107147720357", + "total": "215886183890" + }, + "bdvAtRecapitalization": { + "bean": "378568367240", + "lp": "449332048799", + "total": "827900416039" + } + }, + "0x0933F554312C7bcB86dF896c46A44AC2381383D1": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x095B9C41921415636F91F9B5754786Ed6CA6f1d4": { + "tokens": { + "bean": "961407801", + "lp": "8294178061" + }, + "bdvAtSnapshot": { + "bean": "276150931", + "lp": "3904758030", + "total": "4180908961" + }, + "bdvAtRecapitalization": { + "bean": "961407801", + "lp": "16374897384", + "total": "17336305185" + } + }, + "0x08fD119453cD459F7E9e4232AD9816266863BFb1": { + "tokens": { + "bean": "227357714", + "lp": "1954060389" + }, + "bdvAtSnapshot": { + "bean": "65305320", + "lp": "919938412", + "total": "985243732" + }, + "bdvAtRecapitalization": { + "bean": "227357714", + "lp": "3857831134", + "total": "4085188848" + } + }, + "0x0968d6491823b97446220081C511328d8d9Fb61D": { + "tokens": { + "bean": "433710848", + "lp": "843370335" + }, + "bdvAtSnapshot": { + "bean": "124577369", + "lp": "397044416", + "total": "521621785" + }, + "bdvAtRecapitalization": { + "bean": "433710848", + "lp": "1665035714", + "total": "2098746562" + } + }, + "0x0ab72D3f6eddF0e382f5CF4098fFAb85EA961077": { + "tokens": { + "bean": "8566370376", + "lp": "50365774564" + }, + "bdvAtSnapshot": { + "bean": "2460569961", + "lp": "23711350447", + "total": "26171920408" + }, + "bdvAtRecapitalization": { + "bean": "8566370376", + "lp": "99435336939", + "total": "108001707315" + } + }, + "0x0898512055826732026aC02242E7D7B66fccC2B0": { + "tokens": { + "bean": "7664127244", + "lp": "15293775166" + }, + "bdvAtSnapshot": { + "bean": "2201413253", + "lp": "7200049354", + "total": "9401462607" + }, + "bdvAtRecapitalization": { + "bean": "7664127244", + "lp": "30193950155", + "total": "37858077399" + } + }, + "0x09Bc3c127ED4c491880c2A250d6d034696cb5fC1": { + "tokens": { + "bean": "144721787", + "lp": "113263002" + }, + "bdvAtSnapshot": { + "bean": "41569307", + "lp": "53322296", + "total": "94891603" + }, + "bdvAtRecapitalization": { + "bean": "144721787", + "lp": "223611070", + "total": "368332857" + } + }, + "0x0988D84619708DCe4a9298939e5449d528Dc800B": { + "tokens": { + "bean": "6748804", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1938499", + "lp": "0", + "total": "1938499" + }, + "bdvAtRecapitalization": { + "bean": "6748804", + "lp": "0", + "total": "6748804" + } + }, + "0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b": { + "tokens": { + "bean": "1494514149", + "lp": "15743077415" + }, + "bdvAtSnapshot": { + "bean": "429278266", + "lp": "7411573215", + "total": "7840851481" + }, + "bdvAtRecapitalization": { + "bean": "1494514149", + "lp": "31080991423", + "total": "32575505572" + } + }, + "0x0b248c6A152F35A4678dF45Baf5958Ce8A8CaCCc": { + "tokens": { + "bean": "83765089", + "lp": "176538942" + }, + "bdvAtSnapshot": { + "bean": "24060349", + "lp": "83111533", + "total": "107171882" + }, + "bdvAtRecapitalization": { + "bean": "83765089", + "lp": "348534483", + "total": "432299572" + } + }, + "0x083aA7FF9AE00099471902178bf2fda4e6aC14Bf": { + "tokens": { + "bean": "187446615955", + "lp": "73701209093" + }, + "bdvAtSnapshot": { + "bean": "53841416180", + "lp": "34697276320", + "total": "88538692500" + }, + "bdvAtRecapitalization": { + "bean": "187446615955", + "lp": "145505645896", + "total": "332952261851" + } + }, + "0x0959BE05E1C3aDC6Ee20D6fA1252Bb0906A94743": { + "tokens": { + "bean": "22048237097", + "lp": "352507833782" + }, + "bdvAtSnapshot": { + "bean": "6333047431", + "lp": "165954695511", + "total": "172287742942" + }, + "bdvAtRecapitalization": { + "bean": "22048237097", + "lp": "695943535651", + "total": "717991772748" + } + }, + "0x09Ad186D43615aa3131c6064538aF6E0A643Ce12": { + "tokens": { + "bean": "544617532", + "lp": "14635890343" + }, + "bdvAtSnapshot": { + "bean": "156433761", + "lp": "6890328363", + "total": "7046762124" + }, + "bdvAtRecapitalization": { + "bean": "544617532", + "lp": "28895111815", + "total": "29439729347" + } + }, + "0x0B54B916E90b8f28ad21dA40638E0724132C9c93": { + "tokens": { + "bean": "56465631", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "16218962", + "lp": "0", + "total": "16218962" + }, + "bdvAtRecapitalization": { + "bean": "56465631", + "lp": "0", + "total": "56465631" + } + }, + "0x0b8e605A7446801ae645e57de5AAbbc251cD1e3c": { + "tokens": { + "bean": "848744412941", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "243789950196", + "lp": "0", + "total": "243789950196" + }, + "bdvAtRecapitalization": { + "bean": "848744412941", + "lp": "2", + "total": "848744412943" + } + }, + "0x0baBD9Eba4c7C739Edd2dBCd6de0b7C483068948": { + "tokens": { + "bean": "669443255", + "lp": "908819893" + }, + "bdvAtSnapshot": { + "bean": "192288203", + "lp": "427856956", + "total": "620145159" + }, + "bdvAtRecapitalization": { + "bean": "669443255", + "lp": "1794250422", + "total": "2463693677" + } + }, + "0x0b8fc89A38698B9BB52C544a1dBCc85ADfcA4153": { + "tokens": { + "bean": "350", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "101", + "lp": "0", + "total": "101" + }, + "bdvAtRecapitalization": { + "bean": "350", + "lp": "0", + "total": "350" + } + }, + "0x0Bbe643D5d9DD0498d0C9546F728504A4aAb78f4": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x0Bb53dE33DF0F8BA40E0E06Be85998f506c4C7bc": { + "tokens": { + "bean": "318308325", + "lp": "2826486707" + }, + "bdvAtSnapshot": { + "bean": "91429610", + "lp": "1330661891", + "total": "1422091501" + }, + "bdvAtRecapitalization": { + "bean": "318308325", + "lp": "5580231030", + "total": "5898539355" + } + }, + "0x0Bc7F48e752407108C0A164928DF7c65Aa4de31f": { + "tokens": { + "bean": "185092590", + "lp": "998407627" + }, + "bdvAtSnapshot": { + "bean": "53165255", + "lp": "470033338", + "total": "523198593" + }, + "bdvAtRecapitalization": { + "bean": "185092590", + "lp": "1971120263", + "total": "2156212853" + } + }, + "0x0bFD9FC73C82bE0558f3A651F10a8BD8c784F45E": { + "tokens": { + "bean": "15937856799", + "lp": "6863712510" + }, + "bdvAtSnapshot": { + "bean": "4577926236", + "lp": "3231319167", + "total": "7809245403" + }, + "bdvAtRecapitalization": { + "bean": "15937856799", + "lp": "13550780704", + "total": "29488637503" + } + }, + "0x0C040E41b5b17374b060872295cBE10Ec8954550": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x0d0bD6469BE80d57893cf1B21434936dfAA35319": { + "tokens": { + "bean": "3945781673", + "lp": "3252747118" + }, + "bdvAtSnapshot": { + "bean": "1133370545", + "lp": "1531338046", + "total": "2664708591" + }, + "bdvAtRecapitalization": { + "bean": "3945781673", + "lp": "6421781626", + "total": "10367563299" + } + }, + "0x0d07708d0E155865D9baEe9963E16ddd46F5dECF": { + "tokens": { + "bean": "23389023457", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6718169542", + "lp": "0", + "total": "6718169542" + }, + "bdvAtRecapitalization": { + "bean": "23389023457", + "lp": "0", + "total": "23389023457" + } + }, + "0x0ccBCaA60D8b59bDf751B70Ee623d58c609170ac": { + "tokens": { + "bean": "961507426", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "276179547", + "lp": "0", + "total": "276179547" + }, + "bdvAtRecapitalization": { + "bean": "961507426", + "lp": "0", + "total": "961507426" + } + }, + "0x0be9A9100A95075270e47De519D53c5fc8F7C936": { + "tokens": { + "bean": "437079890", + "lp": "48945955170" + }, + "bdvAtSnapshot": { + "bean": "125545079", + "lp": "23042923613", + "total": "23168468692" + }, + "bdvAtRecapitalization": { + "bean": "437079890", + "lp": "96632238584", + "total": "97069318474" + } + }, + "0x0d3fc68CA620bCFac48F18d75C6B6a8b0ffb8Fbb": { + "tokens": { + "bean": "157645017", + "lp": "146159965" + }, + "bdvAtSnapshot": { + "bean": "45281324", + "lp": "68809627", + "total": "114090951" + }, + "bdvAtRecapitalization": { + "bean": "157645017", + "lp": "288558361", + "total": "446203378" + } + }, + "0x0d5d11732391E14E2084596F0F521d4d363164B6": { + "tokens": { + "bean": "5151567497", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1479715642", + "lp": "0", + "total": "1479715642" + }, + "bdvAtRecapitalization": { + "bean": "5151567497", + "lp": "0", + "total": "5151567497" + } + }, + "0x0D935eaA0EaFcFe11f111638FEe358651456D29C": { + "tokens": { + "bean": "177509331", + "lp": "990932723" + }, + "bdvAtSnapshot": { + "bean": "50987070", + "lp": "466514280", + "total": "517501350" + }, + "bdvAtRecapitalization": { + "bean": "177509331", + "lp": "1956362829", + "total": "2133872160" + } + }, + "0x0d7E219D07ddE19fc3dfA9Ede55528b725231Ee5": { + "tokens": { + "bean": "1260014", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "361921", + "lp": "0", + "total": "361921" + }, + "bdvAtRecapitalization": { + "bean": "1260014", + "lp": "0", + "total": "1260014" + } + }, + "0x0d94B6e4c2Aa9383964986020B3534D34885f700": { + "tokens": { + "bean": "3921440433", + "lp": "3290343573" + }, + "bdvAtSnapshot": { + "bean": "1126378864", + "lp": "1549037818", + "total": "2675416682" + }, + "bdvAtRecapitalization": { + "bean": "3921440433", + "lp": "6496006954", + "total": "10417447387" + } + }, + "0x0cb556AebE39b3c9EF5CBe8b668E925DB10a2D7D": { + "tokens": { + "bean": "23233349347", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6673454333", + "lp": "0", + "total": "6673454333" + }, + "bdvAtRecapitalization": { + "bean": "23233349347", + "lp": "0", + "total": "23233349347" + } + }, + "0x0df3e4945E0Fa652D0FFEBc1bce58D1a14d9f9e0": { + "tokens": { + "bean": "371807178", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "106796407", + "lp": "0", + "total": "106796407" + }, + "bdvAtRecapitalization": { + "bean": "371807178", + "lp": "0", + "total": "371807178" + } + }, + "0x0DBFe040866BBF36f0231b589d26020bBAb923D2": { + "tokens": { + "bean": "10593832203", + "lp": "3712390479" + }, + "bdvAtSnapshot": { + "bean": "3042929987", + "lp": "1747730327", + "total": "4790660314" + }, + "bdvAtRecapitalization": { + "bean": "10593832203", + "lp": "7329238979", + "total": "17923071182" + } + }, + "0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781": { + "tokens": { + "bean": "36544251", + "lp": "9799343167" + }, + "bdvAtSnapshot": { + "bean": "10496824", + "lp": "4613364174", + "total": "4623860998" + }, + "bdvAtRecapitalization": { + "bean": "36544251", + "lp": "19346490708", + "total": "19383034959" + } + }, + "0x0DE299534957329688a735d03961dBd848A5f87f": { + "tokens": { + "bean": "2454613065", + "lp": "10050750678" + }, + "bdvAtSnapshot": { + "bean": "705053238", + "lp": "4731722556", + "total": "5436775794" + }, + "bdvAtRecapitalization": { + "bean": "2454613065", + "lp": "19842835513", + "total": "22297448578" + } + }, + "0x0E488e4a23cD8C67362AA716b5A2D45a9Cf65815": { + "tokens": { + "bean": "275672971", + "lp": "247826871" + }, + "bdvAtSnapshot": { + "bean": "79183201", + "lp": "116672678", + "total": "195855879" + }, + "bdvAtRecapitalization": { + "bean": "275672971", + "lp": "489275676", + "total": "764948647" + } + }, + "0x0e40Cf5c020ADa54351699a004fAEbE5e709a3A2": { + "tokens": { + "bean": "3", + "lp": "580383833165" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "273234842129", + "total": "273234842130" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "1145830923966", + "total": "1145830923969" + } + }, + "0x0e109847630A42fc85E1D47040ACAd1803078DCc": { + "tokens": { + "bean": "56976612", + "lp": "1045751613" + }, + "bdvAtSnapshot": { + "bean": "16365734", + "lp": "492322082", + "total": "508687816" + }, + "bdvAtRecapitalization": { + "bean": "56976612", + "lp": "2064589791", + "total": "2121566403" + } + }, + "0x0e72774AE3ceE5a127Df723b1DE4F5C49cA17917": { + "tokens": { + "bean": "72970527", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20959762", + "lp": "0", + "total": "20959762" + }, + "bdvAtRecapitalization": { + "bean": "72970527", + "lp": "0", + "total": "72970527" + } + }, + "0x0f26F792fB89daF87A10a40f57eD1a0093b74Ad7": { + "tokens": { + "bean": "56945833", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "16356893", + "lp": "0", + "total": "16356893" + }, + "bdvAtRecapitalization": { + "bean": "56945833", + "lp": "0", + "total": "56945833" + } + }, + "0x0F101CcDd4673316933339C8fba5Fc3b262cf4Cb": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x0E9a7280741E9B018beb5Fe409e6e21689F3B8EF": { + "tokens": { + "bean": "54115395", + "lp": "187669927" + }, + "bdvAtSnapshot": { + "bean": "15543890", + "lp": "88351811", + "total": "103895701" + }, + "bdvAtRecapitalization": { + "bean": "54115395", + "lp": "370509986", + "total": "424625381" + } + }, + "0x0f35218B2005F24a617996B691E71BCB433a329D": { + "tokens": { + "bean": "102168", + "lp": "118914379" + }, + "bdvAtSnapshot": { + "bean": "29346", + "lp": "55982868", + "total": "56012214" + }, + "bdvAtRecapitalization": { + "bean": "102168", + "lp": "234768381", + "total": "234870549" + } + }, + "0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59": { + "tokens": { + "bean": "17302329042", + "lp": "644269809711" + }, + "bdvAtSnapshot": { + "bean": "4969851785", + "lp": "303311273825", + "total": "308281125610" + }, + "bdvAtRecapitalization": { + "bean": "17302329042", + "lp": "1271958709323", + "total": "1289261038365" + } + }, + "0x0eF8249cDF160C30d9ad1C46aa845Fd097EF498c": { + "tokens": { + "bean": "125792369838", + "lp": "33765358582" + }, + "bdvAtSnapshot": { + "bean": "36132097143", + "lp": "15896156809", + "total": "52028253952" + }, + "bdvAtRecapitalization": { + "bean": "125792369838", + "lp": "66661732824", + "total": "192454102662" + } + }, + "0x0f76727c4BBe50179AFc3b0cd7Db3aed761AD0bd": { + "tokens": { + "bean": "371015824", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "106569101", + "lp": "0", + "total": "106569101" + }, + "bdvAtRecapitalization": { + "bean": "371015824", + "lp": "0", + "total": "371015824" + } + }, + "0x0F7aFAa9DAC8F9ada59a25fa02AA6Ab32E56b145": { + "tokens": { + "bean": "733555967", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "210703682", + "lp": "0", + "total": "210703682" + }, + "bdvAtRecapitalization": { + "bean": "733555967", + "lp": "0", + "total": "733555967" + } + }, + "0x0F7Ce9bd352145D50Dd197A43471752c7EcA6aF3": { + "tokens": { + "bean": "101932518", + "lp": "45931829" + }, + "bdvAtSnapshot": { + "bean": "29278689", + "lp": "21623924", + "total": "50902613" + }, + "bdvAtRecapitalization": { + "bean": "101932518", + "lp": "90681558", + "total": "192614076" + } + }, + "0x1085057e6d9AD66e73D3cC788079155660264152": { + "tokens": { + "bean": "174478760", + "lp": "203120992714" + }, + "bdvAtSnapshot": { + "bean": "50116581", + "lp": "95625910313", + "total": "95676026894" + }, + "bdvAtRecapitalization": { + "bean": "174478760", + "lp": "401014469147", + "total": "401188947907" + } + }, + "0x0f951699Eb95204107a105890Ac9Af6C587C260D": { + "tokens": { + "bean": "37044931", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10640638", + "lp": "0", + "total": "10640638" + }, + "bdvAtRecapitalization": { + "bean": "37044931", + "lp": "0", + "total": "37044931" + } + }, + "0x0f5F4b5b7ca352cf4F5f2fc1Ac8A9889DECc4fCB": { + "tokens": { + "bean": "15722689880", + "lp": "13474323418" + }, + "bdvAtSnapshot": { + "bean": "4516122550", + "lp": "6343482402", + "total": "10859604952" + }, + "bdvAtRecapitalization": { + "bean": "15722689880", + "lp": "26601872019", + "total": "42324561899" + } + }, + "0x0fC213B53e1182796603F7dEc12A5A01bd09ff35": { + "tokens": { + "bean": "1098506778", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "315530693", + "lp": "0", + "total": "315530693" + }, + "bdvAtRecapitalization": { + "bean": "1098506778", + "lp": "0", + "total": "1098506778" + } + }, + "0x0FBF5E9C8D7cB0AeDd6F02Df0018178099c7d76A": { + "tokens": { + "bean": "2236404381", + "lp": "975908803" + }, + "bdvAtSnapshot": { + "bean": "642375849", + "lp": "459441274", + "total": "1101817123" + }, + "bdvAtRecapitalization": { + "bean": "2236404381", + "lp": "1926701644", + "total": "4163106025" + } + }, + "0x1083D7254E01beCd64C3230612BF20E14010d646": { + "tokens": { + "bean": "73071855354", + "lp": "30000000001" + }, + "bdvAtSnapshot": { + "bean": "20988867444", + "lp": "14123490000", + "total": "35112357444" + }, + "bdvAtRecapitalization": { + "bean": "73071855354", + "lp": "59227920827", + "total": "132299776181" + } + }, + "0x10527A1232287Ad8c408848A56b7D0471BB23daB": { + "tokens": { + "bean": "267978877", + "lp": "11691950105" + }, + "bdvAtSnapshot": { + "bean": "76973181", + "lp": "5504371346", + "total": "5581344527" + }, + "bdvAtRecapitalization": { + "bean": "267978877", + "lp": "23082996504", + "total": "23350975381" + } + }, + "0x11788dc374A39896CA7Ec0961110f997bd1BE201": { + "tokens": { + "bean": "261998826", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "75255495", + "lp": "0", + "total": "75255495" + }, + "bdvAtRecapitalization": { + "bean": "261998826", + "lp": "0", + "total": "261998826" + } + }, + "0x10Ec8540E82f4e0bEE54d8c8B72e00609b6CaB38": { + "tokens": { + "bean": "1304891619", + "lp": "614748440" + }, + "bdvAtSnapshot": { + "bean": "374811849", + "lp": "289413115", + "total": "664224964" + }, + "bdvAtRecapitalization": { + "bean": "1304891619", + "lp": "1213675731", + "total": "2518567350" + } + }, + "0x10e03eB5950bEA08bb882e3FF01286665f209F97": { + "tokens": { + "bean": "3", + "lp": "81216705976" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "38235444489", + "total": "38235444490" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "160343221041", + "total": "160343221044" + } + }, + "0x116E7Dbd690D6624FEeF080b9e8EbD6f967Fe315": { + "tokens": { + "bean": "1950", + "lp": "13231405344" + }, + "bdvAtSnapshot": { + "bean": "560", + "lp": "6229120702", + "total": "6229121262" + }, + "bdvAtRecapitalization": { + "bean": "1950", + "lp": "26122287604", + "total": "26122289554" + } + }, + "0x10bf1Dcb5ab7860baB1C3320163C6dddf8DCC0e4": { + "tokens": { + "bean": "5950012847004", + "lp": "157893005685" + }, + "bdvAtSnapshot": { + "bean": "1709057890122", + "lp": "74333342895", + "total": "1783391233017" + }, + "bdvAtRecapitalization": { + "bean": "5950012847004", + "lp": "311722481319", + "total": "6261735328323" + } + }, + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x11d67Fa925877813B744aBC0917900c2b1D6Eb81": { + "tokens": { + "bean": "87110560719", + "lp": "492915000252" + }, + "bdvAtSnapshot": { + "bean": "25021289019", + "lp": "232056002564", + "total": "257077291583" + }, + "bdvAtRecapitalization": { + "bean": "87110560719", + "lp": "973144353618", + "total": "1060254914337" + } + }, + "0x11D86e9F9C2a1cF597b974E50C660316c92215AA": { + "tokens": { + "bean": "296343911", + "lp": "1318291210" + }, + "bdvAtSnapshot": { + "bean": "85120640", + "lp": "620629091", + "total": "705749731" + }, + "bdvAtRecapitalization": { + "bean": "296343911", + "lp": "2602654914", + "total": "2898998825" + } + }, + "0x1193C9F3E10DEFBd5cF956575aAF5aBEAcC1b068": { + "tokens": { + "bean": "199965660", + "lp": "231301884" + }, + "bdvAtSnapshot": { + "bean": "57437336", + "lp": "108892995", + "total": "166330331" + }, + "bdvAtRecapitalization": { + "bean": "199965660", + "lp": "456650989", + "total": "656616649" + } + }, + "0x1223fB83511D643CD2f1e6257f8B77Fe282e8699": { + "tokens": { + "bean": "23287185", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6688918", + "lp": "0", + "total": "6688918" + }, + "bdvAtRecapitalization": { + "bean": "23287185", + "lp": "0", + "total": "23287185" + } + }, + "0x1202fBA35cc425c07202BAA4b17fA9a37D2dBeBb": { + "tokens": { + "bean": "369", + "lp": "59568204102" + }, + "bdvAtSnapshot": { + "bean": "106", + "lp": "28043697832", + "total": "28043697938" + }, + "bdvAtRecapitalization": { + "bean": "369", + "lp": "117603362542", + "total": "117603362911" + } + }, + "0x12263becBe8E1b30B5538b7E2626e47bDbB2585e": { + "tokens": { + "bean": "422820831", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "121449364", + "lp": "0", + "total": "121449364" + }, + "bdvAtRecapitalization": { + "bean": "422820831", + "lp": "0", + "total": "422820831" + } + }, + "0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333": { + "tokens": { + "bean": "1114479639", + "lp": "6900295848" + }, + "bdvAtSnapshot": { + "bean": "320118674", + "lp": "3248541980", + "total": "3568660654" + }, + "bdvAtRecapitalization": { + "bean": "1114479639", + "lp": "13623005872", + "total": "14737485511" + } + }, + "0x1233B9569C0edf209826Bee9aa7B5d5DD202b36f": { + "tokens": { + "bean": "10175152053", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2922669975", + "lp": "0", + "total": "2922669975" + }, + "bdvAtRecapitalization": { + "bean": "10175152053", + "lp": "0", + "total": "10175152053" + } + }, + "0x12627902E45c6424d51C770f41e1900563528B44": { + "tokens": { + "bean": "3187961540", + "lp": "5426286729" + }, + "bdvAtSnapshot": { + "bean": "915697321", + "lp": "2554603545", + "total": "3470300866" + }, + "bdvAtRecapitalization": { + "bean": "3187961540", + "lp": "10712922692", + "total": "13900884232" + } + }, + "0x12985a83081288BecABf59F76e5549dBE39Af4d6": { + "tokens": { + "bean": "90535742", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "26005124", + "lp": "0", + "total": "26005124" + }, + "bdvAtRecapitalization": { + "bean": "90535742", + "lp": "0", + "total": "90535742" + } + }, + "0x127c224bF830b74B823dc3e360A9aFf22A517E00": { + "tokens": { + "bean": "11604009144", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "3333089170", + "lp": "0", + "total": "3333089170" + }, + "bdvAtRecapitalization": { + "bean": "11604009144", + "lp": "2", + "total": "11604009146" + } + }, + "0x12481a91479a750dE5Fd6Ded5741Fc87671E30Af": { + "tokens": { + "bean": "4519965358", + "lp": "2372875257" + }, + "bdvAtSnapshot": { + "bean": "1298296770", + "lp": "1117109332", + "total": "2415406102" + }, + "bdvAtRecapitalization": { + "bean": "4519965358", + "lp": "4684682262", + "total": "9204647620" + } + }, + "0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186": { + "tokens": { + "bean": "525108601", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "150830094", + "lp": "0", + "total": "150830094" + }, + "bdvAtRecapitalization": { + "bean": "525108601", + "lp": "2", + "total": "525108603" + } + }, + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040": { + "tokens": { + "bean": "0", + "lp": "9" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "4", + "total": "4" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "18", + "total": "18" + } + }, + "0x12b9eeBf7960fB75B4e3A77af97C8A4f5f6cce34": { + "tokens": { + "bean": "334960002", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "96212571", + "lp": "0", + "total": "96212571" + }, + "bdvAtRecapitalization": { + "bean": "334960002", + "lp": "0", + "total": "334960002" + } + }, + "0x1397c24478cBe0a54572ADec2A333f87Ad75Ac02": { + "tokens": { + "bean": "53619495", + "lp": "313407252" + }, + "bdvAtSnapshot": { + "bean": "15401449", + "lp": "147546806", + "total": "162948255" + }, + "bdvAtRecapitalization": { + "bean": "53619495", + "lp": "618748664", + "total": "672368159" + } + }, + "0x12f1412fECBf2767D10031f01D772d618594Ea28": { + "tokens": { + "bean": "2413700405", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "693301650", + "lp": "0", + "total": "693301650" + }, + "bdvAtRecapitalization": { + "bean": "2413700405", + "lp": "0", + "total": "2413700405" + } + }, + "0x1384b4515544e520956e4FA7F5A10C7fb0AC3729": { + "tokens": { + "bean": "9001970760", + "lp": "49292959097" + }, + "bdvAtSnapshot": { + "bean": "2585690073", + "lp": "23206287163", + "total": "25791977236" + }, + "bdvAtRecapitalization": { + "bean": "9001970760", + "lp": "97317315955", + "total": "106319286715" + } + }, + "0x13b1ddb38c80327257Bdcb0e321c834401399967": { + "tokens": { + "bean": "57749821", + "lp": "257224456" + }, + "bdvAtSnapshot": { + "bean": "16587828", + "lp": "121096901", + "total": "137684729" + }, + "bdvAtRecapitalization": { + "bean": "57749821", + "lp": "507828990", + "total": "565578811" + } + }, + "0x132b0065386A4B750160573f618F3F657A8a370f": { + "tokens": { + "bean": "1936", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "556", + "lp": "0", + "total": "556" + }, + "bdvAtRecapitalization": { + "bean": "1936", + "lp": "0", + "total": "1936" + } + }, + "0x12e8123822485229EfaA08Cd244e27E533eb1F4B": { + "tokens": { + "bean": "3995207498", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1147567421", + "lp": "0", + "total": "1147567421" + }, + "bdvAtRecapitalization": { + "bean": "3995207498", + "lp": "2", + "total": "3995207500" + } + }, + "0x13b841dBF99456fB55Ac0A7269D9cfBC0ceD7b42": { + "tokens": { + "bean": "17863273524", + "lp": "2103247495" + }, + "bdvAtSnapshot": { + "bean": "5130975234", + "lp": "990173165", + "total": "6121148399" + }, + "bdvAtRecapitalization": { + "bean": "17863273524", + "lp": "4152365870", + "total": "22015639394" + } + }, + "0x12Ed7C9007Cf0CB79b37E33D0244aD90c2a65C0B": { + "tokens": { + "bean": "389733927", + "lp": "24442407620" + }, + "bdvAtSnapshot": { + "bean": "111945614", + "lp": "11507069987", + "total": "11619015601" + }, + "bdvAtRecapitalization": { + "bean": "389733927", + "lp": "48255766110", + "total": "48645500037" + } + }, + "0x13b07BE0C25E54309412870456db923e8970b724": { + "tokens": { + "bean": "35777356086", + "lp": "591364594743" + }, + "bdvAtSnapshot": { + "bean": "10276544653", + "lp": "278404398007", + "total": "288680942660" + }, + "bdvAtRecapitalization": { + "bean": "35777356086", + "lp": "1167509846544", + "total": "1203287202630" + } + }, + "0x13e551F9B35332e07EEC5F112C5D89d348be37A9": { + "tokens": { + "bean": "227707232", + "lp": "445411815" + }, + "bdvAtSnapshot": { + "bean": "65405714", + "lp": "209692311", + "total": "275098025" + }, + "bdvAtRecapitalization": { + "bean": "227707232", + "lp": "879360524", + "total": "1107067756" + } + }, + "0x14019DBae34219EFC2305b0C1dB260Fce8520DbF": { + "tokens": { + "bean": "38539541443", + "lp": "53533431936" + }, + "bdvAtSnapshot": { + "bean": "11069943726", + "lp": "25202629687", + "total": "36272573413" + }, + "bdvAtRecapitalization": { + "bean": "38539541443", + "lp": "105689128940", + "total": "144228670383" + } + }, + "0x149FfF31BA5992F473DF72404D6fA60F782C3d2C": { + "tokens": { + "bean": "518427811", + "lp": "2640895718" + }, + "bdvAtSnapshot": { + "bean": "148911131", + "lp": "1243288809", + "total": "1392199940" + }, + "bdvAtRecapitalization": { + "bean": "518427811", + "lp": "5213825416", + "total": "5732253227" + } + }, + "0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b": { + "tokens": { + "bean": "690047022", + "lp": "3840679873" + }, + "bdvAtSnapshot": { + "bean": "198206346", + "lp": "1808126793", + "total": "2006333139" + }, + "bdvAtRecapitalization": { + "bean": "690047022", + "lp": "7582516114", + "total": "8272563136" + } + }, + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3": { + "tokens": { + "bean": "5048901702", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1450226329", + "lp": "0", + "total": "1450226329" + }, + "bdvAtRecapitalization": { + "bean": "5048901702", + "lp": "0", + "total": "5048901702" + } + }, + "0x142Ae08b246845cec2386b5eACb2D3e98a1E04E3": { + "tokens": { + "bean": "1082050120", + "lp": "600781329" + }, + "bdvAtSnapshot": { + "bean": "310803748", + "lp": "282837636", + "total": "593641384" + }, + "bdvAtRecapitalization": { + "bean": "1082050120", + "lp": "1186100966", + "total": "2268151086" + } + }, + "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573": { + "tokens": { + "bean": "3119075316", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "895910717", + "lp": "0", + "total": "895910717" + }, + "bdvAtRecapitalization": { + "bean": "3119075316", + "lp": "0", + "total": "3119075316" + } + }, + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3": { + "tokens": { + "bean": "15366954581", + "lp": "4985040804" + }, + "bdvAtSnapshot": { + "bean": "4413942566", + "lp": "2346872465", + "total": "6760815031" + }, + "bdvAtRecapitalization": { + "bean": "15366954581", + "lp": "9841786735", + "total": "25208741316" + } + }, + "0x141B5A59B40EFCFE77D411cAd4812813F44A7254": { + "tokens": { + "bean": "1137106583", + "lp": "63993715361" + }, + "bdvAtSnapshot": { + "bean": "326617946", + "lp": "30127153299", + "total": "30453771245" + }, + "bdvAtRecapitalization": { + "bean": "1137106583", + "lp": "126340490224", + "total": "127477596807" + } + }, + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b": { + "tokens": { + "bean": "407369082116", + "lp": "3" + }, + "bdvAtSnapshot": { + "bean": "117011065671", + "lp": "1", + "total": "117011065672" + }, + "bdvAtRecapitalization": { + "bean": "407369082116", + "lp": "6", + "total": "407369082122" + } + }, + "0x1544E8C4736b47722E0AF9d44A099f14A96aAC84": { + "tokens": { + "bean": "19383194", + "lp": "1486969577" + }, + "bdvAtSnapshot": { + "bean": "5567551", + "lp": "700039998", + "total": "705607549" + }, + "bdvAtRecapitalization": { + "bean": "19383194", + "lp": "2935670546", + "total": "2955053740" + } + }, + "0x1584B668643617D18321a0BEc6EF3786F4b8Eb7B": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x164d71EE20a76d5ED08A072E3d368346F72640a9": { + "tokens": { + "bean": "48016650", + "lp": "250092122" + }, + "bdvAtSnapshot": { + "bean": "13792110", + "lp": "117739119", + "total": "131531229" + }, + "bdvAtRecapitalization": { + "bean": "48016650", + "lp": "493747880", + "total": "541764530" + } + }, + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F": { + "tokens": { + "bean": "1444", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "415", + "lp": "0", + "total": "415" + }, + "bdvAtRecapitalization": { + "bean": "1444", + "lp": "2", + "total": "1446" + } + }, + "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3": { + "tokens": { + "bean": "4092553218142", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1175528616166", + "lp": "0", + "total": "1175528616166" + }, + "bdvAtRecapitalization": { + "bean": "4092553218142", + "lp": "2", + "total": "4092553218144" + } + }, + "0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21": { + "tokens": { + "bean": "3999547555", + "lp": "16748051981" + }, + "bdvAtSnapshot": { + "bean": "1148814042", + "lp": "7884698156", + "total": "9033512198" + }, + "bdvAtRecapitalization": { + "bean": "3999547555", + "lp": "33065076557", + "total": "37064624112" + } + }, + "0x15e83602FDE900DdDdafC07bB67E18F64437b21e": { + "tokens": { + "bean": "3684371343", + "lp": "9322843426" + }, + "bdvAtSnapshot": { + "bean": "1058284087", + "lp": "4389036197", + "total": "5447320284" + }, + "bdvAtRecapitalization": { + "bean": "3684371343", + "lp": "18405754410", + "total": "22090125753" + } + }, + "0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF": { + "tokens": { + "bean": "5", + "lp": "6382226154" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3004643575", + "total": "3004643576" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "12600199511", + "total": "12600199516" + } + }, + "0x15e6e23b97D513ac117807bb88366f00fE6d6e17": { + "tokens": { + "bean": "1317032645", + "lp": "42674364106" + }, + "bdvAtSnapshot": { + "bean": "378299189", + "lp": "20090365157", + "total": "20468664346" + }, + "bdvAtRecapitalization": { + "bean": "1317032645", + "lp": "84250461951", + "total": "85567494596" + } + }, + "0x165b3C18eAb1D24F8bA1E25027698932482B67Ee": { + "tokens": { + "bean": "794760484", + "lp": "13313501475" + }, + "bdvAtSnapshot": { + "bean": "228283822", + "lp": "6267770165", + "total": "6496053987" + }, + "bdvAtRecapitalization": { + "bean": "794760484", + "lp": "26284367042", + "total": "27079127526" + } + }, + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF": { + "tokens": { + "bean": "695856064267", + "lp": "2941128636003" + }, + "bdvAtSnapshot": { + "bean": "199874912476", + "lp": "1384633362643", + "total": "1584508275119" + }, + "bdvAtRecapitalization": { + "bean": "695856064267", + "lp": "5806564466340", + "total": "6502420530607" + } + }, + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53": { + "tokens": { + "bean": "152128838", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "43696879", + "lp": "0", + "total": "43696879" + }, + "bdvAtRecapitalization": { + "bean": "152128838", + "lp": "0", + "total": "152128838" + } + }, + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE": { + "tokens": { + "bean": "40746701", + "lp": "5250122249" + }, + "bdvAtSnapshot": { + "bean": "11703919", + "lp": "2471668303", + "total": "2483372222" + }, + "bdvAtRecapitalization": { + "bean": "40746701", + "lp": "10365127496", + "total": "10405874197" + } + }, + "0x168c6aC0268a29c3C0645917a4510ccd73F4D923": { + "tokens": { + "bean": "8328169103", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2392149980", + "lp": "0", + "total": "2392149980" + }, + "bdvAtRecapitalization": { + "bean": "8328169103", + "lp": "0", + "total": "8328169103" + } + }, + "0x16942d62E8ad78A9026E41Fab484C265FC90b228": { + "tokens": { + "bean": "74034725", + "lp": "141572872" + }, + "bdvAtSnapshot": { + "bean": "21265438", + "lp": "66650101", + "total": "87915539" + }, + "bdvAtRecapitalization": { + "bean": "74034725", + "lp": "279502228", + "total": "353536953" + } + }, + "0x169E35b1c6784E7e846bcE0b6D018514f934B87D": { + "tokens": { + "bean": "791009937", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "227206530", + "lp": "0", + "total": "227206530" + }, + "bdvAtRecapitalization": { + "bean": "791009937", + "lp": "0", + "total": "791009937" + } + }, + "0x182D4B08462CD5B79080d77C2B149F04d330D24b": { + "tokens": { + "bean": "2391596919", + "lp": "14817168550" + }, + "bdvAtSnapshot": { + "bean": "686952733", + "lp": "6975671061", + "total": "7662623794" + }, + "bdvAtRecapitalization": { + "bean": "2391596919", + "lp": "29253002858", + "total": "31644599777" + } + }, + "0x16af50FC999032b3Bc32B6bC1abe138B924b1B0C": { + "tokens": { + "bean": "751226948", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "215779424", + "lp": "0", + "total": "215779424" + }, + "bdvAtRecapitalization": { + "bean": "751226948", + "lp": "0", + "total": "751226948" + } + }, + "0x17FEE60B80356EAE404bC0d8DaA3debeE217741c": { + "tokens": { + "bean": "2475221599", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "710972751", + "lp": "0", + "total": "710972751" + }, + "bdvAtRecapitalization": { + "bean": "2475221599", + "lp": "0", + "total": "2475221599" + } + }, + "0x17757B0252c84341E243Ff49EEf8729eFa32f5De": { + "tokens": { + "bean": "0", + "lp": "1440" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "678", + "total": "678" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2843", + "total": "2843" + } + }, + "0x16cfA7ca52268cFC6D701b0d47F86bFC152694F3": { + "tokens": { + "bean": "2654304111", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "762411696", + "lp": "0", + "total": "762411696" + }, + "bdvAtRecapitalization": { + "bean": "2654304111", + "lp": "0", + "total": "2654304111" + } + }, + "0x183be3011809A2D41198e528d2b20Cc91b4C9665": { + "tokens": { + "bean": "86263567315", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "24778002021", + "lp": "0", + "total": "24778002021" + }, + "bdvAtRecapitalization": { + "bean": "86263567315", + "lp": "0", + "total": "86263567315" + } + }, + "0x177f44eCDEa293f7124C3071D9C54E59fcfD16f9": { + "tokens": { + "bean": "35070180", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10073418", + "lp": "0", + "total": "10073418" + }, + "bdvAtRecapitalization": { + "bean": "35070180", + "lp": "0", + "total": "35070180" + } + }, + "0x1867608e55A862e96e468B51dc6983BCA8688f3D": { + "tokens": { + "bean": "225042725", + "lp": "14620754382" + }, + "bdvAtSnapshot": { + "bean": "64640372", + "lp": "6883202610", + "total": "6947842982" + }, + "bdvAtRecapitalization": { + "bean": "225042725", + "lp": "28865229431", + "total": "29090272156" + } + }, + "0x17643ca0570f8f7a04FFf22CEa6a433531e465aE": { + "tokens": { + "bean": "296247", + "lp": "9794688626" + }, + "bdvAtSnapshot": { + "bean": "85093", + "lp": "4611172895", + "total": "4611257988" + }, + "bdvAtRecapitalization": { + "bean": "296247", + "lp": "19337301415", + "total": "19337597662" + } + }, + "0x184CbD89E91039E6B1EF94753B3fD41c55e40888": { + "tokens": { + "bean": "818376793", + "lp": "11662155562" + }, + "bdvAtSnapshot": { + "bean": "235067277", + "lp": "5490344582", + "total": "5725411859" + }, + "bdvAtRecapitalization": { + "bean": "818376793", + "lp": "23024174209", + "total": "23842551002" + } + }, + "0x168cBd46d6D12da3C3FF2FAB191De5be4675bBB1": { + "tokens": { + "bean": "23770102", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6827629", + "lp": "0", + "total": "6827629" + }, + "bdvAtRecapitalization": { + "bean": "23770102", + "lp": "0", + "total": "23770102" + } + }, + "0x16785ca8422Cb4008CB9792fcD756ADbEe42878E": { + "tokens": { + "bean": "1453449595", + "lp": "770381917" + }, + "bdvAtSnapshot": { + "bean": "417483048", + "lp": "362682710", + "total": "780165758" + }, + "bdvAtRecapitalization": { + "bean": "1453449595", + "lp": "1520937306", + "total": "2974386901" + } + }, + "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b": { + "tokens": { + "bean": "18684900", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5366976", + "lp": "0", + "total": "5366976" + }, + "bdvAtRecapitalization": { + "bean": "18684900", + "lp": "0", + "total": "18684900" + } + }, + "0x18E03c62D0B46d50da7C5EC819Da57c0106Dc8DF": { + "tokens": { + "bean": "2966474529", + "lp": "1581621501" + }, + "bdvAtSnapshot": { + "bean": "852078278", + "lp": "744600515", + "total": "1596678793" + }, + "bdvAtRecapitalization": { + "bean": "2966474529", + "lp": "3122538435", + "total": "6089012964" + } + }, + "0x18AE0d58f978054E55181be633d4a6e1239aA456": { + "tokens": { + "bean": "368162256", + "lp": "1985826163" + }, + "bdvAtSnapshot": { + "bean": "105749454", + "lp": "934893198", + "total": "1040642652" + }, + "bdvAtRecapitalization": { + "bean": "368162256", + "lp": "3920545158", + "total": "4288707414" + } + }, + "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD": { + "tokens": { + "bean": "4078041163", + "lp": "26440691762" + }, + "bdvAtSnapshot": { + "bean": "1171360231", + "lp": "12447828190", + "total": "13619188421" + }, + "bdvAtRecapitalization": { + "bean": "4078041163", + "lp": "52200906608", + "total": "56278947771" + } + }, + "0x1907e1ab7791bB0c7A2b201b38e33da99d15285e": { + "tokens": { + "bean": "113459194", + "lp": "9789481782" + }, + "bdvAtSnapshot": { + "bean": "32589565", + "lp": "4608721602", + "total": "4641311167" + }, + "bdvAtRecapitalization": { + "bean": "113459194", + "lp": "19327021730", + "total": "19440480924" + } + }, + "0x1a368885B299D51E477c2737E0330aB35529154a": { + "tokens": { + "bean": "2583972131", + "lp": "7645273726" + }, + "bdvAtSnapshot": { + "bean": "742209819", + "lp": "3599264901", + "total": "4341474720" + }, + "bdvAtRecapitalization": { + "bean": "2583972131", + "lp": "15093788898", + "total": "17677761029" + } + }, + "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b": { + "tokens": { + "bean": "2", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "2", + "total": "4" + } + }, + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406": { + "tokens": { + "bean": "2891344974", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "830498365", + "lp": "0", + "total": "830498365" + }, + "bdvAtRecapitalization": { + "bean": "2891344974", + "lp": "2", + "total": "2891344976" + } + }, + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F": { + "tokens": { + "bean": "3", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "2", + "total": "5" + } + }, + "0x191C3a109770100b439124c35990103584a62f1d": { + "tokens": { + "bean": "3049793718", + "lp": "1408581513" + }, + "bdvAtSnapshot": { + "bean": "876010548", + "lp": "663136230", + "total": "1539146778" + }, + "bdvAtRecapitalization": { + "bean": "3049793718", + "lp": "2780911811", + "total": "5830705529" + } + }, + "0x19Dde5f247155293FB8c905d4A400021C12fb6F0": { + "tokens": { + "bean": "170175680", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "48880582", + "lp": "0", + "total": "48880582" + }, + "bdvAtRecapitalization": { + "bean": "170175680", + "lp": "0", + "total": "170175680" + } + }, + "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d": { + "tokens": { + "bean": "2438201576", + "lp": "40097655172" + }, + "bdvAtSnapshot": { + "bean": "700339268", + "lp": "18877294395", + "total": "19577633663" + }, + "bdvAtRecapitalization": { + "bean": "2438201576", + "lp": "79163358194", + "total": "81601559770" + } + }, + "0x1A96Db12AD7f0c9f91C538d16c39C360b5E8Fb21": { + "tokens": { + "bean": "290640278", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "83482351", + "lp": "0", + "total": "83482351" + }, + "bdvAtRecapitalization": { + "bean": "290640278", + "lp": "0", + "total": "290640278" + } + }, + "0x1A81dB156AFd3Cd93545b823fD2Ac6DCDf3B0725": { + "tokens": { + "bean": "2688530134", + "lp": "44489655790" + }, + "bdvAtSnapshot": { + "bean": "772242642", + "lp": "20944973622", + "total": "21717216264" + }, + "bdvAtRecapitalization": { + "bean": "2688530134", + "lp": "87834327022", + "total": "90522857156" + } + }, + "0x1aa7101F755Bd1c76B4e648a835054A7f652Dfd2": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C": { + "tokens": { + "bean": "212185593", + "lp": "2443941652" + }, + "bdvAtSnapshot": { + "bean": "60947341", + "lp": "1150566183", + "total": "1211513524" + }, + "bdvAtRecapitalization": { + "bean": "212185593", + "lp": "4824986089", + "total": "5037171682" + } + }, + "0x1bb9b8dB251BAbF5e6bB7AA7795E4814C0b72471": { + "tokens": { + "bean": "27965053", + "lp": "3354127713" + }, + "bdvAtSnapshot": { + "bean": "8032570", + "lp": "1579066307", + "total": "1587098877" + }, + "bdvAtRecapitalization": { + "bean": "27965053", + "lp": "6621933687", + "total": "6649898740" + } + }, + "0x1aE02022a49b122a21bEBE24A1B1845113C37931": { + "tokens": { + "bean": "5", + "lp": "8038936318" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3784594557", + "total": "3784594558" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "15870982792", + "total": "15870982797" + } + }, + "0x1c4203Db716a122AFF5120203268113E8B471F0E": { + "tokens": { + "bean": "1149721120", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "330241296", + "lp": "0", + "total": "330241296" + }, + "bdvAtRecapitalization": { + "bean": "1149721120", + "lp": "0", + "total": "1149721120" + } + }, + "0x1aD66517368179738f521AF62E1acFe8816c22a4": { + "tokens": { + "bean": "3", + "lp": "5283053866" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "2487171948", + "total": "2487171949" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "10430143203", + "total": "10430143206" + } + }, + "0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b": { + "tokens": { + "bean": "857321111", + "lp": "1351612227" + }, + "bdvAtSnapshot": { + "bean": "246253487", + "lp": "636316059", + "total": "882569546" + }, + "bdvAtRecapitalization": { + "bean": "857321111", + "lp": "2668439399", + "total": "3525760510" + } + }, + "0x1b11CbCb7AB40A6ffeaA80aEeD13b6A99e2c2254": { + "tokens": { + "bean": "1394541796", + "lp": "7878493578" + }, + "bdvAtSnapshot": { + "bean": "400562607", + "lp": "3709060842", + "total": "4109623449" + }, + "bdvAtRecapitalization": { + "bean": "1394541796", + "lp": "15554226462", + "total": "16948768258" + } + }, + "0x1ba5C10C52c3Ab0A4a33c4D8D2a5AFD9f93147Ed": { + "tokens": { + "bean": "131610182", + "lp": "209332869" + }, + "bdvAtSnapshot": { + "bean": "37803182", + "lp": "98550356", + "total": "136353538" + }, + "bdvAtRecapitalization": { + "bean": "131610182", + "lp": "413278353", + "total": "544888535" + } + }, + "0x1B15ED3612CD3077ba4437a1e2B924C33d4de0F9": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0x1b17E6045234237f86c9acDeA0b637a561DeFf2E": { + "tokens": { + "bean": "4294647787", + "lp": "2261916425" + }, + "bdvAtSnapshot": { + "bean": "1233577452", + "lp": "1064871800", + "total": "2298449252" + }, + "bdvAtRecapitalization": { + "bean": "4294647787", + "lp": "4465620231", + "total": "8760268018" + } + }, + "0x1c10eD2ffe6b4228005EbAe5Aa1a9c790D275A52": { + "tokens": { + "bean": "478814473", + "lp": "372354023" + }, + "bdvAtSnapshot": { + "bean": "137532754", + "lp": "175297944", + "total": "312830698" + }, + "bdvAtRecapitalization": { + "bean": "478814473", + "lp": "735125153", + "total": "1213939626" + } + }, + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7": { + "tokens": { + "bean": "39940301", + "lp": "39555922276" + }, + "bdvAtSnapshot": { + "bean": "11472292", + "lp": "18622255757", + "total": "18633728049" + }, + "bdvAtRecapitalization": { + "bean": "39940301", + "lp": "78093834424", + "total": "78133774725" + } + }, + "0x1b32F18DF6539E64EC419BbE5E388E951E27feb3": { + "tokens": { + "bean": "3023699808", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "868515438", + "lp": "0", + "total": "868515438" + }, + "bdvAtRecapitalization": { + "bean": "3023699808", + "lp": "0", + "total": "3023699808" + } + }, + "0x1C4E440e9f9069427d11bB1bD73e57458eeA9577": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x1c6eDd90CAC0De22D8819c03Ae953D8B57f18Fd8": { + "tokens": { + "bean": "1377480410", + "lp": "4332931528" + }, + "bdvAtSnapshot": { + "bean": "395661963", + "lp": "2039870504", + "total": "2435532467" + }, + "bdvAtRecapitalization": { + "bean": "1377480410", + "lp": "8554350849", + "total": "9931831259" + } + }, + "0x1cac725Ed2e08F09F77c601D5D92d12d906C4003": { + "tokens": { + "bean": "204763725", + "lp": "907615524" + }, + "bdvAtSnapshot": { + "bean": "58815513", + "lp": "427289959", + "total": "486105472" + }, + "bdvAtRecapitalization": { + "bean": "204763725", + "lp": "1791872680", + "total": "1996636405" + } + }, + "0x1D4D853870734161BCb46dAb0012739C21693d98": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x1d264de8264a506Ed0E88E5E092131915913Ed17": { + "tokens": { + "bean": "409008467", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "117481956", + "lp": "0", + "total": "117481956" + }, + "bdvAtRecapitalization": { + "bean": "409008467", + "lp": "2", + "total": "409008469" + } + }, + "0x1D2667798581D8D3F93153DA8BA5E2E0330841f7": { + "tokens": { + "bean": "348494199", + "lp": "3199869790" + }, + "bdvAtSnapshot": { + "bean": "100100080", + "lp": "1506444299", + "total": "1606544379" + }, + "bdvAtRecapitalization": { + "bean": "348494199", + "lp": "6317387819", + "total": "6665882018" + } + }, + "0x1D0a4fee04892d90E2b8a4C1836598b081bB949f": { + "tokens": { + "bean": "276154236", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "79321438", + "lp": "0", + "total": "79321438" + }, + "bdvAtRecapitalization": { + "bean": "276154236", + "lp": "0", + "total": "276154236" + } + }, + "0x1Dc2Dc7110F8ee61650864ad6680fE8144b7d6F9": { + "tokens": { + "bean": "807", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "232", + "lp": "0", + "total": "232" + }, + "bdvAtRecapitalization": { + "bean": "807", + "lp": "0", + "total": "807" + } + }, + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7": { + "tokens": { + "bean": "5989", + "lp": "703147" + }, + "bdvAtSnapshot": { + "bean": "1720", + "lp": "331030", + "total": "332750" + }, + "bdvAtRecapitalization": { + "bean": "5989", + "lp": "1388198", + "total": "1394187" + } + }, + "0x1eB2Cc7208a2077DdF91beE9C944919bacCfccF9": { + "tokens": { + "bean": "126757994", + "lp": "1206210847" + }, + "bdvAtSnapshot": { + "bean": "36409459", + "lp": "567863561", + "total": "604273020" + }, + "bdvAtRecapitalization": { + "bean": "126757994", + "lp": "2381378685", + "total": "2508136679" + } + }, + "0x1E544b6d506Bb1843877aD6a9c95C2Bbc964d962": { + "tokens": { + "bean": "770520654", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "221321271", + "lp": "0", + "total": "221321271" + }, + "bdvAtRecapitalization": { + "bean": "770520654", + "lp": "0", + "total": "770520654" + } + }, + "0x1D7603B4173D52188b37f493107870bC9b4Ce746": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0x1e8eBAA6D9BF90ca2800F97C95aFEDd6A64C91e2": { + "tokens": { + "bean": "36376367", + "lp": "11890596951" + }, + "bdvAtSnapshot": { + "bean": "10448602", + "lp": "5597890904", + "total": "5608339506" + }, + "bdvAtRecapitalization": { + "bean": "36376367", + "lp": "23475177826", + "total": "23511554193" + } + }, + "0x1Eff71EE5463F7DD88a36A5674021f1E94F5166c": { + "tokens": { + "bean": "88152732476", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "25320638265", + "lp": "0", + "total": "25320638265" + }, + "bdvAtRecapitalization": { + "bean": "88152732476", + "lp": "2", + "total": "88152732478" + } + }, + "0x1f3236F64Cb6878F164e3A281c2a9393e19A6D00": { + "tokens": { + "bean": "4", + "lp": "13415930082" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "6315991812", + "total": "6315991813" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "26486588156", + "total": "26486588160" + } + }, + "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974": { + "tokens": { + "bean": "4562611", + "lp": "675539763" + }, + "bdvAtSnapshot": { + "bean": "1310546", + "lp": "318032636", + "total": "319343182" + }, + "bdvAtRecapitalization": { + "bean": "4562611", + "lp": "1333693853", + "total": "1338256464" + } + }, + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8": { + "tokens": { + "bean": "1067777312", + "lp": "614390434" + }, + "bdvAtSnapshot": { + "bean": "306704084", + "lp": "289244572", + "total": "595948656" + }, + "bdvAtRecapitalization": { + "bean": "1067777312", + "lp": "1212968933", + "total": "2280746245" + } + }, + "0x1F906aB7Bd49059d29cac759Bc84f9008dBF4112": { + "tokens": { + "bean": "16660261", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4785427", + "lp": "0", + "total": "4785427" + }, + "bdvAtRecapitalization": { + "bean": "16660261", + "lp": "0", + "total": "16660261" + } + }, + "0x1faD27B543326E66185b7D1519C4E3d234D54A9C": { + "tokens": { + "bean": "7434230000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2135378488", + "lp": "0", + "total": "2135378488" + }, + "bdvAtRecapitalization": { + "bean": "7434230000", + "lp": "0", + "total": "7434230000" + } + }, + "0x1fC84Da8c1DFD00a7F6D0970ed779cEc0BBf9CA4": { + "tokens": { + "bean": "4", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "2", + "total": "6" + } + }, + "0x20798Fd64a342d1EE640348E42C14181fDC842d8": { + "tokens": { + "bean": "6473", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1859", + "lp": "0", + "total": "1859" + }, + "bdvAtRecapitalization": { + "bean": "6473", + "lp": "2", + "total": "6475" + } + }, + "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e": { + "tokens": { + "bean": "3214592448", + "lp": "63242144293" + }, + "bdvAtSnapshot": { + "bean": "923346676", + "lp": "29773326417", + "total": "30696673093" + }, + "bdvAtRecapitalization": { + "bean": "3214592448", + "lp": "124856690500", + "total": "128071282948" + } + }, + "0x1Fc68EfbC126034D135c6a53cB991ff7e122B3D9": { + "tokens": { + "bean": "587596284", + "lp": "9713414523" + }, + "bdvAtSnapshot": { + "bean": "168778806", + "lp": "4572910429", + "total": "4741689235" + }, + "bdvAtRecapitalization": { + "bean": "587596284", + "lp": "19176844877", + "total": "19764441161" + } + }, + "0x21145738198e34A7aF32866913855ce1968006Ef": { + "tokens": { + "bean": "136966119136", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "39341600196", + "lp": "0", + "total": "39341600196" + }, + "bdvAtRecapitalization": { + "bean": "136966119136", + "lp": "0", + "total": "136966119136" + } + }, + "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb": { + "tokens": { + "bean": "151132560", + "lp": "376595686" + }, + "bdvAtSnapshot": { + "bean": "43410712", + "lp": "177294847", + "total": "220705559" + }, + "bdvAtRecapitalization": { + "bean": "151132560", + "lp": "743499316", + "total": "894631876" + } + }, + "0x21501408B9E1359C1664b0A2e9F78492512ff605": { + "tokens": { + "bean": "160681378", + "lp": "3997181613" + }, + "bdvAtSnapshot": { + "bean": "46153476", + "lp": "1881805151", + "total": "1927958627" + }, + "bdvAtRecapitalization": { + "bean": "160681378", + "lp": "7891491870", + "total": "8052173248" + } + }, + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B": { + "tokens": { + "bean": "1477838502", + "lp": "2477053294" + }, + "bdvAtSnapshot": { + "bean": "424488420", + "lp": "1166154581", + "total": "1590643001" + }, + "bdvAtRecapitalization": { + "bean": "1477838502", + "lp": "4890357213", + "total": "6368195715" + } + }, + "0x2032d6Fa962f05b05a648d0492936DCf879b0646": { + "tokens": { + "bean": "1762845999", + "lp": "2720448049" + }, + "bdvAtSnapshot": { + "bean": "506352833", + "lp": "1280740694", + "total": "1787093527" + }, + "bdvAtRecapitalization": { + "bean": "1762845999", + "lp": "5370882722", + "total": "7133728721" + } + }, + "0x21710d040ba8fcd9F34Fbd74461e746824B8BA1C": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x215B5b41E224fc24170dE2b20A3e0F619af96A71": { + "tokens": { + "bean": "298858", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "85843", + "lp": "0", + "total": "85843" + }, + "bdvAtRecapitalization": { + "bean": "298858", + "lp": "0", + "total": "298858" + } + }, + "0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa": { + "tokens": { + "bean": "114408616", + "lp": "487124158" + }, + "bdvAtSnapshot": { + "bean": "32862273", + "lp": "229329772", + "total": "262192045" + }, + "bdvAtRecapitalization": { + "bean": "114408616", + "lp": "961711702", + "total": "1076120318" + } + }, + "0x21Ad548e5dE92C656af636810110dd44CC617184": { + "tokens": { + "bean": "1087624059", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "312404784", + "lp": "0", + "total": "312404784" + }, + "bdvAtRecapitalization": { + "bean": "1087624059", + "lp": "0", + "total": "1087624059" + } + }, + "0x21d50a8ec564E5EB96CC979b33bC5638D91e6F0D": { + "tokens": { + "bean": "5091125393", + "lp": "35263658325" + }, + "bdvAtSnapshot": { + "bean": "1462354493", + "lp": "16601530857", + "total": "18063885350" + }, + "bdvAtRecapitalization": { + "bean": "5091125393", + "lp": "69619772109", + "total": "74710897502" + } + }, + "0x22B725c15c35A299b6e9Aa3b2060416EA2b2030c": { + "tokens": { + "bean": "8208919", + "lp": "2683883659" + }, + "bdvAtSnapshot": { + "bean": "2357897", + "lp": "1263526801", + "total": "1265884698" + }, + "bdvAtRecapitalization": { + "bean": "8208919", + "lp": "5298694962", + "total": "5306903881" + } + }, + "0x21DC07AFeeCF13394067E31eE32059a026449C41": { + "tokens": { + "bean": "353057721", + "lp": "9309138062" + }, + "bdvAtSnapshot": { + "bean": "101410888", + "lp": "4382583944", + "total": "4483994832" + }, + "bdvAtRecapitalization": { + "bean": "353057721", + "lp": "18378696403", + "total": "18731754124" + } + }, + "0x2251A7db3B3159422cED07e3bA65494D78A66A22": { + "tokens": { + "bean": "2", + "lp": "8505709626" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "4004343495", + "total": "4004343496" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "16792516543", + "total": "16792516545" + } + }, + "0x22aA1F4173b826451763EbfCE22cf54A0603163c": { + "tokens": { + "bean": "627861", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "180344", + "lp": "0", + "total": "180344" + }, + "bdvAtRecapitalization": { + "bean": "627861", + "lp": "0", + "total": "627861" + } + }, + "0x226cb5b4F8Aae44Fbc4374a2be35B3070403e9da": { + "tokens": { + "bean": "2079878", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "597416", + "lp": "0", + "total": "597416" + }, + "bdvAtRecapitalization": { + "bean": "2079878", + "lp": "0", + "total": "2079878" + } + }, + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D": { + "tokens": { + "bean": "7775205753", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2233319000", + "lp": "0", + "total": "2233319000" + }, + "bdvAtRecapitalization": { + "bean": "7775205753", + "lp": "2", + "total": "7775205755" + } + }, + "0x22Ba9F0902fE08bd3b6d0c1e32991B4f1387b6D9": { + "tokens": { + "bean": "31611079", + "lp": "2968604716" + }, + "bdvAtSnapshot": { + "bean": "9079840", + "lp": "1397568634", + "total": "1406648474" + }, + "bdvAtRecapitalization": { + "bean": "31611079", + "lp": "5860809503", + "total": "5892420582" + } + }, + "0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A": { + "tokens": { + "bean": "299571365", + "lp": "531623020" + }, + "bdvAtSnapshot": { + "bean": "86047681", + "lp": "250279080", + "total": "336326761" + }, + "bdvAtRecapitalization": { + "bean": "299571365", + "lp": "1049564205", + "total": "1349135570" + } + }, + "0x223D168d318E0598d365aA1aAc78Dfa2eCA16dcf": { + "tokens": { + "bean": "1444209795815", + "lp": "188304450423" + }, + "bdvAtSnapshot": { + "bean": "414829044911", + "lp": "88650534083", + "total": "503479578994" + }, + "bdvAtRecapitalization": { + "bean": "1444209795815", + "lp": "371762702690", + "total": "1815972498505" + } + }, + "0x2299BAFf6CCAA8b172e324Bcd5CDb756e7065C59": { + "tokens": { + "bean": "806480716", + "lp": "1792940489" + }, + "bdvAtSnapshot": { + "bean": "231650295", + "lp": "844085902", + "total": "1075736197" + }, + "bdvAtRecapitalization": { + "bean": "806480716", + "lp": "3539737911", + "total": "4346218627" + } + }, + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1": { + "tokens": { + "bean": "24076901487", + "lp": "2771383859" + }, + "bdvAtSnapshot": { + "bean": "6915752876", + "lp": "1304720407", + "total": "8220473283" + }, + "bdvAtRecapitalization": { + "bean": "24076901487", + "lp": "5471443459", + "total": "29548344946" + } + }, + "0x225C3D9CDC1F3c9EC7902216D3d315c9428AE025": { + "tokens": { + "bean": "1064499409", + "lp": "16466641728" + }, + "bdvAtSnapshot": { + "bean": "305762552", + "lp": "7752214993", + "total": "8057977545" + }, + "bdvAtRecapitalization": { + "bean": "1064499409", + "lp": "32509498417", + "total": "33573997826" + } + }, + "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb": { + "tokens": { + "bean": "4199281232", + "lp": "4847174278" + }, + "bdvAtSnapshot": { + "bean": "1206184744", + "lp": "2281967248", + "total": "3488151992" + }, + "bdvAtRecapitalization": { + "bean": "4199281232", + "lp": "9569601812", + "total": "13768883044" + } + }, + "0x234831d4CFF3B7027E0424e23F019657005635e1": { + "tokens": { + "bean": "389763280", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "111954045", + "lp": "0", + "total": "111954045" + }, + "bdvAtRecapitalization": { + "bean": "389763280", + "lp": "0", + "total": "389763280" + } + }, + "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2": { + "tokens": { + "bean": "29333388349", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "8425605136", + "lp": "0", + "total": "8425605136" + }, + "bdvAtRecapitalization": { + "bean": "29333388349", + "lp": "2", + "total": "29333388351" + } + }, + "0x2329d6d67Dc1D4dA1858e2fe839C20E7f5456081": { + "tokens": { + "bean": "857742492", + "lp": "12696016491" + }, + "bdvAtSnapshot": { + "bean": "246374522", + "lp": "5977068732", + "total": "6223443254" + }, + "bdvAtRecapitalization": { + "bean": "857742492", + "lp": "25065288651", + "total": "25923031143" + } + }, + "0x23807719299c9bA3C6d60d4097146259c7A16da3": { + "tokens": { + "bean": "4438573957", + "lp": "29337583162" + }, + "bdvAtSnapshot": { + "bean": "1274918229", + "lp": "13811635414", + "total": "15086553643" + }, + "bdvAtRecapitalization": { + "bean": "4438573957", + "lp": "57920135091", + "total": "62358709048" + } + }, + "0x239EeC9EC218f71cEf5CC14D88b142ed4fF44110": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x23b93e03e7E54b1daA9A5A7139158E7779D9f753": { + "tokens": { + "bean": "46975019", + "lp": "148802316" + }, + "bdvAtSnapshot": { + "bean": "13492917", + "lp": "70053601", + "total": "83546518" + }, + "bdvAtRecapitalization": { + "bean": "46975019", + "lp": "293775060", + "total": "340750079" + } + }, + "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6": { + "tokens": { + "bean": "612752", + "lp": "1268386914" + }, + "bdvAtSnapshot": { + "bean": "176004", + "lp": "597134997", + "total": "597311001" + }, + "bdvAtRecapitalization": { + "bean": "612752", + "lp": "2504130657", + "total": "2504743409" + } + }, + "0x241b2Fb0b7517c784Dd0c3e20a1f655985CFaa07": { + "tokens": { + "bean": "4", + "lp": "34179474848" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "16091115707", + "total": "16091115708" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "67479307672", + "total": "67479307676" + } + }, + "0x2489ac126934D4d6a94Df08743Da7b7691e9798E": { + "tokens": { + "bean": "2414422466", + "lp": "10015765617" + }, + "bdvAtSnapshot": { + "bean": "693509051", + "lp": "4715252184", + "total": "5408761235" + }, + "bdvAtRecapitalization": { + "bean": "2414422466", + "lp": "19773765766", + "total": "22188188232" + } + }, + "0x24294915f8b5831D710D40c277916eDC0fa0eC39": { + "tokens": { + "bean": "337425863", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "96920855", + "lp": "0", + "total": "96920855" + }, + "bdvAtRecapitalization": { + "bean": "337425863", + "lp": "0", + "total": "337425863" + } + }, + "0x24d72b67D6C7642fDf7Df71D9b54078A17d2b465": { + "tokens": { + "bean": "654431608", + "lp": "2883027289" + }, + "bdvAtSnapshot": { + "bean": "187976317", + "lp": "1357280236", + "total": "1545256553" + }, + "bdvAtRecapitalization": { + "bean": "654431608", + "lp": "5691857067", + "total": "6346288675" + } + }, + "0x25585171FC8dA74A6eD73943ADE4e32DE7e6C8Aa": { + "tokens": { + "bean": "44348185", + "lp": "9510017841" + }, + "bdvAtSnapshot": { + "bean": "12738395", + "lp": "4477154729", + "total": "4489893124" + }, + "bdvAtRecapitalization": { + "bean": "44348185", + "lp": "18775286124", + "total": "18819634309" + } + }, + "0x250997F21bbcA2fc3d4F42f23d190C0f9c4cBFDd": { + "tokens": { + "bean": "3980225856", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1143264154", + "lp": "0", + "total": "1143264154" + }, + "bdvAtRecapitalization": { + "bean": "3980225856", + "lp": "0", + "total": "3980225856" + } + }, + "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2": { + "tokens": { + "bean": "114570922014", + "lp": "292906626175" + }, + "bdvAtSnapshot": { + "bean": "32908893356", + "lp": "137895460191", + "total": "170804353547" + }, + "bdvAtRecapitalization": { + "bean": "114570922014", + "lp": "578275015477", + "total": "692845937491" + } + }, + "0x25d5Eb0603f36c47A53529b6A745A0805467B21F": { + "tokens": { + "bean": "94957431", + "lp": "185708707" + }, + "bdvAtSnapshot": { + "bean": "27275193", + "lp": "87428502", + "total": "114703695" + }, + "bdvAtRecapitalization": { + "bean": "94957431", + "lp": "366638020", + "total": "461595451" + } + }, + "0x2612C1bc597799dc2A468D6537720B245f956A22": { + "tokens": { + "bean": "14390966598", + "lp": "169567787" + }, + "bdvAtSnapshot": { + "bean": "4133603682", + "lp": "79829631", + "total": "4213433313" + }, + "bdvAtRecapitalization": { + "bean": "14390966598", + "lp": "334771582", + "total": "14725738180" + } + }, + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6": { + "tokens": { + "bean": "4", + "lp": "118928716811" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "55989618086", + "total": "55989618087" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "234796687438", + "total": "234796687442" + } + }, + "0x26092F98B23D6CDdaB91ca1088fEdA19AA485dE3": { + "tokens": { + "bean": "13639408", + "lp": "94787527" + }, + "bdvAtSnapshot": { + "bean": "3917729", + "lp": "44624356", + "total": "48542085" + }, + "bdvAtRecapitalization": { + "bean": "13639408", + "lp": "187135605", + "total": "200775013" + } + }, + "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905": { + "tokens": { + "bean": "504086237", + "lp": "3089173219" + }, + "bdvAtSnapshot": { + "bean": "144791714", + "lp": "1454330236", + "total": "1599121950" + }, + "bdvAtRecapitalization": { + "bean": "504086237", + "lp": "6098843561", + "total": "6602929798" + } + }, + "0x263bFD6746489929B2F08d728FFC33D697538a92": { + "tokens": { + "bean": "387475285", + "lp": "7872072227" + }, + "bdvAtSnapshot": { + "bean": "111296851", + "lp": "3706037779", + "total": "3817334630" + }, + "bdvAtRecapitalization": { + "bean": "387475285", + "lp": "15541549020", + "total": "15929024305" + } + }, + "0x26acaa8Fa20c86875149d70Df29B01fd1061E0bb": { + "tokens": { + "bean": "100440975137", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28850263934", + "lp": "0", + "total": "28850263934" + }, + "bdvAtRecapitalization": { + "bean": "100440975137", + "lp": "0", + "total": "100440975137" + } + }, + "0x2686e2ceE8DFEE5cf15e70f3f8d73d3410654d46": { + "tokens": { + "bean": "5978278628", + "lp": "127763318332" + }, + "bdvAtSnapshot": { + "bean": "1717176840", + "lp": "60148798294", + "total": "61865975134" + }, + "bdvAtRecapitalization": { + "bean": "5978278628", + "lp": "252238523418", + "total": "258216802046" + } + }, + "0x26bdf362ab1C746665a10DdF6b3bAb7c2D8bC62f": { + "tokens": { + "bean": "1106961983", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "317959332", + "lp": "0", + "total": "317959332" + }, + "bdvAtRecapitalization": { + "bean": "1106961983", + "lp": "0", + "total": "1106961983" + } + }, + "0x272fB300717A9F7e0215AfE22595af5cBfA58591": { + "tokens": { + "bean": "12736769", + "lp": "56025344" + }, + "bdvAtSnapshot": { + "bean": "3658459", + "lp": "26375780", + "total": "30034239" + }, + "bdvAtRecapitalization": { + "bean": "12736769", + "lp": "110608821", + "total": "123345590" + } + }, + "0x270990d832C7E0145e62e5BdF7fCE719F504D48D": { + "tokens": { + "bean": "2209466149", + "lp": "20954507904" + }, + "bdvAtSnapshot": { + "bean": "634638219", + "lp": "9865026095", + "total": "10499664314" + }, + "bdvAtRecapitalization": { + "bean": "2209466149", + "lp": "41369731169", + "total": "43579197318" + } + }, + "0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9": { + "tokens": { + "bean": "3396558539", + "lp": "4775351813" + }, + "bdvAtSnapshot": { + "bean": "975613889", + "lp": "2248154453", + "total": "3223768342" + }, + "bdvAtRecapitalization": { + "bean": "3396558539", + "lp": "9427805303", + "total": "12824363842" + } + }, + "0x26e33588826E867A8A5d0c0cc203a483fF6f1354": { + "tokens": { + "bean": "1022108521", + "lp": "655367407" + }, + "bdvAtSnapshot": { + "bean": "293586363", + "lp": "308535834", + "total": "602122197" + }, + "bdvAtRecapitalization": { + "bean": "1022108521", + "lp": "1293868296", + "total": "2315976817" + } + }, + "0x277FC128D042B081F3EE99881802538E05af8c43": { + "tokens": { + "bean": "576836618", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "165688243", + "lp": "0", + "total": "165688243" + }, + "bdvAtRecapitalization": { + "bean": "576836618", + "lp": "0", + "total": "576836618" + } + }, + "0x274C44d5aEcA4744eB6eF42Fede80cbee3cf2Ec5": { + "tokens": { + "bean": "1044420196", + "lp": "6700122499" + }, + "bdvAtSnapshot": { + "bean": "299995079", + "lp": "3154303770", + "total": "3454298849" + }, + "bdvAtRecapitalization": { + "bean": "1044420196", + "lp": "13227810830", + "total": "14272231026" + } + }, + "0x284A2d22620974fb416D866c18a1f3c848E7b7Bc": { + "tokens": { + "bean": "2601109598", + "lp": "1985096839" + }, + "bdvAtSnapshot": { + "bean": "747132316", + "lp": "934549845", + "total": "1681682161" + }, + "bdvAtRecapitalization": { + "bean": "2601109598", + "lp": "3919105280", + "total": "6520214878" + } + }, + "0x27E2826765085aaA5dB2837f56222Cf4Bb08A3C6": { + "tokens": { + "bean": "101939023", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "29280557", + "lp": "0", + "total": "29280557" + }, + "bdvAtRecapitalization": { + "bean": "101939023", + "lp": "0", + "total": "101939023" + } + }, + "0x28570D9d66627e0733dFE4FCa79B8fD5b8128636": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x2800B279e11e268d9D74AF01C551A9c52Eab1Be3": { + "tokens": { + "bean": "123038234255", + "lp": "591592845349" + }, + "bdvAtSnapshot": { + "bean": "35341010254", + "lp": "278511854512", + "total": "313852864766" + }, + "bdvAtRecapitalization": { + "bean": "123038234255", + "lp": "1167960473505", + "total": "1290998707760" + } + }, + "0x2894457502751d0F92ed1e740e2c8935F879E8AE": { + "tokens": { + "bean": "7686248858", + "lp": "48981773655" + }, + "bdvAtSnapshot": { + "bean": "2207767377", + "lp": "23059786347", + "total": "25267553724" + }, + "bdvAtRecapitalization": { + "bean": "7686248858", + "lp": "96702953731", + "total": "104389202589" + } + }, + "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2": { + "tokens": { + "bean": "102729540", + "lp": "337561098" + }, + "bdvAtSnapshot": { + "bean": "29507622", + "lp": "158918026", + "total": "188425648" + }, + "bdvAtRecapitalization": { + "bean": "102729540", + "lp": "666434733", + "total": "769164273" + } + }, + "0x28a23f0679D435fA70D41A5A9F782F04134cd0D4": { + "tokens": { + "bean": "429394993", + "lp": "35104699" + }, + "bdvAtSnapshot": { + "bean": "123337700", + "lp": "16526696", + "total": "139864396" + }, + "bdvAtRecapitalization": { + "bean": "429394993", + "lp": "69305944", + "total": "498700937" + } + }, + "0x28eD88c5F72C4e6DfC704f4CC71a4B7756BC4DbC": { + "tokens": { + "bean": "70439", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20233", + "lp": "0", + "total": "20233" + }, + "bdvAtRecapitalization": { + "bean": "70439", + "lp": "0", + "total": "70439" + } + }, + "0x28A40076496E02a9A527D7323175b15050b6C67c": { + "tokens": { + "bean": "1663198454", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "477730471", + "lp": "0", + "total": "477730471" + }, + "bdvAtRecapitalization": { + "bean": "1663198454", + "lp": "0", + "total": "1663198454" + } + }, + "0x28Fb01603CbA8A3826FB73587d62821258d7Aa72": { + "tokens": { + "bean": "432023", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "124093", + "lp": "0", + "total": "124093" + }, + "bdvAtRecapitalization": { + "bean": "432023", + "lp": "0", + "total": "432023" + } + }, + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37": { + "tokens": { + "bean": "136257580590", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "39138082418", + "lp": "0", + "total": "39138082418" + }, + "bdvAtRecapitalization": { + "bean": "136257580590", + "lp": "2", + "total": "136257580592" + } + }, + "0x290420874BF65691b98B67D042c06bBC31f85f11": { + "tokens": { + "bean": "26", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "7", + "lp": "0", + "total": "7" + }, + "bdvAtRecapitalization": { + "bean": "26", + "lp": "0", + "total": "26" + } + }, + "0x28c095d163107c5e9Ca83b932Ea14863B224D2B3": { + "tokens": { + "bean": "788527941", + "lp": "12521458665" + }, + "bdvAtSnapshot": { + "bean": "226493612", + "lp": "5894889875", + "total": "6121383487" + }, + "bdvAtRecapitalization": { + "bean": "788527941", + "lp": "24720665414", + "total": "25509193355" + } + }, + "0x28Ee765BCA9A5EA745C4D18A12D6ff975BC98298": { + "tokens": { + "bean": "16450425", + "lp": "470860015" + }, + "bdvAtSnapshot": { + "bean": "4725154", + "lp": "221672890", + "total": "226398044" + }, + "bdvAtRecapitalization": { + "bean": "16450425", + "lp": "929601990", + "total": "946052415" + } + }, + "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3": { + "tokens": { + "bean": "113430448667", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "32581308353", + "lp": "0", + "total": "32581308353" + }, + "bdvAtRecapitalization": { + "bean": "113430448667", + "lp": "2", + "total": "113430448669" + } + }, + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17": { + "tokens": { + "bean": "7158", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2056", + "lp": "0", + "total": "2056" + }, + "bdvAtRecapitalization": { + "bean": "7158", + "lp": "0", + "total": "7158" + } + }, + "0x297751960DAD09c6d38b73538C1cce45457d796d": { + "tokens": { + "bean": "40393332189", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "11602419165", + "lp": "1", + "total": "11602419166" + }, + "bdvAtRecapitalization": { + "bean": "40393332189", + "lp": "4", + "total": "40393332193" + } + }, + "0x29D708E97282054E698AF0Da3133D5711BA3C592": { + "tokens": { + "bean": "132919", + "lp": "540891" + }, + "bdvAtSnapshot": { + "bean": "38179", + "lp": "254642", + "total": "292821" + }, + "bdvAtRecapitalization": { + "bean": "132919", + "lp": "1067862", + "total": "1200781" + } + }, + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE": { + "tokens": { + "bean": "9194586657", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2641016293", + "lp": "0", + "total": "2641016293" + }, + "bdvAtRecapitalization": { + "bean": "9194586657", + "lp": "2", + "total": "9194586659" + } + }, + "0x2972bf9B54aC5100d747150Dfd684899c0aBEc5E": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x29Bf6652e795C360f7605be0FcD8b8e4F29a52d4": { + "tokens": { + "bean": "318853007", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "91586062", + "lp": "0", + "total": "91586062" + }, + "bdvAtRecapitalization": { + "bean": "318853007", + "lp": "0", + "total": "318853007" + } + }, + "0x2a07272aF1327699F36F06835A2410f4367e7a5C": { + "tokens": { + "bean": "3546400509", + "lp": "3100819552" + }, + "bdvAtSnapshot": { + "bean": "1018653897", + "lp": "1459813131", + "total": "2478467028" + }, + "bdvAtRecapitalization": { + "bean": "3546400509", + "lp": "6121836497", + "total": "9668237006" + } + }, + "0x2A1A1D4E4257DbbA1136992577FF1b5EfDa1bB34": { + "tokens": { + "bean": "339200", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "97430", + "lp": "0", + "total": "97430" + }, + "bdvAtRecapitalization": { + "bean": "339200", + "lp": "0", + "total": "339200" + } + }, + "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20": { + "tokens": { + "bean": "918511489", + "lp": "281274800" + }, + "bdvAtSnapshot": { + "bean": "263829566", + "lp": "132419394", + "total": "396248960" + }, + "bdvAtRecapitalization": { + "bean": "918511489", + "lp": "555310719", + "total": "1473822208" + } + }, + "0x2a213ee8125B9Bd6e8f5E1e199aD2B10744B384f": { + "tokens": { + "bean": "3486265403", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1001380929", + "lp": "0", + "total": "1001380929" + }, + "bdvAtRecapitalization": { + "bean": "3486265403", + "lp": "0", + "total": "3486265403" + } + }, + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82": { + "tokens": { + "bean": "1493696321", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "429043356", + "lp": "0", + "total": "429043356" + }, + "bdvAtRecapitalization": { + "bean": "1493696321", + "lp": "0", + "total": "1493696321" + } + }, + "0x2A23D58Ea4b5cC2e01ef53ea5dE51447C2528F16": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x2a40AAf3e076187B67CcCE82E20da5Ce27Caa2A7": { + "tokens": { + "bean": "235604312", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "67674040", + "lp": "0", + "total": "67674040" + }, + "bdvAtRecapitalization": { + "bean": "235604312", + "lp": "0", + "total": "235604312" + } + }, + "0x2A8e0ebDA46A075D77d197D21292e38D37a20AB3": { + "tokens": { + "bean": "4", + "lp": "30492996625" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "14355584430", + "total": "14355584431" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "60201226328", + "total": "60201226332" + } + }, + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a": { + "tokens": { + "bean": "8683645265", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2494255531", + "lp": "0", + "total": "2494255531" + }, + "bdvAtRecapitalization": { + "bean": "8683645265", + "lp": "0", + "total": "8683645265" + } + }, + "0x2A8eAc696c57a38aC79ae6168e8310306B4D7E9c": { + "tokens": { + "bean": "6732728182", + "lp": "59569664571" + }, + "bdvAtSnapshot": { + "bean": "1933881912", + "lp": "28044385396", + "total": "29978267308" + }, + "bdvAtRecapitalization": { + "bean": "6732728182", + "lp": "117606245893", + "total": "124338974075" + } + }, + "0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F": { + "tokens": { + "bean": "5196553434", + "lp": "1104579803" + }, + "bdvAtSnapshot": { + "bean": "1492637222", + "lp": "520017393", + "total": "2012654615" + }, + "bdvAtRecapitalization": { + "bean": "5196553434", + "lp": "2180732171", + "total": "7377285605" + } + }, + "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65": { + "tokens": { + "bean": "7915533791", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2273626264", + "lp": "0", + "total": "2273626264" + }, + "bdvAtRecapitalization": { + "bean": "7915533791", + "lp": "0", + "total": "7915533791" + } + }, + "0x2b5233fa7753870A588DCCA95E876f4C29470889": { + "tokens": { + "bean": "39421300", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "11323217", + "lp": "0", + "total": "11323217" + }, + "bdvAtRecapitalization": { + "bean": "39421300", + "lp": "0", + "total": "39421300" + } + }, + "0x2Be2273452ce4C80c0f9e9180D3f0d6eEDfa7923": { + "tokens": { + "bean": "17411461677", + "lp": "107883014261" + }, + "bdvAtSnapshot": { + "bean": "5001198606", + "lp": "50789489103", + "total": "55790687709" + }, + "bdvAtRecapitalization": { + "bean": "17411461677", + "lp": "212989554235", + "total": "230401015912" + } + }, + "0x2B83aC024B0a4Ba3f93776Cacb61D98310614aFE": { + "tokens": { + "bean": "327060856", + "lp": "1967892394" + }, + "bdvAtSnapshot": { + "bean": "93943652", + "lp": "926450285", + "total": "1020393937" + }, + "bdvAtRecapitalization": { + "bean": "327060856", + "lp": "3885139163", + "total": "4212200019" + } + }, + "0x2bF046A052942B53Ca6746de4D3295d8f10d4562": { + "tokens": { + "bean": "666207038", + "lp": "34061060135" + }, + "bdvAtSnapshot": { + "bean": "191358645", + "lp": "16035368074", + "total": "16226726719" + }, + "bdvAtRecapitalization": { + "bean": "666207038", + "lp": "67245525763", + "total": "67911732801" + } + }, + "0x2bE9518cc2a9fc2aA15b78b92D96E0727a07DF7C": { + "tokens": { + "bean": "429468318", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "123358762", + "lp": "0", + "total": "123358762" + }, + "bdvAtRecapitalization": { + "bean": "429468318", + "lp": "0", + "total": "429468318" + } + }, + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8": { + "tokens": { + "bean": "7977049042", + "lp": "4118465188" + }, + "bdvAtSnapshot": { + "bean": "2291295659", + "lp": "1938903397", + "total": "4230199056" + }, + "bdvAtRecapitalization": { + "bean": "7977049042", + "lp": "8130937669", + "total": "16107986711" + } + }, + "0x2Bf9b1B8cc4e6864660708498FB004E594eFC0b8": { + "tokens": { + "bean": "225573522", + "lp": "2916794833" + }, + "bdvAtSnapshot": { + "bean": "64792836", + "lp": "1373177422", + "total": "1437970258" + }, + "bdvAtRecapitalization": { + "bean": "225573522", + "lp": "5758523114", + "total": "5984096636" + } + }, + "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb": { + "tokens": { + "bean": "1932968569330", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "555218159980", + "lp": "1", + "total": "555218159981" + }, + "bdvAtRecapitalization": { + "bean": "1932968569330", + "lp": "4", + "total": "1932968569334" + } + }, + "0x2ca40f25ABFc9F860f8b1e8EdB689CA0645948Eb": { + "tokens": { + "bean": "30698390", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8817683", + "lp": "0", + "total": "8817683" + }, + "bdvAtRecapitalization": { + "bean": "30698390", + "lp": "0", + "total": "30698390" + } + }, + "0x2d5C566Dc54cA20028609839F88163Fd7CAD5Ea1": { + "tokens": { + "bean": "4994716841", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1434662487", + "lp": "0", + "total": "1434662487" + }, + "bdvAtRecapitalization": { + "bean": "4994716841", + "lp": "0", + "total": "4994716841" + } + }, + "0x2d9796333D7A9007FAa67006437b4c16EF8276E6": { + "tokens": { + "bean": "2626610063", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "754456968", + "lp": "0", + "total": "754456968" + }, + "bdvAtRecapitalization": { + "bean": "2626610063", + "lp": "0", + "total": "2626610063" + } + }, + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE": { + "tokens": { + "bean": "34436022479", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "9891265353", + "lp": "0", + "total": "9891265353" + }, + "bdvAtRecapitalization": { + "bean": "34436022479", + "lp": "2", + "total": "34436022481" + } + }, + "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0": { + "tokens": { + "bean": "2225264957", + "lp": "3780517716" + }, + "bdvAtSnapshot": { + "bean": "639176205", + "lp": "1779803472", + "total": "2418979677" + }, + "bdvAtRecapitalization": { + "bean": "2225264957", + "lp": "7463740132", + "total": "9689005089" + } + }, + "0x2e676e0f071376e12eD9e12a031D01B9B87F5878": { + "tokens": { + "bean": "69680131", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20014642", + "lp": "0", + "total": "20014642" + }, + "bdvAtRecapitalization": { + "bean": "69680131", + "lp": "0", + "total": "69680131" + } + }, + "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872": { + "tokens": { + "bean": "51708569410", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14852562643", + "lp": "0", + "total": "14852562643" + }, + "bdvAtRecapitalization": { + "bean": "51708569410", + "lp": "0", + "total": "51708569410" + } + }, + "0x2e5E27c085F20ac1970cA32d25966D255Ab196d0": { + "tokens": { + "bean": "11275563127", + "lp": "5405527029" + }, + "bdvAtSnapshot": { + "bean": "3238747650", + "lp": "2544830231", + "total": "5783577881" + }, + "bdvAtRecapitalization": { + "bean": "11275563127", + "lp": "10671937563", + "total": "21947500690" + } + }, + "0x2DF6A706Ee101556D68d7e52CE4d066Fb4C9B16e": { + "tokens": { + "bean": "1099611463", + "lp": "8317226210" + }, + "bdvAtSnapshot": { + "bean": "315847998", + "lp": "3915608707", + "total": "4231456705" + }, + "bdvAtRecapitalization": { + "bean": "1099611463", + "lp": "16420400515", + "total": "17520011978" + } + }, + "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8": { + "tokens": { + "bean": "484165946862", + "lp": "18132358913" + }, + "bdvAtSnapshot": { + "bean": "139069889913", + "lp": "8536406326", + "total": "147606296239" + }, + "bdvAtRecapitalization": { + "bean": "484165946862", + "lp": "35798063936", + "total": "519964010798" + } + }, + "0x2e7435AC62AF083f5602b645602770F5328018d1": { + "tokens": { + "bean": "63133980", + "lp": "279577551" + }, + "bdvAtSnapshot": { + "bean": "18134352", + "lp": "131620358", + "total": "149754710" + }, + "bdvAtRecapitalization": { + "bean": "63133980", + "lp": "551959902", + "total": "615093882" + } + }, + "0x2e6EE7d373C6f98a1Ca995F3A4f5d43FedEeAD11": { + "tokens": { + "bean": "19115658", + "lp": "34781859" + }, + "bdvAtSnapshot": { + "bean": "5490705", + "lp": "16374708", + "total": "21865413" + }, + "bdvAtRecapitalization": { + "bean": "19115658", + "lp": "68668573", + "total": "87784231" + } + }, + "0x2F0441f249BDb0146223a2e3b60c146badd667A4": { + "tokens": { + "bean": "1113180438", + "lp": "8724453236" + }, + "bdvAtSnapshot": { + "bean": "319745496", + "lp": "4107324268", + "total": "4427069764" + }, + "bdvAtRecapitalization": { + "bean": "1113180438", + "lp": "17224374184", + "total": "18337554622" + } + }, + "0x2f0087909A6f638755689d88141F3466F582007d": { + "tokens": { + "bean": "10261504319", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2947473455", + "lp": "0", + "total": "2947473455" + }, + "bdvAtRecapitalization": { + "bean": "10261504319", + "lp": "2", + "total": "10261504321" + } + }, + "0x2E9af3a1f42435354846Bff3681771b5E3551121": { + "tokens": { + "bean": "56795990695", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "16313853183", + "lp": "0", + "total": "16313853183" + }, + "bdvAtRecapitalization": { + "bean": "56795990695", + "lp": "0", + "total": "56795990695" + } + }, + "0x2EaacAf1468F248483Cec65254dff98FF95e3387": { + "tokens": { + "bean": "6372560233", + "lp": "37576472936" + }, + "bdvAtSnapshot": { + "bean": "1830428711", + "lp": "17690364658", + "total": "19520793369" + }, + "bdvAtRecapitalization": { + "bean": "6372560233", + "lp": "74185878798", + "total": "80558439031" + } + }, + "0x2EC92468f73fEc122bb5d3f9c3C2e17Cfa3467Da": { + "tokens": { + "bean": "645228359", + "lp": "5891623436" + }, + "bdvAtSnapshot": { + "bean": "185332813", + "lp": "2773676156", + "total": "2959008969" + }, + "bdvAtRecapitalization": { + "bean": "645228359", + "lp": "11631620213", + "total": "12276848572" + } + }, + "0x2F3139A9903728e9a971330Ae7CB19662A0Ce143": { + "tokens": { + "bean": "15446125", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4436683", + "lp": "0", + "total": "4436683" + }, + "bdvAtRecapitalization": { + "bean": "15446125", + "lp": "0", + "total": "15446125" + } + }, + "0x2f48D91F26f4DE798E6e5883163FeF0a2E30D595": { + "tokens": { + "bean": "41851119", + "lp": "916854958" + }, + "bdvAtSnapshot": { + "bean": "12021148", + "lp": "431639728", + "total": "443660876" + }, + "bdvAtRecapitalization": { + "bean": "41851119", + "lp": "1810113762", + "total": "1851964881" + } + }, + "0x2e95A39eF19c5620887C0d9822916c0406E4E75e": { + "tokens": { + "bean": "4990365685", + "lp": "57870112372" + }, + "bdvAtSnapshot": { + "bean": "1433412678", + "lp": "27244265113", + "total": "28677677791" + }, + "bdvAtRecapitalization": { + "bean": "4990365685", + "lp": "114250881124", + "total": "119241246809" + } + }, + "0x2f4A81fDF6d61EbAb81073826915F1426896bD37": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x2f65904D227C3D7e4BbBB7EA10CFc36CD2522405": { + "tokens": { + "bean": "604108560", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "173521726", + "lp": "0", + "total": "173521726" + }, + "bdvAtRecapitalization": { + "bean": "604108560", + "lp": "0", + "total": "604108560" + } + }, + "0x2f62960f4da8f18ff4875d6F0365d7Dbc3900B8C": { + "tokens": { + "bean": "0", + "lp": "9" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "4", + "total": "4" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "18", + "total": "18" + } + }, + "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb": { + "tokens": { + "bean": "91814414968", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "26372405298", + "lp": "0", + "total": "26372405298" + }, + "bdvAtRecapitalization": { + "bean": "91814414968", + "lp": "0", + "total": "91814414968" + } + }, + "0x30D3174Ce04F1E48c18B1299926029568Cf4E1D6": { + "tokens": { + "bean": "6911362257", + "lp": "40627375033" + }, + "bdvAtSnapshot": { + "bean": "1985192049", + "lp": "19126677500", + "total": "21111869549" + }, + "bdvAtRecapitalization": { + "bean": "6911362257", + "lp": "80209165060", + "total": "87120527317" + } + }, + "0x31188536865De4593040fAfC4e175E190518e4Ef": { + "tokens": { + "bean": "5", + "lp": "4434577711" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "2087723799", + "total": "2087723800" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "8755027252", + "total": "8755027257" + } + }, + "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26": { + "tokens": { + "bean": "127792642", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "36706647", + "lp": "0", + "total": "36706647" + }, + "bdvAtRecapitalization": { + "bean": "127792642", + "lp": "0", + "total": "127792642" + } + }, + "0x305b0eCf72634825f7231058444c65D885E1f327": { + "tokens": { + "bean": "8952303501", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2571423848", + "lp": "0", + "total": "2571423848" + }, + "bdvAtRecapitalization": { + "bean": "8952303501", + "lp": "0", + "total": "8952303501" + } + }, + "0x30709180d8747E5BC0bD6E1BFf51baEdAB31328D": { + "tokens": { + "bean": "1149472973", + "lp": "42728235660" + }, + "bdvAtSnapshot": { + "bean": "330170019", + "lp": "20115726969", + "total": "20445896988" + }, + "bdvAtRecapitalization": { + "bean": "1149472973", + "lp": "84356818623", + "total": "85506291596" + } + }, + "0x30A1fbFc214D2Af0A68f6652A1d18a1b71Dfa9eA": { + "tokens": { + "bean": "3", + "lp": "20503288233" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "9652599544", + "total": "9652599545" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "40478904404", + "total": "40478904407" + } + }, + "0x3116a992bA59A1f818f69fC9C80B519C2Bb915B5": { + "tokens": { + "bean": "21807930985", + "lp": "9803571614" + }, + "bdvAtSnapshot": { + "bean": "6264022864", + "lp": "4615354855", + "total": "10879377719" + }, + "bdvAtRecapitalization": { + "bean": "21807930985", + "lp": "19354838779", + "total": "41162769764" + } + }, + "0x305C5E928370941BE39b76DeB770d9Be299A5fF3": { + "tokens": { + "bean": "1664479829", + "lp": "641662514484" + }, + "bdvAtSnapshot": { + "bean": "478098528", + "lp": "302083803556", + "total": "302561902084" + }, + "bdvAtRecapitalization": { + "bean": "1664479829", + "lp": "1266811220147", + "total": "1268475699976" + } + }, + "0x3120a7c463f7993E85Ac2a40AA7B2c8A0A9acd54": { + "tokens": { + "bean": "907806381", + "lp": "14631405933" + }, + "bdvAtSnapshot": { + "bean": "260754674", + "lp": "6888217179", + "total": "7148971853" + }, + "bdvAtRecapitalization": { + "bean": "907806381", + "lp": "28886258405", + "total": "29794064786" + } + }, + "0x317178D5d21a6eB723C957f986A8c069Da2Ee215": { + "tokens": { + "bean": "244095828", + "lp": "71334128" + }, + "bdvAtSnapshot": { + "bean": "70113109", + "lp": "33582895", + "total": "103696004" + }, + "bdvAtRecapitalization": { + "bean": "244095828", + "lp": "140832403", + "total": "384928231" + } + }, + "0x319c9DE67C2684Cfc932C54cDD4B4100d90c8d04": { + "tokens": { + "bean": "45829737419", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "13163950457", + "lp": "0", + "total": "13163950457" + }, + "bdvAtRecapitalization": { + "bean": "45829737419", + "lp": "0", + "total": "45829737419" + } + }, + "0x31ca06f88438Decf247dd25695D53CBE2ac539f4": { + "tokens": { + "bean": "33322837138", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "9571518448", + "lp": "0", + "total": "9571518448" + }, + "bdvAtRecapitalization": { + "bean": "33322837138", + "lp": "2", + "total": "33322837140" + } + }, + "0x31DEae0DDc9f0D0207D13fc56927f067F493d324": { + "tokens": { + "bean": "4552985030", + "lp": "47869938520" + }, + "bdvAtSnapshot": { + "bean": "1307781208", + "lp": "22536353266", + "total": "23844134474" + }, + "bdvAtRecapitalization": { + "bean": "4552985030", + "lp": "94507897619", + "total": "99060882649" + } + }, + "0x32ddCe808c77E45411CE3Bb28404499942db02a7": { + "tokens": { + "bean": "308840895", + "lp": "3065021524" + }, + "bdvAtSnapshot": { + "bean": "88710223", + "lp": "1442960028", + "total": "1531670251" + }, + "bdvAtRecapitalization": { + "bean": "308840895", + "lp": "6051161738", + "total": "6360002633" + } + }, + "0x3213977900A71e183818472e795c76aF8cbC3a3E": { + "tokens": { + "bean": "44484110", + "lp": "2628071735" + }, + "bdvAtSnapshot": { + "bean": "12777438", + "lp": "1237251496", + "total": "1250028934" + }, + "bdvAtRecapitalization": { + "bean": "44484110", + "lp": "5188507488", + "total": "5232991598" + } + }, + "0x32fa6F9861d9F4912670A2d326B1356Fbed2dA04": { + "tokens": { + "bean": "482109323333", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "138479153597", + "lp": "0", + "total": "138479153597" + }, + "bdvAtRecapitalization": { + "bean": "482109323333", + "lp": "0", + "total": "482109323333" + } + }, + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0": { + "tokens": { + "bean": "1268805015", + "lp": "414212759" + }, + "bdvAtSnapshot": { + "bean": "364446477", + "lp": "195004325", + "total": "559450802" + }, + "bdvAtRecapitalization": { + "bean": "1268805015", + "lp": "817765350", + "total": "2086570365" + } + }, + "0x32C7006B7E287eBb972194B40135e0D15870Ab5E": { + "tokens": { + "bean": "1114706", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "320184", + "lp": "0", + "total": "320184" + }, + "bdvAtRecapitalization": { + "bean": "1114706", + "lp": "0", + "total": "1114706" + } + }, + "0x32a59b87352e980dD6aB1bAF462696D28e63525D": { + "tokens": { + "bean": "490068176", + "lp": "10103930824" + }, + "bdvAtSnapshot": { + "bean": "140765223", + "lp": "4756758865", + "total": "4897524088" + }, + "bdvAtRecapitalization": { + "bean": "490068176", + "lp": "19947827162", + "total": "20437895338" + } + }, + "0x330B24C43F212eD31591914ec2bd9F6e64fF912e": { + "tokens": { + "bean": "3596787429", + "lp": "41580941604" + }, + "bdvAtSnapshot": { + "bean": "1033126834", + "lp": "19575600431", + "total": "20608727265" + }, + "bdvAtRecapitalization": { + "bean": "3596787429", + "lp": "82091757239", + "total": "85688544668" + } + }, + "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e": { + "tokens": { + "bean": "11383519374", + "lp": "40013039569" + }, + "bdvAtSnapshot": { + "bean": "3269756571", + "lp": "18837458807", + "total": "22107215378" + }, + "bdvAtRecapitalization": { + "bean": "11383519374", + "lp": "78996304652", + "total": "90379824026" + } + }, + "0x33314cF610C14460d3c184a55363f51d609aa076": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x333ad4bd869b12Fb3B1C883Cf2F1C89b685E018c": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0x334bdeAA1A66E199CE2067A205506Bf72de14593": { + "tokens": { + "bean": "6910399842", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1984915609", + "lp": "0", + "total": "1984915609" + }, + "bdvAtRecapitalization": { + "bean": "6910399842", + "lp": "0", + "total": "6910399842" + } + }, + "0x339dD90e14Ec35D2F74Ffea7495c2FB0150AF2Ba": { + "tokens": { + "bean": "1183088918", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "339825728", + "lp": "0", + "total": "339825728" + }, + "bdvAtRecapitalization": { + "bean": "1183088918", + "lp": "0", + "total": "1183088918" + } + }, + "0x3483A0282281768E2883c443989194259CBA7EAF": { + "tokens": { + "bean": "578236478", + "lp": "2700466464" + }, + "bdvAtSnapshot": { + "bean": "166090333", + "lp": "1271333703", + "total": "1437424036" + }, + "bdvAtRecapitalization": { + "bean": "578236478", + "lp": "5331433797", + "total": "5909670275" + } + }, + "0x335750d1A6148329c3e2bcd18671cd594D383F9b": { + "tokens": { + "bean": "17641228", + "lp": "1481637593" + }, + "bdvAtSnapshot": { + "bean": "5067196", + "lp": "697529791", + "total": "702596987" + }, + "bdvAtRecapitalization": { + "bean": "17641228", + "lp": "2925143802", + "total": "2942785030" + } + }, + "0x347CC205EC065660F392Fc3765822eEb76FeBf90": { + "tokens": { + "bean": "171022185", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "49123728", + "lp": "0", + "total": "49123728" + }, + "bdvAtRecapitalization": { + "bean": "171022185", + "lp": "0", + "total": "171022185" + } + }, + "0x334f12F269213371fb59b328BB6e182C875e04B2": { + "tokens": { + "bean": "327126090707", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "93962389790", + "lp": "0", + "total": "93962389790" + }, + "bdvAtRecapitalization": { + "bean": "327126090707", + "lp": "2", + "total": "327126090709" + } + }, + "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327": { + "tokens": { + "bean": "2282459750", + "lp": "3080030408" + }, + "bdvAtSnapshot": { + "bean": "655604609", + "lp": "1450025956", + "total": "2105630565" + }, + "bdvAtRecapitalization": { + "bean": "2282459750", + "lp": "6080793238", + "total": "8363252988" + } + }, + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2": { + "tokens": { + "bean": "5", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1", + "total": "2" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "4", + "total": "9" + } + }, + "0x343EE80f82440A498E48Ae186e066809750A055B": { + "tokens": { + "bean": "58636084508", + "lp": "152268254400" + }, + "bdvAtSnapshot": { + "bean": "16842394370", + "lp": "71685305611", + "total": "88527699981" + }, + "bdvAtRecapitalization": { + "bean": "58636084508", + "lp": "300617737194", + "total": "359253821702" + } + }, + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad": { + "tokens": { + "bean": "81817467265", + "lp": "548785115" + }, + "bdvAtSnapshot": { + "bean": "23500922027", + "lp": "258358703", + "total": "23759280730" + }, + "bdvAtRecapitalization": { + "bean": "81817467265", + "lp": "1083446711", + "total": "82900913976" + } + }, + "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30": { + "tokens": { + "bean": "361218592", + "lp": "948338583" + }, + "bdvAtSnapshot": { + "bean": "103754983", + "lp": "446461683", + "total": "550216666" + }, + "bdvAtRecapitalization": { + "bean": "361218592", + "lp": "1872270750", + "total": "2233489342" + } + }, + "0x33B357B809c216cA9815ff340088C11b510e3434": { + "tokens": { + "bean": "499537547", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "143485167", + "lp": "0", + "total": "143485167" + }, + "bdvAtRecapitalization": { + "bean": "499537547", + "lp": "0", + "total": "499537547" + } + }, + "0x34DdFe208f02c3fC0a49fada184562e7Eb1a4206": { + "tokens": { + "bean": "1019739552", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "292905910", + "lp": "0", + "total": "292905910" + }, + "bdvAtRecapitalization": { + "bean": "1019739552", + "lp": "0", + "total": "1019739552" + } + }, + "0x34e642520F4487D7D0229c07f2EDe107966D385E": { + "tokens": { + "bean": "204960224", + "lp": "354367536" + }, + "bdvAtSnapshot": { + "bean": "58871955", + "lp": "166830212", + "total": "225702167" + }, + "bdvAtRecapitalization": { + "bean": "204960224", + "lp": "699615079", + "total": "904575303" + } + }, + "0x350B75652059725c6E01F16198Da61BBeC33eD5f": { + "tokens": { + "bean": "574402236", + "lp": "3106323700" + }, + "bdvAtSnapshot": { + "bean": "164989001", + "lp": "1462404390", + "total": "1627393391" + }, + "bdvAtRecapitalization": { + "bean": "574402236", + "lp": "6132703139", + "total": "6707105375" + } + }, + "0x35044Cc44d0a2E627a6a3a0222172B0cE663b00c": { + "tokens": { + "bean": "3446652", + "lp": "589905888" + }, + "bdvAtSnapshot": { + "bean": "990003", + "lp": "277717664", + "total": "278707667" + }, + "bdvAtRecapitalization": { + "bean": "3446652", + "lp": "1164629974", + "total": "1168076626" + } + }, + "0x350EBDD5C2Ba29e7E14dD603dd36ea0e0d007F5F": { + "tokens": { + "bean": "2600925030", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "747079302", + "lp": "0", + "total": "747079302" + }, + "bdvAtRecapitalization": { + "bean": "2600925030", + "lp": "0", + "total": "2600925030" + } + }, + "0x34a649fde43cE36882091A010aAe2805A9FcFf0d": { + "tokens": { + "bean": "250642362344", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "71993509590", + "lp": "0", + "total": "71993509590" + }, + "bdvAtRecapitalization": { + "bean": "250642362344", + "lp": "2", + "total": "250642362346" + } + }, + "0x353667248112af748E3565a41eF101Daf57aE02a": { + "tokens": { + "bean": "104655060", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "30060701", + "lp": "0", + "total": "30060701" + }, + "bdvAtRecapitalization": { + "bean": "104655060", + "lp": "0", + "total": "104655060" + } + }, + "0x357c242c8c2A3f8DCC3eB3b5e4c54f52a2F3c480": { + "tokens": { + "bean": "218346341", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "62716930", + "lp": "0", + "total": "62716930" + }, + "bdvAtRecapitalization": { + "bean": "218346341", + "lp": "0", + "total": "218346341" + } + }, + "0x35F105E802DA60D3312e5a89F51453A0c46B9Dad": { + "tokens": { + "bean": "18832156", + "lp": "902079937" + }, + "bdvAtSnapshot": { + "bean": "5409273", + "lp": "424683899", + "total": "430093172" + }, + "bdvAtRecapitalization": { + "bean": "18832156", + "lp": "1780943970", + "total": "1799776126" + } + }, + "0x35B6870f0BBc8D7D846B7e21D9D99Eb9CE042929": { + "tokens": { + "bean": "92175232", + "lp": "3165541817" + }, + "bdvAtSnapshot": { + "bean": "26476045", + "lp": "1490283273", + "total": "1516759318" + }, + "bdvAtRecapitalization": { + "bean": "92175232", + "lp": "6249615337", + "total": "6341790569" + } + }, + "0x3635364e89EF6e842DD16a4028Df0A7124CA7A4A": { + "tokens": { + "bean": "7770559097", + "lp": "4438870712" + }, + "bdvAtSnapshot": { + "bean": "2231984313", + "lp": "2089744870", + "total": "4321729183" + }, + "bdvAtRecapitalization": { + "bean": "7770559097", + "lp": "8763502769", + "total": "16534061866" + } + }, + "0x362C51b56D3c8f79aecf367ff301d1aFd42EDCEA": { + "tokens": { + "bean": "44130997", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12676011", + "lp": "0", + "total": "12676011" + }, + "bdvAtRecapitalization": { + "bean": "44130997", + "lp": "0", + "total": "44130997" + } + }, + "0x351A9C83756bB46D912c89ec1072C02ab7795Ac2": { + "tokens": { + "bean": "342535872", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "98388634", + "lp": "0", + "total": "98388634" + }, + "bdvAtRecapitalization": { + "bean": "342535872", + "lp": "0", + "total": "342535872" + } + }, + "0x362FFA9F404A14F4E805A39D4985042932D42aFe": { + "tokens": { + "bean": "250660177", + "lp": "1086680112" + }, + "bdvAtSnapshot": { + "bean": "71998627", + "lp": "511590523", + "total": "583589150" + }, + "bdvAtRecapitalization": { + "bean": "250660177", + "lp": "2145393455", + "total": "2396053632" + } + }, + "0x368D80b383a401a231674B168E101706389656cB": { + "tokens": { + "bean": "113878848", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "32710105", + "lp": "0", + "total": "32710105" + }, + "bdvAtRecapitalization": { + "bean": "113878848", + "lp": "0", + "total": "113878848" + } + }, + "0x3640a9ba0A6EF5738f0b41b87EAE75B8928F8917": { + "tokens": { + "bean": "1980292", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "568811", + "lp": "0", + "total": "568811" + }, + "bdvAtRecapitalization": { + "bean": "1980292", + "lp": "0", + "total": "1980292" + } + }, + "0x369582706e408F497D7132d9446983722B67A399": { + "tokens": { + "bean": "43332749", + "lp": "822304458" + }, + "bdvAtSnapshot": { + "bean": "12446725", + "lp": "387126960", + "total": "399573685" + }, + "bdvAtRecapitalization": { + "bean": "43332749", + "lp": "1623446111", + "total": "1666778860" + } + }, + "0x3694e90893D3de8d9C1AcC9D0e87Eb9BD0d041Ff": { + "tokens": { + "bean": "2683094499", + "lp": "12343491239" + }, + "bdvAtSnapshot": { + "bean": "770681332", + "lp": "5811105836", + "total": "6581787168" + }, + "bdvAtRecapitalization": { + "bean": "2683094499", + "lp": "24369310727", + "total": "27052405226" + } + }, + "0x369D092150201b0DaB4ee942eb3F3972E4d73b67": { + "tokens": { + "bean": "1102736576", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "316745643", + "lp": "0", + "total": "316745643" + }, + "bdvAtRecapitalization": { + "bean": "1102736576", + "lp": "0", + "total": "1102736576" + } + }, + "0x36Af78764eeB195Db2E8a7b63A49BB58aA67F247": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x36B9aB68D5999F060fE8db71e35c8b5201313178": { + "tokens": { + "bean": "5", + "lp": "100768195075" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "47439953182", + "total": "47439953183" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "198943022654", + "total": "198943022659" + } + }, + "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B": { + "tokens": { + "bean": "198751156377", + "lp": "94183402336" + }, + "bdvAtSnapshot": { + "bean": "57088487153", + "lp": "44339944702", + "total": "101428431855" + }, + "bdvAtRecapitalization": { + "bean": "198751156377", + "lp": "185942903220", + "total": "384694059597" + } + }, + "0x36A38cCA26aD880980d920585690Ec67422B40B2": { + "tokens": { + "bean": "686386789", + "lp": "1258406503" + }, + "bdvAtSnapshot": { + "bean": "197154996", + "lp": "592436389", + "total": "789591385" + }, + "bdvAtRecapitalization": { + "bean": "686386789", + "lp": "2484426691", + "total": "3170813480" + } + }, + "0x36C3094E86CB89e33a74F7e4c10659dd9366538C": { + "tokens": { + "bean": "9649995165", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2771826011", + "lp": "0", + "total": "2771826011" + }, + "bdvAtRecapitalization": { + "bean": "9649995165", + "lp": "0", + "total": "9649995165" + } + }, + "0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc": { + "tokens": { + "bean": "103151464", + "lp": "267116071" + }, + "bdvAtSnapshot": { + "bean": "29628814", + "lp": "125753705", + "total": "155382519" + }, + "bdvAtRecapitalization": { + "bean": "103151464", + "lp": "527357650", + "total": "630509114" + } + }, + "0x3704e6Ce76944849Bc913a4bE9aCA42C1A91c774": { + "tokens": { + "bean": "252031959", + "lp": "1106112149" + }, + "bdvAtSnapshot": { + "bean": "72392652", + "lp": "520738796", + "total": "593131448" + }, + "bdvAtRecapitalization": { + "bean": "252031959", + "lp": "2183757426", + "total": "2435789385" + } + }, + "0x3726F06d85fC77f13D352f86b4Da6f356f7BDaF6": { + "tokens": { + "bean": "4237788", + "lp": "355717801" + }, + "bdvAtSnapshot": { + "bean": "1217245", + "lp": "167465894", + "total": "168683139" + }, + "bdvAtRecapitalization": { + "bean": "4237788", + "lp": "702280858", + "total": "706518646" + } + }, + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F": { + "tokens": { + "bean": "28812000003", + "lp": "70800720224" + }, + "bdvAtSnapshot": { + "bean": "8275843633", + "lp": "33331775469", + "total": "41607619102" + }, + "bdvAtRecapitalization": { + "bean": "28812000003", + "lp": "139779315060", + "total": "168591315063" + } + }, + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6": { + "tokens": { + "bean": "2201642339", + "lp": "113097469070" + }, + "bdvAtSnapshot": { + "bean": "632390939", + "lp": "53244365781", + "total": "53876756720" + }, + "bdvAtRecapitalization": { + "bean": "2201642339", + "lp": "223284264787", + "total": "225485907126" + } + }, + "0x37D372339FfF4A46Dc0f000a6062E21192dC227C": { + "tokens": { + "bean": "10209606", + "lp": "444311415" + }, + "bdvAtSnapshot": { + "bean": "2932566", + "lp": "209174261", + "total": "212106827" + }, + "bdvAtRecapitalization": { + "bean": "10209606", + "lp": "877188044", + "total": "887397650" + } + }, + "0x37435b30f92749e3083597E834d9c1D549e2494B": { + "tokens": { + "bean": "2175724949421", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "624946531572", + "lp": "0", + "total": "624946531572" + }, + "bdvAtRecapitalization": { + "bean": "2175724949421", + "lp": "2", + "total": "2175724949423" + } + }, + "0x37Dd96f96c2aCDa38Fb9daC8aAB4e57E2356555E": { + "tokens": { + "bean": "14963709", + "lp": "4892298906" + }, + "bdvAtSnapshot": { + "bean": "4298116", + "lp": "2303211156", + "total": "2307509272" + }, + "bdvAtRecapitalization": { + "bean": "14963709", + "lp": "9658689742", + "total": "9673653451" + } + }, + "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C": { + "tokens": { + "bean": "7341193349", + "lp": "14114268310" + }, + "bdvAtSnapshot": { + "bean": "2108655013", + "lp": "6644757578", + "total": "8753412591" + }, + "bdvAtRecapitalization": { + "bean": "7341193349", + "lp": "27865292199", + "total": "35206485548" + } + }, + "0x3804e244b0687A41619CdA590dA47ED0f9772C8B": { + "tokens": { + "bean": "2256476327", + "lp": "74452876116" + }, + "bdvAtSnapshot": { + "bean": "648141234", + "lp": "35051148377", + "total": "35699289611" + }, + "bdvAtRecapitalization": { + "bean": "2256476327", + "lp": "146989635060", + "total": "149246111387" + } + }, + "0x37EdCDe4Ba9b3A2A82AE6bC439c163a067BB2003": { + "tokens": { + "bean": "17928271", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5149645", + "lp": "0", + "total": "5149645" + }, + "bdvAtRecapitalization": { + "bean": "17928271", + "lp": "0", + "total": "17928271" + } + }, + "0x37f8E3b0Dfc2A980Ec9CD2C233a054eAa99E9d8A": { + "tokens": { + "bean": "7228030518", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2076150574", + "lp": "0", + "total": "2076150574" + }, + "bdvAtRecapitalization": { + "bean": "7228030518", + "lp": "0", + "total": "7228030518" + } + }, + "0x3800645f556ee583E20D6491c3a60E9c32744376": { + "tokens": { + "bean": "421687105", + "lp": "9818885262" + }, + "bdvAtSnapshot": { + "bean": "121123717", + "lp": "4622564260", + "total": "4743687977" + }, + "bdvAtRecapitalization": { + "bean": "421687105", + "lp": "19385071963", + "total": "19806759068" + } + }, + "0x380E5b655d459A0cFa6fa2DFBbE586bf40DcFd7F": { + "tokens": { + "bean": "57046319470", + "lp": "909151564" + }, + "bdvAtSnapshot": { + "bean": "16385756619", + "lp": "428013101", + "total": "16813769720" + }, + "bdvAtRecapitalization": { + "bean": "57046319470", + "lp": "1794905228", + "total": "58841224698" + } + }, + "0x3841D90d38D0cD3846d00b37fAF0583504b93475": { + "tokens": { + "bean": "3285846733", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "943813472", + "lp": "0", + "total": "943813472" + }, + "bdvAtRecapitalization": { + "bean": "3285846733", + "lp": "0", + "total": "3285846733" + } + }, + "0x3849a135D541232af220Bb839Ee1cE7e2165ed7D": { + "tokens": { + "bean": "9014", + "lp": "190371385547" + }, + "bdvAtSnapshot": { + "bean": "2589", + "lp": "89623612002", + "total": "89623614591" + }, + "bdvAtRecapitalization": { + "bean": "9014", + "lp": "375843378353", + "total": "375843387367" + } + }, + "0x385B0F514eB52f37B25c01eEb1f777513C839d46": { + "tokens": { + "bean": "115471141", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "33167469", + "lp": "0", + "total": "33167469" + }, + "bdvAtRecapitalization": { + "bean": "115471141", + "lp": "0", + "total": "115471141" + } + }, + "0x385f68B55cf0d9c8f00D60F0452BF9b2622D2C83": { + "tokens": { + "bean": "949342342", + "lp": "927290764" + }, + "bdvAtSnapshot": { + "bean": "272685297", + "lp": "436552728", + "total": "709238025" + }, + "bdvAtRecapitalization": { + "bean": "949342342", + "lp": "1830716798", + "total": "2780059140" + } + }, + "0x387dfB7Fca2606AcaacD769Fb59803F6539C8269": { + "tokens": { + "bean": "454246", + "lp": "50323286474" + }, + "bdvAtSnapshot": { + "bean": "130476", + "lp": "23691347776", + "total": "23691478252" + }, + "bdvAtRecapitalization": { + "bean": "454246", + "lp": "99351454232", + "total": "99351908478" + } + }, + "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608": { + "tokens": { + "bean": "7272894", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2089037", + "lp": "0", + "total": "2089037" + }, + "bdvAtRecapitalization": { + "bean": "7272894", + "lp": "0", + "total": "7272894" + } + }, + "0x396f03e88F0bD5A69c88c70895440B36579d86fA": { + "tokens": { + "bean": "39761115", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "11420824", + "lp": "0", + "total": "11420824" + }, + "bdvAtRecapitalization": { + "bean": "39761115", + "lp": "0", + "total": "39761115" + } + }, + "0x394c357DB3177E33Bde63F259F0EB2c04A46827c": { + "tokens": { + "bean": "434116403201", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "124693859190", + "lp": "0", + "total": "124693859190" + }, + "bdvAtRecapitalization": { + "bean": "434116403201", + "lp": "2", + "total": "434116403203" + } + }, + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3": { + "tokens": { + "bean": "2191566065", + "lp": "12679665225" + }, + "bdvAtSnapshot": { + "bean": "629496670", + "lp": "5969370834", + "total": "6598867504" + }, + "bdvAtRecapitalization": { + "bean": "2191566065", + "lp": "25033006935", + "total": "27224573000" + } + }, + "0x399abd36B9c7CeF008F75d8805eE5Fdf05D41773": { + "tokens": { + "bean": "160", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "46", + "lp": "0", + "total": "46" + }, + "bdvAtRecapitalization": { + "bean": "160", + "lp": "0", + "total": "160" + } + }, + "0x388Bb4D6B0C8e09AFaaF84cDae8123778fadf28c": { + "tokens": { + "bean": "28225793539", + "lp": "195663130969" + }, + "bdvAtSnapshot": { + "bean": "8107464033", + "lp": "92114875787", + "total": "100222339820" + }, + "bdvAtRecapitalization": { + "bean": "28225793539", + "lp": "386290680982", + "total": "414516474521" + } + }, + "0x38AE800E603F61a43f3B02f5E429b44E32e01D84": { + "tokens": { + "bean": "31805085", + "lp": "5256842877" + }, + "bdvAtSnapshot": { + "bean": "9135565", + "lp": "2474832260", + "total": "2483967825" + }, + "bdvAtRecapitalization": { + "bean": "31805085", + "lp": "10378395790", + "total": "10410200875" + } + }, + "0x397eADFF98b18a0E8c1c1866b9e83aE887bAc1f1": { + "tokens": { + "bean": "2148884438", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "617236970", + "lp": "0", + "total": "617236970" + }, + "bdvAtRecapitalization": { + "bean": "2148884438", + "lp": "0", + "total": "2148884438" + } + }, + "0x3aB1a190713Efdc091450aF618B8c1398281373E": { + "tokens": { + "bean": "1", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2", + "total": "3" + } + }, + "0x3A048707c0E5064bAa275d9A4C4015e4E481f10d": { + "tokens": { + "bean": "1088640321", + "lp": "1237780103" + }, + "bdvAtSnapshot": { + "bean": "312696691", + "lp": "582725830", + "total": "895422521" + }, + "bdvAtRecapitalization": { + "bean": "1088640321", + "lp": "2443704731", + "total": "3532345052" + } + }, + "0x3a7268413227Aed893057a8eB21299b36ec3477e": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x39BBb0F8D1C9F71051478Df51E0243aA16F4cB41": { + "tokens": { + "bean": "287764703", + "lp": "6881327715" + }, + "bdvAtSnapshot": { + "bean": "82656382", + "lp": "3239612106", + "total": "3322268488" + }, + "bdvAtRecapitalization": { + "bean": "287764703", + "lp": "13585557769", + "total": "13873322472" + } + }, + "0x3A6E274ac986579E0322227e9E560aDB192c0093": { + "tokens": { + "bean": "47415110", + "lp": "54299615" + }, + "bdvAtSnapshot": { + "bean": "13619327", + "lp": "25563336", + "total": "39182663" + }, + "bdvAtRecapitalization": { + "bean": "47415110", + "lp": "107201777", + "total": "154616887" + } + }, + "0x3A628c8Ff76fEDDCB377B94a794A4d9fA785E1a4": { + "tokens": { + "bean": "16406265586", + "lp": "60423747901" + }, + "bdvAtSnapshot": { + "bean": "4712470102", + "lp": "28446473308", + "total": "33158943410" + }, + "bdvAtRecapitalization": { + "bean": "16406265586", + "lp": "119292431888", + "total": "135698697474" + } + }, + "0x3b13c2d95De500b90Cbef9c285a517B1E8bBdcEC": { + "tokens": { + "bean": "5742694489", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1649508594", + "lp": "0", + "total": "1649508594" + }, + "bdvAtRecapitalization": { + "bean": "5742694489", + "lp": "0", + "total": "5742694489" + } + }, + "0x3B24Dde8eF6B02438490117985D9Cfa2EdCcf746": { + "tokens": { + "bean": "240806763", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "69168371", + "lp": "0", + "total": "69168371" + }, + "bdvAtRecapitalization": { + "bean": "240806763", + "lp": "0", + "total": "240806763" + } + }, + "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd": { + "tokens": { + "bean": "34007320929", + "lp": "3504499105" + }, + "bdvAtSnapshot": { + "bean": "9768126834", + "lp": "1649858602", + "total": "11417985436" + }, + "bdvAtRecapitalization": { + "bean": "34007320929", + "lp": "6918806517", + "total": "40926127446" + } + }, + "0x3b55DF245d5350c4024Acc36259B3061d42140D2": { + "tokens": { + "bean": "289782333791", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "83235918429", + "lp": "0", + "total": "83235918429" + }, + "bdvAtRecapitalization": { + "bean": "289782333791", + "lp": "2", + "total": "289782333793" + } + }, + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7": { + "tokens": { + "bean": "26342201188", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "7566428500", + "lp": "0", + "total": "7566428500" + }, + "bdvAtRecapitalization": { + "bean": "26342201188", + "lp": "2", + "total": "26342201190" + } + }, + "0x3bf5FFF3Db120385AEefa86Ba00A27314a685d33": { + "tokens": { + "bean": "6001", + "lp": "51792006971" + }, + "bdvAtSnapshot": { + "bean": "1724", + "lp": "24382796418", + "total": "24382798142" + }, + "bdvAtRecapitalization": { + "bean": "6001", + "lp": "102251096275", + "total": "102251102276" + } + }, + "0x3C087171AEBC50BE76A7C47cBB296928C32f5788": { + "tokens": { + "bean": "14554397733", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "4180546987", + "lp": "0", + "total": "4180546987" + }, + "bdvAtRecapitalization": { + "bean": "14554397733", + "lp": "2", + "total": "14554397735" + } + }, + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133": { + "tokens": { + "bean": "2574671554", + "lp": "61411031788" + }, + "bdvAtSnapshot": { + "bean": "739538358", + "lp": "28911269778", + "total": "29650808136" + }, + "bdvAtRecapitalization": { + "bean": "2574671554", + "lp": "121241590951", + "total": "123816262505" + } + }, + "0x3C2e7c9DD56225d3CC40fB863f9922fC73c399ae": { + "tokens": { + "bean": "458402153", + "lp": "358982130" + }, + "bdvAtSnapshot": { + "bean": "131669601", + "lp": "169002684", + "total": "300672285" + }, + "bdvAtRecapitalization": { + "bean": "458402153", + "lp": "708725506", + "total": "1167127659" + } + }, + "0x3c5a438a2c19D024a3E53c27d45FAfAC9A45B4f7": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0x3C4bf99EBd50cF2C116d95Fc4F9c258b2d1F03E5": { + "tokens": { + "bean": "20949801", + "lp": "2954678394" + }, + "bdvAtSnapshot": { + "bean": "6017537", + "lp": "1391012358", + "total": "1397029895" + }, + "bdvAtRecapitalization": { + "bean": "20949801", + "lp": "5833315266", + "total": "5854265067" + } + }, + "0x3C43674dfa916d791614827a50353fe65227B7f3": { + "tokens": { + "bean": "520866637888", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "149611649600", + "lp": "0", + "total": "149611649600" + }, + "bdvAtRecapitalization": { + "bean": "520866637888", + "lp": "2", + "total": "520866637890" + } + }, + "0x3C4d21243F55f0Ee12F9ddDe1296d08529503311": { + "tokens": { + "bean": "4279360980", + "lp": "29404717062" + }, + "bdvAtSnapshot": { + "bean": "1229186530", + "lp": "13843240913", + "total": "15072427443" + }, + "bdvAtRecapitalization": { + "bean": "4279360980", + "lp": "58052675135", + "total": "62332036115" + } + }, + "0x3C7560edEeE5B60e4a6c7abEbaa971065B2242b4": { + "tokens": { + "bean": "2598521533", + "lp": "29732798615" + }, + "bdvAtSnapshot": { + "bean": "746388931", + "lp": "13997696130", + "total": "14744085061" + }, + "bdvAtRecapitalization": { + "bean": "2598521533", + "lp": "58700394743", + "total": "61298916276" + } + }, + "0x3cC431852CA2d16f6D8Cc333Ab323b748eb798eb": { + "tokens": { + "bean": "179089768", + "lp": "588278946" + }, + "bdvAtSnapshot": { + "bean": "51441029", + "lp": "276951727", + "total": "328392756" + }, + "bdvAtRecapitalization": { + "bean": "179089768", + "lp": "1161417961", + "total": "1340507729" + } + }, + "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2": { + "tokens": { + "bean": "538492014", + "lp": "48565558988" + }, + "bdvAtSnapshot": { + "bean": "154674292", + "lp": "22863839557", + "total": "23018513849" + }, + "bdvAtRecapitalization": { + "bean": "538492014", + "lp": "95881236086", + "total": "96419728100" + } + }, + "0x3C58492Ad9cAd0D9f8570a80b6A1f02C0C1dA2c5": { + "tokens": { + "bean": "860189624", + "lp": "19314742080" + }, + "bdvAtSnapshot": { + "bean": "247077427", + "lp": "9093052221", + "total": "9340129648" + }, + "bdvAtRecapitalization": { + "bean": "860189624", + "lp": "38132400489", + "total": "38992590113" + } + }, + "0x3CBC3bEd185B837D79Ba18d36A3859EcbcFC3Dc8": { + "tokens": { + "bean": "642834", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "184645", + "lp": "0", + "total": "184645" + }, + "bdvAtRecapitalization": { + "bean": "642834", + "lp": "0", + "total": "642834" + } + }, + "0x3CC6Cc687870C972127E073E05b956A1eE270164": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B": { + "tokens": { + "bean": "8568689560", + "lp": "15436315651" + }, + "bdvAtSnapshot": { + "bean": "2461236114", + "lp": "7267154991", + "total": "9728391105" + }, + "bdvAtRecapitalization": { + "bean": "8568689560", + "lp": "30475362707", + "total": "39044052267" + } + }, + "0x3d134073481122BCb063a55d90ba505E5A3f8F39": { + "tokens": { + "bean": "430038043", + "lp": "2208485349" + }, + "bdvAtSnapshot": { + "bean": "123522407", + "lp": "1039717358", + "total": "1163239765" + }, + "bdvAtRecapitalization": { + "bean": "430038043", + "lp": "4360133180", + "total": "4790171223" + } + }, + "0x3CdF26e741B7298d7edc17b919FEB55fA7bc0311": { + "tokens": { + "bean": "2339240255", + "lp": "196526793771" + }, + "bdvAtSnapshot": { + "bean": "671914014", + "lp": "92521473552", + "total": "93193387566" + }, + "bdvAtRecapitalization": { + "bean": "2339240255", + "lp": "387995779384", + "total": "390335019639" + } + }, + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x3Cdf2F8681b778E97D538DBa517bd614f2108647": { + "tokens": { + "bean": "61297265930", + "lp": "17788873740" + }, + "bdvAtSnapshot": { + "bean": "17606781477", + "lp": "8374699346", + "total": "25981480823" + }, + "bdvAtRecapitalization": { + "bean": "61297265930", + "lp": "35119933515", + "total": "96417199445" + } + }, + "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b": { + "tokens": { + "bean": "1876", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "539", + "lp": "0", + "total": "539" + }, + "bdvAtRecapitalization": { + "bean": "1876", + "lp": "2", + "total": "1878" + } + }, + "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542": { + "tokens": { + "bean": "4578298952", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1315052278", + "lp": "0", + "total": "1315052278" + }, + "bdvAtRecapitalization": { + "bean": "4578298952", + "lp": "0", + "total": "4578298952" + } + }, + "0x3dD413Fd4D03b1d8fD2C9Ed34553F7DeC3B26F5C": { + "tokens": { + "bean": "7258792003", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2084986380", + "lp": "0", + "total": "2084986380" + }, + "bdvAtRecapitalization": { + "bean": "7258792003", + "lp": "0", + "total": "7258792003" + } + }, + "0x3e39961724f59b561269D88B03019C58c135Db57": { + "tokens": { + "bean": "2490566223", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "715380280", + "lp": "0", + "total": "715380280" + }, + "bdvAtRecapitalization": { + "bean": "2490566223", + "lp": "0", + "total": "2490566223" + } + }, + "0x3E26a32a90386E997C6AaD241aD231e78EeC08a1": { + "tokens": { + "bean": "794044386252", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "228078133329", + "lp": "0", + "total": "228078133329" + }, + "bdvAtRecapitalization": { + "bean": "794044386252", + "lp": "0", + "total": "794044386252" + } + }, + "0x3dc9c874fa91AB41DfA7A6b80aa02676E931aa9F": { + "tokens": { + "bean": "71730886701", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20603692972", + "lp": "0", + "total": "20603692972" + }, + "bdvAtRecapitalization": { + "bean": "71730886701", + "lp": "0", + "total": "71730886701" + } + }, + "0x3Df83869B8367602E762FC42Baae3E81aA1f2a20": { + "tokens": { + "bean": "42859393", + "lp": "12995245585" + }, + "bdvAtSnapshot": { + "bean": "12310761", + "lp": "6117940702", + "total": "6130251463" + }, + "bdvAtRecapitalization": { + "bean": "42859393", + "lp": "25656045887", + "total": "25698905280" + } + }, + "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803": { + "tokens": { + "bean": "3050485271", + "lp": "4910150302" + }, + "bdvAtSnapshot": { + "bean": "876209187", + "lp": "2311615290", + "total": "3187824477" + }, + "bdvAtRecapitalization": { + "bean": "3050485271", + "lp": "9693933111", + "total": "12744418382" + } + }, + "0x3e2EfD7D46a1260b927f179bC9275f2377b00634": { + "tokens": { + "bean": "249453199", + "lp": "766450064" + }, + "bdvAtSnapshot": { + "bean": "71651939", + "lp": "360831660", + "total": "432483599" + }, + "bdvAtRecapitalization": { + "bean": "249453199", + "lp": "1513174790", + "total": "1762627989" + } + }, + "0x3E0fdEAB81bE617892472c457C3f69b846Fbf4C5": { + "tokens": { + "bean": "1", + "lp": "177827075685" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "83717964172", + "total": "83717964172" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "351077598642", + "total": "351077598643" + } + }, + "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB": { + "tokens": { + "bean": "69569437", + "lp": "7991736349" + }, + "bdvAtSnapshot": { + "bean": "19982847", + "lp": "3762373614", + "total": "3782356461" + }, + "bdvAtRecapitalization": { + "bean": "69569437", + "lp": "15777797591", + "total": "15847367028" + } + }, + "0x3e5Dc186E27C09f873aD4435903d92aD97e65B91": { + "tokens": { + "bean": "570945543", + "lp": "1834071942" + }, + "bdvAtSnapshot": { + "bean": "163996114", + "lp": "863449891", + "total": "1027446005" + }, + "bdvAtRecapitalization": { + "bean": "570945543", + "lp": "3620942259", + "total": "4191887802" + } + }, + "0x3efdF7eB16a08c1FeDe60311244D8d0d2D223DB6": { + "tokens": { + "bean": "52021000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14942303956", + "lp": "0", + "total": "14942303956" + }, + "bdvAtRecapitalization": { + "bean": "52021000000", + "lp": "0", + "total": "52021000000" + } + }, + "0x3eb58BD63cB7f0FC0442180B79D5B8E6d4FAd088": { + "tokens": { + "bean": "490630053", + "lp": "326291799" + }, + "bdvAtSnapshot": { + "bean": "140926614", + "lp": "153612632", + "total": "294539246" + }, + "bdvAtRecapitalization": { + "bean": "490630053", + "lp": "644186161", + "total": "1134816214" + } + }, + "0x3E93205c610B326A8698f42A5384c8766f3Aa968": { + "tokens": { + "bean": "303933084", + "lp": "530467498" + }, + "bdvAtSnapshot": { + "bean": "87300523", + "lp": "249735080", + "total": "337035603" + }, + "bdvAtRecapitalization": { + "bean": "303933084", + "lp": "1047282899", + "total": "1351215983" + } + }, + "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x3e763998E3c70B15347D68dC93a9CA021385675d": { + "tokens": { + "bean": "25521142", + "lp": "440328713" + }, + "bdvAtSnapshot": { + "bean": "7330591", + "lp": "207299272", + "total": "214629863" + }, + "bdvAtRecapitalization": { + "bean": "25521142", + "lp": "869325138", + "total": "894846280" + } + }, + "0x3F6BaBbF1a9DFB3039Dc932986D4A9658234fe21": { + "tokens": { + "bean": "2962", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "851", + "lp": "0", + "total": "851" + }, + "bdvAtRecapitalization": { + "bean": "2962", + "lp": "0", + "total": "2962" + } + }, + "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0": { + "tokens": { + "bean": "597444028", + "lp": "280306932" + }, + "bdvAtSnapshot": { + "bean": "171607433", + "lp": "131963738", + "total": "303571171" + }, + "bdvAtRecapitalization": { + "bean": "597444028", + "lp": "553399893", + "total": "1150843921" + } + }, + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2": { + "tokens": { + "bean": "293749592", + "lp": "3235714930" + }, + "bdvAtSnapshot": { + "bean": "84375458", + "lp": "1523319582", + "total": "1607695040" + }, + "bdvAtRecapitalization": { + "bean": "293749592", + "lp": "6388155590", + "total": "6681905182" + } + }, + "0x400cb5ce0A005273c8De074a92ec3e1155229E2F": { + "tokens": { + "bean": "1988669", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "571217", + "lp": "0", + "total": "571217" + }, + "bdvAtRecapitalization": { + "bean": "1988669", + "lp": "0", + "total": "1988669" + } + }, + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x3f9AE813aDD9A52268b2c7E3F72484FdA8735173": { + "tokens": { + "bean": "162278072", + "lp": "705700125" + }, + "bdvAtSnapshot": { + "bean": "46612104", + "lp": "332231622", + "total": "378843726" + }, + "bdvAtRecapitalization": { + "bean": "162278072", + "lp": "1393238371", + "total": "1555516443" + } + }, + "0x3f9d48594FB58700cd6bF82BD010e25f61C7d8C9": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x400609FDd8FD4882B503a55aeb59c24a39d66555": { + "tokens": { + "bean": "3141004724", + "lp": "13773932098" + }, + "bdvAtSnapshot": { + "bean": "902209633", + "lp": "6484533075", + "total": "7386742708" + }, + "bdvAtRecapitalization": { + "bean": "3141004724", + "lp": "27193378658", + "total": "30334383382" + } + }, + "0x404aEeEACEDCF91bEE26f40470623a473cCFA040": { + "tokens": { + "bean": "104937341", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "30141782", + "lp": "0", + "total": "30141782" + }, + "bdvAtRecapitalization": { + "bean": "104937341", + "lp": "0", + "total": "104937341" + } + }, + "0x4062Ec809b341660262CE22dAB11E4Bc5cECd622": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x40C5A7b9dAD9463CCf0cbaFEa05CEdA768962947": { + "tokens": { + "bean": "86", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "25", + "lp": "0", + "total": "25" + }, + "bdvAtRecapitalization": { + "bean": "86", + "lp": "2", + "total": "88" + } + }, + "0x4141f83314d623bADD56C062E8081ce0b3090e7a": { + "tokens": { + "bean": "92321542621", + "lp": "9932295681" + }, + "bdvAtSnapshot": { + "bean": "26518070616", + "lp": "4675955958", + "total": "31194026574" + }, + "bdvAtRecapitalization": { + "bean": "92321542621", + "lp": "19608974074", + "total": "111930516695" + } + }, + "0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb": { + "tokens": { + "bean": "794071", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "228086", + "lp": "0", + "total": "228086" + }, + "bdvAtRecapitalization": { + "bean": "794071", + "lp": "0", + "total": "794071" + } + }, + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde": { + "tokens": { + "bean": "51063548313", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "14667289363", + "lp": "0", + "total": "14667289363" + }, + "bdvAtRecapitalization": { + "bean": "51063548313", + "lp": "2", + "total": "51063548315" + } + }, + "0x414564fB3654FcAbCa2e4A86936F03ac9B80aB64": { + "tokens": { + "bean": "431869063", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "124048342", + "lp": "0", + "total": "124048342" + }, + "bdvAtRecapitalization": { + "bean": "431869063", + "lp": "0", + "total": "431869063" + } + }, + "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8": { + "tokens": { + "bean": "16370760589", + "lp": "3638288719" + }, + "bdvAtSnapshot": { + "bean": "4702271789", + "lp": "1712844478", + "total": "6415116267" + }, + "bdvAtRecapitalization": { + "bean": "16370760589", + "lp": "7182942540", + "total": "23553703129" + } + }, + "0x4180c6aFeEd0290E87cE848FC48451027798958C": { + "tokens": { + "bean": "4", + "lp": "49774244376" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "23432868090", + "total": "23432868091" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "98267500168", + "total": "98267500172" + } + }, + "0x41CC24B4E568715f33fE803a6C3419708205304d": { + "tokens": { + "bean": "1173233856", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "336995000", + "lp": "0", + "total": "336995000" + }, + "bdvAtRecapitalization": { + "bean": "1173233856", + "lp": "0", + "total": "1173233856" + } + }, + "0x41e2965406330A130e61B39d867c91fa86aA3bB8": { + "tokens": { + "bean": "1198526092", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "344259841", + "lp": "0", + "total": "344259841" + }, + "bdvAtRecapitalization": { + "bean": "1198526092", + "lp": "2", + "total": "1198526094" + } + }, + "0x41EfF4e547090fBD310099Fe13d18069C65dfe61": { + "tokens": { + "bean": "1273196147", + "lp": "58437982461" + }, + "bdvAtSnapshot": { + "bean": "365707768", + "lp": "27511608697", + "total": "27877316465" + }, + "bdvAtRecapitalization": { + "bean": "1273196147", + "lp": "115372006613", + "total": "116645202760" + } + }, + "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B": { + "tokens": { + "bean": "671413640601", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "192854168472", + "lp": "0", + "total": "192854168472" + }, + "bdvAtRecapitalization": { + "bean": "671413640601", + "lp": "2", + "total": "671413640603" + } + }, + "0x42227B857Eca8114f724d870A8906b660ADED095": { + "tokens": { + "bean": "12628029321", + "lp": "7962305082" + }, + "bdvAtSnapshot": { + "bean": "3627224630", + "lp": "3748517873", + "total": "7375742503" + }, + "bdvAtRecapitalization": { + "bean": "12628029321", + "lp": "15719692499", + "total": "28347721820" + } + }, + "0x4219656f75b02188581fBf7d86dcAbB5EbB513A3": { + "tokens": { + "bean": "861", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "247", + "lp": "0", + "total": "247" + }, + "bdvAtRecapitalization": { + "bean": "861", + "lp": "0", + "total": "861" + } + }, + "0x42c28A2a06bcc8F647d49797d988732c2C613Ab1": { + "tokens": { + "bean": "93580235", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "26879612", + "lp": "0", + "total": "26879612" + }, + "bdvAtRecapitalization": { + "bean": "93580235", + "lp": "0", + "total": "93580235" + } + }, + "0x428a10825e3529D95dF8C5b841694318Ca95446f": { + "tokens": { + "bean": "3786372831", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1087582586", + "lp": "0", + "total": "1087582586" + }, + "bdvAtRecapitalization": { + "bean": "3786372831", + "lp": "2", + "total": "3786372833" + } + }, + "0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7": { + "tokens": { + "bean": "223255261", + "lp": "768008868" + }, + "bdvAtSnapshot": { + "bean": "64126948", + "lp": "361565519", + "total": "425692467" + }, + "bdvAtRecapitalization": { + "bean": "223255261", + "lp": "1516252281", + "total": "1739507542" + } + }, + "0x4179FB53E818c228803cF30d88Bc0597189F141C": { + "tokens": { + "bean": "1", + "lp": "127691896247" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "60115173991", + "total": "60115173991" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "252097517365", + "total": "252097517366" + } + }, + "0x42C298794F24211d52Fa1A1B43031911b0B072c1": { + "tokens": { + "bean": "491615822", + "lp": "324281765" + }, + "bdvAtSnapshot": { + "bean": "141209762", + "lp": "152666342", + "total": "293876104" + }, + "bdvAtRecapitalization": { + "bean": "491615822", + "lp": "640217823", + "total": "1131833645" + } + }, + "0x4254e393674B85688414a2baB8C064FF96a408F1": { + "tokens": { + "bean": "324674743", + "lp": "7238407775" + }, + "bdvAtSnapshot": { + "bean": "93258274", + "lp": "3407719328", + "total": "3500977602" + }, + "bdvAtRecapitalization": { + "bean": "324674743", + "lp": "14290528087", + "total": "14615202830" + } + }, + "0x431e52E4993C4b7B23f587Cf96bc2Fe510037bE4": { + "tokens": { + "bean": "37372", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10735", + "lp": "0", + "total": "10735" + }, + "bdvAtRecapitalization": { + "bean": "37372", + "lp": "0", + "total": "37372" + } + }, + "0x4324177c067e3a768c405f512473bcc137c2dCB8": { + "tokens": { + "bean": "1230451", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "353430", + "lp": "0", + "total": "353430" + }, + "bdvAtRecapitalization": { + "bean": "1230451", + "lp": "0", + "total": "1230451" + } + }, + "0x4307011e9Bad016F70aA90A23983F9428952f2A2": { + "tokens": { + "bean": "463022103", + "lp": "17618417774" + }, + "bdvAtSnapshot": { + "bean": "132996617", + "lp": "8294451575", + "total": "8427448192" + }, + "bdvAtRecapitalization": { + "bean": "463022103", + "lp": "34783408433", + "total": "35246430536" + } + }, + "0x43484020eE4b06022aD57CbF8932f5C8aafc9D59": { + "tokens": { + "bean": "427695904", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "122849661", + "lp": "0", + "total": "122849661" + }, + "bdvAtRecapitalization": { + "bean": "427695904", + "lp": "0", + "total": "427695904" + } + }, + "0x4330C25C858040aDbda9e05744Fa3ADF9A35664F": { + "tokens": { + "bean": "591078", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "169779", + "lp": "0", + "total": "169779" + }, + "bdvAtRecapitalization": { + "bean": "591078", + "lp": "0", + "total": "591078" + } + }, + "0x43599673CBC37E6f0813Df8480Fe7BB34c50f662": { + "tokens": { + "bean": "34977", + "lp": "158641012" + }, + "bdvAtSnapshot": { + "bean": "10047", + "lp": "74685492", + "total": "74695539" + }, + "bdvAtRecapitalization": { + "bean": "34977", + "lp": "313199243", + "total": "313234220" + } + }, + "0x434252f52cE25DA0e64f0C38EBC65258AABB2844": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x433b1b3bc573FcD6fDDDCf9A72CE377dB7A38bb5": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0x433f0763D76FE032874d670f29F6948db3A64AE3": { + "tokens": { + "bean": "205610720", + "lp": "637482212" + }, + "bdvAtSnapshot": { + "bean": "59058801", + "lp": "300115788", + "total": "359174589" + }, + "bdvAtRecapitalization": { + "bean": "205610720", + "lp": "1258558199", + "total": "1464168919" + } + }, + "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7": { + "tokens": { + "bean": "2627229107", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "754634780", + "lp": "0", + "total": "754634780" + }, + "bdvAtRecapitalization": { + "bean": "2627229107", + "lp": "2", + "total": "2627229109" + } + }, + "0x43D5472835f5F24dF67eC0f94f1369527e5c8B79": { + "tokens": { + "bean": "149716990", + "lp": "1072936960" + }, + "bdvAtSnapshot": { + "bean": "43004109", + "lp": "505120481", + "total": "548124590" + }, + "bdvAtRecapitalization": { + "bean": "149716990", + "lp": "2118260844", + "total": "2267977834" + } + }, + "0x433453d337Db0a3E9D8c2DF88e4a90d75328B0a4": { + "tokens": { + "bean": "596003183", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "171193570", + "lp": "0", + "total": "171193570" + }, + "bdvAtRecapitalization": { + "bean": "596003183", + "lp": "0", + "total": "596003183" + } + }, + "0x4384f7916e165F0d24Ab3935965492229dfd50ea": { + "tokens": { + "bean": "346755847", + "lp": "1890723034" + }, + "bdvAtSnapshot": { + "bean": "99600762", + "lp": "890120262", + "total": "989721024" + }, + "bdvAtRecapitalization": { + "bean": "346755847", + "lp": "3732786472", + "total": "4079542319" + } + }, + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e": { + "tokens": { + "bean": "381822772372", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "109673245845", + "lp": "0", + "total": "109673245845" + }, + "bdvAtRecapitalization": { + "bean": "381822772372", + "lp": "2", + "total": "381822772374" + } + }, + "0x43b79f1E529330F1568e8741F1C04107db25EB28": { + "tokens": { + "bean": "2941911569", + "lp": "15771890099" + }, + "bdvAtSnapshot": { + "bean": "845022911", + "lp": "7425137736", + "total": "8270160647" + }, + "bdvAtRecapitalization": { + "bean": "2941911569", + "lp": "31137875268", + "total": "34079786837" + } + }, + "0x44043c1E33C76B34C67d09a2fb964C0EEfBaE6B7": { + "tokens": { + "bean": "128010144", + "lp": "167318509" + }, + "bdvAtSnapshot": { + "bean": "36769122", + "lp": "78770710", + "total": "115539832" + }, + "bdvAtRecapitalization": { + "bean": "128010144", + "lp": "330330913", + "total": "458341057" + } + }, + "0x442540b161C02edecdCe6F871D94155e61f5dA80": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0x4432e64624F4c64633466655de3D5132ad407343": { + "tokens": { + "bean": "51720481077", + "lp": "3426" + }, + "bdvAtSnapshot": { + "bean": "14855984103", + "lp": "1613", + "total": "14855985716" + }, + "bdvAtRecapitalization": { + "bean": "51720481077", + "lp": "6764", + "total": "51720487841" + } + }, + "0x443eb1f18CF8fD345DF376078C72e00B27e3F6a3": { + "tokens": { + "bean": "18673306", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5363646", + "lp": "0", + "total": "5363646" + }, + "bdvAtRecapitalization": { + "bean": "18673306", + "lp": "0", + "total": "18673306" + } + }, + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x44D812A7751AAeE2D517255794DAA3e3fc8117C2": { + "tokens": { + "bean": "2896855520", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "832081192", + "lp": "0", + "total": "832081192" + }, + "bdvAtRecapitalization": { + "bean": "2896855520", + "lp": "0", + "total": "2896855520" + } + }, + "0x4462c633676323D07a54b6f87CDD7d65f703Bc76": { + "tokens": { + "bean": "0", + "lp": "525067233550" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "247192727412", + "total": "247192727412" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "1036621351222", + "total": "1036621351222" + } + }, + "0x4626751B194018B6848797EA3eA40a9252eE86EE": { + "tokens": { + "bean": "1085053", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "311666", + "lp": "0", + "total": "311666" + }, + "bdvAtRecapitalization": { + "bean": "1085053", + "lp": "0", + "total": "1085053" + } + }, + "0x4465c4474703BB199c6ed15C97b6E32BD211Cf9d": { + "tokens": { + "bean": "36519947", + "lp": "1182360109" + }, + "bdvAtSnapshot": { + "bean": "10489843", + "lp": "556635039", + "total": "567124882" + }, + "bdvAtRecapitalization": { + "bean": "36519947", + "lp": "2334291031", + "total": "2370810978" + } + }, + "0x45577FfEc3C72075AF3E655Ea474E5c1585d9d14": { + "tokens": { + "bean": "7859105940", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2257418154", + "lp": "0", + "total": "2257418154" + }, + "bdvAtRecapitalization": { + "bean": "7859105940", + "lp": "0", + "total": "7859105940" + } + }, + "0x44EE78D43529823D96Bf1435Fb00b9064522bD36": { + "tokens": { + "bean": "4449545", + "lp": "204512758" + }, + "bdvAtSnapshot": { + "bean": "1278070", + "lp": "96281130", + "total": "97559200" + }, + "bdvAtRecapitalization": { + "bean": "4449545", + "lp": "403762181", + "total": "408211726" + } + }, + "0x44E836EbFEF431e57442037b819B23fd29bc3B69": { + "tokens": { + "bean": "258618354", + "lp": "2487347444" + }, + "bdvAtSnapshot": { + "bean": "74284502", + "lp": "1171000892", + "total": "1245285394" + }, + "bdvAtRecapitalization": { + "bean": "258618354", + "lp": "4910680583", + "total": "5169298937" + } + }, + "0x44db0002349036164dD46A04327201Eb7698A53e": { + "tokens": { + "bean": "2073035191", + "lp": "772339921" + }, + "bdvAtSnapshot": { + "bean": "595450336", + "lp": "363604505", + "total": "959054841" + }, + "bdvAtRecapitalization": { + "bean": "2073035191", + "lp": "1524802923", + "total": "3597838114" + } + }, + "0x448a549593020696455D9b5e25e0b0fB7a71201E": { + "tokens": { + "bean": "790723571", + "lp": "6195172862" + }, + "bdvAtSnapshot": { + "bean": "227124276", + "lp": "2916582065", + "total": "3143706341" + }, + "bdvAtRecapitalization": { + "bean": "790723571", + "lp": "12230906926", + "total": "13021630497" + } + }, + "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975": { + "tokens": { + "bean": "1687055225", + "lp": "99552577441" + }, + "bdvAtSnapshot": { + "bean": "484582995", + "lp": "46867661065", + "total": "47352244060" + }, + "bdvAtRecapitalization": { + "bean": "1687055225", + "lp": "196543072488", + "total": "198230127713" + } + }, + "0x44871f074E0bd158BbA0c0f5aE701C497edDBdDE": { + "tokens": { + "bean": "22454882504", + "lp": "31000438498" + }, + "bdvAtSnapshot": { + "bean": "6449850631", + "lp": "14594479437", + "total": "21044330068" + }, + "bdvAtRecapitalization": { + "bean": "22454882504", + "lp": "61203050564", + "total": "83657933068" + } + }, + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719": { + "tokens": { + "bean": "6575", + "lp": "3" + }, + "bdvAtSnapshot": { + "bean": "1889", + "lp": "1", + "total": "1890" + }, + "bdvAtRecapitalization": { + "bean": "6575", + "lp": "6", + "total": "6581" + } + }, + "0x4694d4A6f9bf20A491b7A93F77f34Aec2Be86546": { + "tokens": { + "bean": "2160993529", + "lp": "9331892765" + }, + "bdvAtSnapshot": { + "bean": "620715137", + "lp": "4393296472", + "total": "5014011609" + }, + "bdvAtRecapitalization": { + "bean": "2160993529", + "lp": "18423620195", + "total": "20584613724" + } + }, + "0x46Fb59229922d98DCc95bB501EFC3b10FA83D938": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x473B4a343C0580d5B963198C91f78BeEaCf4135a": { + "tokens": { + "bean": "18742480755", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5383515202", + "lp": "0", + "total": "5383515202" + }, + "bdvAtRecapitalization": { + "bean": "18742480755", + "lp": "0", + "total": "18742480755" + } + }, + "0x4733A76e10819FF1Fa603E52621E73Df2CE5C30A": { + "tokens": { + "bean": "17", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5", + "lp": "0", + "total": "5" + }, + "bdvAtRecapitalization": { + "bean": "17", + "lp": "0", + "total": "17" + } + }, + "0x46ED8A6431d461C96f498398aa1ff61FC3D5dB7c": { + "tokens": { + "bean": "353223627625", + "lp": "211581796992" + }, + "bdvAtSnapshot": { + "bean": "101458541904", + "lp": "99609113133", + "total": "201067655037" + }, + "bdvAtRecapitalization": { + "bean": "353223627625", + "lp": "417718330677", + "total": "770941958302" + } + }, + "0x47217E48daAf7fe61486b265f701D449a8660A94": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x47534888bF089f0359DF380a1782214344095A5f": { + "tokens": { + "bean": "16178306", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4646992", + "lp": "0", + "total": "4646992" + }, + "bdvAtRecapitalization": { + "bean": "16178306", + "lp": "0", + "total": "16178306" + } + }, + "0x47765838fACDeA8fda7D008f7c7cC8466CB1bDB8": { + "tokens": { + "bean": "770723216", + "lp": "5280916474" + }, + "bdvAtSnapshot": { + "bean": "221379454", + "lp": "2486165700", + "total": "2707545154" + }, + "bdvAtRecapitalization": { + "bean": "770723216", + "lp": "10425923427", + "total": "11196646643" + } + }, + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39": { + "tokens": { + "bean": "1880721", + "lp": "4359450811" + }, + "bdvAtSnapshot": { + "bean": "540211", + "lp": "2052355331", + "total": "2052895542" + }, + "bdvAtRecapitalization": { + "bean": "1880721", + "lp": "8606706916", + "total": "8608587637" + } + }, + "0x4765fcd87025490bc8f650565474a7bD6A2179A3": { + "tokens": { + "bean": "568134878", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "163188790", + "lp": "0", + "total": "163188790" + }, + "bdvAtRecapitalization": { + "bean": "568134878", + "lp": "0", + "total": "568134878" + } + }, + "0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88": { + "tokens": { + "bean": "2", + "lp": "12390833880" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "5833393947", + "total": "5833393948" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "24462777600", + "total": "24462777602" + } + }, + "0x484aaf6cf481DC921117Cb4B396a10db4934A063": { + "tokens": { + "bean": "3190402575", + "lp": "194880268012" + }, + "bdvAtSnapshot": { + "bean": "916398474", + "lp": "91746317215", + "total": "92662715689" + }, + "bdvAtRecapitalization": { + "bean": "3190402575", + "lp": "384745102808", + "total": "387935505383" + } + }, + "0x486d28706bcef411CBFe8fE357c287496A518DEA": { + "tokens": { + "bean": "22892689980", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "6575604699", + "lp": "0", + "total": "6575604699" + }, + "bdvAtRecapitalization": { + "bean": "22892689980", + "lp": "2", + "total": "22892689982" + } + }, + "0x48A2bC5DC9e3c5c0421E0483bF0648AaEE87daca": { + "tokens": { + "bean": "805", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "231", + "lp": "0", + "total": "231" + }, + "bdvAtRecapitalization": { + "bean": "805", + "lp": "0", + "total": "805" + } + }, + "0x48A5A6a01bA89cDdF97D2D552923d5a11401Ed19": { + "tokens": { + "bean": "2141379", + "lp": "119853004587" + }, + "bdvAtSnapshot": { + "bean": "615081", + "lp": "56424757058", + "total": "56425372139" + }, + "bdvAtRecapitalization": { + "bean": "2141379", + "lp": "236621475545", + "total": "236623616924" + } + }, + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360": { + "tokens": { + "bean": "8855", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2543", + "lp": "0", + "total": "2543" + }, + "bdvAtRecapitalization": { + "bean": "8855", + "lp": "2", + "total": "8857" + } + }, + "0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0": { + "tokens": { + "bean": "609250370", + "lp": "957765156" + }, + "bdvAtSnapshot": { + "bean": "174998639", + "lp": "450899553", + "total": "625898192" + }, + "bdvAtRecapitalization": { + "bean": "609250370", + "lp": "1890881294", + "total": "2500131664" + } + }, + "0x4936c26B396858597094719A44De2deaE3b8a3c9": { + "tokens": { + "bean": "17153211327", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4927019809", + "lp": "0", + "total": "4927019809" + }, + "bdvAtRecapitalization": { + "bean": "17153211327", + "lp": "0", + "total": "17153211327" + } + }, + "0x48Dd5a438AaE27B27eCe5B8A3f23ba3E1Fb052F2": { + "tokens": { + "bean": "664374053", + "lp": "6825517507" + }, + "bdvAtSnapshot": { + "bean": "190832145", + "lp": "3213337608", + "total": "3404169753" + }, + "bdvAtRecapitalization": { + "bean": "664374053", + "lp": "13475373683", + "total": "14139747736" + } + }, + "0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B": { + "tokens": { + "bean": "5", + "lp": "5392407881" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "2538653959", + "total": "2538653960" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "10646036901", + "total": "10646036906" + } + }, + "0x4A24E54A090b0Fa060f7faAF561510775d314e84": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351": { + "tokens": { + "bean": "5", + "lp": "911955576273" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "429333182065", + "total": "429333182066" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "1800441088923", + "total": "1800441088928" + } + }, + "0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9": { + "tokens": { + "bean": "0", + "lp": "12659720000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "5959980961", + "total": "5959980961" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "24993629794", + "total": "24993629794" + } + }, + "0x4949D9db8Af71A063971a60F918e3C63C30663d7": { + "tokens": { + "bean": "7263769910", + "lp": "21005155432" + }, + "bdvAtSnapshot": { + "bean": "2086416214", + "lp": "9888870090", + "total": "11975286304" + }, + "bdvAtRecapitalization": { + "bean": "7263769910", + "lp": "41469722762", + "total": "48733492672" + } + }, + "0x473812413b6A8267C62aB76095463546C1F65Dc7": { + "tokens": { + "bean": "186085213", + "lp": "1836660181" + }, + "bdvAtSnapshot": { + "bean": "53450372", + "lp": "864668390", + "total": "918118762" + }, + "bdvAtRecapitalization": { + "bean": "186085213", + "lp": "3626052126", + "total": "3812137339" + } + }, + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2": { + "tokens": { + "bean": "104448052611", + "lp": "4383794136" + }, + "bdvAtSnapshot": { + "bean": "30001240840", + "lp": "2063815755", + "total": "32065056595" + }, + "bdvAtRecapitalization": { + "bean": "104448052611", + "lp": "8654767067", + "total": "113102819678" + } + }, + "0x4AAE8E210F814916778259840d635AA3e73A4783": { + "tokens": { + "bean": "870660629", + "lp": "1707896812" + }, + "bdvAtSnapshot": { + "bean": "250085076", + "lp": "804048785", + "total": "1054133861" + }, + "bdvAtRecapitalization": { + "bean": "870660629", + "lp": "3371839239", + "total": "4242499868" + } + }, + "0x4A6A6573393485cC410b20a021381Fb39362B9D1": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x4ab746092Fb040DBd02a41DEEb2D6933057eEF13": { + "tokens": { + "bean": "252758104", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "72601227", + "lp": "0", + "total": "72601227" + }, + "bdvAtRecapitalization": { + "bean": "252758104", + "lp": "0", + "total": "252758104" + } + }, + "0x4A5867445A1Fa5F394268A521720D1d4E5609413": { + "tokens": { + "bean": "947135953317", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "272051542687", + "lp": "0", + "total": "272051542687" + }, + "bdvAtRecapitalization": { + "bean": "947135953317", + "lp": "2", + "total": "947135953319" + } + }, + "0x4A337d1dF22d0D3077CaEFd083A1b70AA168d087": { + "tokens": { + "bean": "2325933560", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "668091852", + "lp": "0", + "total": "668091852" + }, + "bdvAtRecapitalization": { + "bean": "2325933560", + "lp": "0", + "total": "2325933560" + } + }, + "0x4ADa23a97451e0B43444aBE15A2ea50a3E6110F9": { + "tokens": { + "bean": "74991315", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "21540205", + "lp": "0", + "total": "21540205" + }, + "bdvAtRecapitalization": { + "bean": "74991315", + "lp": "0", + "total": "74991315" + } + }, + "0x4Af7c12c7e210f4Cb8f2D8e340AaAdaE05A9f655": { + "tokens": { + "bean": "0", + "lp": "11679757423" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "5498631239", + "total": "5498631239" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "23058924930", + "total": "23058924930" + } + }, + "0x4adE2ca80F8Ba92DAB1c0D003eb6e023B28E906B": { + "tokens": { + "bean": "1101357510", + "lp": "13530414132" + }, + "bdvAtSnapshot": { + "bean": "316349526", + "lp": "6369888956", + "total": "6686238482" + }, + "bdvAtRecapitalization": { + "bean": "1101357510", + "lp": "26712609898", + "total": "27813967408" + } + }, + "0x4b1b04693a00F74B028215503eE97cC606f4ED66": { + "tokens": { + "bean": "10139779522", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2912509711", + "lp": "0", + "total": "2912509711" + }, + "bdvAtRecapitalization": { + "bean": "10139779522", + "lp": "2", + "total": "10139779524" + } + }, + "0x4ac9a97b3edb3f11b5ca91d8dE9468CF4882A7af": { + "tokens": { + "bean": "9405249503", + "lp": "3181256870" + }, + "bdvAtSnapshot": { + "bean": "2701526246", + "lp": "1497681653", + "total": "4199207899" + }, + "bdvAtRecapitalization": { + "bean": "9405249503", + "lp": "6280641001", + "total": "15685890504" + } + }, + "0x4B202C0fDA7197af32949366909823B4468155f0": { + "tokens": { + "bean": "395083746", + "lp": "2116330326" + }, + "bdvAtSnapshot": { + "bean": "113482275", + "lp": "996332340", + "total": "1109814615" + }, + "bdvAtRecapitalization": { + "bean": "395083746", + "lp": "4178194833", + "total": "4573278579" + } + }, + "0x4b47DCaE50D5A3dDfd8610Fc8D435b0f5943E300": { + "tokens": { + "bean": "3480940893", + "lp": "1958879966" + }, + "bdvAtSnapshot": { + "bean": "999851538", + "lp": "922207387", + "total": "1922058925" + }, + "bdvAtRecapitalization": { + "bean": "3480940893", + "lp": "3867346251", + "total": "7348287144" + } + }, + "0x4b9d08ECD76CD74F2314aA5ef687E70be3Cf6605": { + "tokens": { + "bean": "531308878", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "152611037", + "lp": "0", + "total": "152611037" + }, + "bdvAtRecapitalization": { + "bean": "531308878", + "lp": "0", + "total": "531308878" + } + }, + "0x4c09E512B5B8d1EAdA8fc07Ef45406E4623D7FDd": { + "tokens": { + "bean": "367892427", + "lp": "18406138035" + }, + "bdvAtSnapshot": { + "bean": "105671949", + "lp": "8665296883", + "total": "8770968832" + }, + "bdvAtRecapitalization": { + "bean": "367892427", + "lp": "36338576208", + "total": "36706468635" + } + }, + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6": { + "tokens": { + "bean": "36489849523", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "10481198418", + "lp": "1", + "total": "10481198419" + }, + "bdvAtRecapitalization": { + "bean": "36489849523", + "lp": "4", + "total": "36489849527" + } + }, + "0x4ba91dD5D555EcED4589e70dd1B9962773709406": { + "tokens": { + "bean": "2903669273", + "lp": "118458285136" + }, + "bdvAtSnapshot": { + "bean": "834038347", + "lp": "55768146851", + "total": "56602185198" + }, + "bdvAtRecapitalization": { + "bean": "2903669273", + "lp": "233867931105", + "total": "236771600378" + } + }, + "0x4C066d71A23A6fa90f2448f6eB0ca899f13b869a": { + "tokens": { + "bean": "4954131", + "lp": "3696611" + }, + "bdvAtSnapshot": { + "bean": "1423005", + "lp": "1740302", + "total": "3163307" + }, + "bdvAtRecapitalization": { + "bean": "4954131", + "lp": "7298086", + "total": "12252217" + } + }, + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507": { + "tokens": { + "bean": "3", + "lp": "195836102835" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "92196308001", + "total": "92196308002" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "386632173115", + "total": "386632173118" + } + }, + "0x4c22f22547855855B837b84cF5a73B4C875320cb": { + "tokens": { + "bean": "314058460", + "lp": "1964568688" + }, + "bdvAtSnapshot": { + "bean": "90208896", + "lp": "924885541", + "total": "1015094437" + }, + "bdvAtRecapitalization": { + "bean": "314058460", + "lp": "3878577290", + "total": "4192635750" + } + }, + "0x4C3C27eB0C01088348132d6139F6d51FC592dDBD": { + "tokens": { + "bean": "188804922", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "54231571", + "lp": "0", + "total": "54231571" + }, + "bdvAtRecapitalization": { + "bean": "188804922", + "lp": "0", + "total": "188804922" + } + }, + "0x4C2b8dd251547C05188a40992843442D37eD28f2": { + "tokens": { + "bean": "326797", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "93868", + "lp": "0", + "total": "93868" + }, + "bdvAtRecapitalization": { + "bean": "326797", + "lp": "0", + "total": "326797" + } + }, + "0x4c366E92D46796D14d658E690De9b1f54Bfb632F": { + "tokens": { + "bean": "54278750", + "lp": "1951409415" + }, + "bdvAtSnapshot": { + "bean": "15590811", + "lp": "918690379", + "total": "934281190" + }, + "bdvAtRecapitalization": { + "bean": "54278750", + "lp": "3852597411", + "total": "3906876161" + } + }, + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315": { + "tokens": { + "bean": "4", + "lp": "3796508066" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1787331457", + "total": "1787331458" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "7495309305", + "total": "7495309309" + } + }, + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11": { + "tokens": { + "bean": "4", + "lp": "69945817162" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "32929301641", + "total": "32929301642" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "138091510698", + "total": "138091510702" + } + }, + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6": { + "tokens": { + "bean": "5", + "lp": "1245613243898" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "586413539802", + "total": "586413539803" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "2459169419618", + "total": "2459169419623" + } + }, + "0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6": { + "tokens": { + "bean": "149676283", + "lp": "18751924510" + }, + "bdvAtSnapshot": { + "bean": "42992417", + "lp": "8828087277", + "total": "8871079694" + }, + "bdvAtRecapitalization": { + "bean": "149676283", + "lp": "37021250007", + "total": "37170926290" + } + }, + "0x4d0bF3C6B181E719cdC50299303D65774dFB0aF7": { + "tokens": { + "bean": "51252549", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14721577", + "lp": "0", + "total": "14721577" + }, + "bdvAtRecapitalization": { + "bean": "51252549", + "lp": "0", + "total": "51252549" + } + }, + "0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1": { + "tokens": { + "bean": "19840298293", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5698847920", + "lp": "0", + "total": "5698847920" + }, + "bdvAtRecapitalization": { + "bean": "19840298293", + "lp": "0", + "total": "19840298293" + } + }, + "0x4d7D2D9aDd39776Bba47A8F6473A6257dd897702": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x4e2c7De1EF984bEeBB319057443D4AB87782eC42": { + "tokens": { + "bean": "70", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20", + "lp": "0", + "total": "20" + }, + "bdvAtRecapitalization": { + "bean": "70", + "lp": "0", + "total": "70" + } + }, + "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45": { + "tokens": { + "bean": "138682997984", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "39834749609", + "lp": "1", + "total": "39834749610" + }, + "bdvAtRecapitalization": { + "bean": "138682997984", + "lp": "4", + "total": "138682997988" + } + }, + "0x4dA56fED8e7Bc8D27eDfd3Db7cFCC9c8aa1955B8": { + "tokens": { + "bean": "47509101", + "lp": "15532768718" + }, + "bdvAtSnapshot": { + "bean": "13646324", + "lp": "7312563455", + "total": "7326209779" + }, + "bdvAtRecapitalization": { + "bean": "47509101", + "lp": "30665786528", + "total": "30713295629" + } + }, + "0x4DbA5CD287655CB9F3Abe810A59B3c7ac09b493e": { + "tokens": { + "bean": "2351866293", + "lp": "12701910234" + }, + "bdvAtSnapshot": { + "bean": "675540667", + "lp": "5979843406", + "total": "6655384073" + }, + "bdvAtRecapitalization": { + "bean": "2351866293", + "lp": "25076924456", + "total": "27428790749" + } + }, + "0x4E30D913301a99175633601159553FF9a9287344": { + "tokens": { + "bean": "1766102", + "lp": "148254368" + }, + "bdvAtSnapshot": { + "bean": "507288", + "lp": "69795636", + "total": "70302924" + }, + "bdvAtRecapitalization": { + "bean": "1766102", + "lp": "292693266", + "total": "294459368" + } + }, + "0x4d7fE683e9fd9891D856b7b528656DCb493f8242": { + "tokens": { + "bean": "2", + "lp": "18736405888" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "8820781373", + "total": "8820781374" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "36990612150", + "total": "36990612152" + } + }, + "0x4dD06d3f05d573DB027459E8DC942e37249D71A8": { + "tokens": { + "bean": "2157341355", + "lp": "1634812691" + }, + "bdvAtSnapshot": { + "bean": "619666101", + "lp": "769642023", + "total": "1389308124" + }, + "bdvAtRecapitalization": { + "bean": "2157341355", + "lp": "3227551888", + "total": "5384893243" + } + }, + "0x4E2572d9161Fc58743A4622046Ca30a1fB538670": { + "tokens": { + "bean": "802660297", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "230552933", + "lp": "0", + "total": "230552933" + }, + "bdvAtRecapitalization": { + "bean": "802660297", + "lp": "0", + "total": "802660297" + } + }, + "0x4E3E7d5183e42Fa4C5C4E223534A5307B5dAD6e9": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x4e2A5a06934c35c83F7066bCa8Bc30f5F1685466": { + "tokens": { + "bean": "932099529", + "lp": "10460992685" + }, + "bdvAtSnapshot": { + "bean": "267732540", + "lp": "4924857519", + "total": "5192590059" + }, + "bdvAtRecapitalization": { + "bean": "932099529", + "lp": "20652761550", + "total": "21584861079" + } + }, + "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0x4e7ceb231714E80f90E895D13723a2c322F78127": { + "tokens": { + "bean": "10153530", + "lp": "106416082" + }, + "bdvAtSnapshot": { + "bean": "2916459", + "lp": "50098882", + "total": "53015341" + }, + "bdvAtRecapitalization": { + "bean": "10153530", + "lp": "210093443", + "total": "220246973" + } + }, + "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79": { + "tokens": { + "bean": "1754258688", + "lp": "80261381866" + }, + "bdvAtSnapshot": { + "bean": "503886249", + "lp": "37785694139", + "total": "38289580388" + }, + "bdvAtRecapitalization": { + "bean": "1754258688", + "lp": "158457159016", + "total": "160211417704" + } + }, + "0x4ee5F1A0084762687CF511C9b2Bb117665aB9CC1": { + "tokens": { + "bean": "247914941", + "lp": "4847326009" + }, + "bdvAtSnapshot": { + "bean": "71210096", + "lp": "2282038680", + "total": "2353248776" + }, + "bdvAtRecapitalization": { + "bean": "247914941", + "lp": "9569901369", + "total": "9817816310" + } + }, + "0x4f69c39fe8E37b0b4d9B439A05f89C25F2c658d3": { + "tokens": { + "bean": "56969610", + "lp": "9748052876" + }, + "bdvAtSnapshot": { + "bean": "16363723", + "lp": "4589217577", + "total": "4605581300" + }, + "bdvAtRecapitalization": { + "bean": "56969610", + "lp": "19245230131", + "total": "19302199741" + } + }, + "0x4F70FFDdAb3c60Ad12487b2906E3E46d8bC72970": { + "tokens": { + "bean": "18845049718", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5412976701", + "lp": "0", + "total": "5412976701" + }, + "bdvAtRecapitalization": { + "bean": "18845049718", + "lp": "0", + "total": "18845049718" + } + }, + "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8": { + "tokens": { + "bean": "1631738825", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "468694133", + "lp": "0", + "total": "468694133" + }, + "bdvAtRecapitalization": { + "bean": "1631738825", + "lp": "0", + "total": "1631738825" + } + }, + "0x4Fc6d828B691e644c86d2D7cDc7E9a6ccE576E56": { + "tokens": { + "bean": "22250771", + "lp": "70773036" + }, + "bdvAtSnapshot": { + "bean": "6391222", + "lp": "33318742", + "total": "39709964" + }, + "bdvAtRecapitalization": { + "bean": "22250771", + "lp": "139724659", + "total": "161975430" + } + }, + "0x500da24eb4A9222854FCDe19E4bBc522e0644a2c": { + "tokens": { + "bean": "546154209", + "lp": "14697553278" + }, + "bdvAtSnapshot": { + "bean": "156875150", + "lp": "6919358225", + "total": "7076233375" + }, + "bdvAtRecapitalization": { + "bean": "546154209", + "lp": "29016850729", + "total": "29563004938" + } + }, + "0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b": { + "tokens": { + "bean": "2519265900", + "lp": "9543835639" + }, + "bdvAtSnapshot": { + "bean": "723623860", + "lp": "4493075574", + "total": "5216699434" + }, + "bdvAtRecapitalization": { + "bean": "2519265900", + "lp": "18842051387", + "total": "21361317287" + } + }, + "0x504C11bDBE6E29b46E23e9A15d9c8d2e2e795709": { + "tokens": { + "bean": "1325826360", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "380825060", + "lp": "0", + "total": "380825060" + }, + "bdvAtRecapitalization": { + "bean": "1325826360", + "lp": "0", + "total": "1325826360" + } + }, + "0x4fEe908721C4A0538005c50d3002C850DA811505": { + "tokens": { + "bean": "419332173", + "lp": "2505302180" + }, + "bdvAtSnapshot": { + "bean": "120447296", + "lp": "1179453676", + "total": "1299900972" + }, + "bdvAtRecapitalization": { + "bean": "419332173", + "lp": "4946127972", + "total": "5365460145" + } + }, + "0x4fCD42eb2557E49C0201Fb3283CfF62c1BaF0Fb4": { + "tokens": { + "bean": "2160248149", + "lp": "19311718395" + }, + "bdvAtSnapshot": { + "bean": "620501037", + "lp": "9091628721", + "total": "9712129758" + }, + "bdvAtRecapitalization": { + "bean": "2160248149", + "lp": "38126430937", + "total": "40286679086" + } + }, + "0x51001383C0283736664B0a81e383148aF7050890": { + "tokens": { + "bean": "7003", + "lp": "17899783730" + }, + "bdvAtSnapshot": { + "bean": "2012", + "lp": "8426913884", + "total": "8426915896" + }, + "bdvAtRecapitalization": { + "bean": "7003", + "lp": "35338899118", + "total": "35338906121" + } + }, + "0x512E3Eb472D53Df71Db0252cb8dccD25cd05E9e9": { + "tokens": { + "bean": "2174402166", + "lp": "8712698853" + }, + "bdvAtSnapshot": { + "bean": "624566581", + "lp": "4101790504", + "total": "4726357085" + }, + "bdvAtRecapitalization": { + "bean": "2174402166", + "lp": "17201167928", + "total": "19375570094" + } + }, + "0x51a418f72115B30d092F2A2FA271B74cF21c528B": { + "tokens": { + "bean": "574493856", + "lp": "59153999711" + }, + "bdvAtSnapshot": { + "bean": "165015317", + "lp": "27848697446", + "total": "28013712763" + }, + "bdvAtRecapitalization": { + "bean": "574493856", + "lp": "116785613713", + "total": "117360107569" + } + }, + "0x5068aed87a97c063729329c2ebE84cfEd3177F83": { + "tokens": { + "bean": "84993", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "24413", + "lp": "0", + "total": "24413" + }, + "bdvAtRecapitalization": { + "bean": "84993", + "lp": "0", + "total": "84993" + } + }, + "0x515755b2c5A209976CF0de869c30f45aC7495a60": { + "tokens": { + "bean": "37317185320", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10718839043", + "lp": "0", + "total": "10718839043" + }, + "bdvAtRecapitalization": { + "bean": "37317185320", + "lp": "0", + "total": "37317185320" + } + }, + "0x51cdDDC1Ec0eCb5686c6EA0bC75793A27573243d": { + "tokens": { + "bean": "321836257", + "lp": "2136547367" + }, + "bdvAtSnapshot": { + "bean": "92442959", + "lp": "1005850179", + "total": "1098293138" + }, + "bdvAtRecapitalization": { + "bean": "321836257", + "lp": "4218108610", + "total": "4539944867" + } + }, + "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB": { + "tokens": { + "bean": "11", + "lp": "11848442131" + }, + "bdvAtSnapshot": { + "bean": "3", + "lp": "5578045132", + "total": "5578045135" + }, + "bdvAtRecapitalization": { + "bean": "11", + "lp": "23391953081", + "total": "23391953092" + } + }, + "0x522E3b2b496a9e949C1B60a532c2500962C96Ef7": { + "tokens": { + "bean": "270043701", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "77566273", + "lp": "0", + "total": "77566273" + }, + "bdvAtRecapitalization": { + "bean": "270043701", + "lp": "0", + "total": "270043701" + } + }, + "0x51bd1AAcb21df2056A214b4251542F738a2a76cc": { + "tokens": { + "bean": "41333974", + "lp": "3900465542" + }, + "bdvAtSnapshot": { + "bean": "11872605", + "lp": "1836272869", + "total": "1848145474" + }, + "bdvAtRecapitalization": { + "bean": "41333974", + "lp": "7700548810", + "total": "7741882784" + } + }, + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56": { + "tokens": { + "bean": "647219928", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "185904863", + "lp": "0", + "total": "185904863" + }, + "bdvAtRecapitalization": { + "bean": "647219928", + "lp": "2", + "total": "647219930" + } + }, + "0x4F8D7711d18344F86A5F27863051964D333798E2": { + "tokens": { + "bean": "418023996835", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "120071540755", + "lp": "0", + "total": "120071540755" + }, + "bdvAtRecapitalization": { + "bean": "418023996835", + "lp": "2", + "total": "418023996837" + } + }, + "0x51E7b8564F50ec4ad91877e39274bdA7E6eb880A": { + "tokens": { + "bean": "466512280", + "lp": "1841211244" + }, + "bdvAtSnapshot": { + "bean": "133999121", + "lp": "866810953", + "total": "1000810074" + }, + "bdvAtRecapitalization": { + "bean": "466512280", + "lp": "3635037126", + "total": "4101549406" + } + }, + "0x52A42429BDAaD4396F128CB92167e64a96bE8A61": { + "tokens": { + "bean": "78031852", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "22413557", + "lp": "0", + "total": "22413557" + }, + "bdvAtRecapitalization": { + "bean": "78031852", + "lp": "0", + "total": "78031852" + } + }, + "0x525208Dd0B56c27BD10703bD675FcA0509A17154": { + "tokens": { + "bean": "66618368", + "lp": "285912942" + }, + "bdvAtSnapshot": { + "bean": "19135194", + "lp": "134602953", + "total": "153738147" + }, + "bdvAtRecapitalization": { + "bean": "66618368", + "lp": "564467636", + "total": "631086004" + } + }, + "0x52c9A7E7D265A09Db125b7369BC7487c589a7604": { + "tokens": { + "bean": "74632169", + "lp": "13915586466" + }, + "bdvAtSnapshot": { + "bean": "21437046", + "lp": "6551221543", + "total": "6572658589" + }, + "bdvAtRecapitalization": { + "bean": "74632169", + "lp": "27473041782", + "total": "27547673951" + } + }, + "0x5270B883D12e6402a20675467e84364A2Eb542bF": { + "tokens": { + "bean": "6657", + "lp": "50254204419" + }, + "bdvAtSnapshot": { + "bean": "1912", + "lp": "23658825119", + "total": "23658827031" + }, + "bdvAtRecapitalization": { + "bean": "6657", + "lp": "99215068016", + "total": "99215074673" + } + }, + "0x52ccFf5c85314bbe4D9C019EE57E5B45Ad08B0Db": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x52d3aBa582A24eeB9c1210D83EC312487815f405": { + "tokens": { + "bean": "715809953603", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "205606387833", + "lp": "0", + "total": "205606387833" + }, + "bdvAtRecapitalization": { + "bean": "715809953603", + "lp": "2", + "total": "715809953605" + } + }, + "0x52D4d46E28dc72b1CEf2Cb8eb5eC75Dd12BC4dF3": { + "tokens": { + "bean": "749302147", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "215226551", + "lp": "0", + "total": "215226551" + }, + "bdvAtRecapitalization": { + "bean": "749302147", + "lp": "0", + "total": "749302147" + } + }, + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910": { + "tokens": { + "bean": "273275341702", + "lp": "184234650159" + }, + "bdvAtSnapshot": { + "bean": "78494516049", + "lp": "86734541306", + "total": "165229057355" + }, + "bdvAtRecapitalization": { + "bean": "273275341702", + "lp": "363727842430", + "total": "637003184132" + } + }, + "0x52E03B19b1919867aC9fe7704E850287FC59d215": { + "tokens": { + "bean": "1955371249", + "lp": "3506514480" + }, + "bdvAtSnapshot": { + "bean": "561653016", + "lp": "1650807406", + "total": "2212460422" + }, + "bdvAtRecapitalization": { + "bean": "1955371249", + "lp": "6922785400", + "total": "8878156649" + } + }, + "0x538c3fe98a11FBA5d7c70FD934C7299BffCFe4De": { + "tokens": { + "bean": "13111", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3766", + "lp": "0", + "total": "3766" + }, + "bdvAtRecapitalization": { + "bean": "13111", + "lp": "0", + "total": "13111" + } + }, + "0x5338035c008EA8c4b850052bc8Dad6A33dc2206c": { + "tokens": { + "bean": "220339976349", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "63289573447", + "lp": "0", + "total": "63289573447" + }, + "bdvAtRecapitalization": { + "bean": "220339976349", + "lp": "2", + "total": "220339976351" + } + }, + "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e": { + "tokens": { + "bean": "500000001", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "143618000", + "lp": "0", + "total": "143618000" + }, + "bdvAtRecapitalization": { + "bean": "500000001", + "lp": "2", + "total": "500000003" + } + }, + "0x52F00b86cD0A23f03821aD2f9FA0C4741e692821": { + "tokens": { + "bean": "1016230194", + "lp": "3916198788" + }, + "bdvAtSnapshot": { + "bean": "291897896", + "lp": "1843679814", + "total": "2135577710" + }, + "bdvAtRecapitalization": { + "bean": "1016230194", + "lp": "7731610392", + "total": "8747840586" + } + }, + "0x540dC960E3e10304723bEC44D20F682258e705fC": { + "tokens": { + "bean": "3447381135", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "990211968", + "lp": "0", + "total": "990211968" + }, + "bdvAtRecapitalization": { + "bean": "3447381135", + "lp": "0", + "total": "3447381135" + } + }, + "0x533af56B4E0F3B278841748E48F61566E6C763D6": { + "tokens": { + "bean": "3", + "lp": "487639641912" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "229572453538", + "total": "229572453539" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "962729403415", + "total": "962729403418" + } + }, + "0x531516CA59544Bf8AB2451A072b6fA94AdF5a88c": { + "tokens": { + "bean": "12630710972", + "lp": "3327687996" + }, + "bdvAtSnapshot": { + "bean": "3627994897", + "lp": "1566618938", + "total": "5194613835" + }, + "bdvAtRecapitalization": { + "bean": "12630710972", + "lp": "6569734705", + "total": "19200445677" + } + }, + "0x54bec524eC3F945D8945BC344B6aEC72B532B8fb": { + "tokens": { + "bean": "324556450", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "93224296", + "lp": "0", + "total": "93224296" + }, + "bdvAtRecapitalization": { + "bean": "324556450", + "lp": "0", + "total": "324556450" + } + }, + "0x542A94e6f4D9D15AaE550F7097d089f273E38f85": { + "tokens": { + "bean": "138988", + "lp": "614013" + }, + "bdvAtSnapshot": { + "bean": "39922", + "lp": "289067", + "total": "328989" + }, + "bdvAtRecapitalization": { + "bean": "138988", + "lp": "1212224", + "total": "1351212" + } + }, + "0x53dC93b33d63094770A623406277f3B83a265588": { + "tokens": { + "bean": "35029067296", + "lp": "20216075295" + }, + "bdvAtSnapshot": { + "bean": "10061609174", + "lp": "9517384576", + "total": "19578993750" + }, + "bdvAtRecapitalization": { + "bean": "35029067296", + "lp": "39911870232", + "total": "74940937528" + } + }, + "0x55038f72943144983BAab03a0107C9a237bD0da9": { + "tokens": { + "bean": "13872315", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3984628", + "lp": "0", + "total": "3984628" + }, + "bdvAtRecapitalization": { + "bean": "13872315", + "lp": "0", + "total": "13872315" + } + }, + "0x550586FC064315b54af25024415786843131c8c1": { + "tokens": { + "bean": "6420687018", + "lp": "490128286" + }, + "bdvAtSnapshot": { + "bean": "1844252456", + "lp": "230744065", + "total": "2074996521" + }, + "bdvAtRecapitalization": { + "bean": "6420687018", + "lp": "967642644", + "total": "7388329662" + } + }, + "0x553114377d81bC47E316E238a5fE310D60a06418": { + "tokens": { + "bean": "1744498078", + "lp": "906835429" + }, + "bdvAtSnapshot": { + "bean": "501082650", + "lp": "426922704", + "total": "928005354" + }, + "bdvAtRecapitalization": { + "bean": "1744498078", + "lp": "1790332566", + "total": "3534830644" + } + }, + "0x55493d2bf0860B23a6789E9BEfF8D03CE03911cd": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x5533764Fd38812e5c14a858ce4f0fb810b6dc85a": { + "tokens": { + "bean": "236917382", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "68051201", + "lp": "0", + "total": "68051201" + }, + "bdvAtRecapitalization": { + "bean": "236917382", + "lp": "0", + "total": "236917382" + } + }, + "0x554B1Bd47B7d180844175cA4635880da8A3c70B9": { + "tokens": { + "bean": "1740590148", + "lp": "5649421174" + }, + "bdvAtSnapshot": { + "bean": "499960152", + "lp": "2659651449", + "total": "3159611601" + }, + "bdvAtRecapitalization": { + "bean": "1740590148", + "lp": "11153449000", + "total": "12894039148" + } + }, + "0x558C4aFf233f17Ac0d25335410fAEa0453328da8": { + "tokens": { + "bean": "795873721", + "lp": "4566371780" + }, + "bdvAtSnapshot": { + "bean": "228603584", + "lp": "2149770206", + "total": "2378373790" + }, + "bdvAtRecapitalization": { + "bean": "795873721", + "lp": "9015223541", + "total": "9811097262" + } + }, + "0x562f223a5847DaAe5Faa56a0883eD4d5e8EE0EE0": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5": { + "tokens": { + "bean": "2474667695", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "710813650", + "lp": "0", + "total": "710813650" + }, + "bdvAtRecapitalization": { + "bean": "2474667695", + "lp": "0", + "total": "2474667695" + } + }, + "0x55FD9Ab823d5c28128818Da3d2A2D144244406b2": { + "tokens": { + "bean": "64316528", + "lp": "213209634" + }, + "bdvAtSnapshot": { + "bean": "18474022", + "lp": "100375471", + "total": "118849493" + }, + "bdvAtRecapitalization": { + "bean": "64316528", + "lp": "420932111", + "total": "485248639" + } + }, + "0x558B202d7D87B290bDB7B82DFEd9dD82D4BB1ecF": { + "tokens": { + "bean": "138465407", + "lp": "1068329631" + }, + "bdvAtSnapshot": { + "bean": "39772250", + "lp": "502951429", + "total": "542723679" + }, + "bdvAtRecapitalization": { + "bean": "138465407", + "lp": "2109164760", + "total": "2247630167" + } + }, + "0x5540D536A128F584A652aA2F82FF837BeE6f5790": { + "tokens": { + "bean": "522687819", + "lp": "835014028" + }, + "bdvAtSnapshot": { + "bean": "150134758", + "lp": "393110409", + "total": "543245167" + }, + "bdvAtRecapitalization": { + "bean": "522687819", + "lp": "1648538158", + "total": "2171225977" + } + }, + "0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95": { + "tokens": { + "bean": "6954932065", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1997706867", + "lp": "0", + "total": "1997706867" + }, + "bdvAtRecapitalization": { + "bean": "6954932065", + "lp": "0", + "total": "6954932065" + } + }, + "0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED": { + "tokens": { + "bean": "1", + "lp": "1135599294420" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "534620842625", + "total": "534620842625" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2241972836639", + "total": "2241972836640" + } + }, + "0x563F036896c19C6f4287fbE69c10bb63FAC717D6": { + "tokens": { + "bean": "24118857232", + "lp": "3184943636" + }, + "bdvAtSnapshot": { + "bean": "6927804076", + "lp": "1499417320", + "total": "8427221396" + }, + "bdvAtRecapitalization": { + "bean": "24118857232", + "lp": "6287919650", + "total": "30406776882" + } + }, + "0x569fa8c1E62feaB5b93a6252DDb8c0fD29423C50": { + "tokens": { + "bean": "2930002737", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "841602266", + "lp": "0", + "total": "841602266" + }, + "bdvAtRecapitalization": { + "bean": "2930002737", + "lp": "0", + "total": "2930002737" + } + }, + "0x5706537A9257C0F959924bf17C597A6f1BB68bA6": { + "tokens": { + "bean": "3029214618", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "870099490", + "lp": "0", + "total": "870099490" + }, + "bdvAtRecapitalization": { + "bean": "3029214618", + "lp": "0", + "total": "3029214618" + } + }, + "0x56A76ED6582570254212d7653a1c833D4AeF883c": { + "tokens": { + "bean": "100557723", + "lp": "4616128460" + }, + "bdvAtSnapshot": { + "bean": "28883798", + "lp": "2173194805", + "total": "2202078603" + }, + "bdvAtRecapitalization": { + "bean": "100557723", + "lp": "9113456365", + "total": "9214014088" + } + }, + "0x5722dD3ea35E51A2c4EDAA2Ed10aBA128e12C520": { + "tokens": { + "bean": "7177436", + "lp": "237190746" + }, + "bdvAtSnapshot": { + "bean": "2061618", + "lp": "111665371", + "total": "113726989" + }, + "bdvAtRecapitalization": { + "bean": "7177436", + "lp": "468277157", + "total": "475454593" + } + }, + "0x575E1701fCa9D40c4534576fCec320CFe22Bc561": { + "tokens": { + "bean": "1035340099", + "lp": "22202770284" + }, + "bdvAtSnapshot": { + "bean": "297386949", + "lp": "10452686803", + "total": "10750073752" + }, + "bdvAtRecapitalization": { + "bean": "1035340099", + "lp": "43834130683", + "total": "44869470782" + } + }, + "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C": { + "tokens": { + "bean": "109466234157", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "31442643234", + "lp": "0", + "total": "31442643234" + }, + "bdvAtRecapitalization": { + "bean": "109466234157", + "lp": "0", + "total": "109466234157" + } + }, + "0x578BD31b74941eED1A0c924130FEf47181766a42": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x5767795b4eFbF06A40cb36181ac08f47CDB0fcEc": { + "tokens": { + "bean": "209703944665", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "60234522250", + "lp": "0", + "total": "60234522250" + }, + "bdvAtRecapitalization": { + "bean": "209703944665", + "lp": "2", + "total": "209703944667" + } + }, + "0x579CaC71BB7159e7657D68f1ae429b0Ab01A9261": { + "tokens": { + "bean": "13892868", + "lp": "1073094899" + }, + "bdvAtSnapshot": { + "bean": "3990532", + "lp": "505194836", + "total": "509185368" + }, + "bdvAtRecapitalization": { + "bean": "13892868", + "lp": "2118572657", + "total": "2132465525" + } + }, + "0x576A4d006543d7Ba103933d6DBd1e3Cdf86E22d3": { + "tokens": { + "bean": "86057458", + "lp": "492094691" + }, + "bdvAtSnapshot": { + "bean": "24718800", + "lp": "231669815", + "total": "256388615" + }, + "bdvAtRecapitalization": { + "bean": "86057458", + "lp": "971524847", + "total": "1057582305" + } + }, + "0x5775b780006cBaC39aA84432BC6157E11BC5f672": { + "tokens": { + "bean": "756072157", + "lp": "5195908389" + }, + "bdvAtSnapshot": { + "bean": "217171142", + "lp": "2446145339", + "total": "2663316481" + }, + "bdvAtRecapitalization": { + "bean": "756072157", + "lp": "10258095023", + "total": "11014167180" + } + }, + "0x57EE274CCEfF8be491B69A161E73E9269C6D8387": { + "tokens": { + "bean": "658037773", + "lp": "2701433189" + }, + "bdvAtSnapshot": { + "bean": "189012138", + "lp": "1271788821", + "total": "1460800959" + }, + "bdvAtRecapitalization": { + "bean": "658037773", + "lp": "5333342368", + "total": "5991380141" + } + }, + "0x57F77dcA6208F27240Ab4959000a30b1D6D7c647": { + "tokens": { + "bean": "33733843", + "lp": "144053373" + }, + "bdvAtSnapshot": { + "bean": "9689574", + "lp": "67817879", + "total": "77507453" + }, + "bdvAtRecapitalization": { + "bean": "33733843", + "lp": "284399392", + "total": "318133235" + } + }, + "0x584145Be171F646cd2a3979bA3edAE978b635465": { + "tokens": { + "bean": "168440356043", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "48382134108", + "lp": "0", + "total": "48382134108" + }, + "bdvAtRecapitalization": { + "bean": "168440356043", + "lp": "0", + "total": "168440356043" + } + }, + "0x57a4342ED31c8f53e164EF28B0182620d20290A5": { + "tokens": { + "bean": "23947318862", + "lp": "359363689081" + }, + "bdvAtSnapshot": { + "bean": "6878532081", + "lp": "169182315637", + "total": "176060847718" + }, + "bdvAtRecapitalization": { + "bean": "23947318862", + "lp": "709478804146", + "total": "733426123008" + } + }, + "0x58737A9B0A8A5c8a2559C457fCC9e923F9d99FB7": { + "tokens": { + "bean": "1300637534", + "lp": "20370703033" + }, + "bdvAtSnapshot": { + "bean": "373589923", + "lp": "9590180686", + "total": "9963770609" + }, + "bdvAtRecapitalization": { + "bean": "1300637534", + "lp": "40217146213", + "total": "41517783747" + } + }, + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85": { + "tokens": { + "bean": "1148060", + "lp": "3833411" + }, + "bdvAtSnapshot": { + "bean": "329764", + "lp": "1804705", + "total": "2134469" + }, + "bdvAtRecapitalization": { + "bean": "1148060", + "lp": "7568165", + "total": "8716225" + } + }, + "0x58024B6C1005dE40eAC2D4c06bC947ebf2a302Af": { + "tokens": { + "bean": "726956289", + "lp": "17271326198" + }, + "bdvAtSnapshot": { + "bean": "208808017", + "lp": "8131046761", + "total": "8339854778" + }, + "bdvAtRecapitalization": { + "bean": "726956289", + "lp": "34098158020", + "total": "34825114309" + } + }, + "0x585eb56057437344F2AF49d349c470B8b932a394": { + "tokens": { + "bean": "152157342", + "lp": "485370670" + }, + "bdvAtSnapshot": { + "bean": "43705066", + "lp": "228504260", + "total": "272209326" + }, + "bdvAtRecapitalization": { + "bean": "152157342", + "lp": "958249854", + "total": "1110407196" + } + }, + "0x582500328b34CdC66d6c07fA1cf4720e65524fEc": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x5812dF72f26aa7FF2Ad0065A48EC58f6A43252C4": { + "tokens": { + "bean": "562272290", + "lp": "2548132311" + }, + "bdvAtSnapshot": { + "bean": "161504843", + "lp": "1199617374", + "total": "1361122217" + }, + "bdvAtRecapitalization": { + "bean": "562272290", + "lp": "5030685959", + "total": "5592958249" + } + }, + "0x58509c1795770E1B4Cd6F9Fa25406ed92D013CEe": { + "tokens": { + "bean": "1420459630", + "lp": "2453942163" + }, + "bdvAtSnapshot": { + "bean": "408007142", + "lp": "1155274253", + "total": "1563281395" + }, + "bdvAtRecapitalization": { + "bean": "1420459630", + "lp": "4844729738", + "total": "6265189368" + } + }, + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e": { + "tokens": { + "bean": "31130096278", + "lp": "24761398758" + }, + "bdvAtSnapshot": { + "bean": "8941684335", + "lp": "11657245591", + "total": "20598929926" + }, + "bdvAtRecapitalization": { + "bean": "31130096278", + "lp": "48885538839", + "total": "80015635117" + } + }, + "0x58eF5B3A4c77a9b95e863F027a13C96F56e43051": { + "tokens": { + "bean": "1751064170", + "lp": "1092141510" + }, + "bdvAtSnapshot": { + "bean": "502968668", + "lp": "514161657", + "total": "1017130325" + }, + "bdvAtRecapitalization": { + "bean": "1751064170", + "lp": "2156175696", + "total": "3907239866" + } + }, + "0x59b6E0185a290aC466A6c4B60093e33afeC7169b": { + "tokens": { + "bean": "6159630", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1769267", + "lp": "0", + "total": "1769267" + }, + "bdvAtRecapitalization": { + "bean": "6159630", + "lp": "0", + "total": "6159630" + } + }, + "0x59bc48f91747E64E6285aAb036800EB221E76135": { + "tokens": { + "bean": "140921446", + "lp": "776328258" + }, + "bdvAtSnapshot": { + "bean": "40477712", + "lp": "365482146", + "total": "405959858" + }, + "bdvAtRecapitalization": { + "bean": "140921446", + "lp": "1532676953", + "total": "1673598399" + } + }, + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F": { + "tokens": { + "bean": "193500751166", + "lp": "140967190706" + }, + "bdvAtSnapshot": { + "bean": "55580381762", + "lp": "66364956942", + "total": "121945338704" + }, + "bdvAtRecapitalization": { + "bean": "193500751166", + "lp": "278306453670", + "total": "471807204836" + } + }, + "0x597D01CdfDC7ad72c19B562A18b2e31E41B67991": { + "tokens": { + "bean": "4", + "lp": "10732076891" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "5052479355", + "total": "5052479356" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "21187953346", + "total": "21187953350" + } + }, + "0x59305Dcf01419A23c94af97b8fe90441F58C78CD": { + "tokens": { + "bean": "132544723", + "lp": "1082469599" + }, + "bdvAtSnapshot": { + "bean": "38071616", + "lp": "509608285", + "total": "547679901" + }, + "bdvAtRecapitalization": { + "bean": "132544723", + "lp": "2137080790", + "total": "2269625513" + } + }, + "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c": { + "tokens": { + "bean": "1147580275", + "lp": "19427896058" + }, + "bdvAtSnapshot": { + "bean": "329626368", + "lp": "9146323190", + "total": "9475949558" + }, + "bdvAtRecapitalization": { + "bean": "1147580275", + "lp": "38355796318", + "total": "39503376593" + } + }, + "0x5a1675846387F82753d9f0E09acFCccd51270fb4": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x5A2B016c641742FB97a75C0d4c22B2A637Ddf4B6": { + "tokens": { + "bean": "1846414343", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "530356670", + "lp": "0", + "total": "530356670" + }, + "bdvAtRecapitalization": { + "bean": "1846414343", + "lp": "0", + "total": "1846414343" + } + }, + "0x5a2c17CEbE721e6Abd167FD0EDF9d3CE4b176A5D": { + "tokens": { + "bean": "9990", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2869", + "lp": "0", + "total": "2869" + }, + "bdvAtRecapitalization": { + "bean": "9990", + "lp": "2", + "total": "9992" + } + }, + "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00": { + "tokens": { + "bean": "722482860", + "lp": "3804958693" + }, + "bdvAtSnapshot": { + "bean": "207523087", + "lp": "1791309868", + "total": "1998832955" + }, + "bdvAtRecapitalization": { + "bean": "722482860", + "lp": "7511993074", + "total": "8234475934" + } + }, + "0x5A25455Cf1c5309FE746FD3904af00e766Eca65f": { + "tokens": { + "bean": "1137104871", + "lp": "30568327007" + }, + "bdvAtSnapshot": { + "bean": "326617455", + "lp": "14391048693", + "total": "14717666148" + }, + "bdvAtRecapitalization": { + "bean": "1137104871", + "lp": "60349948391", + "total": "61487053262" + } + }, + "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef": { + "tokens": { + "bean": "1031220568792", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "296203671298", + "lp": "0", + "total": "296203671298" + }, + "bdvAtRecapitalization": { + "bean": "1031220568792", + "lp": "2", + "total": "1031220568794" + } + }, + "0x5a393c476Ac8AeB417BF47b3C3C5a7c9532a230D": { + "tokens": { + "bean": "340534202", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "97813682", + "lp": "0", + "total": "97813682" + }, + "bdvAtRecapitalization": { + "bean": "340534202", + "lp": "0", + "total": "340534202" + } + }, + "0x5a57711B103c6039eaddC160B94c932d499c6736": { + "tokens": { + "bean": "114581844", + "lp": "6482770283" + }, + "bdvAtSnapshot": { + "bean": "32912031", + "lp": "3051978042", + "total": "3084890073" + }, + "bdvAtRecapitalization": { + "bean": "114581844", + "lp": "12798700168", + "total": "12913282012" + } + }, + "0x5A7F487D4A9894583DE2Dbf3114F46695DD0b7F1": { + "tokens": { + "bean": "83884", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "24095", + "lp": "0", + "total": "24095" + }, + "bdvAtRecapitalization": { + "bean": "83884", + "lp": "2", + "total": "83886" + } + }, + "0x5ab404ab63831bFcf824F53B4ac3737b9d155d90": { + "tokens": { + "bean": "4338", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1246", + "lp": "0", + "total": "1246" + }, + "bdvAtRecapitalization": { + "bean": "4338", + "lp": "2", + "total": "4340" + } + }, + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87": { + "tokens": { + "bean": "2", + "lp": "6384726155" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3005820533", + "total": "3005820534" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "12605135173", + "total": "12605135175" + } + }, + "0x5acfbbF0aA370F232E341BC0B1a40e996c960e07": { + "tokens": { + "bean": "44774853", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12860950", + "lp": "0", + "total": "12860950" + }, + "bdvAtRecapitalization": { + "bean": "44774853", + "lp": "0", + "total": "44774853" + } + }, + "0x5b5910186657F47BF46ee1776977D1Dc1c280C09": { + "tokens": { + "bean": "993515560", + "lp": "9769014589" + }, + "bdvAtSnapshot": { + "bean": "285373435", + "lp": "4599085995", + "total": "4884459430" + }, + "bdvAtRecapitalization": { + "bean": "993515560", + "lp": "19286614087", + "total": "20280129647" + } + }, + "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e": { + "tokens": { + "bean": "670280312", + "lp": "4234818563" + }, + "bdvAtSnapshot": { + "bean": "192528636", + "lp": "1993680588", + "total": "2186209224" + }, + "bdvAtRecapitalization": { + "bean": "670280312", + "lp": "8360649952", + "total": "9030930264" + } + }, + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430": { + "tokens": { + "bean": "162425254924", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "46654380523", + "lp": "0", + "total": "46654380523" + }, + "bdvAtRecapitalization": { + "bean": "162425254924", + "lp": "2", + "total": "162425254926" + } + }, + "0x5bc3E9826Edeb1722319792b0Ff56dFa41167648": { + "tokens": { + "bean": "57589047", + "lp": "952026999" + }, + "bdvAtSnapshot": { + "bean": "16541648", + "lp": "448198127", + "total": "464739775" + }, + "bdvAtRecapitalization": { + "bean": "57589047", + "lp": "1879552657", + "total": "1937141704" + } + }, + "0x5B435be574D63EBD1a502a23948c7a50832e0e24": { + "tokens": { + "bean": "57422462", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "16493798", + "lp": "0", + "total": "16493798" + }, + "bdvAtRecapitalization": { + "bean": "57422462", + "lp": "0", + "total": "57422462" + } + }, + "0x5c0D1c1FB6D4172A8EEf115DC31Fb2194d241E7c": { + "tokens": { + "bean": "8251843", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2370226", + "lp": "0", + "total": "2370226" + }, + "bdvAtRecapitalization": { + "bean": "8251843", + "lp": "0", + "total": "8251843" + } + }, + "0x5c5bDAFc0ACe887B422BD123C49aEA89E5d00671": { + "tokens": { + "bean": "189861673", + "lp": "1292640101" + }, + "bdvAtSnapshot": { + "bean": "54535108", + "lp": "608552985", + "total": "663088093" + }, + "bdvAtRecapitalization": { + "bean": "189861673", + "lp": "2552012852", + "total": "2741874525" + } + }, + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7": { + "tokens": { + "bean": "6099828444", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1752090323", + "lp": "0", + "total": "1752090323" + }, + "bdvAtRecapitalization": { + "bean": "6099828444", + "lp": "0", + "total": "6099828444" + } + }, + "0x5C6cE0d90b085f29c089D054Ba816610a5d42371": { + "tokens": { + "bean": "5230726239", + "lp": "16816672452" + }, + "bdvAtSnapshot": { + "bean": "1502452882", + "lp": "7917003507", + "total": "9419456389" + }, + "bdvAtRecapitalization": { + "bean": "5230726239", + "lp": "33200551484", + "total": "38431277723" + } + }, + "0x5C6D32CbcB99722e6295C3f1fb942F99e98394E8": { + "tokens": { + "bean": "56237813112", + "lp": "246936008046" + }, + "bdvAtSnapshot": { + "bean": "16153524487", + "lp": "116253274676", + "total": "132406799163" + }, + "bdvAtRecapitalization": { + "bean": "56237813112", + "lp": "487516877782", + "total": "543754690894" + } + }, + "0x5Cb12a681ca9573925A5969296Cf15e244b8bddB": { + "tokens": { + "bean": "1689253", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "485214", + "lp": "0", + "total": "485214" + }, + "bdvAtRecapitalization": { + "bean": "1689253", + "lp": "0", + "total": "1689253" + } + }, + "0x5dd28BD033C86e96365c2EC6d382d857751D8e00": { + "tokens": { + "bean": "8326540259", + "lp": "38760638010" + }, + "bdvAtSnapshot": { + "bean": "2391682118", + "lp": "18247849444", + "total": "20639531562" + }, + "bdvAtRecapitalization": { + "bean": "8326540259", + "lp": "76523733306", + "total": "84850273565" + } + }, + "0x5d12B49c48F756524162BB35FFA61ECEb714280D": { + "tokens": { + "bean": "99044", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28449", + "lp": "0", + "total": "28449" + }, + "bdvAtRecapitalization": { + "bean": "99044", + "lp": "0", + "total": "99044" + } + }, + "0x5c9d09716404556646B0B4567Cb4621C18581f94": { + "tokens": { + "bean": "10250332062", + "lp": "164130456212" + }, + "bdvAtSnapshot": { + "bean": "2944264380", + "lp": "77269828567", + "total": "80214092947" + }, + "bdvAtRecapitalization": { + "bean": "10250332062", + "lp": "324036855518", + "total": "334287187580" + } + }, + "0x5CE307dc1722Ac07d2F1D98D408c7cAf9ea76A16": { + "tokens": { + "bean": "1010", + "lp": "13677887854" + }, + "bdvAtSnapshot": { + "bean": "290", + "lp": "6439317078", + "total": "6439317368" + }, + "bdvAtRecapitalization": { + "bean": "1010", + "lp": "27003761962", + "total": "27003762972" + } + }, + "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be": { + "tokens": { + "bean": "3187363561", + "lp": "3530155031" + }, + "bdvAtSnapshot": { + "bean": "915525560", + "lp": "1661936976", + "total": "2577462536" + }, + "bdvAtRecapitalization": { + "bean": "3187363561", + "lp": "6969458089", + "total": "10156821650" + } + }, + "0x5e64c426D3521da970BDFdb4b51EAbEb79fF2D3b": { + "tokens": { + "bean": "0", + "lp": "35611000000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "16765053413", + "total": "16765053413" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "70305516284", + "total": "70305516284" + } + }, + "0x5dfbB2344727462039eb18845a911C3396d91cf2": { + "tokens": { + "bean": "2511", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "721", + "lp": "0", + "total": "721" + }, + "bdvAtRecapitalization": { + "bean": "2511", + "lp": "2", + "total": "2513" + } + }, + "0x5ea7ea516720a8F59C9d245E2E98bCA0B6DF7441": { + "tokens": { + "bean": "999753731", + "lp": "11051766917" + }, + "bdvAtSnapshot": { + "bean": "287165263", + "lp": "5202983984", + "total": "5490149247" + }, + "bdvAtRecapitalization": { + "bean": "999753731", + "lp": "21819105865", + "total": "22818859596" + } + }, + "0x5d48f06eDE8715E7bD69414B97F97fF0706D6c71": { + "tokens": { + "bean": "42778894070", + "lp": "718081244437" + }, + "bdvAtSnapshot": { + "bean": "12287638417", + "lp": "338060442500", + "total": "350348080917" + }, + "bdvAtRecapitalization": { + "bean": "42778894070", + "lp": "1417681969721", + "total": "1460460863791" + } + }, + "0x5e68BB3dE6133baeE55EEB6552704dF2EC09A824": { + "tokens": { + "bean": "102518997", + "lp": "7863782009" + }, + "bdvAtSnapshot": { + "bean": "29447147", + "lp": "3702134886", + "total": "3731582033" + }, + "bdvAtRecapitalization": { + "bean": "102518997", + "lp": "15525181941", + "total": "15627700938" + } + }, + "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B": { + "tokens": { + "bean": "5977737550", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1717021423", + "lp": "0", + "total": "1717021423" + }, + "bdvAtRecapitalization": { + "bean": "5977737550", + "lp": "0", + "total": "5977737550" + } + }, + "0x5D9183A638Eaa57a0f4034DdCaDC02DB4A305c2f": { + "tokens": { + "bean": "160279585", + "lp": "1344204695" + }, + "bdvAtSnapshot": { + "bean": "46038067", + "lp": "632828719", + "total": "678866786" + }, + "bdvAtRecapitalization": { + "bean": "160279585", + "lp": "2653814975", + "total": "2814094560" + } + }, + "0x5eC5e26D5304EF62310b5bC46A150d15E144e122": { + "tokens": { + "bean": "3", + "lp": "622802548107" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "293204852005", + "total": "293204852006" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "1229576666969", + "total": "1229576666972" + } + }, + "0x5ec6bC92395bFE4dFb8F45cb129AC0c2F290F23d": { + "tokens": { + "bean": "763456143", + "lp": "19059455308" + }, + "bdvAtSnapshot": { + "bean": "219292089", + "lp": "8972867548", + "total": "9192159637" + }, + "bdvAtRecapitalization": { + "bean": "763456143", + "lp": "37628396999", + "total": "38391853142" + } + }, + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2": { + "tokens": { + "bean": "637879502", + "lp": "28861289071" + }, + "bdvAtSnapshot": { + "bean": "183221957", + "lp": "13587404253", + "total": "13770626210" + }, + "bdvAtRecapitalization": { + "bean": "637879502", + "lp": "56979804800", + "total": "57617684302" + } + }, + "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2": { + "tokens": { + "bean": "13419826", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3854657", + "lp": "0", + "total": "3854657" + }, + "bdvAtRecapitalization": { + "bean": "13419826", + "lp": "0", + "total": "13419826" + } + }, + "0x5F045d4CC917072c6D97440b73a3d65Cb7E05e18": { + "tokens": { + "bean": "449176", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "129020", + "lp": "0", + "total": "129020" + }, + "bdvAtRecapitalization": { + "bean": "449176", + "lp": "0", + "total": "449176" + } + }, + "0x5Ed417274E1acd3A1Fd2c9d9B37eFD5c076954E4": { + "tokens": { + "bean": "153998596", + "lp": "25823811815" + }, + "bdvAtSnapshot": { + "bean": "44233941", + "lp": "12157411598", + "total": "12201645539" + }, + "bdvAtRecapitalization": { + "bean": "153998596", + "lp": "50983022720", + "total": "51137021316" + } + }, + "0x5eE72CD125e21b67ABFf81bBe2aCE39C831ce433": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391": { + "tokens": { + "bean": "2", + "lp": "9867728022" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "4645558601", + "total": "4645558602" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "19481500467", + "total": "19481500469" + } + }, + "0x5FA8F6284E7d85C7fB21418a47De42580924F24d": { + "tokens": { + "bean": "1122055231", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "322294656", + "lp": "0", + "total": "322294656" + }, + "bdvAtRecapitalization": { + "bean": "1122055231", + "lp": "0", + "total": "1122055231" + } + }, + "0x5f37479c76F16d94Afcc394b18Cf0727631d8F91": { + "tokens": { + "bean": "9804", + "lp": "107183445574" + }, + "bdvAtSnapshot": { + "bean": "2816", + "lp": "50460144058", + "total": "50460146874" + }, + "bdvAtRecapitalization": { + "bean": "9804", + "lp": "211608420941", + "total": "211608430745" + } + }, + "0x5f683bd8E397e11858dAB751eca248E5B2afc522": { + "tokens": { + "bean": "340286965", + "lp": "6104281597" + }, + "bdvAtSnapshot": { + "bean": "97742667", + "lp": "2873792003", + "total": "2971534670" + }, + "bdvAtRecapitalization": { + "bean": "340286965", + "lp": "12051463571", + "total": "12391750536" + } + }, + "0x5F86078B14a8Aa7C9890e55A7051a26Ffd210256": { + "tokens": { + "bean": "0", + "lp": "64671130000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "30446068595", + "total": "30446068595" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "127677885577", + "total": "127677885577" + } + }, + "0x5ff23E1940e22e6d1AaD8AF99984EC9821BAA423": { + "tokens": { + "bean": "15879815168", + "lp": "585298655801" + }, + "bdvAtSnapshot": { + "bean": "4561254590", + "lp": "275548657074", + "total": "280109911664" + }, + "bdvAtRecapitalization": { + "bean": "15879815168", + "lp": "1155534081498", + "total": "1171413896666" + } + }, + "0x5f3DF357144f748d7d53F30719A6e4040E2C7D04": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA": { + "tokens": { + "bean": "4135139", + "lp": "496757644" + }, + "bdvAtSnapshot": { + "bean": "1187761", + "lp": "233865054", + "total": "235052815" + }, + "bdvAtRecapitalization": { + "bean": "4135139", + "lp": "980730747", + "total": "984865886" + } + }, + "0x60D788A5267239951E9AFD1eB996B3d5EBff2948": { + "tokens": { + "bean": "382032712", + "lp": "5856105125" + }, + "bdvAtSnapshot": { + "bean": "109733548", + "lp": "2756954739", + "total": "2866688287" + }, + "bdvAtRecapitalization": { + "bean": "382032712", + "lp": "11561497690", + "total": "11943530402" + } + }, + "0x6040FDCa7f81540A89D39848dFC393DfE36efb92": { + "tokens": { + "bean": "944204921", + "lp": "1300530806" + }, + "bdvAtSnapshot": { + "bean": "271209645", + "lp": "612267794", + "total": "883477439" + }, + "bdvAtRecapitalization": { + "bean": "944204921", + "lp": "2567591187", + "total": "3511796108" + } + }, + "0x610656A1a666a3a630dA432Bc750BC0bE585AEB4": { + "tokens": { + "bean": "523715833", + "lp": "1118914188" + }, + "bdvAtSnapshot": { + "bean": "150430041", + "lp": "526765778", + "total": "677195819" + }, + "bdvAtRecapitalization": { + "bean": "523715833", + "lp": "2209032031", + "total": "2732747864" + } + }, + "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C": { + "tokens": { + "bean": "127791724", + "lp": "241326344" + }, + "bdvAtSnapshot": { + "bean": "36706384", + "lp": "113612340", + "total": "150318724" + }, + "bdvAtRecapitalization": { + "bean": "127791724", + "lp": "476441920", + "total": "604233644" + } + }, + "0x6106e7b682296E3E67DE45DF3294A706b36a51a6": { + "tokens": { + "bean": "1825863624", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "524453764", + "lp": "0", + "total": "524453764" + }, + "bdvAtRecapitalization": { + "bean": "1825863624", + "lp": "0", + "total": "1825863624" + } + }, + "0x6108565786d03CFC962086a66ee4E8C69560ebe2": { + "tokens": { + "bean": "325286410", + "lp": "1069392280" + }, + "bdvAtSnapshot": { + "bean": "93433967", + "lp": "503451706", + "total": "596885673" + }, + "bdvAtRecapitalization": { + "bean": "325286410", + "lp": "2111262710", + "total": "2436549120" + } + }, + "0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF": { + "tokens": { + "bean": "3", + "lp": "220444302239" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "103781429941", + "total": "103781429942" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "435215255980", + "total": "435215255983" + } + }, + "0x6112d6F5B955298eD8704Faf988B87A33428CCa6": { + "tokens": { + "bean": "256672227", + "lp": "729133062" + }, + "bdvAtSnapshot": { + "bean": "73725504", + "lp": "343263450", + "total": "416988954" + }, + "bdvAtRecapitalization": { + "bean": "256672227", + "lp": "1439501176", + "total": "1696173403" + } + }, + "0x627Fe83cf1485f906bd4dCfA4C24c363593162dC": { + "tokens": { + "bean": "4351422617", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1249885227", + "lp": "0", + "total": "1249885227" + }, + "bdvAtRecapitalization": { + "bean": "4351422617", + "lp": "0", + "total": "4351422617" + } + }, + "0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A": { + "tokens": { + "bean": "258182802", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "74159395", + "lp": "0", + "total": "74159395" + }, + "bdvAtRecapitalization": { + "bean": "258182802", + "lp": "0", + "total": "258182802" + } + }, + "0x61FEfD3706F7a6a62e72A3E2cF0d716e8dE9DF98": { + "tokens": { + "bean": "4414392", + "lp": "118420437" + }, + "bdvAtSnapshot": { + "bean": "1267972", + "lp": "55750329", + "total": "57018301" + }, + "bdvAtRecapitalization": { + "bean": "4414392", + "lp": "233793209", + "total": "238207601" + } + }, + "0x61e2ee7D23446b5263D735f2Ad58d97904676720": { + "tokens": { + "bean": "288707718", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "82927250", + "lp": "0", + "total": "82927250" + }, + "bdvAtRecapitalization": { + "bean": "288707718", + "lp": "0", + "total": "288707718" + } + }, + "0x60e8b62C7Da32ff62fcd4Ab934B75d2d28FE7501": { + "tokens": { + "bean": "727735680093", + "lp": "328973288276" + }, + "bdvAtSnapshot": { + "bean": "209031885807", + "lp": "154875031574", + "total": "363906917381" + }, + "bdvAtRecapitalization": { + "bean": "727735680093", + "lp": "649480129055", + "total": "1377215809148" + } + }, + "0x61572ca1C6d53011e9B5318aa26dd285C7df6997": { + "tokens": { + "bean": "278698834", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "80052338", + "lp": "0", + "total": "80052338" + }, + "bdvAtRecapitalization": { + "bean": "278698834", + "lp": "0", + "total": "278698834" + } + }, + "0x6266431213542Bb43beB87d59565d710bdf15c38": { + "tokens": { + "bean": "1959564873", + "lp": "24015091487" + }, + "bdvAtSnapshot": { + "bean": "562857576", + "lp": "11305896816", + "total": "11868754392" + }, + "bdvAtRecapitalization": { + "bean": "1959564873", + "lp": "47412131240", + "total": "49371696113" + } + }, + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345": { + "tokens": { + "bean": "2761359703497", + "lp": "3" + }, + "bdvAtSnapshot": { + "bean": "793161915794", + "lp": "1", + "total": "793161915795" + }, + "bdvAtRecapitalization": { + "bean": "2761359703497", + "lp": "6", + "total": "2761359703503" + } + }, + "0x62A32ea089109e7b8f0fE29d839736DDB0C753F6": { + "tokens": { + "bean": "3840024417", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1102993253", + "lp": "0", + "total": "1102993253" + }, + "bdvAtRecapitalization": { + "bean": "3840024417", + "lp": "0", + "total": "3840024417" + } + }, + "0x614D1D40e3b2b1601625E739bfe8Bdf85133B459": { + "tokens": { + "bean": "1351372148", + "lp": "6969501687" + }, + "bdvAtSnapshot": { + "bean": "388162730", + "lp": "3281122913", + "total": "3669285643" + }, + "bdvAtRecapitalization": { + "bean": "1351372148", + "lp": "13759636470", + "total": "15111008618" + } + }, + "0x62F96Bcc36Dccf97e1E6c4D2654d864c95d76335": { + "tokens": { + "bean": "114272348", + "lp": "4727321376" + }, + "bdvAtSnapshot": { + "bean": "32823132", + "lp": "2225542539", + "total": "2258365671" + }, + "bdvAtRecapitalization": { + "bean": "114272348", + "lp": "9332980539", + "total": "9447252887" + } + }, + "0x6301Add4fb128de9778B8651a2a9278B86761423": { + "tokens": { + "bean": "26963291792", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "7744828081", + "lp": "0", + "total": "7744828081" + }, + "bdvAtRecapitalization": { + "bean": "26963291792", + "lp": "0", + "total": "26963291792" + } + }, + "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d": { + "tokens": { + "bean": "420694200000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "120838519231", + "lp": "0", + "total": "120838519231" + }, + "bdvAtRecapitalization": { + "bean": "420694200000", + "lp": "0", + "total": "420694200000" + } + }, + "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8": { + "tokens": { + "bean": "2963074786", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "851101749", + "lp": "0", + "total": "851101749" + }, + "bdvAtRecapitalization": { + "bean": "2963074786", + "lp": "2", + "total": "2963074788" + } + }, + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc": { + "tokens": { + "bean": "2148610332", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "617158237", + "lp": "0", + "total": "617158237" + }, + "bdvAtRecapitalization": { + "bean": "2148610332", + "lp": "0", + "total": "2148610332" + } + }, + "0x63C2dc8AFEdB66c9C756834ee0570028933E919C": { + "tokens": { + "bean": "190496364", + "lp": "1221149044" + }, + "bdvAtSnapshot": { + "bean": "54717414", + "lp": "574896210", + "total": "629613624" + }, + "bdvAtRecapitalization": { + "bean": "190496364", + "lp": "2410870630", + "total": "2601366994" + } + }, + "0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1": { + "tokens": { + "bean": "3", + "lp": "276627005064" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "130231291325", + "total": "130231291326" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "546134745136", + "total": "546134745139" + } + }, + "0x6343B307C288432BB9AD9003B4230B08B56b3b82": { + "tokens": { + "bean": "13271798497", + "lp": "604708881" + }, + "bdvAtSnapshot": { + "bean": "3812138313", + "lp": "284686661", + "total": "4096824974" + }, + "bdvAtRecapitalization": { + "bean": "13271798497", + "lp": "1193854991", + "total": "14465653488" + } + }, + "0x647bC16DCC2A3092A59a6b9F7944928d94301042": { + "tokens": { + "bean": "518820825", + "lp": "2676077303" + }, + "bdvAtSnapshot": { + "bean": "149024018", + "lp": "1259851701", + "total": "1408875719" + }, + "bdvAtRecapitalization": { + "bean": "518820825", + "lp": "5283283154", + "total": "5802103979" + } + }, + "0x648457FC44EAAf5B1FeB75974c826F1ca44745b7": { + "tokens": { + "bean": "4", + "lp": "210024813105" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "98876111588", + "total": "98876111589" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "414644433398", + "total": "414644433402" + } + }, + "0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8": { + "tokens": { + "bean": "357079390", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "102566056", + "lp": "0", + "total": "102566056" + }, + "bdvAtRecapitalization": { + "bean": "357079390", + "lp": "0", + "total": "357079390" + } + }, + "0x64e149a229fa88AaA2A2107359390F3b76E518AD": { + "tokens": { + "bean": "97798526", + "lp": "182023111" + }, + "bdvAtSnapshot": { + "bean": "28091257", + "lp": "85693386", + "total": "113784643" + }, + "bdvAtRecapitalization": { + "bean": "97798526", + "lp": "359361680", + "total": "457160206" + } + }, + "0x6525e122975C19CE287997E9BBA41AD0738cFcE4": { + "tokens": { + "bean": "3756342388", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1078956762", + "lp": "0", + "total": "1078956762" + }, + "bdvAtRecapitalization": { + "bean": "3756342388", + "lp": "0", + "total": "3756342388" + } + }, + "0x647EAf826c6b7171c4cA1efb59C624AAf2553CE1": { + "tokens": { + "bean": "450453346", + "lp": "16272239048" + }, + "bdvAtSnapshot": { + "bean": "129386417", + "lp": "7660693516", + "total": "7790079933" + }, + "bdvAtRecapitalization": { + "bean": "450453346", + "lp": "32125696200", + "total": "32576149546" + } + }, + "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a": { + "tokens": { + "bean": "8240411908", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2366942955", + "lp": "0", + "total": "2366942955" + }, + "bdvAtRecapitalization": { + "bean": "8240411908", + "lp": "2", + "total": "8240411910" + } + }, + "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61": { + "tokens": { + "bean": "166849753530", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "47925255805", + "lp": "0", + "total": "47925255805" + }, + "bdvAtRecapitalization": { + "bean": "166849753530", + "lp": "2", + "total": "166849753532" + } + }, + "0x65F992c16CB989B734A1d3CCAf13713391afa6d3": { + "tokens": { + "bean": "3", + "lp": "31955120916" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "15043927690", + "total": "15043927691" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "63087845719", + "total": "63087845722" + } + }, + "0x65D67E60F981ACCD5a8D9F1d20f2Dc23EF40B498": { + "tokens": { + "bean": "2", + "lp": "94213136" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "44353943", + "total": "44353944" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "186001605", + "total": "186001607" + } + }, + "0x6631E82eDD9f7F209aEF9d2d09fFc2be47d8Ae43": { + "tokens": { + "bean": "0", + "lp": "1444540000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "680064875", + "total": "680064875" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2851903358", + "total": "2851903358" + } + }, + "0x66435387dcE9f113Be44d5e730eb1C068B328E93": { + "tokens": { + "bean": "5", + "lp": "201633060354" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "94925417053", + "total": "94925417054" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "398076897814", + "total": "398076897819" + } + }, + "0x6647bb406CA87924F7039C67e5D01f3763fa888B": { + "tokens": { + "bean": "413476672", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "118765385", + "lp": "0", + "total": "118765385" + }, + "bdvAtRecapitalization": { + "bean": "413476672", + "lp": "0", + "total": "413476672" + } + }, + "0x6649f72A0F12Ca03AE6b3D672662E9307C948D98": { + "tokens": { + "bean": "38679822", + "lp": "124054142" + }, + "bdvAtSnapshot": { + "bean": "11110237", + "lp": "58402581", + "total": "69512818" + }, + "bdvAtRecapitalization": { + "bean": "38679822", + "lp": "244915630", + "total": "283595452" + } + }, + "0x6661b9b527F4Dad25a97ca4Fc9B29F90f0760cFF": { + "tokens": { + "bean": "538579", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "154699", + "lp": "0", + "total": "154699" + }, + "bdvAtRecapitalization": { + "bean": "538579", + "lp": "2", + "total": "538581" + } + }, + "0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22": { + "tokens": { + "bean": "228371010", + "lp": "384901554" + }, + "bdvAtSnapshot": { + "bean": "65596375", + "lp": "181205108", + "total": "246801483" + }, + "bdvAtRecapitalization": { + "bean": "228371010", + "lp": "759897292", + "total": "988268302" + } + }, + "0x664D448A984DAe1e829BF71e837faCd7b657EE10": { + "tokens": { + "bean": "67812593", + "lp": "297629019" + }, + "bdvAtSnapshot": { + "bean": "19478218", + "lp": "140118682", + "total": "159596900" + }, + "bdvAtRecapitalization": { + "bean": "67812593", + "lp": "587598266", + "total": "655410859" + } + }, + "0x66D47630Ac454275745b581a305d7C8Af1218181": { + "tokens": { + "bean": "25125595", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "7216975", + "lp": "0", + "total": "7216975" + }, + "bdvAtRecapitalization": { + "bean": "25125595", + "lp": "0", + "total": "25125595" + } + }, + "0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD": { + "tokens": { + "bean": "3643976100", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1046681119", + "lp": "0", + "total": "1046681119" + }, + "bdvAtRecapitalization": { + "bean": "3643976100", + "lp": "0", + "total": "3643976100" + } + }, + "0x672cE9a5A136B5BE11215Ce36D256149cdf47914": { + "tokens": { + "bean": "187018686", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "53718499", + "lp": "0", + "total": "53718499" + }, + "bdvAtRecapitalization": { + "bean": "187018686", + "lp": "0", + "total": "187018686" + } + }, + "0x66F6Ac1E4c4c8aE7D84231451126f613bFE61D98": { + "tokens": { + "bean": "3", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "2", + "total": "5" + } + }, + "0x66e4c7e22667A6D80F0C726a160E5DeE9A37223C": { + "tokens": { + "bean": "1570860693", + "lp": "4242608096" + }, + "bdvAtSnapshot": { + "bean": "451207742", + "lp": "1997347767", + "total": "2448555509" + }, + "bdvAtRecapitalization": { + "bean": "1570860693", + "lp": "8376028547", + "total": "9946889240" + } + }, + "0x67B549ca12bC83ECb5850006f366727F67d54001": { + "tokens": { + "bean": "87933575", + "lp": "3084945816" + }, + "bdvAtSnapshot": { + "bean": "25257688", + "lp": "1452340046", + "total": "1477597734" + }, + "bdvAtRecapitalization": { + "bean": "87933575", + "lp": "6090497551", + "total": "6178431126" + } + }, + "0x677c9380B3043d2a0614003277b7265d5e421471": { + "tokens": { + "bean": "229609439", + "lp": "19277730246" + }, + "bdvAtSnapshot": { + "bean": "65952097", + "lp": "9075627678", + "total": "9141579775" + }, + "bdvAtRecapitalization": { + "bean": "229609439", + "lp": "38059329357", + "total": "38288938796" + } + }, + "0x67870422E6bAe4e8a5BFdF2Dbe01ae430b9bf803": { + "tokens": { + "bean": "22462977322", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6452175754", + "lp": "0", + "total": "6452175754" + }, + "bdvAtRecapitalization": { + "bean": "22462977322", + "lp": "0", + "total": "22462977322" + } + }, + "0x6765e13B9d7Bfe31B2CaDD379e5962FC9Be51B64": { + "tokens": { + "bean": "323973132", + "lp": "973057108" + }, + "bdvAtSnapshot": { + "bean": "93056747", + "lp": "458098744", + "total": "551155491" + }, + "bdvAtRecapitalization": { + "bean": "323973132", + "lp": "1921071645", + "total": "2245044777" + } + }, + "0x67dfAF31f444FaC36d4B1979014A92e6152D2FFA": { + "tokens": { + "bean": "2710524288", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "778560154", + "lp": "0", + "total": "778560154" + }, + "bdvAtRecapitalization": { + "bean": "2710524288", + "lp": "0", + "total": "2710524288" + } + }, + "0x679B4172E1698579d562D1d8b4774968305b80b2": { + "tokens": { + "bean": "3", + "lp": "71367931562" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "33598808925", + "total": "33598808926" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "140899140001", + "total": "140899140004" + } + }, + "0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6": { + "tokens": { + "bean": "180302399561", + "lp": "2261614787" + }, + "bdvAtSnapshot": { + "bean": "51789340040", + "lp": "1064729794", + "total": "52854069834" + }, + "bdvAtRecapitalization": { + "bean": "180302399561", + "lp": "4465024718", + "total": "184767424279" + } + }, + "0x68512d66e6386369686f58a912c86b390b9299d0": { + "tokens": { + "bean": "0", + "lp": "10" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "5", + "total": "5" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "20", + "total": "20" + } + }, + "0x68572eAcf9E64e6dCD6bB19f992Bdc4Eff465fd0": { + "tokens": { + "bean": "5", + "lp": "1355958021" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "638361985", + "total": "638361986" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "2677019144", + "total": "2677019149" + } + }, + "0x688b3a3771011145519bd8db845d0D0739351C5D": { + "tokens": { + "bean": "16338250", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4692934", + "lp": "0", + "total": "4692934" + }, + "bdvAtRecapitalization": { + "bean": "16338250", + "lp": "0", + "total": "16338250" + } + }, + "0x6887b5852847dD89d4C86dFAefaB5B0B236DCD8a": { + "tokens": { + "bean": "6043664168", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "1735957921", + "lp": "1", + "total": "1735957922" + }, + "bdvAtRecapitalization": { + "bean": "6043664168", + "lp": "4", + "total": "6043664172" + } + }, + "0x689Ae6AA4F778B2C324E57440CFEa26acB6b2D0A": { + "tokens": { + "bean": "340788327", + "lp": "9752912882" + }, + "bdvAtSnapshot": { + "bean": "97886676", + "lp": "4591505585", + "total": "4689392261" + }, + "bdvAtRecapitalization": { + "bean": "340788327", + "lp": "19254825066", + "total": "19595613393" + } + }, + "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07": { + "tokens": { + "bean": "64319946", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "18475004", + "lp": "0", + "total": "18475004" + }, + "bdvAtRecapitalization": { + "bean": "64319946", + "lp": "0", + "total": "64319946" + } + }, + "0x695e4494Bc9D802d4EF182944da80C7803903F75": { + "tokens": { + "bean": "214240", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "61537", + "lp": "0", + "total": "61537" + }, + "bdvAtRecapitalization": { + "bean": "214240", + "lp": "0", + "total": "214240" + } + }, + "0x66B0115e839B954A6f6d8371DEe89dE90111C232": { + "tokens": { + "bean": "1130432435", + "lp": "23352289507" + }, + "bdvAtSnapshot": { + "bean": "324700891", + "lp": "10993860911", + "total": "11318561802" + }, + "bdvAtRecapitalization": { + "bean": "1130432435", + "lp": "46103585134", + "total": "47234017569" + } + }, + "0x69b03bFC650B8174f5887B2320338b6c29150bCE": { + "tokens": { + "bean": "3", + "lp": "15502110762" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "7298130211", + "total": "7298130212" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "30605259628", + "total": "30605259631" + } + }, + "0x69CeFF474F4C0856df11f983dcA8a43b40AEA6aB": { + "tokens": { + "bean": "1119744925", + "lp": "6097516494" + }, + "bdvAtSnapshot": { + "bean": "321631053", + "lp": "2870607108", + "total": "3192238161" + }, + "bdvAtRecapitalization": { + "bean": "1119744925", + "lp": "12038107471", + "total": "13157852396" + } + }, + "0x6a3524676291A84a68BBB7f379d2F6fB9c89CDe0": { + "tokens": { + "bean": "3456660214", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "992877253", + "lp": "0", + "total": "992877253" + }, + "bdvAtRecapitalization": { + "bean": "3456660214", + "lp": "0", + "total": "3456660214" + } + }, + "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3": { + "tokens": { + "bean": "785475450245", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "225616826427", + "lp": "0", + "total": "225616826427" + }, + "bdvAtRecapitalization": { + "bean": "785475450245", + "lp": "0", + "total": "785475450245" + } + }, + "0x6a3e09694bDF65dA8F6bF6bfaD147811100f4C40": { + "tokens": { + "bean": "937278763", + "lp": "4996603245" + }, + "bdvAtSnapshot": { + "bean": "269220203", + "lp": "2352315865", + "total": "2621536068" + }, + "bdvAtRecapitalization": { + "bean": "937278763", + "lp": "9864614046", + "total": "10801892809" + } + }, + "0x69e02D001146A86d4E2995F9eCf906265aA77d85": { + "tokens": { + "bean": "18527636771", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "5321804276", + "lp": "0", + "total": "5321804276" + }, + "bdvAtRecapitalization": { + "bean": "18527636771", + "lp": "2", + "total": "18527636773" + } + }, + "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2": { + "tokens": { + "bean": "1346259776", + "lp": "7952874779" + }, + "bdvAtSnapshot": { + "bean": "386694273", + "lp": "3744078247", + "total": "4130772520" + }, + "bdvAtRecapitalization": { + "bean": "1346259776", + "lp": "15701074591", + "total": "17047334367" + } + }, + "0x6A9D63cBb02B6A7D5d09ce11D0a4b981Bb1A221d": { + "tokens": { + "bean": "203262546", + "lp": "892463148" + }, + "bdvAtSnapshot": { + "bean": "58384321", + "lp": "420156478", + "total": "478540799" + }, + "bdvAtRecapitalization": { + "bean": "203262546", + "lp": "1761957889", + "total": "1965220435" + } + }, + "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7": { + "tokens": { + "bean": "5010630133", + "lp": "69667547622" + }, + "bdvAtSnapshot": { + "bean": "1439233357", + "lp": "32798297072", + "total": "34237530429" + }, + "bdvAtRecapitalization": { + "bean": "5010630133", + "lp": "137542133155", + "total": "142552763288" + } + }, + "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559": { + "tokens": { + "bean": "18929639013", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5437273792", + "lp": "0", + "total": "5437273792" + }, + "bdvAtRecapitalization": { + "bean": "18929639013", + "lp": "0", + "total": "18929639013" + } + }, + "0x6AB880AFd1E0C7786cc5D05F4FD9b17761768da8": { + "tokens": { + "bean": "1819290695", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "522565782", + "lp": "0", + "total": "522565782" + }, + "bdvAtRecapitalization": { + "bean": "1819290695", + "lp": "0", + "total": "1819290695" + } + }, + "0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b": { + "tokens": { + "bean": "1063657068", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "305520602", + "lp": "0", + "total": "305520602" + }, + "bdvAtRecapitalization": { + "bean": "1063657068", + "lp": "0", + "total": "1063657068" + } + }, + "0x6ad21a192AE398a8A195cc4655836b82c9c18a3e": { + "tokens": { + "bean": "875755576", + "lp": "455062517" + }, + "bdvAtSnapshot": { + "bean": "251548529", + "lp": "214235697", + "total": "465784226" + }, + "bdvAtRecapitalization": { + "bean": "875755576", + "lp": "898413558", + "total": "1774169134" + } + }, + "0x6Afbf03Fe3Bea05640da67Ae9F0B136c783e315d": { + "tokens": { + "bean": "788903528", + "lp": "28256853804" + }, + "bdvAtSnapshot": { + "bean": "226601494", + "lp": "13302846404", + "total": "13529447898" + }, + "bdvAtRecapitalization": { + "bean": "788903528", + "lp": "55786489996", + "total": "56575393524" + } + }, + "0x6b434f8e80E8B85A63A9f4fF0A14eB9568a827c8": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D": { + "tokens": { + "bean": "35440176", + "lp": "148481377" + }, + "bdvAtSnapshot": { + "bean": "10179694", + "lp": "69902508", + "total": "80082202" + }, + "bdvAtRecapitalization": { + "bean": "35440176", + "lp": "293141441", + "total": "328581617" + } + }, + "0x6c3E007377eFfd74afE237ce3B0Aeef969b63C91": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x6C8c8050a9C551B765aDBfe5bf02B8D8202Aa010": { + "tokens": { + "bean": "1273307864", + "lp": "3814494470" + }, + "bdvAtSnapshot": { + "bean": "365739858", + "lp": "1795799150", + "total": "2161539008" + }, + "bdvAtRecapitalization": { + "bean": "1273307864", + "lp": "7530819215", + "total": "8804127079" + } + }, + "0x6b4bd4c5bc6eD61a92C7bF30cA834b7A1ba26ecA": { + "tokens": { + "bean": "875857584", + "lp": "29754513288" + }, + "bdvAtSnapshot": { + "bean": "251577829", + "lp": "14007919029", + "total": "14259496858" + }, + "bdvAtRecapitalization": { + "bean": "875857584", + "lp": "58743265241", + "total": "59619122825" + } + }, + "0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F": { + "tokens": { + "bean": "123497785", + "lp": "224567106" + }, + "bdvAtSnapshot": { + "bean": "35473010", + "lp": "105722376", + "total": "141195386" + }, + "bdvAtRecapitalization": { + "bean": "123497785", + "lp": "443354759", + "total": "566852544" + } + }, + "0x6D42977A60aEF0de154Dc255DE03070A690cF041": { + "tokens": { + "bean": "2", + "lp": "92316046" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "43460825", + "total": "43460826" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "182256249", + "total": "182256251" + } + }, + "0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd": { + "tokens": { + "bean": "20866067", + "lp": "19228798497" + }, + "bdvAtSnapshot": { + "bean": "5993486", + "lp": "9052591443", + "total": "9058584929" + }, + "bdvAtRecapitalization": { + "bean": "20866067", + "lp": "37962725165", + "total": "37983591232" + } + }, + "0x6CD83315e4c4bFdf95D4A8442927C018F328C9fe": { + "tokens": { + "bean": "4337281438", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1245823371", + "lp": "0", + "total": "1245823371" + }, + "bdvAtRecapitalization": { + "bean": "4337281438", + "lp": "0", + "total": "4337281438" + } + }, + "0x6D5194ECE4C937B58EE00c4238eF61E6b98eaCE8": { + "tokens": { + "bean": "517183522", + "lp": "11002508135" + }, + "bdvAtSnapshot": { + "bean": "148553726", + "lp": "5179793787", + "total": "5328347513" + }, + "bdvAtRecapitalization": { + "bean": "517183522", + "lp": "21721856023", + "total": "22239039545" + } + }, + "0x6b6657a973644faaff1c5162D53C790C7E6a986d": { + "tokens": { + "bean": "370435832", + "lp": "8947815020" + }, + "bdvAtSnapshot": { + "bean": "106402507", + "lp": "4212479199", + "total": "4318881706" + }, + "bdvAtRecapitalization": { + "bean": "370435832", + "lp": "17665349319", + "total": "18035785151" + } + }, + "0x6d28De5368C09159F57A3a1576B94628E57362e0": { + "tokens": { + "bean": "316330923", + "lp": "964959783" + }, + "bdvAtSnapshot": { + "bean": "90861629", + "lp": "454286662", + "total": "545148291" + }, + "bdvAtRecapitalization": { + "bean": "316330923", + "lp": "1905085388", + "total": "2221416311" + } + }, + "0x6dAE3f488035023cf7dF5FA51e685C3B3CbE50d7": { + "tokens": { + "bean": "140417517", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "40332966", + "lp": "0", + "total": "40332966" + }, + "bdvAtRecapitalization": { + "bean": "140417517", + "lp": "0", + "total": "140417517" + } + }, + "0x6eec856e1661Fd6B2345380843c3603Dd7A6A94C": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x6E7427155f14c4A826B5E7c8aF4506220A0895D2": { + "tokens": { + "bean": "2760322", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "792864", + "lp": "0", + "total": "792864" + }, + "bdvAtRecapitalization": { + "bean": "2760322", + "lp": "0", + "total": "2760322" + } + }, + "0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10": { + "tokens": { + "bean": "16572797791", + "lp": "2560202111" + }, + "bdvAtSnapshot": { + "bean": "4760304146", + "lp": "1205299630", + "total": "5965603776" + }, + "bdvAtRecapitalization": { + "bean": "16572797791", + "lp": "5054514931", + "total": "21627312722" + } + }, + "0x6Dd407f05C032Ae2D5c1E666E4aA3570263b306f": { + "tokens": { + "bean": "1083040671", + "lp": "19428018571" + }, + "bdvAtSnapshot": { + "bean": "311088270", + "lp": "9146380867", + "total": "9457469137" + }, + "bdvAtRecapitalization": { + "bean": "1083040671", + "lp": "38356038191", + "total": "39439078862" + } + }, + "0x6dd1E0028eF0a634b01E13B2291949255610b38f": { + "tokens": { + "bean": "14094352", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4048405", + "lp": "0", + "total": "4048405" + }, + "bdvAtRecapitalization": { + "bean": "14094352", + "lp": "0", + "total": "14094352" + } + }, + "0x6E7efec7b53332F06647005B0508D5e79D3674D7": { + "tokens": { + "bean": "2438992730", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "700566516", + "lp": "0", + "total": "700566516" + }, + "bdvAtRecapitalization": { + "bean": "2438992730", + "lp": "0", + "total": "2438992730" + } + }, + "0x6E4ef712deCBe435C2E7edCB2Ce4A3c7fa46317a": { + "tokens": { + "bean": "42455949", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12194877", + "lp": "0", + "total": "12194877" + }, + "bdvAtRecapitalization": { + "bean": "42455949", + "lp": "0", + "total": "42455949" + } + }, + "0x6ef8C88E31F36b99afD4584e25D4f69B0793187b": { + "tokens": { + "bean": "4545274999", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1305566610", + "lp": "0", + "total": "1305566610" + }, + "bdvAtRecapitalization": { + "bean": "4545274999", + "lp": "0", + "total": "4545274999" + } + }, + "0x6ee25671aa43C7E9153d19A1a839CCbBBE65d1EC": { + "tokens": { + "bean": "927138222", + "lp": "5522633905" + }, + "bdvAtSnapshot": { + "bean": "266307474", + "lp": "2599962158", + "total": "2866269632" + }, + "bdvAtRecapitalization": { + "bean": "927138222", + "lp": "10903137456", + "total": "11830275678" + } + }, + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A": { + "tokens": { + "bean": "3", + "lp": "46631812230" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "21953464457", + "total": "21953464458" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "92063509423", + "total": "92063509426" + } + }, + "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9": { + "tokens": { + "bean": "1", + "lp": "8908148302" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "4193804782", + "total": "4193804782" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "17587036744", + "total": "17587036745" + } + }, + "0x6fa54cbFDc9D70829Ac9F110BB2B16D8c64fA91C": { + "tokens": { + "bean": "21686310364", + "lp": "42346936429" + }, + "bdvAtSnapshot": { + "bean": "6229089044", + "lp": "19936217773", + "total": "26165306817" + }, + "bdvAtRecapitalization": { + "bean": "21686310364", + "lp": "83604033267", + "total": "105290343631" + } + }, + "0x6FAdD627a52b8De209403191eD193838152e974b": { + "tokens": { + "bean": "3", + "lp": "7021581926" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3305641404", + "total": "3305641405" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "13862456613", + "total": "13862456616" + } + }, + "0x6F9ceE855cB1F362F31256C65e1709222E0f2037": { + "tokens": { + "bean": "642055137255", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "184421349405", + "lp": "0", + "total": "184421349405" + }, + "bdvAtRecapitalization": { + "bean": "642055137255", + "lp": "2", + "total": "642055137257" + } + }, + "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54": { + "tokens": { + "bean": "26861867", + "lp": "88533974" + }, + "bdvAtSnapshot": { + "bean": "7715695", + "lp": "41680290", + "total": "49395985" + }, + "bdvAtRecapitalization": { + "bean": "26861867", + "lp": "174789440", + "total": "201651307" + } + }, + "0x708E5804D0e930Fac266d8B3F3e13EdbA35ac86E": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0x6fE4aceD57AE0b50D14229F3d40617C8b7d2F2E1": { + "tokens": { + "bean": "2011860", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "577879", + "lp": "0", + "total": "577879" + }, + "bdvAtRecapitalization": { + "bean": "2011860", + "lp": "0", + "total": "2011860" + } + }, + "0x702aA86601aBc776bEA3A8241688085125D75AE2": { + "tokens": { + "bean": "434401770", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "124775827", + "lp": "0", + "total": "124775827" + }, + "bdvAtRecapitalization": { + "bean": "434401770", + "lp": "0", + "total": "434401770" + } + }, + "0x70a9c497536E98F2DbB7C66911700fe2b2550900": { + "tokens": { + "bean": "3684517877", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1058326177", + "lp": "0", + "total": "1058326177" + }, + "bdvAtRecapitalization": { + "bean": "3684517877", + "lp": "0", + "total": "3684517877" + } + }, + "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906": { + "tokens": { + "bean": "394451340", + "lp": "15713158854" + }, + "bdvAtSnapshot": { + "bean": "113300625", + "lp": "7397488065", + "total": "7510788690" + }, + "bdvAtRecapitalization": { + "bean": "394451340", + "lp": "31021924284", + "total": "31416375624" + } + }, + "0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793": { + "tokens": { + "bean": "1349345610", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "387580636", + "lp": "0", + "total": "387580636" + }, + "bdvAtRecapitalization": { + "bean": "1349345610", + "lp": "0", + "total": "1349345610" + } + }, + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565": { + "tokens": { + "bean": "2771", + "lp": "85610335986" + }, + "bdvAtSnapshot": { + "bean": "796", + "lp": "40303890806", + "total": "40303891602" + }, + "bdvAtRecapitalization": { + "bean": "2771", + "lp": "169017406720", + "total": "169017409491" + } + }, + "0x7105401E7dA983F1310A59DBa35E5B92ff59bA0C": { + "tokens": { + "bean": "17037", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4894", + "lp": "0", + "total": "4894" + }, + "bdvAtRecapitalization": { + "bean": "17037", + "lp": "0", + "total": "17037" + } + }, + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31": { + "tokens": { + "bean": "2", + "lp": "10304271812" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "4851075996", + "total": "4851075997" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "20343353168", + "total": "20343353170" + } + }, + "0x70c65accB3806917e0965C08A4a7D6c72F17651A": { + "tokens": { + "bean": "878257837", + "lp": "80808574276" + }, + "bdvAtSnapshot": { + "bean": "252267268", + "lp": "38043303023", + "total": "38295570291" + }, + "bdvAtRecapitalization": { + "bean": "878257837", + "lp": "159537461307", + "total": "160415719144" + } + }, + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82": { + "tokens": { + "bean": "1351889814853", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "388311422859", + "lp": "0", + "total": "388311422859" + }, + "bdvAtRecapitalization": { + "bean": "1351889814853", + "lp": "0", + "total": "1351889814853" + } + }, + "0x71a15Ac12ee91BF7c83D08506f3a3588143898B5": { + "tokens": { + "bean": "3106502288", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "892299291", + "lp": "0", + "total": "892299291" + }, + "bdvAtRecapitalization": { + "bean": "3106502288", + "lp": "0", + "total": "3106502288" + } + }, + "0x717E61157ce63C7cd901dCb2F169f019D16c5aC9": { + "tokens": { + "bean": "36765375", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10560339", + "lp": "0", + "total": "10560339" + }, + "bdvAtRecapitalization": { + "bean": "36765375", + "lp": "0", + "total": "36765375" + } + }, + "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8": { + "tokens": { + "bean": "1544154625086", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "443536797891", + "lp": "1", + "total": "443536797892" + }, + "bdvAtRecapitalization": { + "bean": "1544154625086", + "lp": "4", + "total": "1544154625090" + } + }, + "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537": { + "tokens": { + "bean": "3", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "2", + "total": "5" + } + }, + "0x71ad3B3bAc0Ab729FE8961512C6D430f34A36A34": { + "tokens": { + "bean": "3031799607", + "lp": "119970381691" + }, + "bdvAtSnapshot": { + "bean": "870841992", + "lp": "56480016204", + "total": "57350858196" + }, + "bdvAtRecapitalization": { + "bean": "3031799607", + "lp": "236853208939", + "total": "239885008546" + } + }, + "0x71D8472C58D77F2220C333149BdF8b843C314E99": { + "tokens": { + "bean": "1278468475", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "367222171", + "lp": "0", + "total": "367222171" + }, + "bdvAtRecapitalization": { + "bean": "1278468475", + "lp": "0", + "total": "1278468475" + } + }, + "0x721f5D24c041d02f9316245D96DAc0094429Ce53": { + "tokens": { + "bean": "707133663", + "lp": "41583404284" + }, + "bdvAtSnapshot": { + "bean": "203114245", + "lp": "19576759819", + "total": "19779874064" + }, + "bdvAtRecapitalization": { + "bean": "707133663", + "lp": "82096619219", + "total": "82803752882" + } + }, + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126": { + "tokens": { + "bean": "3", + "lp": "654423178913" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "308091307438", + "total": "308091307439" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "1292004140897", + "total": "1292004140900" + } + }, + "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2": { + "tokens": { + "bean": "674172125", + "lp": "220144232274" + }, + "bdvAtSnapshot": { + "bean": "193646504", + "lp": "103640162103", + "total": "103833808607" + }, + "bdvAtRecapitalization": { + "bean": "674172125", + "lp": "434622838642", + "total": "435297010767" + } + }, + "0x72520D730efABFB090ed800f671F751f70E8e64f": { + "tokens": { + "bean": "13420719485", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3854913782", + "lp": "0", + "total": "3854913782" + }, + "bdvAtRecapitalization": { + "bean": "13420719485", + "lp": "0", + "total": "13420719485" + } + }, + "0x723FfaFc402702f9DaD94fd10e8eDecAaAbA90aC": { + "tokens": { + "bean": "1357604575", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "389952908", + "lp": "0", + "total": "389952908" + }, + "bdvAtRecapitalization": { + "bean": "1357604575", + "lp": "0", + "total": "1357604575" + } + }, + "0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246": { + "tokens": { + "bean": "1144957111", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "328872901", + "lp": "0", + "total": "328872901" + }, + "bdvAtRecapitalization": { + "bean": "1144957111", + "lp": "0", + "total": "1144957111" + } + }, + "0x72a97cF2501aaFDCbB62afb7Bd6E4C237fD705a2": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x726C46B3E0d605ea8821712bD09686354175D448": { + "tokens": { + "bean": "14672153384", + "lp": "20210810213" + }, + "bdvAtSnapshot": { + "bean": "4214370649", + "lp": "9514905865", + "total": "13729276514" + }, + "bdvAtRecapitalization": { + "bean": "14672153384", + "lp": "39901475570", + "total": "54573628954" + } + }, + "0x728897111210Dc78F311E8366297bc31ac8FA805": { + "tokens": { + "bean": "1164600224", + "lp": "7770588747" + }, + "bdvAtSnapshot": { + "bean": "334515110", + "lp": "3658261082", + "total": "3992776192" + }, + "bdvAtRecapitalization": { + "bean": "1164600224", + "lp": "15341193836", + "total": "16505794060" + } + }, + "0x72BC9bE9cc199cE211b02F10487b740f8fc0F33D": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0x72aEae04BF7746803dc0d7593928Cc6B68D2Ea6d": { + "tokens": { + "bean": "1678321529", + "lp": "3566522037" + }, + "bdvAtSnapshot": { + "bean": "482074363", + "lp": "1679057944", + "total": "2161132307" + }, + "bdvAtRecapitalization": { + "bean": "1678321529", + "lp": "7041256161", + "total": "8719577690" + } + }, + "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2": { + "tokens": { + "bean": "138507756", + "lp": "3524519071" + }, + "bdvAtSnapshot": { + "bean": "39784414", + "lp": "1659283662", + "total": "1699068076" + }, + "bdvAtRecapitalization": { + "bean": "138507756", + "lp": "6958331216", + "total": "7096838972" + } + }, + "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4": { + "tokens": { + "bean": "2083294247", + "lp": "32085844924" + }, + "bdvAtSnapshot": { + "bean": "598397106", + "lp": "15105470331", + "total": "15703867437" + }, + "bdvAtRecapitalization": { + "bean": "2083294247", + "lp": "63345929426", + "total": "65429223673" + } + }, + "0x72ea7c70c5663D4B8b9E61282f98fC26c21d5c9E": { + "tokens": { + "bean": "86594663", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "24873105", + "lp": "0", + "total": "24873105" + }, + "bdvAtRecapitalization": { + "bean": "86594663", + "lp": "0", + "total": "86594663" + } + }, + "0x7379a8357E5791Fbd3B77c3Ba380F7FE850C13f0": { + "tokens": { + "bean": "4212217851", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1209900607", + "lp": "0", + "total": "1209900607" + }, + "bdvAtRecapitalization": { + "bean": "4212217851", + "lp": "0", + "total": "4212217851" + } + }, + "0x73E9f9099497Dd0593C95BBc534bdc30FD19fA86": { + "tokens": { + "bean": "91140815", + "lp": "493692237" + }, + "bdvAtSnapshot": { + "bean": "26178923", + "lp": "232421912", + "total": "258600835" + }, + "bdvAtRecapitalization": { + "bean": "91140815", + "lp": "974678824", + "total": "1065819639" + } + }, + "0x730a5682f0048b7937455bDCb15f51CCA1814084": { + "tokens": { + "bean": "1328981", + "lp": "4063697" + }, + "bdvAtSnapshot": { + "bean": "381731", + "lp": "1913119", + "total": "2294850" + }, + "bdvAtRecapitalization": { + "bean": "1328981", + "lp": "8022811", + "total": "9351792" + } + }, + "0x72f030d92ed78ED005E12f51D47F750ac72C3ce9": { + "tokens": { + "bean": "4781630", + "lp": "450884197" + }, + "bdvAtSnapshot": { + "bean": "1373456", + "lp": "212268615", + "total": "213642071" + }, + "bdvAtRecapitalization": { + "bean": "4781630", + "lp": "890164451", + "total": "894946081" + } + }, + "0x73Cbc02516f5F4945cE2F2fACf002b2c6aA359e7": { + "tokens": { + "bean": "651943990", + "lp": "10814716109" + }, + "bdvAtSnapshot": { + "bean": "187261784", + "lp": "5091384494", + "total": "5278646278" + }, + "bdvAtRecapitalization": { + "bean": "651943990", + "lp": "21351104982", + "total": "22003048972" + } + }, + "0x7377bC02C27ea5E5D370EeE934De1576eE1952Fe": { + "tokens": { + "bean": "3222987350", + "lp": "16848930606" + }, + "bdvAtSnapshot": { + "bean": "925757994", + "lp": "7932190097", + "total": "8857948091" + }, + "bdvAtRecapitalization": { + "bean": "3222987350", + "lp": "33264237597", + "total": "36487224947" + } + }, + "0x74231623D8058Afc0a62f919742e15Af0fb299e5": { + "tokens": { + "bean": "21613338252", + "lp": "104480001" + }, + "bdvAtSnapshot": { + "bean": "6208128826", + "lp": "49187408", + "total": "6257316234" + }, + "bdvAtRecapitalization": { + "bean": "21613338252", + "lp": "206271108", + "total": "21819609360" + } + }, + "0x7463154a39d8F6adc38fFC3f614a9f32E63a1735": { + "tokens": { + "bean": "1523215867", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "437522433", + "lp": "0", + "total": "437522433" + }, + "bdvAtRecapitalization": { + "bean": "1523215867", + "lp": "0", + "total": "1523215867" + } + }, + "0x743025F4e7f64137137ca18567cd342b443a0aa5": { + "tokens": { + "bean": "339598073", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "97544792", + "lp": "0", + "total": "97544792" + }, + "bdvAtRecapitalization": { + "bean": "339598073", + "lp": "0", + "total": "339598073" + } + }, + "0x74730D48B5aAD8F7d70Ba0b27c3f7d3aA353A64A": { + "tokens": { + "bean": "1359449933", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "390482961", + "lp": "0", + "total": "390482961" + }, + "bdvAtRecapitalization": { + "bean": "1359449933", + "lp": "0", + "total": "1359449933" + } + }, + "0x749461444e750F2354Cf33543C941e87d747f12f": { + "tokens": { + "bean": "1277571240", + "lp": "6920634140" + }, + "bdvAtSnapshot": { + "bean": "366964453", + "lp": "3258116902", + "total": "3625081355" + }, + "bdvAtRecapitalization": { + "bean": "1277571240", + "lp": "13663159030", + "total": "14940730270" + } + }, + "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347": { + "tokens": { + "bean": "2355898666", + "lp": "38223801250" + }, + "bdvAtSnapshot": { + "bean": "676698909", + "lp": "17995115824", + "total": "18671814733" + }, + "bdvAtRecapitalization": { + "bean": "2355898666", + "lp": "75463875803", + "total": "77819774469" + } + }, + "0x73C91af57C657DfD05a31DAcA7Bff1aEb5754629": { + "tokens": { + "bean": "6", + "lp": "24876396002" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "11711384339", + "total": "11711384341" + }, + "bdvAtRecapitalization": { + "bean": "6", + "lp": "49112573761", + "total": "49112573767" + } + }, + "0x74Bcf1a4c12Fc240773102C76Ea433502c188d84": { + "tokens": { + "bean": "4", + "lp": "4077208283" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1919480347", + "total": "1919480348" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "8049485646", + "total": "8049485650" + } + }, + "0x750Ea1907dC2A80085da079A7Db679EB57cbcb21": { + "tokens": { + "bean": "119834055", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "34420655", + "lp": "0", + "total": "34420655" + }, + "bdvAtRecapitalization": { + "bean": "119834055", + "lp": "0", + "total": "119834055" + } + }, + "0x758917f2c8D3192FC9f109fE1EE0556808248CC0": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x75e6E04eB9BB5e4C1E8A57F3C6Eb89D7BfF63a14": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x753e0Fb90EC97Cf202044d4c3B1F759210f4D8D1": { + "tokens": { + "bean": "2703301074", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "776485387", + "lp": "0", + "total": "776485387" + }, + "bdvAtRecapitalization": { + "bean": "2703301074", + "lp": "0", + "total": "2703301074" + } + }, + "0x7568614a27117EeEB6E06022D74540c3C5749B84": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0x75b3D92d34140b2A98397911BdED09eC70F5F58f": { + "tokens": { + "bean": "112582236", + "lp": "11908357439" + }, + "bdvAtSnapshot": { + "bean": "32337671", + "lp": "5606252240", + "total": "5638589911" + }, + "bdvAtRecapitalization": { + "bean": "112582236", + "lp": "23510241719", + "total": "23622823955" + } + }, + "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515": { + "tokens": { + "bean": "8500812352", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2441739337", + "lp": "0", + "total": "2441739337" + }, + "bdvAtRecapitalization": { + "bean": "8500812352", + "lp": "2", + "total": "8500812354" + } + }, + "0x768DeC0cdCCF66eF7036fB8d2cE6673b73F9eA13": { + "tokens": { + "bean": "1254394794", + "lp": "11510215221" + }, + "bdvAtSnapshot": { + "bean": "360307343", + "lp": "5418813652", + "total": "5779120995" + }, + "bdvAtRecapitalization": { + "bean": "1254394794", + "lp": "22724203860", + "total": "23978598654" + } + }, + "0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000": { + "tokens": { + "bean": "24266660245", + "lp": "6048506238" + }, + "bdvAtSnapshot": { + "bean": "6970258422", + "lp": "2847533912", + "total": "9817792334" + }, + "bdvAtRecapitalization": { + "bean": "24266660245", + "lp": "11941348286", + "total": "36208008531" + } + }, + "0x768F2A7CcdFDe9eBDFd5Cea8B635dd590Cb3A3F1": { + "tokens": { + "bean": "15982905194", + "lp": "98285669819" + }, + "bdvAtSnapshot": { + "bean": "4590865756", + "lp": "46271222494", + "total": "50862088250" + }, + "bdvAtRecapitalization": { + "bean": "15982905194", + "lp": "194041862343", + "total": "210024767537" + } + }, + "0x76A63B4ffb5E4d342371e312eBe62078760E8589": { + "tokens": { + "bean": "487190024", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "139938514", + "lp": "0", + "total": "139938514" + }, + "bdvAtRecapitalization": { + "bean": "487190024", + "lp": "0", + "total": "487190024" + } + }, + "0x76a014267b1D9e375D4A84554504E366C7De1167": { + "tokens": { + "bean": "1796729039", + "lp": "48170852581" + }, + "bdvAtSnapshot": { + "bean": "516085262", + "lp": "22678018491", + "total": "23194103753" + }, + "bdvAtRecapitalization": { + "bean": "1796729039", + "lp": "95101981425", + "total": "96898710464" + } + }, + "0x7690704d17fAeaba62f6fc45E464F307763445de": { + "tokens": { + "bean": "0", + "lp": "30724000000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "14464336892", + "total": "14464336892" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "60657287981", + "total": "60657287981" + } + }, + "0x75d5CEd39b418D5E25F4A05db87fCC8bCEED7E66": { + "tokens": { + "bean": "143804366", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "41305791", + "lp": "0", + "total": "41305791" + }, + "bdvAtRecapitalization": { + "bean": "143804366", + "lp": "0", + "total": "143804366" + } + }, + "0x76d9546E42951BdbFb45b3FEA09dc381183Fff1A": { + "tokens": { + "bean": "106735443", + "lp": "575719052" + }, + "bdvAtSnapshot": { + "bean": "30658262", + "lp": "271038742", + "total": "301697004" + }, + "bdvAtRecapitalization": { + "bean": "106735443", + "lp": "1136621414", + "total": "1243356857" + } + }, + "0x76aD595A4226EA608A3111901eBb6781692f4624": { + "tokens": { + "bean": "3062596041", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "879687836", + "lp": "0", + "total": "879687836" + }, + "bdvAtRecapitalization": { + "bean": "3062596041", + "lp": "0", + "total": "3062596041" + } + }, + "0x77029090e07F7D144538C74cD3B7EcF674d82f62": { + "tokens": { + "bean": "147499043", + "lp": "12135812449" + }, + "bdvAtSnapshot": { + "bean": "42367035", + "lp": "5713334192", + "total": "5755701227" + }, + "bdvAtRecapitalization": { + "bean": "147499043", + "lp": "23959297963", + "total": "24106797006" + } + }, + "0x771433c3bB5B9eF6e97D452d265cffF930E6DdDB": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc": { + "tokens": { + "bean": "7154670678", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2055078987", + "lp": "0", + "total": "2055078987" + }, + "bdvAtRecapitalization": { + "bean": "7154670678", + "lp": "0", + "total": "7154670678" + } + }, + "0x775B04CC1495447048313ddf868075f41F3bf3bB": { + "tokens": { + "bean": "220694971", + "lp": "720494012" + }, + "bdvAtSnapshot": { + "bean": "63391541", + "lp": "339196332", + "total": "402587873" + }, + "bdvAtRecapitalization": { + "bean": "220694971", + "lp": "1422445410", + "total": "1643140381" + } + }, + "0x7809792a0Ac72024Af361e0FC195B0066B25A76D": { + "tokens": { + "bean": "105814578", + "lp": "330888185" + }, + "bdvAtSnapshot": { + "bean": "30393756", + "lp": "155776532", + "total": "186170288" + }, + "bdvAtRecapitalization": { + "bean": "105814578", + "lp": "653260641", + "total": "759075219" + } + }, + "0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B": { + "tokens": { + "bean": "371532967", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "106717643", + "lp": "0", + "total": "106717643" + }, + "bdvAtRecapitalization": { + "bean": "371532967", + "lp": "0", + "total": "371532967" + } + }, + "0x774E9010cBbB1C5B07D6Dd443939305707Cc8dA7": { + "tokens": { + "bean": "273324059", + "lp": "17737052445" + }, + "bdvAtSnapshot": { + "bean": "78508509", + "lp": "8350302761", + "total": "8428811270" + }, + "bdvAtRecapitalization": { + "bean": "273324059", + "lp": "35017624596", + "total": "35290948655" + } + }, + "0x77BD7d6D8E6cB76032FF6a96921D81a98Baf3637": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658": { + "tokens": { + "bean": "11422599096", + "lp": "75589793743" + }, + "bdvAtSnapshot": { + "bean": "3280981674", + "lp": "35586389868", + "total": "38867371542" + }, + "bdvAtRecapitalization": { + "bean": "11422599096", + "lp": "149234210634", + "total": "160656809730" + } + }, + "0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E": { + "tokens": { + "bean": "1295468142", + "lp": "12852838823" + }, + "bdvAtSnapshot": { + "bean": "372105087", + "lp": "6050898020", + "total": "6423003107" + }, + "bdvAtRecapitalization": { + "bean": "1295468142", + "lp": "25374897340", + "total": "26670365482" + } + }, + "0x7761377f59863DDcaF83A7BC5E6534c8991Bf80f": { + "tokens": { + "bean": "7146870838", + "lp": "17691691275" + }, + "bdvAtSnapshot": { + "bean": "2052838592", + "lp": "8328947494", + "total": "10381786086" + }, + "bdvAtRecapitalization": { + "bean": "7146870838", + "lp": "34928069670", + "total": "42074940508" + } + }, + "0x7833606Df8d790FcFA7494d0C254125C26d723D7": { + "tokens": { + "bean": "501562582", + "lp": "1404395833" + }, + "bdvAtSnapshot": { + "bean": "144066830", + "lp": "661165683", + "total": "805232513" + }, + "bdvAtRecapitalization": { + "bean": "501562582", + "lp": "2772648173", + "total": "3274210755" + } + }, + "0x78a9Ab428e950D9E8F63De04833bd90D5BFD4fDA": { + "tokens": { + "bean": "1295358562", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "372073612", + "lp": "0", + "total": "372073612" + }, + "bdvAtRecapitalization": { + "bean": "1295358562", + "lp": "0", + "total": "1295358562" + } + }, + "0x7893b13e58310cDAC183E5bA95774405CE373f83": { + "tokens": { + "bean": "67233932470", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "19312005827", + "lp": "0", + "total": "19312005827" + }, + "bdvAtRecapitalization": { + "bean": "67233932470", + "lp": "2", + "total": "67233932472" + } + }, + "0x78320e6082f9E831DD3057272F553e143dFe5b9c": { + "tokens": { + "bean": "316129414", + "lp": "301224156" + }, + "bdvAtSnapshot": { + "bean": "90803748", + "lp": "141811212", + "total": "232614960" + }, + "bdvAtRecapitalization": { + "bean": "316129414", + "lp": "594696015", + "total": "910825429" + } + }, + "0x78b606B8D65498ab40c7F7995Fe83887238CC968": { + "tokens": { + "bean": "3975866710", + "lp": "96004074296" + }, + "bdvAtSnapshot": { + "bean": "1142012050", + "lp": "45197086109", + "total": "46339098159" + }, + "bdvAtRecapitalization": { + "bean": "3975866710", + "lp": "189537390377", + "total": "193513257087" + } + }, + "0x78Bf8b271510E949ae4479bEd90c0c9a17cf020b": { + "tokens": { + "bean": "8065467344", + "lp": "102062832029" + }, + "bdvAtSnapshot": { + "bean": "2316692578", + "lp": "48049446251", + "total": "50366138829" + }, + "bdvAtRecapitalization": { + "bean": "8065467344", + "lp": "201498977821", + "total": "209564445165" + } + }, + "0x79384685684121f64725594B84AE797AB5f797Ab": { + "tokens": { + "bean": "275913147", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "79252189", + "lp": "0", + "total": "79252189" + }, + "bdvAtRecapitalization": { + "bean": "275913147", + "lp": "0", + "total": "275913147" + } + }, + "0x79Af81df02789476F34E8dF5BAd9cb29fA57ad11": { + "tokens": { + "bean": "61249610", + "lp": "188194038" + }, + "bdvAtSnapshot": { + "bean": "17593093", + "lp": "88598554", + "total": "106191647" + }, + "bdvAtRecapitalization": { + "bean": "61249610", + "lp": "371544719", + "total": "432794329" + } + }, + "0x79ba2BD849cD811bCC4A6ddBe6162c7672A3ACd4": { + "tokens": { + "bean": "2968597005", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "852687929", + "lp": "0", + "total": "852687929" + }, + "bdvAtRecapitalization": { + "bean": "2968597005", + "lp": "0", + "total": "2968597005" + } + }, + "0x7a59ab141ab5fD585760386002dC2E9ec8A217e9": { + "tokens": { + "bean": "154180718", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "44286253", + "lp": "0", + "total": "44286253" + }, + "bdvAtRecapitalization": { + "bean": "154180718", + "lp": "0", + "total": "154180718" + } + }, + "0x7A63D7813039000e52Be63299D1302F1e03C7a6A": { + "tokens": { + "bean": "30773417", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8839233", + "lp": "0", + "total": "8839233" + }, + "bdvAtRecapitalization": { + "bean": "30773417", + "lp": "0", + "total": "30773417" + } + }, + "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E": { + "tokens": { + "bean": "357155504", + "lp": "244012765" + }, + "bdvAtSnapshot": { + "bean": "102587918", + "lp": "114877062", + "total": "217464980" + }, + "bdvAtRecapitalization": { + "bean": "357155504", + "lp": "481745624", + "total": "838901128" + } + }, + "0x7A6530B0970397414192A8F86c91d1e1f870a5A6": { + "tokens": { + "bean": "35219196", + "lp": "1601718734" + }, + "bdvAtSnapshot": { + "bean": "10116221", + "lp": "754061951", + "total": "764178172" + }, + "bdvAtRecapitalization": { + "bean": "35219196", + "lp": "3162215679", + "total": "3197434875" + } + }, + "0x7ac34681F6aAeb691E150c43ee494177C0e2c183": { + "tokens": { + "bean": "1026", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "295", + "lp": "0", + "total": "295" + }, + "bdvAtRecapitalization": { + "bean": "1026", + "lp": "0", + "total": "1026" + } + }, + "0x7aA55D3965455d50f779991783fD54178aBCa185": { + "tokens": { + "bean": "1289448483", + "lp": "5990364046" + }, + "bdvAtSnapshot": { + "bean": "370376024", + "lp": "2820161557", + "total": "3190537581" + }, + "bdvAtRecapitalization": { + "bean": "1289448483", + "lp": "11826560248", + "total": "13116008731" + } + }, + "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x7Ace5390CAa52Ea0c0D1aB408eE2D27DCE3f2711": { + "tokens": { + "bean": "10389385804", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2984205621", + "lp": "0", + "total": "2984205621" + }, + "bdvAtRecapitalization": { + "bean": "10389385804", + "lp": "0", + "total": "10389385804" + } + }, + "0x7902b867Af288b1b33dFcC6D022B284063eF9976": { + "tokens": { + "bean": "1475580512257", + "lp": "73951181098" + }, + "bdvAtSnapshot": { + "bean": "423839844019", + "lp": "34814958891", + "total": "458654802910" + }, + "bdvAtRecapitalization": { + "bean": "1475580512257", + "lp": "145999156634", + "total": "1621579668891" + } + }, + "0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD": { + "tokens": { + "bean": "4349941079", + "lp": "7080596731" + }, + "bdvAtSnapshot": { + "bean": "1249459676", + "lp": "3333424571", + "total": "4582884247" + }, + "bdvAtRecapitalization": { + "bean": "4349941079", + "lp": "13978967419", + "total": "18328908498" + } + }, + "0x7B2d2934868077d5E938EfE238De65E0830Cf186": { + "tokens": { + "bean": "127610704850", + "lp": "325362152012" + }, + "bdvAtSnapshot": { + "bean": "36654388418", + "lp": "153174970011", + "total": "189829358429" + }, + "bdvAtRecapitalization": { + "bean": "127610704850", + "lp": "642350792630", + "total": "769961497480" + } + }, + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e": { + "tokens": { + "bean": "5655", + "lp": "111508143391" + }, + "bdvAtSnapshot": { + "bean": "1624", + "lp": "52496138270", + "total": "52496139894" + }, + "bdvAtRecapitalization": { + "bean": "5655", + "lp": "220146516271", + "total": "220146521926" + } + }, + "0x7B5Fa2f03747326A5Eccd0e6d08329732Ed1E605": { + "tokens": { + "bean": "391839827", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "112550505", + "lp": "0", + "total": "112550505" + }, + "bdvAtRecapitalization": { + "bean": "391839827", + "lp": "0", + "total": "391839827" + } + }, + "0x7bd5d9279414A7d5c3B17916A916F0C7Fd2c593B": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E": { + "tokens": { + "bean": "978399406", + "lp": "127103458" + }, + "bdvAtSnapshot": { + "bean": "281031532", + "lp": "59838147", + "total": "340869679" + }, + "bdvAtRecapitalization": { + "bean": "978399406", + "lp": "250935785", + "total": "1229335191" + } + }, + "0x7bB955249d6f57345726569EA7131E2910CA9C0D": { + "tokens": { + "bean": "0", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "4", + "total": "4" + } + }, + "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4": { + "tokens": { + "bean": "1666627696", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "478715473", + "lp": "0", + "total": "478715473" + }, + "bdvAtRecapitalization": { + "bean": "1666627696", + "lp": "0", + "total": "1666627696" + } + }, + "0x7bC93c819a168F1F684C17f4F44aFA9cB52d5184": { + "tokens": { + "bean": "31983127", + "lp": "217719342" + }, + "bdvAtSnapshot": { + "bean": "9186705", + "lp": "102498565", + "total": "111685270" + }, + "bdvAtRecapitalization": { + "bean": "31983127", + "lp": "429835465", + "total": "461818592" + } + }, + "0x7c4430695c5F17161CA34D12A023acEbD6e6D35e": { + "tokens": { + "bean": "418226", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "120130", + "lp": "0", + "total": "120130" + }, + "bdvAtRecapitalization": { + "bean": "418226", + "lp": "2", + "total": "418228" + } + }, + "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F": { + "tokens": { + "bean": "16960278064", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4871602430", + "lp": "0", + "total": "4871602430" + }, + "bdvAtRecapitalization": { + "bean": "16960278064", + "lp": "0", + "total": "16960278064" + } + }, + "0x7C1effB343707fFdcaBd91Ee417C86Ab07dFd41c": { + "tokens": { + "bean": "131565677", + "lp": "116889" + }, + "bdvAtSnapshot": { + "bean": "37790399", + "lp": "55029", + "total": "37845428" + }, + "bdvAtRecapitalization": { + "bean": "131565677", + "lp": "230770", + "total": "131796447" + } + }, + "0x7bf98085c8336a374436C91fcf664595f9ff3FD7": { + "tokens": { + "bean": "1127733492", + "lp": "11061487674" + }, + "bdvAtSnapshot": { + "bean": "323925657", + "lp": "5207560352", + "total": "5531486009" + }, + "bdvAtRecapitalization": { + "bean": "1127733492", + "lp": "21838297206", + "total": "22966030698" + } + }, + "0x7c6236c2fBe586E0E8992160201635Db87B7E543": { + "tokens": { + "bean": "399277698", + "lp": "586608688" + }, + "bdvAtSnapshot": { + "bean": "114686929", + "lp": "276165398", + "total": "390852327" + }, + "bdvAtRecapitalization": { + "bean": "399277698", + "lp": "1158120431", + "total": "1557398129" + } + }, + "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc": { + "tokens": { + "bean": "210397161", + "lp": "17006071066" + }, + "bdvAtSnapshot": { + "bean": "60433639", + "lp": "8006169155", + "total": "8066602794" + }, + "bdvAtRecapitalization": { + "bean": "210397161", + "lp": "33574474355", + "total": "33784871516" + } + }, + "0x7CA6217b72B630A5fF23c725636Ec2daf385C524": { + "tokens": { + "bean": "162852850", + "lp": "900963460" + }, + "bdvAtSnapshot": { + "bean": "46777201", + "lp": "424158281", + "total": "470935482" + }, + "bdvAtRecapitalization": { + "bean": "162852850", + "lp": "1778739749", + "total": "1941592599" + } + }, + "0x7c5534E88F8A7b3F81290a4372D85dbD4b9B2ae2": { + "tokens": { + "bean": "4312839750", + "lp": "493573971984" + }, + "bdvAtSnapshot": { + "bean": "1238802838", + "lp": "232366235253", + "total": "233605038091" + }, + "bdvAtRecapitalization": { + "bean": "4312839750", + "lp": "974445337803", + "total": "978758177553" + } + }, + "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16": { + "tokens": { + "bean": "7099707331", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2039291535", + "lp": "0", + "total": "2039291535" + }, + "bdvAtRecapitalization": { + "bean": "7099707331", + "lp": "0", + "total": "7099707331" + } + }, + "0x7CCaF96bD91654998F286616717F72e0824Ec141": { + "tokens": { + "bean": "211736587", + "lp": "3245595633" + }, + "bdvAtSnapshot": { + "bean": "60818370", + "lp": "1527971249", + "total": "1588789619" + }, + "bdvAtRecapitalization": { + "bean": "211736587", + "lp": "6407662706", + "total": "6619399293" + } + }, + "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3": { + "tokens": { + "bean": "256072517", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "73553245", + "lp": "0", + "total": "73553245" + }, + "bdvAtRecapitalization": { + "bean": "256072517", + "lp": "0", + "total": "256072517" + } + }, + "0x7CDFc314b89a851054A9acC324171bF8a31593E9": { + "tokens": { + "bean": "695360073594", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "199732446099", + "lp": "0", + "total": "199732446099" + }, + "bdvAtRecapitalization": { + "bean": "695360073594", + "lp": "2", + "total": "695360073596" + } + }, + "0x7Cc8880e3d74611e301fAaA5C8a05d3D8FCB3F18": { + "tokens": { + "bean": "7408266697", + "lp": "1753904775161" + }, + "bdvAtSnapshot": { + "bean": "2127920893", + "lp": "825708551765", + "total": "827836472658" + }, + "bdvAtRecapitalization": { + "bean": "7408266697", + "lp": "3462671105278", + "total": "3470079371975" + } + }, + "0x7cd222530d4D10E175c939F55c5dC394d51AaDaA": { + "tokens": { + "bean": "1721864401777", + "lp": "111212985245" + }, + "bdvAtSnapshot": { + "bean": "494581443309", + "lp": "52357182833", + "total": "546938626142" + }, + "bdvAtRecapitalization": { + "bean": "1721864401777", + "lp": "219563796161", + "total": "1941428197938" + } + }, + "0x7D6A2f6D7C2F7Dd51C47b5EA9faA3ae208185eC7": { + "tokens": { + "bean": "3444582816", + "lp": "33551905523" + }, + "bdvAtSnapshot": { + "bean": "989408190", + "lp": "15795666738", + "total": "16785074928" + }, + "bdvAtRecapitalization": { + "bean": "3444582816", + "lp": "66240320128", + "total": "69684902944" + } + }, + "0x7cd5F8291eeB36D2998c703E7db2f94997fCB1F9": { + "tokens": { + "bean": "28657471412", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8231457458", + "lp": "0", + "total": "8231457458" + }, + "bdvAtRecapitalization": { + "bean": "28657471412", + "lp": "0", + "total": "28657471412" + } + }, + "0x7D6261b4F9e117964210A8EE3a741499679438a0": { + "tokens": { + "bean": "21582792708", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "6199355046", + "lp": "0", + "total": "6199355046" + }, + "bdvAtRecapitalization": { + "bean": "21582792708", + "lp": "2", + "total": "21582792710" + } + }, + "0x7D31bf47ddA62C185A057b4002f1235FC3c8ae82": { + "tokens": { + "bean": "400442104", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "115021388", + "lp": "0", + "total": "115021388" + }, + "bdvAtRecapitalization": { + "bean": "400442104", + "lp": "0", + "total": "400442104" + } + }, + "0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677": { + "tokens": { + "bean": "4", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "2", + "total": "6" + } + }, + "0x7D6de90cc5eFF4bEf577C928bed96c462c583d01": { + "tokens": { + "bean": "215760566", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "61974202", + "lp": "0", + "total": "61974202" + }, + "bdvAtRecapitalization": { + "bean": "215760566", + "lp": "0", + "total": "215760566" + } + }, + "0x7d50bfeAD43d4FDD47a8A61f32305b2dE21068Bd": { + "tokens": { + "bean": "2383", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "684", + "lp": "0", + "total": "684" + }, + "bdvAtRecapitalization": { + "bean": "2383", + "lp": "2", + "total": "2385" + } + }, + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0x7dE837cAff6A19898e507F644939939cB9341209": { + "tokens": { + "bean": "1", + "lp": "55328817887" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "26047866871", + "total": "26047866871" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "109233694839", + "total": "109233694840" + } + }, + "0x7E07bEeA829a859345A1e59074264E468dB2cf64": { + "tokens": { + "bean": "7631317", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2191989", + "lp": "0", + "total": "2191989" + }, + "bdvAtRecapitalization": { + "bean": "7631317", + "lp": "0", + "total": "7631317" + } + }, + "0x7eaF877B409740afa24226D4A448c980896Be795": { + "tokens": { + "bean": "704385697", + "lp": "1417568531" + }, + "bdvAtSnapshot": { + "bean": "202324930", + "lp": "667367166", + "total": "869692096" + }, + "bdvAtRecapitalization": { + "bean": "704385697", + "lp": "2798654557", + "total": "3503040254" + } + }, + "0x7F01A8B42a1243C705DBc74964125755833ef453": { + "tokens": { + "bean": "2940096088", + "lp": "48602029699" + }, + "bdvAtSnapshot": { + "bean": "844501440", + "lp": "22881009348", + "total": "23725510788" + }, + "bdvAtRecapitalization": { + "bean": "2940096088", + "lp": "95953238899", + "total": "98893334987" + } + }, + "0x7E860aBa712dAb899A00d1D30C7e05AC41FDF3f3": { + "tokens": { + "bean": "1076410135", + "lp": "11298306490" + }, + "bdvAtSnapshot": { + "bean": "309183742", + "lp": "5319050624", + "total": "5628234366" + }, + "bdvAtRecapitalization": { + "bean": "1076410135", + "lp": "22305840075", + "total": "23382250210" + } + }, + "0x7f538566f85310C901172142E8a9a892f0EAf946": { + "tokens": { + "bean": "279871539", + "lp": "9044685756" + }, + "bdvAtSnapshot": { + "bean": "80389181", + "lp": "4258084294", + "total": "4338473475" + }, + "bdvAtRecapitalization": { + "bean": "279871539", + "lp": "17856597728", + "total": "18136469267" + } + }, + "0x7F82e84C2021a311131e894ceFf475047deD4673": { + "tokens": { + "bean": "1", + "lp": "2641011666" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1243343395", + "total": "1243343395" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "5214054328", + "total": "5214054329" + } + }, + "0x7f5CCFb50D9087A572A80eC2585bdE8e0377625C": { + "tokens": { + "bean": "2499889775", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "718058339", + "lp": "0", + "total": "718058339" + }, + "bdvAtRecapitalization": { + "bean": "2499889775", + "lp": "0", + "total": "2499889775" + } + }, + "0x7F594CF111DADb003812729054050239101B4621": { + "tokens": { + "bean": "932026233", + "lp": "5849017024" + }, + "bdvAtSnapshot": { + "bean": "267711487", + "lp": "2753617782", + "total": "3021329269" + }, + "bdvAtRecapitalization": { + "bean": "932026233", + "lp": "11547503907", + "total": "12479530140" + } + }, + "0x7F81D5AF291481AFC4A9b5744286e7f49d20AFfF": { + "tokens": { + "bean": "122161343", + "lp": "4486771620" + }, + "bdvAtSnapshot": { + "bean": "35089136", + "lp": "2112295804", + "total": "2147384940" + }, + "bdvAtRecapitalization": { + "bean": "122161343", + "lp": "8858071809", + "total": "8980233152" + } + }, + "0x7F91212b8403ae7A7eaBe88C8eAf98002f0A3bD3": { + "tokens": { + "bean": "13593601707", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3904571780", + "lp": "0", + "total": "3904571780" + }, + "bdvAtRecapitalization": { + "bean": "13593601707", + "lp": "0", + "total": "13593601707" + } + }, + "0x7fD4969BE7ff75E9E8cd3dea6911c54367F03774": { + "tokens": { + "bean": "510447149", + "lp": "583811052" + }, + "bdvAtSnapshot": { + "bean": "146618797", + "lp": "274848318", + "total": "421467115" + }, + "bdvAtRecapitalization": { + "bean": "510447149", + "lp": "1152597159", + "total": "1663044308" + } + }, + "0x7fFadA80929a732f93D648D92cc4E052e2b9C4Aa": { + "tokens": { + "bean": "986739", + "lp": "10062869" + }, + "bdvAtSnapshot": { + "bean": "283427", + "lp": "4737428", + "total": "5020855" + }, + "bdvAtRecapitalization": { + "bean": "986739", + "lp": "19866760", + "total": "20853499" + } + }, + "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5": { + "tokens": { + "bean": "2868200006", + "lp": "101847015510" + }, + "bdvAtSnapshot": { + "bean": "823850297", + "lp": "47947843503", + "total": "48771693800" + }, + "bdvAtRecapitalization": { + "bean": "2868200006", + "lp": "201072899031", + "total": "203941099037" + } + }, + "0x807FE5922a2f5137601e8299A41055754EB83b21": { + "tokens": { + "bean": "39578784536", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "11368451755", + "lp": "0", + "total": "11368451755" + }, + "bdvAtRecapitalization": { + "bean": "39578784536", + "lp": "0", + "total": "39578784536" + } + }, + "0x808995E68A45b4D5a1ba61429882b47011E96c79": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x80077CB3B35A6c30DC354469f63e0743eeff32D4": { + "tokens": { + "bean": "66241669343", + "lp": "193175553224" + }, + "bdvAtSnapshot": { + "bean": "19026992135", + "lp": "90943766473", + "total": "109970758608" + }, + "bdvAtRecapitalization": { + "bean": "66241669343", + "lp": "381379545724", + "total": "447621215067" + } + }, + "0x80893D541770DDe1c33df10d9ab2035800BA0B03": { + "tokens": { + "bean": "250752868", + "lp": "5359506895" + }, + "bdvAtSnapshot": { + "bean": "72025251", + "lp": "2523164735", + "total": "2595189986" + }, + "bdvAtRecapitalization": { + "bean": "250752868", + "lp": "10581081668", + "total": "10831834536" + } + }, + "0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e": { + "tokens": { + "bean": "92829682527", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "26664026690", + "lp": "0", + "total": "26664026690" + }, + "bdvAtRecapitalization": { + "bean": "92829682527", + "lp": "2", + "total": "92829682529" + } + }, + "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81": { + "tokens": { + "bean": "100353511", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28825141", + "lp": "0", + "total": "28825141" + }, + "bdvAtRecapitalization": { + "bean": "100353511", + "lp": "0", + "total": "100353511" + } + }, + "0x804Be57907807794D4982Bf60F8b86e9010A1639": { + "tokens": { + "bean": "7587269463", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2179336931", + "lp": "0", + "total": "2179336931" + }, + "bdvAtRecapitalization": { + "bean": "7587269463", + "lp": "0", + "total": "7587269463" + } + }, + "0x80eC8c4e035A9A200155a3F8d3E5fD29b2d8Ca42": { + "tokens": { + "bean": "150682262", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "43281370", + "lp": "0", + "total": "43281370" + }, + "bdvAtRecapitalization": { + "bean": "150682262", + "lp": "0", + "total": "150682262" + } + }, + "0x80Fd357cAC78f7f70BDba65548e3b62982Eb31A7": { + "tokens": { + "bean": "349760027", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "100463671", + "lp": "0", + "total": "100463671" + }, + "bdvAtRecapitalization": { + "bean": "349760027", + "lp": "0", + "total": "349760027" + } + }, + "0x80f900994D69b9012CE551543d26ebb5A8ADd14C": { + "tokens": { + "bean": "2288820498", + "lp": "10850028097" + }, + "bdvAtSnapshot": { + "bean": "657431645", + "lp": "5108008778", + "total": "5765440423" + }, + "bdvAtRecapitalization": { + "bean": "2288820498", + "lp": "21420820169", + "total": "23709640667" + } + }, + "0x813de8BE827a526C271e5226AF912441d3b63700": { + "tokens": { + "bean": "1868106149", + "lp": "10255584645" + }, + "bdvAtSnapshot": { + "bean": "536587338", + "lp": "4828154906", + "total": "5364742244" + }, + "bdvAtRecapitalization": { + "bean": "1868106149", + "lp": "20247231846", + "total": "22115337995" + } + }, + "0x8110331DBad6e7907F60B8BBb0E1A3af3dDb4BBd": { + "tokens": { + "bean": "24987582", + "lp": "888206318" + }, + "bdvAtSnapshot": { + "bean": "7177333", + "lp": "418152435", + "total": "425329768" + }, + "bdvAtRecapitalization": { + "bean": "24987582", + "lp": "1753553783", + "total": "1778541365" + } + }, + "0x81704Bce89289F64a4295134791848AaCd975311": { + "tokens": { + "bean": "3", + "lp": "142289283" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "66987376", + "total": "66987377" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "280916613", + "total": "280916616" + } + }, + "0x81744feFDB94DE3A00DFE71623A63aB57BDED12E": { + "tokens": { + "bean": "933610225", + "lp": "5916943675" + }, + "bdvAtSnapshot": { + "bean": "268166467", + "lp": "2785596494", + "total": "3053762961" + }, + "bdvAtRecapitalization": { + "bean": "933610225", + "lp": "11681609050", + "total": "12615219275" + } + }, + "0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19": { + "tokens": { + "bean": "231701048", + "lp": "17578077072" + }, + "bdvAtSnapshot": { + "bean": "66552882", + "lp": "8275459858", + "total": "8342012740" + }, + "bdvAtRecapitalization": { + "bean": "231701048", + "lp": "34703765236", + "total": "34935466284" + } + }, + "0x820cE800B58C7FAad586a335FD57a866Cc61B463": { + "tokens": { + "bean": "35274168", + "lp": "1461965997" + }, + "bdvAtSnapshot": { + "bean": "10132011", + "lp": "688268738", + "total": "698400749" + }, + "bdvAtRecapitalization": { + "bean": "35274168", + "lp": "2886306877", + "total": "2921581045" + } + }, + "0x81F3C0A3115e4F115075eE079A48717c7dfdA800": { + "tokens": { + "bean": "31119542475", + "lp": "7334955188" + }, + "bdvAtSnapshot": { + "bean": "8938652902", + "lp": "3453172208", + "total": "12391825110" + }, + "bdvAtRecapitalization": { + "bean": "31119542475", + "lp": "14481138171", + "total": "45600680646" + } + }, + "0x820A2943762236e27A3a2C6ea1024117518895a5": { + "tokens": { + "bean": "25820269885", + "lp": "30000000001" + }, + "bdvAtSnapshot": { + "bean": "7416511041", + "lp": "14123490000", + "total": "21540001041" + }, + "bdvAtRecapitalization": { + "bean": "25820269885", + "lp": "59227920827", + "total": "85048190712" + } + }, + "0x81F45F896D8854007fd6E7C892A894804F8aD3cb": { + "tokens": { + "bean": "25891984561", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "7437110077", + "lp": "0", + "total": "7437110077" + }, + "bdvAtRecapitalization": { + "bean": "25891984561", + "lp": "2", + "total": "25891984563" + } + }, + "0x82353d5D94ef75145D57C5109e8aD54D00Ff2459": { + "tokens": { + "bean": "1398558142", + "lp": "14286833810" + }, + "bdvAtSnapshot": { + "bean": "401716246", + "lp": "6725998482", + "total": "7127714728" + }, + "bdvAtRecapitalization": { + "bean": "1398558142", + "lp": "28205982058", + "total": "29604540200" + } + }, + "0x828920Ee37fcF523a920290Fb9e23B3386382497": { + "tokens": { + "bean": "2540606518", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "729753654", + "lp": "0", + "total": "729753654" + }, + "bdvAtRecapitalization": { + "bean": "2540606518", + "lp": "0", + "total": "2540606518" + } + }, + "0x8242Cb3B1A95b20fF8c55ba280ECC6534e56Cdfd": { + "tokens": { + "bean": "419061180", + "lp": "6796598842" + }, + "bdvAtSnapshot": { + "bean": "120369457", + "lp": "3199723193", + "total": "3320092650" + }, + "bdvAtRecapitalization": { + "bean": "419061180", + "lp": "13418280603", + "total": "13837341783" + } + }, + "0x828E31517612208483C25Ba70e1cDC89d89987Df": { + "tokens": { + "bean": "15901272", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4567418", + "lp": "0", + "total": "4567418" + }, + "bdvAtRecapitalization": { + "bean": "15901272", + "lp": "0", + "total": "15901272" + } + }, + "0x82eEfC94a9364620dd207D51Bf01038947A06f83": { + "tokens": { + "bean": "714014536", + "lp": "2234074183" + }, + "bdvAtSnapshot": { + "bean": "205090679", + "lp": "1051764146", + "total": "1256854825" + }, + "bdvAtRecapitalization": { + "bean": "714014536", + "lp": "4410652294", + "total": "5124666830" + } + }, + "0x8308E27C711C3f3e52E9FF52d91cA22459cF7b03": { + "tokens": { + "bean": "810002476", + "lp": "41596462156" + }, + "bdvAtSnapshot": { + "bean": "232661871", + "lp": "19582907243", + "total": "19815569114" + }, + "bdvAtRecapitalization": { + "bean": "810002476", + "lp": "82122398906", + "total": "82932401382" + } + }, + "0x82F402847051BDdAAb0f5D4b481417281837c424": { + "tokens": { + "bean": "651576162", + "lp": "2258007622" + }, + "bdvAtSnapshot": { + "bean": "187156130", + "lp": "1063031602", + "total": "1250187732" + }, + "bdvAtRecapitalization": { + "bean": "651576162", + "lp": "4457903222", + "total": "5109479384" + } + }, + "0x82fcd7cD3151b0ab9e4c00629f123D45AD17FA73": { + "tokens": { + "bean": "2105369400", + "lp": "29625713506" + }, + "bdvAtSnapshot": { + "bean": "604737885", + "lp": "13947282281", + "total": "14552020166" + }, + "bdvAtRecapitalization": { + "bean": "2105369400", + "lp": "58488980464", + "total": "60594349864" + } + }, + "0x832fBA673d712fd5bC698a3326073D6674e57DF5": { + "tokens": { + "bean": "291229133", + "lp": "629482950" + }, + "bdvAtSnapshot": { + "bean": "83651491", + "lp": "296349872", + "total": "380001363" + }, + "bdvAtRecapitalization": { + "bean": "291229133", + "lp": "1242765544", + "total": "1533994677" + } + }, + "0x8311a050b6E3C7a36760458734Efbc777e4D49c6": { + "tokens": { + "bean": "2364939", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "679296", + "lp": "0", + "total": "679296" + }, + "bdvAtRecapitalization": { + "bean": "2364939", + "lp": "0", + "total": "2364939" + } + }, + "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751": { + "tokens": { + "bean": "3", + "lp": "41844885558" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "19699860758", + "total": "19699860759" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "82612852292", + "total": "82612852295" + } + }, + "0x8369E7900fF2359BB36eF1c40A60E5F76373A6ED": { + "tokens": { + "bean": "1798187736", + "lp": "3545690856" + }, + "bdvAtSnapshot": { + "bean": "516504253", + "lp": "1669250978", + "total": "2185755231" + }, + "bdvAtRecapitalization": { + "bean": "1798187736", + "lp": "7000129910", + "total": "8798317646" + } + }, + "0x8366bc75C14C481c93AaC21a11183807E1DE0630": { + "tokens": { + "bean": "13602185042", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "3907037223", + "lp": "0", + "total": "3907037223" + }, + "bdvAtRecapitalization": { + "bean": "13602185042", + "lp": "2", + "total": "13602185044" + } + }, + "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17": { + "tokens": { + "bean": "12887228052", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "3701675837", + "lp": "0", + "total": "3701675837" + }, + "bdvAtRecapitalization": { + "bean": "12887228052", + "lp": "2", + "total": "12887228054" + } + }, + "0x838b1287523F8e1B8E5443941f374b418B2DB4Bc": { + "tokens": { + "bean": "496200732", + "lp": "5715903224" + }, + "bdvAtSnapshot": { + "bean": "142526713", + "lp": "2690950068", + "total": "2833476781" + }, + "bdvAtRecapitalization": { + "bean": "496200732", + "lp": "11284702120", + "total": "11780902852" + } + }, + "0x8421D4871C9d29cbf533ccbE569D8F94531d8C70": { + "tokens": { + "bean": "477586263", + "lp": "4879376897" + }, + "bdvAtSnapshot": { + "bean": "137179968", + "lp": "2297127694", + "total": "2434307662" + }, + "bdvAtRecapitalization": { + "bean": "477586263", + "lp": "9633178284", + "total": "10110764547" + } + }, + "0x843f2C19bc6df9E32B482E2F9ad6C078001088b1": { + "tokens": { + "bean": "6", + "lp": "16742473269" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "7882071793", + "total": "7882071795" + }, + "bdvAtRecapitalization": { + "bean": "6", + "lp": "33054062707", + "total": "33054062713" + } + }, + "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D": { + "tokens": { + "bean": "244248200", + "lp": "2740918614" + }, + "bdvAtSnapshot": { + "bean": "70156876", + "lp": "1290377888", + "total": "1360534764" + }, + "bdvAtRecapitalization": { + "bean": "244248200", + "lp": "5411297022", + "total": "5655545222" + } + }, + "0x842411AE8a8B8eC37bAd5e63419740a2854E6527": { + "tokens": { + "bean": "140990509", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "40497550", + "lp": "0", + "total": "40497550" + }, + "bdvAtRecapitalization": { + "bean": "140990509", + "lp": "0", + "total": "140990509" + } + }, + "0x848aB321B59da42521D10c07c2453870b9850c8A": { + "tokens": { + "bean": "1", + "lp": "26685918" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "12563277", + "total": "12563277" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "52685048", + "total": "52685049" + } + }, + "0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b": { + "tokens": { + "bean": "313747868", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "90119683", + "lp": "0", + "total": "90119683" + }, + "bdvAtRecapitalization": { + "bean": "313747868", + "lp": "0", + "total": "313747868" + } + }, + "0x8456f07Bed6156863C2020816063Be79E3bDAB88": { + "tokens": { + "bean": "1358096925", + "lp": "2171423019" + }, + "bdvAtSnapshot": { + "bean": "390094328", + "lp": "1022269043", + "total": "1412363371" + }, + "bdvAtRecapitalization": { + "bean": "1358096925", + "lp": "4286962355", + "total": "5645059280" + } + }, + "0x850010F41EF5C2a3cf322B9Ab249DbdA7c72850B": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e": { + "tokens": { + "bean": "792802241", + "lp": "5272474160" + }, + "bdvAtSnapshot": { + "bean": "227721344", + "lp": "2482191202", + "total": "2709912546" + }, + "bdvAtRecapitalization": { + "bean": "792802241", + "lp": "10409256070", + "total": "11202058311" + } + }, + "0x83C9EC651027e061BcC39485c1Fb369297bD428c": { + "tokens": { + "bean": "481147422058", + "lp": "347787161137" + }, + "bdvAtSnapshot": { + "bean": "138202860922", + "lp": "163732283082", + "total": "301935144004" + }, + "bdvAtRecapitalization": { + "bean": "481147422058", + "lp": "686623681463", + "total": "1167771103521" + } + }, + "0x84747165e0100cD7f9BdeB37d771E8d139f49e14": { + "tokens": { + "bean": "552528039", + "lp": "485175271" + }, + "bdvAtSnapshot": { + "bean": "158705944", + "lp": "228412270", + "total": "387118214" + }, + "bdvAtRecapitalization": { + "bean": "552528039", + "lp": "957864085", + "total": "1510392124" + } + }, + "0x853AebEc29B1DABA31de05aD58738Ed1507D3b82": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0x85312D6a50928F3ffC7a192444601E6E04A428a2": { + "tokens": { + "bean": "1179375906", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "338759218", + "lp": "0", + "total": "338759218" + }, + "bdvAtRecapitalization": { + "bean": "1179375906", + "lp": "0", + "total": "1179375906" + } + }, + "0x85971eb6073d28edF8f013221071bDBB9DEdA1af": { + "tokens": { + "bean": "1300986481", + "lp": "1743175643" + }, + "bdvAtSnapshot": { + "bean": "373690153", + "lp": "820657459", + "total": "1194347612" + }, + "bdvAtRecapitalization": { + "bean": "1300986481", + "lp": "3441488966", + "total": "4742475447" + } + }, + "0x85789daB691cFb2f95118642d459E3301aC88ABA": { + "tokens": { + "bean": "13082483", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3757760", + "lp": "0", + "total": "3757760" + }, + "bdvAtRecapitalization": { + "bean": "13082483", + "lp": "0", + "total": "13082483" + } + }, + "0x85Eada0D605d905262687Ad74314bc95837dB4F9": { + "tokens": { + "bean": "1", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2", + "total": "3" + } + }, + "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008": { + "tokens": { + "bean": "102815", + "lp": "11519256" + }, + "bdvAtSnapshot": { + "bean": "29532", + "lp": "5423070", + "total": "5452602" + }, + "bdvAtRecapitalization": { + "bean": "102815", + "lp": "22742053", + "total": "22844868" + } + }, + "0x85d365405dFCfEeCDBD88A7c63476Ff976943C89": { + "tokens": { + "bean": "374672277", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "107619366", + "lp": "0", + "total": "107619366" + }, + "bdvAtRecapitalization": { + "bean": "374672277", + "lp": "0", + "total": "374672277" + } + }, + "0x861d7FCC4AbA8A082f266E01eaaE0767834db7D3": { + "tokens": { + "bean": "497341623", + "lp": "2715991918" + }, + "bdvAtSnapshot": { + "bean": "142854418", + "lp": "1278642823", + "total": "1421497241" + }, + "bdvAtRecapitalization": { + "bean": "497341623", + "lp": "5362085143", + "total": "5859426766" + } + }, + "0x8675C7bc738b4771D29bd0d984c6f397326c9eC2": { + "tokens": { + "bean": "580553996", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "166756008", + "lp": "0", + "total": "166756008" + }, + "bdvAtRecapitalization": { + "bean": "580553996", + "lp": "0", + "total": "580553996" + } + }, + "0x85bBE859d13c5311520167AAD51482672EEa654b": { + "tokens": { + "bean": "1284215945", + "lp": "42109416151" + }, + "bdvAtSnapshot": { + "bean": "368873051", + "lp": "19824397264", + "total": "20193270315" + }, + "bdvAtRecapitalization": { + "bean": "1284215945", + "lp": "83135105526", + "total": "84419321471" + } + }, + "0x867DAa0A6728c5281bD8DaDA98894381290E058F": { + "tokens": { + "bean": "4909819719", + "lp": "6215137569" + }, + "bdvAtSnapshot": { + "bean": "1410276977", + "lp": "2925981110", + "total": "4336258087" + }, + "bdvAtRecapitalization": { + "bean": "4909819719", + "lp": "12270322529", + "total": "17180142248" + } + }, + "0x867fE13b4dE1dCeA131e9cdE6a6b4848a13Ec469": { + "tokens": { + "bean": "161772206", + "lp": "5693459226" + }, + "bdvAtSnapshot": { + "bean": "46466801", + "lp": "2680383815", + "total": "2726850616" + }, + "bdvAtRecapitalization": { + "bean": "161772206", + "lp": "11240391742", + "total": "11402163948" + } + }, + "0x8639AFABa2631C7c09220B161D2b3d0d4764EF85": { + "tokens": { + "bean": "8324607", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2391127", + "lp": "0", + "total": "2391127" + }, + "bdvAtRecapitalization": { + "bean": "8324607", + "lp": "0", + "total": "8324607" + } + }, + "0x8683eeE814A51AE9A1f88666B086e57729A50885": { + "tokens": { + "bean": "307798510", + "lp": "739656732" + }, + "bdvAtSnapshot": { + "bean": "88410813", + "lp": "348217815", + "total": "436628628" + }, + "bdvAtRecapitalization": { + "bean": "307798510", + "lp": "1460277679", + "total": "1768076189" + } + }, + "0x86A41524CB61edd8B115A72Ad9735F8068996688": { + "tokens": { + "bean": "12103819883", + "lp": "5355095907" + }, + "bdvAtSnapshot": { + "bean": "3476652808", + "lp": "2521088116", + "total": "5997740924" + }, + "bdvAtRecapitalization": { + "bean": "12103819883", + "lp": "10572373213", + "total": "22676193096" + } + }, + "0x86d6facD0C3BD88C0e1e88b4802a8006ec46997b": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x87061D42aE66a7A7c181b8664EA53780146fd0e7": { + "tokens": { + "bean": "2616289167", + "lp": "18750681921" + }, + "bdvAtSnapshot": { + "bean": "751492435", + "lp": "8827502287", + "total": "9578994722" + }, + "bdvAtRecapitalization": { + "bean": "2616289167", + "lp": "37018796808", + "total": "39635085975" + } + }, + "0x86FAd5a4C85EA88C3A8cC433fdCfDA326C35CA34": { + "tokens": { + "bean": "300693775", + "lp": "2293519887" + }, + "bdvAtSnapshot": { + "bean": "86370077", + "lp": "1079750173", + "total": "1166120250" + }, + "bdvAtRecapitalization": { + "bean": "300693775", + "lp": "4528013809", + "total": "4828707584" + } + }, + "0x8723af66e4377dF827b9135B8bca3D4352d0f130": { + "tokens": { + "bean": "933281419", + "lp": "95240349189" + }, + "bdvAtSnapshot": { + "bean": "268072022", + "lp": "44837537312", + "total": "45105609334" + }, + "bdvAtRecapitalization": { + "bean": "933281419", + "lp": "188029595371", + "total": "188962876790" + } + }, + "0x87376f16268A0b93055A6FbcBe94f093cb589B81": { + "tokens": { + "bean": "204", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "59", + "lp": "0", + "total": "59" + }, + "bdvAtRecapitalization": { + "bean": "204", + "lp": "2", + "total": "206" + } + }, + "0x87316f7261E140273F5fC4162da578389070879F": { + "tokens": { + "bean": "8121716694", + "lp": "492065976" + }, + "bdvAtSnapshot": { + "bean": "2332849416", + "lp": "231656296", + "total": "2564505712" + }, + "bdvAtRecapitalization": { + "bean": "8121716694", + "lp": "971468156", + "total": "9093184850" + } + }, + "0x87546FA086F625961A900Dbfa953662449644492": { + "tokens": { + "bean": "401960656", + "lp": "23116369487" + }, + "bdvAtSnapshot": { + "bean": "115457571", + "lp": "10882793776", + "total": "10998251347" + }, + "bdvAtRecapitalization": { + "bean": "401960656", + "lp": "45637816725", + "total": "46039777381" + } + }, + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA": { + "tokens": { + "bean": "1606700454890", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "461502211861", + "lp": "0", + "total": "461502211861" + }, + "bdvAtRecapitalization": { + "bean": "1606700454890", + "lp": "2", + "total": "1606700454892" + } + }, + "0x877cEA592fd83Dcc76243636dedC31CA7ce46cE1": { + "tokens": { + "bean": "1094026697", + "lp": "15115823902" + }, + "bdvAtSnapshot": { + "bean": "314243852", + "lp": "7116272924", + "total": "7430516776" + }, + "bdvAtRecapitalization": { + "bean": "1094026697", + "lp": "29842627376", + "total": "30936654073" + } + }, + "0x87a62b0B5f0dcd16A3D92Fb19B188C9ff9F067C2": { + "tokens": { + "bean": "2875589344", + "lp": "13756975856" + }, + "bdvAtSnapshot": { + "bean": "825972781", + "lp": "6476550364", + "total": "7302523145" + }, + "bdvAtRecapitalization": { + "bean": "2875589344", + "lp": "27159902560", + "total": "30035491904" + } + }, + "0x87872F0514Dd26F88c775D975C6C6Cf0f0A95FE1": { + "tokens": { + "bean": "5", + "lp": "3242946623" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1526724140", + "total": "1526724141" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "6402432861", + "total": "6402432866" + } + }, + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x877F43de346B7B9de9d6e0675EB5Ab2B6D7A3730": { + "tokens": { + "bean": "115427033", + "lp": "9680380986" + }, + "bdvAtSnapshot": { + "bean": "33154799", + "lp": "4557358802", + "total": "4590513601" + }, + "bdvAtRecapitalization": { + "bean": "115427033", + "lp": "19111627953", + "total": "19227054986" + } + }, + "0x87b6c8734180d89A7c5497AB91854165d71fAD60": { + "tokens": { + "bean": "4754527359", + "lp": "1579743561" + }, + "bdvAtSnapshot": { + "bean": "1365671420", + "lp": "743716413", + "total": "2109387833" + }, + "bdvAtRecapitalization": { + "bean": "4754527359", + "lp": "3118830885", + "total": "7873358244" + } + }, + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45": { + "tokens": { + "bean": "0", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "4", + "total": "4" + } + }, + "0x87C5E5413d60E1419Fd70b17c6D299aA107EfB49": { + "tokens": { + "bean": "140058000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "40229699688", + "lp": "0", + "total": "40229699688" + }, + "bdvAtRecapitalization": { + "bean": "140058000000", + "lp": "0", + "total": "140058000000" + } + }, + "0x88673cb5439fE3Ea7eaA633C2E02fb07284e0765": { + "tokens": { + "bean": "38147", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "10957", + "lp": "0", + "total": "10957" + }, + "bdvAtRecapitalization": { + "bean": "38147", + "lp": "2", + "total": "38149" + } + }, + "0x8798C5Add2c42cE8E773a3104d23CA36b10c8C15": { + "tokens": { + "bean": "41275138214", + "lp": "60306234986" + }, + "bdvAtSnapshot": { + "bean": "11855705600", + "lp": "28391150225", + "total": "40246855825" + }, + "bdvAtRecapitalization": { + "bean": "41275138214", + "lp": "119060430367", + "total": "160335568581" + } + }, + "0x883a920EF16e9E270754623dC86885B8d4AA5A11": { + "tokens": { + "bean": "811759264", + "lp": "5511551707" + }, + "bdvAtSnapshot": { + "bean": "233166484", + "lp": "2594744847", + "total": "2827911331" + }, + "bdvAtRecapitalization": { + "bean": "811759264", + "lp": "10881258271", + "total": "11693017535" + } + }, + "0x88696C4985f64Ea1EBfb9E46c1B47197F7a244AB": { + "tokens": { + "bean": "85612060", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "24590866", + "lp": "0", + "total": "24590866" + }, + "bdvAtRecapitalization": { + "bean": "85612060", + "lp": "0", + "total": "85612060" + } + }, + "0x8890687b8042C08c7C09499FA5158D7AB9d326b5": { + "tokens": { + "bean": "102450952", + "lp": "3293379131" + }, + "bdvAtSnapshot": { + "bean": "29427602", + "lp": "1550466907", + "total": "1579894509" + }, + "bdvAtRecapitalization": { + "bean": "102450952", + "lp": "6501999947", + "total": "6604450899" + } + }, + "0x88cE2D4fB3cC542F0989d61A1c152fa137486d81": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x88b007D55D545737436741691f965Ca066E19e7f": { + "tokens": { + "bean": "23925412", + "lp": "592195565" + }, + "bdvAtSnapshot": { + "bean": "6872240", + "lp": "278795605", + "total": "285667845" + }, + "bdvAtRecapitalization": { + "bean": "23925412", + "lp": "1169150401", + "total": "1193075813" + } + }, + "0x88F09Bdc8e99272588242a808052eb32702f88D0": { + "tokens": { + "bean": "1146138189", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "329212149", + "lp": "0", + "total": "329212149" + }, + "bdvAtRecapitalization": { + "bean": "1146138189", + "lp": "0", + "total": "1146138189" + } + }, + "0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1": { + "tokens": { + "bean": "455310361", + "lp": "791463792" + }, + "bdvAtSnapshot": { + "bean": "130781527", + "lp": "372607698", + "total": "503389225" + }, + "bdvAtRecapitalization": { + "bean": "455310361", + "lp": "1562558494", + "total": "2017868855" + } + }, + "0x898ab6605409028c42399a6dc9C8ca8Ee164fE44": { + "tokens": { + "bean": "58858283", + "lp": "12432520760" + }, + "bdvAtSnapshot": { + "bean": "16906218", + "lp": "5853019421", + "total": "5869925639" + }, + "bdvAtRecapitalization": { + "bean": "58858283", + "lp": "24545078508", + "total": "24603936791" + } + }, + "0x8950D9117C136B29A9b1aE8cd38DB72226404243": { + "tokens": { + "bean": "5095067710", + "lp": "2739031334" + }, + "bdvAtSnapshot": { + "bean": "1463486869", + "lp": "1289489389", + "total": "2752976258" + }, + "bdvAtRecapitalization": { + "bean": "5095067710", + "lp": "5407571033", + "total": "10502638743" + } + }, + "0x8953738233d6236c4d03bCe5372e20f58BdaAEfE": { + "tokens": { + "bean": "13032028", + "lp": "39158859" + }, + "bdvAtSnapshot": { + "bean": "3743268", + "lp": "18435325", + "total": "22178593" + }, + "bdvAtRecapitalization": { + "bean": "13032028", + "lp": "77309927", + "total": "90341955" + } + }, + "0x891768B90Ea274e95B40a3a11437b0e98ae96493": { + "tokens": { + "bean": "1", + "lp": "3712698940" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1747875545", + "total": "1747875545" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "7329847962", + "total": "7329847963" + } + }, + "0x8926E5956d3b3fA844F945b26855c9fB958Da269": { + "tokens": { + "bean": "33184416", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "9531759", + "lp": "0", + "total": "9531759" + }, + "bdvAtRecapitalization": { + "bean": "33184416", + "lp": "0", + "total": "33184416" + } + }, + "0x88F667664E61221160ddc0414868eF2f40e83324": { + "tokens": { + "bean": "576199560", + "lp": "15787796110" + }, + "bdvAtSnapshot": { + "bean": "165505257", + "lp": "7432626016", + "total": "7598131273" + }, + "bdvAtRecapitalization": { + "bean": "576199560", + "lp": "31169277934", + "total": "31745477494" + } + }, + "0x898a3Af0b87DD21c3DbFDbd58E800c4BDe16a153": { + "tokens": { + "bean": "572984758", + "lp": "1507055003" + }, + "bdvAtSnapshot": { + "bean": "164581850", + "lp": "709495875", + "total": "874077725" + }, + "bdvAtRecapitalization": { + "bean": "572984758", + "lp": "2975324480", + "total": "3548309238" + } + }, + "0x898fF4Bab886E4E96F3F56B86692dD0DB204aC27": { + "tokens": { + "bean": "1149723854", + "lp": "9921285652" + }, + "bdvAtSnapshot": { + "bean": "330242081", + "lp": "4670772623", + "total": "5001014704" + }, + "bdvAtRecapitalization": { + "bean": "1149723854", + "lp": "19587237369", + "total": "20736961223" + } + }, + "0x8a342A60A20D1FF2abc119e87990A2799B187Be7": { + "tokens": { + "bean": "195593633", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "56181533", + "lp": "0", + "total": "56181533" + }, + "bdvAtRecapitalization": { + "bean": "195593633", + "lp": "0", + "total": "195593633" + } + }, + "0x8A30D3bb32291DBbB5F88F905433E499638387b7": { + "tokens": { + "bean": "161527606287", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "46396543519", + "lp": "0", + "total": "46396543519" + }, + "bdvAtRecapitalization": { + "bean": "161527606287", + "lp": "2", + "total": "161527606289" + } + }, + "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B": { + "tokens": { + "bean": "1", + "lp": "429865912" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "202373564", + "total": "202373564" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "848668807", + "total": "848668808" + } + }, + "0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9": { + "tokens": { + "bean": "2513293811", + "lp": "1410135563" + }, + "bdvAtSnapshot": { + "bean": "721908461", + "lp": "663867851", + "total": "1385776312" + }, + "bdvAtRecapitalization": { + "bean": "2513293811", + "lp": "2783979916", + "total": "5297273727" + } + }, + "0x8afcd552709BAC70a470EC1d137D535BFa4FAdEE": { + "tokens": { + "bean": "78365538823", + "lp": "31540569246" + }, + "bdvAtSnapshot": { + "bean": "22509403909", + "lp": "14848763811", + "total": "37358167720" + }, + "bdvAtRecapitalization": { + "bean": "78365538823", + "lp": "62269411270", + "total": "140634950093" + } + }, + "0x8AD30D5e981b4F7207A52Ed61B16639D02aA5a21": { + "tokens": { + "bean": "4926812720", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1415157978", + "lp": "0", + "total": "1415157978" + }, + "bdvAtRecapitalization": { + "bean": "4926812720", + "lp": "0", + "total": "4926812720" + } + }, + "0x8aC9DB9c51e0d077a2FA432868EaFd02d9142d53": { + "tokens": { + "bean": "4878280", + "lp": "87614" + }, + "bdvAtSnapshot": { + "bean": "1401218", + "lp": "41247", + "total": "1442465" + }, + "bdvAtRecapitalization": { + "bean": "4878280", + "lp": "172973", + "total": "5051253" + } + }, + "0x8b2DbfDeD8802A1AF686FeF45Dd9f7BABfd936a2": { + "tokens": { + "bean": "81753677", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "23482599", + "lp": "0", + "total": "23482599" + }, + "bdvAtRecapitalization": { + "bean": "81753677", + "lp": "0", + "total": "81753677" + } + }, + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF": { + "tokens": { + "bean": "5", + "lp": "66216432083" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "31173570545", + "total": "31173570546" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "130728719892", + "total": "130728719897" + } + }, + "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048": { + "tokens": { + "bean": "92236339", + "lp": "1010277069" + }, + "bdvAtSnapshot": { + "bean": "26493597", + "lp": "475621269", + "total": "502114866" + }, + "bdvAtRecapitalization": { + "bean": "92236339", + "lp": "1994553675", + "total": "2086790014" + } + }, + "0x8b8Bd62E0729692B7400137B6bBC815c2cE07bcF": { + "tokens": { + "bean": "1", + "lp": "2860081842" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1346477910", + "total": "1346477910" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "5646556696", + "total": "5646556697" + } + }, + "0x8B79D14316cf2317C61b4Ab66448d0529E5Fc024": { + "tokens": { + "bean": "1046151712", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "300492433", + "lp": "0", + "total": "300492433" + }, + "bdvAtRecapitalization": { + "bean": "1046151712", + "lp": "0", + "total": "1046151712" + } + }, + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72": { + "tokens": { + "bean": "11365245584", + "lp": "775210576" + }, + "bdvAtSnapshot": { + "bean": "3264507681", + "lp": "364955961", + "total": "3629463642" + }, + "bdvAtRecapitalization": { + "bean": "11365245584", + "lp": "1530470354", + "total": "12895715938" + } + }, + "0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5": { + "tokens": { + "bean": "87533512", + "lp": "267631824" + }, + "bdvAtSnapshot": { + "bean": "25142776", + "lp": "125996513", + "total": "151139289" + }, + "bdvAtRecapitalization": { + "bean": "87533512", + "lp": "528375883", + "total": "615909395" + } + }, + "0x8b08CA521FFbb87263Af2C6145E173c16576802d": { + "tokens": { + "bean": "2129067757", + "lp": "3085733799" + }, + "bdvAtSnapshot": { + "bean": "611544906", + "lp": "1452711015", + "total": "2064255921" + }, + "bdvAtRecapitalization": { + "bean": "2129067757", + "lp": "6092053238", + "total": "8221120995" + } + }, + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612": { + "tokens": { + "bean": "17703941192", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5085209252", + "lp": "0", + "total": "5085209252" + }, + "bdvAtRecapitalization": { + "bean": "17703941192", + "lp": "0", + "total": "17703941192" + } + }, + "0x8be275DE1AF323ec3b146aB683A3aCd772A13648": { + "tokens": { + "bean": "155624277786", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "44700895054", + "lp": "0", + "total": "44700895054" + }, + "bdvAtRecapitalization": { + "bean": "155624277786", + "lp": "2", + "total": "155624277788" + } + }, + "0x8Bb62eF3fdB47bB7c60e7bcdF3AA79d969a8bE9C": { + "tokens": { + "bean": "18601934", + "lp": "7844563274" + }, + "bdvAtSnapshot": { + "bean": "5343145", + "lp": "3693087032", + "total": "3698430177" + }, + "bdvAtRecapitalization": { + "bean": "18601934", + "lp": "15487239083", + "total": "15505841017" + } + }, + "0x8Bea73Aac4F7EF9dadeD46359A544F0BB2d1364F": { + "tokens": { + "bean": "882175040", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "253392430", + "lp": "0", + "total": "253392430" + }, + "bdvAtRecapitalization": { + "bean": "882175040", + "lp": "2", + "total": "882175042" + } + }, + "0x8BB07e694B421433c9545C0F3d75d99cc763d74A": { + "tokens": { + "bean": "39333411851", + "lp": "24237688444" + }, + "bdvAtSnapshot": { + "bean": "11297971886", + "lp": "11410691679", + "total": "22708663565" + }, + "bdvAtRecapitalization": { + "bean": "39333411851", + "lp": "47851596405", + "total": "87185008256" + } + }, + "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE": { + "tokens": { + "bean": "77113888", + "lp": "678249872" + }, + "bdvAtSnapshot": { + "bean": "22149885", + "lp": "319308509", + "total": "341458394" + }, + "bdvAtRecapitalization": { + "bean": "77113888", + "lp": "1339044324", + "total": "1416158212" + } + }, + "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1": { + "tokens": { + "bean": "653007167", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "187567167", + "lp": "0", + "total": "187567167" + }, + "bdvAtRecapitalization": { + "bean": "653007167", + "lp": "0", + "total": "653007167" + } + }, + "0x8C39f76b8A25563d84D8bbad76443b0E9CbB3D01": { + "tokens": { + "bean": "3446506992", + "lp": "249765142611" + }, + "bdvAtSnapshot": { + "bean": "989960882", + "lp": "117585183134", + "total": "118575144016" + }, + "bdvAtRecapitalization": { + "bean": "3446506992", + "lp": "493102336383", + "total": "496548843375" + } + }, + "0x8c809670Ab1d2b9013954ECA0445c0DF621Cf8eF": { + "tokens": { + "bean": "41636396741", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "11959472054", + "lp": "0", + "total": "11959472054" + }, + "bdvAtRecapitalization": { + "bean": "41636396741", + "lp": "0", + "total": "41636396741" + } + }, + "0x8d1c3018d6EC8Dc3BFb8c85250787f0b4F745e43": { + "tokens": { + "bean": "687930895", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "197598519", + "lp": "0", + "total": "197598519" + }, + "bdvAtRecapitalization": { + "bean": "687930895", + "lp": "0", + "total": "687930895" + } + }, + "0x8cc956430A4cbeC784524C0F187ccA3a4583aD83": { + "tokens": { + "bean": "50246238", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14432528", + "lp": "0", + "total": "14432528" + }, + "bdvAtRecapitalization": { + "bean": "50246238", + "lp": "0", + "total": "50246238" + } + }, + "0x8c919F4128c9e7a1D82ee94A1916D12A9C073bb4": { + "tokens": { + "bean": "1", + "lp": "12945422006" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "6094484608", + "total": "6094484608" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "25557680987", + "total": "25557680988" + } + }, + "0x8d3D6458a80669Eb74726B2EB23B9169083a51F1": { + "tokens": { + "bean": "1764393960", + "lp": "9285451492" + }, + "bdvAtSnapshot": { + "bean": "506797463", + "lp": "4371432710", + "total": "4878230173" + }, + "bdvAtRecapitalization": { + "bean": "1764393960", + "lp": "18331932860", + "total": "20096326820" + } + }, + "0x8D02496FA58682DB85034bCCCfE7Dd190000422e": { + "tokens": { + "bean": "705803163", + "lp": "8702562604" + }, + "bdvAtSnapshot": { + "bean": "202732077", + "lp": "4097018530", + "total": "4299750607" + }, + "bdvAtRecapitalization": { + "bean": "705803163", + "lp": "17181156296", + "total": "17886959459" + } + }, + "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9": { + "tokens": { + "bean": "284383552", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "81685194", + "lp": "0", + "total": "81685194" + }, + "bdvAtRecapitalization": { + "bean": "284383552", + "lp": "0", + "total": "284383552" + } + }, + "0x8d5380a08b8010F14DC13FC1cFF655152e30998A": { + "tokens": { + "bean": "258848768", + "lp": "6861315705" + }, + "bdvAtSnapshot": { + "bean": "74350685", + "lp": "3230190792", + "total": "3304541477" + }, + "bdvAtRecapitalization": { + "bean": "258848768", + "lp": "13546048778", + "total": "13804897546" + } + }, + "0x8D5A64B827724bE1A36EC0482381aE47905C6f08": { + "tokens": { + "bean": "798331355", + "lp": "8782363068" + }, + "bdvAtSnapshot": { + "bean": "229309505", + "lp": "4134587232", + "total": "4363896737" + }, + "bdvAtRecapitalization": { + "bean": "798331355", + "lp": "17338703482", + "total": "18137034837" + } + }, + "0x8cB2E021b8B00a023F66107962dDFf94BF873BF7": { + "tokens": { + "bean": "145902592", + "lp": "1987588774" + }, + "bdvAtSnapshot": { + "bean": "41908477", + "lp": "935723006", + "total": "977631483" + }, + "bdvAtRecapitalization": { + "bean": "145902592", + "lp": "3924025018", + "total": "4069927610" + } + }, + "0x8D06Ffb1500343975571cC0240152C413d803778": { + "tokens": { + "bean": "11920596396", + "lp": "100155182243" + }, + "bdvAtSnapshot": { + "bean": "3424024426", + "lp": "47151357162", + "total": "50575381588" + }, + "bdvAtRecapitalization": { + "bean": "11920596396", + "lp": "197732773471", + "total": "209653369867" + } + }, + "0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D": { + "tokens": { + "bean": "21560", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6193", + "lp": "0", + "total": "6193" + }, + "bdvAtRecapitalization": { + "bean": "21560", + "lp": "0", + "total": "21560" + } + }, + "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8": { + "tokens": { + "bean": "138919452", + "lp": "601503655" + }, + "bdvAtSnapshot": { + "bean": "39902668", + "lp": "283177695", + "total": "323080363" + }, + "bdvAtRecapitalization": { + "bean": "138919452", + "lp": "1187527028", + "total": "1326446480" + } + }, + "0x8D8603aF066dFF5e6E83E44ca42e0A900fE9c221": { + "tokens": { + "bean": "366486417", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "105268092", + "lp": "0", + "total": "105268092" + }, + "bdvAtRecapitalization": { + "bean": "366486417", + "lp": "0", + "total": "366486417" + } + }, + "0x8d9261369E3BFba715F63303236C324D2E3C44eC": { + "tokens": { + "bean": "896416144466", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "257482987672", + "lp": "0", + "total": "257482987672" + }, + "bdvAtRecapitalization": { + "bean": "896416144466", + "lp": "2", + "total": "896416144468" + } + }, + "0x8Db89388FA485c6b85074140B865C946Dc23f652": { + "tokens": { + "bean": "195975798", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "56291304", + "lp": "0", + "total": "56291304" + }, + "bdvAtRecapitalization": { + "bean": "195975798", + "lp": "0", + "total": "195975798" + } + }, + "0x8E41d0A4465Ed01E0941a31f254FcE0862d8c8C1": { + "tokens": { + "bean": "3005301239", + "lp": "12401858702" + }, + "bdvAtSnapshot": { + "bean": "863230707", + "lp": "5838584245", + "total": "6701814952" + }, + "bdvAtRecapitalization": { + "bean": "3005301239", + "lp": "24484543510", + "total": "27489844749" + } + }, + "0x8e5cdd1fAeBEAe48b2b2b05d874de75AE7ad720f": { + "tokens": { + "bean": "998081343", + "lp": "1664723007" + }, + "bdvAtSnapshot": { + "bean": "286684893", + "lp": "783723291", + "total": "1070408184" + }, + "bdvAtRecapitalization": { + "bean": "998081343", + "lp": "3286602748", + "total": "4284684091" + } + }, + "0x8Db5e5A0D431A21e1824788F3AE0a6C1b388c88d": { + "tokens": { + "bean": "826109876", + "lp": "4766213179" + }, + "bdvAtSnapshot": { + "bean": "237288496", + "lp": "2243852139", + "total": "2481140635" + }, + "bdvAtRecapitalization": { + "bean": "826109876", + "lp": "9409763227", + "total": "10235873103" + } + }, + "0x8E32736429d2F0a39179214C826DeeF5B8A37861": { + "tokens": { + "bean": "698804941", + "lp": "9743486847" + }, + "bdvAtSnapshot": { + "bean": "200721936", + "lp": "4587067968", + "total": "4787789904" + }, + "bdvAtRecapitalization": { + "bean": "698804941", + "lp": "19236215585", + "total": "19935020526" + } + }, + "0x8E22B0945051f9ca957923490FffC42732A602bb": { + "tokens": { + "bean": "1", + "lp": "1393491050763" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "656031897351", + "total": "656031897351" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2751119254178", + "total": "2751119254179" + } + }, + "0x8e653fFf3466368A47879C2775F78070B30226ad": { + "tokens": { + "bean": "7289861498", + "lp": "105009493336" + }, + "bdvAtSnapshot": { + "bean": "2093910657", + "lp": "49436684301", + "total": "51530594958" + }, + "bdvAtRecapitalization": { + "bean": "7289861498", + "lp": "207316465240", + "total": "214606326738" + } + }, + "0x8e84bA411f07E08Cf5580d14F33bf0Bd6bC303fF": { + "tokens": { + "bean": "42732302", + "lp": "198959904" + }, + "bdvAtSnapshot": { + "bean": "12274255", + "lp": "93666940", + "total": "105941195" + }, + "bdvAtRecapitalization": { + "bean": "42732302", + "lp": "392799381", + "total": "435531683" + } + }, + "0x8E8A5fb89F6Ab165F982fA4869b7d3aCD3E4eBfE": { + "tokens": { + "bean": "646192136", + "lp": "40717978295" + }, + "bdvAtSnapshot": { + "bean": "185609644", + "lp": "19169331976", + "total": "19354941620" + }, + "bdvAtRecapitalization": { + "bean": "646192136", + "lp": "80388039821", + "total": "81034231957" + } + }, + "0x8eB354f1CBb0AB7ef0D038883b4c1065e008453F": { + "tokens": { + "bean": "814228940", + "lp": "6903547050" + }, + "bdvAtSnapshot": { + "bean": "233875864", + "lp": "3250072591", + "total": "3483948455" + }, + "bdvAtRecapitalization": { + "bean": "814228940", + "lp": "13629424603", + "total": "14443653543" + } + }, + "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6": { + "tokens": { + "bean": "4300000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1235114800", + "lp": "0", + "total": "1235114800" + }, + "bdvAtRecapitalization": { + "bean": "4300000000", + "lp": "0", + "total": "4300000000" + } + }, + "0x8eCb6912d43a0e096501dEb215FE553DB89966dE": { + "tokens": { + "bean": "24402113120", + "lp": "522886218" + }, + "bdvAtSnapshot": { + "bean": "7009165364", + "lp": "246165942", + "total": "7255331306" + }, + "bdvAtRecapitalization": { + "bean": "24402113120", + "lp": "1032315451", + "total": "25434428571" + } + }, + "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051": { + "tokens": { + "bean": "26321748362", + "lp": "21170809323" + }, + "bdvAtSnapshot": { + "bean": "7560553713", + "lp": "9966857126", + "total": "17527410839" + }, + "bdvAtRecapitalization": { + "bean": "26321748362", + "lp": "41796767280", + "total": "68118515642" + } + }, + "0x8EFef6B061bdA1a1712DB316E059CBc8eBDCAE4D": { + "tokens": { + "bean": "2821297", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "810378", + "lp": "0", + "total": "810378" + }, + "bdvAtRecapitalization": { + "bean": "2821297", + "lp": "0", + "total": "2821297" + } + }, + "0x8f1076Ad980585af2B207bF4f81eB2334f025f9b": { + "tokens": { + "bean": "342790884", + "lp": "1506591598" + }, + "bdvAtSnapshot": { + "bean": "98461882", + "lp": "709277712", + "total": "807739594" + }, + "bdvAtRecapitalization": { + "bean": "342790884", + "lp": "2974409596", + "total": "3317200480" + } + }, + "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3": { + "tokens": { + "bean": "367480335", + "lp": "2963100805" + }, + "bdvAtSnapshot": { + "bean": "105553582", + "lp": "1394977486", + "total": "1500531068" + }, + "bdvAtRecapitalization": { + "bean": "367480335", + "lp": "5849943329", + "total": "6217423664" + } + }, + "0x8EDEDfe975Ee132A3A034483b2734CdA183153d7": { + "tokens": { + "bean": "39", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "11", + "lp": "0", + "total": "11" + }, + "bdvAtRecapitalization": { + "bean": "39", + "lp": "0", + "total": "39" + } + }, + "0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab": { + "tokens": { + "bean": "3858714913", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1108361837", + "lp": "0", + "total": "1108361837" + }, + "bdvAtRecapitalization": { + "bean": "3858714913", + "lp": "0", + "total": "3858714913" + } + }, + "0x8f3466B326F8A365e4193245255CC2A95DFF6406": { + "tokens": { + "bean": "4796065185", + "lp": "1024582812" + }, + "bdvAtSnapshot": { + "bean": "1377602579", + "lp": "482356170", + "total": "1859958749" + }, + "bdvAtRecapitalization": { + "bean": "4796065185", + "lp": "2022796989", + "total": "6818862174" + } + }, + "0x8F9f529978f487cb7E0D4C60AE99de5C9Af1ce2e": { + "tokens": { + "bean": "738415098", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "212099399", + "lp": "0", + "total": "212099399" + }, + "bdvAtRecapitalization": { + "bean": "738415098", + "lp": "0", + "total": "738415098" + } + }, + "0x8F21151D98052eC4250f41632798716695Fb6F52": { + "tokens": { + "bean": "4375069473", + "lp": "35582430791" + }, + "bdvAtSnapshot": { + "bean": "1256677455", + "lp": "16751603515", + "total": "18008280970" + }, + "bdvAtRecapitalization": { + "bean": "4375069473", + "lp": "70249113122", + "total": "74624182595" + } + }, + "0x8FdD0CF22012a5FEcDbF77eF30d9e9834DC1bf0A": { + "tokens": { + "bean": "64109780", + "lp": "8012602927" + }, + "bdvAtSnapshot": { + "bean": "18414637", + "lp": "3772197244", + "total": "3790611881" + }, + "bdvAtRecapitalization": { + "bean": "64109780", + "lp": "15818993725", + "total": "15883103505" + } + }, + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x9023a931b49D21ba4e51803b584fAC9EA4d91f67": { + "tokens": { + "bean": "76302312680", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "21916771085", + "lp": "0", + "total": "21916771085" + }, + "bdvAtRecapitalization": { + "bean": "76302312680", + "lp": "0", + "total": "76302312680" + } + }, + "0x90a69b1a180f60c0059f149577919c778cE2b9e1": { + "tokens": { + "bean": "5", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "2", + "total": "7" + } + }, + "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2": { + "tokens": { + "bean": "900927996", + "lp": "1940064556" + }, + "bdvAtSnapshot": { + "bean": "258778954", + "lp": "913349412", + "total": "1172128366" + }, + "bdvAtRecapitalization": { + "bean": "900927996", + "lp": "3830199664", + "total": "4731127660" + } + }, + "0x90111E5EfF22fFE04c137C2ceb03bCD28A959b60": { + "tokens": { + "bean": "49908504", + "lp": "1013562084" + }, + "bdvAtSnapshot": { + "bean": "14335519", + "lp": "477167799", + "total": "491503318" + }, + "bdvAtRecapitalization": { + "bean": "49908504", + "lp": "2001039162", + "total": "2050947666" + } + }, + "0x90Bd317F53EE82fe824eD077fe93d05EF7295d5c": { + "tokens": { + "bean": "310502721", + "lp": "719792751" + }, + "bdvAtSnapshot": { + "bean": "89187560", + "lp": "338866191", + "total": "428053751" + }, + "bdvAtRecapitalization": { + "bean": "310502721", + "lp": "1421060936", + "total": "1731563657" + } + }, + "0x8Fe316B09c8F570Fd00F1172665d1327a2c74c7E": { + "tokens": { + "bean": "42288752", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12146852", + "lp": "0", + "total": "12146852" + }, + "bdvAtRecapitalization": { + "bean": "42288752", + "lp": "0", + "total": "42288752" + } + }, + "0x90F15E09B8Fb5BC080B968170C638920Db3A3446": { + "tokens": { + "bean": "10480461742", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "3010365909", + "lp": "0", + "total": "3010365909" + }, + "bdvAtRecapitalization": { + "bean": "10480461742", + "lp": "2", + "total": "10480461744" + } + }, + "0x90Fe1AD4F312DCCE621389fc73A06dCcfD923211": { + "tokens": { + "bean": "925783", + "lp": "91585452115" + }, + "bdvAtSnapshot": { + "bean": "265918", + "lp": "43116873903", + "total": "43117139821" + }, + "bdvAtRecapitalization": { + "bean": "925783", + "lp": "180813863554", + "total": "180814789337" + } + }, + "0x8fE7261B58A691e40F7A21D38D27965E2d3AFd6E": { + "tokens": { + "bean": "1798092862", + "lp": "58799943357" + }, + "bdvAtSnapshot": { + "bean": "516477001", + "lp": "27682013733", + "total": "28198490734" + }, + "bdvAtRecapitalization": { + "bean": "1798092862", + "lp": "116086612989", + "total": "117884705851" + } + }, + "0x912Bf1C92e0A6D9c81dA5E8cDC86250b9c7D501b": { + "tokens": { + "bean": "55511644", + "lp": "55561284" + }, + "bdvAtSnapshot": { + "bean": "15944943", + "lp": "26157308", + "total": "42102251" + }, + "bdvAtRecapitalization": { + "bean": "55511644", + "lp": "109692644", + "total": "165204288" + } + }, + "0x912F852EB064C6cD74037B76987a8D4a8877F428": { + "tokens": { + "bean": "179822892", + "lp": "9987749590" + }, + "bdvAtSnapshot": { + "bean": "51651608", + "lp": "4702062715", + "total": "4753714323" + }, + "bdvAtRecapitalization": { + "bean": "179822892", + "lp": "19718454731", + "total": "19898277623" + } + }, + "0x91e795eB6a2307eDe1A0eeDe84e6F0914f60a9C3": { + "tokens": { + "bean": "5", + "lp": "66029820610" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "31085717036", + "total": "31085717037" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "130360299573", + "total": "130360299578" + } + }, + "0x91953b70d0861309f7D3A429A1CF82C8353132Be": { + "tokens": { + "bean": "6763", + "lp": "61671815392" + }, + "bdvAtSnapshot": { + "bean": "1943", + "lp": "29034042266", + "total": "29034044209" + }, + "bdvAtRecapitalization": { + "bean": "6763", + "lp": "121756446640", + "total": "121756453403" + } + }, + "0x9201cB516D87eD1EEBA072808EE8ac4a7894086d": { + "tokens": { + "bean": "4444638", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1276660", + "lp": "0", + "total": "1276660" + }, + "bdvAtRecapitalization": { + "bean": "4444638", + "lp": "0", + "total": "4444638" + } + }, + "0x91d60813323A8795e098b127c8ec9b2aD0F70dA1": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x920ba6012447697b61b71480b05Bf965566D019D": { + "tokens": { + "bean": "560579188", + "lp": "12058945462" + }, + "bdvAtSnapshot": { + "bean": "161018524", + "lp": "5677146521", + "total": "5838165045" + }, + "bdvAtRecapitalization": { + "bean": "560579188", + "lp": "23807542235", + "total": "24368121423" + } + }, + "0x923CC3D985cE69a254458001097012cb33FAb601": { + "tokens": { + "bean": "42889", + "lp": "3063891938" + }, + "bdvAtSnapshot": { + "bean": "12319", + "lp": "1442428238", + "total": "1442440557" + }, + "bdvAtRecapitalization": { + "bean": "42889", + "lp": "6048931637", + "total": "6048974526" + } + }, + "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA": { + "tokens": { + "bean": "2480", + "lp": "69747938471" + }, + "bdvAtSnapshot": { + "bean": "712", + "lp": "32836143717", + "total": "32836144429" + }, + "bdvAtRecapitalization": { + "bean": "2480", + "lp": "137700845916", + "total": "137700848396" + } + }, + "0x9241089cf848cB30c6020EE25Cd6a2b28c626744": { + "tokens": { + "bean": "120784068", + "lp": "4051829394" + }, + "bdvAtSnapshot": { + "bean": "34693533", + "lp": "1907532398", + "total": "1942225931" + }, + "bdvAtRecapitalization": { + "bean": "120784068", + "lp": "7999381018", + "total": "8120165086" + } + }, + "0x91e2127Ac041da6aC322b6492Fd8872D0860aFE9": { + "tokens": { + "bean": "315461804", + "lp": "170021750" + }, + "bdvAtSnapshot": { + "bean": "90611987", + "lp": "80043350", + "total": "170655337" + }, + "bdvAtRecapitalization": { + "bean": "315461804", + "lp": "335667825", + "total": "651129629" + } + }, + "0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB": { + "tokens": { + "bean": "8499348127", + "lp": "11148151814" + }, + "bdvAtSnapshot": { + "bean": "2441318759", + "lp": "5248360355", + "total": "7689679114" + }, + "bdvAtRecapitalization": { + "bean": "8499348127", + "lp": "22009395100", + "total": "30508743227" + } + }, + "0x935A937903d18f98A705803DC3c5F07277fAb1B6": { + "tokens": { + "bean": "170183052", + "lp": "677374588" + }, + "bdvAtSnapshot": { + "bean": "48882699", + "lp": "318896441", + "total": "367779140" + }, + "bdvAtRecapitalization": { + "bean": "170183052", + "lp": "1337316282", + "total": "1507499334" + } + }, + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1": { + "tokens": { + "bean": "12964908341", + "lp": "207020624956" + }, + "bdvAtSnapshot": { + "bean": "3723988412", + "lp": "97461790879", + "total": "101185779291" + }, + "bdvAtRecapitalization": { + "bean": "12964908341", + "lp": "408713372803", + "total": "421678281144" + } + }, + "0x930836bA4242071FEa039732ff8bf18B8401403E": { + "tokens": { + "bean": "22838586540", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "6560064243", + "lp": "0", + "total": "6560064243" + }, + "bdvAtRecapitalization": { + "bean": "22838586540", + "lp": "2", + "total": "22838586542" + } + }, + "0x9392e42722ACDa954984590b243eB358582991aA": { + "tokens": { + "bean": "3", + "lp": "6473071960" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3047412237", + "total": "3047412238" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "12779553118", + "total": "12779553121" + } + }, + "0x93Aa01eAb7F9D6C8511A4a873FEa19073334c004": { + "tokens": { + "bean": "21730836", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6241878", + "lp": "0", + "total": "6241878" + }, + "bdvAtRecapitalization": { + "bean": "21730836", + "lp": "0", + "total": "21730836" + } + }, + "0x939B4fCCf5A9f1De3d8aB1429Ff4CBa901bD286f": { + "tokens": { + "bean": "514236318", + "lp": "2575580241" + }, + "bdvAtSnapshot": { + "bean": "147707183", + "lp": "1212539393", + "total": "1360246576" + }, + "bdvAtRecapitalization": { + "bean": "514236318", + "lp": "5084875420", + "total": "5599111738" + } + }, + "0x92D29e49e9fD72AB2A620885Cc3f160274fA2B8b": { + "tokens": { + "bean": "4", + "lp": "4863498326" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "2289652332", + "total": "2289652333" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "9601829793", + "total": "9601829797" + } + }, + "0x93BfBA47375856Ca59FF5d920dbD16899836CF34": { + "tokens": { + "bean": "45698405", + "lp": "238774922" + }, + "bdvAtSnapshot": { + "bean": "13126227", + "lp": "112411174", + "total": "125537401" + }, + "bdvAtRecapitalization": { + "bean": "45698405", + "lp": "471404739", + "total": "517103144" + } + }, + "0x940baBb7377036989509Ec55D03FfD7c87CaC6a7": { + "tokens": { + "bean": "415001", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "119203", + "lp": "0", + "total": "119203" + }, + "bdvAtRecapitalization": { + "bean": "415001", + "lp": "0", + "total": "415001" + } + }, + "0x940476d877C2DBcC055D315707758860431494b0": { + "tokens": { + "bean": "12704732801", + "lp": "36870892728" + }, + "bdvAtSnapshot": { + "bean": "3649256631", + "lp": "17358189491", + "total": "21007446122" + }, + "bdvAtRecapitalization": { + "bean": "12704732801", + "lp": "72792877175", + "total": "85497609976" + } + }, + "0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f": { + "tokens": { + "bean": "278000324", + "lp": "749244747" + }, + "bdvAtSnapshot": { + "bean": "79851701", + "lp": "352731690", + "total": "432583391" + }, + "bdvAtRecapitalization": { + "bean": "278000324", + "lp": "1479206952", + "total": "1757207276" + } + }, + "0x94d29Be06f423738f96A5E67A2627B4876098Cdc": { + "tokens": { + "bean": "2043", + "lp": "6504120934" + }, + "bdvAtSnapshot": { + "bean": "587", + "lp": "3062029566", + "total": "3062030153" + }, + "bdvAtRecapitalization": { + "bean": "2043", + "lp": "12840851991", + "total": "12840854034" + } + }, + "0x94A5582f35643Fb7B0C5B1DAB23B0057b2AD01f9": { + "tokens": { + "bean": "324963129", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "93341109", + "lp": "0", + "total": "93341109" + }, + "bdvAtRecapitalization": { + "bean": "324963129", + "lp": "0", + "total": "324963129" + } + }, + "0x947992B897642F19E921d73a3900914f2fC9AC36": { + "tokens": { + "bean": "249903386", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "71781249", + "lp": "0", + "total": "71781249" + }, + "bdvAtRecapitalization": { + "bean": "249903386", + "lp": "0", + "total": "249903386" + } + }, + "0x9383E26556018f0E14D8255C5020d58b3f480Dac": { + "tokens": { + "bean": "117120704984", + "lp": "20447873078" + }, + "bdvAtSnapshot": { + "bean": "33641282817", + "lp": "9626511031", + "total": "43267793848" + }, + "bdvAtRecapitalization": { + "bean": "117120704984", + "lp": "40369500257", + "total": "157490205241" + } + }, + "0x93d4E7442F62028ca0a44df7712c2d202dc214B9": { + "tokens": { + "bean": "36372262129", + "lp": "10128170852" + }, + "bdvAtSnapshot": { + "bean": "10447423085", + "lp": "4768170658", + "total": "15215593743" + }, + "bdvAtRecapitalization": { + "bean": "36372262129", + "lp": "19995683378", + "total": "56367945507" + } + }, + "0x94e179dEF45b2B377610eE915aC513BA17685151": { + "tokens": { + "bean": "3098547733", + "lp": "47957313" + }, + "bdvAtSnapshot": { + "bean": "890014457", + "lp": "22577488", + "total": "912591945" + }, + "bdvAtRecapitalization": { + "bean": "3098547733", + "lp": "94680398", + "total": "3193228131" + } + }, + "0x94F335a00F00d79b26336Fa1c77bAb6ae96F08c5": { + "tokens": { + "bean": "106322258456", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "30539580230", + "lp": "0", + "total": "30539580230" + }, + "bdvAtRecapitalization": { + "bean": "106322258456", + "lp": "0", + "total": "106322258456" + } + }, + "0x951b928F2a8ba7CE14Cc418cfEBfeE30A57294c3": { + "tokens": { + "bean": "68259250", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "19606514", + "lp": "0", + "total": "19606514" + }, + "bdvAtRecapitalization": { + "bean": "68259250", + "lp": "0", + "total": "68259250" + } + }, + "0x94fDfEA0f8E66f245D242796b735B6070D52F6dD": { + "tokens": { + "bean": "1468036343", + "lp": "20882303688" + }, + "bdvAtSnapshot": { + "bean": "421672887", + "lp": "9831033577", + "total": "10252706464" + }, + "bdvAtRecapitalization": { + "bean": "1468036343", + "lp": "41227180983", + "total": "42695217326" + } + }, + "0x95603220F8245535385037C3Cd9819ebCf818866": { + "tokens": { + "bean": "2871", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "825", + "lp": "0", + "total": "825" + }, + "bdvAtRecapitalization": { + "bean": "2871", + "lp": "2", + "total": "2873" + } + }, + "0x956a64CF19B231d887d6579711a2367aE6d0D30e": { + "tokens": { + "bean": "524544008", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "150667923", + "lp": "0", + "total": "150667923" + }, + "bdvAtRecapitalization": { + "bean": "524544008", + "lp": "0", + "total": "524544008" + } + }, + "0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa": { + "tokens": { + "bean": "16640713", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4779812", + "lp": "0", + "total": "4779812" + }, + "bdvAtRecapitalization": { + "bean": "16640713", + "lp": "0", + "total": "16640713" + } + }, + "0x93be7761f4C7153BC462a50f9Eb5eB424c39c2CD": { + "tokens": { + "bean": "23882456101", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "6859901161", + "lp": "0", + "total": "6859901161" + }, + "bdvAtRecapitalization": { + "bean": "23882456101", + "lp": "2", + "total": "23882456103" + } + }, + "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5": { + "tokens": { + "bean": "6311992406", + "lp": "2153942370" + }, + "bdvAtSnapshot": { + "bean": "1813031451", + "lp": "1014039451", + "total": "2827070902" + }, + "bdvAtRecapitalization": { + "bean": "6311992406", + "lp": "4252450938", + "total": "10564443344" + } + }, + "0x956BE972E8D16709D321b8C57Bce7E5f021fBE9E": { + "tokens": { + "bean": "12352229137", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3548004888", + "lp": "0", + "total": "3548004888" + }, + "bdvAtRecapitalization": { + "bean": "12352229137", + "lp": "0", + "total": "12352229137" + } + }, + "0x95D1C6ecb2951e3111333C987f8A0d939A9b7b09": { + "tokens": { + "bean": "2235", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "642", + "lp": "0", + "total": "642" + }, + "bdvAtRecapitalization": { + "bean": "2235", + "lp": "2", + "total": "2237" + } + }, + "0x968E24C15a30d6Ff1B67f590c1c3A7fCeCb5C3fd": { + "tokens": { + "bean": "6954815", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1997673", + "lp": "0", + "total": "1997673" + }, + "bdvAtRecapitalization": { + "bean": "6954815", + "lp": "0", + "total": "6954815" + } + }, + "0x9599BF29Df5B7491C8cf7602b8C05157DbB784bF": { + "tokens": { + "bean": "5785367797", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1661765905", + "lp": "0", + "total": "1661765905" + }, + "bdvAtRecapitalization": { + "bean": "5785367797", + "lp": "0", + "total": "5785367797" + } + }, + "0x9664ca3827D81694aaf1b4C93891dE770A9340cf": { + "tokens": { + "bean": "2480", + "lp": "683993" + }, + "bdvAtSnapshot": { + "bean": "712", + "lp": "322012", + "total": "322724" + }, + "bdvAtRecapitalization": { + "bean": "2480", + "lp": "1350383", + "total": "1352863" + } + }, + "0x96C53DBE55a62287ea4E53360635cAF1CCCE467d": { + "tokens": { + "bean": "15520508826", + "lp": "5811611570" + }, + "bdvAtSnapshot": { + "bean": "4458048873", + "lp": "2736007930", + "total": "7194056803" + }, + "bdvAtRecapitalization": { + "bean": "15520508826", + "lp": "11473655665", + "total": "26994164491" + } + }, + "0x971b4a65048319cc9843DfdBDC8Aa97AD47Ef19d": { + "tokens": { + "bean": "590353895", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "169570891", + "lp": "0", + "total": "169570891" + }, + "bdvAtRecapitalization": { + "bean": "590353895", + "lp": "0", + "total": "590353895" + } + }, + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb": { + "tokens": { + "bean": "30908177316", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "8877941220", + "lp": "0", + "total": "8877941220" + }, + "bdvAtRecapitalization": { + "bean": "30908177316", + "lp": "2", + "total": "30908177318" + } + }, + "0x9728444E6414E39d0F7F5389ca129B8abb4cB492": { + "tokens": { + "bean": "1313381190253", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "377250359564", + "lp": "1", + "total": "377250359565" + }, + "bdvAtRecapitalization": { + "bean": "1313381190253", + "lp": "4", + "total": "1313381190257" + } + }, + "0x970668Ec67fA074AED4Aea7727543904B22eE53f": { + "tokens": { + "bean": "2146497381", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "616551322", + "lp": "0", + "total": "616551322" + }, + "bdvAtRecapitalization": { + "bean": "2146497381", + "lp": "0", + "total": "2146497381" + } + }, + "0x9777dAaBf322d38af7A49A66dC55F3086127baeA": { + "tokens": { + "bean": "396352460", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "113846695", + "lp": "0", + "total": "113846695" + }, + "bdvAtRecapitalization": { + "bean": "396352460", + "lp": "0", + "total": "396352460" + } + }, + "0x97acbfFcAAdb2578602B539872d9AC5eB991761a": { + "tokens": { + "bean": "13220520", + "lp": "95188618" + }, + "bdvAtSnapshot": { + "bean": "3797409", + "lp": "44813183", + "total": "48610592" + }, + "bdvAtRecapitalization": { + "bean": "13220520", + "lp": "187927464", + "total": "201147984" + } + }, + "0x96D9eBF8c3440b91aD2b51bD5107A495ca0513E5": { + "tokens": { + "bean": "1778659950", + "lp": "681238986" + }, + "bdvAtSnapshot": { + "bean": "510895169", + "lp": "320715734", + "total": "831610903" + }, + "bdvAtRecapitalization": { + "bean": "1778659950", + "lp": "1344945624", + "total": "3123605574" + } + }, + "0x97E89f88407d375cCF90eC1B710B5A914eB784Af": { + "tokens": { + "bean": "273333415", + "lp": "1962288932" + }, + "bdvAtSnapshot": { + "bean": "78511197", + "lp": "923812270", + "total": "1002323467" + }, + "bdvAtRecapitalization": { + "bean": "273333415", + "lp": "3874076450", + "total": "4147409865" + } + }, + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A": { + "tokens": { + "bean": "616893375", + "lp": "2816820999" + }, + "bdvAtSnapshot": { + "bean": "177193985", + "lp": "1326111440", + "total": "1503305425" + }, + "bdvAtRecapitalization": { + "bean": "616893375", + "lp": "5561148370", + "total": "6178041745" + } + }, + "0x98056e817220A4d16d4392a95CD48306acEd1f76": { + "tokens": { + "bean": "655779704", + "lp": "8196269042" + }, + "bdvAtSnapshot": { + "bean": "188363539", + "lp": "3858664128", + "total": "4047027667" + }, + "bdvAtRecapitalization": { + "bean": "655779704", + "lp": "16181599129", + "total": "16837378833" + } + }, + "0x985314FbAf1Dac0a5Afb649AbeD69D8a32aeBee7": { + "tokens": { + "bean": "16101525559", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4624937795", + "lp": "0", + "total": "4624937795" + }, + "bdvAtRecapitalization": { + "bean": "16101525559", + "lp": "0", + "total": "16101525559" + } + }, + "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1": { + "tokens": { + "bean": "31076972791", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "8926425357", + "lp": "1", + "total": "8926425358" + }, + "bdvAtRecapitalization": { + "bean": "31076972791", + "lp": "4", + "total": "31076972795" + } + }, + "0x981793123af0E6126BEf8c8277Fdffec80eB13fd": { + "tokens": { + "bean": "9947643376", + "lp": "49258228183" + }, + "bdvAtSnapshot": { + "bean": "2857321293", + "lp": "23189936439", + "total": "26047257732" + }, + "bdvAtRecapitalization": { + "bean": "9947643376", + "lp": "97248747961", + "total": "107196391337" + } + }, + "0x989252fE804c3C1b15908C364AA5cDa791030067": { + "tokens": { + "bean": "2", + "lp": "11285257524" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "5312907393", + "total": "5312907394" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "22280077971", + "total": "22280077973" + } + }, + "0x98a692316057e74B9297D53a61b4916d253c9ea6": { + "tokens": { + "bean": "3434053113", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "986383680", + "lp": "0", + "total": "986383680" + }, + "bdvAtRecapitalization": { + "bean": "3434053113", + "lp": "0", + "total": "3434053113" + } + }, + "0x987C5f96524059F591244F930279346fFaF900B6": { + "tokens": { + "bean": "1046658", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "300638", + "lp": "0", + "total": "300638" + }, + "bdvAtRecapitalization": { + "bean": "1046658", + "lp": "0", + "total": "1046658" + } + }, + "0x989c235D8302fe906A84D076C24e51c1A7D44E3C": { + "tokens": { + "bean": "172825475", + "lp": "16489026891" + }, + "bdvAtSnapshot": { + "bean": "49641698", + "lp": "7762753547", + "total": "7812395245" + }, + "bdvAtRecapitalization": { + "bean": "172825475", + "lp": "32553692640", + "total": "32726518115" + } + }, + "0x988fB2064B42a13eb556DF79077e23AA4924aF20": { + "tokens": { + "bean": "14880752854", + "lp": "11008236974" + }, + "bdvAtSnapshot": { + "bean": "4274287927", + "lp": "5182490827", + "total": "9456778754" + }, + "bdvAtRecapitalization": { + "bean": "14880752854", + "lp": "21733166264", + "total": "36613919118" + } + }, + "0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221": { + "tokens": { + "bean": "462393679", + "lp": "3189394197" + }, + "bdvAtSnapshot": { + "bean": "132816111", + "lp": "1501512568", + "total": "1634328679" + }, + "bdvAtRecapitalization": { + "bean": "462393679", + "lp": "6296706233", + "total": "6759099912" + } + }, + "0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60": { + "tokens": { + "bean": "9850791388", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2829501915", + "lp": "0", + "total": "2829501915" + }, + "bdvAtRecapitalization": { + "bean": "9850791388", + "lp": "0", + "total": "9850791388" + } + }, + "0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b": { + "tokens": { + "bean": "2", + "lp": "610977779" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "287637952", + "total": "287637953" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "1206231451", + "total": "1206231453" + } + }, + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA": { + "tokens": { + "bean": "1225976145162", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "352144484032", + "lp": "0", + "total": "352144484032" + }, + "bdvAtRecapitalization": { + "bean": "1225976145162", + "lp": "2", + "total": "1225976145164" + } + }, + "0x99e8845841BDe89e148663A6420a98C47e15EbCe": { + "tokens": { + "bean": "39700541435", + "lp": "201728196769" + }, + "bdvAtSnapshot": { + "bean": "11403424720", + "lp": "94970205660", + "total": "106373630380" + }, + "bdvAtRecapitalization": { + "bean": "39700541435", + "lp": "398264722215", + "total": "437965263650" + } + }, + "0x9a2F1b23aE1979976939A75F36c6593408098F9e": { + "tokens": { + "bean": "2081559", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "597899", + "lp": "0", + "total": "597899" + }, + "bdvAtRecapitalization": { + "bean": "2081559", + "lp": "0", + "total": "2081559" + } + }, + "0x995D1e4e2807Ef2A8d7614B607A89be096313916": { + "tokens": { + "bean": "1", + "lp": "410790" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "193393", + "total": "193393" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "811008", + "total": "811009" + } + }, + "0x9a37d222322e75e40D90EC8127fB85dd4E63949B": { + "tokens": { + "bean": "22464751637", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6452685401", + "lp": "0", + "total": "6452685401" + }, + "bdvAtRecapitalization": { + "bean": "22464751637", + "lp": "0", + "total": "22464751637" + } + }, + "0x9a3E11097F77c403C36Dd8761B8b7328A2cd6D0C": { + "tokens": { + "bean": "156225571", + "lp": "507534850" + }, + "bdvAtSnapshot": { + "bean": "44873608", + "lp": "238938779", + "total": "283812387" + }, + "bdvAtRecapitalization": { + "bean": "156225571", + "lp": "1002007797", + "total": "1158233368" + } + }, + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f": { + "tokens": { + "bean": "170860287079", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "49077225419", + "lp": "0", + "total": "49077225419" + }, + "bdvAtRecapitalization": { + "bean": "170860287079", + "lp": "2", + "total": "170860287081" + } + }, + "0x9A9f7885a9a0b9EFD48D1eAFA17e2E633f89E609": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F": { + "tokens": { + "bean": "9001888", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2585666", + "lp": "0", + "total": "2585666" + }, + "bdvAtRecapitalization": { + "bean": "9001888", + "lp": "2", + "total": "9001890" + } + }, + "0x9af623bE3d125536929F8978233622A7BFc3feF4": { + "tokens": { + "bean": "73411768", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "21086503", + "lp": "0", + "total": "21086503" + }, + "bdvAtRecapitalization": { + "bean": "73411768", + "lp": "0", + "total": "73411768" + } + }, + "0x9bA956e1C9417cA7223DE8684619414D5dFFD9e2": { + "tokens": { + "bean": "3330316692", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "956586845", + "lp": "0", + "total": "956586845" + }, + "bdvAtRecapitalization": { + "bean": "3330316692", + "lp": "0", + "total": "3330316692" + } + }, + "0x9b1F139298b71Fa95e42FA37C82542599AeBa24c": { + "tokens": { + "bean": "115021629", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "33038353", + "lp": "0", + "total": "33038353" + }, + "bdvAtRecapitalization": { + "bean": "115021629", + "lp": "0", + "total": "115021629" + } + }, + "0x9b54ede44B624e057aA948308e0C10D91BFD59E6": { + "tokens": { + "bean": "9078", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2608", + "lp": "0", + "total": "2608" + }, + "bdvAtRecapitalization": { + "bean": "9078", + "lp": "0", + "total": "9078" + } + }, + "0x9B7D7c4ce98036c4d6F3D638a00e220e083116c7": { + "tokens": { + "bean": "14974038", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4301083", + "lp": "0", + "total": "4301083" + }, + "bdvAtRecapitalization": { + "bean": "14974038", + "lp": "0", + "total": "14974038" + } + }, + "0x9b3C1fF2066ea1be0fD05ebF722f2492d8b810Fd": { + "tokens": { + "bean": "16804275", + "lp": "2014761462" + }, + "bdvAtSnapshot": { + "bean": "4826793", + "lp": "948515445", + "total": "953342238" + }, + "bdvAtRecapitalization": { + "bean": "16804275", + "lp": "3977671078", + "total": "3994475353" + } + }, + "0x9B4888F3B901a22f7534B60CBd28013897eEc3Fb": { + "tokens": { + "bean": "0", + "lp": "64674800000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "30447796368", + "total": "30447796368" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "127685131126", + "total": "127685131126" + } + }, + "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F": { + "tokens": { + "bean": "726303538", + "lp": "1242342416" + }, + "bdvAtSnapshot": { + "bean": "208620523", + "lp": "584873690", + "total": "793494213" + }, + "bdvAtRecapitalization": { + "bean": "726303538", + "lp": "2452711942", + "total": "3179015480" + } + }, + "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb": { + "tokens": { + "bean": "119789878", + "lp": "16505944611" + }, + "bdvAtSnapshot": { + "bean": "34407965", + "lp": "7770718122", + "total": "7805126087" + }, + "bdvAtRecapitalization": { + "bean": "119789878", + "lp": "32587092686", + "total": "32706882564" + } + }, + "0x9Bb70bf2938A667cA6f039DB35B925e3d3Eb9885": { + "tokens": { + "bean": "472532465", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "135728335", + "lp": "0", + "total": "135728335" + }, + "bdvAtRecapitalization": { + "bean": "472532465", + "lp": "0", + "total": "472532465" + } + }, + "0x9BD25e549Ea9568569b132c1dc308eF3aEadC297": { + "tokens": { + "bean": "11417801199", + "lp": "96868914060" + }, + "bdvAtSnapshot": { + "bean": "3279603545", + "lp": "45604237968", + "total": "48883841513" + }, + "bdvAtRecapitalization": { + "bean": "11417801199", + "lp": "191244812413", + "total": "202662613612" + } + }, + "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C": { + "tokens": { + "bean": "1116184315", + "lp": "13414660535" + }, + "bdvAtSnapshot": { + "bean": "320608318", + "lp": "6315394131", + "total": "6636002449" + }, + "bdvAtRecapitalization": { + "bean": "1116184315", + "lp": "26484081736", + "total": "27600266051" + } + }, + "0x9C3Da668A27f58A60d937447E0A539b48321F04d": { + "tokens": { + "bean": "88979089", + "lp": "4198262745" + }, + "bdvAtSnapshot": { + "bean": "25557998", + "lp": "1976470730", + "total": "2002028728" + }, + "bdvAtRecapitalization": { + "bean": "88979089", + "lp": "8288479115", + "total": "8377458204" + } + }, + "0x9C529180015F78e13288831A2Cf06Da2e9304271": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0x9c211891aFFB1ce6CF8A3e537efbF2f948162204": { + "tokens": { + "bean": "6892791091", + "lp": "30183750573" + }, + "bdvAtSnapshot": { + "bean": "1979857742", + "lp": "14209996646", + "total": "16189854388" + }, + "bdvAtRecapitalization": { + "bean": "6892791091", + "lp": "59590692972", + "total": "66483484063" + } + }, + "0x9C8623E1244fA3FB56Ed855aeAcCF97A4371FfE0": { + "tokens": { + "bean": "14076844064", + "lp": "1267810279" + }, + "bdvAtSnapshot": { + "bean": "4043376382", + "lp": "596863527", + "total": "4640239909" + }, + "bdvAtRecapitalization": { + "bean": "14076844064", + "lp": "2502992228", + "total": "16579836292" + } + }, + "0x9c695f16975b57f730727F30f399d110cFc71f10": { + "tokens": { + "bean": "170406833017", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "48946977088", + "lp": "1", + "total": "48946977089" + }, + "bdvAtRecapitalization": { + "bean": "170406833017", + "lp": "4", + "total": "170406833021" + } + }, + "0x9c7871F95e0b98BF84B70ffF7550BfA4683c7a56": { + "tokens": { + "bean": "3582329087", + "lp": "3655276366" + }, + "bdvAtSnapshot": { + "bean": "1028973878", + "lp": "1720841973", + "total": "2749815851" + }, + "bdvAtRecapitalization": { + "bean": "3582329087", + "lp": "7216480640", + "total": "10798809727" + } + }, + "0x9c9A3328B789EC3581FaaA230054072dC4D27C57": { + "tokens": { + "bean": "1100865658", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "316208248", + "lp": "0", + "total": "316208248" + }, + "bdvAtRecapitalization": { + "bean": "1100865658", + "lp": "0", + "total": "1100865658" + } + }, + "0x9CD661Bb06117974B4EA6db90583C2B14E7cAf0f": { + "tokens": { + "bean": "1286582", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "369553", + "lp": "0", + "total": "369553" + }, + "bdvAtRecapitalization": { + "bean": "1286582", + "lp": "0", + "total": "1286582" + } + }, + "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753": { + "tokens": { + "bean": "56421539831", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "16206297415", + "lp": "0", + "total": "16206297415" + }, + "bdvAtRecapitalization": { + "bean": "56421539831", + "lp": "2", + "total": "56421539833" + } + }, + "0x9D0242F554D6785c109D09FD0e9026Ff705bC390": { + "tokens": { + "bean": "5015545629", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1440645264", + "lp": "0", + "total": "1440645264" + }, + "bdvAtRecapitalization": { + "bean": "5015545629", + "lp": "0", + "total": "5015545629" + } + }, + "0x9CdF7Ca37Db491c34931E6084694A11Be758Ddd0": { + "tokens": { + "bean": "1873682971", + "lp": "121842740440" + }, + "bdvAtSnapshot": { + "bean": "538189202", + "lp": "57361490873", + "total": "57899680075" + }, + "bdvAtRecapitalization": { + "bean": "1873682971", + "lp": "240549739464", + "total": "242423422435" + } + }, + "0x9D3Ff6F8Da7a77A15926Fab609AD18963c8c461B": { + "tokens": { + "bean": "710859366", + "lp": "4439239225" + }, + "bdvAtSnapshot": { + "bean": "204184401", + "lp": "2089918360", + "total": "2294102761" + }, + "bdvAtRecapitalization": { + "bean": "710859366", + "lp": "8764230311", + "total": "9475089677" + } + }, + "0x9E097E8999AFFab83e502C91Db8a52e12Ed8fd25": { + "tokens": { + "bean": "372252832", + "lp": "14687413742" + }, + "bdvAtSnapshot": { + "bean": "106924414", + "lp": "6914584704", + "total": "7021509118" + }, + "bdvAtRecapitalization": { + "bean": "372252832", + "lp": "28996832608", + "total": "29369085440" + } + }, + "0x9e5d8933DdB758992b153ccD72924E30e20737A5": { + "tokens": { + "bean": "508302292", + "lp": "6872200947" + }, + "bdvAtSnapshot": { + "bean": "146002717", + "lp": "3235315378", + "total": "3381318095" + }, + "bdvAtRecapitalization": { + "bean": "508302292", + "lp": "13567539119", + "total": "14075841411" + } + }, + "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196": { + "tokens": { + "bean": "17269896713", + "lp": "30203488206" + }, + "bdvAtSnapshot": { + "bean": "4960536052", + "lp": "14219288788", + "total": "19179824840" + }, + "bdvAtRecapitalization": { + "bean": "17269896713", + "lp": "59629660270", + "total": "76899556983" + } + }, + "0x9e8Caff2218E77befdc62Ea6D18ABd1493F96B9a": { + "tokens": { + "bean": "4", + "lp": "316949539" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "149214455", + "total": "149214456" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "625742073", + "total": "625742077" + } + }, + "0x9eaE1fC640064c1f4786E569Ced40975441FBfd6": { + "tokens": { + "bean": "1456245441", + "lp": "1157936909" + }, + "bdvAtSnapshot": { + "bean": "418286115", + "lp": "545137012", + "total": "963423127" + }, + "bdvAtRecapitalization": { + "bean": "1456245441", + "lp": "2286073186", + "total": "3742318627" + } + }, + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698": { + "tokens": { + "bean": "485741479", + "lp": "1305496564" + }, + "bdvAtSnapshot": { + "bean": "139522439", + "lp": "614605589", + "total": "754128028" + }, + "bdvAtRecapitalization": { + "bean": "485741479", + "lp": "2577394904", + "total": "3063136383" + } + }, + "0x9D6bA8738Dd587114C895ECD40623fc319e1BB99": { + "tokens": { + "bean": "94278620", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "27080214", + "lp": "0", + "total": "27080214" + }, + "bdvAtRecapitalization": { + "bean": "94278620", + "lp": "0", + "total": "94278620" + } + }, + "0x9E0CB69Ae6A5aD4eB870EB18D051eFE642eD7db4": { + "tokens": { + "bean": "1736127928670", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "498678441719", + "lp": "0", + "total": "498678441719" + }, + "bdvAtRecapitalization": { + "bean": "1736127928670", + "lp": "0", + "total": "1736127928670" + } + }, + "0x9ebAd4282b772F8cc1181A2cB29D5240363D18B8": { + "tokens": { + "bean": "673558254", + "lp": "4664994968" + }, + "bdvAtSnapshot": { + "bean": "193470179", + "lp": "2196200326", + "total": "2389670505" + }, + "bdvAtRecapitalization": { + "bean": "673558254", + "lp": "9209931754", + "total": "9883490008" + } + }, + "0x9eE09Cb5fe9Eb306897f387DA09dB1C8C9F4627f": { + "tokens": { + "bean": "84897846", + "lp": "154320219" + }, + "bdvAtSnapshot": { + "bean": "24385718", + "lp": "72651336", + "total": "97037054" + }, + "bdvAtRecapitalization": { + "bean": "84897846", + "lp": "304668857", + "total": "389566703" + } + }, + "0x9eD7029086dEB3Ea14D8F42efee988e4205cC4d9": { + "tokens": { + "bean": "29", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8", + "lp": "0", + "total": "8" + }, + "bdvAtRecapitalization": { + "bean": "29", + "lp": "0", + "total": "29" + } + }, + "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE": { + "tokens": { + "bean": "17200000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4940459200", + "lp": "0", + "total": "4940459200" + }, + "bdvAtRecapitalization": { + "bean": "17200000000", + "lp": "0", + "total": "17200000000" + } + }, + "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E": { + "tokens": { + "bean": "2254983", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "647712", + "lp": "0", + "total": "647712" + }, + "bdvAtRecapitalization": { + "bean": "2254983", + "lp": "0", + "total": "2254983" + } + }, + "0x9F1F4714d07859DD4C8D1312881A0700Ed1C2A7e": { + "tokens": { + "bean": "4", + "lp": "20171732148" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "9496508576", + "total": "9496508577" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "39824325152", + "total": "39824325156" + } + }, + "0x9fA9761089aF6B720eB544319c5b2BDA2500C56D": { + "tokens": { + "bean": "3336353560", + "lp": "19760560850" + }, + "bdvAtSnapshot": { + "bean": "958320851", + "lp": "9302936119", + "total": "10261256970" + }, + "bdvAtRecapitalization": { + "bean": "3336353560", + "lp": "39012564450", + "total": "42348918010" + } + }, + "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c": { + "tokens": { + "bean": "253145630", + "lp": "6286227634" + }, + "bdvAtSnapshot": { + "bean": "72712538", + "lp": "2959449104", + "total": "3032161642" + }, + "bdvAtRecapitalization": { + "bean": "253145630", + "lp": "12410673087", + "total": "12663818717" + } + }, + "0x9F64674CAb93986254c6329C4521c4F9737Af864": { + "tokens": { + "bean": "416492632150", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "119631677688", + "lp": "0", + "total": "119631677688" + }, + "bdvAtRecapitalization": { + "bean": "416492632150", + "lp": "0", + "total": "416492632150" + } + }, + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282": { + "tokens": { + "bean": "0", + "lp": "846734" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "398628", + "total": "398628" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "1671676", + "total": "1671676" + } + }, + "0xa03E8d9688844146867dEcb457A7308853699016": { + "tokens": { + "bean": "1004117376", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "288418659", + "lp": "0", + "total": "288418659" + }, + "bdvAtRecapitalization": { + "bean": "1004117376", + "lp": "0", + "total": "1004117376" + } + }, + "0x9FE670cCD3a7A9f8152C1B090F8097F6fA1E5E03": { + "tokens": { + "bean": "1660304", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "476899", + "lp": "0", + "total": "476899" + }, + "bdvAtRecapitalization": { + "bean": "1660304", + "lp": "0", + "total": "1660304" + } + }, + "0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc": { + "tokens": { + "bean": "10199802033", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2929750337", + "lp": "0", + "total": "2929750337" + }, + "bdvAtRecapitalization": { + "bean": "10199802033", + "lp": "0", + "total": "10199802033" + } + }, + "0xA073C8A00485B2f072906cB5c9f07b1ce88D9d87": { + "tokens": { + "bean": "2935866915", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "843286669", + "lp": "0", + "total": "843286669" + }, + "bdvAtRecapitalization": { + "bean": "2935866915", + "lp": "0", + "total": "2935866915" + } + }, + "0xA05eb807023B8d784dD144bd9E9Cc2b4e1A30333": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0x9ffA3393287131D85d632D0f34385Eebb7E7caA0": { + "tokens": { + "bean": "23308782417", + "lp": "7300820694" + }, + "bdvAtSnapshot": { + "bean": "6695121426", + "lp": "3437102269", + "total": "10132223695" + }, + "bdvAtRecapitalization": { + "bean": "23308782417", + "lp": "14413747667", + "total": "37722530084" + } + }, + "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e": { + "tokens": { + "bean": "3", + "lp": "40817592294" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "19216228553", + "total": "19216228554" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "80584704156", + "total": "80584704159" + } + }, + "0xA0F0287683E820FF4211e67C03cf46a87431f4E1": { + "tokens": { + "bean": "23940466252", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6876563764", + "lp": "0", + "total": "6876563764" + }, + "bdvAtRecapitalization": { + "bean": "23940466252", + "lp": "0", + "total": "23940466252" + } + }, + "0xA0df63b73f3B8D4a8cE353833848D672e65Ad818": { + "tokens": { + "bean": "101436178", + "lp": "214025206" + }, + "bdvAtSnapshot": { + "bean": "29136122", + "lp": "100759429", + "total": "129895551" + }, + "bdvAtRecapitalization": { + "bean": "101436178", + "lp": "422542265", + "total": "523978443" + } + }, + "0xA14EDe51540df9d540CE6A9B5327bFDAfB2150e9": { + "tokens": { + "bean": "2866", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "823", + "lp": "0", + "total": "823" + }, + "bdvAtRecapitalization": { + "bean": "2866", + "lp": "0", + "total": "2866" + } + }, + "0xA160ddd847200C5A0b86A2D4107dba56A6E3053b": { + "tokens": { + "bean": "2", + "lp": "35009102323" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "16481690219", + "total": "16481690220" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "69117211352", + "total": "69117211354" + } + }, + "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE": { + "tokens": { + "bean": "2014695115", + "lp": "2698744968" + }, + "bdvAtSnapshot": { + "bean": "578692966", + "lp": "1270523252", + "total": "1849216218" + }, + "bdvAtRecapitalization": { + "bean": "2014695115", + "lp": "5328035110", + "total": "7342730225" + } + }, + "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf": { + "tokens": { + "bean": "872509120", + "lp": "4880634673" + }, + "bdvAtSnapshot": { + "bean": "250616030", + "lp": "2297719833", + "total": "2548335863" + }, + "bdvAtRecapitalization": { + "bean": "872509120", + "lp": "9635661466", + "total": "10508170586" + } + }, + "0xA1948B0aAf6d029861a02B917847229947642Fbb": { + "tokens": { + "bean": "117828014", + "lp": "492593842" + }, + "bdvAtSnapshot": { + "bean": "33844447", + "lp": "231904807", + "total": "265749254" + }, + "bdvAtRecapitalization": { + "bean": "117828014", + "lp": "972510302", + "total": "1090338316" + } + }, + "0xa2321c2a5fAa8336b09519FB8fA5a19077da7794": { + "tokens": { + "bean": "922828836736", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "265069663749", + "lp": "0", + "total": "265069663749" + }, + "bdvAtRecapitalization": { + "bean": "922828836736", + "lp": "2", + "total": "922828836738" + } + }, + "0x9c52dC78bd84007bF63987806f0aeEece0ef14a6": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655": { + "tokens": { + "bean": "309255494", + "lp": "14588505433" + }, + "bdvAtSnapshot": { + "bean": "88829311", + "lp": "6868020353", + "total": "6956849664" + }, + "bdvAtRecapitalization": { + "bean": "309255494", + "lp": "28801561492", + "total": "29110816986" + } + }, + "0xA240A72b63b1692Ee04E5cbd7dfB6E33F6502165": { + "tokens": { + "bean": "2585225967", + "lp": "151733738486" + }, + "bdvAtSnapshot": { + "bean": "742569966", + "lp": "71433664606", + "total": "72176234572" + }, + "bdvAtRecapitalization": { + "bean": "2585225967", + "lp": "299562461652", + "total": "302147687619" + } + }, + "0xa25243821277b10dff17a3276a51A772Fd68C9de": { + "tokens": { + "bean": "1747862308", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "502048978", + "lp": "0", + "total": "502048978" + }, + "bdvAtRecapitalization": { + "bean": "1747862308", + "lp": "0", + "total": "1747862308" + } + }, + "0xA27964F356C5c2D6e9007d316cBfb06E454EEB3C": { + "tokens": { + "bean": "223263616", + "lp": "768966278" + }, + "bdvAtSnapshot": { + "bean": "64129348", + "lp": "362016251", + "total": "426145599" + }, + "bdvAtRecapitalization": { + "bean": "223263616", + "lp": "1518142461", + "total": "1741406077" + } + }, + "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6": { + "tokens": { + "bean": "1769356988", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "508223024", + "lp": "0", + "total": "508223024" + }, + "bdvAtRecapitalization": { + "bean": "1769356988", + "lp": "0", + "total": "1769356988" + } + }, + "0xA3220B672d6632dB45b3aA2C5eE28b1628d2585F": { + "tokens": { + "bean": "1402497399", + "lp": "9726603619" + }, + "bdvAtSnapshot": { + "bean": "402847743", + "lp": "4579119632", + "total": "4981967375" + }, + "bdvAtRecapitalization": { + "bean": "1402497399", + "lp": "19202883635", + "total": "20605381034" + } + }, + "0xA2683C71bECB07E21155313F46F6ba00986414c3": { + "tokens": { + "bean": "30360559", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8720646", + "lp": "0", + "total": "8720646" + }, + "bdvAtRecapitalization": { + "bean": "30360559", + "lp": "0", + "total": "30360559" + } + }, + "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e": { + "tokens": { + "bean": "0", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "4", + "total": "4" + } + }, + "0xA256Aa181aF9046995aF92506498E31E620C747a": { + "tokens": { + "bean": "552528172", + "lp": "8427479976" + }, + "bdvAtSnapshot": { + "bean": "158705982", + "lp": "3967514306", + "total": "4126220288" + }, + "bdvAtRecapitalization": { + "bean": "552528172", + "lp": "16638070559", + "total": "17190598731" + } + }, + "0xA354D0a7c74AB2fcA6B3c90468A57C9260fF69f9": { + "tokens": { + "bean": "6039745229", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1734832261", + "lp": "0", + "total": "1734832261" + }, + "bdvAtRecapitalization": { + "bean": "6039745229", + "lp": "0", + "total": "6039745229" + } + }, + "0xa31CFf6aA0af969b6d9137690CF1557908df861B": { + "tokens": { + "bean": "85868802768", + "lp": "15155449101" + }, + "bdvAtSnapshot": { + "bean": "24664611432", + "lp": "7134927794", + "total": "31799539226" + }, + "bdvAtRecapitalization": { + "bean": "85868802768", + "lp": "29920857981", + "total": "115789660749" + } + }, + "0xa3C73B0cE38ad596FD185F9ee1FBBb01203A5Ab2": { + "tokens": { + "bean": "1660069333", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "476831675", + "lp": "0", + "total": "476831675" + }, + "bdvAtRecapitalization": { + "bean": "1660069333", + "lp": "0", + "total": "1660069333" + } + }, + "0xa3DCe4D1640691cE3993CE2e42D73BaAD0399076": { + "tokens": { + "bean": "233472774", + "lp": "1016984612" + }, + "bdvAtSnapshot": { + "bean": "67061786", + "lp": "478779067", + "total": "545840853" + }, + "bdvAtRecapitalization": { + "bean": "233472774", + "lp": "2007796136", + "total": "2241268910" + } + }, + "0xa36B48545904789EbB6B898467F9506A54E9F052": { + "tokens": { + "bean": "7", + "lp": "19993301724" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "9412506566", + "total": "9412506568" + }, + "bdvAtRecapitalization": { + "bean": "7", + "lp": "39472056385", + "total": "39472056392" + } + }, + "0xa3d63491abf28803116569058A263B1A407e66Fb": { + "tokens": { + "bean": "292813562", + "lp": "9735226738" + }, + "bdvAtSnapshot": { + "bean": "84106596", + "lp": "4583179249", + "total": "4667285845" + }, + "bdvAtRecapitalization": { + "bean": "292813562", + "lp": "19219907948", + "total": "19512721510" + } + }, + "0xA40633dF77e6065C7545cd4fcD79F0Ce2fa42cF1": { + "tokens": { + "bean": "205483433", + "lp": "2701887649" + }, + "bdvAtSnapshot": { + "bean": "59022239", + "lp": "1272002773", + "total": "1331025012" + }, + "bdvAtRecapitalization": { + "bean": "205483433", + "lp": "5334239592", + "total": "5539723025" + } + }, + "0xA3e1b60002a24f6cFf3f74E2AA260b8C17bbdF7D": { + "tokens": { + "bean": "14633924", + "lp": "767237398" + }, + "bdvAtSnapshot": { + "bean": "4203390", + "lp": "361202324", + "total": "365405714" + }, + "bdvAtRecapitalization": { + "bean": "14633924", + "lp": "1514729195", + "total": "1529363119" + } + }, + "0xA46322948459845Bb5d895ED9C1fdd798692a1dA": { + "tokens": { + "bean": "67933624", + "lp": "754729638" + }, + "bdvAtSnapshot": { + "bean": "19512982", + "lp": "355313883", + "total": "374826865" + }, + "bdvAtRecapitalization": { + "bean": "67933624", + "lp": "1490035575", + "total": "1557969199" + } + }, + "0xA419489219dC5fA1ECeC3749dB45767Aa9F8e912": { + "tokens": { + "bean": "7099", + "lp": "5087443601" + }, + "bdvAtSnapshot": { + "bean": "2039", + "lp": "2395081961", + "total": "2395084000" + }, + "bdvAtRecapitalization": { + "bean": "7099", + "lp": "10043956893", + "total": "10043963992" + } + }, + "0xA46Fe4a0b569E6253B8765FC7b67b08325f0cd5C": { + "tokens": { + "bean": "885473151", + "lp": "10916520813" + }, + "bdvAtSnapshot": { + "bean": "254339766", + "lp": "5139312418", + "total": "5393652184" + }, + "bdvAtRecapitalization": { + "bean": "885473151", + "lp": "21552094347", + "total": "22437567498" + } + }, + "0xa4f1b0889354b88CaAcC8142Ee0601D8920AE776": { + "tokens": { + "bean": "77757143", + "lp": "2852934041" + }, + "bdvAtSnapshot": { + "bean": "22334651", + "lp": "1343112847", + "total": "1365447498" + }, + "bdvAtRecapitalization": { + "bean": "77757143", + "lp": "5632445050", + "total": "5710202193" + } + }, + "0xa4f79238d3c5b146054C8221A85DC442Ad87b45D": { + "tokens": { + "bean": "119541866", + "lp": "743649105" + }, + "bdvAtSnapshot": { + "bean": "34336727", + "lp": "350097357", + "total": "384434084" + }, + "bdvAtRecapitalization": { + "bean": "119541866", + "lp": "1468159677", + "total": "1587701543" + } + }, + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15": { + "tokens": { + "bean": "360153722", + "lp": "314847633" + }, + "bdvAtSnapshot": { + "bean": "103449114", + "lp": "148224913", + "total": "251674027" + }, + "bdvAtRecapitalization": { + "bean": "360153722", + "lp": "621592356", + "total": "981746078" + } + }, + "0xa53bfbe5733924a383c13af5dED9Ae7b5DcE0eb8": { + "tokens": { + "bean": "617137969", + "lp": "3466252194" + }, + "bdvAtSnapshot": { + "bean": "177264242", + "lp": "1631852607", + "total": "1809116849" + }, + "bdvAtRecapitalization": { + "bean": "617137969", + "lp": "6843297017", + "total": "7460434986" + } + }, + "0xA518DdB15FBE19AAa6824D7aA076cB4dd6b35ed9": { + "tokens": { + "bean": "420010169656", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "120642041091", + "lp": "0", + "total": "120642041091" + }, + "bdvAtRecapitalization": { + "bean": "420010169656", + "lp": "0", + "total": "420010169656" + } + }, + "0xa5A55bf143b12D14E2fe4CFE17ee92Ef39F0C493": { + "tokens": { + "bean": "56689169", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "16283170", + "lp": "0", + "total": "16283170" + }, + "bdvAtRecapitalization": { + "bean": "56689169", + "lp": "0", + "total": "56689169" + } + }, + "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191": { + "tokens": { + "bean": "48049515", + "lp": "671117893" + }, + "bdvAtSnapshot": { + "bean": "13801550", + "lp": "315950895", + "total": "329752445" + }, + "bdvAtRecapitalization": { + "bean": "48049515", + "lp": "1324963914", + "total": "1373013429" + } + }, + "0xa5b200B10fd9897142dC2dd14708EFdF090A1b4d": { + "tokens": { + "bean": "321556024188", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "92362466164", + "lp": "0", + "total": "92362466164" + }, + "bdvAtRecapitalization": { + "bean": "321556024188", + "lp": "2", + "total": "321556024190" + } + }, + "0xA4CBFcB9Ec8b109e63155655d9Fa91F0fdC7F669": { + "tokens": { + "bean": "889733437", + "lp": "192043006" + }, + "bdvAtSnapshot": { + "bean": "255563474", + "lp": "90410582", + "total": "345974056" + }, + "bdvAtRecapitalization": { + "bean": "889733437", + "lp": "379143598", + "total": "1268877035" + } + }, + "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99": { + "tokens": { + "bean": "1154772313", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "331692180", + "lp": "0", + "total": "331692180" + }, + "bdvAtRecapitalization": { + "bean": "1154772313", + "lp": "0", + "total": "1154772313" + } + }, + "0xA6a0BEd0732c49Bd847b4B308DAAC15640f1eC6E": { + "tokens": { + "bean": "770007805", + "lp": "8197333020" + }, + "bdvAtSnapshot": { + "bean": "221173962", + "lp": "3859165031", + "total": "4080338993" + }, + "bdvAtRecapitalization": { + "bean": "770007805", + "lp": "16183699703", + "total": "16953707508" + } + }, + "0xA5f8e2881a275344Fe744B30C0b7066DB8Ace1f3": { + "tokens": { + "bean": "16212", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4657", + "lp": "0", + "total": "4657" + }, + "bdvAtRecapitalization": { + "bean": "16212", + "lp": "0", + "total": "16212" + } + }, + "0xa69eb732230F041E62640Da3571F414a01413DB3": { + "tokens": { + "bean": "1361670403776", + "lp": "138405002952" + }, + "bdvAtSnapshot": { + "bean": "391120760099", + "lp": "65158722505", + "total": "456279482604" + }, + "bdvAtRecapitalization": { + "bean": "1361670403776", + "lp": "273248018556", + "total": "1634918422332" + } + }, + "0xa6b4669f8A6486159CbeC31C7818877D1C92FB23": { + "tokens": { + "bean": "361421485", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "103813262", + "lp": "0", + "total": "103813262" + }, + "bdvAtRecapitalization": { + "bean": "361421485", + "lp": "0", + "total": "361421485" + } + }, + "0xa720e16e2B197831805b3b3b0581220e943E9334": { + "tokens": { + "bean": "591538", + "lp": "12546509390" + }, + "bdvAtSnapshot": { + "bean": "169911", + "lp": "5906683330", + "total": "5906853241" + }, + "bdvAtRecapitalization": { + "bean": "591538", + "lp": "24770122159", + "total": "24770713697" + } + }, + "0xa73329C4be0B6aD3b3640753c459526880E6C4a7": { + "tokens": { + "bean": "440351653", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "126484847", + "lp": "0", + "total": "126484847" + }, + "bdvAtRecapitalization": { + "bean": "440351653", + "lp": "0", + "total": "440351653" + } + }, + "0xA708F334E561292319769adf0cAeC89feA3aee80": { + "tokens": { + "bean": "103346158954", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "29684737313", + "lp": "0", + "total": "29684737313" + }, + "bdvAtRecapitalization": { + "bean": "103346158954", + "lp": "0", + "total": "103346158954" + } + }, + "0xA73Bcfb3129B8350E02c05447fe1B30f677AeB7f": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0xa752EeA12f7ecAA7674363255e5e7F0B083a515C": { + "tokens": { + "bean": "1", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2", + "total": "3" + } + }, + "0xa75b7833c78EBA62F1C5389f811ef3A7364D44DE": { + "tokens": { + "bean": "286445877", + "lp": "286491461" + }, + "bdvAtSnapshot": { + "bean": "82277568", + "lp": "134875309", + "total": "217152877" + }, + "bdvAtRecapitalization": { + "bean": "286445877", + "lp": "565609786", + "total": "852055663" + } + }, + "0xa7B9F667B3EC5b42b93D113055dFcd31f88caD53": { + "tokens": { + "bean": "243934798", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "70066856", + "lp": "0", + "total": "70066856" + }, + "bdvAtRecapitalization": { + "bean": "243934798", + "lp": "0", + "total": "243934798" + } + }, + "0xa76B0152fE8BC2eC3CbfAC3D3ecee4A397747051": { + "tokens": { + "bean": "31552872", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "9063121", + "lp": "0", + "total": "9063121" + }, + "bdvAtRecapitalization": { + "bean": "31552872", + "lp": "0", + "total": "31552872" + } + }, + "0xA7e3feD558E81dAb40Cd87F334D68b0BF0AB3fD6": { + "tokens": { + "bean": "34745957401", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "9980289820", + "lp": "0", + "total": "9980289820" + }, + "bdvAtRecapitalization": { + "bean": "34745957401", + "lp": "2", + "total": "34745957403" + } + }, + "0xa7b80091Cec94643794427Ef9b072e65BF93061B": { + "tokens": { + "bean": "35972306", + "lp": "130178265" + }, + "bdvAtSnapshot": { + "bean": "10332541", + "lp": "61285714", + "total": "71618255" + }, + "bdvAtRecapitalization": { + "bean": "35972306", + "lp": "257006266", + "total": "292978572" + } + }, + "0xa7Dcc417c63F24F9073b667A5d7149bD38463d0F": { + "tokens": { + "bean": "7289670369", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2093855758", + "lp": "0", + "total": "2093855758" + }, + "bdvAtRecapitalization": { + "bean": "7289670369", + "lp": "0", + "total": "7289670369" + } + }, + "0xa80383f17A92B110921C07Fb5261798f3A99377f": { + "tokens": { + "bean": "0", + "lp": "171179481634" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "80588389902", + "total": "80588389902" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "337953492838", + "total": "337953492838" + } + }, + "0xA86C58012d2e3f6fC2af244c96A5FA461BF2605b": { + "tokens": { + "bean": "2786334456", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "800335564", + "lp": "0", + "total": "800335564" + }, + "bdvAtRecapitalization": { + "bean": "2786334456", + "lp": "0", + "total": "2786334456" + } + }, + "0xA853A60b728B8Ccd5E228B7E6045B826cd6eEB0C": { + "tokens": { + "bean": "5755439", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1653169", + "lp": "0", + "total": "1653169" + }, + "bdvAtRecapitalization": { + "bean": "5755439", + "lp": "0", + "total": "5755439" + } + }, + "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2": { + "tokens": { + "bean": "1690565507", + "lp": "3954390240" + }, + "bdvAtSnapshot": { + "bean": "485591274", + "lp": "1861659700", + "total": "2347250974" + }, + "bdvAtRecapitalization": { + "bean": "1690565507", + "lp": "7807010402", + "total": "9497575909" + } + }, + "0xa82240Bb0291A8Ef6e46a4f6B8ABF4737B0b5257": { + "tokens": { + "bean": "10000008090", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2872362324", + "lp": "0", + "total": "2872362324" + }, + "bdvAtRecapitalization": { + "bean": "10000008090", + "lp": "2", + "total": "10000008092" + } + }, + "0xa87b23dB84e79a52CE4790E4b4aBE568a0102643": { + "tokens": { + "bean": "244823132131", + "lp": "250134374418" + }, + "bdvAtSnapshot": { + "bean": "70322017181", + "lp": "117759011192", + "total": "188081028373" + }, + "bdvAtRecapitalization": { + "bean": "244823132131", + "lp": "493831297457", + "total": "738654429588" + } + }, + "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E": { + "tokens": { + "bean": "2059837403", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "591659456", + "lp": "0", + "total": "591659456" + }, + "bdvAtRecapitalization": { + "bean": "2059837403", + "lp": "0", + "total": "2059837403" + } + }, + "0xa89c9579bB1A22b6e56a2fb6a4F716E55900f966": { + "tokens": { + "bean": "1077315349", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "309443752", + "lp": "0", + "total": "309443752" + }, + "bdvAtRecapitalization": { + "bean": "1077315349", + "lp": "0", + "total": "1077315349" + } + }, + "0xa8eE3e3c264d6034147fA1F21d691BaC393c7D94": { + "tokens": { + "bean": "5", + "lp": "117208212451" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "55179633882", + "total": "55179633883" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "231399957571", + "total": "231399957576" + } + }, + "0xA9214877410560B17560955Ca84eABdE4E30DcCA": { + "tokens": { + "bean": "24083424", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6917626", + "lp": "0", + "total": "6917626" + }, + "bdvAtRecapitalization": { + "bean": "24083424", + "lp": "0", + "total": "24083424" + } + }, + "0xA92b09947ab93529687d937eDf92A2B44D2fD204": { + "tokens": { + "bean": "95852819", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "27532380", + "lp": "0", + "total": "27532380" + }, + "bdvAtRecapitalization": { + "bean": "95852819", + "lp": "0", + "total": "95852819" + } + }, + "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34": { + "tokens": { + "bean": "1107325388", + "lp": "4497896081" + }, + "bdvAtSnapshot": { + "bean": "318063715", + "lp": "2117533011", + "total": "2435596726" + }, + "bdvAtRecapitalization": { + "bean": "1107325388", + "lp": "8880034432", + "total": "9987359820" + } + }, + "0xa97aCe835947C7890B6cE4bC8BB35c3216771f1f": { + "tokens": { + "bean": "1413231212", + "lp": "1845245434" + }, + "bdvAtSnapshot": { + "bean": "405930880", + "lp": "868710181", + "total": "1274641061" + }, + "bdvAtRecapitalization": { + "bean": "1413231212", + "lp": "3643001682", + "total": "5056232894" + } + }, + "0xa9b13316697dEb755cd86585dE872ea09894EF0f": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c": { + "tokens": { + "bean": "135185391155", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "38830111014", + "lp": "1", + "total": "38830111015" + }, + "bdvAtRecapitalization": { + "bean": "135185391155", + "lp": "4", + "total": "135185391159" + } + }, + "0xA97C4418AB7f4c3fC33376D9A8954d18D8953910": { + "tokens": { + "bean": "14937325", + "lp": "820641963" + }, + "bdvAtSnapshot": { + "bean": "4290537", + "lp": "386344285", + "total": "390634822" + }, + "bdvAtRecapitalization": { + "bean": "14937325", + "lp": "1620163907", + "total": "1635101232" + } + }, + "0xAa2831496F633b4AEbe2e0eb5E79D99BC8E1Ae4D": { + "tokens": { + "bean": "5117001545", + "lp": "27651016778" + }, + "bdvAtSnapshot": { + "bean": "1469787056", + "lp": "13017628632", + "total": "14487415688" + }, + "bdvAtRecapitalization": { + "bean": "5117001545", + "lp": "54590407749", + "total": "59707409294" + } + }, + "0xA9Ec7aB90eCDE9E33FC846de370a0f2532d513be": { + "tokens": { + "bean": "3666266393", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1053083694", + "lp": "0", + "total": "1053083694" + }, + "bdvAtRecapitalization": { + "bean": "3666266393", + "lp": "0", + "total": "3666266393" + } + }, + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73": { + "tokens": { + "bean": "82454962666", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "23684033656", + "lp": "0", + "total": "23684033656" + }, + "bdvAtRecapitalization": { + "bean": "82454962666", + "lp": "2", + "total": "82454962668" + } + }, + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7": { + "tokens": { + "bean": "140097260300", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "40240976660", + "lp": "0", + "total": "40240976660" + }, + "bdvAtRecapitalization": { + "bean": "140097260300", + "lp": "2", + "total": "140097260302" + } + }, + "0xAa4f23a13f25E88bA710243dD59305f382376252": { + "tokens": { + "bean": "8798351794", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2527203376", + "lp": "0", + "total": "2527203376" + }, + "bdvAtRecapitalization": { + "bean": "8798351794", + "lp": "2", + "total": "8798351796" + } + }, + "0xaA1B990CaFbE75051aBfbEa97902df632A0C7313": { + "tokens": { + "bean": "129578445", + "lp": "244192489" + }, + "bdvAtSnapshot": { + "bean": "37219594", + "lp": "114961673", + "total": "152181267" + }, + "bdvAtRecapitalization": { + "bean": "129578445", + "lp": "482100447", + "total": "611678892" + } + }, + "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C": { + "tokens": { + "bean": "197077874225", + "lp": "27060757674" + }, + "bdvAtSnapshot": { + "bean": "56607860281", + "lp": "12739744680", + "total": "69347604961" + }, + "bdvAtRecapitalization": { + "bean": "197077874225", + "lp": "53425080433", + "total": "250502954658" + } + }, + "0xaa5E95a4935A57b7CdaD972Dd368ea6BBd2908a1": { + "tokens": { + "bean": "630140", + "lp": "733602672" + }, + "bdvAtSnapshot": { + "bean": "180999", + "lp": "345367667", + "total": "345548666" + }, + "bdvAtRecapitalization": { + "bean": "630140", + "lp": "1448325366", + "total": "1448955506" + } + }, + "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc": { + "tokens": { + "bean": "1109458871", + "lp": "2867327805" + }, + "bdvAtSnapshot": { + "bean": "318676528", + "lp": "1349889186", + "total": "1668565714" + }, + "bdvAtRecapitalization": { + "bean": "1109458871", + "lp": "5660862140", + "total": "6770321011" + } + }, + "0xAB86AB01AFc0EAC264675A77dFB111F05CF7d6A1": { + "tokens": { + "bean": "479758401", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "137803884", + "lp": "0", + "total": "137803884" + }, + "bdvAtRecapitalization": { + "bean": "479758401", + "lp": "0", + "total": "479758401" + } + }, + "0xab557f77Ef6d758A18DF60AcfaCB1d5feE4C09c2": { + "tokens": { + "bean": "8196", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2354", + "lp": "0", + "total": "2354" + }, + "bdvAtRecapitalization": { + "bean": "8196", + "lp": "2", + "total": "8198" + } + }, + "0xaB13156930AB437897eF35287161051e92FC1c77": { + "tokens": { + "bean": "23309681078", + "lp": "192045058330" + }, + "bdvAtSnapshot": { + "bean": "6695379554", + "lp": "90411548696", + "total": "97106928250" + }, + "bdvAtRecapitalization": { + "bean": "23309681078", + "lp": "379147650322", + "total": "402457331400" + } + }, + "0xAb56dA5518E70688A1FE993c11E56497a8a207d2": { + "tokens": { + "bean": "1151", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "331", + "lp": "0", + "total": "331" + }, + "bdvAtRecapitalization": { + "bean": "1151", + "lp": "0", + "total": "1151" + } + }, + "0xaAB4DfE6D735c4Ac46217216fE883a39fBFE8284": { + "tokens": { + "bean": "11278869500", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3239697360", + "lp": "0", + "total": "3239697360" + }, + "bdvAtRecapitalization": { + "bean": "11278869500", + "lp": "0", + "total": "11278869500" + } + }, + "0xaBA9DC3A7B4F06158dD8C0c447E55bf200426208": { + "tokens": { + "bean": "52423509", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "15057919", + "lp": "0", + "total": "15057919" + }, + "bdvAtRecapitalization": { + "bean": "52423509", + "lp": "0", + "total": "52423509" + } + }, + "0xABBb9Eb2512904123f9d372f26e2390a190d8550": { + "tokens": { + "bean": "69319158", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "19910958", + "lp": "0", + "total": "19910958" + }, + "bdvAtRecapitalization": { + "bean": "69319158", + "lp": "0", + "total": "69319158" + } + }, + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732": { + "tokens": { + "bean": "10338808911", + "lp": "512797846" + }, + "bdvAtSnapshot": { + "bean": "2969678116", + "lp": "241416508", + "total": "3211094624" + }, + "bdvAtRecapitalization": { + "bean": "10338808911", + "lp": "1012398341", + "total": "11351207252" + } + }, + "0xab31Ea5ab64539516d4a690c05075C191f2626cE": { + "tokens": { + "bean": "1083686145", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "311273674", + "lp": "0", + "total": "311273674" + }, + "bdvAtRecapitalization": { + "bean": "1083686145", + "lp": "0", + "total": "1083686145" + } + }, + "0xAbe1ee131c420b5687893518043C5df21E7Da28f": { + "tokens": { + "bean": "12973802203", + "lp": "69386540105" + }, + "bdvAtSnapshot": { + "bean": "3726543050", + "lp": "32666003510", + "total": "36392546560" + }, + "bdvAtRecapitalization": { + "bean": "12973802203", + "lp": "136987350123", + "total": "149961152326" + } + }, + "0xAbD456D341e426777795281041Dc5E5dd7b62677": { + "tokens": { + "bean": "428696499", + "lp": "953626862" + }, + "bdvAtSnapshot": { + "bean": "123137068", + "lp": "448951315", + "total": "572088383" + }, + "bdvAtRecapitalization": { + "bean": "428696499", + "lp": "1882711209", + "total": "2311407708" + } + }, + "0xaBcB8BBDe9cbB670F53de7aBA42cf4143dC5E552": { + "tokens": { + "bean": "7536336309", + "lp": "99205383999" + }, + "bdvAtSnapshot": { + "bean": "2164707096", + "lp": "46704208295", + "total": "48868915391" + }, + "bdvAtRecapitalization": { + "bean": "7536336309", + "lp": "195857620965", + "total": "203393957274" + } + }, + "0xABC508DdA7517F195e416d77C822A4861961947a": { + "tokens": { + "bean": "1001968", + "lp": "26919501243" + }, + "bdvAtSnapshot": { + "bean": "287801", + "lp": "12673243554", + "total": "12673531355" + }, + "bdvAtRecapitalization": { + "bean": "1001968", + "lp": "53146202943", + "total": "53147204911" + } + }, + "0xAbBf4737089AD6FF18c74A53BBe92C04A44d517b": { + "tokens": { + "bean": "31495122535", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "9046533016", + "lp": "0", + "total": "9046533016" + }, + "bdvAtRecapitalization": { + "bean": "31495122535", + "lp": "0", + "total": "31495122535" + } + }, + "0xAcdceB490C614fA827C4f20710ee38E6b27d0EB2": { + "tokens": { + "bean": "705343537", + "lp": "615710372" + }, + "bdvAtSnapshot": { + "bean": "202600056", + "lp": "289865976", + "total": "492466032" + }, + "bdvAtRecapitalization": { + "bean": "705343537", + "lp": "1215574839", + "total": "1920918376" + } + }, + "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B": { + "tokens": { + "bean": "236767853", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "68008251", + "lp": "0", + "total": "68008251" + }, + "bdvAtRecapitalization": { + "bean": "236767853", + "lp": "0", + "total": "236767853" + } + }, + "0xAD503B72FC36A699BF849bB2ed4c3dB1967A73da": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xaBe78350f850924bAfF4B7139c17932d4c0560C5": { + "tokens": { + "bean": "3", + "lp": "377016644953" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "177493027161", + "total": "177493027162" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "744330399903", + "total": "744330399906" + } + }, + "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0": { + "tokens": { + "bean": "41234128", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "11843926", + "lp": "0", + "total": "11843926" + }, + "bdvAtRecapitalization": { + "bean": "41234128", + "lp": "0", + "total": "41234128" + } + }, + "0xAD7bBd9E7fbCdbf80199e940d0A8a6f2D690457d": { + "tokens": { + "bean": "0", + "lp": "294906" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "138837", + "total": "138837" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "582222", + "total": "582222" + } + }, + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821": { + "tokens": { + "bean": "747027804353", + "lp": "33034287496" + }, + "bdvAtSnapshot": { + "bean": "214573278411", + "lp": "15551980970", + "total": "230125259381" + }, + "bdvAtRecapitalization": { + "bean": "747027804353", + "lp": "65218405478", + "total": "812246209831" + } + }, + "0xAE4b17De773a35c4fAe98A8Fa10751dD7A657b58": { + "tokens": { + "bean": "100028043", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28731655", + "lp": "0", + "total": "28731655" + }, + "bdvAtRecapitalization": { + "bean": "100028043", + "lp": "0", + "total": "100028043" + } + }, + "0xaD97723418aef1061Fc9EBBd04CCFB119734b176": { + "tokens": { + "bean": "140073357", + "lp": "1236949536" + }, + "bdvAtSnapshot": { + "bean": "40234111", + "lp": "582334813", + "total": "622568924" + }, + "bdvAtRecapitalization": { + "bean": "140073357", + "lp": "2442064973", + "total": "2582138330" + } + }, + "0xAE94Fc8403B50E2d86A42Acc6565F8e0fa68A31B": { + "tokens": { + "bean": "169035333", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "48553033", + "lp": "0", + "total": "48553033" + }, + "bdvAtRecapitalization": { + "bean": "169035333", + "lp": "0", + "total": "169035333" + } + }, + "0xad84B020432c8c95940C17f30Eb6642580301478": { + "tokens": { + "bean": "83346321", + "lp": "314778822" + }, + "bdvAtSnapshot": { + "bean": "23940064", + "lp": "148192518", + "total": "172132582" + }, + "bdvAtRecapitalization": { + "bean": "83346321", + "lp": "621456505", + "total": "704802826" + } + }, + "0xAeB9A1fddC21b1624f5ed6AcC22D659fc0e381CA": { + "tokens": { + "bean": "1387320850", + "lp": "20857314195" + }, + "bdvAtSnapshot": { + "bean": "398488492", + "lp": "9819268949", + "total": "10217757441" + }, + "bdvAtRecapitalization": { + "bean": "1387320850", + "lp": "41177845126", + "total": "42565165976" + } + }, + "0xaD699032a6C129b7B6a8d1154d1d1592C006F7D2": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6": { + "tokens": { + "bean": "6", + "lp": "95899349589" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "45147783498", + "total": "45147783500" + }, + "bdvAtRecapitalization": { + "bean": "6", + "lp": "189330636155", + "total": "189330636161" + } + }, + "0xAEdd430Db561575A8110991aE4CE61548e771199": { + "tokens": { + "bean": "2898569812", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "832573599", + "lp": "0", + "total": "832573599" + }, + "bdvAtRecapitalization": { + "bean": "2898569812", + "lp": "0", + "total": "2898569812" + } + }, + "0xaed7Ae5288DB82dB2575De216eDC443bC8764a07": { + "tokens": { + "bean": "11648705", + "lp": "9831080" + }, + "bdvAtSnapshot": { + "bean": "3345927", + "lp": "4628305", + "total": "7974232" + }, + "bdvAtRecapitalization": { + "bean": "11648705", + "lp": "19409148", + "total": "31057853" + } + }, + "0xAED278C323a13fD284C5a40182C1aA14d93D87a4": { + "tokens": { + "bean": "2", + "lp": "344473964" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "162172486", + "total": "162172487" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "680082556", + "total": "680082558" + } + }, + "0xaef29B25E1235E52D592a50d1FF05e60792C9552": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xaf0acd71df2e5f3d637eaD63fe3FE3420eEC43C7": { + "tokens": { + "bean": "12398718", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3561358", + "lp": "0", + "total": "3561358" + }, + "bdvAtRecapitalization": { + "bean": "12398718", + "lp": "0", + "total": "12398718" + } + }, + "0xAf0aF5A4A7B3e26359696ebC3D40cDb98f832376": { + "tokens": { + "bean": "933514498", + "lp": "21044187784" + }, + "bdvAtSnapshot": { + "bean": "268138970", + "lp": "9907245858", + "total": "10175384828" + }, + "bdvAtRecapitalization": { + "bean": "933514498", + "lp": "41546782930", + "total": "42480297428" + } + }, + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758": { + "tokens": { + "bean": "4", + "lp": "6546152344" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3081817239", + "total": "3081817240" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "12923833091", + "total": "12923833095" + } + }, + "0xafaAa25675447563a093BFae2d3Db5662ADf9593": { + "tokens": { + "bean": "43036197", + "lp": "186893528" + }, + "bdvAtSnapshot": { + "bean": "12361545", + "lp": "87986296", + "total": "100347841" + }, + "bdvAtRecapitalization": { + "bean": "43036197", + "lp": "368977169", + "total": "412013366" + } + }, + "0xb0010aB3689B80177fF49773F1428aC9a0EDdfa0": { + "tokens": { + "bean": "2364206028", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "679085083", + "lp": "0", + "total": "679085083" + }, + "bdvAtRecapitalization": { + "bean": "2364206028", + "lp": "0", + "total": "2364206028" + } + }, + "0xAfdCc3033Dbd841D0bBFbD59600EF7f487CD1f0a": { + "tokens": { + "bean": "224379559", + "lp": "2054202198" + }, + "bdvAtSnapshot": { + "bean": "64449887", + "lp": "967083473", + "total": "1031533360" + }, + "bdvAtRecapitalization": { + "bean": "224379559", + "lp": "4055537505", + "total": "4279917064" + } + }, + "0xafF33b887aE8a2Ab0079D88EFC7a36eb61632716": { + "tokens": { + "bean": "23665832166", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6797678968", + "lp": "0", + "total": "6797678968" + }, + "bdvAtRecapitalization": { + "bean": "23665832166", + "lp": "0", + "total": "23665832166" + } + }, + "0xaFB19e242b8dD9C3991323293Ef9f9f91F2c6365": { + "tokens": { + "bean": "3", + "lp": "15248885294" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "7178915965", + "total": "7178915966" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "30105325696", + "total": "30105325699" + } + }, + "0xaf7B5d7f84b7DD6b960aC6aDF2D763DD49686992": { + "tokens": { + "bean": "2071316132", + "lp": "976907704" + }, + "bdvAtSnapshot": { + "bean": "594956560", + "lp": "459911540", + "total": "1054868100" + }, + "bdvAtRecapitalization": { + "bean": "2071316132", + "lp": "1928673738", + "total": "3999989870" + } + }, + "0xaff56375f84a49Af2427c386c9c59895a4841DCB": { + "tokens": { + "bean": "548948843", + "lp": "476584565" + }, + "bdvAtSnapshot": { + "bean": "157677870", + "lp": "224367911", + "total": "382045781" + }, + "bdvAtRecapitalization": { + "bean": "548948843", + "lp": "940903763", + "total": "1489852606" + } + }, + "0xb02f6c30bcf0d42E64712C28B007b85c199Db43f": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0xb077cBD6a097D65835a7F78FDd93f0F4325B5C40": { + "tokens": { + "bean": "221475027", + "lp": "2489460790" + }, + "bdvAtSnapshot": { + "bean": "63615601", + "lp": "1171995819", + "total": "1235611420" + }, + "bdvAtRecapitalization": { + "bean": "221475027", + "lp": "4914852886", + "total": "5136327913" + } + }, + "0xb0ce2cC07Bb9bEa2Ab381d9Ede11CB2136D15e28": { + "tokens": { + "bean": "506907671", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "145602132", + "lp": "0", + "total": "145602132" + }, + "bdvAtRecapitalization": { + "bean": "506907671", + "lp": "0", + "total": "506907671" + } + }, + "0xB06fF7d5560f213937fC723CC65366415B7821bd": { + "tokens": { + "bean": "1586344350", + "lp": "60076436012" + }, + "bdvAtSnapshot": { + "bean": "455655206", + "lp": "28282964775", + "total": "28738619981" + }, + "bdvAtRecapitalization": { + "bean": "1586344350", + "lp": "118606746519", + "total": "120193090869" + } + }, + "0xb13c60ee3eCEC5f689469260322093870aA1e842": { + "tokens": { + "bean": "1347383897", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "387017161", + "lp": "0", + "total": "387017161" + }, + "bdvAtRecapitalization": { + "bean": "1347383897", + "lp": "0", + "total": "1347383897" + } + }, + "0xB0dAfc466871c29662E5cbf4227322C96A8Ccbe9": { + "tokens": { + "bean": "138263230", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "39714177", + "lp": "0", + "total": "39714177" + }, + "bdvAtRecapitalization": { + "bean": "138263230", + "lp": "0", + "total": "138263230" + } + }, + "0xB14d2eEf8df1a3C51C2c1859e10324efb58c96b6": { + "tokens": { + "bean": "630871067", + "lp": "3322871849" + }, + "bdvAtSnapshot": { + "bean": "181208882", + "lp": "1564351578", + "total": "1745560460" + }, + "bdvAtRecapitalization": { + "bean": "630871067", + "lp": "6560226360", + "total": "7191097427" + } + }, + "0xB14b20138023b5B9692df1920A6f5F5d341C1666": { + "tokens": { + "bean": "3675402", + "lp": "91445350" + }, + "bdvAtSnapshot": { + "bean": "1055708", + "lp": "43050916", + "total": "44106624" + }, + "bdvAtRecapitalization": { + "bean": "3675402", + "lp": "180537265", + "total": "184212667" + } + }, + "0xB1794ae7649C969BFA7C1c798FD90357f4224dC0": { + "tokens": { + "bean": "188562879", + "lp": "494444205" + }, + "bdvAtSnapshot": { + "bean": "54162047", + "lp": "232775926", + "total": "286937973" + }, + "bdvAtRecapitalization": { + "bean": "188562879", + "lp": "976163408", + "total": "1164726287" + } + }, + "0xb1bB137f6f2778008616cd9fE4C30Bb87C9C9616": { + "tokens": { + "bean": "2495354142", + "lp": "13824067073" + }, + "bdvAtSnapshot": { + "bean": "716755542", + "lp": "6508135769", + "total": "7224891311" + }, + "bdvAtRecapitalization": { + "bean": "2495354142", + "lp": "27292358336", + "total": "29787712478" + } + }, + "0xb1821263a27069c37AD6c042950c7BA59A7c8eC2": { + "tokens": { + "bean": "804098675", + "lp": "21025129590" + }, + "bdvAtSnapshot": { + "bean": "230966087", + "lp": "9898273584", + "total": "10129239671" + }, + "bdvAtRecapitalization": { + "bean": "804098675", + "lp": "41509157023", + "total": "42313255698" + } + }, + "0xB172de5C47899B7d1995549e09202f7e78971ACf": { + "tokens": { + "bean": "29877", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8582", + "lp": "0", + "total": "8582" + }, + "bdvAtRecapitalization": { + "bean": "29877", + "lp": "0", + "total": "29877" + } + }, + "0xB1fe6937a51870ea66B863BE76d668Fc98694f25": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0xb1FEE9761555Fa7Fe548f8C56B47CE97d61270F9": { + "tokens": { + "bean": "41", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12", + "lp": "0", + "total": "12" + }, + "bdvAtRecapitalization": { + "bean": "41", + "lp": "0", + "total": "41" + } + }, + "0xb1cE37aa1F51aB7E2dB1dB783A4E666389c5F2a3": { + "tokens": { + "bean": "913829853", + "lp": "835059870" + }, + "bdvAtSnapshot": { + "bean": "262484832", + "lp": "393131991", + "total": "655616823" + }, + "bdvAtRecapitalization": { + "bean": "913829853", + "lp": "1648628662", + "total": "2562458515" + } + }, + "0xb1D47D39c3BB868E5E4Be068b7057D4CAaD0b31C": { + "tokens": { + "bean": "1337556027", + "lp": "167783614138" + }, + "bdvAtSnapshot": { + "bean": "384194243", + "lp": "78989673215", + "total": "79373867458" + }, + "bdvAtRecapitalization": { + "bean": "1337556027", + "lp": "331249153798", + "total": "332586709825" + } + }, + "0xb26B4A4BBA425aC28224cFDd45B4Bd00C886cC33": { + "tokens": { + "bean": "508075412", + "lp": "4997297269" + }, + "bdvAtSnapshot": { + "bean": "145937549", + "lp": "2352642600", + "total": "2498580149" + }, + "bdvAtRecapitalization": { + "bean": "508075412", + "lp": "9865984233", + "total": "10374059645" + } + }, + "0xB2268E1FBCA5049A173ACCf882298cA4FbfB02AC": { + "tokens": { + "bean": "256881533", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "73785624", + "lp": "0", + "total": "73785624" + }, + "bdvAtRecapitalization": { + "bean": "256881533", + "lp": "0", + "total": "256881533" + } + }, + "0xb2A147095999840BBcE5d679B97Ac379a658BFb9": { + "tokens": { + "bean": "497279143", + "lp": "2925082382" + }, + "bdvAtSnapshot": { + "bean": "142836472", + "lp": "1377079059", + "total": "1519915531" + }, + "bdvAtRecapitalization": { + "bean": "497279143", + "lp": "5774884924", + "total": "6272164067" + } + }, + "0xB33CB651648A99F2FFFf076fd3f645fAC24d460F": { + "tokens": { + "bean": "1242843741", + "lp": "9737535811" + }, + "bdvAtSnapshot": { + "bean": "356989465", + "lp": "4584266322", + "total": "4941255787" + }, + "bdvAtRecapitalization": { + "bean": "1242843741", + "lp": "19224466668", + "total": "20467310409" + } + }, + "0xb2e5F0C8932A5eb5e33c18963346300Eb5496a9f": { + "tokens": { + "bean": "4", + "lp": "6863146871" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3231052873", + "total": "3231052874" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "13549663983", + "total": "13549663987" + } + }, + "0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106": { + "tokens": { + "bean": "4456688857", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1280121481", + "lp": "0", + "total": "1280121481" + }, + "bdvAtRecapitalization": { + "bean": "4456688857", + "lp": "2", + "total": "4456688859" + } + }, + "0xb338092f7eE37A5267642BaE60Ff514EB7088593": { + "tokens": { + "bean": "5004000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1437328944", + "lp": "0", + "total": "1437328944" + }, + "bdvAtRecapitalization": { + "bean": "5004000000", + "lp": "0", + "total": "5004000000" + } + }, + "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B": { + "tokens": { + "bean": "859688286971", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "246933424796", + "lp": "0", + "total": "246933424796" + }, + "bdvAtRecapitalization": { + "bean": "859688286971", + "lp": "2", + "total": "859688286973" + } + }, + "0xB345720Ab089A6748CCec3b59caF642583e308Bf": { + "tokens": { + "bean": "73576254021", + "lp": "28384567891" + }, + "bdvAtSnapshot": { + "bean": "21133748900", + "lp": "13362972025", + "total": "34496720925" + }, + "bdvAtRecapitalization": { + "bean": "73576254021", + "lp": "56038631324", + "total": "129614885345" + } + }, + "0xB34E6A3e475eA55A71c3f2272Ba84c0044397568": { + "tokens": { + "bean": "4266362", + "lp": "171595920" + }, + "bdvAtSnapshot": { + "bean": "1225453", + "lp": "80784442", + "total": "82009895" + }, + "bdvAtRecapitalization": { + "bean": "4266362", + "lp": "338775652", + "total": "343042014" + } + }, + "0xB406e0817EE66AD8c9d8389bb94b4ED50c101431": { + "tokens": { + "bean": "13793336627", + "lp": "35652372921" + }, + "bdvAtSnapshot": { + "bean": "3961942839", + "lp": "16784531081", + "total": "20746473920" + }, + "bdvAtRecapitalization": { + "bean": "13793336627", + "lp": "70387197353", + "total": "84180533980" + } + }, + "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88": { + "tokens": { + "bean": "1117123002", + "lp": "1891586611" + }, + "bdvAtSnapshot": { + "bean": "320877943", + "lp": "890526819", + "total": "1211404762" + }, + "bdvAtRecapitalization": { + "bean": "1117123002", + "lp": "3734491401", + "total": "4851614403" + } + }, + "0xB44D289543717a3723cD47b2E9b71d3Dd5Ff68c5": { + "tokens": { + "bean": "60879075", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "17486662", + "lp": "0", + "total": "17486662" + }, + "bdvAtRecapitalization": { + "bean": "60879075", + "lp": "0", + "total": "60879075" + } + }, + "0xB454F20d38c0Bc020E18bDa03898904DCA77A38a": { + "tokens": { + "bean": "35015234", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10057636", + "lp": "0", + "total": "10057636" + }, + "bdvAtRecapitalization": { + "bean": "35015234", + "lp": "0", + "total": "35015234" + } + }, + "0xB463e599931d865Ad8426a7EeE93b36Fd5B0813a": { + "tokens": { + "bean": "1680929", + "lp": "9874009" + }, + "bdvAtSnapshot": { + "bean": "482823", + "lp": "4648516", + "total": "5131339" + }, + "bdvAtRecapitalization": { + "bean": "1680929", + "lp": "19493901", + "total": "21174830" + } + }, + "0xB4a91ac1D081573a0a3EbE9C2c06827D6D7037e3": { + "tokens": { + "bean": "415057000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "119219312", + "lp": "0", + "total": "119219312" + }, + "bdvAtRecapitalization": { + "bean": "415057000", + "lp": "0", + "total": "415057000" + } + }, + "0xB4B04564f56f4795EA4e14d566aF78dA54a99980": { + "tokens": { + "bean": "274464303", + "lp": "208340669" + }, + "bdvAtSnapshot": { + "bean": "78836029", + "lp": "98083245", + "total": "176919274" + }, + "bdvAtRecapitalization": { + "bean": "274464303", + "lp": "411319488", + "total": "685783791" + } + }, + "0xb54f4f12c886277eeF6E34B7e1c12C4647b820B2": { + "tokens": { + "bean": "7535837796", + "lp": "4235453970" + }, + "bdvAtSnapshot": { + "bean": "2164563905", + "lp": "1993979726", + "total": "4158543631" + }, + "bdvAtRecapitalization": { + "bean": "7535837796", + "lp": "8361904413", + "total": "15897742209" + } + }, + "0xb53031b8E67293dC17659338220599F4b1F15738": { + "tokens": { + "bean": "1321022874", + "lp": "2135189300" + }, + "bdvAtSnapshot": { + "bean": "379445326", + "lp": "1005210824", + "total": "1384656150" + }, + "bdvAtRecapitalization": { + "bean": "1321022874", + "lp": "4215427427", + "total": "5536450301" + } + }, + "0xb4fbd802d9dc5C0208346c311BCB6B9ECFF468C6": { + "tokens": { + "bean": "13519786", + "lp": "59513370" + }, + "bdvAtSnapshot": { + "bean": "3883369", + "lp": "28017883", + "total": "31901252" + }, + "bdvAtRecapitalization": { + "bean": "13519786", + "lp": "117495106", + "total": "131014892" + } + }, + "0xB54099Bd341f0b16aCF27a41BC4b616b5bA70f49": { + "tokens": { + "bean": "188291901", + "lp": "2487083204" + }, + "bdvAtSnapshot": { + "bean": "54084212", + "lp": "1170876492", + "total": "1224960704" + }, + "bdvAtRecapitalization": { + "bean": "188291901", + "lp": "4910158903", + "total": "5098450804" + } + }, + "0xB5d0374F0c35cF84F495121F5d29eA9275414dE8": { + "tokens": { + "bean": "418195686", + "lp": "2270612449" + }, + "bdvAtSnapshot": { + "bean": "120120856", + "lp": "1068965741", + "total": "1189086597" + }, + "bdvAtRecapitalization": { + "bean": "418195686", + "lp": "4482788478", + "total": "4900984164" + } + }, + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A": { + "tokens": { + "bean": "478176221353", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "137349425117", + "lp": "0", + "total": "137349425117" + }, + "bdvAtRecapitalization": { + "bean": "478176221353", + "lp": "2", + "total": "478176221355" + } + }, + "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393": { + "tokens": { + "bean": "54483485344", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "15649618396", + "lp": "0", + "total": "15649618396" + }, + "bdvAtRecapitalization": { + "bean": "54483485344", + "lp": "0", + "total": "54483485344" + } + }, + "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277": { + "tokens": { + "bean": "96773460731", + "lp": "538183504" + }, + "bdvAtSnapshot": { + "bean": "27796821767", + "lp": "253367645", + "total": "28050189412" + }, + "bdvAtRecapitalization": { + "bean": "96773460731", + "lp": "1062516332", + "total": "97835977063" + } + }, + "0xb6390d56cBe8F93123f5923B5C1D9eEc6F7539f9": { + "tokens": { + "bean": "228850714", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "65734164", + "lp": "0", + "total": "65734164" + }, + "bdvAtRecapitalization": { + "bean": "228850714", + "lp": "0", + "total": "228850714" + } + }, + "0xb63050875231622e99cd8eF32360f9c7084e50a7": { + "tokens": { + "bean": "17095232539", + "lp": "4565890347" + }, + "bdvAtSnapshot": { + "bean": "4910366214", + "lp": "2149543555", + "total": "7059909769" + }, + "bdvAtRecapitalization": { + "bean": "17095232539", + "lp": "9014273066", + "total": "26109505605" + } + }, + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0": { + "tokens": { + "bean": "15734357613", + "lp": "12880252473" + }, + "bdvAtSnapshot": { + "bean": "4519473943", + "lp": "6063803900", + "total": "10583277843" + }, + "bdvAtRecapitalization": { + "bean": "15734357613", + "lp": "25429019123", + "total": "41163376736" + } + }, + "0xB65a725e921f3feB83230Bd409683ff601881f68": { + "tokens": { + "bean": "125577424", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "36070357", + "lp": "0", + "total": "36070357" + }, + "bdvAtRecapitalization": { + "bean": "125577424", + "lp": "0", + "total": "125577424" + } + }, + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6": { + "tokens": { + "bean": "3", + "lp": "4276946928" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "2013513906", + "total": "2013513907" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "8443822468", + "total": "8443822471" + } + }, + "0xB70e3a9573AE3De81f15257b1d5a0f20847De138": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xb70c92bfFD28095E36010c5A46901929c32810E4": { + "tokens": { + "bean": "287525082", + "lp": "3023942273" + }, + "bdvAtSnapshot": { + "bean": "82587554", + "lp": "1423620615", + "total": "1506208169" + }, + "bdvAtRecapitalization": { + "bean": "287525082", + "lp": "5970060451", + "total": "6257585533" + } + }, + "0xb66924A7A23e22A87ac555c950019385A3438951": { + "tokens": { + "bean": "23357875823", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6709222820", + "lp": "0", + "total": "6709222820" + }, + "bdvAtRecapitalization": { + "bean": "23357875823", + "lp": "0", + "total": "23357875823" + } + }, + "0xB72Ec053479Efc9f4264c4c84D96eB348b7a0453": { + "tokens": { + "bean": "1557733395", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "447437109", + "lp": "0", + "total": "447437109" + }, + "bdvAtRecapitalization": { + "bean": "1557733395", + "lp": "0", + "total": "1557733395" + } + }, + "0xb620CB571778F22829709c54F27656810eBd6436": { + "tokens": { + "bean": "18676781886", + "lp": "3296000077" + }, + "bdvAtSnapshot": { + "bean": "5364644122", + "lp": "1551700804", + "total": "6916344926" + }, + "bdvAtRecapitalization": { + "bean": "18676781886", + "lp": "6507174387", + "total": "25183956273" + } + }, + "0xB73a795F4b55dC779658E11037e373d66b3094c7": { + "tokens": { + "bean": "922434419", + "lp": "25795284243" + }, + "bdvAtSnapshot": { + "bean": "264956373", + "lp": "12143981302", + "total": "12408937675" + }, + "bdvAtRecapitalization": { + "bean": "922434419", + "lp": "50926701760", + "total": "51849136179" + } + }, + "0xb78afC3695870310E7C337aFBA7925308C1D946f": { + "tokens": { + "bean": "537", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "154", + "lp": "0", + "total": "154" + }, + "bdvAtRecapitalization": { + "bean": "537", + "lp": "0", + "total": "537" + } + }, + "0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D": { + "tokens": { + "bean": "158724054", + "lp": "24964474573" + }, + "bdvAtSnapshot": { + "bean": "45591262", + "lp": "11752850233", + "total": "11798441495" + }, + "bdvAtRecapitalization": { + "bean": "158724054", + "lp": "49286464115", + "total": "49445188169" + } + }, + "0xB788D42d5F9B50EAcbF04253135E9DD73A790Bb4": { + "tokens": { + "bean": "517510428", + "lp": "2369188595" + }, + "bdvAtSnapshot": { + "bean": "148647625", + "lp": "1115373714", + "total": "1264021339" + }, + "bdvAtRecapitalization": { + "bean": "517510428", + "lp": "4677403817", + "total": "5194914245" + } + }, + "0xB7B104178014F26739955526354f6e0EA9Ccb19b": { + "tokens": { + "bean": "2285667947", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "656526118", + "lp": "0", + "total": "656526118" + }, + "bdvAtRecapitalization": { + "bean": "2285667947", + "lp": "0", + "total": "2285667947" + } + }, + "0xb80A3488Bd3f1c5A2D6Fce9B095707ec62172Fb5": { + "tokens": { + "bean": "182354", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "52379", + "lp": "0", + "total": "52379" + }, + "bdvAtRecapitalization": { + "bean": "182354", + "lp": "0", + "total": "182354" + } + }, + "0xb78003FCB54444E289969154A27Ca3106B3f41f6": { + "tokens": { + "bean": "5381490303", + "lp": "8905356339" + }, + "bdvAtSnapshot": { + "bean": "1545757749", + "lp": "4192490373", + "total": "5738248122" + }, + "bdvAtRecapitalization": { + "bean": "5381490303", + "lp": "17581524672", + "total": "22963014975" + } + }, + "0xb7f6f6BCd3856032b2D9F6681bE4DCd1cbfF9823": { + "tokens": { + "bean": "712214347", + "lp": "364432032" + }, + "bdvAtSnapshot": { + "bean": "204573600", + "lp": "171568405", + "total": "376142005" + }, + "bdvAtRecapitalization": { + "bean": "712214347", + "lp": "719485051", + "total": "1431699398" + } + }, + "0xB7e04F8E9b5d499DAd4E1a07EB084f3863877E5f": { + "tokens": { + "bean": "621193026", + "lp": "1073108028" + }, + "bdvAtSnapshot": { + "bean": "178429000", + "lp": "505201017", + "total": "683630017" + }, + "bdvAtRecapitalization": { + "bean": "621193026", + "lp": "2118598577", + "total": "2739791603" + } + }, + "0xB825c207600aDfD3fB23fEcE0b90AEFD4A017Fa8": { + "tokens": { + "bean": "2201022", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "632213", + "lp": "0", + "total": "632213" + }, + "bdvAtRecapitalization": { + "bean": "2201022", + "lp": "0", + "total": "2201022" + } + }, + "0xb833B1B0eF7F2b2183076868C18Cf9A20661AC7E": { + "tokens": { + "bean": "1650899378", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "474197734", + "lp": "0", + "total": "474197734" + }, + "bdvAtRecapitalization": { + "bean": "1650899378", + "lp": "0", + "total": "1650899378" + } + }, + "0xB84905a37A372d3FaB5106ef7fA6C39f8b5B8ADF": { + "tokens": { + "bean": "332770732", + "lp": "2791174442" + }, + "bdvAtSnapshot": { + "bean": "95583734", + "lp": "1314037477", + "total": "1409621211" + }, + "bdvAtRecapitalization": { + "bean": "332770732", + "lp": "5510515295", + "total": "5843286027" + } + }, + "0xB81D739df194fA589e244C7FF5a15E5C04978D0D": { + "tokens": { + "bean": "11399368754", + "lp": "90942683530" + }, + "bdvAtSnapshot": { + "bean": "3274309083", + "lp": "42814269380", + "total": "46088578463" + }, + "bdvAtRecapitalization": { + "bean": "11399368754", + "lp": "179544868658", + "total": "190944237412" + } + }, + "0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B": { + "tokens": { + "bean": "9991208171", + "lp": "568981610" + }, + "bdvAtSnapshot": { + "bean": "2869834670", + "lp": "267866869", + "total": "3137701539" + }, + "bdvAtRecapitalization": { + "bean": "9991208171", + "lp": "1123319925", + "total": "11114528096" + } + }, + "0xB8C76836e4138e1293A4Fa9e1904ABEB00d7e892": { + "tokens": { + "bean": "390289595", + "lp": "584065468" + }, + "bdvAtSnapshot": { + "bean": "112105222", + "lp": "274968093", + "total": "387073315" + }, + "bdvAtRecapitalization": { + "bean": "390289595", + "lp": "1153099443", + "total": "1543389038" + } + }, + "0xb9488BB4f6b57093eAa9a0cf0D722Ed61E8039aC": { + "tokens": { + "bean": "795009391", + "lp": "651392713" + }, + "bdvAtSnapshot": { + "bean": "228355317", + "lp": "306664616", + "total": "535019933" + }, + "bdvAtRecapitalization": { + "bean": "795009391", + "lp": "1286021201", + "total": "2081030592" + } + }, + "0xb8C78C587B6c460DC57F416F54b279A722867907": { + "tokens": { + "bean": "135020639", + "lp": "7325079466" + }, + "bdvAtSnapshot": { + "bean": "38782788", + "lp": "3448522886", + "total": "3487305674" + }, + "bdvAtRecapitalization": { + "bean": "135020639", + "lp": "14461640888", + "total": "14596661527" + } + }, + "0xb95A01D3B437c57631231bF995ca65678764b2E8": { + "tokens": { + "bean": "9432", + "lp": "10584522513" + }, + "bdvAtSnapshot": { + "bean": "2709", + "lp": "4983013262", + "total": "4983015971" + }, + "bdvAtRecapitalization": { + "bean": "9432", + "lp": "20896642046", + "total": "20896651478" + } + }, + "0xB9A485811c6564F097fe832eC0F0AA6281997c7c": { + "tokens": { + "bean": "1186765", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "340882", + "lp": "0", + "total": "340882" + }, + "bdvAtRecapitalization": { + "bean": "1186765", + "lp": "0", + "total": "1186765" + } + }, + "0xBa4ea38e1A2cE2BD3C59D116e79704f025795897": { + "tokens": { + "bean": "1584650663", + "lp": "37290322259" + }, + "bdvAtSnapshot": { + "bean": "455168718", + "lp": "17555649784", + "total": "18010818502" + }, + "bdvAtRecapitalization": { + "bean": "1584650663", + "lp": "73620941810", + "total": "75205592473" + } + }, + "0xbA208F8Ba2fa377dfa9baE58A561D503C3F4d96C": { + "tokens": { + "bean": "0", + "lp": "98780799859" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "46504321300", + "total": "46504321300" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "195019379770", + "total": "195019379770" + } + }, + "0xba121d80C8Cac15fc960BdEe1B0Af7Eea9084526": { + "tokens": { + "bean": "142933423", + "lp": "9780577492" + }, + "bdvAtSnapshot": { + "bean": "41055625", + "lp": "4604529613", + "total": "4645585238" + }, + "bdvAtRecapitalization": { + "bean": "142933423", + "lp": "19309442311", + "total": "19452375734" + } + }, + "0xBA682E593784f7654e4F92D58213dc495f229Eec": { + "tokens": { + "bean": "342774141", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "98457073", + "lp": "0", + "total": "98457073" + }, + "bdvAtRecapitalization": { + "bean": "342774141", + "lp": "0", + "total": "342774141" + } + }, + "0xbAb04a0614a1747f6F27403450038123942Cf87b": { + "tokens": { + "bean": "119580496", + "lp": "381591027" + }, + "bdvAtSnapshot": { + "bean": "34347823", + "lp": "179646568", + "total": "213994391" + }, + "bdvAtRecapitalization": { + "bean": "119580496", + "lp": "753361438", + "total": "872941934" + } + }, + "0xBA1b1F951ec6eb3c938197F04310951c180D7929": { + "tokens": { + "bean": "691454623", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "198610660", + "lp": "0", + "total": "198610660" + }, + "bdvAtRecapitalization": { + "bean": "691454623", + "lp": "0", + "total": "691454623" + } + }, + "0xBAe7A9B7Df36365Cb17004FD2372405773273a68": { + "tokens": { + "bean": "453846881", + "lp": "11183557924" + }, + "bdvAtSnapshot": { + "bean": "130361163", + "lp": "5265028950", + "total": "5395390113" + }, + "bdvAtRecapitalization": { + "bean": "453846881", + "lp": "22079296109", + "total": "22533142990" + } + }, + "0xbA9d7BDc69d77b15427346D30796e0353Fa245DC": { + "tokens": { + "bean": "38318282", + "lp": "168210765" + }, + "bdvAtSnapshot": { + "bean": "11006390", + "lp": "79190769", + "total": "90197159" + }, + "bdvAtRecapitalization": { + "bean": "38318282", + "lp": "332092462", + "total": "370410744" + } + }, + "0xBB05755eF4eAB7dfD4e0b34Ef63b0bdD05cce20A": { + "tokens": { + "bean": "746714965", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "214483420", + "lp": "0", + "total": "214483420" + }, + "bdvAtRecapitalization": { + "bean": "746714965", + "lp": "0", + "total": "746714965" + } + }, + "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202": { + "tokens": { + "bean": "83940839528", + "lp": "49486072037" + }, + "bdvAtSnapshot": { + "bean": "24110830983", + "lp": "23297201452", + "total": "47408032435" + }, + "bdvAtRecapitalization": { + "bean": "83940839528", + "lp": "97698571885", + "total": "181639411413" + } + }, + "0xBb02C110452Ae7aB8eb369b77Ad65bB6C18B4361": { + "tokens": { + "bean": "3314", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "952", + "lp": "0", + "total": "952" + }, + "bdvAtRecapitalization": { + "bean": "3314", + "lp": "0", + "total": "3314" + } + }, + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1": { + "tokens": { + "bean": "0", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "4", + "total": "4" + } + }, + "0xbb257625458a12374daf2AD0c91d5A215732F206": { + "tokens": { + "bean": "5403732", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1552146", + "lp": "0", + "total": "1552146" + }, + "bdvAtRecapitalization": { + "bean": "5403732", + "lp": "0", + "total": "5403732" + } + }, + "0xBB4946EeA34a98b2C0e497Cb7F8F3af83311B2AF": { + "tokens": { + "bean": "5867178846", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1685264983", + "lp": "0", + "total": "1685264983" + }, + "bdvAtRecapitalization": { + "bean": "5867178846", + "lp": "0", + "total": "5867178846" + } + }, + "0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711": { + "tokens": { + "bean": "0", + "lp": "10842063549" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "5104259204", + "total": "5104259204" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "21405096049", + "total": "21405096049" + } + }, + "0xBB8772b75E93204dE7462f19100F7e17C43b263d": { + "tokens": { + "bean": "9679", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2780", + "lp": "0", + "total": "2780" + }, + "bdvAtRecapitalization": { + "bean": "9679", + "lp": "0", + "total": "9679" + } + }, + "0xBbAf0A1CB78E8Ae403244108fbdd0935C201b3Ca": { + "tokens": { + "bean": "109978920", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "31589905", + "lp": "0", + "total": "31589905" + }, + "bdvAtRecapitalization": { + "bean": "109978920", + "lp": "0", + "total": "109978920" + } + }, + "0xBB8FB8fE5198f25D117C0e7B1b9C8260CB19C3C0": { + "tokens": { + "bean": "39354778", + "lp": "977416273" + }, + "bdvAtSnapshot": { + "bean": "11304109", + "lp": "460150965", + "total": "471455074" + }, + "bdvAtRecapitalization": { + "bean": "39354778", + "lp": "1929677788", + "total": "1969032566" + } + }, + "0xBBd0035918b59Ba77f4F0002592b2E4726055659": { + "tokens": { + "bean": "95219336", + "lp": "73973248" + }, + "bdvAtSnapshot": { + "bean": "27350421", + "lp": "34825348", + "total": "62175769" + }, + "bdvAtRecapitalization": { + "bean": "95219336", + "lp": "146042723", + "total": "241262059" + } + }, + "0xBBD189593331b2538e9160D28720D4e3E20812FB": { + "tokens": { + "bean": "3", + "lp": "2898779309" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1364696019", + "total": "1364696020" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "5722955713", + "total": "5722955716" + } + }, + "0xbbD78233f019E3774bAA601B613ceA31bBddD4bf": { + "tokens": { + "bean": "1914629715", + "lp": "14223898262" + }, + "bdvAtSnapshot": { + "bean": "549950581", + "lp": "6696369495", + "total": "7246320076" + }, + "bdvAtRecapitalization": { + "bean": "1914629715", + "lp": "28081730670", + "total": "29996360385" + } + }, + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6": { + "tokens": { + "bean": "697321583695", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "200295862414", + "lp": "0", + "total": "200295862414" + }, + "bdvAtRecapitalization": { + "bean": "697321583695", + "lp": "2", + "total": "697321583697" + } + }, + "0xbC07B76e4C63E7B91c6E0395312D88D20449b106": { + "tokens": { + "bean": "804550853", + "lp": "698456117" + }, + "bdvAtSnapshot": { + "bean": "231095969", + "lp": "328821266", + "total": "559917235" + }, + "bdvAtRecapitalization": { + "bean": "804550853", + "lp": "1378936787", + "total": "2183487640" + } + }, + "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xbbe67B46f6AE629Eb469372a44F338fFc182509f": { + "tokens": { + "bean": "69440068", + "lp": "4877620651" + }, + "bdvAtSnapshot": { + "bean": "19945687", + "lp": "2296300883", + "total": "2316246570" + }, + "bdvAtRecapitalization": { + "bean": "69440068", + "lp": "9629710991", + "total": "9699151059" + } + }, + "0xbC3A1D31eb698Cd3c568f88C13b87081462054A8": { + "tokens": { + "bean": "35039898047", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10064720155", + "lp": "0", + "total": "10064720155" + }, + "bdvAtRecapitalization": { + "bean": "35039898047", + "lp": "0", + "total": "35039898047" + } + }, + "0xBC9209c917069891F92D36B5E7e29DCaC5E1D5A2": { + "tokens": { + "bean": "306141572", + "lp": "935866947" + }, + "bdvAtSnapshot": { + "bean": "87934881", + "lp": "440590249", + "total": "528525130" + }, + "bdvAtRecapitalization": { + "bean": "306141572", + "lp": "1847648448", + "total": "2153790020" + } + }, + "0xBcA1387717b3B1a749147eb59D3B33abe1b9D8a9": { + "tokens": { + "bean": "1324189119", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "380354786", + "lp": "0", + "total": "380354786" + }, + "bdvAtRecapitalization": { + "bean": "1324189119", + "lp": "0", + "total": "1324189119" + } + }, + "0xBd03118971755fC60e769C05067061ebf97064ba": { + "tokens": { + "bean": "1393445406", + "lp": "8700040370" + }, + "bdvAtSnapshot": { + "bean": "400247685", + "lp": "4095831106", + "total": "4496078791" + }, + "bdvAtRecapitalization": { + "bean": "1393445406", + "lp": "17176176740", + "total": "18569622146" + } + }, + "0xbb2C53B8C42A5E3831E1ca5f97F0834Bf8aE7D77": { + "tokens": { + "bean": "3248707279", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "933145684", + "lp": "0", + "total": "933145684" + }, + "bdvAtRecapitalization": { + "bean": "3248707279", + "lp": "0", + "total": "3248707279" + } + }, + "0xbCC44956d70536bed17C146a4D9E66261BB701DD": { + "tokens": { + "bean": "1", + "lp": "54589704925" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "25699905054", + "total": "25699905054" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "107774490706", + "total": "107774490707" + } + }, + "0xbD50a98a99438325067302D987ccebA3C7a8a296": { + "tokens": { + "bean": "6079246", + "lp": "823977331" + }, + "bdvAtSnapshot": { + "bean": "1746178", + "lp": "387914520", + "total": "389660698" + }, + "bdvAtRecapitalization": { + "bean": "6079246", + "lp": "1626748804", + "total": "1632828050" + } + }, + "0xBD2a648B9b820B46EFf6De2FbA1cA3aAc0A82804": { + "tokens": { + "bean": "5141472870", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1476816101", + "lp": "0", + "total": "1476816101" + }, + "bdvAtRecapitalization": { + "bean": "5141472870", + "lp": "0", + "total": "5141472870" + } + }, + "0xBd80cee1D9EBe79a2005Fc338c9a49b2764cfc36": { + "tokens": { + "bean": "9434556460", + "lp": "40385265877" + }, + "bdvAtSnapshot": { + "bean": "2709944259", + "lp": "19012696625", + "total": "21722640884" + }, + "bdvAtRecapitalization": { + "bean": "9434556460", + "lp": "79731177662", + "total": "89165734122" + } + }, + "0xBD874A4e472AEc2777a137788A0c7cC1e043E8D7": { + "tokens": { + "bean": "3668805770", + "lp": "4394738889" + }, + "bdvAtSnapshot": { + "bean": "1053813094", + "lp": "2068968358", + "total": "3122781452" + }, + "bdvAtRecapitalization": { + "bean": "3668805770", + "lp": "8676374899", + "total": "12345180669" + } + }, + "0xbDBeAe01C79bA57B5AF0195bF9dFFD082a79C372": { + "tokens": { + "bean": "53188470", + "lp": "89370691" + }, + "bdvAtSnapshot": { + "bean": "15277643", + "lp": "42074202", + "total": "57351845" + }, + "bdvAtRecapitalization": { + "bean": "53188470", + "lp": "176441340", + "total": "229629810" + } + }, + "0xbd8Ff52F1CB6c47FdF8A7997b379aDb6e04618c7": { + "tokens": { + "bean": "823947799", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "236667470", + "lp": "0", + "total": "236667470" + }, + "bdvAtRecapitalization": { + "bean": "823947799", + "lp": "0", + "total": "823947799" + } + }, + "0xBE588f2f57A99Ca877a2d0fA59A0cAa3fFBFD4eb": { + "tokens": { + "bean": "13479160", + "lp": "1136783608" + }, + "bdvAtSnapshot": { + "bean": "3871700", + "lp": "535178397", + "total": "539050097" + }, + "bdvAtRecapitalization": { + "bean": "13479160", + "lp": "2244310984", + "total": "2257790144" + } + }, + "0xbE525d35A9270c199bC8d08e5bEb403C221F18e5": { + "tokens": { + "bean": "299029029", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "85891902", + "lp": "0", + "total": "85891902" + }, + "bdvAtRecapitalization": { + "bean": "299029029", + "lp": "0", + "total": "299029029" + } + }, + "0xbdE492A572392AbeB47123b2336C358D9F5d7C3E": { + "tokens": { + "bean": "363337323", + "lp": "5084195263" + }, + "bdvAtSnapshot": { + "bean": "104363559", + "lp": "2393552699", + "total": "2497916258" + }, + "bdvAtRecapitalization": { + "bean": "363337323", + "lp": "10037543817", + "total": "10400881140" + } + }, + "0xbE8e93FF17304Ba941131539EFe6bE8e3df168aF": { + "tokens": { + "bean": "80300149", + "lp": "2662294509" + }, + "bdvAtSnapshot": { + "bean": "23065094", + "lp": "1253362996", + "total": "1276428090" + }, + "bdvAtRecapitalization": { + "bean": "80300149", + "lp": "5256072280", + "total": "5336372429" + } + }, + "0xBe9E8Ec25866B21bA34e97b9393BCabBcB4A5C86": { + "tokens": { + "bean": "12927357038", + "lp": "213699053821" + }, + "bdvAtSnapshot": { + "bean": "3713202326", + "lp": "100605881655", + "total": "104319083981" + }, + "bdvAtRecapitalization": { + "bean": "12927357038", + "lp": "421898354672", + "total": "434825711710" + } + }, + "0xBe289902A13Ae7bA22524cb366B3C3666c10F38F": { + "tokens": { + "bean": "25886880082", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "7435643887", + "lp": "0", + "total": "7435643887" + }, + "bdvAtRecapitalization": { + "bean": "25886880082", + "lp": "2", + "total": "25886880084" + } + }, + "0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A": { + "tokens": { + "bean": "453023335", + "lp": "6323979708" + }, + "bdvAtSnapshot": { + "bean": "130124611", + "lp": "2977222139", + "total": "3107346750" + }, + "bdvAtRecapitalization": { + "bean": "453023335", + "lp": "12485205648", + "total": "12938228983" + } + }, + "0xBe41D609ad449e5F270863bBdCFcE2c55D80d039": { + "tokens": { + "bean": "2745289729", + "lp": "7819013065" + }, + "bdvAtSnapshot": { + "bean": "788546041", + "lp": "3681058428", + "total": "4469604469" + }, + "bdvAtRecapitalization": { + "bean": "2745289729", + "lp": "15436796225", + "total": "18182085954" + } + }, + "0xbed17F511084FFEfCa09250886C1Fd77fA6A29A7": { + "tokens": { + "bean": "413469", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "118763", + "lp": "0", + "total": "118763" + }, + "bdvAtRecapitalization": { + "bean": "413469", + "lp": "0", + "total": "413469" + } + }, + "0xbedBA1CDbD51689cEc0F2428333F30C2223aD3aB": { + "tokens": { + "bean": "549121452", + "lp": "825122817" + }, + "bdvAtSnapshot": { + "bean": "157727449", + "lp": "388453795", + "total": "546181244" + }, + "bdvAtRecapitalization": { + "bean": "549121452", + "lp": "1629010296", + "total": "2178131748" + } + }, + "0xbd0D7F2115C73576464689883Ce7257A3b4D8eC4": { + "tokens": { + "bean": "2992854659", + "lp": "4695588071" + }, + "bdvAtSnapshot": { + "bean": "859655601", + "lp": "2210603039", + "total": "3070258640" + }, + "bdvAtRecapitalization": { + "bean": "2992854659", + "lp": "9270330617", + "total": "12263185276" + } + }, + "0xbefD31181229b7D34532344E38899e0fEa750818": { + "tokens": { + "bean": "196464032", + "lp": "1486494434" + }, + "bdvAtSnapshot": { + "bean": "56431543", + "lp": "699816309", + "total": "756247852" + }, + "bdvAtRecapitalization": { + "bean": "196464032", + "lp": "2934732488", + "total": "3131196520" + } + }, + "0xbf30551890776159B0a38E956cEEed296CbAA720": { + "tokens": { + "bean": "2055486326", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "590409670", + "lp": "0", + "total": "590409670" + }, + "bdvAtRecapitalization": { + "bean": "2055486326", + "lp": "0", + "total": "2055486326" + } + }, + "0xBf3dBc90F1A522B4111c9E180FFAf77d65407E3e": { + "tokens": { + "bean": "306185115", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "87947388", + "lp": "0", + "total": "87947388" + }, + "bdvAtRecapitalization": { + "bean": "306185115", + "lp": "0", + "total": "306185115" + } + }, + "0xBF4C73F321fB81816EeAaDE11238B9Ba480356f3": { + "tokens": { + "bean": "13000510", + "lp": "747383185" + }, + "bdvAtSnapshot": { + "bean": "3734214", + "lp": "351855298", + "total": "355589512" + }, + "bdvAtRecapitalization": { + "bean": "13000510", + "lp": "1475531737", + "total": "1488532247" + } + }, + "0xBf4Aa57563dB2A8185148EC874EA96dff82CeB13": { + "tokens": { + "bean": "4", + "lp": "3347524112" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1575957444", + "total": "1575957445" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "6608896436", + "total": "6608896440" + } + }, + "0xBf68f1CE39Ed3BD9B20944260AA678bB934D164b": { + "tokens": { + "bean": "79713257867", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "22896517337", + "lp": "0", + "total": "22896517337" + }, + "bdvAtRecapitalization": { + "bean": "79713257867", + "lp": "2", + "total": "79713257869" + } + }, + "0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD": { + "tokens": { + "bean": "15154526032", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4352925439", + "lp": "0", + "total": "4352925439" + }, + "bdvAtRecapitalization": { + "bean": "15154526032", + "lp": "0", + "total": "15154526032" + } + }, + "0xbf8A064c575093bf91674C5045E144A347EEe02E": { + "tokens": { + "bean": "3379611922", + "lp": "4256166668" + }, + "bdvAtSnapshot": { + "bean": "970746210", + "lp": "2003730912", + "total": "2974477122" + }, + "bdvAtRecapitalization": { + "bean": "3379611922", + "lp": "8402796748", + "total": "11782408670" + } + }, + "0xBFc87CaD2f664d4EecAbCCA45cF1407201353978": { + "tokens": { + "bean": "1695630098", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "487046007", + "lp": "0", + "total": "487046007" + }, + "bdvAtRecapitalization": { + "bean": "1695630098", + "lp": "0", + "total": "1695630098" + } + }, + "0xbfF54b44f72f9B722CD05e2e6E49202BA98FE244": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e": { + "tokens": { + "bean": "1", + "lp": "15112934844" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "7114912805", + "total": "7114912805" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "29836923613", + "total": "29836923614" + } + }, + "0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2": { + "tokens": { + "bean": "587622146", + "lp": "3208840947" + }, + "bdvAtSnapshot": { + "bean": "168786235", + "lp": "1510667768", + "total": "1679454003" + }, + "bdvAtRecapitalization": { + "bean": "587622146", + "lp": "6335099252", + "total": "6922721398" + } + }, + "0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb": { + "tokens": { + "bean": "189471016900", + "lp": "55018117462" + }, + "bdvAtSnapshot": { + "bean": "54422897010", + "lp": "25901594393", + "total": "80324491403" + }, + "bdvAtRecapitalization": { + "bean": "189471016900", + "lp": "108620290167", + "total": "298091307067" + } + }, + "0xc06320d9028F851c6cE46e43F04aFF0A426F446c": { + "tokens": { + "bean": "558857055676", + "lp": "3495054349206" + }, + "bdvAtSnapshot": { + "bean": "160523865244", + "lp": "1645412171682", + "total": "1805936036926" + }, + "bdvAtRecapitalization": { + "bean": "558857055676", + "lp": "6900160075829", + "total": "7459017131505" + } + }, + "0xc08F967ED52dCFfD5687b56485eE6497502ef91d": { + "tokens": { + "bean": "1", + "lp": "5115040641" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "2408074178", + "total": "2408074178" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "10098440737", + "total": "10098440738" + } + }, + "0xBF912CB4d1c3f93e51622fAe0bfa28be1B4b6C6c": { + "tokens": { + "bean": "34791226", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "9993293", + "lp": "0", + "total": "9993293" + }, + "bdvAtRecapitalization": { + "bean": "34791226", + "lp": "0", + "total": "34791226" + } + }, + "0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B": { + "tokens": { + "bean": "2205130668", + "lp": "12155994342" + }, + "bdvAtSnapshot": { + "bean": "633392913", + "lp": "5722835484", + "total": "6356228397" + }, + "bdvAtRecapitalization": { + "bean": "2205130668", + "lp": "23999142348", + "total": "26204273016" + } + }, + "0xc0985b8b744C63e23e4923264eFfaC7535E44f21": { + "tokens": { + "bean": "415337740", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "119299951", + "lp": "0", + "total": "119299951" + }, + "bdvAtRecapitalization": { + "bean": "415337740", + "lp": "0", + "total": "415337740" + } + }, + "0xC0eB311C2f846BD359ed8eAA9a766D5E4736846A": { + "tokens": { + "bean": "2", + "lp": "8041382707" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3785746275", + "total": "3785746276" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "15875812610", + "total": "15875812612" + } + }, + "0xc07fd4632d5792516E2EDc25733e83B3b47ab9aa": { + "tokens": { + "bean": "179268396", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "51492337", + "lp": "0", + "total": "51492337" + }, + "bdvAtRecapitalization": { + "bean": "179268396", + "lp": "0", + "total": "179268396" + } + }, + "0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04": { + "tokens": { + "bean": "21222104155", + "lp": "45927380408" + }, + "bdvAtSnapshot": { + "bean": "6095752309", + "lp": "21621829931", + "total": "27717582240" + }, + "bdvAtRecapitalization": { + "bean": "21222104155", + "lp": "90672775017", + "total": "111894879172" + } + }, + "0xc10535D71513ab2abDF192DFDAa2a3e94134b377": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xc1146f4A68538a35f70c70434313FeF3C4456C33": { + "tokens": { + "bean": "2823650935", + "lp": "67599229136" + }, + "bdvAtSnapshot": { + "bean": "811054200", + "lp": "31824567890", + "total": "32635622090" + }, + "bdvAtRecapitalization": { + "bean": "2823650935", + "lp": "133458726371", + "total": "136282377306" + } + }, + "0xc16Aa2E25F2868fea5C33E6A0b276dcE7EE1eE47": { + "tokens": { + "bean": "21263092185", + "lp": "4512217992" + }, + "bdvAtSnapshot": { + "bean": "6107525547", + "lp": "2124275523", + "total": "8231801070" + }, + "bdvAtRecapitalization": { + "bean": "21263092185", + "lp": "8908309666", + "total": "30171401851" + } + }, + "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D": { + "tokens": { + "bean": "5", + "lp": "35873090171" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "16888441010", + "total": "16888441011" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "70822951480", + "total": "70822951485" + } + }, + "0xC0f55956e8D939D979b8B86a8Ae003D9CD9713ae": { + "tokens": { + "bean": "153149358", + "lp": "1927212135" + }, + "bdvAtSnapshot": { + "bean": "43990009", + "lp": "907298711", + "total": "951288720" + }, + "bdvAtRecapitalization": { + "bean": "153149358", + "lp": "3804825592", + "total": "3957974950" + } + }, + "0xc18676501a23A308191690262bE4B5d287104564": { + "tokens": { + "bean": "509817636", + "lp": "2959177747" + }, + "bdvAtSnapshot": { + "bean": "146437978", + "lp": "1393130577", + "total": "1539568555" + }, + "bdvAtRecapitalization": { + "bean": "509817636", + "lp": "5842198177", + "total": "6352015813" + } + }, + "0xC1877e530858F2fE9642b47c4e6583dec0d4e089": { + "tokens": { + "bean": "9919366", + "lp": "34254185" + }, + "bdvAtSnapshot": { + "bean": "2849199", + "lp": "16126288", + "total": "18975487" + }, + "bdvAtRecapitalization": { + "bean": "9919366", + "lp": "67626805", + "total": "77546171" + } + }, + "0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57": { + "tokens": { + "bean": "0", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "4", + "total": "4" + } + }, + "0xc1CaAbC760f5fDf28c7E50E1093f960f88694E3e": { + "tokens": { + "bean": "1235130", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "354774", + "lp": "0", + "total": "354774" + }, + "bdvAtRecapitalization": { + "bean": "1235130", + "lp": "0", + "total": "1235130" + } + }, + "0xc19447d62b924eFC029278d2e80db587944BbcD7": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0xc18BAB9f644187505F391E394768949793e9894f": { + "tokens": { + "bean": "11653341489", + "lp": "284270731947" + }, + "bdvAtSnapshot": { + "bean": "3347259196", + "lp": "133829827998", + "total": "137177087194" + }, + "bdvAtRecapitalization": { + "bean": "11653341489", + "lp": "561225480157", + "total": "572878821646" + } + }, + "0xC1CeDc9707cAA9869Dca060FCF90054eA8571E42": { + "tokens": { + "bean": "88973984", + "lp": "1138023979" + }, + "bdvAtSnapshot": { + "bean": "25556531", + "lp": "535762343", + "total": "561318874" + }, + "bdvAtRecapitalization": { + "bean": "88973984", + "lp": "2246759804", + "total": "2335733788" + } + }, + "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d": { + "tokens": { + "bean": "1865373073", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "535802300", + "lp": "0", + "total": "535802300" + }, + "bdvAtRecapitalization": { + "bean": "1865373073", + "lp": "0", + "total": "1865373073" + } + }, + "0xC1F841e806901cAc37dFE36cA63b849cee757b8F": { + "tokens": { + "bean": "1788", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "514", + "lp": "0", + "total": "514" + }, + "bdvAtRecapitalization": { + "bean": "1788", + "lp": "0", + "total": "1788" + } + }, + "0xc1f3eBe56FE3a32ADAC585e7379882cf0e5a6D87": { + "tokens": { + "bean": "684431298", + "lp": "27192971720" + }, + "bdvAtSnapshot": { + "bean": "196593308", + "lp": "12801988805", + "total": "12998582113" + }, + "bdvAtRecapitalization": { + "bean": "684431298", + "lp": "53686105868", + "total": "54370537166" + } + }, + "0xC1e607B7730C43C8D15562ffa1ad27B4463DC4c4": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xc1F80163cC753f460A190643d8FCbb7755a48409": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F": { + "tokens": { + "bean": "6", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "0", + "total": "2" + }, + "bdvAtRecapitalization": { + "bean": "6", + "lp": "0", + "total": "6" + } + }, + "0xc22846cf4ACc22f38746792f59F319b216E3F338": { + "tokens": { + "bean": "7172130823", + "lp": "6840873695" + }, + "bdvAtSnapshot": { + "bean": "2060094169", + "lp": "3220567041", + "total": "5280661210" + }, + "bdvAtRecapitalization": { + "bean": "7172130823", + "lp": "13505690853", + "total": "20677821676" + } + }, + "0xc207Ceb0709E1D2B6Ff32E17989d4a4D87C91F37": { + "tokens": { + "bean": "14298917499", + "lp": "623954895088" + }, + "bdvAtSnapshot": { + "bean": "4107163867", + "lp": "293747357374", + "total": "297854521241" + }, + "bdvAtRecapitalization": { + "bean": "14298917499", + "lp": "1231851704161", + "total": "1246150621660" + } + }, + "0xc2352B1bb2115074B4C13a529B2C221E118D9817": { + "tokens": { + "bean": "278604718", + "lp": "8774073825" + }, + "bdvAtSnapshot": { + "bean": "80025305", + "lp": "4130684798", + "total": "4210710103" + }, + "bdvAtRecapitalization": { + "bean": "278604718", + "lp": "17322338327", + "total": "17600943045" + } + }, + "0xc240D9f8d38F2bE93900C5e5D1Acc10D2CC7AbAc": { + "tokens": { + "bean": "2387751634", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "685848228", + "lp": "0", + "total": "685848228" + }, + "bdvAtRecapitalization": { + "bean": "2387751634", + "lp": "0", + "total": "2387751634" + } + }, + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732": { + "tokens": { + "bean": "142305895233", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "40875376123", + "lp": "0", + "total": "40875376123" + }, + "bdvAtRecapitalization": { + "bean": "142305895233", + "lp": "2", + "total": "142305895235" + } + }, + "0xc2ac0d788A6C574a76Ded79b9373679850C2678f": { + "tokens": { + "bean": "3", + "lp": "10859759283" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "5112590055", + "total": "5112590056" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "21440032100", + "total": "21440032103" + } + }, + "0xc31eD6608Afb1F7ABd8a4EE524793F60876b5b66": { + "tokens": { + "bean": "158219569", + "lp": "5913815167" + }, + "bdvAtSnapshot": { + "bean": "45446356", + "lp": "2784123646", + "total": "2829570002" + }, + "bdvAtRecapitalization": { + "bean": "158219569", + "lp": "11675432550", + "total": "11833652119" + } + }, + "0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5": { + "tokens": { + "bean": "1", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2", + "total": "3" + } + }, + "0xc372958093939625d7d97e3319089CEC308d36E1": { + "tokens": { + "bean": "558724162", + "lp": "1739871436" + }, + "bdvAtSnapshot": { + "bean": "160485693", + "lp": "819101894", + "total": "979587587" + }, + "bdvAtRecapitalization": { + "bean": "558724162", + "lp": "3434965589", + "total": "3993689751" + } + }, + "0xc32e44288A51c864b9c194DFbab6Dc71139A3C4d": { + "tokens": { + "bean": "276737879", + "lp": "3861831047" + }, + "bdvAtSnapshot": { + "bean": "79489081", + "lp": "1818084406", + "total": "1897573487" + }, + "bdvAtRecapitalization": { + "bean": "276737879", + "lp": "7624274116", + "total": "7901011995" + } + }, + "0xC343B82Abcc6C0E60494a0F96a58f6F102B58F32": { + "tokens": { + "bean": "2908686", + "lp": "710039824" + }, + "bdvAtSnapshot": { + "bean": "835479", + "lp": "334274678", + "total": "335110157" + }, + "bdvAtRecapitalization": { + "bean": "2908686", + "lp": "1401806083", + "total": "1404714769" + } + }, + "0xC37e2C0D1d60512cFcBe657B0B050f0c82060d1b": { + "tokens": { + "bean": "234348650", + "lp": "552148447" + }, + "bdvAtSnapshot": { + "bean": "67313369", + "lp": "259942102", + "total": "327255471" + }, + "bdvAtRecapitalization": { + "bean": "234348650", + "lp": "1090086817", + "total": "1324435467" + } + }, + "0xC3853C3A8fC9c454f59c9aeD2Fc6cfa1a41eB20E": { + "tokens": { + "bean": "4045499202851", + "lp": "38500266046" + }, + "bdvAtSnapshot": { + "bean": "1162013009030", + "lp": "18125270750", + "total": "1180138279780" + }, + "bdvAtRecapitalization": { + "bean": "4045499202851", + "lp": "76009690304", + "total": "4121508893155" + } + }, + "0xC3D18115E5107c6259439400EC879cDAA1BF8f44": { + "tokens": { + "bean": "3", + "lp": "10792736989" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "5081037098", + "total": "5081037099" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "21307712396", + "total": "21307712399" + } + }, + "0xc46C1B39E6c86115620f5297e98859529b92AD14": { + "tokens": { + "bean": "880998192248", + "lp": "9758822646127" + }, + "bdvAtSnapshot": { + "bean": "253054396749", + "lp": "4594287801812", + "total": "4847342198561" + }, + "bdvAtRecapitalization": { + "bean": "880998192248", + "lp": "19266492501097", + "total": "20147490693345" + } + }, + "0xc459742d208ee4ddBA82Ac03DbCbfa3Fc7eDBa22": { + "tokens": { + "bean": "305200956", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "87664702", + "lp": "0", + "total": "87664702" + }, + "bdvAtRecapitalization": { + "bean": "305200956", + "lp": "0", + "total": "305200956" + } + }, + "0xC45d45b54045074Ed12d1Fe127f714f8aCE46f8c": { + "tokens": { + "bean": "4932334114", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1416743922", + "lp": "0", + "total": "1416743922" + }, + "bdvAtRecapitalization": { + "bean": "4932334114", + "lp": "0", + "total": "4932334114" + } + }, + "0xc47919bbF3276a416Ec34ffE097De3C1D0b7F1CD": { + "tokens": { + "bean": "0", + "lp": "30971410000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "14580813314", + "total": "14580813314" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "61145740644", + "total": "61145740644" + } + }, + "0xC4B07A842e0068A95c3cd933e229348e6d794279": { + "tokens": { + "bean": "1625072538", + "lp": "3545564544" + }, + "bdvAtSnapshot": { + "bean": "466779336", + "lp": "1669191513", + "total": "2135970849" + }, + "bdvAtRecapitalization": { + "bean": "1625072538", + "lp": "6999880536", + "total": "8624953074" + } + }, + "0xc428a5eec605FDA02Af8083ad1928b669B81957c": { + "tokens": { + "bean": "10039650051", + "lp": "6552091570" + }, + "bdvAtSnapshot": { + "bean": "2883748922", + "lp": "3084613326", + "total": "5968362248" + }, + "bdvAtRecapitalization": { + "bean": "10039650051", + "lp": "12935558692", + "total": "22975208743" + } + }, + "0xC4f842B2Ed481C73010fc1F531469FFB47EE09e9": { + "tokens": { + "bean": "9618646291", + "lp": "6488225231" + }, + "bdvAtSnapshot": { + "bean": "2762821486", + "lp": "3054546139", + "total": "5817367625" + }, + "bdvAtRecapitalization": { + "bean": "9618646291", + "lp": "12809469676", + "total": "22428115967" + } + }, + "0xc4C09325007915ce44B9304B0B0052275D8422B0": { + "tokens": { + "bean": "5791266193", + "lp": "5652500393" + }, + "bdvAtSnapshot": { + "bean": "1663460136", + "lp": "2661101093", + "total": "4324561229" + }, + "bdvAtRecapitalization": { + "bean": "5791266193", + "lp": "11159528191", + "total": "16950794384" + } + }, + "0xc516f561098Cea752f06C4F7295d0827F1Ba0D6C": { + "tokens": { + "bean": "7725028456", + "lp": "46934169667" + }, + "bdvAtSnapshot": { + "bean": "2218906274", + "lp": "22095809198", + "total": "24314715472" + }, + "bdvAtRecapitalization": { + "bean": "7725028456", + "lp": "92660442835", + "total": "100385471291" + } + }, + "0xC4FF293174198e9AeB8f655673100EeEDcbBFb1a": { + "tokens": { + "bean": "400000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "114894400", + "lp": "0", + "total": "114894400" + }, + "bdvAtRecapitalization": { + "bean": "400000000", + "lp": "0", + "total": "400000000" + } + }, + "0xC4B07F805707e19d482056261F3502Ce08343648": { + "tokens": { + "bean": "337963357", + "lp": "483254707" + }, + "bdvAtSnapshot": { + "bean": "97075243", + "lp": "227508101", + "total": "324583344" + }, + "bdvAtRecapitalization": { + "bean": "337963357", + "lp": "954072384", + "total": "1292035741" + } + }, + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F": { + "tokens": { + "bean": "5", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1", + "total": "2" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "4", + "total": "9" + } + }, + "0xC52A0B002ac4E62bE0d269A948e55D126a48C767": { + "tokens": { + "bean": "302610662", + "lp": "6862105836" + }, + "bdvAtSnapshot": { + "bean": "86920676", + "lp": "3230562772", + "total": "3317483448" + }, + "bdvAtRecapitalization": { + "bean": "302610662", + "lp": "13547608705", + "total": "13850219367" + } + }, + "0xC555347d2b369B074be94fE6F7Ae9Ab43966B884": { + "tokens": { + "bean": "1098382131", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "315494890", + "lp": "0", + "total": "315494890" + }, + "bdvAtRecapitalization": { + "bean": "1098382131", + "lp": "0", + "total": "1098382131" + } + }, + "0xc5FB51E68d2753Fd484b7f99a13C8E746720C6aC": { + "tokens": { + "bean": "101782539", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "29235609", + "lp": "0", + "total": "29235609" + }, + "bdvAtRecapitalization": { + "bean": "101782539", + "lp": "0", + "total": "101782539" + } + }, + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F": { + "tokens": { + "bean": "45607611794", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "13100147981", + "lp": "0", + "total": "13100147981" + }, + "bdvAtRecapitalization": { + "bean": "45607611794", + "lp": "2", + "total": "45607611796" + } + }, + "0xC5e71bEc66D0E250A642bdE8aa3C47B1B605Dd53": { + "tokens": { + "bean": "2", + "lp": "5172830518" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "2435280670", + "total": "2435280671" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "10212533212", + "total": "10212533214" + } + }, + "0xC579176ddB061a5DE727467d83B30A1bf219a041": { + "tokens": { + "bean": "3026958679", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "869451503", + "lp": "0", + "total": "869451503" + }, + "bdvAtRecapitalization": { + "bean": "3026958679", + "lp": "0", + "total": "3026958679" + } + }, + "0xC5581F1aE61E34391824779D505Ca127a4566737": { + "tokens": { + "bean": "207220100847", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "59521072887", + "lp": "0", + "total": "59521072887" + }, + "bdvAtRecapitalization": { + "bean": "207220100847", + "lp": "2", + "total": "207220100849" + } + }, + "0xC5f9a15832745b00b8fFCD4F2b6857999C725aC0": { + "tokens": { + "bean": "118716432", + "lp": "621698966" + }, + "bdvAtSnapshot": { + "bean": "34099633", + "lp": "292685304", + "total": "326784937" + }, + "bdvAtRecapitalization": { + "bean": "118716432", + "lp": "1227397905", + "total": "1346114337" + } + }, + "0xc63cEe16AB67BDb10eB12fcB611C7e6a9D361dc6": { + "tokens": { + "bean": "7384080111", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2120973635", + "lp": "0", + "total": "2120973635" + }, + "bdvAtRecapitalization": { + "bean": "7384080111", + "lp": "0", + "total": "7384080111" + } + }, + "0xC64d472Cc19c2A9Fae649eC2DcDcff87ca94F7De": { + "tokens": { + "bean": "6862016331", + "lp": "195645267897" + }, + "bdvAtSnapshot": { + "bean": "1971018123", + "lp": "92106466156", + "total": "94077484279" + }, + "bdvAtRecapitalization": { + "bean": "6862016331", + "lp": "386255414562", + "total": "393117430893" + } + }, + "0xC65F06b01E114414Aac120d54a2E56d2B75b1F85": { + "tokens": { + "bean": "149041834672", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "42810180424", + "lp": "0", + "total": "42810180424" + }, + "bdvAtRecapitalization": { + "bean": "149041834672", + "lp": "2", + "total": "149041834674" + } + }, + "0xc6302894cd030601D5E1F65c8F504C83D5361279": { + "tokens": { + "bean": "96647913", + "lp": "6279046006" + }, + "bdvAtSnapshot": { + "bean": "27760760", + "lp": "2956068116", + "total": "2983828876" + }, + "bdvAtRecapitalization": { + "bean": "96647913", + "lp": "12396494657", + "total": "12493142570" + } + }, + "0xC6c2A697E27242B3Ba5A393f304b64A27040E006": { + "tokens": { + "bean": "211313543", + "lp": "5850891938" + }, + "bdvAtSnapshot": { + "bean": "60696857", + "lp": "2754500459", + "total": "2815197316" + }, + "bdvAtRecapitalization": { + "bean": "211313543", + "lp": "11551205482", + "total": "11762519025" + } + }, + "0xc6DDfC6733a8874882FDE1D217d69BA522208B52": { + "tokens": { + "bean": "203168141610", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "58357204323", + "lp": "0", + "total": "58357204323" + }, + "bdvAtRecapitalization": { + "bean": "203168141610", + "lp": "2", + "total": "203168141612" + } + }, + "0xC6e76A8CA58b58A72116d73256990F6B54EDC096": { + "tokens": { + "bean": "4816116217", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1383361958", + "lp": "0", + "total": "1383361958" + }, + "bdvAtRecapitalization": { + "bean": "4816116217", + "lp": "2", + "total": "4816116219" + } + }, + "0xC76d7eb6B13a8aDC5E93da2bD1ae4309806757c6": { + "tokens": { + "bean": "33701347504", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "9680240252", + "lp": "0", + "total": "9680240252" + }, + "bdvAtRecapitalization": { + "bean": "33701347504", + "lp": "2", + "total": "33701347506" + } + }, + "0xC725c98A214a3b79C0454Ef2151c73b248ce329c": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xC77FA6C05B4e472fEee7c0f9B20E70C5BF33a99B": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0xc73E258784A41D10eE5823C12e97806551bc8eeC": { + "tokens": { + "bean": "561084", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "161164", + "lp": "0", + "total": "161164" + }, + "bdvAtRecapitalization": { + "bean": "561084", + "lp": "0", + "total": "561084" + } + }, + "0xc6Ee516b0426c7fCa0399EaA73438e087B967d57": { + "tokens": { + "bean": "45327399799", + "lp": "5689707195" + }, + "bdvAtSnapshot": { + "bean": "13019661009", + "lp": "2678617422", + "total": "15698278431" + }, + "bdvAtRecapitalization": { + "bean": "45327399799", + "lp": "11232984242", + "total": "56560384041" + } + }, + "0xC799cC1E009ac2bEb510a8D685F385ac4d693fed": { + "tokens": { + "bean": "2097085625", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "602358487", + "lp": "0", + "total": "602358487" + }, + "bdvAtRecapitalization": { + "bean": "2097085625", + "lp": "0", + "total": "2097085625" + } + }, + "0xC79Dafd2eEb336f524CF986fb7bc223F23f4db5B": { + "tokens": { + "bean": "15328107", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4402784", + "lp": "0", + "total": "4402784" + }, + "bdvAtRecapitalization": { + "bean": "15328107", + "lp": "0", + "total": "15328107" + } + }, + "0xC79Dc50233C12518c427587Bd88bD881239CD7b4": { + "tokens": { + "bean": "330941912", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "95058431", + "lp": "0", + "total": "95058431" + }, + "bdvAtRecapitalization": { + "bean": "330941912", + "lp": "0", + "total": "330941912" + } + }, + "0xC6AC7c7aCabc3585cfE16478fd4D22C1E8dC3c57": { + "tokens": { + "bean": "3512529942", + "lp": "20951803116" + }, + "bdvAtSnapshot": { + "bean": "1008925050", + "lp": "9863752726", + "total": "10872677776" + }, + "bdvAtRecapitalization": { + "bean": "3512529942", + "lp": "41364391203", + "total": "44876921145" + } + }, + "0xC7c5a25141dfBB4eb586c58fE0f12efd5f999A2B": { + "tokens": { + "bean": "2", + "lp": "144146553821" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "67861747048", + "total": "67861747049" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "284583355898", + "total": "284583355900" + } + }, + "0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xC7B42F99c63126B22858f4eEd636f805CFe82c91": { + "tokens": { + "bean": "1", + "lp": "152452794780" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "71772184085", + "total": "71772184085" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "300982068627", + "total": "300982068628" + } + }, + "0xc7f1916b741A7966Bd65144cb2B0Ba9eD1B29984": { + "tokens": { + "bean": "5", + "lp": "3155325786" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1485473740", + "total": "1485473741" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "6229446194", + "total": "6229446199" + } + }, + "0xC852848A0e66200ce31AD5Db9cE3bC5d53918112": { + "tokens": { + "bean": "206435798", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "59295793", + "lp": "0", + "total": "59295793" + }, + "bdvAtRecapitalization": { + "bean": "206435798", + "lp": "0", + "total": "206435798" + } + }, + "0xC83F16A4076a9F73897f21Ac9E9663c23D35743c": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0xc84C19Bbf07d0CB7CC430fC3C51173c4ACD5dD9D": { + "tokens": { + "bean": "8380775522", + "lp": "55645114762" + }, + "bdvAtSnapshot": { + "bean": "2407260438", + "lp": "26196774063", + "total": "28604034501" + }, + "bdvAtRecapitalization": { + "bean": "8380775522", + "lp": "109858148381", + "total": "118238923903" + } + }, + "0xc896E266368D3Eb26219C5cc74A4941339218d86": { + "tokens": { + "bean": "22334685", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6415326", + "lp": "0", + "total": "6415326" + }, + "bdvAtRecapitalization": { + "bean": "22334685", + "lp": "0", + "total": "22334685" + } + }, + "0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40": { + "tokens": { + "bean": "50665360", + "lp": "1365552501" + }, + "bdvAtSnapshot": { + "bean": "14552915", + "lp": "642878903", + "total": "657431818" + }, + "bdvAtRecapitalization": { + "bean": "50665360", + "lp": "2695961180", + "total": "2746626540" + } + }, + "0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1": { + "tokens": { + "bean": "13064964755", + "lp": "52677481355" + }, + "bdvAtSnapshot": { + "bean": "3752728216", + "lp": "24799662705", + "total": "28552390921" + }, + "bdvAtRecapitalization": { + "bean": "13064964755", + "lp": "103999256499", + "total": "117064221254" + } + }, + "0xC7ED443D168A21f85e0336aa1334208e8Ee55C68": { + "tokens": { + "bean": "53322376", + "lp": "1254607660" + }, + "bdvAtSnapshot": { + "bean": "15316106", + "lp": "590647958", + "total": "605964064" + }, + "bdvAtRecapitalization": { + "bean": "53322376", + "lp": "2476926772", + "total": "2530249148" + } + }, + "0xC8801FFAaA9DfCce7299e7B4Eb616741EA01F5DE": { + "tokens": { + "bean": "199919369", + "lp": "1077460317" + }, + "bdvAtSnapshot": { + "bean": "57424040", + "lp": "507250000", + "total": "564674040" + }, + "bdvAtRecapitalization": { + "bean": "199919369", + "lp": "2127191145", + "total": "2327110514" + } + }, + "0xc83746C2da00F42bA46a8800812Cd0FdD483d24A": { + "tokens": { + "bean": "31751381450", + "lp": "40065401033" + }, + "bdvAtSnapshot": { + "bean": "9120139802", + "lp": "18862109695", + "total": "27982249497" + }, + "bdvAtRecapitalization": { + "bean": "31751381450", + "lp": "79099680007", + "total": "110851061457" + } + }, + "0xC89A6f24b352d35e783ae7C330462A3f44242E89": { + "tokens": { + "bean": "4", + "lp": "8605863898" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "4051494423", + "total": "4051494424" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "16990247519", + "total": "16990247523" + } + }, + "0xc90923827d774955DC6798ffF540C4E2D29F2DBe": { + "tokens": { + "bean": "80", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "23", + "lp": "0", + "total": "23" + }, + "bdvAtRecapitalization": { + "bean": "80", + "lp": "0", + "total": "80" + } + }, + "0xC95186f04B68cfec0D9F585D08C3b5697C858fe0": { + "tokens": { + "bean": "1063309612452", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "305420799842", + "lp": "0", + "total": "305420799842" + }, + "bdvAtRecapitalization": { + "bean": "1063309612452", + "lp": "2", + "total": "1063309612454" + } + }, + "0xC8a405aAD199C44742a1310c5a0924E871733cCb": { + "tokens": { + "bean": "1655718605", + "lp": "2841131015" + }, + "bdvAtSnapshot": { + "bean": "475581989", + "lp": "1337556183", + "total": "1813138172" + }, + "bdvAtRecapitalization": { + "bean": "1655718605", + "lp": "5609142760", + "total": "7264861365" + } + }, + "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b": { + "tokens": { + "bean": "446742698", + "lp": "10061000000" + }, + "bdvAtSnapshot": { + "bean": "128320586", + "lp": "4736547763", + "total": "4864868349" + }, + "bdvAtRecapitalization": { + "bean": "446742698", + "lp": "19863070381", + "total": "20309813079" + } + }, + "0xc95Fe87a9D376FA1629848E22B7d2726529a2921": { + "tokens": { + "bean": "770524827", + "lp": "406539967" + }, + "bdvAtSnapshot": { + "bean": "221322469", + "lp": "191392105", + "total": "412714574" + }, + "bdvAtRecapitalization": { + "bean": "770524827", + "lp": "802617233", + "total": "1573142060" + } + }, + "0xc970De1aFB9BC5b833d1AcDb3d43AEeCf6A4343B": { + "tokens": { + "bean": "5960810182", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1712159273", + "lp": "0", + "total": "1712159273" + }, + "bdvAtRecapitalization": { + "bean": "5960810182", + "lp": "0", + "total": "5960810182" + } + }, + "0xC9D2565A86f477B831c7C706E998946eCF2123F3": { + "tokens": { + "bean": "4169309907", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1197575900", + "lp": "0", + "total": "1197575900" + }, + "bdvAtRecapitalization": { + "bean": "4169309907", + "lp": "2", + "total": "4169309909" + } + }, + "0xC9F7a981fF817d70F691cDbdCB43a418b2dBa59B": { + "tokens": { + "bean": "724073793", + "lp": "327377528" + }, + "bdvAtSnapshot": { + "bean": "207980060", + "lp": "154123775", + "total": "362103835" + }, + "bdvAtRecapitalization": { + "bean": "724073793", + "lp": "646329677", + "total": "1370403470" + } + }, + "0xc9e4d54c9156ad9da31De3Cd3f2a38edAA882c3B": { + "tokens": { + "bean": "48816129313", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14021749719", + "lp": "0", + "total": "14021749719" + }, + "bdvAtRecapitalization": { + "bean": "48816129313", + "lp": "0", + "total": "48816129313" + } + }, + "0xca2819B74C29A1eDe92133fdfbaf06D4F5a5Ad4c": { + "tokens": { + "bean": "1308205", + "lp": "551677319" + }, + "bdvAtSnapshot": { + "bean": "375764", + "lp": "259720303", + "total": "260096067" + }, + "bdvAtRecapitalization": { + "bean": "1308205", + "lp": "1089156686", + "total": "1090464891" + } + }, + "0xCa11d10CEb098f597a0CAb28117fC3465991a63c": { + "tokens": { + "bean": "24232594", + "lp": "1478402310" + }, + "bdvAtSnapshot": { + "bean": "6960473", + "lp": "696006675", + "total": "702967148" + }, + "bdvAtRecapitalization": { + "bean": "24232594", + "lp": "2918756499", + "total": "2942989093" + } + }, + "0xCA754d7Fc19e0c3cD56375c584aB9E61443a276d": { + "tokens": { + "bean": "474684077", + "lp": "2723437412" + }, + "bdvAtSnapshot": { + "bean": "136346356", + "lp": "1282148035", + "total": "1418494391" + }, + "bdvAtRecapitalization": { + "bean": "474684077", + "lp": "5376784514", + "total": "5851468591" + } + }, + "0xcA210D9D38247495886a99034DdFF2d3312DA4e3": { + "tokens": { + "bean": "7", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "0", + "total": "2" + }, + "bdvAtRecapitalization": { + "bean": "7", + "lp": "2", + "total": "9" + } + }, + "0xcb1Fda8A2c50e57601aa129ba2981318E025F68E": { + "tokens": { + "bean": "8154690", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2342321", + "lp": "0", + "total": "2342321" + }, + "bdvAtRecapitalization": { + "bean": "8154690", + "lp": "0", + "total": "8154690" + } + }, + "0xCaf0CDBf6FD201ce4f673f5c232D21Dd8225f437": { + "tokens": { + "bean": "61925343", + "lp": "2708776430" + }, + "bdvAtSnapshot": { + "bean": "17787188", + "lp": "1275245894", + "total": "1293033082" + }, + "bdvAtRecapitalization": { + "bean": "61925343", + "lp": "5347839864", + "total": "5409765207" + } + }, + "0xcB1667B6F0Cd39C9A38eDadcfA743dE95cB65368": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xcb26ea9b520c6D300939A9D5B94308CD77484A6f": { + "tokens": { + "bean": "1901673273", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "546229024", + "lp": "0", + "total": "546229024" + }, + "bdvAtRecapitalization": { + "bean": "1901673273", + "lp": "0", + "total": "1901673273" + } + }, + "0xca4A31c7ebcb126C60Fab495a4D7b545422f3AAF": { + "tokens": { + "bean": "3243534241", + "lp": "1191238637" + }, + "bdvAtSnapshot": { + "bean": "931659801", + "lp": "560814899", + "total": "1492474700" + }, + "bdvAtRecapitalization": { + "bean": "3243534241", + "lp": "2351819589", + "total": "5595353830" + } + }, + "0xCB85C8f60a34D2cB566CC0b0ce9e8Fd66C2d961F": { + "tokens": { + "bean": "2677962578", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "769207259", + "lp": "0", + "total": "769207259" + }, + "bdvAtRecapitalization": { + "bean": "2677962578", + "lp": "0", + "total": "2677962578" + } + }, + "0xCBbdcE7E539916630936453dfBd1CBCb82d414BF": { + "tokens": { + "bean": "19205652", + "lp": "939010596" + }, + "bdvAtSnapshot": { + "bean": "5516555", + "lp": "442070225", + "total": "447586780" + }, + "bdvAtRecapitalization": { + "bean": "19205652", + "lp": "1853854841", + "total": "1873060493" + } + }, + "0xcA968044EffFf14Bee263CA6Af3b9823f1968f37": { + "tokens": { + "bean": "3548148114", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1019155872", + "lp": "0", + "total": "1019155872" + }, + "bdvAtRecapitalization": { + "bean": "3548148114", + "lp": "0", + "total": "3548148114" + } + }, + "0xCbC961DFfa3174603D39d026a62a711A42cb9c77": { + "tokens": { + "bean": "62288895066", + "lp": "338481521686" + }, + "bdvAtSnapshot": { + "bean": "17891613063", + "lp": "159351346224", + "total": "177242959287" + }, + "bdvAtRecapitalization": { + "bean": "62288895066", + "lp": "668251892241", + "total": "730540787307" + } + }, + "0xcC1a8576F7e75398a390A147DA1fbe683C2A9587": { + "tokens": { + "bean": "807687256", + "lp": "19502995901" + }, + "bdvAtSnapshot": { + "bean": "231996857", + "lp": "9181678919", + "total": "9413675776" + }, + "bdvAtRecapitalization": { + "bean": "807687256", + "lp": "38504063236", + "total": "39311750492" + } + }, + "0xCba1A275e2D858EcffaF7a87F606f74B719a8A93": { + "tokens": { + "bean": "1000000001", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "287236000", + "lp": "0", + "total": "287236000" + }, + "bdvAtRecapitalization": { + "bean": "1000000001", + "lp": "2", + "total": "1000000003" + } + }, + "0xCc71b8a0B9ea458aE7E17fa232a36816F6B27195": { + "tokens": { + "bean": "853547", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "245169", + "lp": "0", + "total": "245169" + }, + "bdvAtRecapitalization": { + "bean": "853547", + "lp": "0", + "total": "853547" + } + }, + "0xCC65fA278B917042822538c44ba10AD646824026": { + "tokens": { + "bean": "1369897855", + "lp": "1764792397" + }, + "bdvAtSnapshot": { + "bean": "393483980", + "lp": "830834259", + "total": "1224318239" + }, + "bdvAtRecapitalization": { + "bean": "1369897855", + "lp": "3484166145", + "total": "4854064000" + } + }, + "0xCc9F072657F3B4208bcDA2BdDefe93Ac6849F8D6": { + "tokens": { + "bean": "63745396", + "lp": "193625947" + }, + "bdvAtSnapshot": { + "bean": "18309973", + "lp": "91155804", + "total": "109465777" + }, + "bdvAtRecapitalization": { + "bean": "63745396", + "lp": "382268742", + "total": "446014138" + } + }, + "0xcCbc56e1D30DBAaB70B013872Dbc7d773A9E54fB": { + "tokens": { + "bean": "1444503432", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "414913388", + "lp": "0", + "total": "414913388" + }, + "bdvAtRecapitalization": { + "bean": "1444503432", + "lp": "0", + "total": "1444503432" + } + }, + "0xccbfB8e76153b8FEA7EB7BBD66f1AAaAE314D65F": { + "tokens": { + "bean": "744186341", + "lp": "2810504035" + }, + "bdvAtSnapshot": { + "bean": "213757108", + "lp": "1323137521", + "total": "1536894629" + }, + "bdvAtRecapitalization": { + "bean": "744186341", + "lp": "5548677015", + "total": "6292863356" + } + }, + "0xcc2596D30702141f438c3d8bE8Bb9f81A9a4526C": { + "tokens": { + "bean": "1967837650", + "lp": "1248173779" + }, + "bdvAtSnapshot": { + "bean": "565233815", + "lp": "587618996", + "total": "1152852811" + }, + "bdvAtRecapitalization": { + "bean": "1967837650", + "lp": "2464224592", + "total": "4432062242" + } + }, + "0xCCF00d42bdEA5Fff0b46DD18a5e23FC8ac85a4AA": { + "tokens": { + "bean": "20771463618", + "lp": "57559305700" + }, + "bdvAtSnapshot": { + "bean": "5966312124", + "lp": "27097942615", + "total": "33064254739" + }, + "bdvAtRecapitalization": { + "bean": "20771463618", + "lp": "113637266692", + "total": "134408730310" + } + }, + "0xcD181ad6f06cF7d0393D075242E9348dB027d62b": { + "tokens": { + "bean": "28559147", + "lp": "890697979" + }, + "bdvAtSnapshot": { + "bean": "8203215", + "lp": "419325467", + "total": "427528682" + }, + "bdvAtRecapitalization": { + "bean": "28559147", + "lp": "1758472979", + "total": "1787032126" + } + }, + "0xccF24a88a98312a508945aa0C7179C446FA43980": { + "tokens": { + "bean": "31077780", + "lp": "549091456" + }, + "bdvAtSnapshot": { + "bean": "8926657", + "lp": "258502923", + "total": "267429580" + }, + "bdvAtRecapitalization": { + "bean": "31077780", + "lp": "1084051509", + "total": "1115129289" + } + }, + "0xCbD6b0DeE49EeA88a3343Ff4E5a2423586B4C1D6": { + "tokens": { + "bean": "100541955312", + "lp": "218054864795" + }, + "bdvAtSnapshot": { + "bean": "28879269076", + "lp": "102656523413", + "total": "131535792489" + }, + "bdvAtRecapitalization": { + "bean": "100541955312", + "lp": "430497875588", + "total": "531039830900" + } + }, + "0xCD862100C54AC82b965cc54BFE1bf80CfefC0FD7": { + "tokens": { + "bean": "0", + "lp": "13860940000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "6525494916", + "total": "6525494916" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "27365155229", + "total": "27365155229" + } + }, + "0xCE1Ef18B8c756E2A3bf24fF86DF3e2a4a442691e": { + "tokens": { + "bean": "284176377", + "lp": "1096870016" + }, + "bdvAtSnapshot": { + "bean": "81625686", + "lp": "516387757", + "total": "598013443" + }, + "bdvAtRecapitalization": { + "bean": "284176377", + "lp": "2165511015", + "total": "2449687392" + } + }, + "0xcD6bA060694CFD27C17F23719de87116CbfE6107": { + "tokens": { + "bean": "55701251", + "lp": "6684625232" + }, + "bdvAtSnapshot": { + "bean": "15999405", + "lp": "3147007921", + "total": "3163007326" + }, + "bdvAtRecapitalization": { + "bean": "55701251", + "lp": "13197215133", + "total": "13252916384" + } + }, + "0xCd1d766aa27655Cba70D10723bCC9f03A3FE489a": { + "tokens": { + "bean": "71359777", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20497097", + "lp": "0", + "total": "20497097" + }, + "bdvAtRecapitalization": { + "bean": "71359777", + "lp": "0", + "total": "71359777" + } + }, + "0xcd5561b1be55C1Fa4BbA4749919A03219497B6eF": { + "tokens": { + "bean": "1309882178", + "lp": "786186652" + }, + "bdvAtSnapshot": { + "bean": "376245317", + "lp": "370123311", + "total": "746368628" + }, + "bdvAtRecapitalization": { + "bean": "1309882178", + "lp": "1552140026", + "total": "2862022204" + } + }, + "0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0": { + "tokens": { + "bean": "13570744354", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3898006325", + "lp": "0", + "total": "3898006325" + }, + "bdvAtRecapitalization": { + "bean": "13570744354", + "lp": "0", + "total": "13570744354" + } + }, + "0xcE0218C4fB63Ee56ddDbe85F0ECA06c6f996Ead6": { + "tokens": { + "bean": "10006114383", + "lp": "589399544" + }, + "bdvAtSnapshot": { + "bean": "2874116271", + "lp": "277479286", + "total": "3151595557" + }, + "bdvAtRecapitalization": { + "bean": "10006114383", + "lp": "1163630318", + "total": "11169744701" + } + }, + "0xce6d8374E58CDd4CA173c0B497aB91dA9A334078": { + "tokens": { + "bean": "5663329075", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1626711990", + "lp": "0", + "total": "1626711990" + }, + "bdvAtRecapitalization": { + "bean": "5663329075", + "lp": "0", + "total": "5663329075" + } + }, + "0xCE91783D36925bCc121D0C63376A248a2851982A": { + "tokens": { + "bean": "2271799466", + "lp": "12759654678" + }, + "bdvAtSnapshot": { + "bean": "652542591", + "lp": "6007028508", + "total": "6659571099" + }, + "bdvAtRecapitalization": { + "bean": "2271799466", + "lp": "25190927234", + "total": "27462726700" + } + }, + "0xCF0dCc80F6e15604E258138cca455A040ecb4605": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xCf2d231881E16365961281ec9D8b7B51A4044ABb": { + "tokens": { + "bean": "380068394", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "109169325", + "lp": "0", + "total": "109169325" + }, + "bdvAtRecapitalization": { + "bean": "380068394", + "lp": "0", + "total": "380068394" + } + }, + "0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0": { + "tokens": { + "bean": "14355382682", + "lp": "7901475938" + }, + "bdvAtSnapshot": { + "bean": "4123382700", + "lp": "3719880547", + "total": "7843263247" + }, + "bdvAtRecapitalization": { + "bean": "14355382682", + "lp": "15599599709", + "total": "29954982391" + } + }, + "0xCf1e4c0455E69c3A82C2344648bE76C72DBcDa06": { + "tokens": { + "bean": "688620389", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "197796566", + "lp": "0", + "total": "197796566" + }, + "bdvAtRecapitalization": { + "bean": "688620389", + "lp": "0", + "total": "688620389" + } + }, + "0xcf25F663954157984d9915e9E7f7D2f1ef860f5c": { + "tokens": { + "bean": "122670467", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "35235374", + "lp": "0", + "total": "35235374" + }, + "bdvAtRecapitalization": { + "bean": "122670467", + "lp": "0", + "total": "122670467" + } + }, + "0xCBE203901E2F3CA910558Efba39a48Af89e3c558": { + "tokens": { + "bean": "23981530738", + "lp": "98984057045" + }, + "bdvAtSnapshot": { + "bean": "6888358963", + "lp": "46600011328", + "total": "53488370291" + }, + "bdvAtRecapitalization": { + "bean": "23981530738", + "lp": "195420663121", + "total": "219402193859" + } + }, + "0xd03c52B3256b5e102ce4BF6bB53d4Be9d9963838": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xCfCdCdE4D1c654eD980B4B3f6ff782194b3Aa666": { + "tokens": { + "bean": "232521162", + "lp": "11320515508" + }, + "bdvAtSnapshot": { + "bean": "66788448", + "lp": "5329506252", + "total": "5396294700" + }, + "bdvAtRecapitalization": { + "bean": "232521162", + "lp": "22349686540", + "total": "22582207702" + } + }, + "0xcfd9c9Ac52b4B6Fe30537803CaEb327daDD411bB": { + "tokens": { + "bean": "16807093737", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "4827602377", + "lp": "0", + "total": "4827602377" + }, + "bdvAtRecapitalization": { + "bean": "16807093737", + "lp": "2", + "total": "16807093739" + } + }, + "0xcf6b8a78F5Ddf39312D98Aa138eA2a29E5Ad851f": { + "tokens": { + "bean": "614465690", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "176496667", + "lp": "0", + "total": "176496667" + }, + "bdvAtRecapitalization": { + "bean": "614465690", + "lp": "0", + "total": "614465690" + } + }, + "0xD00fB8efFeE21177df7871F285B379Bb03d8A8b5": { + "tokens": { + "bean": "295651", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "84922", + "lp": "0", + "total": "84922" + }, + "bdvAtRecapitalization": { + "bean": "295651", + "lp": "0", + "total": "295651" + } + }, + "0xD03EA0A5e6932fa79b2802E33d6aBFA9D604Ee35": { + "tokens": { + "bean": "8651776070", + "lp": "15442450567" + }, + "bdvAtSnapshot": { + "bean": "2485101551", + "lp": "7270043205", + "total": "9755144756" + }, + "bdvAtRecapitalization": { + "bean": "8651776070", + "lp": "30487474651", + "total": "39139250721" + } + }, + "0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a": { + "tokens": { + "bean": "2", + "lp": "27423277287" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "12910412751", + "total": "12910412752" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "54140789864", + "total": "54140789866" + } + }, + "0xD0EC7D77eB018ca3789d5d1672705aAa1672d6f3": { + "tokens": { + "bean": "868018496", + "lp": "2645742842" + }, + "bdvAtSnapshot": { + "bean": "249326161", + "lp": "1245570752", + "total": "1494896913" + }, + "bdvAtRecapitalization": { + "bean": "868018496", + "lp": "5223394919", + "total": "6091413415" + } + }, + "0xD047B65f54f4AA8EaE6BB9F3D9d5D126FE722b9F": { + "tokens": { + "bean": "3387663", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "973059", + "lp": "0", + "total": "973059" + }, + "bdvAtRecapitalization": { + "bean": "3387663", + "lp": "0", + "total": "3387663" + } + }, + "0xd0fA4e10b39f3aC9c95deA8151F90b20c497d187": { + "tokens": { + "bean": "10664522666", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3063234832", + "lp": "0", + "total": "3063234832" + }, + "bdvAtRecapitalization": { + "bean": "10664522666", + "lp": "0", + "total": "10664522666" + } + }, + "0xD0988045f54BAf8466a2EA9f097b22eEca8F7A00": { + "tokens": { + "bean": "76815159506", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "22064079156", + "lp": "0", + "total": "22064079156" + }, + "bdvAtRecapitalization": { + "bean": "76815159506", + "lp": "2", + "total": "76815159508" + } + }, + "0xd116EC51cEd0a7A49BEA6555f90872752448D8Bc": { + "tokens": { + "bean": "29161114", + "lp": "11084969889" + }, + "bdvAtSnapshot": { + "bean": "8376122", + "lp": "5218615379", + "total": "5226991501" + }, + "bdvAtRecapitalization": { + "bean": "29161114", + "lp": "21884657298", + "total": "21913818412" + } + }, + "0xd0932CEfBB20cBf5404D8f44CD63E7fF2bd33A29": { + "tokens": { + "bean": "847221413", + "lp": "2015181523" + }, + "bdvAtSnapshot": { + "bean": "243352490", + "lp": "948713203", + "total": "1192065693" + }, + "bdvAtRecapitalization": { + "bean": "847221413", + "lp": "3978500390", + "total": "4825721803" + } + }, + "0xD12570dEDa60976612Eeac099Fb843F2cc53c394": { + "tokens": { + "bean": "629204053", + "lp": "6216033542" + }, + "bdvAtSnapshot": { + "bean": "180730055", + "lp": "2926402919", + "total": "3107132974" + }, + "bdvAtRecapitalization": { + "bean": "629204053", + "lp": "12272091416", + "total": "12901295469" + } + }, + "0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0": { + "tokens": { + "bean": "15754157", + "lp": "960495933" + }, + "bdvAtSnapshot": { + "bean": "4525161", + "lp": "452185157", + "total": "456710318" + }, + "bdvAtRecapitalization": { + "bean": "15754157", + "lp": "1896272569", + "total": "1912026726" + } + }, + "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799": { + "tokens": { + "bean": "121303043", + "lp": "20829691153" + }, + "bdvAtSnapshot": { + "bean": "34842601", + "lp": "9806264490", + "total": "9841107091" + }, + "bdvAtRecapitalization": { + "bean": "121303043", + "lp": "41123309948", + "total": "41244612991" + } + }, + "0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691": { + "tokens": { + "bean": "15431112", + "lp": "2892098015" + }, + "bdvAtSnapshot": { + "bean": "4432371", + "lp": "1361550580", + "total": "1365982951" + }, + "bdvAtRecapitalization": { + "bean": "15431112", + "lp": "5709765075", + "total": "5725196187" + } + }, + "0xD1818A80DAc94Fa1dB124B9B1A1BB71Dc20f228d": { + "tokens": { + "bean": "6", + "lp": "13036982412" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "6137589691", + "total": "6137589693" + }, + "bdvAtRecapitalization": { + "bean": "6", + "lp": "25738445403", + "total": "25738445409" + } + }, + "0xD1C5599677A46067267B273179d45959a606401D": { + "tokens": { + "bean": "1250131951", + "lp": "1949134394" + }, + "bdvAtSnapshot": { + "bean": "359082901", + "lp": "917619337", + "total": "1276702238" + }, + "bdvAtRecapitalization": { + "bean": "1250131951", + "lp": "3848105919", + "total": "5098237870" + } + }, + "0xd1BB2B2871730BC8EF4D86764148C8975b22ce1E": { + "tokens": { + "bean": "840492771", + "lp": "38838734499" + }, + "bdvAtSnapshot": { + "bean": "241419782", + "lp": "18284615944", + "total": "18526035726" + }, + "bdvAtRecapitalization": { + "bean": "840492771", + "lp": "76677916395", + "total": "77518409166" + } + }, + "0xD286064cc27514B914BAB0F2FaD2E1a89A91F314": { + "tokens": { + "bean": "570465634", + "lp": "3078135940" + }, + "bdvAtSnapshot": { + "bean": "163858267", + "lp": "1449134072", + "total": "1612992339" + }, + "bdvAtRecapitalization": { + "bean": "570465634", + "lp": "6077053058", + "total": "6647518692" + } + }, + "0xd2aa924591B370a78e022763B82ddcC711D4f2f7": { + "tokens": { + "bean": "10069227349", + "lp": "2757257681" + }, + "bdvAtSnapshot": { + "bean": "2892244587", + "lp": "1298070043", + "total": "4190314630" + }, + "bdvAtRecapitalization": { + "bean": "10069227349", + "lp": "5443554654", + "total": "15512782003" + } + }, + "0xD14f924DE730Bb2F0C6E5B45b21b37468950a2fF": { + "tokens": { + "bean": "1", + "lp": "1684320908" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "792949650", + "total": "792949650" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "3325294179", + "total": "3325294180" + } + }, + "0xD2594436a220e90495cb3066b24d37A8252Fac0c": { + "tokens": { + "bean": "2103064798", + "lp": "571318613" + }, + "bdvAtSnapshot": { + "bean": "604075920", + "lp": "268967091", + "total": "873043011" + }, + "bdvAtRecapitalization": { + "bean": "2103064798", + "lp": "1127933786", + "total": "3230998584" + } + }, + "0xD2aC889e89A2A9743Db24f6379ac045633E344D2": { + "tokens": { + "bean": "545342902", + "lp": "854010153" + }, + "bdvAtSnapshot": { + "bean": "156642114", + "lp": "402053462", + "total": "558695576" + }, + "bdvAtRecapitalization": { + "bean": "545342902", + "lp": "1686041524", + "total": "2231384426" + } + }, + "0xD1F27c782978858A2937B147aa875391Bb8Fc278": { + "tokens": { + "bean": "1718550921", + "lp": "9235297328" + }, + "bdvAtSnapshot": { + "bean": "493629692", + "lp": "4347820982", + "total": "4841450674" + }, + "bdvAtRecapitalization": { + "bean": "1718550921", + "lp": "18232915298", + "total": "19951466219" + } + }, + "0xD2bd78E6e96c98265725f02cEbC35232308c5031": { + "tokens": { + "bean": "969136", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "278371", + "lp": "0", + "total": "278371" + }, + "bdvAtRecapitalization": { + "bean": "969136", + "lp": "0", + "total": "969136" + } + }, + "0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911": { + "tokens": { + "bean": "293443277", + "lp": "1057115192" + }, + "bdvAtSnapshot": { + "bean": "84287473", + "lp": "497671861", + "total": "581959334" + }, + "bdvAtRecapitalization": { + "bean": "293443277", + "lp": "2087024496", + "total": "2380467773" + } + }, + "0xd368266f4e53b9e00147c758deD2eE063591F9A8": { + "tokens": { + "bean": "34273339162", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "9844536848", + "lp": "0", + "total": "9844536848" + }, + "bdvAtRecapitalization": { + "bean": "34273339162", + "lp": "0", + "total": "34273339162" + } + }, + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57": { + "tokens": { + "bean": "210596761487", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "60490971382", + "lp": "0", + "total": "60490971382" + }, + "bdvAtRecapitalization": { + "bean": "210596761487", + "lp": "2", + "total": "210596761489" + } + }, + "0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8": { + "tokens": { + "bean": "1", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2", + "total": "3" + } + }, + "0xd2F2f6b0F48e7a12496D8C9f7A2C18e6b76e49e0": { + "tokens": { + "bean": "12362947005", + "lp": "227186363726" + }, + "bdvAtSnapshot": { + "bean": "3551083446", + "lp": "106955477874", + "total": "110506561320" + }, + "bdvAtRecapitalization": { + "bean": "12362947005", + "lp": "448525865445", + "total": "460888812450" + } + }, + "0xD360EcB91406717Ad13C4fae757b69B417E2Af6b": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0xd30eB4f27aCac4d903a92A12a29f3fe758A6849c": { + "tokens": { + "bean": "2231608512", + "lp": "5147907808" + }, + "bdvAtSnapshot": { + "bean": "640998303", + "lp": "2423547482", + "total": "3064545785" + }, + "bdvAtRecapitalization": { + "bean": "2231608512", + "lp": "10163329202", + "total": "12394937714" + } + }, + "0xd3765592d1bbFC7ec04E9011861D75B07a3c935b": { + "tokens": { + "bean": "4", + "lp": "3249892628" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1529994201", + "total": "1529994202" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "6416146109", + "total": "6416146113" + } + }, + "0xD379e6E98099A6C8EE68eaBe356a5BB8E0Df6AC7": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xd3F0862E4AcEf9A0c2D7FC4EAc9AB02c80D7b16c": { + "tokens": { + "bean": "4173291923", + "lp": "10038986334" + }, + "bdvAtSnapshot": { + "bean": "1198719679", + "lp": "4726184103", + "total": "5924903782" + }, + "bdvAtRecapitalization": { + "bean": "4173291923", + "lp": "19819609592", + "total": "23992901515" + } + }, + "0xd3c1E750b5664170f4aF828145295B678BAFD460": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xd3e0Ef0eBB7bC536405918d4D8dBDF981185d435": { + "tokens": { + "bean": "39435588749", + "lp": "421926099517" + }, + "bdvAtSnapshot": { + "bean": "11327320770", + "lp": "198635634909", + "total": "209962955679" + }, + "bdvAtRecapitalization": { + "bean": "39435588749", + "lp": "832993520544", + "total": "872429109293" + } + }, + "0xD441C97eF1458d847271f91714799007081494eF": { + "tokens": { + "bean": "429018576828", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "123229579934", + "lp": "0", + "total": "123229579934" + }, + "bdvAtRecapitalization": { + "bean": "429018576828", + "lp": "2", + "total": "429018576830" + } + }, + "0xD497Ed50BE7A80788898956f9a2677eDa71D027E": { + "tokens": { + "bean": "5530858916", + "lp": "3019085076" + }, + "bdvAtSnapshot": { + "bean": "1588661792", + "lp": "1421333929", + "total": "3009995721" + }, + "bdvAtRecapitalization": { + "bean": "5530858916", + "lp": "5960471062", + "total": "11491329978" + } + }, + "0xd45aCCF4512AF9cEAC4c3ab0e770F54212CDF9Ac": { + "tokens": { + "bean": "865247864", + "lp": "19173494050" + }, + "bdvAtSnapshot": { + "bean": "248530335", + "lp": "9026555049", + "total": "9275085384" + }, + "bdvAtRecapitalization": { + "bean": "865247864", + "lp": "37853539585", + "total": "38718787449" + } + }, + "0xD4B5541B7d82C6284e54910aB6068dC218Da1D1C": { + "tokens": { + "bean": "56320522402", + "lp": "176835008926" + }, + "bdvAtSnapshot": { + "bean": "16177281573", + "lp": "83250916007", + "total": "99428197580" + }, + "bdvAtRecapitalization": { + "bean": "56320522402", + "lp": "349118996927", + "total": "405439519329" + } + }, + "0xd43324eB6f31F86e361B48185797b339242f95f4": { + "tokens": { + "bean": "2405595566", + "lp": "51007697600" + }, + "bdvAtSnapshot": { + "bean": "690973648", + "lp": "24013556899", + "total": "24704530547" + }, + "bdvAtRecapitalization": { + "bean": "2405595566", + "lp": "100702662498", + "total": "103108258064" + } + }, + "0xd45EFb53298814b63B0d06A06237c22e3191eF19": { + "tokens": { + "bean": "651572552", + "lp": "31112949136" + }, + "bdvAtSnapshot": { + "bean": "187155094", + "lp": "14647447533", + "total": "14834602627" + }, + "bdvAtRecapitalization": { + "bean": "651572552", + "lp": "61425176269", + "total": "62076748821" + } + }, + "0xd3FeeDc8E702A9F191737c0482b685b74Be48CFa": { + "tokens": { + "bean": "4327", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1243", + "lp": "0", + "total": "1243" + }, + "bdvAtRecapitalization": { + "bean": "4327", + "lp": "2", + "total": "4329" + } + }, + "0xD4ccCdedAAA75E15FdEdDd6D01B2af0a91D42562": { + "tokens": { + "bean": "22518169598", + "lp": "9450016578" + }, + "bdvAtSnapshot": { + "bean": "6468028963", + "lp": "4448907155", + "total": "10916936118" + }, + "bdvAtRecapitalization": { + "bean": "22518169598", + "lp": "18656827789", + "total": "41174997387" + } + }, + "0xd4BB9cc352AB9b8965A87Bde35508695B09d40fb": { + "tokens": { + "bean": "10942985869", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3143219489", + "lp": "0", + "total": "3143219489" + }, + "bdvAtRecapitalization": { + "bean": "10942985869", + "lp": "0", + "total": "10942985869" + } + }, + "0xD4Da752Db1C3fafbF17456D6aA4a6CE1259372a8": { + "tokens": { + "bean": "681182204", + "lp": "2950266040" + }, + "bdvAtSnapshot": { + "bean": "195660052", + "lp": "1388935097", + "total": "1584595149" + }, + "bdvAtRecapitalization": { + "bean": "681182204", + "lp": "5824604114", + "total": "6505786318" + } + }, + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709": { + "tokens": { + "bean": "244274285048", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "70164368540", + "lp": "0", + "total": "70164368540" + }, + "bdvAtRecapitalization": { + "bean": "244274285048", + "lp": "2", + "total": "244274285050" + } + }, + "0xD4e92D4Ae3CbE3D1fC78883D53929e44c994d9eB": { + "tokens": { + "bean": "195468754", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "56145663", + "lp": "0", + "total": "56145663" + }, + "bdvAtRecapitalization": { + "bean": "195468754", + "lp": "0", + "total": "195468754" + } + }, + "0xd53Adf794E2915b4F414BE1AB2282cA8DA56dCfD": { + "tokens": { + "bean": "155275336", + "lp": "2248109512" + }, + "bdvAtSnapshot": { + "bean": "44600666", + "lp": "1058371740", + "total": "1102972406" + }, + "bdvAtRecapitalization": { + "bean": "155275336", + "lp": "4438361739", + "total": "4593637075" + } + }, + "0xd582359cC7c463aAd628936d7D1E31A20d6996f3": { + "tokens": { + "bean": "22334114936", + "lp": "19391655123" + }, + "bdvAtSnapshot": { + "bean": "6415161838", + "lp": "9129261574", + "total": "15544423412" + }, + "bdvAtRecapitalization": { + "bean": "22334114936", + "lp": "38284247143", + "total": "60618362079" + } + }, + "0xD567BEdb9EAe1DB39f0e704B79dF6dF7f846B9B0": { + "tokens": { + "bean": "1342198999", + "lp": "2407095092" + }, + "bdvAtSnapshot": { + "bean": "385527872", + "lp": "1133219449", + "total": "1518747321" + }, + "bdvAtRecapitalization": { + "bean": "1342198999", + "lp": "4752241251", + "total": "6094440250" + } + }, + "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241": { + "tokens": { + "bean": "1377320111", + "lp": "26825140467" + }, + "bdvAtSnapshot": { + "bean": "395615919", + "lp": "12628820104", + "total": "13024436023" + }, + "bdvAtRecapitalization": { + "bean": "1377320111", + "lp": "52959909857", + "total": "54337229968" + } + }, + "0xd5d9aC9C658560071c66385E97c7387E7aeeB916": { + "tokens": { + "bean": "1952633471", + "lp": "8776656914" + }, + "bdvAtSnapshot": { + "bean": "560866628", + "lp": "4131900872", + "total": "4692767500" + }, + "bdvAtRecapitalization": { + "bean": "1952633471", + "lp": "17327438027", + "total": "19280071498" + } + }, + "0xD5eFa6Ce5E86C813d5b016ABd10Bf311648D9FE8": { + "tokens": { + "bean": "116213411", + "lp": "35447749" + }, + "bdvAtSnapshot": { + "bean": "33380675", + "lp": "16688198", + "total": "50068873" + }, + "bdvAtRecapitalization": { + "bean": "116213411", + "lp": "69983216", + "total": "186196627" + } + }, + "0xd608fBbb6D5B1149aD5F0F741f96C1a4D0676189": { + "tokens": { + "bean": "100000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28724", + "lp": "0", + "total": "28724" + }, + "bdvAtRecapitalization": { + "bean": "100000", + "lp": "0", + "total": "100000" + } + }, + "0xD5Eedc95A91EBEFf9a23119e16aBCbBcD2773b54": { + "tokens": { + "bean": "886148331", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "254533702", + "lp": "0", + "total": "254533702" + }, + "bdvAtRecapitalization": { + "bean": "886148331", + "lp": "0", + "total": "886148331" + } + }, + "0xd61296bc2FEaE9Ed107aB37d8BAF12562f770Bd5": { + "tokens": { + "bean": "1207933001", + "lp": "3237597676" + }, + "bdvAtSnapshot": { + "bean": "346961843", + "lp": "1524205947", + "total": "1871167790" + }, + "bdvAtRecapitalization": { + "bean": "1207933001", + "lp": "6391872627", + "total": "7599805628" + } + }, + "0xD5Fe199029ee4626478D47caE4F6F68CEa142c4C": { + "tokens": { + "bean": "22882388215", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6572645661", + "lp": "0", + "total": "6572645661" + }, + "bdvAtRecapitalization": { + "bean": "22882388215", + "lp": "0", + "total": "22882388215" + } + }, + "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427": { + "tokens": { + "bean": "17508152", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5028972", + "lp": "0", + "total": "5028972" + }, + "bdvAtRecapitalization": { + "bean": "17508152", + "lp": "0", + "total": "17508152" + } + }, + "0xD6626eA482D804DDd83C6824284766f73A45D734": { + "tokens": { + "bean": "9647950555", + "lp": "89880356311" + }, + "bdvAtSnapshot": { + "bean": "2771238726", + "lp": "42314143785", + "total": "45085382511" + }, + "bdvAtRecapitalization": { + "bean": "9647950555", + "lp": "177447554245", + "total": "187095504800" + } + }, + "0xd653971FA19ef68BC80BECb7720675307Bfb3EE6": { + "tokens": { + "bean": "4966108157", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1426445043", + "lp": "0", + "total": "1426445043" + }, + "bdvAtRecapitalization": { + "bean": "4966108157", + "lp": "2", + "total": "4966108159" + } + }, + "0xD66DcFf7D207Dd5C5D7323d99CC57d00Fa92D4ea": { + "tokens": { + "bean": "5707017003", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1639260736", + "lp": "0", + "total": "1639260736" + }, + "bdvAtRecapitalization": { + "bean": "5707017003", + "lp": "0", + "total": "5707017003" + } + }, + "0xD6921D0110D6A34c647fD421d088711ae2577D26": { + "tokens": { + "bean": "702481608", + "lp": "4864179564" + }, + "bdvAtSnapshot": { + "bean": "201778007", + "lp": "2289973048", + "total": "2491751055" + }, + "bdvAtRecapitalization": { + "bean": "702481608", + "lp": "9603174737", + "total": "10305656345" + } + }, + "0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF": { + "tokens": { + "bean": "121851073705", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "35000015007", + "lp": "0", + "total": "35000015007" + }, + "bdvAtRecapitalization": { + "bean": "121851073705", + "lp": "2", + "total": "121851073707" + } + }, + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3": { + "tokens": { + "bean": "512541771", + "lp": "10730740726" + }, + "bdvAtSnapshot": { + "bean": "147220448", + "lp": "5051850311", + "total": "5199070759" + }, + "bdvAtRecapitalization": { + "bean": "512541771", + "lp": "21185315404", + "total": "21697857175" + } + }, + "0xD6e91233068c81b0eB6aAc77620641F72d27a039": { + "tokens": { + "bean": "726850328938", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "208777581083", + "lp": "0", + "total": "208777581083" + }, + "bdvAtRecapitalization": { + "bean": "726850328938", + "lp": "2", + "total": "726850328940" + } + }, + "0xD6ff57479699e3F93fFd68295F3257f7C07E983e": { + "tokens": { + "bean": "0", + "lp": "43213870000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "20344355360", + "total": "20344355360" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "85315589030", + "total": "85315589030" + } + }, + "0xd722B7b165bb87c77207a4e0e690596234Cf1aB6": { + "tokens": { + "bean": "215602573", + "lp": "50358834417" + }, + "bdvAtSnapshot": { + "bean": "61928821", + "lp": "23708083143", + "total": "23770011964" + }, + "bdvAtRecapitalization": { + "bean": "215602573", + "lp": "99421635257", + "total": "99637237830" + } + }, + "0xd742f773C69eB8bc3BE9eB8452aab0565d80e746": { + "tokens": { + "bean": "1292761948", + "lp": "14237304515" + }, + "bdvAtSnapshot": { + "bean": "371327771", + "lp": "6702680931", + "total": "7074008702" + }, + "bdvAtRecapitalization": { + "bean": "1292761948", + "lp": "28108198153", + "total": "29400960101" + } + }, + "0xd77749Dc29CDa028bbcdbAEe9fb04990FA387Fa3": { + "tokens": { + "bean": "2151780695", + "lp": "9435097434" + }, + "bdvAtSnapshot": { + "bean": "618068880", + "lp": "4441883475", + "total": "5059952355" + }, + "bdvAtRecapitalization": { + "bean": "2151780695", + "lp": "18627373460", + "total": "20779154155" + } + }, + "0xd72C0Bc5250c8F82E48BE46aD5f65bB5891483a0": { + "tokens": { + "bean": "93997225", + "lp": "29046473570" + }, + "bdvAtSnapshot": { + "bean": "26999387", + "lp": "13674585967", + "total": "13701585354" + }, + "bdvAtRecapitalization": { + "bean": "93997225", + "lp": "57345407895", + "total": "57439405120" + } + }, + "0xD87bc009C1Fd2d29A3f1dDF94e6529dEC1aFD7D3": { + "tokens": { + "bean": "941886486", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "270543707", + "lp": "0", + "total": "270543707" + }, + "bdvAtRecapitalization": { + "bean": "941886486", + "lp": "0", + "total": "941886486" + } + }, + "0xD72eD8B43368BEdC2AddE834Dd121c22B1B30130": { + "tokens": { + "bean": "2919107773", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "838472840", + "lp": "0", + "total": "838472840" + }, + "bdvAtRecapitalization": { + "bean": "2919107773", + "lp": "0", + "total": "2919107773" + } + }, + "0xd7748567c0ad116Cf84b70Ec52eBD4f6A7c346FD": { + "tokens": { + "bean": "37604005", + "lp": "387967300" + }, + "bdvAtSnapshot": { + "bean": "10801224", + "lp": "182648409", + "total": "193449633" + }, + "bdvAtRecapitalization": { + "bean": "37604005", + "lp": "765949884", + "total": "803553889" + } + }, + "0xD7Fca6b7F0dD2C18E85a77b18a5e7aa6E1EBB445": { + "tokens": { + "bean": "423844614", + "lp": "32585221668" + }, + "bdvAtSnapshot": { + "bean": "121743432", + "lp": "15340568413", + "total": "15462311845" + }, + "bdvAtRecapitalization": { + "bean": "423844614", + "lp": "64331830968", + "total": "64755675582" + } + }, + "0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6": { + "tokens": { + "bean": "6", + "lp": "76363418974" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "35950599475", + "total": "35950599477" + }, + "bdvAtRecapitalization": { + "bean": "6", + "lp": "150761551098", + "total": "150761551104" + } + }, + "0xD79e92124A020410C238B23Fb93C95B2922d0B9E": { + "tokens": { + "bean": "408731194433", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "117402313364", + "lp": "0", + "total": "117402313364" + }, + "bdvAtRecapitalization": { + "bean": "408731194433", + "lp": "0", + "total": "408731194433" + } + }, + "0xD87fDB14ceb841F1F38555af1F39bdfFF003CAC9": { + "tokens": { + "bean": "2901299266", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "833357596", + "lp": "0", + "total": "833357596" + }, + "bdvAtRecapitalization": { + "bean": "2901299266", + "lp": "0", + "total": "2901299266" + } + }, + "0xd885881F6928Af7D3549c5D37908DF673D83568F": { + "tokens": { + "bean": "60691450", + "lp": "886165063" + }, + "bdvAtSnapshot": { + "bean": "17432769", + "lp": "417191447", + "total": "434624216" + }, + "bdvAtRecapitalization": { + "bean": "60691450", + "lp": "1749523806", + "total": "1810215256" + } + }, + "0xD8CbcFFe51B0364C50d6a0Ac947A61e3118d10D6": { + "tokens": { + "bean": "3747836826", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1076513659", + "lp": "0", + "total": "1076513659" + }, + "bdvAtRecapitalization": { + "bean": "3747836826", + "lp": "0", + "total": "3747836826" + } + }, + "0xd8d9320Ba876eAc0f5BF9001aE2dC4473630EE5c": { + "tokens": { + "bean": "399964291", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "114884143", + "lp": "0", + "total": "114884143" + }, + "bdvAtRecapitalization": { + "bean": "399964291", + "lp": "0", + "total": "399964291" + } + }, + "0xD93cA8A20fE736C1a258134840b47526686D7307": { + "tokens": { + "bean": "7326048859", + "lp": "96424380120" + }, + "bdvAtSnapshot": { + "bean": "2104304970", + "lp": "45394958946", + "total": "47499263916" + }, + "bdvAtRecapitalization": { + "bean": "7326048859", + "lp": "190367185046", + "total": "197693233905" + } + }, + "0xD93eC7e214C50FE64050d0A88002942f0E242659": { + "tokens": { + "bean": "55792832", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "16025710", + "lp": "0", + "total": "16025710" + }, + "bdvAtRecapitalization": { + "bean": "55792832", + "lp": "0", + "total": "55792832" + } + }, + "0xD8E7f213956d19d5eE7df4c9B00eE3F5D3DC79B2": { + "tokens": { + "bean": "384447801", + "lp": "313030643" + }, + "bdvAtSnapshot": { + "bean": "110427249", + "lp": "147369505", + "total": "257796754" + }, + "bdvAtRecapitalization": { + "bean": "384447801", + "lp": "618005138", + "total": "1002452939" + } + }, + "0xD8c84eaC995150662CC052E6ac76Ec184fcF1122": { + "tokens": { + "bean": "310453334", + "lp": "22681028282" + }, + "bdvAtSnapshot": { + "bean": "89173374", + "lp": "10677842538", + "total": "10767015912" + }, + "bdvAtRecapitalization": { + "bean": "310453334", + "lp": "44778338244", + "total": "45088791578" + } + }, + "0xd959d4C2d90FD2F291A71Bf923DA24E374E1Ef07": { + "tokens": { + "bean": "898639721", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "258121679", + "lp": "0", + "total": "258121679" + }, + "bdvAtRecapitalization": { + "bean": "898639721", + "lp": "0", + "total": "898639721" + } + }, + "0xd8fC2eC57805817AaEe62FF23f4f07C16AF730E5": { + "tokens": { + "bean": "4235912849", + "lp": "220490059" + }, + "bdvAtSnapshot": { + "bean": "1216706663", + "lp": "103802971", + "total": "1320509634" + }, + "bdvAtRecapitalization": { + "bean": "4235912849", + "lp": "435305592", + "total": "4671218441" + } + }, + "0xd94c1BEF5975C5eaa57989bb5E149BcAC6e4e41E": { + "tokens": { + "bean": "1117557966", + "lp": "926047838" + }, + "bdvAtSnapshot": { + "bean": "321002880", + "lp": "435967579", + "total": "756970459" + }, + "bdvAtRecapitalization": { + "bean": "1117557966", + "lp": "1828262934", + "total": "2945820900" + } + }, + "0xd9A859A420ddf413FbfCBC10bB7e16d773839004": { + "tokens": { + "bean": "5817247912", + "lp": "180388404799" + }, + "bdvAtSnapshot": { + "bean": "1670923021", + "lp": "84923794376", + "total": "86594717397" + }, + "bdvAtRecapitalization": { + "bean": "5817247912", + "lp": "356134338575", + "total": "361951586487" + } + }, + "0xD970Ba10ED5E88b678cd39FA37DaA765F6948733": { + "tokens": { + "bean": "177550788", + "lp": "382582417" + }, + "bdvAtSnapshot": { + "bean": "50998978", + "lp": "180113298", + "total": "231112276" + }, + "bdvAtRecapitalization": { + "bean": "177550788", + "lp": "755318703", + "total": "932869491" + } + }, + "0xd980C07d4Ab9F14bf80a04297f7c6F41604D060B": { + "tokens": { + "bean": "985114", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "282960", + "lp": "0", + "total": "282960" + }, + "bdvAtRecapitalization": { + "bean": "985114", + "lp": "0", + "total": "985114" + } + }, + "0xD9E886861966Af24A09a4e34414E34aCfC497906": { + "tokens": { + "bean": "75267111", + "lp": "292046551" + }, + "bdvAtSnapshot": { + "bean": "21619424", + "lp": "137490551", + "total": "159109975" + }, + "bdvAtRecapitalization": { + "bean": "75267111", + "lp": "576577000", + "total": "651844111" + } + }, + "0xd9dFfbF57621be31A157F696E464cc729FDc0E64": { + "tokens": { + "bean": "4590444049", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1318540787", + "lp": "0", + "total": "1318540787" + }, + "bdvAtRecapitalization": { + "bean": "4590444049", + "lp": "0", + "total": "4590444049" + } + }, + "0xd9C6b4d5253EDb3675d4377FE676552Bc7D704d7": { + "tokens": { + "bean": "607739572", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "174564684", + "lp": "0", + "total": "174564684" + }, + "bdvAtRecapitalization": { + "bean": "607739572", + "lp": "0", + "total": "607739572" + } + }, + "0xDA7Ece710c262a825b4d255e50f139FA17Fd401F": { + "tokens": { + "bean": "5054452115", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1451820608", + "lp": "0", + "total": "1451820608" + }, + "bdvAtRecapitalization": { + "bean": "5054452115", + "lp": "0", + "total": "5054452115" + } + }, + "0xDa8C9D1B00D12DdF67F2aa6aF582fD6A38209b39": { + "tokens": { + "bean": "3", + "lp": "36478222748" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "17173327140", + "total": "17173327141" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "72017642959", + "total": "72017642962" + } + }, + "0xDaA95A36D6CbD4E58A89253d3A19E26b067960C7": { + "tokens": { + "bean": "80000000001", + "lp": "16636969715" + }, + "bdvAtSnapshot": { + "bean": "22978880000", + "lp": "7832402513", + "total": "30811282513" + }, + "bdvAtRecapitalization": { + "bean": "80000000001", + "lp": "32845770835", + "total": "112845770836" + } + }, + "0xDb18957bE8fb364E2F293E7cA6e689Dc55991688": { + "tokens": { + "bean": "68914681", + "lp": "14803064876" + }, + "bdvAtSnapshot": { + "bean": "19794777", + "lp": "6969031292", + "total": "6988826069" + }, + "bdvAtRecapitalization": { + "bean": "68914681", + "lp": "29225158482", + "total": "29294073163" + } + }, + "0xDB23905E09bc6934204991f02729392a11eEd8F8": { + "tokens": { + "bean": "470148", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "135043", + "lp": "0", + "total": "135043" + }, + "bdvAtRecapitalization": { + "bean": "470148", + "lp": "0", + "total": "470148" + } + }, + "0xdAe3b4E9bA2F1bd8da873B7dd5a391781a8C1Ae4": { + "tokens": { + "bean": "271308483", + "lp": "9311099753" + }, + "bdvAtSnapshot": { + "bean": "77929563", + "lp": "4383507475", + "total": "4461437038" + }, + "bdvAtRecapitalization": { + "bean": "271308483", + "lp": "18382569299", + "total": "18653877782" + } + }, + "0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c": { + "tokens": { + "bean": "4", + "lp": "43959322278" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "20695301620", + "total": "20695301621" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "86787308647", + "total": "86787308651" + } + }, + "0xdb215bA8D9bed3aACE91E23307Caa00A8c9211f1": { + "tokens": { + "bean": "236496969", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "67930443", + "lp": "0", + "total": "67930443" + }, + "bdvAtRecapitalization": { + "bean": "236496969", + "lp": "0", + "total": "236496969" + } + }, + "0xdBab0B75921E3008Fd0bB621A8248D969d2d2F0d": { + "tokens": { + "bean": "741733199", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "213052477", + "lp": "0", + "total": "213052477" + }, + "bdvAtRecapitalization": { + "bean": "741733199", + "lp": "0", + "total": "741733199" + } + }, + "0xdB4fBc231F1D2b3B4c3d9e1602C895806fb06278": { + "tokens": { + "bean": "453729065876", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "130327321966", + "lp": "0", + "total": "130327321966" + }, + "bdvAtRecapitalization": { + "bean": "453729065876", + "lp": "2", + "total": "453729065878" + } + }, + "0xdbc098E0E692ac11Da95166cd9D22c47A05cD8b8": { + "tokens": { + "bean": "357118958", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "102577421", + "lp": "0", + "total": "102577421" + }, + "bdvAtRecapitalization": { + "bean": "357118958", + "lp": "0", + "total": "357118958" + } + }, + "0xdb4f969Eb7904A6ddf5528AE8d0E85F857991CFd": { + "tokens": { + "bean": "4548", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1306", + "lp": "0", + "total": "1306" + }, + "bdvAtRecapitalization": { + "bean": "4548", + "lp": "0", + "total": "4548" + } + }, + "0xdb59f54F833Ee542Ab4f99Cb3Cdd66CD1Aa7b318": { + "tokens": { + "bean": "5065750411", + "lp": "26425735111" + }, + "bdvAtSnapshot": { + "bean": "1455065885", + "lp": "12440786853", + "total": "13895852738" + }, + "bdvAtRecapitalization": { + "bean": "5065750411", + "lp": "52171378230", + "total": "57237128641" + } + }, + "0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661": { + "tokens": { + "bean": "2215630589137", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "636408867901", + "lp": "0", + "total": "636408867901" + }, + "bdvAtRecapitalization": { + "bean": "2215630589137", + "lp": "2", + "total": "2215630589139" + } + }, + "0xdbD721c163a58a339C9b291EEAE012F904b0E06d": { + "tokens": { + "bean": "381373603", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "109544228", + "lp": "0", + "total": "109544228" + }, + "bdvAtRecapitalization": { + "bean": "381373603", + "lp": "0", + "total": "381373603" + } + }, + "0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D": { + "tokens": { + "bean": "233806346686", + "lp": "6477722965" + }, + "bdvAtSnapshot": { + "bean": "67157599797", + "lp": "3049601851", + "total": "70207201648" + }, + "bdvAtRecapitalization": { + "bean": "233806346686", + "lp": "12788735430", + "total": "246595082116" + } + }, + "0xdbeDB1B7d359b0776E139D385c78a5ac9B27C0f9": { + "tokens": { + "bean": "199870416", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "57409979", + "lp": "0", + "total": "57409979" + }, + "bdvAtRecapitalization": { + "bean": "199870416", + "lp": "0", + "total": "199870416" + } + }, + "0xdC421f6599E483E98C460694Bb5B04bfB42FfDdb": { + "tokens": { + "bean": "681064608", + "lp": "3715652482" + }, + "bdvAtSnapshot": { + "bean": "195626274", + "lp": "1749266022", + "total": "1944892296" + }, + "bdvAtRecapitalization": { + "bean": "681064608", + "lp": "7335679034", + "total": "8016743642" + } + }, + "0xDC50cB21557c8A1F1161683FC2ec4Cf5829ef50C": { + "tokens": { + "bean": "17828618272", + "lp": "1852584419" + }, + "bdvAtSnapshot": { + "bean": "5121020998", + "lp": "872165251", + "total": "5993186249" + }, + "bdvAtRecapitalization": { + "bean": "17828618272", + "lp": "3657490776", + "total": "21486109048" + } + }, + "0xDC5d7233CeC5C6A543A7837bb0202449bc35b01B": { + "tokens": { + "bean": "187357358", + "lp": "2951915960" + }, + "bdvAtSnapshot": { + "bean": "53815778", + "lp": "1389711851", + "total": "1443527629" + }, + "bdvAtRecapitalization": { + "bean": "187357358", + "lp": "5827861492", + "total": "6015218850" + } + }, + "0xdbe95598aAf4ab9A68378FFB64b24e3126F346A6": { + "tokens": { + "bean": "995610703", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "285975236", + "lp": "0", + "total": "285975236" + }, + "bdvAtRecapitalization": { + "bean": "995610703", + "lp": "0", + "total": "995610703" + } + }, + "0xdC6a5B3DA5C6c4cA0204Bac74654bE877eebeC04": { + "tokens": { + "bean": "1371447334", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "393929046", + "lp": "0", + "total": "393929046" + }, + "bdvAtRecapitalization": { + "bean": "1371447334", + "lp": "0", + "total": "1371447334" + } + }, + "0xdC5f4CE4520fFdF54d8D1c0E71A01DbBaa11fcD8": { + "tokens": { + "bean": "3283409663", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "943113458", + "lp": "0", + "total": "943113458" + }, + "bdvAtRecapitalization": { + "bean": "3283409663", + "lp": "0", + "total": "3283409663" + } + }, + "0xDd689D6bE86e1d4c5D8b53Fe79bDD2cA694615D9": { + "tokens": { + "bean": "2987560427", + "lp": "96174294275" + }, + "bdvAtSnapshot": { + "bean": "858134907", + "lp": "45277222782", + "total": "46135357689" + }, + "bdvAtRecapitalization": { + "bean": "2987560427", + "lp": "189873449558", + "total": "192861009985" + } + }, + "0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8": { + "tokens": { + "bean": "37895374470", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "10884915781", + "lp": "0", + "total": "10884915781" + }, + "bdvAtRecapitalization": { + "bean": "37895374470", + "lp": "2", + "total": "37895374472" + } + }, + "0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78": { + "tokens": { + "bean": "3", + "lp": "931112040263" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "438351719651", + "total": "438351719652" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "1838261006673", + "total": "1838261006676" + } + }, + "0xDD11460317C683e4057E115eB14e1C9F7Ca41E12": { + "tokens": { + "bean": "2061105686", + "lp": "27623048934" + }, + "bdvAtSnapshot": { + "bean": "592023753", + "lp": "13004461846", + "total": "13596485599" + }, + "bdvAtRecapitalization": { + "bean": "2061105686", + "lp": "54535191841", + "total": "56596297527" + } + }, + "0xDe06264c6746b5A994F7499012EC9feC181D01E5": { + "tokens": { + "bean": "1279683454", + "lp": "11150413405" + }, + "bdvAtSnapshot": { + "bean": "367571157", + "lp": "5249425074", + "total": "5616996231" + }, + "bdvAtRecapitalization": { + "bean": "1279683454", + "lp": "22013860077", + "total": "23293543531" + } + }, + "0xde1b617d64A7b7ac7cf2CD50487c472b5632ce3c": { + "tokens": { + "bean": "1083110", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "311108", + "lp": "0", + "total": "311108" + }, + "bdvAtRecapitalization": { + "bean": "1083110", + "lp": "0", + "total": "1083110" + } + }, + "0xDe8589960DA34eeFB00Ca879D8CC12B11F52Cb12": { + "tokens": { + "bean": "239688747", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "68847237", + "lp": "0", + "total": "68847237" + }, + "bdvAtRecapitalization": { + "bean": "239688747", + "lp": "0", + "total": "239688747" + } + }, + "0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f": { + "tokens": { + "bean": "192593409", + "lp": "632262895" + }, + "bdvAtSnapshot": { + "bean": "55319760", + "lp": "297658622", + "total": "352978382" + }, + "bdvAtRecapitalization": { + "bean": "192593409", + "lp": "1248253890", + "total": "1440847299" + } + }, + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0": { + "tokens": { + "bean": "1419999999037", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "407875119723", + "lp": "0", + "total": "407875119723" + }, + "bdvAtRecapitalization": { + "bean": "1419999999037", + "lp": "2", + "total": "1419999999039" + } + }, + "0xDeb2a3547A13176719F006DB6c3886f90bAB323E": { + "tokens": { + "bean": "214553394", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "61627459", + "lp": "0", + "total": "61627459" + }, + "bdvAtRecapitalization": { + "bean": "214553394", + "lp": "0", + "total": "214553394" + } + }, + "0xdEb5b508847C9AB1295E83806855AbC3c9859B38": { + "tokens": { + "bean": "135702198069", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "38978556565", + "lp": "0", + "total": "38978556565" + }, + "bdvAtRecapitalization": { + "bean": "135702198069", + "lp": "0", + "total": "135702198069" + } + }, + "0xDEA7BE57c300Cfd394A9FA91b477D7127b01538e": { + "tokens": { + "bean": "6921", + "lp": "7074162224" + }, + "bdvAtSnapshot": { + "bean": "1988", + "lp": "3330395314", + "total": "3330397302" + }, + "bdvAtRecapitalization": { + "bean": "6921", + "lp": "13966264004", + "total": "13966270925" + } + }, + "0xDF8F82536c34a86FDa65BcEF40CB6A1d2fAD96C5": { + "tokens": { + "bean": "158205168", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "45442220", + "lp": "0", + "total": "45442220" + }, + "bdvAtRecapitalization": { + "bean": "158205168", + "lp": "0", + "total": "158205168" + } + }, + "0xdfdF626Cd38e41c6F3Cc72B271fe13303A224934": { + "tokens": { + "bean": "100000000", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "2", + "total": "100000002" + } + }, + "0xdf39603397764512b6147740CAD2ea669BfC3fFa": { + "tokens": { + "bean": "7003924331", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2011779209", + "lp": "0", + "total": "2011779209" + }, + "bdvAtRecapitalization": { + "bean": "7003924331", + "lp": "0", + "total": "7003924331" + } + }, + "0xdf044c7889935cCf0BD7a5D018E7e1e84000e4EB": { + "tokens": { + "bean": "145116208", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "41682599", + "lp": "0", + "total": "41682599" + }, + "bdvAtRecapitalization": { + "bean": "145116208", + "lp": "0", + "total": "145116208" + } + }, + "0xdEBA22ef671936a5CB3964C8469fDC32cF745C0a": { + "tokens": { + "bean": "377993318", + "lp": "1844594621" + }, + "bdvAtSnapshot": { + "bean": "108573289", + "lp": "868403789", + "total": "976977078" + }, + "bdvAtRecapitalization": { + "bean": "377993318", + "lp": "3641716806", + "total": "4019710124" + } + }, + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584": { + "tokens": { + "bean": "98240198", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28218122", + "lp": "0", + "total": "28218122" + }, + "bdvAtRecapitalization": { + "bean": "98240198", + "lp": "0", + "total": "98240198" + } + }, + "0xDFc6b16343F92c1347B6E9700aA6c5d9E34794A1": { + "tokens": { + "bean": "3522608031", + "lp": "12471161828" + }, + "bdvAtSnapshot": { + "bean": "1011819840", + "lp": "5871210979", + "total": "6883030819" + }, + "bdvAtRecapitalization": { + "bean": "3522608031", + "lp": "24621366178", + "total": "28143974209" + } + }, + "0xdedDEC0472852b71E7E0bD9A86D9a09d798094D0": { + "tokens": { + "bean": "273358260", + "lp": "851116260" + }, + "bdvAtSnapshot": { + "bean": "78518333", + "lp": "400691066", + "total": "479209399" + }, + "bdvAtRecapitalization": { + "bean": "273358260", + "lp": "1680328215", + "total": "1953686475" + } + }, + "0xe031B10E874FaE6989359cdE6f55fcBCF2bA2ffd": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0xE02A25580b96BE0B9986181Fd0b4CF2b9FD75Ec2": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd": { + "tokens": { + "bean": "5", + "lp": "39516534217" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "18603712528", + "total": "18603712529" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "78016071996", + "total": "78016072001" + } + }, + "0xe0842049837F79732d688d0d080aCee30b93578B": { + "tokens": { + "bean": "131800369", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "37857811", + "lp": "0", + "total": "37857811" + }, + "bdvAtRecapitalization": { + "bean": "131800369", + "lp": "0", + "total": "131800369" + } + }, + "0xe105EaC05168E75657fb7048B481A17A53AF91E8": { + "tokens": { + "bean": "6", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "0", + "total": "2" + }, + "bdvAtRecapitalization": { + "bean": "6", + "lp": "0", + "total": "6" + } + }, + "0xE0f61822B45bb03cdC581283287941517810D7bA": { + "tokens": { + "bean": "344813056", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "99042723", + "lp": "0", + "total": "99042723" + }, + "bdvAtRecapitalization": { + "bean": "344813056", + "lp": "0", + "total": "344813056" + } + }, + "0xe07e76714497eB8c3BB237eE5002C710E392b5A9": { + "tokens": { + "bean": "27963661903", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8032170390", + "lp": "0", + "total": "8032170390" + }, + "bdvAtRecapitalization": { + "bean": "27963661903", + "lp": "0", + "total": "27963661903" + } + }, + "0xe0B54aa5E28109F6Aa8bEdcff9622D61a75E6B83": { + "tokens": { + "bean": "2899377", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "832805", + "lp": "0", + "total": "832805" + }, + "bdvAtRecapitalization": { + "bean": "2899377", + "lp": "0", + "total": "2899377" + } + }, + "0xE12857955437543CacacC51AB6970A683eFE859c": { + "tokens": { + "bean": "1229680049", + "lp": "18346198644" + }, + "bdvAtSnapshot": { + "bean": "353208379", + "lp": "8637078436", + "total": "8990286815" + }, + "bdvAtRecapitalization": { + "bean": "1229680049", + "lp": "36220240024", + "total": "37449920073" + } + }, + "0xe16CDF494e2BA063909b3073c68Bf57d869EfCd6": { + "tokens": { + "bean": "701719617", + "lp": "10131421718" + }, + "bdvAtSnapshot": { + "bean": "201559136", + "lp": "4769701111", + "total": "4971260247" + }, + "bdvAtRecapitalization": { + "bean": "701719617", + "lp": "20002101445", + "total": "20703821062" + } + }, + "0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25": { + "tokens": { + "bean": "2", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "2", + "total": "4" + } + }, + "0xE1e98eAe1e00E692D77060237002a519E7e60b60": { + "tokens": { + "bean": "2339043101", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "671857384", + "lp": "0", + "total": "671857384" + }, + "bdvAtRecapitalization": { + "bean": "2339043101", + "lp": "0", + "total": "2339043101" + } + }, + "0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41": { + "tokens": { + "bean": "0", + "lp": "2142918640" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1008849666", + "total": "1008849666" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "4230687185", + "total": "4230687185" + } + }, + "0xE203096D7583E30888902b2608652c720D6C38da": { + "tokens": { + "bean": "3", + "lp": "7862675388" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "3701613907", + "total": "3701613908" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "15522997179", + "total": "15522997182" + } + }, + "0xe1762431241FE126a800c308D60178AdFF2D966a": { + "tokens": { + "bean": "323892255", + "lp": "1069479769" + }, + "bdvAtSnapshot": { + "bean": "93033516", + "lp": "503492894", + "total": "596526410" + }, + "bdvAtRecapitalization": { + "bean": "323892255", + "lp": "2111435436", + "total": "2435327691" + } + }, + "0xe21274B5c4cB75830F79d3A0dc38e7Ee49EC5b17": { + "tokens": { + "bean": "0", + "lp": "13734614" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "6466023", + "total": "6466023" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "27115754", + "total": "27115754" + } + }, + "0xe1D86a7088d05398A2B9bA566bE0b3C5ffa5D9aF": { + "tokens": { + "bean": "448063684446", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "128700020466", + "lp": "1", + "total": "128700020467" + }, + "bdvAtRecapitalization": { + "bean": "448063684446", + "lp": "4", + "total": "448063684450" + } + }, + "0xE218aF09CC357A5Cee1b214B262060fC314048A4": { + "tokens": { + "bean": "439463096", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "126229622", + "lp": "0", + "total": "126229622" + }, + "bdvAtRecapitalization": { + "bean": "439463096", + "lp": "0", + "total": "439463096" + } + }, + "0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C": { + "tokens": { + "bean": "38948040126", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "11187279254", + "lp": "0", + "total": "11187279254" + }, + "bdvAtRecapitalization": { + "bean": "38948040126", + "lp": "2", + "total": "38948040128" + } + }, + "0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3": { + "tokens": { + "bean": "2", + "lp": "1078919990" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "507937190", + "total": "507937191" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "2130072925", + "total": "2130072927" + } + }, + "0xE2bDaE527f99a68724B9D5C271438437FC2A4695": { + "tokens": { + "bean": "3", + "lp": "4525751282" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "2130646766", + "total": "2130646767" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "8935027954", + "total": "8935027957" + } + }, + "0xE30fBc19d251532824d86e900f52eEb95cD37EB3": { + "tokens": { + "bean": "1171809594", + "lp": "2372534571" + }, + "bdvAtSnapshot": { + "bean": "336585901", + "lp": "1116948943", + "total": "1453534844" + }, + "bdvAtRecapitalization": { + "bean": "1171809594", + "lp": "4684009658", + "total": "5855819252" + } + }, + "0xE2EdD6Ba259A7a7543e76df6F3Eab80154Ff7982": { + "tokens": { + "bean": "5667588472", + "lp": "1344962882" + }, + "bdvAtSnapshot": { + "bean": "1627935442", + "lp": "633185660", + "total": "2261121102" + }, + "bdvAtRecapitalization": { + "bean": "5667588472", + "lp": "2655311836", + "total": "8322900308" + } + }, + "0xe1d045be479CE7127186896A0149aaC7137b455E": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xE3A2Ad75e3e9B893c8188030BA7f550FDfEeadac": { + "tokens": { + "bean": "35240509399", + "lp": "6119604863" + }, + "bdvAtSnapshot": { + "bean": "10122342958", + "lp": "2881005936", + "total": "13003348894" + }, + "bdvAtRecapitalization": { + "bean": "35240509399", + "lp": "12081715744", + "total": "47322225143" + } + }, + "0xE3b2fC5a80B80C8F668484171D7395e3fDE76670": { + "tokens": { + "bean": "329645513743", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "94686058785", + "lp": "1", + "total": "94686058786" + }, + "bdvAtRecapitalization": { + "bean": "329645513743", + "lp": "4", + "total": "329645513747" + } + }, + "0xE382de4893143c06007bA7929D9532bFF2140A3F": { + "tokens": { + "bean": "690075141", + "lp": "876554253" + }, + "bdvAtSnapshot": { + "bean": "198214423", + "lp": "412666841", + "total": "610881264" + }, + "bdvAtRecapitalization": { + "bean": "690075141", + "lp": "1730549530", + "total": "2420624671" + } + }, + "0xe3B78e510c3229d2Fc48918621817DC87288EBa1": { + "tokens": { + "bean": "143474091", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "41210924", + "lp": "0", + "total": "41210924" + }, + "bdvAtRecapitalization": { + "bean": "143474091", + "lp": "0", + "total": "143474091" + } + }, + "0xe40617fd297164db4A57D72Ba507968216522f75": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0xE3D47BeCcb31D105C149B37A9486d945Cca1E469": { + "tokens": { + "bean": "885132137", + "lp": "20847364076" + }, + "bdvAtSnapshot": { + "bean": "254241815", + "lp": "9814584602", + "total": "10068826417" + }, + "bdvAtRecapitalization": { + "bean": "885132137", + "lp": "41158200964", + "total": "42043333101" + } + }, + "0xe3a08ccE7E0167373A965B7B0D0dc57B6A2142f7": { + "tokens": { + "bean": "5", + "lp": "3652469817" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "1719520698", + "total": "1719520699" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "7210939771", + "total": "7210939776" + } + }, + "0xE44E071BFE771158a7660dc13daB67de94f8273c": { + "tokens": { + "bean": "3", + "lp": "12319561055" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "5799839912", + "total": "5799839913" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "24322066226", + "total": "24322066229" + } + }, + "0xE432225AB3A24D0328c1eb8934f12C2C664dBF1E": { + "tokens": { + "bean": "17388042601", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4994471805", + "lp": "0", + "total": "4994471805" + }, + "bdvAtRecapitalization": { + "bean": "17388042601", + "lp": "0", + "total": "17388042601" + } + }, + "0xe43e06794069FeF7A93c1Ab5ef918CfC65e86E00": { + "tokens": { + "bean": "342945946", + "lp": "2730002425" + }, + "bdvAtSnapshot": { + "bean": "98506422", + "lp": "1285238732", + "total": "1383745154" + }, + "bdvAtRecapitalization": { + "bean": "342945946", + "lp": "5389745583", + "total": "5732691529" + } + }, + "0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6": { + "tokens": { + "bean": "400896824239", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "115152000207", + "lp": "0", + "total": "115152000207" + }, + "bdvAtRecapitalization": { + "bean": "400896824239", + "lp": "2", + "total": "400896824241" + } + }, + "0xE46523509280267d4785cFcF89eba8F3cbD96267": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xe4a7CE553722E3879Ff8d00A3A11A226414644e0": { + "tokens": { + "bean": "708631330", + "lp": "14714876813" + }, + "bdvAtSnapshot": { + "bean": "203544429", + "lp": "6927513851", + "total": "7131058280" + }, + "bdvAtRecapitalization": { + "bean": "708631330", + "lp": "29051051961", + "total": "29759683291" + } + }, + "0xE45D85B382EFd7833Da1B8CAB53B203D22340b1a": { + "tokens": { + "bean": "2", + "lp": "63250949781" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "29777471891", + "total": "29777471892" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "124874074858", + "total": "124874074860" + } + }, + "0xE463d56e80da7292A90faF77bA3F7524F0a0dCCd": { + "tokens": { + "bean": "2", + "lp": "25318561934" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "11919548543", + "total": "11919548544" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "49985526055", + "total": "49985526057" + } + }, + "0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74": { + "tokens": { + "bean": "2546321267", + "lp": "363787710477" + }, + "bdvAtSnapshot": { + "bean": "731395135", + "lp": "171265069701", + "total": "171996464836" + }, + "bdvAtRecapitalization": { + "bean": "2546321267", + "lp": "718212990445", + "total": "720759311712" + } + }, + "0xe4BF6E1967D7bc0Bd5E2C767c3A2CCAdf23446df": { + "tokens": { + "bean": "75132372017", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "21580722009", + "lp": "0", + "total": "21580722009" + }, + "bdvAtRecapitalization": { + "bean": "75132372017", + "lp": "2", + "total": "75132372019" + } + }, + "0xE558619863102240058d9784a0AdF7c886Fb92fC": { + "tokens": { + "bean": "79348386", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "22791713", + "lp": "0", + "total": "22791713" + }, + "bdvAtRecapitalization": { + "bean": "79348386", + "lp": "0", + "total": "79348386" + } + }, + "0xE543357D4F0EB174CfC6BeD6Ef5E7Ab5762f1B2B": { + "tokens": { + "bean": "919058938207", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "263986813175", + "lp": "0", + "total": "263986813175" + }, + "bdvAtRecapitalization": { + "bean": "919058938207", + "lp": "2", + "total": "919058938209" + } + }, + "0xe591F77B7D5a0a704fEBa8558430D7991e928888": { + "tokens": { + "bean": "381081130", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "109460219", + "lp": "0", + "total": "109460219" + }, + "bdvAtRecapitalization": { + "bean": "381081130", + "lp": "0", + "total": "381081130" + } + }, + "0xe58000ce4dd92a478959a24392d43D4c100C85Fd": { + "tokens": { + "bean": "1292984246", + "lp": "20251783293" + }, + "bdvAtSnapshot": { + "bean": "371391623", + "lp": "9534195294", + "total": "9905586917" + }, + "bdvAtRecapitalization": { + "bean": "1292984246", + "lp": "39982367248", + "total": "41275351494" + } + }, + "0xE58E375Cc657e434e6981218A356fAC756b98097": { + "tokens": { + "bean": "688318448", + "lp": "280372954" + }, + "bdvAtSnapshot": { + "bean": "197709838", + "lp": "131994820", + "total": "329704658" + }, + "bdvAtRecapitalization": { + "bean": "688318448", + "lp": "553530237", + "total": "1241848685" + } + }, + "0xe596607344348723Aa3E9a1A8551577dcCa6c5b5": { + "tokens": { + "bean": "561308344", + "lp": "2479932918" + }, + "bdvAtSnapshot": { + "bean": "161227963", + "lp": "1167510259", + "total": "1328738222" + }, + "bdvAtRecapitalization": { + "bean": "561308344", + "lp": "4896042351", + "total": "5457350695" + } + }, + "0xe693eB739c0bE8c2bDD978C550B5D8b8022A8adA": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0xE64995F539Ad9ddFAEac0C759244B26e0Eb94313": { + "tokens": { + "bean": "693765031", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "199274292", + "lp": "0", + "total": "199274292" + }, + "bdvAtRecapitalization": { + "bean": "693765031", + "lp": "0", + "total": "693765031" + } + }, + "0xe5eB46c6fdDb202CE7c1aa4CF3951F09F6ad00F3": { + "tokens": { + "bean": "730095641", + "lp": "8347100252" + }, + "bdvAtSnapshot": { + "bean": "209709752", + "lp": "3929672898", + "total": "4139382650" + }, + "bdvAtRecapitalization": { + "bean": "730095641", + "lp": "16479379762", + "total": "17209475403" + } + }, + "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14": { + "tokens": { + "bean": "31692769931", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "9103304464", + "lp": "0", + "total": "9103304464" + }, + "bdvAtRecapitalization": { + "bean": "31692769931", + "lp": "2", + "total": "31692769933" + } + }, + "0xe6a54e967ECB4E1e4b202678aED4918B5c492926": { + "tokens": { + "bean": "5129469071", + "lp": "48690971446" + }, + "bdvAtSnapshot": { + "bean": "1473368178", + "lp": "22922881610", + "total": "24396249788" + }, + "bdvAtRecapitalization": { + "bean": "5129469071", + "lp": "96128833390", + "total": "101258302461" + } + }, + "0xE6C459B2d9e8EafD205b74201Ce1988B28Bd2a1F": { + "tokens": { + "bean": "888547453", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "255222816", + "lp": "0", + "total": "255222816" + }, + "bdvAtRecapitalization": { + "bean": "888547453", + "lp": "0", + "total": "888547453" + } + }, + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0": { + "tokens": { + "bean": "0", + "lp": "9000000000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "4237047000", + "total": "4237047000" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "17768376248", + "total": "17768376248" + } + }, + "0xE6F00dDe5F7622298C16A9e39b471D1c1c2De250": { + "tokens": { + "bean": "1", + "lp": "120581249548" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "56767602406", + "total": "56767602406" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "238059223375", + "total": "238059223376" + } + }, + "0xE7a9c882C15288E8FaDd3f84127bF89b04dF81b3": { + "tokens": { + "bean": "3590569080", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1031340700", + "lp": "0", + "total": "1031340700" + }, + "bdvAtRecapitalization": { + "bean": "3590569080", + "lp": "0", + "total": "3590569080" + } + }, + "0xe7BaF7Af12E6b18c8cdd32292c6F06840cF71442": { + "tokens": { + "bean": "14586806683", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "4189856004", + "lp": "0", + "total": "4189856004" + }, + "bdvAtRecapitalization": { + "bean": "14586806683", + "lp": "2", + "total": "14586806685" + } + }, + "0xE8332043e54A2470e148f0c1ac0AF188d9D46524": { + "tokens": { + "bean": "429169", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "123273", + "lp": "0", + "total": "123273" + }, + "bdvAtRecapitalization": { + "bean": "429169", + "lp": "0", + "total": "429169" + } + }, + "0xe8438502821Bfc888d26C8687BDafAE4b3ac0338": { + "tokens": { + "bean": "61099061", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "17549850", + "lp": "0", + "total": "17549850" + }, + "bdvAtRecapitalization": { + "bean": "61099061", + "lp": "0", + "total": "61099061" + } + }, + "0xe82c4470c22ECD75393D508d709f6476043be567": { + "tokens": { + "bean": "36136168", + "lp": "506881070" + }, + "bdvAtSnapshot": { + "bean": "10379608", + "lp": "238630991", + "total": "249010599" + }, + "bdvAtRecapitalization": { + "bean": "36136168", + "lp": "1000717063", + "total": "1036853231" + } + }, + "0xe89791e429bd5f0D051548f6E7985F9ed3aF8220": { + "tokens": { + "bean": "1452230271", + "lp": "18793884131" + }, + "bdvAtSnapshot": { + "bean": "417132814", + "lp": "8847841153", + "total": "9264973967" + }, + "bdvAtRecapitalization": { + "bean": "1452230271", + "lp": "37104089377", + "total": "38556319648" + } + }, + "0xE874946c5876E5e6a9Fbc1e17DB759e06E3B3ffe": { + "tokens": { + "bean": "4134", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1187", + "lp": "0", + "total": "1187" + }, + "bdvAtRecapitalization": { + "bean": "4134", + "lp": "2", + "total": "4136" + } + }, + "0xe886eCE8dEA22C64592E16CE9c6060C354e0cB46": { + "tokens": { + "bean": "1573623904", + "lp": "2227901786" + }, + "bdvAtSnapshot": { + "bean": "452001436", + "lp": "1048858287", + "total": "1500859723" + }, + "bdvAtRecapitalization": { + "bean": "1573623904", + "lp": "4398466353", + "total": "5972090257" + } + }, + "0xe846880530689a4f03dBd4B34F0CDbb405609de1": { + "tokens": { + "bean": "8865", + "lp": "7247188750" + }, + "bdvAtSnapshot": { + "bean": "2546", + "lp": "3411853261", + "total": "3411855807" + }, + "bdvAtRecapitalization": { + "bean": "8865", + "lp": "14307864050", + "total": "14307872915" + } + }, + "0xe83120C1D336896De42dEa2f5fD58Fef1b6b9934": { + "tokens": { + "bean": "1896369116", + "lp": "12276071626" + }, + "bdvAtSnapshot": { + "bean": "544705479", + "lp": "5779365828", + "total": "6324071307" + }, + "bdvAtRecapitalization": { + "bean": "1896369116", + "lp": "24236206610", + "total": "26132575726" + } + }, + "0xe86a6C1D778F22D50056a0fED8486127387741e2": { + "tokens": { + "bean": "642138015", + "lp": "20330392091" + }, + "bdvAtSnapshot": { + "bean": "184445155", + "lp": "9571202980", + "total": "9755648135" + }, + "bdvAtRecapitalization": { + "bean": "642138015", + "lp": "40137561770", + "total": "40779699785" + } + }, + "0xe88a280b0434f0523c99455D2d6FB0E2E5BE088C": { + "tokens": { + "bean": "9331984214", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2680481818", + "lp": "0", + "total": "2680481818" + }, + "bdvAtRecapitalization": { + "bean": "9331984214", + "lp": "0", + "total": "9331984214" + } + }, + "0xe8C148209ADD124eE57199991E90a3b829A136aA": { + "tokens": { + "bean": "19", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5", + "lp": "0", + "total": "5" + }, + "bdvAtRecapitalization": { + "bean": "19", + "lp": "0", + "total": "19" + } + }, + "0xe8B04a194d7710d55b2213EC21D489Fe93ce2E52": { + "tokens": { + "bean": "541611396", + "lp": "51115370720" + }, + "bdvAtSnapshot": { + "bean": "155570291", + "lp": "24064247574", + "total": "24219817865" + }, + "bdvAtRecapitalization": { + "bean": "541611396", + "lp": "100915237665", + "total": "101456849061" + } + }, + "0xe8e8D10D48Bb4761E30A1A0C3f5705788E2Cf5Ca": { + "tokens": { + "bean": "179620123", + "lp": "16450317141" + }, + "bdvAtSnapshot": { + "bean": "51593366", + "lp": "7744529655", + "total": "7796123021" + }, + "bdvAtRecapitalization": { + "bean": "179620123", + "lp": "32477269373", + "total": "32656889496" + } + }, + "0xE95523f9fd968C64039538c2A4a0AD43a4904D15": { + "tokens": { + "bean": "29155", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "8374", + "lp": "0", + "total": "8374" + }, + "bdvAtRecapitalization": { + "bean": "29155", + "lp": "2", + "total": "29157" + } + }, + "0xe8F65bFf630a1102e45C53D89183040a2Da27D36": { + "tokens": { + "bean": "1933876197", + "lp": "8950331042" + }, + "bdvAtSnapshot": { + "bean": "555478863", + "lp": "4213663699", + "total": "4769142562" + }, + "bdvAtRecapitalization": { + "bean": "1933876197", + "lp": "17670316611", + "total": "19604192808" + } + }, + "0xE8eA41F87Bbd365a3ec766e35ac4aC1d6A5E760a": { + "tokens": { + "bean": "12935469875", + "lp": "7077591059" + }, + "bdvAtSnapshot": { + "bean": "3715532625", + "lp": "3332009552", + "total": "7047542177" + }, + "bdvAtRecapitalization": { + "bean": "12935469875", + "lp": "13973033429", + "total": "26908503304" + } + }, + "0xe974785b3f313FABDaD9a353AA45508B38C8C469": { + "tokens": { + "bean": "27703695", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "7957499", + "lp": "0", + "total": "7957499" + }, + "bdvAtRecapitalization": { + "bean": "27703695", + "lp": "0", + "total": "27703695" + } + }, + "0xe9886487879Cf286a7a212C8CFe5A9a948ea1649": { + "tokens": { + "bean": "10145092", + "lp": "43221079" + }, + "bdvAtSnapshot": { + "bean": "2914036", + "lp": "20347749", + "total": "23261785" + }, + "bdvAtRecapitalization": { + "bean": "10145092", + "lp": "85329821", + "total": "95474913" + } + }, + "0xe9c6f6D44C546CdD54231e673Ba8b612972cdD07": { + "tokens": { + "bean": "138315156", + "lp": "5320802891" + }, + "bdvAtSnapshot": { + "bean": "39729092", + "lp": "2504943547", + "total": "2544672639" + }, + "bdvAtRecapitalization": { + "bean": "138315156", + "lp": "10504669745", + "total": "10642984901" + } + }, + "0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29": { + "tokens": { + "bean": "819839894", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "235487532", + "lp": "0", + "total": "235487532" + }, + "bdvAtRecapitalization": { + "bean": "819839894", + "lp": "0", + "total": "819839894" + } + }, + "0xE9B05bC1FA8684EE3e01460aac2e64C678b9dA5d": { + "tokens": { + "bean": "2503335322", + "lp": "125411821849" + }, + "bdvAtSnapshot": { + "bean": "719048025", + "lp": "59041753726", + "total": "59760801751" + }, + "bdvAtRecapitalization": { + "bean": "2503335322", + "lp": "247596048501", + "total": "250099383823" + } + }, + "0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C": { + "tokens": { + "bean": "376911725", + "lp": "13050372705" + }, + "bdvAtSnapshot": { + "bean": "108262616", + "lp": "6143893613", + "total": "6252156229" + }, + "bdvAtRecapitalization": { + "bean": "376911725", + "lp": "25764881377", + "total": "26141793102" + } + }, + "0xe9F55fF0Ce2c086a02154E18d10696026aFC0E63": { + "tokens": { + "bean": "11542481487", + "lp": "24939498094" + }, + "bdvAtSnapshot": { + "bean": "3315416212", + "lp": "11741091731", + "total": "15056507943" + }, + "bdvAtRecapitalization": { + "bean": "11542481487", + "lp": "49237153951", + "total": "60779635438" + } + }, + "0xeA47644f110CC08B0Ecc731E992cbE3569940dad": { + "tokens": { + "bean": "197842027", + "lp": "980052514" + }, + "bdvAtSnapshot": { + "bean": "56827352", + "lp": "461392063", + "total": "518219415" + }, + "bdvAtRecapitalization": { + "bean": "197842027", + "lp": "1934882423", + "total": "2132724450" + } + }, + "0xEa87392249D04f80069AD60fdd367374bE315782": { + "tokens": { + "bean": "754143835", + "lp": "11959320560" + }, + "bdvAtSnapshot": { + "bean": "216617259", + "lp": "5630244811", + "total": "5846862070" + }, + "bdvAtRecapitalization": { + "bean": "754143835", + "lp": "23610856375", + "total": "24365000210" + } + }, + "0xEAa4F3773F57af1D4c7130e07CDE48050245511B": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xEaFc0e4AcF147e53398A4c9AE5F15950332Cce06": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0xEB0BC725FfA2F9f968C6950dfFb236FF2f199d4D": { + "tokens": { + "bean": "29083538", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8353839", + "lp": "0", + "total": "8353839" + }, + "bdvAtRecapitalization": { + "bean": "29083538", + "lp": "0", + "total": "29083538" + } + }, + "0xeC22fB3817c8D0037Cf58EE2fd1f74403a58fe51": { + "tokens": { + "bean": "189031067", + "lp": "3503015828" + }, + "bdvAtSnapshot": { + "bean": "54296528", + "lp": "1649160301", + "total": "1703456829" + }, + "bdvAtRecapitalization": { + "bean": "189031067", + "lp": "6915878137", + "total": "7104909204" + } + }, + "0xEc51Ea752664C14FCC356be60CC143B5aCB81428": { + "tokens": { + "bean": "562776815", + "lp": "592197611" + }, + "bdvAtSnapshot": { + "bean": "161649761", + "lp": "278796568", + "total": "440446329" + }, + "bdvAtRecapitalization": { + "bean": "562776815", + "lp": "1169154441", + "total": "1731931256" + } + }, + "0xEC5a0Dff55be882FAFe863895ef144b78aaEF097": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196": { + "tokens": { + "bean": "99871068", + "lp": "1022473326" + }, + "bdvAtSnapshot": { + "bean": "28686566", + "lp": "481363060", + "total": "510049626" + }, + "bdvAtRecapitalization": { + "bean": "99871068", + "lp": "2018632307", + "total": "2118503375" + } + }, + "0xec62e790d671439812A9958973acADB017d5Ff4D": { + "tokens": { + "bean": "4195390740", + "lp": "24660001843" + }, + "bdvAtSnapshot": { + "bean": "1205067255", + "lp": "11609509648", + "total": "12814576903" + }, + "bdvAtRecapitalization": { + "bean": "4195390740", + "lp": "48685354557", + "total": "52880745297" + } + }, + "0xEcFca03a9326541F69FF0210FB0CAfAdde935DE9": { + "tokens": { + "bean": "6", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "0", + "total": "2" + }, + "bdvAtRecapitalization": { + "bean": "6", + "lp": "0", + "total": "6" + } + }, + "0xEC4009A246789e37EA5278F5Cc8bF7Bc7f11A7D7": { + "tokens": { + "bean": "2734844903", + "lp": "6725740022" + }, + "bdvAtSnapshot": { + "bean": "785545911", + "lp": "3166364065", + "total": "3951909976" + }, + "bdvAtRecapitalization": { + "bean": "2734844903", + "lp": "13278386584", + "total": "16013231487" + } + }, + "0xEc89e2fc68D563595B82acBf1aaC1c7F1ECFe0dF": { + "tokens": { + "bean": "160661305", + "lp": "531244774" + }, + "bdvAtSnapshot": { + "bean": "46147711", + "lp": "250101008", + "total": "296248719" + }, + "bdvAtRecapitalization": { + "bean": "160661305", + "lp": "1048817447", + "total": "1209478752" + } + }, + "0xED02cbe1BeEa0891cCfC565B839a947c3d2fAb5C": { + "tokens": { + "bean": "94277813", + "lp": "1251037859" + }, + "bdvAtSnapshot": { + "bean": "27079982", + "lp": "588967356", + "total": "616047338" + }, + "bdvAtRecapitalization": { + "bean": "94277813", + "lp": "2469879042", + "total": "2564156855" + } + }, + "0xED0f30677C760Ea8f0BfF70C76eaFc79D5f7C3c8": { + "tokens": { + "bean": "3897862708", + "lp": "3259199695" + }, + "bdvAtSnapshot": { + "bean": "1119606493", + "lp": "1534375810", + "total": "2653982303" + }, + "bdvAtRecapitalization": { + "bean": "3897862708", + "lp": "6434520716", + "total": "10332383424" + } + }, + "0xeD131296C195a783d513EA8d439289f6Cf6295Fc": { + "tokens": { + "bean": "0", + "lp": "29064200000" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "13682931269", + "total": "13682931269" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "57380404548", + "total": "57380404548" + } + }, + "0xEd8440f3476073DF5077b5F97d34556fBd6c1AEA": { + "tokens": { + "bean": "1329790992", + "lp": "4397927948" + }, + "bdvAtSnapshot": { + "bean": "381963845", + "lp": "2070469713", + "total": "2452433558" + }, + "bdvAtRecapitalization": { + "bean": "1329790992", + "lp": "8682670943", + "total": "10012461935" + } + }, + "0xEdc0D61e5FcDc8949294Df3F5c13497643bE2B3E": { + "tokens": { + "bean": "20813316995", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5978333920", + "lp": "0", + "total": "5978333920" + }, + "bdvAtRecapitalization": { + "bean": "20813316995", + "lp": "0", + "total": "20813316995" + } + }, + "0xedC24C8a0B98715C4c42f23fA1a966D68d71DA40": { + "tokens": { + "bean": "1044469066", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "300009117", + "lp": "0", + "total": "300009117" + }, + "bdvAtRecapitalization": { + "bean": "1044469066", + "lp": "0", + "total": "1044469066" + } + }, + "0xed30c5f7F9AA27CCCd35A2717aFCd30907748353": { + "tokens": { + "bean": "765942723", + "lp": "1276583904" + }, + "bdvAtSnapshot": { + "bean": "220006324", + "lp": "600994000", + "total": "821000324" + }, + "bdvAtRecapitalization": { + "bean": "765942723", + "lp": "2520313680", + "total": "3286256403" + } + }, + "0xeE55F7F410487965aCDC4543DDcE241E299032A4": { + "tokens": { + "bean": "1", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2", + "total": "3" + } + }, + "0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef": { + "tokens": { + "bean": "87281940", + "lp": "143303480" + }, + "bdvAtSnapshot": { + "bean": "25070515", + "lp": "67464842", + "total": "92535357" + }, + "bdvAtRecapitalization": { + "bean": "87281940", + "lp": "282918906", + "total": "370200846" + } + }, + "0xEe20f85dD3f826700A6A42AF4873a04af8AC6D75": { + "tokens": { + "bean": "625", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "180", + "lp": "0", + "total": "180" + }, + "bdvAtRecapitalization": { + "bean": "625", + "lp": "0", + "total": "625" + } + }, + "0xeDC36b2972542c0813a7aBd2aE1bBb7750391907": { + "tokens": { + "bean": "13725330666", + "lp": "1786630028" + }, + "bdvAtSnapshot": { + "bean": "3942409079", + "lp": "841115044", + "total": "4783524123" + }, + "bdvAtRecapitalization": { + "bean": "13725330666", + "lp": "3527279395", + "total": "17252610061" + } + }, + "0xEe6cE216ceE9744BDc64cFB1c901d923d703b539": { + "tokens": { + "bean": "925106", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "265724", + "lp": "0", + "total": "265724" + }, + "bdvAtRecapitalization": { + "bean": "925106", + "lp": "0", + "total": "925106" + } + }, + "0xeEA71D769BE2028A276BBb5210eD87d2962E1bAD": { + "tokens": { + "bean": "277913241", + "lp": "728239830" + }, + "bdvAtSnapshot": { + "bean": "79826688", + "lp": "342842932", + "total": "422669620" + }, + "bdvAtRecapitalization": { + "bean": "277913241", + "lp": "1437737700", + "total": "1715650941" + } + }, + "0xEeCD7796c92978a7E0e8F6754367F365E6e7E1fd": { + "tokens": { + "bean": "1177623569", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "338255883", + "lp": "0", + "total": "338255883" + }, + "bdvAtRecapitalization": { + "bean": "1177623569", + "lp": "0", + "total": "1177623569" + } + }, + "0xeE95e4cf086Fc80dF7Ae0F39DFC9EA53A3eAadcB": { + "tokens": { + "bean": "8997565705", + "lp": "57011363768" + }, + "bdvAtSnapshot": { + "bean": "2584424783", + "lp": "26839980869", + "total": "29424405652" + }, + "bdvAtRecapitalization": { + "bean": "8997565705", + "lp": "112555484646", + "total": "121553050351" + } + }, + "0xEEb07cbca1a7F360FA8a6Bff4ac6f1eF47bbb8a1": { + "tokens": { + "bean": "4657201232", + "lp": "5159755629" + }, + "bdvAtSnapshot": { + "bean": "1337715853", + "lp": "2429125234", + "total": "3766841087" + }, + "bdvAtRecapitalization": { + "bean": "4657201232", + "lp": "10186719929", + "total": "14843921161" + } + }, + "0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee": { + "tokens": { + "bean": "44995484857", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "12924323088", + "lp": "0", + "total": "12924323088" + }, + "bdvAtRecapitalization": { + "bean": "44995484857", + "lp": "2", + "total": "44995484859" + } + }, + "0xEF488FB124D5028e81db9DCeBF683C1f997f73c1": { + "tokens": { + "bean": "8653004587", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2485454426", + "lp": "0", + "total": "2485454426" + }, + "bdvAtRecapitalization": { + "bean": "8653004587", + "lp": "0", + "total": "8653004587" + } + }, + "0xef5939492958abb8488ce5A5C68D61Ac29C07732": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xeE7840DAC7C3ec2cCDe49517fd3952e349997aB5": { + "tokens": { + "bean": "7", + "lp": "214046671286" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "100769534048", + "total": "100769534050" + }, + "bdvAtRecapitalization": { + "bean": "7", + "lp": "422584643328", + "total": "422584643335" + } + }, + "0xeF6c4192C8530A2502e153bDc2256dD72AB445e4": { + "tokens": { + "bean": "78345", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "22504", + "lp": "0", + "total": "22504" + }, + "bdvAtRecapitalization": { + "bean": "78345", + "lp": "0", + "total": "78345" + } + }, + "0xef764BAC8a438E7E498c2E5fcCf0f174c3E3F8dB": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xeF78730Aff229Ca10084c81334d405EA1DfE7EC5": { + "tokens": { + "bean": "177276222", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "50920113", + "lp": "0", + "total": "50920113" + }, + "bdvAtRecapitalization": { + "bean": "177276222", + "lp": "0", + "total": "177276222" + } + }, + "0xef7ad5c1b7F18382176BCA305256b3766cE86007": { + "tokens": { + "bean": "299216002", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "85945608", + "lp": "0", + "total": "85945608" + }, + "bdvAtRecapitalization": { + "bean": "299216002", + "lp": "0", + "total": "299216002" + } + }, + "0xEf49FFe2C1A6f64cfE18A26b3EfE7d87830838C8": { + "tokens": { + "bean": "1", + "lp": "2" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "1", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "4", + "total": "5" + } + }, + "0xEfA117fC408c83E82427fcc22A7d06302c542346": { + "tokens": { + "bean": "410161707", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "117813208", + "lp": "0", + "total": "117813208" + }, + "bdvAtRecapitalization": { + "bean": "410161707", + "lp": "0", + "total": "410161707" + } + }, + "0xef999424aC8D61f966fBA778b200ECc5B991633B": { + "tokens": { + "bean": "652881334", + "lp": "8747669816" + }, + "bdvAtSnapshot": { + "bean": "187531023", + "lp": "4118254239", + "total": "4305785262" + }, + "bdvAtRecapitalization": { + "bean": "652881334", + "lp": "17270209842", + "total": "17923091176" + } + }, + "0xEf7D9be5A88aF3c6Bc4D87606b2747695485E50E": { + "tokens": { + "bean": "4226187067", + "lp": "20113214846" + }, + "bdvAtSnapshot": { + "bean": "1213913068", + "lp": "9468959625", + "total": "10682872693" + }, + "bdvAtRecapitalization": { + "bean": "4226187067", + "lp": "39708796548", + "total": "43934983615" + } + }, + "0xEfa4c696Ea2505ec038c9dDC849b1bf817d7f69d": { + "tokens": { + "bean": "12652662", + "lp": "38596761" + }, + "bdvAtSnapshot": { + "bean": "3634300", + "lp": "18170699", + "total": "21804999" + }, + "bdvAtRecapitalization": { + "bean": "12652662", + "lp": "76200197", + "total": "88852859" + } + }, + "0xeFcc546826B5fa682c4931d0c83c49D208eC3B84": { + "tokens": { + "bean": "3265858233", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "938072055", + "lp": "0", + "total": "938072055" + }, + "bdvAtRecapitalization": { + "bean": "3265858233", + "lp": "0", + "total": "3265858233" + } + }, + "0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C": { + "tokens": { + "bean": "18573515721", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5334982362", + "lp": "0", + "total": "5334982362" + }, + "bdvAtRecapitalization": { + "bean": "18573515721", + "lp": "0", + "total": "18573515721" + } + }, + "0xF024e42Bc0d60a79c152425123949EC11d932275": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0xefaA5fE183b7CBe2772fE4AC88831b7Aa6C37422": { + "tokens": { + "bean": "41793316298", + "lp": "13079872856" + }, + "bdvAtSnapshot": { + "bean": "12004545000", + "lp": "6157781783", + "total": "18162326783" + }, + "bdvAtRecapitalization": { + "bean": "41793316298", + "lp": "25823122464", + "total": "67616438762" + } + }, + "0xF0062BD82a919f447dBBdE0D3768780F20Eff2c9": { + "tokens": { + "bean": "2255139321", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "647757198", + "lp": "0", + "total": "647757198" + }, + "bdvAtRecapitalization": { + "bean": "2255139321", + "lp": "0", + "total": "2255139321" + } + }, + "0xF05980BF83005362fdcBCB8F7A453fE40B669D96": { + "tokens": { + "bean": "24179617154", + "lp": "6269998975" + }, + "bdvAtSnapshot": { + "bean": "6945256513", + "lp": "2951808927", + "total": "9897065440" + }, + "bdvAtRecapitalization": { + "bean": "24179617154", + "lp": "12378633429", + "total": "36558250583" + } + }, + "0xF03C8c6A6aE736AB7089ffe1BbFF5428ec44d91C": { + "tokens": { + "bean": "2301738311", + "lp": "97446509654" + }, + "bdvAtSnapshot": { + "bean": "661142105", + "lp": "45876160154", + "total": "46537302259" + }, + "bdvAtRecapitalization": { + "bean": "2301738311", + "lp": "192385138616", + "total": "194686876927" + } + }, + "0xF05A92dFDa1D3a1771597Ca37925aAC4b88C7C25": { + "tokens": { + "bean": "640680954", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "184026635", + "lp": "0", + "total": "184026635" + }, + "bdvAtRecapitalization": { + "bean": "640680954", + "lp": "0", + "total": "640680954" + } + }, + "0xf05b641229bB2aA63b205Ad8B423a390F7Ef05A7": { + "tokens": { + "bean": "1061907439302", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "305018045235", + "lp": "0", + "total": "305018045235" + }, + "bdvAtRecapitalization": { + "bean": "1061907439302", + "lp": "2", + "total": "1061907439304" + } + }, + "0xf13D26F5B891CC36C72Ea078Ee308423a873C08d": { + "tokens": { + "bean": "158529744", + "lp": "9733741248" + }, + "bdvAtSnapshot": { + "bean": "45535450", + "lp": "4582479906", + "total": "4628015356" + }, + "bdvAtRecapitalization": { + "bean": "158529744", + "lp": "19216975199", + "total": "19375504943" + } + }, + "0xf086898A7DB69Da014d79f7A86CC62d29F84d7b7": { + "tokens": { + "bean": "597928", + "lp": "857630" + }, + "bdvAtSnapshot": { + "bean": "171746", + "lp": "403758", + "total": "575504" + }, + "bdvAtRecapitalization": { + "bean": "597928", + "lp": "1693188", + "total": "2291116" + } + }, + "0xf13F7bF69a5E57Ea3367222C65DD3380096d3FBF": { + "tokens": { + "bean": "385430918", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "110709635", + "lp": "0", + "total": "110709635" + }, + "bdvAtRecapitalization": { + "bean": "385430918", + "lp": "0", + "total": "385430918" + } + }, + "0xF1349Aa788121306c54109DB01abD5eB2f951ca0": { + "tokens": { + "bean": "1264366866", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "363171681", + "lp": "0", + "total": "363171681" + }, + "bdvAtRecapitalization": { + "bean": "1264366866", + "lp": "0", + "total": "1264366866" + } + }, + "0xF14Ee792bb979Aa08b5c65B1069A4209159d13fE": { + "tokens": { + "bean": "1753878975", + "lp": "1010785293" + }, + "bdvAtSnapshot": { + "bean": "503777181", + "lp": "475860533", + "total": "979637714" + }, + "bdvAtRecapitalization": { + "bean": "1753878975", + "lp": "1995557044", + "total": "3749436019" + } + }, + "0xF17722FFA53A2C57BDa1068a6890CDA8d6caF110": { + "tokens": { + "bean": "1047342", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "300834", + "lp": "0", + "total": "300834" + }, + "bdvAtRecapitalization": { + "bean": "1047342", + "lp": "0", + "total": "1047342" + } + }, + "0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22": { + "tokens": { + "bean": "115655380692", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "33220388928", + "lp": "0", + "total": "33220388928" + }, + "bdvAtRecapitalization": { + "bean": "115655380692", + "lp": "0", + "total": "115655380692" + } + }, + "0xF1cCFA46B1356589EC6361468f3520Aff95B21c3": { + "tokens": { + "bean": "3678377905", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1056562556", + "lp": "0", + "total": "1056562556" + }, + "bdvAtRecapitalization": { + "bean": "3678377905", + "lp": "0", + "total": "3678377905" + } + }, + "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d": { + "tokens": { + "bean": "4", + "lp": "63521055537" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "29904633089", + "total": "29904633090" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "125407334936", + "total": "125407334940" + } + }, + "0xF18507A3D7907F2FDa0F80ea74b92707F67E0bd9": { + "tokens": { + "bean": "470582424", + "lp": "30440702665" + }, + "bdvAtSnapshot": { + "bean": "135168213", + "lp": "14330965323", + "total": "14466133536" + }, + "bdvAtRecapitalization": { + "bean": "470582424", + "lp": "60097984244", + "total": "60568566668" + } + }, + "0xF1F90739858584CEC5F198C2c9926c1d6Bfeb1BB": { + "tokens": { + "bean": "1455614100", + "lp": "28566483105" + }, + "bdvAtSnapshot": { + "bean": "418104772", + "lp": "13448614616", + "total": "13866719388" + }, + "bdvAtRecapitalization": { + "bean": "1455614100", + "lp": "56397779987", + "total": "57853394087" + } + }, + "0xf1db5C88Ac2b757e8B33F2E58E19CC55b3039898": { + "tokens": { + "bean": "3448985221", + "lp": "106468217674" + }, + "bdvAtSnapshot": { + "bean": "990672719", + "lp": "50123426921", + "total": "51114099640" + }, + "bdvAtRecapitalization": { + "bean": "3448985221", + "lp": "210196372227", + "total": "213645357448" + } + }, + "0xF230B3EDaD4bE957Cc23aB1e94024181f7df7aA4": { + "tokens": { + "bean": "10453728", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3002687", + "lp": "0", + "total": "3002687" + }, + "bdvAtRecapitalization": { + "bean": "10453728", + "lp": "0", + "total": "10453728" + } + }, + "0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657": { + "tokens": { + "bean": "2306226785328", + "lp": "7358405056" + }, + "bdvAtSnapshot": { + "bean": "662431356910", + "lp": "3464212007", + "total": "665895568917" + }, + "bdvAtRecapitalization": { + "bean": "2306226785328", + "lp": "14527434402", + "total": "2320754219730" + } + }, + "0xF28AbB406EfBc933773789e69B505eEa8e6B6fCa": { + "tokens": { + "bean": "1167702", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "335406", + "lp": "0", + "total": "335406" + }, + "bdvAtRecapitalization": { + "bean": "1167702", + "lp": "0", + "total": "1167702" + } + }, + "0xf287893Cd86b5f13c3a602f3C75B48E1b1aD5b0f": { + "tokens": { + "bean": "679608175", + "lp": "106386736" + }, + "bdvAtSnapshot": { + "bean": "195207934", + "lp": "50085067", + "total": "245293001" + }, + "bdvAtRecapitalization": { + "bean": "679608175", + "lp": "210035506", + "total": "889643681" + } + }, + "0xf286E07ED6889658A3285C05C4f736963cF41456": { + "tokens": { + "bean": "20079635", + "lp": "12059038142" + }, + "bdvAtSnapshot": { + "bean": "5767594", + "lp": "5677190154", + "total": "5682957748" + }, + "bdvAtRecapitalization": { + "bean": "20079635", + "lp": "23807725210", + "total": "23827804845" + } + }, + "0xf28E9401310E13Cfd3ae0A9AF083af9101069453": { + "tokens": { + "bean": "2773714881", + "lp": "1916296478" + }, + "bdvAtSnapshot": { + "bean": "796710768", + "lp": "902159805", + "total": "1698870573" + }, + "bdvAtRecapitalization": { + "bean": "2773714881", + "lp": "3783275203", + "total": "6556990084" + } + }, + "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5": { + "tokens": { + "bean": "245346902", + "lp": "8890750329" + }, + "bdvAtSnapshot": { + "bean": "70472463", + "lp": "4185614112", + "total": "4256086575" + }, + "bdvAtRecapitalization": { + "bean": "245346902", + "lp": "17552688552", + "total": "17798035454" + } + }, + "0xf295eCbE3cf6aB9fD521DFDF2B3ad296389d659F": { + "tokens": { + "bean": "85075016", + "lp": "975426603" + }, + "bdvAtSnapshot": { + "bean": "24436607", + "lp": "459214262", + "total": "483650869" + }, + "bdvAtRecapitalization": { + "bean": "85075016", + "lp": "1925749654", + "total": "2010824670" + } + }, + "0xF2cB7617c7cbcBCc1F3A51bfc6D71aE749df5d60": { + "tokens": { + "bean": "130594577", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "37511464", + "lp": "0", + "total": "37511464" + }, + "bdvAtRecapitalization": { + "bean": "130594577", + "lp": "0", + "total": "130594577" + } + }, + "0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e": { + "tokens": { + "bean": "35069085792", + "lp": "1156538978" + }, + "bdvAtSnapshot": { + "bean": "10073103927", + "lp": "544478890", + "total": "10617582817" + }, + "bdvAtRecapitalization": { + "bean": "35069085792", + "lp": "2283313301", + "total": "37352399093" + } + }, + "0xF3659FA421DdC3517D7A37370a727C717Ce7855e": { + "tokens": { + "bean": "733900", + "lp": "446369147" + }, + "bdvAtSnapshot": { + "bean": "210803", + "lp": "210143006", + "total": "210353809" + }, + "bdvAtRecapitalization": { + "bean": "733900", + "lp": "881250550", + "total": "881984450" + } + }, + "0xf2d67343cB0599317127591bcef979feaF32fF76": { + "tokens": { + "bean": "966978438640", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "277751018801", + "lp": "0", + "total": "277751018801" + }, + "bdvAtRecapitalization": { + "bean": "966978438640", + "lp": "2", + "total": "966978438642" + } + }, + "0xF38762504B458dC12E404Ac42B5ab618A7c4c78A": { + "tokens": { + "bean": "2379137494", + "lp": "3662008673" + }, + "bdvAtSnapshot": { + "bean": "683373937", + "lp": "1724011429", + "total": "2407385366" + }, + "bdvAtRecapitalization": { + "bean": "2379137494", + "lp": "7229771992", + "total": "9608909486" + } + }, + "0xf393fb8C4BbF7e37f583D0593AD1d1b2443E205c": { + "tokens": { + "bean": "833352744", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "239368909", + "lp": "0", + "total": "239368909" + }, + "bdvAtRecapitalization": { + "bean": "833352744", + "lp": "0", + "total": "833352744" + } + }, + "0xF4003979abEbEf7dEdCE0FcB0A8064617ba1cb6c": { + "tokens": { + "bean": "497157110", + "lp": "344229918" + }, + "bdvAtSnapshot": { + "bean": "142801420", + "lp": "162057593", + "total": "304859013" + }, + "bdvAtRecapitalization": { + "bean": "497157110", + "lp": "679600744", + "total": "1176757854" + } + }, + "0xF3A45Ee798fc560CE080d143D12312185f84aa72": { + "tokens": { + "bean": "4206184082", + "lp": "9744363998" + }, + "bdvAtSnapshot": { + "bean": "1208167491", + "lp": "4587480916", + "total": "5795648407" + }, + "bdvAtRecapitalization": { + "bean": "4206184082", + "lp": "19237947312", + "total": "23444131394" + } + }, + "0xf476f6c0c97d088C3A1Ec2a076218C22EDFE018D": { + "tokens": { + "bean": "853064635", + "lp": "2649227875" + }, + "bdvAtSnapshot": { + "bean": "245030873", + "lp": "1247211447", + "total": "1492242320" + }, + "bdvAtRecapitalization": { + "bean": "853064635", + "lp": "5230275294", + "total": "6083339929" + } + }, + "0xf39B2C3D35B9bC51C332151D76f236426cF87bBB": { + "tokens": { + "bean": "276622424", + "lp": "2511673640" + }, + "bdvAtSnapshot": { + "bean": "79455919", + "lp": "1182453251", + "total": "1261909170" + }, + "bdvAtRecapitalization": { + "bean": "276622424", + "lp": "4958706916", + "total": "5235329340" + } + }, + "0xf3e9848D5accE2f83b8078ee21f458e59ec4289A": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0xf3E52C9756a7Cc53F15895B11cc248B1694C3D81": { + "tokens": { + "bean": "111071187192", + "lp": "130409638294" + }, + "bdvAtSnapshot": { + "bean": "31903643524", + "lp": "61394640745", + "total": "93298284269" + }, + "bdvAtRecapitalization": { + "bean": "111071187192", + "lp": "257463057724", + "total": "368534244916" + } + }, + "0xf4b785ef2c10D5662A053043E362e7E74E14A206": { + "tokens": { + "bean": "48761390", + "lp": "308191468" + }, + "bdvAtSnapshot": { + "bean": "14006027", + "lp": "145091304", + "total": "159097331" + }, + "bdvAtRecapitalization": { + "bean": "48761390", + "lp": "608451329", + "total": "657212719" + } + }, + "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C": { + "tokens": { + "bean": "4", + "lp": "21374625723" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "10062810422", + "total": "10062810423" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "42199154666", + "total": "42199154670" + } + }, + "0xF4CEC45FcdeDFafAa6bcB66736bBd332Ce43bA23": { + "tokens": { + "bean": "63394170", + "lp": "219697214" + }, + "bdvAtSnapshot": { + "bean": "18209088", + "lp": "103429713", + "total": "121638801" + }, + "bdvAtRecapitalization": { + "bean": "63394170", + "lp": "433740307", + "total": "497134477" + } + }, + "0xF5664196ce7d0714Ee400C4C239b29608c9314Cd": { + "tokens": { + "bean": "3425901041", + "lp": "2298974420" + }, + "bdvAtSnapshot": { + "bean": "984042111", + "lp": "1082318074", + "total": "2066360185" + }, + "bdvAtRecapitalization": { + "bean": "3425901041", + "lp": "4538782498", + "total": "7964683539" + } + }, + "0xf53cAB0C6F25f48F985d1e2c40E03FC7C1963364": { + "tokens": { + "bean": "4027198097", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1156756273", + "lp": "0", + "total": "1156756273" + }, + "bdvAtRecapitalization": { + "bean": "4027198097", + "lp": "0", + "total": "4027198097" + } + }, + "0xF56DD30d6Ab0eBDAe3A2892597eC5C8EE03Df099": { + "tokens": { + "bean": "5455454447", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1567002914", + "lp": "0", + "total": "1567002914" + }, + "bdvAtRecapitalization": { + "bean": "5455454447", + "lp": "0", + "total": "5455454447" + } + }, + "0xF50ABEF10CFcF99CdF69D52758799932933c3a80": { + "tokens": { + "bean": "901649361", + "lp": "34635033690" + }, + "bdvAtSnapshot": { + "bean": "258986156", + "lp": "16305585066", + "total": "16564571222" + }, + "bdvAtRecapitalization": { + "bean": "901649361", + "lp": "68378701106", + "total": "69280350467" + } + }, + "0xf58F3DBB422624FE0Dd9E67dE9767c149Bf04fdd": { + "tokens": { + "bean": "498544789", + "lp": "2231513389" + }, + "bdvAtSnapshot": { + "bean": "143200011", + "lp": "1050558568", + "total": "1193758579" + }, + "bdvAtRecapitalization": { + "bean": "498544789", + "lp": "4405596611", + "total": "4904141400" + } + }, + "0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3": { + "tokens": { + "bean": "143321607000", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "41167125108", + "lp": "0", + "total": "41167125108" + }, + "bdvAtRecapitalization": { + "bean": "143321607000", + "lp": "2", + "total": "143321607002" + } + }, + "0xF5Aebb3bFA1d7310EA3e6607669e59c4964B2013": { + "tokens": { + "bean": "262437728", + "lp": "5131427147" + }, + "bdvAtSnapshot": { + "bean": "75381563", + "lp": "2415788667", + "total": "2491170230" + }, + "bdvAtRecapitalization": { + "bean": "262437728", + "lp": "10130792026", + "total": "10393229754" + } + }, + "0xF62405e188Bb9629eD623d60B7c70dCc4e2ABd81": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xF5Ca1b4F227257B5367515498B38908d593E1EBe": { + "tokens": { + "bean": "545968514", + "lp": "6036245700" + }, + "bdvAtSnapshot": { + "bean": "156821812", + "lp": "2841761859", + "total": "2998583671" + }, + "bdvAtRecapitalization": { + "bean": "545968514", + "lp": "11917142747", + "total": "12463111261" + } + }, + "0xf62dC438Cd36b0E51DE92808382d040883f5A2d3": { + "tokens": { + "bean": "19980143", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5739016", + "lp": "0", + "total": "5739016" + }, + "bdvAtRecapitalization": { + "bean": "19980143", + "lp": "0", + "total": "19980143" + } + }, + "0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73": { + "tokens": { + "bean": "948480121", + "lp": "5026659873" + }, + "bdvAtSnapshot": { + "bean": "272437636", + "lp": "2366466015", + "total": "2638903651" + }, + "bdvAtRecapitalization": { + "bean": "948480121", + "lp": "9923953766", + "total": "10872433887" + } + }, + "0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2": { + "tokens": { + "bean": "90778002353", + "lp": "209093839787" + }, + "bdvAtSnapshot": { + "bean": "26074710284", + "lp": "98437825176", + "total": "124512535460" + }, + "bdvAtRecapitalization": { + "bean": "90778002353", + "lp": "412806446265", + "total": "503584448618" + } + }, + "0xF69218D01eedd7ad518863ad65Ea390315f25C92": { + "tokens": { + "bean": "454017582", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "130410194", + "lp": "0", + "total": "130410194" + }, + "bdvAtRecapitalization": { + "bean": "454017582", + "lp": "0", + "total": "454017582" + } + }, + "0xf69EA6646cf682262E84cd7c67133eac59cef07b": { + "tokens": { + "bean": "6169349391", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1772059242", + "lp": "0", + "total": "1772059242" + }, + "bdvAtRecapitalization": { + "bean": "6169349391", + "lp": "0", + "total": "6169349391" + } + }, + "0xf679A24BBF27c79dB5148a4908488fA01ed51625": { + "tokens": { + "bean": "335332460", + "lp": "10920326562" + }, + "bdvAtSnapshot": { + "bean": "96319554", + "lp": "5141104100", + "total": "5237423654" + }, + "bdvAtRecapitalization": { + "bean": "335332460", + "lp": "21559607900", + "total": "21894940360" + } + }, + "0xf6FbDeCb1193f6b15659cE747bfC561E06f1214a": { + "tokens": { + "bean": "1", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "2", + "total": "3" + } + }, + "0xF6aaEdc61221A551fDaA0C6BD18626d637f4E99D": { + "tokens": { + "bean": "897126299", + "lp": "19690685470" + }, + "bdvAtSnapshot": { + "bean": "257686970", + "lp": "9270039978", + "total": "9527726948" + }, + "bdvAtRecapitalization": { + "bean": "897126299", + "lp": "38874612000", + "total": "39771738299" + } + }, + "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8": { + "tokens": { + "bean": "2", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "2", + "total": "4" + } + }, + "0xf719550e63911E1Fa672d7886AA6c0110532A763": { + "tokens": { + "bean": "980428255", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "281614290", + "lp": "0", + "total": "281614290" + }, + "bdvAtRecapitalization": { + "bean": "980428255", + "lp": "2", + "total": "980428257" + } + }, + "0xf70A76bFC303AF23eC3CE34900aF9eA4df1407B7": { + "tokens": { + "bean": "3633485", + "lp": "301054573" + }, + "bdvAtSnapshot": { + "bean": "1043668", + "lp": "141731375", + "total": "142775043" + }, + "bdvAtRecapitalization": { + "bean": "3633485", + "lp": "594361214", + "total": "597994699" + } + }, + "0xF73FE15cFB88ea3C7f301F16adE3c02564ACa407": { + "tokens": { + "bean": "1040043277", + "lp": "8979438296" + }, + "bdvAtSnapshot": { + "bean": "298737871", + "lp": "4227366899", + "total": "4526104770" + }, + "bdvAtRecapitalization": { + "bean": "1040043277", + "lp": "17727782015", + "total": "18767825292" + } + }, + "0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765": { + "tokens": { + "bean": "1517642249", + "lp": "3573225683" + }, + "bdvAtSnapshot": { + "bean": "435921489", + "lp": "1682213907", + "total": "2118135396" + }, + "bdvAtRecapitalization": { + "bean": "1517642249", + "lp": "7054490928", + "total": "8572133177" + } + }, + "0xf78da0B8Ae888C318e1A19415d593729A61Ac0c3": { + "tokens": { + "bean": "1006148748", + "lp": "22528489312" + }, + "bdvAtSnapshot": { + "bean": "289002142", + "lp": "10606029784", + "total": "10895031926" + }, + "bdvAtRecapitalization": { + "bean": "1006148748", + "lp": "44477186043", + "total": "45483334791" + } + }, + "0xf7acc9E4E4F82300b9A92Bc4D539C7928c23233B": { + "tokens": { + "bean": "3482390377", + "lp": "29377494145" + }, + "bdvAtSnapshot": { + "bean": "1000267882", + "lp": "13830424826", + "total": "14830692708" + }, + "bdvAtRecapitalization": { + "bean": "3482390377", + "lp": "57998929909", + "total": "61481320286" + } + }, + "0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC": { + "tokens": { + "bean": "300000000004", + "lp": "94482035370" + }, + "bdvAtSnapshot": { + "bean": "86170800001", + "lp": "44480536058", + "total": "130651336059" + }, + "bdvAtRecapitalization": { + "bean": "300000000004", + "lp": "186532483677", + "total": "486532483681" + } + }, + "0xF7d4699Bb387bC4152855fcd22A1031511C6e9b6": { + "tokens": { + "bean": "127741043", + "lp": "2352148920" + }, + "bdvAtSnapshot": { + "bean": "36691826", + "lp": "1107351725", + "total": "1144043551" + }, + "bdvAtRecapitalization": { + "bean": "127741043", + "lp": "4643763000", + "total": "4771504043" + } + }, + "0xF840AA35b73EE0Bbf488D81d684706729Aba0a15": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xF869B8e5a54e7D93D98fc7C5c9D48fe972C330CA": { + "tokens": { + "bean": "18788611", + "lp": "4997670507" + }, + "bdvAtSnapshot": { + "bean": "5396765", + "lp": "2352818314", + "total": "2358215079" + }, + "bdvAtRecapitalization": { + "bean": "18788611", + "lp": "9866721103", + "total": "9885509714" + } + }, + "0xF87AEDfbB53d7DB34c730a50B480F5717860d0Bf": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0xF871f8c17c571c158b4b5d18802cc329Ee9F19dF": { + "tokens": { + "bean": "811692658", + "lp": "22721798729" + }, + "bdvAtSnapshot": { + "bean": "233147352", + "lp": "10697036571", + "total": "10930183923" + }, + "bdvAtRecapitalization": { + "bean": "811692658", + "lp": "44858829871", + "total": "45670522529" + } + }, + "0xf84F39554247723C757066b8fd7789462aC25894": { + "tokens": { + "bean": "26302769366", + "lp": "1232458169" + }, + "bdvAtSnapshot": { + "bean": "7555102262", + "lp": "580220354", + "total": "8135322616" + }, + "bdvAtRecapitalization": { + "bean": "26302769366", + "lp": "2433197828", + "total": "28735967194" + } + }, + "0xf8aA30A3aCFaD49efbB6837f8fEa8225D66E993b": { + "tokens": { + "bean": "561469257", + "lp": "51021624748" + }, + "bdvAtSnapshot": { + "bean": "161274184", + "lp": "24020113564", + "total": "24181387748" + }, + "bdvAtRecapitalization": { + "bean": "561469257", + "lp": "100730158365", + "total": "101291627622" + } + }, + "0xf80cDe9FBB874500E8932de19B374Ab473E7d207": { + "tokens": { + "bean": "1418158846", + "lp": "34953795085" + }, + "bdvAtSnapshot": { + "bean": "407346274", + "lp": "16455652512", + "total": "16862998786" + }, + "bdvAtRecapitalization": { + "bean": "1418158846", + "lp": "69008020261", + "total": "70426179107" + } + }, + "0xf8BaC06C2D8AA828ebbB0e475ce72f07462f28e1": { + "tokens": { + "bean": "1024933574", + "lp": "23428932918" + }, + "bdvAtSnapshot": { + "bean": "294397820", + "lp": "11029943326", + "total": "11324341146" + }, + "bdvAtRecapitalization": { + "bean": "1024933574", + "lp": "46254899463", + "total": "47279833037" + } + }, + "0xF88D3861f620699C4B3ec5D6191FFbF164CfbBC3": { + "tokens": { + "bean": "9689806570", + "lp": "97582218568" + }, + "bdvAtSnapshot": { + "bean": "2783261280", + "lp": "45940049604", + "total": "48723310884" + }, + "bdvAtRecapitalization": { + "bean": "9689806570", + "lp": "192653063843", + "total": "202342870413" + } + }, + "0xf8d5708b32616b6c85c97F5a9c344e6B7076fE98": { + "tokens": { + "bean": "275033253", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "78999451", + "lp": "0", + "total": "78999451" + }, + "bdvAtRecapitalization": { + "bean": "275033253", + "lp": "0", + "total": "275033253" + } + }, + "0xF90A01Af91468F5418cDA5Ed6b19C51550eB5352": { + "tokens": { + "bean": "275235709", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "79057604", + "lp": "0", + "total": "79057604" + }, + "bdvAtRecapitalization": { + "bean": "275235709", + "lp": "0", + "total": "275235709" + } + }, + "0xF904cE88D7523a54c6C1eD4b98D6fc9562E91443": { + "tokens": { + "bean": "4854837104", + "lp": "24017707772" + }, + "bdvAtSnapshot": { + "bean": "1394483990", + "lp": "11307128518", + "total": "12701612508" + }, + "bdvAtRecapitalization": { + "bean": "4854837104", + "lp": "47417296478", + "total": "52272133582" + } + }, + "0xf95ecba30184289D15926Eb61337839E973a97df": { + "tokens": { + "bean": "34978297", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10047026", + "lp": "0", + "total": "10047026" + }, + "bdvAtRecapitalization": { + "bean": "34978297", + "lp": "0", + "total": "34978297" + } + }, + "0xF96a3DC0f7990035E3333e658B890d0f16171102": { + "tokens": { + "bean": "256598554", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "73704342", + "lp": "0", + "total": "73704342" + }, + "bdvAtRecapitalization": { + "bean": "256598554", + "lp": "0", + "total": "256598554" + } + }, + "0xf8fdCac2C64Ba5e0459F67b9610bd3eda11F04ba": { + "tokens": { + "bean": "6224389356", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1787868701", + "lp": "0", + "total": "1787868701" + }, + "bdvAtRecapitalization": { + "bean": "6224389356", + "lp": "2", + "total": "6224389358" + } + }, + "0xf973554fbA6059F4aF0e362fcf48AB8497eC1d8f": { + "tokens": { + "bean": "411931663", + "lp": "2098165038" + }, + "bdvAtSnapshot": { + "bean": "118321603", + "lp": "987780431", + "total": "1106102034" + }, + "bdvAtRecapitalization": { + "bean": "411931663", + "lp": "4142331758", + "total": "4554263421" + } + }, + "0xF9D183AF486A973b7921ceb5FdC9908D12AAb440": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xF99AD4a6272CAea33AeEE2031B072100479FDFBD": { + "tokens": { + "bean": "9873760", + "lp": "30262368" + }, + "bdvAtSnapshot": { + "bean": "2836099", + "lp": "14247008", + "total": "17083107" + }, + "bdvAtRecapitalization": { + "bean": "9873760", + "lp": "59745905", + "total": "69619665" + } + }, + "0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4": { + "tokens": { + "bean": "45603434207", + "lp": "39385133996" + }, + "bdvAtSnapshot": { + "bean": "13098948028", + "lp": "18541851538", + "total": "31640799566" + }, + "bdvAtRecapitalization": { + "bean": "45603434207", + "lp": "77756653267", + "total": "123360087474" + } + }, + "0xF9790906affda8aA80fFf67deD5063d1221a5F1d": { + "tokens": { + "bean": "20060726952", + "lp": "108352628279" + }, + "bdvAtSnapshot": { + "bean": "5762162967", + "lp": "51010575399", + "total": "56772738366" + }, + "bdvAtRecapitalization": { + "bean": "20060726952", + "lp": "213916696297", + "total": "233977423249" + } + }, + "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xFa41E0dafbb231fc8974c02a597BE61299ddd10C": { + "tokens": { + "bean": "0", + "lp": "32605595312" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "15350159978", + "total": "15350159978" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "64372053920", + "total": "64372053920" + } + }, + "0xFa0A637616BC13a47210B17DB8DD143aA9389334": { + "tokens": { + "bean": "558728224", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "160486860", + "lp": "0", + "total": "160486860" + }, + "bdvAtRecapitalization": { + "bean": "558728224", + "lp": "0", + "total": "558728224" + } + }, + "0xfaAe91b5d3C0378eE245E120952b21736F382c59": { + "tokens": { + "bean": "9214945884", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2646864196", + "lp": "0", + "total": "2646864196" + }, + "bdvAtRecapitalization": { + "bean": "9214945884", + "lp": "0", + "total": "9214945884" + } + }, + "0xFA97e9B029D3CB15A6566CB52211B022dc67EFFB": { + "tokens": { + "bean": "4", + "lp": "12211226471" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "5748837832", + "total": "5748837833" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "24108185153", + "total": "24108185157" + } + }, + "0xFA9D9208627ea8c35215F7DF409bF1F5110d2486": { + "tokens": { + "bean": "39358468881", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "11305169168", + "lp": "0", + "total": "11305169168" + }, + "bdvAtRecapitalization": { + "bean": "39358468881", + "lp": "2", + "total": "39358468883" + } + }, + "0xFAe73E896f6e35Bf60a52C4F7275381e8d0F6344": { + "tokens": { + "bean": "655544236", + "lp": "294921727" + }, + "bdvAtSnapshot": { + "bean": "188295904", + "lp": "138844135", + "total": "327140039" + }, + "bdvAtRecapitalization": { + "bean": "655544236", + "lp": "582253357", + "total": "1237797593" + } + }, + "0xFaE9C276d513E6dC5060BB9bE5111c3124C4376c": { + "tokens": { + "bean": "6332099787", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1818807014", + "lp": "0", + "total": "1818807014" + }, + "bdvAtRecapitalization": { + "bean": "6332099787", + "lp": "0", + "total": "6332099787" + } + }, + "0xFB0B928E38Bf945aAa6DF73a17A5e837441BA386": { + "tokens": { + "bean": "6299388884", + "lp": "97996334679" + }, + "bdvAtSnapshot": { + "bean": "1809411265", + "lp": "46135008429", + "total": "47944419694" + }, + "bdvAtRecapitalization": { + "bean": "6299388884", + "lp": "193470638385", + "total": "199770027269" + } + }, + "0xFb00Fab6af5a0aCD8718557D34B52828Ae128D34": { + "tokens": { + "bean": "2301830937", + "lp": "188634004815" + }, + "bdvAtSnapshot": { + "bean": "661168711", + "lp": "88805682689", + "total": "89466851400" + }, + "bdvAtRecapitalization": { + "bean": "2301830937", + "lp": "372413330071", + "total": "374715161008" + } + }, + "0xfB464Fcd5342D2997A43C6B7bcA7615d0fbDEeD9": { + "tokens": { + "bean": "219818441", + "lp": "8820577290" + }, + "bdvAtSnapshot": { + "bean": "63139770", + "lp": "4152577838", + "total": "4215717608" + }, + "bdvAtRecapitalization": { + "bean": "219818441", + "lp": "17414148446", + "total": "17633966887" + } + }, + "0xfb578D95837a7c8c00BacC369A79d6b962305E70": { + "tokens": { + "bean": "7834379", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2250316", + "lp": "0", + "total": "2250316" + }, + "bdvAtRecapitalization": { + "bean": "7834379", + "lp": "0", + "total": "7834379" + } + }, + "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27": { + "tokens": { + "bean": "90328046205", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "25945466680", + "lp": "0", + "total": "25945466680" + }, + "bdvAtRecapitalization": { + "bean": "90328046205", + "lp": "2", + "total": "90328046207" + } + }, + "0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55": { + "tokens": { + "bean": "31882032826", + "lp": "8617193936" + }, + "bdvAtSnapshot": { + "bean": "9157667581", + "lp": "4056828413", + "total": "13214495994" + }, + "bdvAtRecapitalization": { + "bean": "31882032826", + "lp": "17012616006", + "total": "48894648832" + } + }, + "0xFc64410a03b205b995a9101f99a55026D8F1f1da": { + "tokens": { + "bean": "4631", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "1330", + "lp": "0", + "total": "1330" + }, + "bdvAtRecapitalization": { + "bean": "4631", + "lp": "2", + "total": "4633" + } + }, + "0xFC846285a2D89D2f6a838c06c514F4dB00D96Fed": { + "tokens": { + "bean": "11798402", + "lp": "7184073724" + }, + "bdvAtSnapshot": { + "bean": "3388926", + "lp": "3382139780", + "total": "3385528706" + }, + "bdvAtRecapitalization": { + "bean": "11798402", + "lp": "14183258324", + "total": "14195056726" + } + }, + "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef": { + "tokens": { + "bean": "1942961173", + "lp": "12102711989" + }, + "bdvAtSnapshot": { + "bean": "558088395", + "lp": "5697751058", + "total": "6255839453" + }, + "bdvAtRecapitalization": { + "bean": "1942961173", + "lp": "23893948915", + "total": "25836910088" + } + }, + "0xfc22875F01ffeD27d6477983626E369844ff954C": { + "tokens": { + "bean": "984782079", + "lp": "50178154984" + }, + "bdvAtSnapshot": { + "bean": "282864865", + "lp": "23623022338", + "total": "23905887203" + }, + "bdvAtRecapitalization": { + "bean": "984782079", + "lp": "99064926352", + "total": "100049708431" + } + }, + "0xfcBa05D5556b6A450209A4c9E2fe9a259C84d50F": { + "tokens": { + "bean": "11587083102", + "lp": "617372270" + }, + "bdvAtSnapshot": { + "bean": "3328227402", + "lp": "290648369", + "total": "3618875771" + }, + "bdvAtRecapitalization": { + "bean": "11587083102", + "lp": "1218855864", + "total": "12805938966" + } + }, + "0xfCA811318D6A0a118a7C79047D302E5B892bC723": { + "tokens": { + "bean": "458068386", + "lp": "2221266415" + }, + "bdvAtSnapshot": { + "bean": "131573731", + "lp": "1045734467", + "total": "1177308198" + }, + "bdvAtRecapitalization": { + "bean": "458068386", + "lp": "4385366379", + "total": "4843434765" + } + }, + "0xfD446abDE36c9dc02bB872303965484330EdA047": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0xFc748762F301229bCeA219B584Fdf8423D8060A1": { + "tokens": { + "bean": "1658413127", + "lp": "67478490954" + }, + "bdvAtSnapshot": { + "bean": "476355953", + "lp": "31767726407", + "total": "32244082360" + }, + "bdvAtRecapitalization": { + "bean": "1658413127", + "lp": "133220357321", + "total": "134878770448" + } + }, + "0xfD459E98FaCCB98838440dB466F01690322A721C": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0xfcce6CE62A8C9fa9D6647C953c26358B139C1679": { + "tokens": { + "bean": "504093723", + "lp": "7053112843" + }, + "bdvAtSnapshot": { + "bean": "144793865", + "lp": "3320485624", + "total": "3465279489" + }, + "bdvAtRecapitalization": { + "bean": "504093723", + "lp": "13924706968", + "total": "14428800691" + } + }, + "0xFda1215797D29414E588B2e62fC390Ee2949aaAA": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xFD89d3831C6973fB5BA0b82022142b54AD9e8d46": { + "tokens": { + "bean": "936742873", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "269066276", + "lp": "0", + "total": "269066276" + }, + "bdvAtRecapitalization": { + "bean": "936742873", + "lp": "0", + "total": "936742873" + } + }, + "0xfD67bbb8b3980801e28b8D9c49fd9d1eA487087B": { + "tokens": { + "bean": "369863726", + "lp": "61961010" + }, + "bdvAtSnapshot": { + "bean": "106238177", + "lp": "29170190", + "total": "135408367" + }, + "bdvAtRecapitalization": { + "bean": "369863726", + "lp": "122327393", + "total": "492191119" + } + }, + "0xfD96Fc073abC3357b52C0467F45f95c67c4d22fc": { + "tokens": { + "bean": "1146693228", + "lp": "17170560704" + }, + "bdvAtSnapshot": { + "bean": "329371576", + "lp": "8083608080", + "total": "8412979656" + }, + "bdvAtRecapitalization": { + "bean": "1146693228", + "lp": "33899220330", + "total": "35045913558" + } + }, + "0xFdAE7777f9e6E0D07f986f05289624129c3EE69C": { + "tokens": { + "bean": "684713368", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "196674329", + "lp": "0", + "total": "196674329" + }, + "bdvAtRecapitalization": { + "bean": "684713368", + "lp": "0", + "total": "684713368" + } + }, + "0xFE09f953E10f3e6A9d22710cb6f743e4142321bd": { + "tokens": { + "bean": "67506256626", + "lp": "168934026762" + }, + "bdvAtSnapshot": { + "bean": "19390227128", + "lp": "79531267921", + "total": "98921495049" + }, + "bdvAtRecapitalization": { + "bean": "67506256626", + "lp": "333520372059", + "total": "401026628685" + } + }, + "0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7": { + "tokens": { + "bean": "381987609126", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "109720592895", + "lp": "0", + "total": "109720592895" + }, + "bdvAtRecapitalization": { + "bean": "381987609126", + "lp": "2", + "total": "381987609128" + } + }, + "0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f": { + "tokens": { + "bean": "0", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2", + "total": "2" + } + }, + "0xfe365E0f0F49650C71955754e2CABA027C0E2198": { + "tokens": { + "bean": "159332751", + "lp": "905834568" + }, + "bdvAtSnapshot": { + "bean": "45766102", + "lp": "426451515", + "total": "472217617" + }, + "bdvAtRecapitalization": { + "bean": "159332751", + "lp": "1788356602", + "total": "1947689353" + } + }, + "0xfE5c7e0f6282Ef213F334a7C4c8EC0bFa8C2884e": { + "tokens": { + "bean": "509", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "146", + "lp": "0", + "total": "146" + }, + "bdvAtRecapitalization": { + "bean": "509", + "lp": "0", + "total": "509" + } + }, + "0xFE9FeE8A2Ebf2fF510a57bD6323903a659230F21": { + "tokens": { + "bean": "37759189", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10845798", + "lp": "0", + "total": "10845798" + }, + "bdvAtRecapitalization": { + "bean": "37759189", + "lp": "0", + "total": "37759189" + } + }, + "0xfEC0Ac5f7d6049c55926c226703CE7154514fEA2": { + "tokens": { + "bean": "291833203", + "lp": "28015723" + }, + "bdvAtSnapshot": { + "bean": "83825002", + "lp": "13189326", + "total": "97014328" + }, + "bdvAtRecapitalization": { + "bean": "291833203", + "lp": "55310434", + "total": "347143637" + } + }, + "0xfEc2248956179BF6965865440328D73bAC4eB6D2": { + "tokens": { + "bean": "238130149275", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "68399551557", + "lp": "0", + "total": "68399551557" + }, + "bdvAtRecapitalization": { + "bean": "238130149275", + "lp": "0", + "total": "238130149275" + } + }, + "0xFEEC05a103f3EE7C4C42EE1d799B39A5b4c62Dbf": { + "tokens": { + "bean": "3365055868", + "lp": "1291088593" + }, + "bdvAtSnapshot": { + "bean": "966565187", + "lp": "607822561", + "total": "1574387748" + }, + "bdvAtRecapitalization": { + "bean": "3365055868", + "lp": "2548949765", + "total": "5914005633" + } + }, + "0xFeFE31009B95c04E062Aa89C975Fb61B5Bd9e785": { + "tokens": { + "bean": "92165421", + "lp": "1755756583" + }, + "bdvAtSnapshot": { + "bean": "26473227", + "lp": "826580351", + "total": "853053578" + }, + "bdvAtRecapitalization": { + "bean": "92165421", + "lp": "3466327063", + "total": "3558492484" + } + }, + "0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943": { + "tokens": { + "bean": "4916815525", + "lp": "12556030193" + }, + "bdvAtSnapshot": { + "bean": "1412286424", + "lp": "5911165562", + "total": "7323451986" + }, + "bdvAtRecapitalization": { + "bean": "4916815525", + "lp": "24788918738", + "total": "29705734263" + } + }, + "0xff266f62a0152F39FCf123B7086012cEb292516A": { + "tokens": { + "bean": "2118283", + "lp": "2463209544" + }, + "bdvAtSnapshot": { + "bean": "608447", + "lp": "1159637179", + "total": "1160245626" + }, + "bdvAtRecapitalization": { + "bean": "2118283", + "lp": "4863025995", + "total": "4865144278" + } + }, + "0xff5E7372B4592Bd9d872f58fe22AA024AafaC9c8": { + "tokens": { + "bean": "18955936", + "lp": "481917854" + }, + "bdvAtSnapshot": { + "bean": "5444827", + "lp": "226878733", + "total": "232323560" + }, + "bdvAtRecapitalization": { + "bean": "18955936", + "lp": "951433083", + "total": "970389019" + } + }, + "0xFf4A6b6F1016695551355737d4F1236141ec018D": { + "tokens": { + "bean": "559816319", + "lp": "21445808668" + }, + "bdvAtSnapshot": { + "bean": "160799400", + "lp": "10096322142", + "total": "10257121542" + }, + "bdvAtRecapitalization": { + "bean": "559816319", + "lp": "42339688594", + "total": "42899504913" + } + }, + "0xffE8e5d3401C48Dfa05f6C6ee3b5cbBD2cb83F30": { + "tokens": { + "bean": "467748", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "134354", + "lp": "0", + "total": "134354" + }, + "bdvAtRecapitalization": { + "bean": "467748", + "lp": "0", + "total": "467748" + } + }, + "0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7": { + "tokens": { + "bean": "104473714", + "lp": "6373207195" + }, + "bdvAtSnapshot": { + "bean": "30008612", + "lp": "3000397603", + "total": "3030406215" + }, + "bdvAtRecapitalization": { + "bean": "104473714", + "lp": "12582393705", + "total": "12686867419" + } + }, + "0xC81635aBBF6EC73d0271F237a78b6456D6766132": { + "tokens": { + "bean": "61317629303", + "lp": "39703474872" + }, + "bdvAtSnapshot": { + "bean": "17612630570", + "lp": "18691721011", + "total": "36304351581" + }, + "bdvAtRecapitalization": { + "bean": "61317629303", + "lp": "78385142207", + "total": "139702771510" + } + }, + "0x23444f470C8760bef7424C457c30DC2d4378974b": { + "tokens": { + "bean": "5670131987", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1628666031", + "lp": "0", + "total": "1628666031" + }, + "bdvAtRecapitalization": { + "bean": "5670131987", + "lp": "0", + "total": "5670131987" + } + }, + "0xb3b454c4b4a73ccdd5c79c8e0E4e703B478E872D": { + "tokens": { + "bean": "3092468492", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "888268280", + "lp": "0", + "total": "888268280" + }, + "bdvAtRecapitalization": { + "bean": "3092468492", + "lp": "0", + "total": "3092468492" + } + }, + "0x77E3CF7d9051f7e76889EC11D9Ab758F9dedc5c4": { + "tokens": { + "bean": "2156114589", + "lp": "10040990051" + }, + "bdvAtSnapshot": { + "bean": "619313730", + "lp": "4727127419", + "total": "5346441149" + }, + "bdvAtRecapitalization": { + "bean": "2156114589", + "lp": "19823565458", + "total": "21979680047" + } + }, + "0x15AD9ef623b0D635F2eEBf20e0548121CBaFc719": { + "tokens": { + "bean": "37069269128", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10647628587", + "lp": "0", + "total": "10647628587" + }, + "bdvAtRecapitalization": { + "bean": "37069269128", + "lp": "0", + "total": "37069269128" + } + }, + "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54": { + "tokens": { + "bean": "24273580464", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6972246158", + "lp": "0", + "total": "6972246158" + }, + "bdvAtRecapitalization": { + "bean": "24273580464", + "lp": "0", + "total": "24273580464" + } + }, + "0x6B797A556cefD9e5c916B7fa1854ed0813867441": { + "tokens": { + "bean": "0", + "lp": "129778376473" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "61097453411", + "total": "61097453411" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "256216780219", + "total": "256216780219" + } + }, + "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c": { + "tokens": { + "bean": "6416085500", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1842930735", + "lp": "0", + "total": "1842930735" + }, + "bdvAtRecapitalization": { + "bean": "6416085500", + "lp": "0", + "total": "6416085500" + } + }, + "0xaF616dABa40f81b75aF5373294d4dBE29DD0E0f6": { + "tokens": { + "bean": "4334685782", + "lp": "49387419081" + }, + "bdvAtSnapshot": { + "bean": "1245077805", + "lp": "23250757317", + "total": "24495835122" + }, + "bdvAtRecapitalization": { + "bean": "4334685782", + "lp": "97503804903", + "total": "101838490685" + } + }, + "0x253ab8294bf3FB6AB6439abC9Bc7081504DB9bff": { + "tokens": { + "bean": "44573289187", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12803053293", + "lp": "0", + "total": "12803053293" + }, + "bdvAtRecapitalization": { + "bean": "44573289187", + "lp": "0", + "total": "44573289187" + } + }, + "0xB8da309775c696576d26Ef7d25b68C103a9aB0d5": { + "tokens": { + "bean": "5240156695", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1505161648", + "lp": "0", + "total": "1505161648" + }, + "bdvAtRecapitalization": { + "bean": "5240156695", + "lp": "0", + "total": "5240156695" + } + }, + "0x1a8A0255e8B0ED7C596D236bf28D57Ff3978899b": { + "tokens": { + "bean": "11448112489", + "lp": "112407034069" + }, + "bdvAtSnapshot": { + "bean": "3288310039", + "lp": "52919320720", + "total": "56207630759" + }, + "bdvAtRecapitalization": { + "bean": "11448112489", + "lp": "221921163802", + "total": "233369276291" + } + }, + "0x1860a5C708c1e982E293aA4338bdbCafB7Cb90aC": { + "tokens": { + "bean": "4269000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1226210484", + "lp": "0", + "total": "1226210484" + }, + "bdvAtRecapitalization": { + "bean": "4269000000", + "lp": "0", + "total": "4269000000" + } + }, + "0x575C9606CfcCF6F93D2E5a0C37d2C7696BCab132": { + "tokens": { + "bean": "983699606", + "lp": "2356468230" + }, + "bdvAtSnapshot": { + "bean": "282553940", + "lp": "1109385183", + "total": "1391939123" + }, + "bdvAtRecapitalization": { + "bean": "983699606", + "lp": "4652290458", + "total": "5635990064" + } + }, + "0x044c53d8576d4D700E6327c954f88388EE03b8dB": { + "tokens": { + "bean": "9655048867", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2773277616", + "lp": "0", + "total": "2773277616" + }, + "bdvAtRecapitalization": { + "bean": "9655048867", + "lp": "0", + "total": "9655048867" + } + }, + "0x8687c54f8A431134cDE94Ae3782cB7cba9963D12": { + "tokens": { + "bean": "3640000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1045539040", + "lp": "0", + "total": "1045539040" + }, + "bdvAtRecapitalization": { + "bean": "3640000000", + "lp": "0", + "total": "3640000000" + } + }, + "0xf658305D26c8DF03e9ED3ff7C7287F7233dE472D": { + "tokens": { + "bean": "1866470834", + "lp": "32130269456" + }, + "bdvAtSnapshot": { + "bean": "536117616", + "lp": "15126384645", + "total": "15662502261" + }, + "bdvAtRecapitalization": { + "bean": "1866470834", + "lp": "63433635181", + "total": "65300106015" + } + }, + "0x9821Aac07d0724C69835367D596352Aaf09C309c": { + "tokens": { + "bean": "1005037990", + "lp": "6757145778" + }, + "bdvAtSnapshot": { + "bean": "288683092", + "lp": "3181149361", + "total": "3469832453" + }, + "bdvAtRecapitalization": { + "bean": "1005037990", + "lp": "13340389838", + "total": "14345427828" + } + }, + "0xd8D1fa915826a24d6103E8D0fA04020c4EbC0C5e": { + "tokens": { + "bean": "936175040", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "268903174", + "lp": "0", + "total": "268903174" + }, + "bdvAtRecapitalization": { + "bean": "936175040", + "lp": "0", + "total": "936175040" + } + }, + "0x9142A918Df6208Ae1bE65e2Be0ea9DAd6067155e": { + "tokens": { + "bean": "567271172", + "lp": "2986538692" + }, + "bdvAtSnapshot": { + "bean": "162940702", + "lp": "1406011645", + "total": "1568952347" + }, + "bdvAtRecapitalization": { + "bean": "567271172", + "lp": "5896215906", + "total": "6463487078" + } + }, + "0x76e3D82B0c49f1C921d8C1093cd91C20Ba23740d": { + "tokens": { + "bean": "510000000", + "lp": "2233000000" + }, + "bdvAtSnapshot": { + "bean": "146490360", + "lp": "1051258439", + "total": "1197748799" + }, + "bdvAtRecapitalization": { + "bean": "510000000", + "lp": "4408531573", + "total": "4918531573" + } + }, + "0x3D93420AA8512e2bC7d77cB9352D752881706638": { + "tokens": { + "bean": "95422611", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "27408809", + "lp": "0", + "total": "27408809" + }, + "bdvAtRecapitalization": { + "bean": "95422611", + "lp": "0", + "total": "95422611" + } + }, + "0xc42593f89D4B6647Bff86fa309C72D5e93a9405c": { + "tokens": { + "bean": "50000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14361800", + "lp": "0", + "total": "14361800" + }, + "bdvAtRecapitalization": { + "bean": "50000000", + "lp": "0", + "total": "50000000" + } + }, + "0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce": { + "tokens": { + "bean": "0", + "lp": "18909808200" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "8902416234", + "total": "8902416234" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "37332954096", + "total": "37332954096" + } + }, + "0x9B0f5cCC13fa9fc22AB6C4766e419BB2A881eb1B": { + "tokens": { + "bean": "496000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "142469056", + "lp": "0", + "total": "142469056" + }, + "bdvAtRecapitalization": { + "bean": "496000000", + "lp": "0", + "total": "496000000" + } + }, + "0xa86e29ad86D690f8b5a6A632cAb8405D40A319Fa": { + "tokens": { + "bean": "0", + "lp": "1755275296" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "826353770", + "total": "826353770" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "3465376875", + "total": "3465376875" + } + }, + "0x40ca67bA095c038B711AD37BbebAd8a586ae6f38": { + "tokens": { + "bean": "452214", + "lp": "605736" + }, + "bdvAtSnapshot": { + "bean": "129892", + "lp": "285170", + "total": "415062" + }, + "bdvAtRecapitalization": { + "bean": "452214", + "lp": "1195883", + "total": "1648097" + } + }, + "0xf2f65A8a44f0Bb1a634A85b1a4eb4be4D69769B6": { + "tokens": { + "bean": "12568525", + "lp": "7652021349" + }, + "bdvAtSnapshot": { + "bean": "3610133", + "lp": "3602441567", + "total": "3606051700" + }, + "bdvAtRecapitalization": { + "bean": "12568525", + "lp": "15107110487", + "total": "15119679012" + } + }, + "0x4b9184dF8FA9f3Fc008fcdE7e7bbf7208eF5118d": { + "tokens": { + "bean": "100000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "0", + "total": "100000000" + } + }, + "0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0": { + "tokens": { + "bean": "530058897", + "lp": "1391429751" + }, + "bdvAtSnapshot": { + "bean": "152251997", + "lp": "655061472", + "total": "807313469" + }, + "bdvAtRecapitalization": { + "bean": "530058897", + "lp": "2747049704", + "total": "3277108601" + } + }, + "0x49cE991352A44f7B50AF79b89a50db6289013633": { + "tokens": { + "bean": "7026209192", + "lp": "27537689446" + }, + "bdvAtSnapshot": { + "bean": "2018180223", + "lp": "12964276050", + "total": "14982456273" + }, + "bdvAtRecapitalization": { + "bean": "7026209192", + "lp": "54366669674", + "total": "61392878866" + } + }, + "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc": { + "tokens": { + "bean": "8466040308", + "lp": "5999348075" + }, + "bdvAtSnapshot": { + "bean": "2431751554", + "lp": "2824391085", + "total": "5256142639" + }, + "bdvAtRecapitalization": { + "bean": "8466040308", + "lp": "11844297093", + "total": "20310337401" + } + }, + "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397": { + "tokens": { + "bean": "106405367", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "30563452", + "lp": "0", + "total": "30563452" + }, + "bdvAtRecapitalization": { + "bean": "106405367", + "lp": "0", + "total": "106405367" + } + }, + "0x28e5366E2e8D6732bCc474d810CaCcc4d758dce1": { + "tokens": { + "bean": "0", + "lp": "715868" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "337018", + "total": "337018" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "1413312", + "total": "1413312" + } + }, + "0x64298A72F4E3e23387EFc409fc424a3f17356fC4": { + "tokens": { + "bean": "2806", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "806", + "lp": "0", + "total": "806" + }, + "bdvAtRecapitalization": { + "bean": "2806", + "lp": "0", + "total": "2806" + } + }, + "0xa569D7C014433DB04a895eD854B864e2E33EB0f0": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x82610F2bbA3fC9b3207805b46E79F7db27C6af68": { + "tokens": { + "bean": "8765726937", + "lp": "28729611272" + }, + "bdvAtSnapshot": { + "bean": "2517832342", + "lp": "13525412583", + "total": "16043244925" + }, + "bdvAtRecapitalization": { + "bean": "8765726937", + "lp": "56719838059", + "total": "65485564996" + } + }, + "0x1164fe7a76D22EAA66f6A0aDcE3E3a30d9957A5f": { + "tokens": { + "bean": "266872905", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "76655506", + "lp": "0", + "total": "76655506" + }, + "bdvAtRecapitalization": { + "bean": "266872905", + "lp": "0", + "total": "266872905" + } + }, + "0xD2d038f866Ef6441e598E0f685f885693ef59917": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248": { + "tokens": { + "bean": "541659832", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "155584204", + "lp": "0", + "total": "155584204" + }, + "bdvAtRecapitalization": { + "bean": "541659832", + "lp": "0", + "total": "541659832" + } + }, + "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70": { + "tokens": { + "bean": "3385", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "972", + "lp": "0", + "total": "972" + }, + "bdvAtRecapitalization": { + "bean": "3385", + "lp": "0", + "total": "3385" + } + }, + "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7": { + "tokens": { + "bean": "2616500000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "751552994", + "lp": "0", + "total": "751552994" + }, + "bdvAtRecapitalization": { + "bean": "2616500000", + "lp": "0", + "total": "2616500000" + } + }, + "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714": { + "tokens": { + "bean": "838936442", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "240972748", + "lp": "0", + "total": "240972748" + }, + "bdvAtRecapitalization": { + "bean": "838936442", + "lp": "0", + "total": "838936442" + } + }, + "0x8325D26d08DaBf644582D2a8da311D94DBD02A97": { + "tokens": { + "bean": "8812229", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2531189", + "lp": "0", + "total": "2531189" + }, + "bdvAtRecapitalization": { + "bean": "8812229", + "lp": "0", + "total": "8812229" + } + }, + "0x54CE05973cFadd3bbACf46497C08Fc6DAe156521": { + "tokens": { + "bean": "43452", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12481", + "lp": "0", + "total": "12481" + }, + "bdvAtRecapitalization": { + "bean": "43452", + "lp": "0", + "total": "43452" + } + }, + "0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e": { + "tokens": { + "bean": "1000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "287236", + "lp": "0", + "total": "287236" + }, + "bdvAtRecapitalization": { + "bean": "1000000", + "lp": "0", + "total": "1000000" + } + }, + "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2": { + "tokens": { + "bean": "359034500", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "103127634", + "lp": "0", + "total": "103127634" + }, + "bdvAtRecapitalization": { + "bean": "359034500", + "lp": "0", + "total": "359034500" + } + }, + "0xC21a7Fe78A0Fb9DF4Da21F2Ce78c76BdAe63e611": { + "tokens": { + "bean": "17288843712", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4965978312", + "lp": "0", + "total": "4965978312" + }, + "bdvAtRecapitalization": { + "bean": "17288843712", + "lp": "0", + "total": "17288843712" + } + }, + "0xDB2480a43C79126F93Bd5a825dc0CBa46d7C0612": { + "tokens": { + "bean": "995000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "285800", + "lp": "0", + "total": "285800" + }, + "bdvAtRecapitalization": { + "bean": "995000", + "lp": "0", + "total": "995000" + } + }, + "0x93b34d74a134b403450f993e3f2fb75B751fa3d6": { + "tokens": { + "bean": "1885621", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "541618", + "lp": "0", + "total": "541618" + }, + "bdvAtRecapitalization": { + "bean": "1885621", + "lp": "0", + "total": "1885621" + } + }, + "0xEC9F16FAacD809ED3EC90D22C92cE84C5C115FAC": { + "tokens": { + "bean": "788662109", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "226532150", + "lp": "0", + "total": "226532150" + }, + "bdvAtRecapitalization": { + "bean": "788662109", + "lp": "0", + "total": "788662109" + } + }, + "0x90B113Cf662039394D28505f51f0B1B4678Cc3b5": { + "tokens": { + "bean": "704035597", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "202224369", + "lp": "0", + "total": "202224369" + }, + "bdvAtRecapitalization": { + "bean": "704035597", + "lp": "0", + "total": "704035597" + } + }, + "0x4588a155d63CFFC23b3321b4F99E8d34128B227a": { + "tokens": { + "bean": "254173", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "73008", + "lp": "0", + "total": "73008" + }, + "bdvAtRecapitalization": { + "bean": "254173", + "lp": "0", + "total": "254173" + } + }, + "0x0FF2FAa2294434919501475CF58117ee89e2729c": { + "tokens": { + "bean": "387003", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "111161", + "lp": "0", + "total": "111161" + }, + "bdvAtRecapitalization": { + "bean": "387003", + "lp": "0", + "total": "387003" + } + }, + "0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB": { + "tokens": { + "bean": "49526427", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14225773", + "lp": "0", + "total": "14225773" + }, + "bdvAtRecapitalization": { + "bean": "49526427", + "lp": "0", + "total": "49526427" + } + }, + "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD": { + "tokens": { + "bean": "2927754", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "840956", + "lp": "0", + "total": "840956" + }, + "bdvAtRecapitalization": { + "bean": "2927754", + "lp": "0", + "total": "2927754" + } + }, + "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC": { + "tokens": { + "bean": "142148", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "40830", + "lp": "0", + "total": "40830" + }, + "bdvAtRecapitalization": { + "bean": "142148", + "lp": "0", + "total": "142148" + } + }, + "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC": { + "tokens": { + "bean": "2128800000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "611467997", + "lp": "0", + "total": "611467997" + }, + "bdvAtRecapitalization": { + "bean": "2128800000", + "lp": "0", + "total": "2128800000" + } + }, + "0x3810EAcf5020D020B3317B559E59376c5d02dCB2": { + "tokens": { + "bean": "477293525", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "137095883", + "lp": "0", + "total": "137095883" + }, + "bdvAtRecapitalization": { + "bean": "477293525", + "lp": "0", + "total": "477293525" + } + }, + "0x3103c84c86a534a4f10C3823606F2a5b90923924": { + "tokens": { + "bean": "238700000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "68563233", + "lp": "0", + "total": "68563233" + }, + "bdvAtRecapitalization": { + "bean": "238700000", + "lp": "0", + "total": "238700000" + } + }, + "0xe496c05e5E2a669cc60ab70572776ee22CA17F03": { + "tokens": { + "bean": "3940", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1132", + "lp": "0", + "total": "1132" + }, + "bdvAtRecapitalization": { + "bean": "3940", + "lp": "0", + "total": "3940" + } + }, + "0x9c7ac7abbD3EC00E1d4b330C497529166db84f63": { + "tokens": { + "bean": "713142", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "204840", + "lp": "0", + "total": "204840" + }, + "bdvAtRecapitalization": { + "bean": "713142", + "lp": "0", + "total": "713142" + } + }, + "0xD73d566e1424674C12F1D45aEA023C419e6EfeF5": { + "tokens": { + "bean": "71013678", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20397685", + "lp": "0", + "total": "20397685" + }, + "bdvAtRecapitalization": { + "bean": "71013678", + "lp": "0", + "total": "71013678" + } + }, + "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3": { + "tokens": { + "bean": "29618643227", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8507540606", + "lp": "0", + "total": "8507540606" + }, + "bdvAtRecapitalization": { + "bean": "29618643227", + "lp": "0", + "total": "29618643227" + } + }, + "0xDC27b4a65F214743d68BEf4ba2004D4cCD6d7F65": { + "tokens": { + "bean": "272602", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "78301", + "lp": "0", + "total": "78301" + }, + "bdvAtRecapitalization": { + "bean": "272602", + "lp": "0", + "total": "272602" + } + }, + "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8": { + "tokens": { + "bean": "1495650000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "429604523", + "lp": "0", + "total": "429604523" + }, + "bdvAtRecapitalization": { + "bean": "1495650000", + "lp": "0", + "total": "1495650000" + } + }, + "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E": { + "tokens": { + "bean": "2176666667", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "625217027", + "lp": "0", + "total": "625217027" + }, + "bdvAtRecapitalization": { + "bean": "2176666667", + "lp": "0", + "total": "2176666667" + } + }, + "0x5a57107A58A0447066C376b211059352B617c3BA": { + "tokens": { + "bean": "3248309", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "933031", + "lp": "0", + "total": "933031" + }, + "bdvAtRecapitalization": { + "bean": "3248309", + "lp": "0", + "total": "3248309" + } + }, + "0xE79cCABDbF2AA68fDae8D7Fc39654A62b07e12e3": { + "tokens": { + "bean": "1503250000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "431787517", + "lp": "0", + "total": "431787517" + }, + "bdvAtRecapitalization": { + "bean": "1503250000", + "lp": "0", + "total": "1503250000" + } + }, + "0x0F1d41cc51e97DC9d0CAd80DC681777EED3675E3": { + "tokens": { + "bean": "428279265", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "123017223", + "lp": "0", + "total": "123017223" + }, + "bdvAtRecapitalization": { + "bean": "428279265", + "lp": "0", + "total": "428279265" + } + }, + "0xb319c06c96F676110AcC674a2B608ddb3117f43B": { + "tokens": { + "bean": "54867", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "15760", + "lp": "0", + "total": "15760" + }, + "bdvAtRecapitalization": { + "bean": "54867", + "lp": "0", + "total": "54867" + } + }, + "0x035bb6b7D76562320dFFb5ec23128ED1541823cf": { + "tokens": { + "bean": "159840729", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "45912012", + "lp": "0", + "total": "45912012" + }, + "bdvAtRecapitalization": { + "bean": "159840729", + "lp": "0", + "total": "159840729" + } + }, + "0x58e4e9D30Da309624c785069A99709b16276B196": { + "tokens": { + "bean": "5527620", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1587731", + "lp": "0", + "total": "1587731" + }, + "bdvAtRecapitalization": { + "bean": "5527620", + "lp": "0", + "total": "5527620" + } + }, + "0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5": { + "tokens": { + "bean": "8205939", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2357041", + "lp": "0", + "total": "2357041" + }, + "bdvAtRecapitalization": { + "bean": "8205939", + "lp": "0", + "total": "8205939" + } + }, + "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b": { + "tokens": { + "bean": "1024118709", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "294163761", + "lp": "0", + "total": "294163761" + }, + "bdvAtRecapitalization": { + "bean": "1024118709", + "lp": "0", + "total": "1024118709" + } + }, + "0xF2Fb34C4323F9bf4a5c04fE277f96588dDE5316f": { + "tokens": { + "bean": "33986969", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "9762281", + "lp": "0", + "total": "9762281" + }, + "bdvAtRecapitalization": { + "bean": "33986969", + "lp": "0", + "total": "33986969" + } + }, + "0x87A774178D49C919be273f1022de2ae106E2581e": { + "tokens": { + "bean": "1151920", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "330873", + "lp": "0", + "total": "330873" + }, + "bdvAtRecapitalization": { + "bean": "1151920", + "lp": "0", + "total": "1151920" + } + }, + "0xe78483c03249C1D5bb9687f3A95597f0c6360b84": { + "tokens": { + "bean": "388947271", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "111719658", + "lp": "0", + "total": "111719658" + }, + "bdvAtRecapitalization": { + "bean": "388947271", + "lp": "0", + "total": "388947271" + } + }, + "0xeA747056c4a5d2A8398EC64425989Ebf099733E9": { + "tokens": { + "bean": "434278487", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "124740415", + "lp": "0", + "total": "124740415" + }, + "bdvAtRecapitalization": { + "bean": "434278487", + "lp": "0", + "total": "434278487" + } + }, + "0xd480B92941CBe5CeAA56fecED93CED8B76E59615": { + "tokens": { + "bean": "149993691", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "43083588", + "lp": "0", + "total": "43083588" + }, + "bdvAtRecapitalization": { + "bean": "149993691", + "lp": "0", + "total": "149993691" + } + }, + "0x3A529A643e5b89555712B02e911AEC6add0d3188": { + "tokens": { + "bean": "21629242", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6212697", + "lp": "0", + "total": "6212697" + }, + "bdvAtRecapitalization": { + "bean": "21629242", + "lp": "0", + "total": "21629242" + } + }, + "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4": { + "tokens": { + "bean": "972008439", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "279195816", + "lp": "0", + "total": "279195816" + }, + "bdvAtRecapitalization": { + "bean": "972008439", + "lp": "0", + "total": "972008439" + } + }, + "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8": { + "tokens": { + "bean": "8904078833", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2557571988", + "lp": "0", + "total": "2557571988" + }, + "bdvAtRecapitalization": { + "bean": "8904078833", + "lp": "0", + "total": "8904078833" + } + }, + "0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F": { + "tokens": { + "bean": "18789301", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5396964", + "lp": "0", + "total": "5396964" + }, + "bdvAtRecapitalization": { + "bean": "18789301", + "lp": "0", + "total": "18789301" + } + }, + "0x000000009D3a9E5C7c620514e1f36905c4eb91E6": { + "tokens": { + "bean": "245012495", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "70376409", + "lp": "0", + "total": "70376409" + }, + "bdvAtRecapitalization": { + "bean": "245012495", + "lp": "0", + "total": "245012495" + } + }, + "0x1AFB54B63626E9e78A3D11Bb0Eb3f5660982b0b0": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x07c2af75788814BA7e5225b2F5c951eD161cB589": { + "tokens": { + "bean": "3950790964", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1134809393", + "lp": "0", + "total": "1134809393" + }, + "bdvAtRecapitalization": { + "bean": "3950790964", + "lp": "0", + "total": "3950790964" + } + }, + "0x0c722F3dCf2beBb50fCca45Cd6715EE31A2ad793": { + "tokens": { + "bean": "10000000007", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2872360002", + "lp": "0", + "total": "2872360002" + }, + "bdvAtRecapitalization": { + "bean": "10000000007", + "lp": "0", + "total": "10000000007" + } + }, + "0x1b35fcb58F5E1e2a42fF8E66ddf5646966aBf08C": { + "tokens": { + "bean": "4498918", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1292251", + "lp": "0", + "total": "1292251" + }, + "bdvAtRecapitalization": { + "bean": "4498918", + "lp": "0", + "total": "4498918" + } + }, + "0x28009881f0Ffe85C90725B8B02be55773647C64a": { + "tokens": { + "bean": "6536615", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1877551", + "lp": "0", + "total": "1877551" + }, + "bdvAtRecapitalization": { + "bean": "6536615", + "lp": "0", + "total": "6536615" + } + }, + "0x2C90f88BE812349fdD5655c9bAd8288c03E7fB23": { + "tokens": { + "bean": "12609280618", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3621839328", + "lp": "0", + "total": "3621839328" + }, + "bdvAtRecapitalization": { + "bean": "12609280618", + "lp": "0", + "total": "12609280618" + } + }, + "0x21503C7F8D1C9407cB0D27de13CC95A05F13373A": { + "tokens": { + "bean": "17787254816", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5109139924", + "lp": "0", + "total": "5109139924" + }, + "bdvAtRecapitalization": { + "bean": "17787254816", + "lp": "0", + "total": "17787254816" + } + }, + "0x2F6e6687FA7F1c8cBBDf5cf5b44A94a43081621c": { + "tokens": { + "bean": "4854060979", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1394261059", + "lp": "0", + "total": "1394261059" + }, + "bdvAtRecapitalization": { + "bean": "4854060979", + "lp": "0", + "total": "4854060979" + } + }, + "0x2e4145A204598534EA12b772853C08E736248E7B": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x34a370d288734d23bC48A926Cad90A6615abe4e3": { + "tokens": { + "bean": "8620593271", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2476144729", + "lp": "0", + "total": "2476144729" + }, + "bdvAtRecapitalization": { + "bean": "8620593271", + "lp": "0", + "total": "8620593271" + } + }, + "0x36991C5863Ead2d72C2b506966d1db72C2C6C6DF": { + "tokens": { + "bean": "1988631367", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "571206519", + "lp": "0", + "total": "571206519" + }, + "bdvAtRecapitalization": { + "bean": "1988631367", + "lp": "0", + "total": "1988631367" + } + }, + "0x4096E95da697Bd6F7c32E966b7b75F4d1f2817eA": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x37A6156e4a6E8B60b2415AF040546cF5e91699bd": { + "tokens": { + "bean": "37197701", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10684519", + "lp": "0", + "total": "10684519" + }, + "bdvAtRecapitalization": { + "bean": "37197701", + "lp": "0", + "total": "37197701" + } + }, + "0x32dA7EfC90a9D1Da76F7709097D1Fc8E304CAEc4": { + "tokens": { + "bean": "419", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "120", + "lp": "0", + "total": "120" + }, + "bdvAtRecapitalization": { + "bean": "419", + "lp": "0", + "total": "419" + } + }, + "0x38cd808be77b1a61973E7202A8e1b96e98CF315b": { + "tokens": { + "bean": "498331813", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "143138837", + "lp": "0", + "total": "143138837" + }, + "bdvAtRecapitalization": { + "bean": "498331813", + "lp": "0", + "total": "498331813" + } + }, + "0x3E03E86E82B611046331E7b16f3e05ACF5a3eF6b": { + "tokens": { + "bean": "4553885", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1308040", + "lp": "0", + "total": "1308040" + }, + "bdvAtRecapitalization": { + "bean": "4553885", + "lp": "0", + "total": "4553885" + } + }, + "0x5039ed981CeDfCBBB12c4985Df321c1F9d222440": { + "tokens": { + "bean": "102170250", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "29346974", + "lp": "0", + "total": "29346974" + }, + "bdvAtRecapitalization": { + "bean": "102170250", + "lp": "0", + "total": "102170250" + } + }, + "0x511cc569c99A2769DE5d1a4C0B8387B41EAf9307": { + "tokens": { + "bean": "110179087", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "31647400", + "lp": "0", + "total": "31647400" + }, + "bdvAtRecapitalization": { + "bean": "110179087", + "lp": "0", + "total": "110179087" + } + }, + "0x511d230d3c94CadED14281d949b4D35D8575CA12": { + "tokens": { + "bean": "2117753346", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "608295000", + "lp": "0", + "total": "608295000" + }, + "bdvAtRecapitalization": { + "bean": "2117753346", + "lp": "0", + "total": "2117753346" + } + }, + "0x6196c2e7149c134CFd53cf8D819895532189Ce1D": { + "tokens": { + "bean": "51800213", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14878886", + "lp": "0", + "total": "14878886" + }, + "bdvAtRecapitalization": { + "bean": "51800213", + "lp": "0", + "total": "51800213" + } + }, + "0x6e47663a6467abA30BF4cfc3Bc659eEdf631db59": { + "tokens": { + "bean": "117259301", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "33681093", + "lp": "0", + "total": "33681093" + }, + "bdvAtRecapitalization": { + "bean": "117259301", + "lp": "0", + "total": "117259301" + } + }, + "0x711F800E64Ec8d2bd66d97E932B994Beef474d31": { + "tokens": { + "bean": "151898034550", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "43630583852", + "lp": "0", + "total": "43630583852" + }, + "bdvAtRecapitalization": { + "bean": "151898034550", + "lp": "0", + "total": "151898034550" + } + }, + "0x80efF130ddE6223a10e6ab27e35ee9456b635cCD": { + "tokens": { + "bean": "1068681923", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "306963921", + "lp": "0", + "total": "306963921" + }, + "bdvAtRecapitalization": { + "bean": "1068681923", + "lp": "0", + "total": "1068681923" + } + }, + "0x7F36BAC1BF73859bbEEBc5Fa46e78e4E7B39952C": { + "tokens": { + "bean": "169018081", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "48548078", + "lp": "0", + "total": "48548078" + }, + "bdvAtRecapitalization": { + "bean": "169018081", + "lp": "0", + "total": "169018081" + } + }, + "0x8168eb79738E9Fa034AB95B156047149277dc2f0": { + "tokens": { + "bean": "629448", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "180800", + "lp": "0", + "total": "180800" + }, + "bdvAtRecapitalization": { + "bean": "629448", + "lp": "0", + "total": "629448" + } + }, + "0x7A25275EAe1aAaF0D85B8D5955B6DbC727A27EaC": { + "tokens": { + "bean": "1411789284", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "405516707", + "lp": "0", + "total": "405516707" + }, + "bdvAtRecapitalization": { + "bean": "1411789284", + "lp": "0", + "total": "1411789284" + } + }, + "0x7f7ecEeDE5F97179883Ef8F30eDF24C50AA5c597": { + "tokens": { + "bean": "216523587", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "62193369", + "lp": "0", + "total": "62193369" + }, + "bdvAtRecapitalization": { + "bean": "216523587", + "lp": "0", + "total": "216523587" + } + }, + "0x8506B01FEC584cCaEACC7908D47725cf93E40680": { + "tokens": { + "bean": "5201001331", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1493914818", + "lp": "0", + "total": "1493914818" + }, + "bdvAtRecapitalization": { + "bean": "5201001331", + "lp": "0", + "total": "5201001331" + } + }, + "0x8a17484daFAEE8490F14BA0fb3FAC75CAeD80296": { + "tokens": { + "bean": "1731113707", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "497238177", + "lp": "0", + "total": "497238177" + }, + "bdvAtRecapitalization": { + "bean": "1731113707", + "lp": "0", + "total": "1731113707" + } + }, + "0x9d5BC1E20C131a175924e912e20255465337A223": { + "tokens": { + "bean": "45070474423", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12945862791", + "lp": "0", + "total": "12945862791" + }, + "bdvAtRecapitalization": { + "bean": "45070474423", + "lp": "0", + "total": "45070474423" + } + }, + "0x8b3E26b83e8bb734Cd69cEC6CF1146d5a693c11F": { + "tokens": { + "bean": "85166412839", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "24462859758", + "lp": "0", + "total": "24462859758" + }, + "bdvAtRecapitalization": { + "bean": "85166412839", + "lp": "0", + "total": "85166412839" + } + }, + "0x829148aBa1177C4b6A6A3dbcA3E165FD34094e1b": { + "tokens": { + "bean": "7176050", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2061220", + "lp": "0", + "total": "2061220" + }, + "bdvAtRecapitalization": { + "bean": "7176050", + "lp": "0", + "total": "7176050" + } + }, + "0xa06793Bbb366775C8A8f31f5cdBe4DD4F712410a": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x9ea987dda3F3e72cf8Ac7F4BCd7bfd69236A8057": { + "tokens": { + "bean": "14879121418", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4273819320", + "lp": "0", + "total": "4273819320" + }, + "bdvAtRecapitalization": { + "bean": "14879121418", + "lp": "0", + "total": "14879121418" + } + }, + "0xa156d4e61bBd20E1F45bb3f10264DA829C904647": { + "tokens": { + "bean": "5596891114", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1607628616", + "lp": "0", + "total": "1607628616" + }, + "bdvAtRecapitalization": { + "bean": "5596891114", + "lp": "0", + "total": "5596891114" + } + }, + "0xB25429a922a3389b3D02E5D9Fb533FD3A7E58cBF": { + "tokens": { + "bean": "11581088906", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3326505653", + "lp": "0", + "total": "3326505653" + }, + "bdvAtRecapitalization": { + "bean": "11581088906", + "lp": "0", + "total": "11581088906" + } + }, + "0xbeA2b910EE89eD59a160A60e75E3e1FF5047389C": { + "tokens": { + "bean": "35927795145", + "lp": "1818430906" + }, + "bdvAtSnapshot": { + "bean": "10319756166", + "lp": "856086357", + "total": "11175842523" + }, + "bdvAtRecapitalization": { + "bean": "35927795145", + "lp": "3590062724", + "total": "39517857869" + } + }, + "0xBD39F80E400ed14A341DC2e6eC182EbBabF38662": { + "tokens": { + "bean": "176568446440", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "50716814282", + "lp": "0", + "total": "50716814282" + }, + "bdvAtRecapitalization": { + "bean": "176568446440", + "lp": "0", + "total": "176568446440" + } + }, + "0xcC8D6da195f44e9922FDFB12df80c47b4cc46702": { + "tokens": { + "bean": "11100000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3188320", + "lp": "0", + "total": "3188320" + }, + "bdvAtRecapitalization": { + "bean": "11100000", + "lp": "0", + "total": "11100000" + } + }, + "0xC8ABB314C6FdE10d1679a2ab6f4BDffA462e990D": { + "tokens": { + "bean": "154716", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "44440", + "lp": "0", + "total": "44440" + }, + "bdvAtRecapitalization": { + "bean": "154716", + "lp": "0", + "total": "154716" + } + }, + "0xD20B976584bF506BAf5cC604D1f0A1B8D07138dA": { + "tokens": { + "bean": "100000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "0", + "total": "100000000" + } + }, + "0xdeFecffBEA31b18B14703e10Ac81da2Ed8C5762A": { + "tokens": { + "bean": "669212925", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "192222044", + "lp": "0", + "total": "192222044" + }, + "bdvAtRecapitalization": { + "bean": "669212925", + "lp": "0", + "total": "669212925" + } + }, + "0xddA42f12B8B2ccc6717c053A2b772baD24B08CbD": { + "tokens": { + "bean": "173440185", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "49818265", + "lp": "0", + "total": "49818265" + }, + "bdvAtRecapitalization": { + "bean": "173440185", + "lp": "0", + "total": "173440185" + } + }, + "0xc93678EC2b974a7aE280341cEFeb85984a29FFF7": { + "tokens": { + "bean": "257782236", + "lp": "28760879" + }, + "bdvAtSnapshot": { + "bean": "74044338", + "lp": "13540133", + "total": "87584471" + }, + "bdvAtRecapitalization": { + "bean": "257782236", + "lp": "56781569", + "total": "314563805" + } + }, + "0xBF330a4028B0F2a01B336Df23Bc27DeFb4EddAD1": { + "tokens": { + "bean": "50718008", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14568038", + "lp": "0", + "total": "14568038" + }, + "bdvAtRecapitalization": { + "bean": "50718008", + "lp": "0", + "total": "50718008" + } + }, + "0xD300f2C6Ee9dA84b1dD8E3e24FF5Ae875772b55e": { + "tokens": { + "bean": "2", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "0", + "total": "2" + } + }, + "0xe57384b12A2b73767cDb5d2eadDFD96cC74753a6": { + "tokens": { + "bean": "230700000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "66265345", + "lp": "0", + "total": "66265345" + }, + "bdvAtRecapitalization": { + "bean": "230700000", + "lp": "0", + "total": "230700000" + } + }, + "0xeb11255b15600390e60a7aa1FBe1C821F6D0FD8a": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x0000000000003f5e74C1ba8A66b48E6f3d71aE82": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xfcFAf5f45D86Fa16eC801a8DeFEd5D2cB196D242": { + "tokens": { + "bean": "2440875253", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "701107244", + "lp": "0", + "total": "701107244" + }, + "bdvAtRecapitalization": { + "bean": "2440875253", + "lp": "0", + "total": "2440875253" + } + }, + "0x000000000000084e91743124a982076C59f10084": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x0000000000007F150Bd6f54c40A34d7C3d5e9f56": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x00000000003b3cc22aF3aE1EAc0440BcEe416B40": { + "tokens": { + "bean": "4397", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1263", + "lp": "0", + "total": "1263" + }, + "bdvAtRecapitalization": { + "bean": "4397", + "lp": "0", + "total": "4397" + } + }, + "0x000000000035B5e5ad9019092C665357240f594e": { + "tokens": { + "bean": "87", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "25", + "lp": "0", + "total": "25" + }, + "bdvAtRecapitalization": { + "bean": "87", + "lp": "0", + "total": "87" + } + }, + "0x000000001ada84C06b7d1075f17228C34b307cFA": { + "tokens": { + "bean": "1100048912", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "315973649", + "lp": "0", + "total": "315973649" + }, + "bdvAtRecapitalization": { + "bean": "1100048912", + "lp": "0", + "total": "1100048912" + } + }, + "0x00000000500e2fece27a7600435d0C48d64E0C00": { + "tokens": { + "bean": "35019", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10059", + "lp": "0", + "total": "10059" + }, + "bdvAtRecapitalization": { + "bean": "35019", + "lp": "0", + "total": "35019" + } + }, + "0x001AC61da3301BeFE1F94abc095Bb9732b69F362": { + "tokens": { + "bean": "183711553", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "52768572", + "lp": "0", + "total": "52768572" + }, + "bdvAtRecapitalization": { + "bean": "183711553", + "lp": "0", + "total": "183711553" + } + }, + "0x00000000003E04625c9001717346dD811AE5Eba2": { + "tokens": { + "bean": "59368526", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "17052778", + "lp": "0", + "total": "17052778" + }, + "bdvAtRecapitalization": { + "bean": "59368526", + "lp": "0", + "total": "59368526" + } + }, + "0xF19e9B808Eca47dB283de76EEd94FbBf3E9FdF96": { + "tokens": { + "bean": "57138671", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "16412283", + "lp": "0", + "total": "16412283" + }, + "bdvAtRecapitalization": { + "bean": "57138671", + "lp": "0", + "total": "57138671" + } + }, + "0x000000005736775Feb0C8568e7DEe77222a26880": { + "tokens": { + "bean": "27", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8", + "lp": "0", + "total": "8" + }, + "bdvAtRecapitalization": { + "bean": "27", + "lp": "0", + "total": "27" + } + }, + "0x00000000a1F2d3063Ed639d19a6A56be87E25B1a": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0x034E617D90Eba96b47a555D1d9B1BedbFF196044": { + "tokens": { + "bean": "7170741", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2059695", + "lp": "0", + "total": "2059695" + }, + "bdvAtRecapitalization": { + "bean": "7170741", + "lp": "0", + "total": "7170741" + } + }, + "0x0081aFa76cDf86b4Dd3D1196db559471b229ED16": { + "tokens": { + "bean": "100000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "0", + "total": "100000000" + } + }, + "0x07197a25bF7297C2c41dd09a79160D05b6232BcF": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x01FF6318440f7D5553a82294D78262D5f5084EFF": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x0536f43136d5479310C01f82De2C04C0115217A6": { + "tokens": { + "bean": "6000000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1723416000", + "lp": "0", + "total": "1723416000" + }, + "bdvAtRecapitalization": { + "bean": "6000000000", + "lp": "0", + "total": "6000000000" + } + }, + "0x057a8F9253949d2e6752161b0aD6ba6d28f37044": { + "tokens": { + "bean": "226471578", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "65050790", + "lp": "0", + "total": "65050790" + }, + "bdvAtRecapitalization": { + "bean": "226471578", + "lp": "0", + "total": "226471578" + } + }, + "0x07432d559Fa617b6e23a516f9A6187440FbFB086": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x0Ba9e984768B8A4fe28c657Bf858f128429850b5": { + "tokens": { + "bean": "200745286", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "57661273", + "lp": "0", + "total": "57661273" + }, + "bdvAtRecapitalization": { + "bean": "200745286", + "lp": "0", + "total": "200745286" + } + }, + "0x0b3b1DD110bB02f40A5161478149d09c5ef46F7e": { + "tokens": { + "bean": "5696", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1636", + "lp": "0", + "total": "1636" + }, + "bdvAtRecapitalization": { + "bean": "5696", + "lp": "0", + "total": "5696" + } + }, + "0x0c565f3A167Df783cF6Bb9fcF174E6C7D0d3892B": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x11eDedebF63bef0ea2d2D071bdF88F71543ec6fB": { + "tokens": { + "bean": "164459514", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "47238693", + "lp": "0", + "total": "47238693" + }, + "bdvAtRecapitalization": { + "bean": "164459514", + "lp": "0", + "total": "164459514" + } + }, + "0x0BE0f09aDc19334286027Ed281B612A49893Cd9A": { + "tokens": { + "bean": "5", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "0", + "total": "5" + } + }, + "0x10E1439455BD2624878b243819E31CfEE9eb721C": { + "tokens": { + "bean": "20000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5744720", + "lp": "0", + "total": "5744720" + }, + "bdvAtRecapitalization": { + "bean": "20000000", + "lp": "0", + "total": "20000000" + } + }, + "0x0d0ac94a91badd82264ABaeB355504AE9587Aa82": { + "tokens": { + "bean": "400000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "114894400", + "lp": "0", + "total": "114894400" + }, + "bdvAtRecapitalization": { + "bean": "400000000", + "lp": "0", + "total": "400000000" + } + }, + "0x0D9326f283D8Ca7EEEA4d323d07a0C9c0ab1A192": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x0cE80210EAfd8b7d5E55F611150509998c3bd9B3": { + "tokens": { + "bean": "5474197", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1572386", + "lp": "0", + "total": "1572386" + }, + "bdvAtRecapitalization": { + "bean": "5474197", + "lp": "0", + "total": "5474197" + } + }, + "0x152d08D7e74106A5681C8963E253d039c3e76859": { + "tokens": { + "bean": "194246881", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "55794697", + "lp": "0", + "total": "55794697" + }, + "bdvAtRecapitalization": { + "bean": "194246881", + "lp": "0", + "total": "194246881" + } + }, + "0x1406899696aDb2fA7a95eA68E80D4f9C82FCDeDd": { + "tokens": { + "bean": "42069000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12083731", + "lp": "0", + "total": "12083731" + }, + "bdvAtRecapitalization": { + "bean": "42069000", + "lp": "0", + "total": "42069000" + } + }, + "0x1D634ce4e77863113734158C5aF8244567355452": { + "tokens": { + "bean": "291413206", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "83704364", + "lp": "0", + "total": "83704364" + }, + "bdvAtRecapitalization": { + "bean": "291413206", + "lp": "0", + "total": "291413206" + } + }, + "0x1897EcfC9Df8Ca7F360D271c84E3d8567460202d": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x162852F5D4007B76D3CDc432945516b9bBf1A01f": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x1d6E8BAC6EA3730825bde4B005ed7B2B39A2932d": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x1Fa208031725Cc75Fe0C92D28ce3072a86e3cEFd": { + "tokens": { + "bean": "601510683", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "172775523", + "lp": "0", + "total": "172775523" + }, + "bdvAtRecapitalization": { + "bean": "601510683", + "lp": "0", + "total": "601510683" + } + }, + "0x21194d506Ab47C531a7874B563dFA3787b3938a5": { + "tokens": { + "bean": "318631452", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "91522424", + "lp": "0", + "total": "91522424" + }, + "bdvAtRecapitalization": { + "bean": "318631452", + "lp": "0", + "total": "318631452" + } + }, + "0x218d75b17f491793a96ab4326c7875950359a80C": { + "tokens": { + "bean": "96", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28", + "lp": "0", + "total": "28" + }, + "bdvAtRecapitalization": { + "bean": "96", + "lp": "0", + "total": "96" + } + }, + "0x214c5645d54A27c66A46734515A8F32C57268Cd9": { + "tokens": { + "bean": "31551", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "9063", + "lp": "0", + "total": "9063" + }, + "bdvAtRecapitalization": { + "bean": "31551", + "lp": "0", + "total": "31551" + } + }, + "0x21eD24C01edb72fb67f717378D1BCC72A5326E87": { + "tokens": { + "bean": "346209523", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "99443839", + "lp": "0", + "total": "99443839" + }, + "bdvAtRecapitalization": { + "bean": "346209523", + "lp": "0", + "total": "346209523" + } + }, + "0x22F92B5Cb630524aF4E6C5031249931a77c43845": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x25Ae1F605A57bc57E88Fb9791d44594f9aB2A3B2": { + "tokens": { + "bean": "4792880800", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1376687909", + "lp": "0", + "total": "1376687909" + }, + "bdvAtRecapitalization": { + "bean": "4792880800", + "lp": "0", + "total": "4792880800" + } + }, + "0x247FAF1c6070735423e4e7Fa02d7B2a3821A5363": { + "tokens": { + "bean": "49965811", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14351980", + "lp": "0", + "total": "14351980" + }, + "bdvAtRecapitalization": { + "bean": "49965811", + "lp": "0", + "total": "49965811" + } + }, + "0x29F821148099b0C342cD9BeF9936eB716F82409E": { + "tokens": { + "bean": "111720027", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "32090014", + "lp": "0", + "total": "32090014" + }, + "bdvAtRecapitalization": { + "bean": "111720027", + "lp": "0", + "total": "111720027" + } + }, + "0x26BdC56005Dc75F59F461A03C90f8171e5CB6fc4": { + "tokens": { + "bean": "6741390794", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1936370126", + "lp": "0", + "total": "1936370126" + }, + "bdvAtRecapitalization": { + "bean": "6741390794", + "lp": "0", + "total": "6741390794" + } + }, + "0x2C6A44918f12fdeA9cd14c951E7b71Df824Fdba4": { + "tokens": { + "bean": "18258", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5244", + "lp": "0", + "total": "5244" + }, + "bdvAtRecapitalization": { + "bean": "18258", + "lp": "0", + "total": "18258" + } + }, + "0x2A16898b3a9124685832b752C1bdCB6Ba42b5d49": { + "tokens": { + "bean": "100000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "0", + "total": "100000000" + } + }, + "0x2Df56902dAeD94248df3ACE6efB8a259E9Fe525f": { + "tokens": { + "bean": "5380750000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1545545107", + "lp": "0", + "total": "1545545107" + }, + "bdvAtRecapitalization": { + "bean": "5380750000", + "lp": "0", + "total": "5380750000" + } + }, + "0x30E8B02e0Db5A05bbfc4eEC38dD8b07cDBc96F12": { + "tokens": { + "bean": "1248844985", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "358713238", + "lp": "0", + "total": "358713238" + }, + "bdvAtRecapitalization": { + "bean": "1248844985", + "lp": "0", + "total": "1248844985" + } + }, + "0x2dAF6e1f7aEe5Bc0d88530cb9a60FE0ca86F5E67": { + "tokens": { + "bean": "300000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "86170800", + "lp": "0", + "total": "86170800" + }, + "bdvAtRecapitalization": { + "bean": "300000000", + "lp": "0", + "total": "300000000" + } + }, + "0x382fFCe2287252F930E1C8DC9328dac5BF282bA1": { + "tokens": { + "bean": "11026129", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3167101", + "lp": "0", + "total": "3167101" + }, + "bdvAtRecapitalization": { + "bean": "11026129", + "lp": "0", + "total": "11026129" + } + }, + "0x2Ed7E934847AE82954e4456555CD5FFBe10eb6B5": { + "tokens": { + "bean": "200000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "57447200", + "lp": "0", + "total": "57447200" + }, + "bdvAtRecapitalization": { + "bean": "200000000", + "lp": "0", + "total": "200000000" + } + }, + "0x376a6EFE8E98f3ae2af230B3D45B8Cc5e962bC27": { + "tokens": { + "bean": "98", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28", + "lp": "0", + "total": "28" + }, + "bdvAtRecapitalization": { + "bean": "98", + "lp": "0", + "total": "98" + } + }, + "0x3AEf36d1866C222BF930Dbb2479ec04e22afF05F": { + "tokens": { + "bean": "7863000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2258536668", + "lp": "0", + "total": "2258536668" + }, + "bdvAtRecapitalization": { + "bean": "7863000000", + "lp": "0", + "total": "7863000000" + } + }, + "0x3B3EC26149597e380B25A9Ef99631E9e0e85999A": { + "tokens": { + "bean": "50000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14361800", + "lp": "0", + "total": "14361800" + }, + "bdvAtRecapitalization": { + "bean": "50000000", + "lp": "0", + "total": "50000000" + } + }, + "0x38840B12d538a9f3347a38cDb44562f875D38e26": { + "tokens": { + "bean": "13", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4", + "lp": "0", + "total": "4" + }, + "bdvAtRecapitalization": { + "bean": "13", + "lp": "0", + "total": "13" + } + }, + "0x3bE25Eef7b994C05eb119548E700dE5A304B5Baf": { + "tokens": { + "bean": "49", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14", + "lp": "0", + "total": "14" + }, + "bdvAtRecapitalization": { + "bean": "49", + "lp": "0", + "total": "49" + } + }, + "0x46aD7865CbaB5387BD24d8842a1C74c8C12D208a": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x42B2C65dB7F9e3b6c26Bc6151CCf30CcE0fb99EA": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x3f99E5BB6e6C76DA33AcC6c3020F64749bC116d3": { + "tokens": { + "bean": "514810568", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "147872128", + "lp": "0", + "total": "147872128" + }, + "bdvAtRecapitalization": { + "bean": "514810568", + "lp": "0", + "total": "514810568" + } + }, + "0x46C4128981525aA446e02FFb2FF762F1D6A49170": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x49Efdfb20FD0d286a1060Fe5cF1AEE93d2301B81": { + "tokens": { + "bean": "3629032258", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1042388710", + "lp": "0", + "total": "1042388710" + }, + "bdvAtRecapitalization": { + "bean": "3629032258", + "lp": "0", + "total": "3629032258" + } + }, + "0x4868aF497acaf3B7B93978eBAFE3911b288ec404": { + "tokens": { + "bean": "250000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "71809000", + "lp": "0", + "total": "71809000" + }, + "bdvAtRecapitalization": { + "bean": "250000000", + "lp": "0", + "total": "250000000" + } + }, + "0x4857d1C4b89A046F834FD9F271b0A82f5159889b": { + "tokens": { + "bean": "1033504915", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "296859818", + "lp": "0", + "total": "296859818" + }, + "bdvAtRecapitalization": { + "bean": "1033504915", + "lp": "0", + "total": "1033504915" + } + }, + "0x499dd900f800FD0A2eD300006000A57f00FA009b": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x49F4ca97f0BBa39425A2975e1FfCcE2587A441B2": { + "tokens": { + "bean": "194241735", + "lp": "1349798740" + }, + "bdvAtSnapshot": { + "bean": "55793219", + "lp": "635462300", + "total": "691255519" + }, + "bdvAtRecapitalization": { + "bean": "194241735", + "lp": "2664859097", + "total": "2859100832" + } + }, + "0x49dfC7999be4e5c938a18676Aa11e96e3bF87ee8": { + "tokens": { + "bean": "300474256", + "lp": "1794879832" + }, + "bdvAtSnapshot": { + "bean": "86307023", + "lp": "844998912", + "total": "931305935" + }, + "bdvAtRecapitalization": { + "bean": "300474256", + "lp": "3543566686", + "total": "3844040942" + } + }, + "0x4Aca0D5C138e811d6b74aF3940a724aa94c51C42": { + "tokens": { + "bean": "1302176731", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "374032036", + "lp": "0", + "total": "374032036" + }, + "bdvAtRecapitalization": { + "bean": "1302176731", + "lp": "0", + "total": "1302176731" + } + }, + "0x4c54BD629ACB1DaedB3349023a239b4923b8589b": { + "tokens": { + "bean": "155697", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "44722", + "lp": "0", + "total": "44722" + }, + "bdvAtRecapitalization": { + "bean": "155697", + "lp": "0", + "total": "155697" + } + }, + "0x4Cdc86fa95Ec2704f0849825f1F8b077deeD8d39": { + "tokens": { + "bean": "942000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "270576312", + "lp": "0", + "total": "270576312" + }, + "bdvAtRecapitalization": { + "bean": "942000000", + "lp": "0", + "total": "942000000" + } + }, + "0x5164aEf3212841FB3479439Fe06C23cC48ce433f": { + "tokens": { + "bean": "3449", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "991", + "lp": "0", + "total": "991" + }, + "bdvAtRecapitalization": { + "bean": "3449", + "lp": "0", + "total": "3449" + } + }, + "0x50A5EcD4876E7Ff5e1a5C54A4f370C4c6F4047d8": { + "tokens": { + "bean": "11952663297", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3433235195", + "lp": "0", + "total": "3433235195" + }, + "bdvAtRecapitalization": { + "bean": "11952663297", + "lp": "0", + "total": "11952663297" + } + }, + "0x4c37d0fdc655909cDF07404E5E001CdD0F7168Df": { + "tokens": { + "bean": "226971109", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "65194273", + "lp": "0", + "total": "65194273" + }, + "bdvAtRecapitalization": { + "bean": "226971109", + "lp": "0", + "total": "226971109" + } + }, + "0x50c491ffDa25f9E472d467d60835468C522E7d3a": { + "tokens": { + "bean": "495690679", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "142380208", + "lp": "0", + "total": "142380208" + }, + "bdvAtRecapitalization": { + "bean": "495690679", + "lp": "0", + "total": "495690679" + } + }, + "0x5136a9A5D077aE4247C7706b577F77153C32A01C": { + "tokens": { + "bean": "72", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "21", + "lp": "0", + "total": "21" + }, + "bdvAtRecapitalization": { + "bean": "72", + "lp": "0", + "total": "72" + } + }, + "0x4d4a25125BDca5226EFEF9938d0597964d5561d9": { + "tokens": { + "bean": "53130", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "15261", + "lp": "0", + "total": "15261" + }, + "bdvAtRecapitalization": { + "bean": "53130", + "lp": "0", + "total": "53130" + } + }, + "0x5500aa1197f8B05D7cAA35138E22A7cf33F377D6": { + "tokens": { + "bean": "5239", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1505", + "lp": "0", + "total": "1505" + }, + "bdvAtRecapitalization": { + "bean": "5239", + "lp": "0", + "total": "5239" + } + }, + "0x51869683791F9950B19145fDC0be0feDF743dd78": { + "tokens": { + "bean": "359093896", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "103144694", + "lp": "0", + "total": "103144694" + }, + "bdvAtRecapitalization": { + "bean": "359093896", + "lp": "0", + "total": "359093896" + } + }, + "0x53C0483B3D809c725f660F199B8B6a8a83B4c8Fe": { + "tokens": { + "bean": "4381941", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1258651", + "lp": "0", + "total": "1258651" + }, + "bdvAtRecapitalization": { + "bean": "4381941", + "lp": "0", + "total": "4381941" + } + }, + "0x4CddfF23d036E15fe786508FfA39B27F73b4A01a": { + "tokens": { + "bean": "71", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20", + "lp": "0", + "total": "20" + }, + "bdvAtRecapitalization": { + "bean": "71", + "lp": "0", + "total": "71" + } + }, + "0x59b0Bc0E790085A90D3EE4D0be139841C24aFaf8": { + "tokens": { + "bean": "379430", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "108986", + "lp": "0", + "total": "108986" + }, + "bdvAtRecapitalization": { + "bean": "379430", + "lp": "0", + "total": "379430" + } + }, + "0x5B1B0349B3a668c75cc868801A39430684e3f36A": { + "tokens": { + "bean": "5273565158", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1514757762", + "lp": "0", + "total": "1514757762" + }, + "bdvAtRecapitalization": { + "bean": "5273565158", + "lp": "0", + "total": "5273565158" + } + }, + "0x5B0fD17be82d7b3DdB16018abd6b65510724e5d3": { + "tokens": { + "bean": "151878960", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "43625105", + "lp": "0", + "total": "43625105" + }, + "bdvAtRecapitalization": { + "bean": "151878960", + "lp": "0", + "total": "151878960" + } + }, + "0x5de1F0BC895c27A0c1f7E20A74016E9aE3bC3B2b": { + "tokens": { + "bean": "61901890", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "17780451", + "lp": "0", + "total": "17780451" + }, + "bdvAtRecapitalization": { + "bean": "61901890", + "lp": "0", + "total": "61901890" + } + }, + "0x609A7742aCB183f5a365c2d40D80E0F30007a597": { + "tokens": { + "bean": "147340046", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "42321365", + "lp": "0", + "total": "42321365" + }, + "bdvAtRecapitalization": { + "bean": "147340046", + "lp": "0", + "total": "147340046" + } + }, + "0x66f049111958809841Bbe4b81c034Da2D953AA0c": { + "tokens": { + "bean": "9", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3", + "lp": "0", + "total": "3" + }, + "bdvAtRecapitalization": { + "bean": "9", + "lp": "0", + "total": "9" + } + }, + "0x5e4c21c30c968F1D1eE37c2701b99B193B89d3f3": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x634118B21fbC1A53B0D7bcC2fcFa2E735a3B0200": { + "tokens": { + "bean": "15100000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4337264", + "lp": "0", + "total": "4337264" + }, + "bdvAtRecapitalization": { + "bean": "15100000", + "lp": "0", + "total": "15100000" + } + }, + "0x67f843931a71A6511B15B3DcE04c7729Cf05eCB6": { + "tokens": { + "bean": "77", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "22", + "lp": "0", + "total": "22" + }, + "bdvAtRecapitalization": { + "bean": "77", + "lp": "0", + "total": "77" + } + }, + "0x68781516d80eC9339ecDf5996DfBcafb8AfE8e22": { + "tokens": { + "bean": "4500000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1292562000", + "lp": "0", + "total": "1292562000" + }, + "bdvAtRecapitalization": { + "bean": "4500000000", + "lp": "0", + "total": "4500000000" + } + }, + "0x68575571E75D2CfA4222e0F8E7053F056EB91d6C": { + "tokens": { + "bean": "385519014", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "110734940", + "lp": "0", + "total": "110734940" + }, + "bdvAtRecapitalization": { + "bean": "385519014", + "lp": "0", + "total": "385519014" + } + }, + "0x6ab6828D97289c48C5E2eA59B8C5f99fffA1e3fd": { + "tokens": { + "bean": "128324713", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "36859477", + "lp": "0", + "total": "36859477" + }, + "bdvAtRecapitalization": { + "bean": "128324713", + "lp": "0", + "total": "128324713" + } + }, + "0x6ca3fB52498f02C85c48cF250f5972aDD97524A9": { + "tokens": { + "bean": "300000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "86170800", + "lp": "0", + "total": "86170800" + }, + "bdvAtRecapitalization": { + "bean": "300000000", + "lp": "0", + "total": "300000000" + } + }, + "0x6ff09a9A7af5fdC5754a732F5459E466b16452fa": { + "tokens": { + "bean": "41", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12", + "lp": "0", + "total": "12" + }, + "bdvAtRecapitalization": { + "bean": "41", + "lp": "0", + "total": "41" + } + }, + "0x62289050DdF0f302cFDe7fc215f068738d510C2C": { + "tokens": { + "bean": "95", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "27", + "lp": "0", + "total": "27" + }, + "bdvAtRecapitalization": { + "bean": "95", + "lp": "0", + "total": "95" + } + }, + "0x718B2c8110412b0968F7Bfc97f8733d6E063D84e": { + "tokens": { + "bean": "270503", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "77698", + "lp": "0", + "total": "77698" + }, + "bdvAtRecapitalization": { + "bean": "270503", + "lp": "0", + "total": "270503" + } + }, + "0x6C01ec9622e50799d62ca076F2e2aa34DC840D5B": { + "tokens": { + "bean": "4616", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1326", + "lp": "0", + "total": "1326" + }, + "bdvAtRecapitalization": { + "bean": "4616", + "lp": "0", + "total": "4616" + } + }, + "0x75e4E9423E425D902D78e0f909BC8BDE7E86e38e": { + "tokens": { + "bean": "967272", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "277835", + "lp": "0", + "total": "277835" + }, + "bdvAtRecapitalization": { + "bean": "967272", + "lp": "0", + "total": "967272" + } + }, + "0x75AeE7D5E8f23f2a562a4A5c5e9370A945f47Cc7": { + "tokens": { + "bean": "32929958", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "9458669", + "lp": "0", + "total": "9458669" + }, + "bdvAtRecapitalization": { + "bean": "32929958", + "lp": "0", + "total": "32929958" + } + }, + "0x7550f43a91579C7e6dBeEee5AA34E9Fa40Ce7F62": { + "tokens": { + "bean": "152959083", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "43935355", + "lp": "0", + "total": "43935355" + }, + "bdvAtRecapitalization": { + "bean": "152959083", + "lp": "0", + "total": "152959083" + } + }, + "0x794f3b2CA85B97e2A2Fe57Acc277E96F549C0188": { + "tokens": { + "bean": "50000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14361800", + "lp": "0", + "total": "14361800" + }, + "bdvAtRecapitalization": { + "bean": "50000000", + "lp": "0", + "total": "50000000" + } + }, + "0x777EA5d7A90D7895D4db96Fb35BC13f37A329EB0": { + "tokens": { + "bean": "38651974", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "11102238", + "lp": "0", + "total": "11102238" + }, + "bdvAtRecapitalization": { + "bean": "38651974", + "lp": "0", + "total": "38651974" + } + }, + "0x7957d651D862c08D257b85Aa54a51006712fac0A": { + "tokens": { + "bean": "8483235", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2436690", + "lp": "0", + "total": "2436690" + }, + "bdvAtRecapitalization": { + "bean": "8483235", + "lp": "0", + "total": "8483235" + } + }, + "0x7A35147dCEE2db85E1407f08027F896b766364Ee": { + "tokens": { + "bean": "108203717897", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "31080003114", + "lp": "0", + "total": "31080003114" + }, + "bdvAtRecapitalization": { + "bean": "108203717897", + "lp": "0", + "total": "108203717897" + } + }, + "0x7A6161927f483c8E0d979F0572dA1c6fa8897DE7": { + "tokens": { + "bean": "100000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "0", + "total": "100000000" + } + }, + "0x7Ca44C05AA9fcb723741CBf8D5c837931c08971a": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x7Cf09D7A9A74f746EDcb06949B9d64bCd9D1604f": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x7a638C02BA703a6476e3F397e78c18F677803ef6": { + "tokens": { + "bean": "93163267", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "26759844", + "lp": "0", + "total": "26759844" + }, + "bdvAtRecapitalization": { + "bean": "93163267", + "lp": "0", + "total": "93163267" + } + }, + "0x80281D33B56231Ea95a5b8F61cfD91ca052C7B5A": { + "tokens": { + "bean": "549024870", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "157699708", + "lp": "0", + "total": "157699708" + }, + "bdvAtRecapitalization": { + "bean": "549024870", + "lp": "0", + "total": "549024870" + } + }, + "0x72ECeD3D01e8854b1f6D79d3c3a507244d6b770a": { + "tokens": { + "bean": "395986332", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "113741530", + "lp": "0", + "total": "113741530" + }, + "bdvAtRecapitalization": { + "bean": "395986332", + "lp": "0", + "total": "395986332" + } + }, + "0x5bEe7135d309838166e62aCd74Db73ffb1D417c5": { + "tokens": { + "bean": "58", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "17", + "lp": "0", + "total": "17" + }, + "bdvAtRecapitalization": { + "bean": "58", + "lp": "0", + "total": "58" + } + }, + "0x85EE4299c926b92412DAde8f1E968f276d44c276": { + "tokens": { + "bean": "9", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3", + "lp": "0", + "total": "3" + }, + "bdvAtRecapitalization": { + "bean": "9", + "lp": "0", + "total": "9" + } + }, + "0x821ACf4602B9D57Da21DEE0c3Db45e71143c0B45": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x88b74128df7CB82eB7C2167e89946f83FFC907E9": { + "tokens": { + "bean": "510304", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "146578", + "lp": "0", + "total": "146578" + }, + "bdvAtRecapitalization": { + "bean": "510304", + "lp": "0", + "total": "510304" + } + }, + "0x895EDB1B773DBCB90BF56C3D4573Bae65A6398B1": { + "tokens": { + "bean": "109066975", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "31327962", + "lp": "0", + "total": "31327962" + }, + "bdvAtRecapitalization": { + "bean": "109066975", + "lp": "0", + "total": "109066975" + } + }, + "0x86a2059273FA831334F57887A0834c056d7D93A5": { + "tokens": { + "bean": "52659438", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "15125686", + "lp": "0", + "total": "15125686" + }, + "bdvAtRecapitalization": { + "bean": "52659438", + "lp": "0", + "total": "52659438" + } + }, + "0x8A7f7C5b556B1298a74c0e89df46Eba117A2F6c1": { + "tokens": { + "bean": "42000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12063912", + "lp": "0", + "total": "12063912" + }, + "bdvAtRecapitalization": { + "bean": "42000000", + "lp": "0", + "total": "42000000" + } + }, + "0x8A733E7280776149c505447042e5e3125896c333": { + "tokens": { + "bean": "111090472", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "31909183", + "lp": "0", + "total": "31909183" + }, + "bdvAtRecapitalization": { + "bean": "111090472", + "lp": "0", + "total": "111090472" + } + }, + "0x897F27d11c2DD9F4E80770D33b681232e93e2B62": { + "tokens": { + "bean": "116901663", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "33578366", + "lp": "0", + "total": "33578366" + }, + "bdvAtRecapitalization": { + "bean": "116901663", + "lp": "0", + "total": "116901663" + } + }, + "0x90746A1393A772AF40c9F396b730a4fFd024bB63": { + "tokens": { + "bean": "244153356", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "70129633", + "lp": "0", + "total": "70129633" + }, + "bdvAtRecapitalization": { + "bean": "244153356", + "lp": "0", + "total": "244153356" + } + }, + "0x8aFBe56240124e139204A8b7B9687159159a7532": { + "tokens": { + "bean": "908563585", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "260972170", + "lp": "0", + "total": "260972170" + }, + "bdvAtRecapitalization": { + "bean": "908563585", + "lp": "0", + "total": "908563585" + } + }, + "0x94BC010E232824Be9bab598cd46c3cbDB06Fa2a9": { + "tokens": { + "bean": "163193286", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "46874987", + "lp": "0", + "total": "46874987" + }, + "bdvAtRecapitalization": { + "bean": "163193286", + "lp": "0", + "total": "163193286" + } + }, + "0x9362c5f4fD3fA3989E88268fB3e0D69E9eeb1705": { + "tokens": { + "bean": "324094915", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "93091727", + "lp": "0", + "total": "93091727" + }, + "bdvAtRecapitalization": { + "bean": "324094915", + "lp": "0", + "total": "324094915" + } + }, + "0x950E5BbDADf252609F49b2Cd45222cD3280F35d6": { + "tokens": { + "bean": "629092", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "180698", + "lp": "0", + "total": "180698" + }, + "bdvAtRecapitalization": { + "bean": "629092", + "lp": "0", + "total": "629092" + } + }, + "0x96D4F9d8F23eadee78fc6824fc60b8c1CE578443": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x96c195F6643A3D797cb90cb6BA0Ae2776D51b5F3": { + "tokens": { + "bean": "80", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "23", + "lp": "0", + "total": "23" + }, + "bdvAtRecapitalization": { + "bean": "80", + "lp": "0", + "total": "80" + } + }, + "0xa0158E68588b1007B3bb1e8F8ea8a85cEE842896": { + "tokens": { + "bean": "130825044", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "37577662", + "lp": "0", + "total": "37577662" + }, + "bdvAtRecapitalization": { + "bean": "130825044", + "lp": "0", + "total": "130825044" + } + }, + "0x9906F598d5472080e8aAEd5d33a3c54cE7Db3CBF": { + "tokens": { + "bean": "521414", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "149769", + "lp": "0", + "total": "149769" + }, + "bdvAtRecapitalization": { + "bean": "521414", + "lp": "0", + "total": "521414" + } + }, + "0x9d84C5da53999D226ac4800bEff4f97EE4946E99": { + "tokens": { + "bean": "159744620", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "45884406", + "lp": "0", + "total": "45884406" + }, + "bdvAtRecapitalization": { + "bean": "159744620", + "lp": "0", + "total": "159744620" + } + }, + "0xA398A1a1208FFc963A640588AB03068E0a70b2d2": { + "tokens": { + "bean": "940642231", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "270186312", + "lp": "0", + "total": "270186312" + }, + "bdvAtRecapitalization": { + "bean": "940642231", + "lp": "0", + "total": "940642231" + } + }, + "0xA1006d0051a35b0000F961a8000000009eA8d2dB": { + "tokens": { + "bean": "240", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "69", + "lp": "0", + "total": "69" + }, + "bdvAtRecapitalization": { + "bean": "240", + "lp": "0", + "total": "240" + } + }, + "0x9E97Ebb3BA5e751dcbD55260CE660cDc73dd3854": { + "tokens": { + "bean": "3237021441", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "929789091", + "lp": "0", + "total": "929789091" + }, + "bdvAtRecapitalization": { + "bean": "3237021441", + "lp": "0", + "total": "3237021441" + } + }, + "0xa6b2876743D22A11d6941d84738Abda7669FcAcF": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xa6A22bf9285F2B549CaA0A8A49EB7EA9dFd8D03E": { + "tokens": { + "bean": "98919350", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28413198", + "lp": "0", + "total": "28413198" + }, + "bdvAtRecapitalization": { + "bean": "98919350", + "lp": "0", + "total": "98919350" + } + }, + "0xa405e822d1C3A8568c6B82Eb6e570FcA0136F802": { + "tokens": { + "bean": "514", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "148", + "lp": "0", + "total": "148" + }, + "bdvAtRecapitalization": { + "bean": "514", + "lp": "0", + "total": "514" + } + }, + "0xA8B969a61d87504bcD884e15A782E8F330C60Eda": { + "tokens": { + "bean": "920000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "264257120", + "lp": "0", + "total": "264257120" + }, + "bdvAtRecapitalization": { + "bean": "920000000", + "lp": "0", + "total": "920000000" + } + }, + "0xA1c1E53D7304aAE853Ef491516aEdff207b69F9D": { + "tokens": { + "bean": "4358141", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1251815", + "lp": "0", + "total": "1251815" + }, + "bdvAtRecapitalization": { + "bean": "4358141", + "lp": "0", + "total": "4358141" + } + }, + "0xAdCC57A64Dfe3f67800644711BEA6d2572dA32da": { + "tokens": { + "bean": "119614745", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "34357661", + "lp": "0", + "total": "34357661" + }, + "bdvAtRecapitalization": { + "bean": "119614745", + "lp": "0", + "total": "119614745" + } + }, + "0xa8ecAf8745C56D5935c232D2c5b83B9CD3dE1f6a": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xa2c4435F208F9c9AdB6C15bB8DB5ABb86D0daeCc": { + "tokens": { + "bean": "1306315", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "375221", + "lp": "0", + "total": "375221" + }, + "bdvAtRecapitalization": { + "bean": "1306315", + "lp": "0", + "total": "1306315" + } + }, + "0xaef4842A2C6f44ed2D8C4BFf94451126D79A065E": { + "tokens": { + "bean": "100000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "0", + "total": "100000000" + } + }, + "0xb1720612D0131839DC489fCf20398Ea925282fCa": { + "tokens": { + "bean": "3827819", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1099487", + "lp": "0", + "total": "1099487" + }, + "bdvAtRecapitalization": { + "bean": "3827819", + "lp": "0", + "total": "3827819" + } + }, + "0xB3fCD22ffD34D75C979D49E2E5fb3a3405644831": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xb28A6de906d72b2C52A7F7D2496D2DBa2B8D02E2": { + "tokens": { + "bean": "147966498", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "42501305", + "lp": "0", + "total": "42501305" + }, + "bdvAtRecapitalization": { + "bean": "147966498", + "lp": "0", + "total": "147966498" + } + }, + "0xB4310C2CAFdE76E1A0F09B01195435F4A630D48f": { + "tokens": { + "bean": "2152037", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "618142", + "lp": "0", + "total": "618142" + }, + "bdvAtRecapitalization": { + "bean": "2152037", + "lp": "0", + "total": "2152037" + } + }, + "0xb0aA8bDDE2657dd1B7BA892d4dbdfAd7da4C3704": { + "tokens": { + "bean": "250000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "71809000", + "lp": "0", + "total": "71809000" + }, + "bdvAtRecapitalization": { + "bean": "250000000", + "lp": "0", + "total": "250000000" + } + }, + "0xB4670077B4D680595B15872d79dEe61Ffcb8b15d": { + "tokens": { + "bean": "30621", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "8795", + "lp": "0", + "total": "8795" + }, + "bdvAtRecapitalization": { + "bean": "30621", + "lp": "0", + "total": "30621" + } + }, + "0xB5cc8B38317F80360EF2c90AE1D115a831A2DFa2": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xb9BEBaEE7F9029eD936De59bEa6d759F245aD786": { + "tokens": { + "bean": "22157481", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6364426", + "lp": "0", + "total": "6364426" + }, + "bdvAtRecapitalization": { + "bean": "22157481", + "lp": "0", + "total": "22157481" + } + }, + "0xBd01F3494FF4f5b6ACa5689CC6220E68d684F146": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xbC147973709A9f8F25B5f45021CAb1EA030D3885": { + "tokens": { + "bean": "267522", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "76842", + "lp": "0", + "total": "76842" + }, + "bdvAtRecapitalization": { + "bean": "267522", + "lp": "0", + "total": "267522" + } + }, + "0xbc2266159a68862B44e88f72687330a4a9760D00": { + "tokens": { + "bean": "143845042", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "41317474", + "lp": "0", + "total": "41317474" + }, + "bdvAtRecapitalization": { + "bean": "143845042", + "lp": "0", + "total": "143845042" + } + }, + "0xbcC7f6355bc08f6b7d3a41322CE4627118314763": { + "tokens": { + "bean": "14", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "4", + "lp": "0", + "total": "4" + }, + "bdvAtRecapitalization": { + "bean": "14", + "lp": "0", + "total": "14" + } + }, + "0xa10FcA31A2Cb432C9Ac976779DC947CfDb003EF0": { + "tokens": { + "bean": "10086331", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2897157", + "lp": "0", + "total": "2897157" + }, + "bdvAtRecapitalization": { + "bean": "10086331", + "lp": "0", + "total": "10086331" + } + }, + "0xAE7861C80D03826837A50b45aecF11eC677f6586": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xBefE4f86F189C1c817446B71EB6aC90e3cb68E60": { + "tokens": { + "bean": "100000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "0", + "total": "100000000" + } + }, + "0xbe7395d579cBa0E3d7813334Ff5e2d3CFe1311Ba": { + "tokens": { + "bean": "8", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2", + "lp": "0", + "total": "2" + }, + "bdvAtRecapitalization": { + "bean": "8", + "lp": "0", + "total": "8" + } + }, + "0xB7d691867E549C7C54C559B7fc93965403AC65dF": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xBf3f6477Dbd514Ef85b7D3eC6ac2205Fd0962039": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xC3391169cbbaa16B86c625b0305CfdF0CCbba40F": { + "tokens": { + "bean": "1369600757", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "393398643", + "lp": "0", + "total": "393398643" + }, + "bdvAtRecapitalization": { + "bean": "1369600757", + "lp": "0", + "total": "1369600757" + } + }, + "0xc265FD59095B56B53442326Dd1059A7F8775ad0E": { + "tokens": { + "bean": "65000000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "18670340000", + "lp": "0", + "total": "18670340000" + }, + "bdvAtRecapitalization": { + "bean": "65000000000", + "lp": "0", + "total": "65000000000" + } + }, + "0xc99C07a3deD982ac5DF8f6B17677874EC57A54Ee": { + "tokens": { + "bean": "50000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14361800", + "lp": "0", + "total": "14361800" + }, + "bdvAtRecapitalization": { + "bean": "50000000", + "lp": "0", + "total": "50000000" + } + }, + "0xC9691Cc21D99a0C3f52A41673C29F71906b13a0D": { + "tokens": { + "bean": "6104293", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1753373", + "lp": "0", + "total": "1753373" + }, + "bdvAtRecapitalization": { + "bean": "6104293", + "lp": "0", + "total": "6104293" + } + }, + "0xCB218f2638185d13758592f87A0A9732A83f29f5": { + "tokens": { + "bean": "166274699", + "lp": "1799487166" + }, + "bdvAtSnapshot": { + "bean": "47760079", + "lp": "847167966", + "total": "894928045" + }, + "bdvAtRecapitalization": { + "bean": "166274699", + "lp": "3552662780", + "total": "3718937479" + } + }, + "0xC13D06194E149Ea53f6c823d9446b100eED37042": { + "tokens": { + "bean": "672", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "193", + "lp": "0", + "total": "193" + }, + "bdvAtRecapitalization": { + "bean": "672", + "lp": "0", + "total": "672" + } + }, + "0xC849A498B4D98c80dfbC1A24F35EF234A9BA05D5": { + "tokens": { + "bean": "22311", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6409", + "lp": "0", + "total": "6409" + }, + "bdvAtRecapitalization": { + "bean": "22311", + "lp": "0", + "total": "22311" + } + }, + "0xcbFd8F36E763be77097701350137867986B605aC": { + "tokens": { + "bean": "97895858", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28119215", + "lp": "0", + "total": "28119215" + }, + "bdvAtRecapitalization": { + "bean": "97895858", + "lp": "0", + "total": "97895858" + } + }, + "0xcc23CE3C69317EB40d125001D7c325b36e6d4357": { + "tokens": { + "bean": "98223056", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28213198", + "lp": "0", + "total": "28213198" + }, + "bdvAtRecapitalization": { + "bean": "98223056", + "lp": "0", + "total": "98223056" + } + }, + "0xcC4804885733e8668Da3b3FB25537ed0E4DFAdF2": { + "tokens": { + "bean": "146171177", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "41985624", + "lp": "0", + "total": "41985624" + }, + "bdvAtRecapitalization": { + "bean": "146171177", + "lp": "0", + "total": "146171177" + } + }, + "0xCeB15131d3C0Adcffbfe229868b338FF24eD338A": { + "tokens": { + "bean": "4133000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1187146388", + "lp": "0", + "total": "1187146388" + }, + "bdvAtRecapitalization": { + "bean": "4133000000", + "lp": "0", + "total": "4133000000" + } + }, + "0xcd323d75aF5087a45c12229f64e1ef9fb8aAF143": { + "tokens": { + "bean": "7952682", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2284297", + "lp": "0", + "total": "2284297" + }, + "bdvAtRecapitalization": { + "bean": "7952682", + "lp": "0", + "total": "7952682" + } + }, + "0xD32FBBd463DED23a44Fee49Fe2FA5979418945FA": { + "tokens": { + "bean": "10851", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "3117", + "lp": "0", + "total": "3117" + }, + "bdvAtRecapitalization": { + "bean": "10851", + "lp": "0", + "total": "10851" + } + }, + "0xd8D219cdc59e087925B8Bb0aCA688Fd252C4315E": { + "tokens": { + "bean": "24491645", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "7034882", + "lp": "0", + "total": "7034882" + }, + "bdvAtRecapitalization": { + "bean": "24491645", + "lp": "0", + "total": "24491645" + } + }, + "0xD683B78e988BA4bdb9Fa0E2012C4C36B7cC96aaD": { + "tokens": { + "bean": "44", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "13", + "lp": "0", + "total": "13" + }, + "bdvAtRecapitalization": { + "bean": "44", + "lp": "0", + "total": "44" + } + }, + "0xD9437bd9becC57b2A152E3680aD3d675ed5b14b9": { + "tokens": { + "bean": "430919925", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "123775716", + "lp": "0", + "total": "123775716" + }, + "bdvAtRecapitalization": { + "bean": "430919925", + "lp": "0", + "total": "430919925" + } + }, + "0xCeE29290c6DDa832898bA707eE9D40B311181b9A": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xcEf5A94Bb413c8039B490Ef627e20D16db2fFCC3": { + "tokens": { + "bean": "690218556", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "198255617", + "lp": "0", + "total": "198255617" + }, + "bdvAtRecapitalization": { + "bean": "690218556", + "lp": "0", + "total": "690218556" + } + }, + "0xdB744A5853A0a8A81FeeDB4eFD5f69F0de6825ff": { + "tokens": { + "bean": "490", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "141", + "lp": "0", + "total": "141" + }, + "bdvAtRecapitalization": { + "bean": "490", + "lp": "0", + "total": "490" + } + }, + "0xdc6C276D357e82C7D38D73061CEeD2e33990E5bC": { + "tokens": { + "bean": "8685082", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "2494668", + "lp": "0", + "total": "2494668" + }, + "bdvAtRecapitalization": { + "bean": "8685082", + "lp": "0", + "total": "8685082" + } + }, + "0xD8711e8BdeCe3e95baAdbDBf7a21a73ba3471b7f": { + "tokens": { + "bean": "35459", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10185", + "lp": "0", + "total": "10185" + }, + "bdvAtRecapitalization": { + "bean": "35459", + "lp": "0", + "total": "35459" + } + }, + "0xdfb92A9d77205e2897D76C47847897B41B44c025": { + "tokens": { + "bean": "103967577", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "29863231", + "lp": "0", + "total": "29863231" + }, + "bdvAtRecapitalization": { + "bean": "103967577", + "lp": "0", + "total": "103967577" + } + }, + "0xE113E7B1E8Ecd07973EA40978aED520241d17f27": { + "tokens": { + "bean": "459064867", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "131859956", + "lp": "0", + "total": "131859956" + }, + "bdvAtRecapitalization": { + "bean": "459064867", + "lp": "0", + "total": "459064867" + } + }, + "0xe63d1e4b80cF3B2ebcEC1175083D9266aEadf3A3": { + "tokens": { + "bean": "150003592", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "43086432", + "lp": "0", + "total": "43086432" + }, + "bdvAtRecapitalization": { + "bean": "150003592", + "lp": "0", + "total": "150003592" + } + }, + "0xDEA221515cCe76dC4454B68c4918603DfFa12F31": { + "tokens": { + "bean": "800559147", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "229949407", + "lp": "0", + "total": "229949407" + }, + "bdvAtRecapitalization": { + "bean": "800559147", + "lp": "0", + "total": "800559147" + } + }, + "0xe6a6eE4196D361ec4F6D587C7EbE20C50667fB39": { + "tokens": { + "bean": "42000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12063912", + "lp": "0", + "total": "12063912" + }, + "bdvAtRecapitalization": { + "bean": "42000000", + "lp": "0", + "total": "42000000" + } + }, + "0xEef86c2E49E11345F1a693675dF9a38f7d880C8F": { + "tokens": { + "bean": "44975655", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "12918627", + "lp": "0", + "total": "12918627" + }, + "bdvAtRecapitalization": { + "bean": "44975655", + "lp": "0", + "total": "44975655" + } + }, + "0xE90f8A0df275911A3c4fe561dCa300DF374E5428": { + "tokens": { + "bean": "282951", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "81274", + "lp": "0", + "total": "81274" + }, + "bdvAtRecapitalization": { + "bean": "282951", + "lp": "0", + "total": "282951" + } + }, + "0xefD09Cc91a34659B4Da25bc22Bd0D1380cBC47Ec": { + "tokens": { + "bean": "22059802", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "6336369", + "lp": "0", + "total": "6336369" + }, + "bdvAtRecapitalization": { + "bean": "22059802", + "lp": "0", + "total": "22059802" + } + }, + "0xEAfD738c06C9cA5f1c443f45033A59d34737af2d": { + "tokens": { + "bean": "17", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "5", + "lp": "0", + "total": "5" + }, + "bdvAtRecapitalization": { + "bean": "17", + "lp": "0", + "total": "17" + } + }, + "0xf50c00cb5547f53BE3843381aC3427b32b9C3F07": { + "tokens": { + "bean": "96311", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "27664", + "lp": "0", + "total": "27664" + }, + "bdvAtRecapitalization": { + "bean": "96311", + "lp": "0", + "total": "96311" + } + }, + "0xf25ba658b15A49D66b5b414F7718c2E579950aac": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xf115d93A31e79ccA4697B9683c856326E0BeD3c3": { + "tokens": { + "bean": "246154267", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "70704367", + "lp": "0", + "total": "70704367" + }, + "bdvAtRecapitalization": { + "bean": "246154267", + "lp": "0", + "total": "246154267" + } + }, + "0xF58c02C8aD9D6C436246ca124F43c690368bBdfE": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xF54fCb4859f10019AEdaB0eBc4BB8C5C99591666": { + "tokens": { + "bean": "49", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14", + "lp": "0", + "total": "14" + }, + "bdvAtRecapitalization": { + "bean": "49", + "lp": "0", + "total": "49" + } + }, + "0xF75f9a658E00B5FC55De9D23cf0B1183B23640C6": { + "tokens": { + "bean": "507534159", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "145782082", + "lp": "0", + "total": "145782082" + }, + "bdvAtRecapitalization": { + "bean": "507534159", + "lp": "0", + "total": "507534159" + } + }, + "0xf6cCa4d94772Fff831bf3a250A29dE413d304Fc5": { + "tokens": { + "bean": "72915448", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "20943942", + "lp": "0", + "total": "20943942" + }, + "bdvAtRecapitalization": { + "bean": "72915448", + "lp": "0", + "total": "72915448" + } + }, + "0xf81AC7c4Ef437ea0A10f563CC0906B7849733465": { + "tokens": { + "bean": "478990864", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "137583420", + "lp": "0", + "total": "137583420" + }, + "bdvAtRecapitalization": { + "bean": "478990864", + "lp": "0", + "total": "478990864" + } + }, + "0xf972C7eDD78b945E9e089CA86Ca2f601bc061A53": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0xfC96372d3e1D9313504F7fe47b3F63Bd8aA0273D": { + "tokens": { + "bean": "25539211412", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "7335780929", + "lp": "0", + "total": "7335780929" + }, + "bdvAtRecapitalization": { + "bean": "25539211412", + "lp": "0", + "total": "25539211412" + } + }, + "0xFBa3CA5d207872eD1984eAe82e0D3c8074e971c1": { + "tokens": { + "bean": "3200000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "919155200", + "lp": "0", + "total": "919155200" + }, + "bdvAtRecapitalization": { + "bean": "3200000000", + "lp": "0", + "total": "3200000000" + } + }, + "0xF9be86FfF624AfeE87803fd9F871e53F50FF79a8": { + "tokens": { + "bean": "52113409", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "14968847", + "lp": "0", + "total": "14968847" + }, + "bdvAtRecapitalization": { + "bean": "52113409", + "lp": "0", + "total": "52113409" + } + }, + "0xfcf6a3d7eb8c62a5256a020e48f153c6D5Dd6909": { + "tokens": { + "bean": "96", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28", + "lp": "0", + "total": "28" + }, + "bdvAtRecapitalization": { + "bean": "96", + "lp": "0", + "total": "96" + } + }, + "0xFe84Ced1581a0943aBEa7d57ac47E2d01D132c98": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + }, + "0x237B45906A501102dFdd0cDccb1Fd3D7b869CF36": { + "tokens": { + "bean": "175978742", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "50547430", + "lp": "0", + "total": "50547430" + }, + "bdvAtRecapitalization": { + "bean": "175978742", + "lp": "0", + "total": "175978742" + } + }, + "0xffb100C7Ec7463191F5C29598C2259334Ea77C94": { + "tokens": { + "bean": "100000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "28723600", + "lp": "0", + "total": "28723600" + }, + "bdvAtRecapitalization": { + "bean": "100000000", + "lp": "0", + "total": "100000000" + } + }, + "0x33ee1FA9eD670001D1740419192142931e088e79": { + "tokens": { + "bean": "416969887", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "119768762", + "lp": "0", + "total": "119768762" + }, + "bdvAtRecapitalization": { + "bean": "416969887", + "lp": "0", + "total": "416969887" + } + }, + "0x2865De63D4aBBFdaf401eD0472a605e0a8C9Fa6D": { + "tokens": { + "bean": "87981590", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "25271480", + "lp": "0", + "total": "25271480" + }, + "bdvAtRecapitalization": { + "bean": "87981590", + "lp": "0", + "total": "87981590" + } + }, + "0x36CB18A75943396b526e20fde7F70B6367c70d7D": { + "tokens": { + "bean": "63876155", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "18347531", + "lp": "0", + "total": "18347531" + }, + "bdvAtRecapitalization": { + "bean": "63876155", + "lp": "0", + "total": "63876155" + } + }, + "0x037C8e92AE5EB2140157af396de2c1566bf658B1": { + "tokens": { + "bean": "227159532", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "65248395", + "lp": "0", + "total": "65248395" + }, + "bdvAtRecapitalization": { + "bean": "227159532", + "lp": "0", + "total": "227159532" + } + }, + "0x60F7a7802c9b7Dcc0b19eD670C2136041dfDc673": { + "tokens": { + "bean": "26789040", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "7694777", + "lp": "0", + "total": "7694777" + }, + "bdvAtRecapitalization": { + "bean": "26789040", + "lp": "0", + "total": "26789040" + } + }, + "0x29C6B4307d9E665d3243903E408e6007c4300c99": { + "tokens": { + "bean": "1000000000", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "287236000", + "lp": "0", + "total": "287236000" + }, + "bdvAtRecapitalization": { + "bean": "1000000000", + "lp": "0", + "total": "1000000000" + } + }, + "0x5D120E0929DBbf2315c97A4D93067E2dD9128cE4": { + "tokens": { + "bean": "1749941429", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "502646176", + "lp": "0", + "total": "502646176" + }, + "bdvAtRecapitalization": { + "bean": "1749941429", + "lp": "0", + "total": "1749941429" + } + }, + "0x5ae019F7eE28612b058381f4Fea213Cc90ee88A4": { + "tokens": { + "bean": "90412880", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "25969834", + "lp": "0", + "total": "25969834" + }, + "bdvAtRecapitalization": { + "bean": "90412880", + "lp": "0", + "total": "90412880" + } + }, + "0x6b11790463C99EE403FBDc8371F7c5bD633544f8": { + "tokens": { + "bean": "2532992418", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "727566610", + "lp": "0", + "total": "727566610" + }, + "bdvAtRecapitalization": { + "bean": "2532992418", + "lp": "0", + "total": "2532992418" + } + }, + "0x4d39c77881f254C6B56d9F4aD64914cf760C946a": { + "tokens": { + "bean": "2960156368", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "850263475", + "lp": "0", + "total": "850263475" + }, + "bdvAtRecapitalization": { + "bean": "2960156368", + "lp": "0", + "total": "2960156368" + } + }, + "0x74B654D9F99cC7cdB7861faD857A6c9b46CF868C": { + "tokens": { + "bean": "246992571", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "70945158", + "lp": "0", + "total": "70945158" + }, + "bdvAtRecapitalization": { + "bean": "246992571", + "lp": "0", + "total": "246992571" + } + }, + "0x8dB7147b554B739058E74C01042d2aEA44505E2F": { + "tokens": { + "bean": "1295985562", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "372253709", + "lp": "0", + "total": "372253709" + }, + "bdvAtRecapitalization": { + "bean": "1295985562", + "lp": "0", + "total": "1295985562" + } + }, + "0x7D1589685F02502e628E60394D21AAF835EE25EE": { + "tokens": { + "bean": "2071307675", + "lp": "3967370101" + }, + "bdvAtSnapshot": { + "bean": "594954131", + "lp": "1867770398", + "total": "2462724529" + }, + "bdvAtRecapitalization": { + "bean": "2071307675", + "lp": "7832636074", + "total": "9903943749" + } + }, + "0xFe202706E36F31aFBaf4b4543C2A8bBa4ddB2deE": { + "tokens": { + "bean": "4124494", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1184703", + "lp": "0", + "total": "1184703" + }, + "bdvAtRecapitalization": { + "bean": "4124494", + "lp": "0", + "total": "4124494" + } + }, + "0xA2d76c09b86Cf904f75672df51f859A876A88429": { + "tokens": { + "bean": "1589735194", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "456629178", + "lp": "0", + "total": "456629178" + }, + "bdvAtRecapitalization": { + "bean": "1589735194", + "lp": "0", + "total": "1589735194" + } + }, + "0xBD6B982b02E03594323D5D26259A6739c3dd35e1": { + "tokens": { + "bean": "68695749", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "19731892", + "lp": "0", + "total": "19731892" + }, + "bdvAtRecapitalization": { + "bean": "68695749", + "lp": "0", + "total": "68695749" + } + }, + "0xE37a010859a480f69C8aF3DC8dcf171DaEe80A01": { + "tokens": { + "bean": "705125145", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "202537326", + "lp": "0", + "total": "202537326" + }, + "bdvAtRecapitalization": { + "bean": "705125145", + "lp": "0", + "total": "705125145" + } + }, + "0xb66889B1257381Bcc9ee00461E29930BD53A08bF": { + "tokens": { + "bean": "1994289232", + "lp": "3650263547" + }, + "bdvAtSnapshot": { + "bean": "572831662", + "lp": "1718482023", + "total": "2291313685" + }, + "bdvAtRecapitalization": { + "bean": "1994289232", + "lp": "7206584012", + "total": "9200873244" + } + }, + "0xB3982fdc4bA9C5549F900f851D1564B80c054864": { + "tokens": { + "bean": "429920", + "lp": "159322541" + }, + "bdvAtSnapshot": { + "bean": "123489", + "lp": "75006344", + "total": "75129833" + }, + "bdvAtRecapitalization": { + "bean": "429920", + "lp": "314544761", + "total": "314974681" + } + }, + "0xC88FC1f1136c3aC5FAC38b90f64c11Fe8E704962": { + "tokens": { + "bean": "311489538", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "89471009", + "lp": "0", + "total": "89471009" + }, + "bdvAtRecapitalization": { + "bean": "311489538", + "lp": "0", + "total": "311489538" + } + }, + "0x6F98dA2D5098604239C07875C6B7Fd583BC520b9": { + "tokens": { + "bean": "0", + "lp": "41445929569" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "19512039060", + "total": "19512039060" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "81825207835", + "total": "81825207835" + } + }, + "0xb95A918186Fe3b016038f2Dd1d9Ce395710f30C0": { + "tokens": { + "bean": "36273652", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "10419099", + "lp": "0", + "total": "10419099" + }, + "bdvAtRecapitalization": { + "bean": "36273652", + "lp": "0", + "total": "36273652" + } + }, + "0xB27226CE5f123f91514ae3955e5cFEB7B9754981": { + "tokens": { + "bean": "849814657", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "244097363", + "lp": "0", + "total": "244097363" + }, + "bdvAtRecapitalization": { + "bean": "849814657", + "lp": "0", + "total": "849814657" + } + }, + "0x5B29fD05C664e2806a3bd4cdAde11A64bD9E2873": { + "tokens": { + "bean": "0", + "lp": "14559148" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "6854199", + "total": "6854199" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "28743602", + "total": "28743602" + } + }, + "0x5E4fa37a2308FE6152c0B0EbD29fb538A06332b8": { + "tokens": { + "bean": "0", + "lp": "154969051" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "72956795", + "total": "72956795" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "305949823", + "total": "305949823" + } + }, + "0xD717E96bC764E9644e2f09bed46C71E53240748E": { + "tokens": { + "bean": "0", + "lp": "305891353" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "144008449", + "total": "144008449" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "603910295", + "total": "603910295" + } + }, + "0xF6aF57C78B8635f7a3413fBB477DE47cAd01DcCf": { + "tokens": { + "bean": "0", + "lp": "1218327659" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "573567950", + "total": "573567950" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "2405300471", + "total": "2405300471" + } + }, + "0xf55F7118fa68ae5a52e0B2d519BfFcbDb7387AFA": { + "tokens": { + "bean": "0", + "lp": "1539014138" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "724541693", + "total": "724541693" + }, + "bdvAtRecapitalization": { + "bean": "0", + "lp": "3038420250", + "total": "3038420250" + } + } + }, + "arbContracts": { + "0xd39A31e5f23D90371D61A976cACb728842e04ca9": { + "tokens": { + "bean": "532690", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "153008", + "lp": "0", + "total": "153008" + }, + "bdvAtRecapitalization": { + "bean": "532690", + "lp": "0", + "total": "532690" + } + }, + "0x4df59c31a3008509B3C1FeE7A808C9a28F701719": { + "tokens": { + "bean": "1", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "0", + "lp": "0", + "total": "0" + }, + "bdvAtRecapitalization": { + "bean": "1", + "lp": "0", + "total": "1" + } + } + }, + "ethContracts": { + "0x0245934a930544c7046069968eb4339b03addfcf": { + "tokens": { + "bean": "3", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "3", + "lp": "0", + "total": "3" + } + }, + "0x153072c11d6dffc0f1e5489bc7c996c219668c67": { + "tokens": { + "bean": "1210864256332", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "347803805532", + "lp": "0", + "total": "347803805532" + }, + "bdvAtRecapitalization": { + "bean": "1210864256332", + "lp": "0", + "total": "1210864256332" + } + }, + "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95": { + "tokens": { + "bean": "4094479026", + "lp": "38246039304" + }, + "bdvAtSnapshot": { + "bean": "1176081778", + "lp": "18005585122", + "total": "19181666900" + }, + "bdvAtRecapitalization": { + "bean": "4094479026", + "lp": "75507779593", + "total": "79602258619" + } + }, + "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706": { + "tokens": { + "bean": "2", + "lp": "971990195788" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "457596460344", + "total": "457596460345" + }, + "bdvAtRecapitalization": { + "bean": "2", + "lp": "1918965278637", + "total": "1918965278639" + } + }, + "0x3f9208f556735504e985ff1a369af2e8ff6240a3": { + "tokens": { + "bean": "1129291156", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "324373074", + "lp": "0", + "total": "324373074" + }, + "bdvAtRecapitalization": { + "bean": "1129291156", + "lp": "0", + "total": "1129291156" + } + }, + "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e": { + "tokens": { + "bean": "62672894779", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "18001911605", + "lp": "0", + "total": "18001911605" + }, + "bdvAtRecapitalization": { + "bean": "62672894779", + "lp": "0", + "total": "62672894779" + } + }, + "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e": { + "tokens": { + "bean": "5", + "lp": "116528145662" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "54859469999", + "total": "54859470000" + }, + "bdvAtRecapitalization": { + "bean": "5", + "lp": "230057326173", + "total": "230057326178" + } + }, + "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11": { + "tokens": { + "bean": "22023088833", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "6325823944", + "lp": "0", + "total": "6325823944" + }, + "bdvAtRecapitalization": { + "bean": "22023088833", + "lp": "2", + "total": "22023088835" + } + }, + "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d": { + "tokens": { + "bean": "2852385621954", + "lp": "1" + }, + "bdvAtSnapshot": { + "bean": "819307836508", + "lp": "0", + "total": "819307836508" + }, + "bdvAtRecapitalization": { + "bean": "2852385621954", + "lp": "2", + "total": "2852385621956" + } + }, + "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997": { + "tokens": { + "bean": "4", + "lp": "0" + }, + "bdvAtSnapshot": { + "bean": "1", + "lp": "0", + "total": "1" + }, + "bdvAtRecapitalization": { + "bean": "4", + "lp": "0", + "total": "4" + } + }, + "0xf33332d233de8b6b1340039c9d5f3b2a04823d93": { + "tokens": { + "bean": "381866055", + "lp": "11942733951" + }, + "bdvAtSnapshot": { + "bean": "109685678", + "lp": "5622436118", + "total": "5732121796" + }, + "bdvAtRecapitalization": { + "bean": "381866055", + "lp": "23578110030", + "total": "23959976085" + } + }, + "0xea3154098a58eebfa89d705f563e6c5ac924959e": { + "tokens": { + "bean": "20008000002", + "lp": "22010227813" + }, + "bdvAtSnapshot": { + "bean": "5747017889", + "lp": "10362041080", + "total": "16109058969" + }, + "bdvAtRecapitalization": { + "bean": "20008000002", + "lp": "43454001009", + "total": "63462001011" + } + }, + "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95": { + "tokens": { + "bean": "08568", + "lp": "00" + }, + "bdvAtSnapshot": { + "bean": "2461", + "lp": "0", + "total": "2461" + }, + "bdvAtRecapitalization": { + "bean": "8568", + "lp": "0", + "total": "8568" + } + }, + "0x83A758a6a24FE27312C1f8BDa7F3277993b64783": { + "tokens": { + "bean": "099437500", + "lp": "00" + }, + "bdvAtSnapshot": { + "bean": "28562030", + "lp": "0", + "total": "28562030" + }, + "bdvAtRecapitalization": { + "bean": "99437500", + "lp": "0", + "total": "99437500" + } + }, + "0x9008D19f58AAbD9eD0D60971565AA8510560ab41": { + "tokens": { + "bean": "0291524996", + "lp": "00" + }, + "bdvAtSnapshot": { + "bean": "83736474", + "lp": "0", + "total": "83736474" + }, + "bdvAtRecapitalization": { + "bean": "291524996", + "lp": "0", + "total": "291524996" + } + }, + "0xAA420e97534aB55637957e868b658193b112A551": { + "tokens": { + "bean": "020754000000", + "lp": "00" + }, + "bdvAtSnapshot": { + "bean": "5961295944", + "lp": "0", + "total": "5961295944" + }, + "bdvAtRecapitalization": { + "bean": "20754000000", + "lp": "0", + "total": "20754000000" + } + }, + "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27": { + "tokens": { + "bean": "0116127823", + "lp": "00" + }, + "bdvAtSnapshot": { + "bean": "33356091", + "lp": "0", + "total": "33356091" + }, + "bdvAtRecapitalization": { + "bean": "116127823", + "lp": "0", + "total": "116127823" + } + }, + "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0": { + "tokens": { + "bean": "01893551014", + "lp": "00" + }, + "bdvAtSnapshot": { + "bean": "543896019", + "lp": "0", + "total": "543896019" + }, + "bdvAtRecapitalization": { + "bean": "1893551014", + "lp": "0", + "total": "1893551014" + } + } + } +} \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json index 883e9707..4b6f4c1d 100644 --- a/scripts/beanstalkShipments/data/unripeBdvTokens.json +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -1,12 +1,9802 @@ [ - ["0xC6cb0b2Fd08501EB152b92570CE6879a22504c17", "1000000"], - ["0x4f0B6E0Ff3b66DaCa79B1fAE6BD825CB13c0bAc0", "5000000"], - ["0xCa270E2E623862135Fe72303501aa97d6aDB6e69", "10000000"], - ["0x68Fc559217994B987Dd8bb134518C5073576f350", "2500000"], - ["0xf7C6F8EcDa6E928058A3ecf92aA629ff1Fce6d26", "7500000"], - ["0xB41F8bcFC2368A42fDa38E6954ad0387224173B9", "15000000"], - ["0x2efc4931f2e64B38d6aE3d714466840Fbc951F56", "3000000"], - ["0x17D328709DB4c5F2Cab78bff48de5fA7D949bea2", "12000000"], - ["0x45b2F5603691240CB43b14CE6d27Fa2006692416", "6000000"], - ["0xbf6DAEeC7b815B16075D179172331A48d935Ed28", "20000000"] -] + [ + "0x000000000000084e91743124a982076C59f10084", + "1" + ], + [ + "0x0000000000003f5e74C1ba8A66b48E6f3d71aE82", + "1" + ], + [ + "0x0000000000007F150Bd6f54c40A34d7C3d5e9f56", + "1" + ], + [ + "0x000000000035B5e5ad9019092C665357240f594e", + "87" + ], + [ + "0x00000000003b3cc22aF3aE1EAc0440BcEe416B40", + "4397" + ], + [ + "0x00000000003E04625c9001717346dD811AE5Eba2", + "59368526" + ], + [ + "0x000000001ada84C06b7d1075f17228C34b307cFA", + "1100048912" + ], + [ + "0x00000000500e2fece27a7600435d0C48d64E0C00", + "35019" + ], + [ + "0x000000005736775Feb0C8568e7DEe77222a26880", + "27" + ], + [ + "0x000000009D3a9E5C7c620514e1f36905c4eb91E6", + "245012495" + ], + [ + "0x00000000a1F2d3063Ed639d19a6A56be87E25B1a", + "5" + ], + [ + "0x001AC61da3301BeFE1F94abc095Bb9732b69F362", + "183711553" + ], + [ + "0x001f43cd9E84d90E1ee9DB192724ceF073D3FB2e", + "525968" + ], + [ + "0x002505eefcBd852a148f03cA3451811032A72f96", + "2501156158" + ], + [ + "0x00427C81629Cd592Aa068B0290425261cbB8Eba2", + "146208339311" + ], + [ + "0x0063886D458CC0790a170dEBA645A0bcCC7f44D9", + "23558875953" + ], + [ + "0x006b4b47C7F404335c87E85355e217305F97E789", + "21103061520" + ], + [ + "0x0081aFa76cDf86b4Dd3D1196db559471b229ED16", + "100000000" + ], + [ + "0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97", + "4055519229" + ], + [ + "0x008829aCd7Ec452Fc50989aA9BFa5d196Baae20a", + "23702662574" + ], + [ + "0x008D63fab8179Ee0aE2082Bb57C72ED0c61f990f", + "111436794423" + ], + [ + "0x00975ae9c986df066c7bbDA496103B4cC44B26c3", + "29501642882" + ], + [ + "0x00aaEa7B4dC89E4a4fACDa32da496ba5D8E1216d", + "117304634154" + ], + [ + "0x00C459905bC314E03Af933020dea4644BE06aaD9", + "5989121521" + ], + [ + "0x0127F5b0e559D1C8C054d83f8F187CDFDc80B608", + "1803369235" + ], + [ + "0x01914D6E47657d6A7893F84Fc84660dc5aec08b6", + "140140961" + ], + [ + "0x01C7145c01d06a026D3dDA4700b727fE62677628", + "1940963603" + ], + [ + "0x01e82e6c90fa599067E1F59323064055F5007A26", + "1262131520" + ], + [ + "0x01FF6318440f7D5553a82294D78262D5f5084EFF", + "1" + ], + [ + "0x02009370Ff755704E9acbD96042C1ab832D6067e", + "2" + ], + [ + "0x0245934a930544c7046069968eb4339b03addfcf", + "3" + ], + [ + "0x0255b20571acc2e1708ADE387b692360537F9e89", + "22606818271" + ], + [ + "0x0259D65954DfbD0735E094C9CdACC256e5A29dD4", + "2258456160" + ], + [ + "0x028afa72DADB6311107c382cF87504F37F11D482", + "1378926563653" + ], + [ + "0x029D058CFdBE37eb93949e4143c516557B89EB3c", + "4570437464" + ], + [ + "0x02A527084F5E73AF7781846762c8753aCD096461", + "6292120010" + ], + [ + "0x02bfbb25bf8396910378bF3b3ce82C0CE6d5E61d", + "32050185141" + ], + [ + "0x02df7e960FFda6Db4030003D1784A7639947d200", + "2392" + ], + [ + "0x02FE27e7000C7B31E25E08dC3cDFdE5F39d659c5", + "12641981" + ], + [ + "0x0301871FeDc523AB336535Ed14B939A956c4c39F", + "179127657" + ], + [ + "0x031B8ece36b2C1f14C870421A1989AEbe3d7bcFa", + "17005371158" + ], + [ + "0x034E617D90Eba96b47a555D1d9B1BedbFF196044", + "7170741" + ], + [ + "0x035bb6b7D76562320dFFb5ec23128ED1541823cf", + "159840729" + ], + [ + "0x03768446C681761669Ab6DC721762Aa065c81f26", + "17394722176" + ], + [ + "0x037C8e92AE5EB2140157af396de2c1566bf658B1", + "227159532" + ], + [ + "0x0399ecFbb2a9D0D520738b3179FA685cD5c6D692", + "1882059162" + ], + [ + "0x03F52a039d9665C19a771204493B53B81C9405aF", + "241156859" + ], + [ + "0x0440bDd684444f1433f3d1E0208656abF9993C52", + "48387871308" + ], + [ + "0x044c53d8576d4D700E6327c954f88388EE03b8dB", + "9655048867" + ], + [ + "0x04776ef6C70C281E13deDaf50AA8bbA75fbecA31", + "202866345024" + ], + [ + "0x04Dc1bDcb450Ea6734F5001B9CeCb0Cd09690f4f", + "84666648086" + ], + [ + "0x04F095a8B608527B336DcfE5cC8A5Ac253007Dec", + "1156086095" + ], + [ + "0x0519064e3216cf6d6643Cc65dB1C39C20ABE50e0", + "875658037" + ], + [ + "0x051f77131b0ea6d149608021E06c7206317782CC", + "585933144" + ], + [ + "0x052E8fABDCE1dB054590664944B16e1df4B57898", + "3440515" + ], + [ + "0x0536f43136d5479310C01f82De2C04C0115217A6", + "6000000000" + ], + [ + "0x055C419F4841f6A3153E64a4E174a242A4fFA6f0", + "467506679" + ], + [ + "0x0562695929503E930DE265F944B899dEBF93Df7c", + "210002523177" + ], + [ + "0x056590F16D5b314a132BbCFb1283fEc5D5C6E670", + "300481309734" + ], + [ + "0x057a8F9253949d2e6752161b0aD6ba6d28f37044", + "226471578" + ], + [ + "0x05cD14412ccd74F05379199181aA1847ed4802fd", + "2931172830" + ], + [ + "0x05Dc8E95a479dDA8C8Fc5a27Eb825f5042048937", + "1137065380" + ], + [ + "0x0625fAaD99bCD3d22C91aB317079F6616e81e3c0", + "86364341458" + ], + [ + "0x06319B2e91A7C559105eE81fF599FaFFEDbAd000", + "2183173042" + ], + [ + "0x066E9372fF4D618ba8f9b1E366463A18DD711e5E", + "2546570131" + ], + [ + "0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8", + "58626150796" + ], + [ + "0x0686002661e6a2A1E86b8Cb897C2eC226060481b", + "5876780890" + ], + [ + "0x0692Ee6b5c88870DA8105aFEAA834A20091a29Ff", + "105509727" + ], + [ + "0x0694356524F17a18A0Ac3e1d8e767eeEBd8A4ad9", + "26850200074" + ], + [ + "0x069e85D4F1010DD961897dC8C095FBB5FF297434", + "45064782410" + ], + [ + "0x07197a25bF7297C2c41dd09a79160D05b6232BcF", + "1" + ], + [ + "0x072Fa8a20fA621665B94745A8075073ceAdFE1DC", + "3193805381" + ], + [ + "0x07432d559Fa617b6e23a516f9A6187440FbFB086", + "1" + ], + [ + "0x077165031d8d46B52368A8C92E8333437fb60EF8", + "941207174" + ], + [ + "0x07806c232D6F669Eb9cD33FD2834869aa14EE4F4", + "2668103539" + ], + [ + "0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122", + "1290863" + ], + [ + "0x07A75Ba044cDAaa624aAbAD27CB95C42510AF4B5", + "11739905179" + ], + [ + "0x07c2af75788814BA7e5225b2F5c951eD161cB589", + "3950790964" + ], + [ + "0x083aA7FF9AE00099471902178bf2fda4e6aC14Bf", + "332952261851" + ], + [ + "0x084D73726d2824478dF09bE72EcAB4177F7F1bd7", + "11033122" + ], + [ + "0x0872FcfE9C10993c0e55bb0d0c61c327933D6549", + "827900416039" + ], + [ + "0x0898512055826732026aC02242E7D7B66fccC2B0", + "37858077399" + ], + [ + "0x08fD119453cD459F7E9e4232AD9816266863BFb1", + "4085188848" + ], + [ + "0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b", + "32575505572" + ], + [ + "0x0933F554312C7bcB86dF896c46A44AC2381383D1", + "2" + ], + [ + "0x0959BE05E1C3aDC6Ee20D6fA1252Bb0906A94743", + "717991772748" + ], + [ + "0x095B9C41921415636F91F9B5754786Ed6CA6f1d4", + "17336305185" + ], + [ + "0x0968d6491823b97446220081C511328d8d9Fb61D", + "2098746562" + ], + [ + "0x0988D84619708DCe4a9298939e5449d528Dc800B", + "6748804" + ], + [ + "0x09Ad186D43615aa3131c6064538aF6E0A643Ce12", + "29439729347" + ], + [ + "0x09Bc3c127ED4c491880c2A250d6d034696cb5fC1", + "368332857" + ], + [ + "0x0ab72D3f6eddF0e382f5CF4098fFAb85EA961077", + "108001707315" + ], + [ + "0x0b248c6A152F35A4678dF45Baf5958Ce8A8CaCCc", + "432299572" + ], + [ + "0x0b3b1DD110bB02f40A5161478149d09c5ef46F7e", + "5696" + ], + [ + "0x0B54B916E90b8f28ad21dA40638E0724132C9c93", + "56465631" + ], + [ + "0x0b8e605A7446801ae645e57de5AAbbc251cD1e3c", + "848744412943" + ], + [ + "0x0b8fc89A38698B9BB52C544a1dBCc85ADfcA4153", + "350" + ], + [ + "0x0Ba9e984768B8A4fe28c657Bf858f128429850b5", + "200745286" + ], + [ + "0x0baBD9Eba4c7C739Edd2dBCd6de0b7C483068948", + "2463693677" + ], + [ + "0x0Bb53dE33DF0F8BA40E0E06Be85998f506c4C7bc", + "5898539355" + ], + [ + "0x0Bbe643D5d9DD0498d0C9546F728504A4aAb78f4", + "1" + ], + [ + "0x0Bc7F48e752407108C0A164928DF7c65Aa4de31f", + "2156212853" + ], + [ + "0x0BE0f09aDc19334286027Ed281B612A49893Cd9A", + "5" + ], + [ + "0x0be9A9100A95075270e47De519D53c5fc8F7C936", + "97069318474" + ], + [ + "0x0bFD9FC73C82bE0558f3A651F10a8BD8c784F45E", + "29488637503" + ], + [ + "0x0C040E41b5b17374b060872295cBE10Ec8954550", + "1" + ], + [ + "0x0c565f3A167Df783cF6Bb9fcF174E6C7D0d3892B", + "3" + ], + [ + "0x0c722F3dCf2beBb50fCca45Cd6715EE31A2ad793", + "10000000007" + ], + [ + "0x0cb556AebE39b3c9EF5CBe8b668E925DB10a2D7D", + "23233349347" + ], + [ + "0x0ccBCaA60D8b59bDf751B70Ee623d58c609170ac", + "961507426" + ], + [ + "0x0cE80210EAfd8b7d5E55F611150509998c3bd9B3", + "5474197" + ], + [ + "0x0d07708d0E155865D9baEe9963E16ddd46F5dECF", + "23389023457" + ], + [ + "0x0d0ac94a91badd82264ABaeB355504AE9587Aa82", + "400000000" + ], + [ + "0x0d0bD6469BE80d57893cf1B21434936dfAA35319", + "10367563299" + ], + [ + "0x0d3fc68CA620bCFac48F18d75C6B6a8b0ffb8Fbb", + "446203378" + ], + [ + "0x0d5d11732391E14E2084596F0F521d4d363164B6", + "5151567497" + ], + [ + "0x0d7E219D07ddE19fc3dfA9Ede55528b725231Ee5", + "1260014" + ], + [ + "0x0D9326f283D8Ca7EEEA4d323d07a0C9c0ab1A192", + "1" + ], + [ + "0x0D935eaA0EaFcFe11f111638FEe358651456D29C", + "2133872160" + ], + [ + "0x0d94B6e4c2Aa9383964986020B3534D34885f700", + "10417447387" + ], + [ + "0x0DBFe040866BBF36f0231b589d26020bBAb923D2", + "17923071182" + ], + [ + "0x0DE299534957329688a735d03961dBd848A5f87f", + "22297448578" + ], + [ + "0x0df3e4945E0Fa652D0FFEBc1bce58D1a14d9f9e0", + "371807178" + ], + [ + "0x0e109847630A42fc85E1D47040ACAd1803078DCc", + "2121566403" + ], + [ + "0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781", + "19383034959" + ], + [ + "0x0e40Cf5c020ADa54351699a004fAEbE5e709a3A2", + "1145830923969" + ], + [ + "0x0E488e4a23cD8C67362AA716b5A2D45a9Cf65815", + "764948647" + ], + [ + "0x0e72774AE3ceE5a127Df723b1DE4F5C49cA17917", + "72970527" + ], + [ + "0x0E9a7280741E9B018beb5Fe409e6e21689F3B8EF", + "424625381" + ], + [ + "0x0eF8249cDF160C30d9ad1C46aa845Fd097EF498c", + "192454102662" + ], + [ + "0x0F101CcDd4673316933339C8fba5Fc3b262cf4Cb", + "1" + ], + [ + "0x0F1d41cc51e97DC9d0CAd80DC681777EED3675E3", + "428279265" + ], + [ + "0x0f26F792fB89daF87A10a40f57eD1a0093b74Ad7", + "56945833" + ], + [ + "0x0f35218B2005F24a617996B691E71BCB433a329D", + "234870549" + ], + [ + "0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59", + "1289261038365" + ], + [ + "0x0f5F4b5b7ca352cf4F5f2fc1Ac8A9889DECc4fCB", + "42324561899" + ], + [ + "0x0f76727c4BBe50179AFc3b0cd7Db3aed761AD0bd", + "371015824" + ], + [ + "0x0F7aFAa9DAC8F9ada59a25fa02AA6Ab32E56b145", + "733555967" + ], + [ + "0x0F7Ce9bd352145D50Dd197A43471752c7EcA6aF3", + "192614076" + ], + [ + "0x0f951699Eb95204107a105890Ac9Af6C587C260D", + "37044931" + ], + [ + "0x0FBF5E9C8D7cB0AeDd6F02Df0018178099c7d76A", + "4163106025" + ], + [ + "0x0fC213B53e1182796603F7dEc12A5A01bd09ff35", + "1098506778" + ], + [ + "0x0FF2FAa2294434919501475CF58117ee89e2729c", + "387003" + ], + [ + "0x10527A1232287Ad8c408848A56b7D0471BB23daB", + "23350975381" + ], + [ + "0x1083D7254E01beCd64C3230612BF20E14010d646", + "132299776181" + ], + [ + "0x1085057e6d9AD66e73D3cC788079155660264152", + "401188947907" + ], + [ + "0x10bf1Dcb5ab7860baB1C3320163C6dddf8DCC0e4", + "6261735328323" + ], + [ + "0x10e03eB5950bEA08bb882e3FF01286665f209F97", + "160343221044" + ], + [ + "0x10E1439455BD2624878b243819E31CfEE9eb721C", + "20000000" + ], + [ + "0x10Ec8540E82f4e0bEE54d8c8B72e00609b6CaB38", + "2518567350" + ], + [ + "0x1164fe7a76D22EAA66f6A0aDcE3E3a30d9957A5f", + "266872905" + ], + [ + "0x116E7Dbd690D6624FEeF080b9e8EbD6f967Fe315", + "26122289554" + ], + [ + "0x11788dc374A39896CA7Ec0961110f997bd1BE201", + "261998826" + ], + [ + "0x1193C9F3E10DEFBd5cF956575aAF5aBEAcC1b068", + "656616649" + ], + [ + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", + "2" + ], + [ + "0x11d67Fa925877813B744aBC0917900c2b1D6Eb81", + "1060254914337" + ], + [ + "0x11D86e9F9C2a1cF597b974E50C660316c92215AA", + "2898998825" + ], + [ + "0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333", + "14737485511" + ], + [ + "0x11eDedebF63bef0ea2d2D071bdF88F71543ec6fB", + "164459514" + ], + [ + "0x1202fBA35cc425c07202BAA4b17fA9a37D2dBeBb", + "117603362911" + ], + [ + "0x1223fB83511D643CD2f1e6257f8B77Fe282e8699", + "23287185" + ], + [ + "0x12263becBe8E1b30B5538b7E2626e47bDbB2585e", + "422820831" + ], + [ + "0x1233B9569C0edf209826Bee9aa7B5d5DD202b36f", + "10175152053" + ], + [ + "0x12481a91479a750dE5Fd6Ded5741Fc87671E30Af", + "9204647620" + ], + [ + "0x12627902E45c6424d51C770f41e1900563528B44", + "13900884232" + ], + [ + "0x127c224bF830b74B823dc3e360A9aFf22A517E00", + "11604009146" + ], + [ + "0x12985a83081288BecABf59F76e5549dBE39Af4d6", + "90535742" + ], + [ + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", + "18" + ], + [ + "0x12b9eeBf7960fB75B4e3A77af97C8A4f5f6cce34", + "334960002" + ], + [ + "0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186", + "525108603" + ], + [ + "0x12e8123822485229EfaA08Cd244e27E533eb1F4B", + "3995207500" + ], + [ + "0x12Ed7C9007Cf0CB79b37E33D0244aD90c2a65C0B", + "48645500037" + ], + [ + "0x12f1412fECBf2767D10031f01D772d618594Ea28", + "2413700405" + ], + [ + "0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5", + "8205939" + ], + [ + "0x132b0065386A4B750160573f618F3F657A8a370f", + "1936" + ], + [ + "0x1384b4515544e520956e4FA7F5A10C7fb0AC3729", + "106319286715" + ], + [ + "0x1397c24478cBe0a54572ADec2A333f87Ad75Ac02", + "672368159" + ], + [ + "0x13b07BE0C25E54309412870456db923e8970b724", + "1203287202630" + ], + [ + "0x13b1ddb38c80327257Bdcb0e321c834401399967", + "565578811" + ], + [ + "0x13b841dBF99456fB55Ac0A7269D9cfBC0ceD7b42", + "22015639394" + ], + [ + "0x13e551F9B35332e07EEC5F112C5D89d348be37A9", + "1107067756" + ], + [ + "0x14019DBae34219EFC2305b0C1dB260Fce8520DbF", + "144228670383" + ], + [ + "0x1406899696aDb2fA7a95eA68E80D4f9C82FCDeDd", + "42069000" + ], + [ + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", + "25208741316" + ], + [ + "0x141B5A59B40EFCFE77D411cAd4812813F44A7254", + "127477596807" + ], + [ + "0x142Ae08b246845cec2386b5eACb2D3e98a1E04E3", + "2268151086" + ], + [ + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", + "5048901702" + ], + [ + "0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b", + "8272563136" + ], + [ + "0x149FfF31BA5992F473DF72404D6fA60F782C3d2C", + "5732253227" + ], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + "407369082122" + ], + [ + "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248", + "541659832" + ], + [ + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", + "152128838" + ], + [ + "0x152d08D7e74106A5681C8963E253d039c3e76859", + "194246881" + ], + [ + "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "1210864256332" + ], + [ + "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", + "3119075316" + ], + [ + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", + "6502420530607" + ], + [ + "0x1544E8C4736b47722E0AF9d44A099f14A96aAC84", + "2955053740" + ], + [ + "0x1584B668643617D18321a0BEc6EF3786F4b8Eb7B", + "3" + ], + [ + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", + "1446" + ], + [ + "0x15AD9ef623b0D635F2eEBf20e0548121CBaFc719", + "37069269128" + ], + [ + "0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF", + "12600199516" + ], + [ + "0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21", + "37064624112" + ], + [ + "0x15e6e23b97D513ac117807bb88366f00fE6d6e17", + "85567494596" + ], + [ + "0x15e83602FDE900DdDdafC07bB67E18F64437b21e", + "22090125753" + ], + [ + "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", + "4092553218144" + ], + [ + "0x162852F5D4007B76D3CDc432945516b9bBf1A01f", + "1" + ], + [ + "0x164d71EE20a76d5ED08A072E3d368346F72640a9", + "541764530" + ], + [ + "0x165b3C18eAb1D24F8bA1E25027698932482B67Ee", + "27079127526" + ], + [ + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", + "10405874197" + ], + [ + "0x16785ca8422Cb4008CB9792fcD756ADbEe42878E", + "2974386901" + ], + [ + "0x168c6aC0268a29c3C0645917a4510ccd73F4D923", + "8328169103" + ], + [ + "0x168cBd46d6D12da3C3FF2FAB191De5be4675bBB1", + "23770102" + ], + [ + "0x16942d62E8ad78A9026E41Fab484C265FC90b228", + "353536953" + ], + [ + "0x169E35b1c6784E7e846bcE0b6D018514f934B87D", + "791009937" + ], + [ + "0x16af50FC999032b3Bc32B6bC1abe138B924b1B0C", + "751226948" + ], + [ + "0x16cfA7ca52268cFC6D701b0d47F86bFC152694F3", + "2654304111" + ], + [ + "0x17643ca0570f8f7a04FFf22CEa6a433531e465aE", + "19337597662" + ], + [ + "0x17757B0252c84341E243Ff49EEf8729eFa32f5De", + "2843" + ], + [ + "0x177f44eCDEa293f7124C3071D9C54E59fcfD16f9", + "35070180" + ], + [ + "0x17FEE60B80356EAE404bC0d8DaA3debeE217741c", + "2475221599" + ], + [ + "0x182D4B08462CD5B79080d77C2B149F04d330D24b", + "31644599777" + ], + [ + "0x183be3011809A2D41198e528d2b20Cc91b4C9665", + "86263567315" + ], + [ + "0x184CbD89E91039E6B1EF94753B3fD41c55e40888", + "23842551002" + ], + [ + "0x1860a5C708c1e982E293aA4338bdbCafB7Cb90aC", + "4269000000" + ], + [ + "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", + "359034500" + ], + [ + "0x1867608e55A862e96e468B51dc6983BCA8688f3D", + "29090272156" + ], + [ + "0x1897EcfC9Df8Ca7F360D271c84E3d8567460202d", + "1" + ], + [ + "0x18AE0d58f978054E55181be633d4a6e1239aA456", + "4288707414" + ], + [ + "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", + "18684900" + ], + [ + "0x18E03c62D0B46d50da7C5EC819Da57c0106Dc8DF", + "6089012964" + ], + [ + "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD", + "56278947771" + ], + [ + "0x1907e1ab7791bB0c7A2b201b38e33da99d15285e", + "19440480924" + ], + [ + "0x191C3a109770100b439124c35990103584a62f1d", + "5830705529" + ], + [ + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", + "5" + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + "2891344976" + ], + [ + "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", + "4" + ], + [ + "0x19Dde5f247155293FB8c905d4A400021C12fb6F0", + "170175680" + ], + [ + "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", + "81601559770" + ], + [ + "0x1a368885B299D51E477c2737E0330aB35529154a", + "17677761029" + ], + [ + "0x1A81dB156AFd3Cd93545b823fD2Ac6DCDf3B0725", + "90522857156" + ], + [ + "0x1a8A0255e8B0ED7C596D236bf28D57Ff3978899b", + "233369276291" + ], + [ + "0x1A96Db12AD7f0c9f91C538d16c39C360b5E8Fb21", + "290640278" + ], + [ + "0x1aa7101F755Bd1c76B4e648a835054A7f652Dfd2", + "2" + ], + [ + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", + "5037171682" + ], + [ + "0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b", + "3525760510" + ], + [ + "0x1aD66517368179738f521AF62E1acFe8816c22a4", + "10430143206" + ], + [ + "0x1aE02022a49b122a21bEBE24A1B1845113C37931", + "15870982797" + ], + [ + "0x1AFB54B63626E9e78A3D11Bb0Eb3f5660982b0b0", + "1" + ], + [ + "0x1b11CbCb7AB40A6ffeaA80aEeD13b6A99e2c2254", + "16948768258" + ], + [ + "0x1B15ED3612CD3077ba4437a1e2B924C33d4de0F9", + "4" + ], + [ + "0x1b17E6045234237f86c9acDeA0b637a561DeFf2E", + "8760268018" + ], + [ + "0x1b32F18DF6539E64EC419BbE5E388E951E27feb3", + "3023699808" + ], + [ + "0x1b35fcb58F5E1e2a42fF8E66ddf5646966aBf08C", + "4498918" + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + "78133774725" + ], + [ + "0x1ba5C10C52c3Ab0A4a33c4D8D2a5AFD9f93147Ed", + "544888535" + ], + [ + "0x1bb9b8dB251BAbF5e6bB7AA7795E4814C0b72471", + "6649898740" + ], + [ + "0x1c10eD2ffe6b4228005EbAe5Aa1a9c790D275A52", + "1213939626" + ], + [ + "0x1c4203Db716a122AFF5120203268113E8B471F0E", + "1149721120" + ], + [ + "0x1C4E440e9f9069427d11bB1bD73e57458eeA9577", + "1" + ], + [ + "0x1c6eDd90CAC0De22D8819c03Ae953D8B57f18Fd8", + "9931831259" + ], + [ + "0x1cac725Ed2e08F09F77c601D5D92d12d906C4003", + "1996636405" + ], + [ + "0x1D0a4fee04892d90E2b8a4C1836598b081bB949f", + "276154236" + ], + [ + "0x1d264de8264a506Ed0E88E5E092131915913Ed17", + "409008469" + ], + [ + "0x1D2667798581D8D3F93153DA8BA5E2E0330841f7", + "6665882018" + ], + [ + "0x1D4D853870734161BCb46dAb0012739C21693d98", + "2" + ], + [ + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", + "1394187" + ], + [ + "0x1D634ce4e77863113734158C5aF8244567355452", + "291413206" + ], + [ + "0x1d6E8BAC6EA3730825bde4B005ed7B2B39A2932d", + "1" + ], + [ + "0x1D7603B4173D52188b37f493107870bC9b4Ce746", + "5" + ], + [ + "0x1Dc2Dc7110F8ee61650864ad6680fE8144b7d6F9", + "807" + ], + [ + "0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd", + "5" + ], + [ + "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714", + "838936442" + ], + [ + "0x1E544b6d506Bb1843877aD6a9c95C2Bbc964d962", + "770520654" + ], + [ + "0x1e8eBAA6D9BF90ca2800F97C95aFEDd6A64C91e2", + "23511554193" + ], + [ + "0x1eB2Cc7208a2077DdF91beE9C944919bacCfccF9", + "2508136679" + ], + [ + "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974", + "1338256464" + ], + [ + "0x1Eff71EE5463F7DD88a36A5674021f1E94F5166c", + "88152732478" + ], + [ + "0x1f3236F64Cb6878F164e3A281c2a9393e19A6D00", + "26486588160" + ], + [ + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", + "2280746245" + ], + [ + "0x1F906aB7Bd49059d29cac759Bc84f9008dBF4112", + "16660261" + ], + [ + "0x1Fa208031725Cc75Fe0C92D28ce3072a86e3cEFd", + "601510683" + ], + [ + "0x1faD27B543326E66185b7D1519C4E3d234D54A9C", + "7434230000" + ], + [ + "0x1Fc68EfbC126034D135c6a53cB991ff7e122B3D9", + "19764441161" + ], + [ + "0x1fC84Da8c1DFD00a7F6D0970ed779cEc0BBf9CA4", + "6" + ], + [ + "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb", + "894631876" + ], + [ + "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e", + "128071282948" + ], + [ + "0x2032d6Fa962f05b05a648d0492936DCf879b0646", + "7133728721" + ], + [ + "0x20798Fd64a342d1EE640348E42C14181fDC842d8", + "6475" + ], + [ + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", + "6368195715" + ], + [ + "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", + "79602258619" + ], + [ + "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95", + "8568" + ], + [ + "0x21145738198e34A7aF32866913855ce1968006Ef", + "136966119136" + ], + [ + "0x21194d506Ab47C531a7874B563dFA3787b3938a5", + "318631452" + ], + [ + "0x214c5645d54A27c66A46734515A8F32C57268Cd9", + "31551" + ], + [ + "0x21501408B9E1359C1664b0A2e9F78492512ff605", + "8052173248" + ], + [ + "0x21503C7F8D1C9407cB0D27de13CC95A05F13373A", + "17787254816" + ], + [ + "0x215B5b41E224fc24170dE2b20A3e0F619af96A71", + "298858" + ], + [ + "0x21710d040ba8fcd9F34Fbd74461e746824B8BA1C", + "2" + ], + [ + "0x218d75b17f491793a96ab4326c7875950359a80C", + "96" + ], + [ + "0x21Ad548e5dE92C656af636810110dd44CC617184", + "1087624059" + ], + [ + "0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa", + "1076120318" + ], + [ + "0x21d50a8ec564E5EB96CC979b33bC5638D91e6F0D", + "74710897502" + ], + [ + "0x21DC07AFeeCF13394067E31eE32059a026449C41", + "18731754124" + ], + [ + "0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A", + "1349135570" + ], + [ + "0x21eD24C01edb72fb67f717378D1BCC72A5326E87", + "346209523" + ], + [ + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", + "7775205755" + ], + [ + "0x223D168d318E0598d365aA1aAc78Dfa2eCA16dcf", + "1815972498505" + ], + [ + "0x2251A7db3B3159422cED07e3bA65494D78A66A22", + "16792516545" + ], + [ + "0x225C3D9CDC1F3c9EC7902216D3d315c9428AE025", + "33573997826" + ], + [ + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", + "29548344946" + ], + [ + "0x226cb5b4F8Aae44Fbc4374a2be35B3070403e9da", + "2079878" + ], + [ + "0x2299BAFf6CCAA8b172e324Bcd5CDb756e7065C59", + "4346218627" + ], + [ + "0x22aA1F4173b826451763EbfCE22cf54A0603163c", + "627861" + ], + [ + "0x22B725c15c35A299b6e9Aa3b2060416EA2b2030c", + "5306903881" + ], + [ + "0x22Ba9F0902fE08bd3b6d0c1e32991B4f1387b6D9", + "5892420582" + ], + [ + "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", + "13768883044" + ], + [ + "0x22F92B5Cb630524aF4E6C5031249931a77c43845", + "1" + ], + [ + "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", + "29333388351" + ], + [ + "0x2329d6d67Dc1D4dA1858e2fe839C20E7f5456081", + "25923031143" + ], + [ + "0x23444f470C8760bef7424C457c30DC2d4378974b", + "5670131987" + ], + [ + "0x234831d4CFF3B7027E0424e23F019657005635e1", + "389763280" + ], + [ + "0x237B45906A501102dFdd0cDccb1Fd3D7b869CF36", + "175978742" + ], + [ + "0x23807719299c9bA3C6d60d4097146259c7A16da3", + "62358709048" + ], + [ + "0x239EeC9EC218f71cEf5CC14D88b142ed4fF44110", + "2" + ], + [ + "0x23b93e03e7E54b1daA9A5A7139158E7779D9f753", + "340750079" + ], + [ + "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6", + "2504743409" + ], + [ + "0x241b2Fb0b7517c784Dd0c3e20a1f655985CFaa07", + "67479307676" + ], + [ + "0x24294915f8b5831D710D40c277916eDC0fa0eC39", + "337425863" + ], + [ + "0x247FAF1c6070735423e4e7Fa02d7B2a3821A5363", + "49965811" + ], + [ + "0x2489ac126934D4d6a94Df08743Da7b7691e9798E", + "22188188232" + ], + [ + "0x24d72b67D6C7642fDf7Df71D9b54078A17d2b465", + "6346288675" + ], + [ + "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2", + "692845937491" + ], + [ + "0x250997F21bbcA2fc3d4F42f23d190C0f9c4cBFDd", + "3980225856" + ], + [ + "0x253ab8294bf3FB6AB6439abC9Bc7081504DB9bff", + "44573289187" + ], + [ + "0x25585171FC8dA74A6eD73943ADE4e32DE7e6C8Aa", + "18819634309" + ], + [ + "0x25Ae1F605A57bc57E88Fb9791d44594f9aB2A3B2", + "4792880800" + ], + [ + "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", + "6602929798" + ], + [ + "0x25d5Eb0603f36c47A53529b6A745A0805467B21F", + "461595451" + ], + [ + "0x26092F98B23D6CDdaB91ca1088fEdA19AA485dE3", + "200775013" + ], + [ + "0x2612C1bc597799dc2A468D6537720B245f956A22", + "14725738180" + ], + [ + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", + "234796687442" + ], + [ + "0x263bFD6746489929B2F08d728FFC33D697538a92", + "15929024305" + ], + [ + "0x2686e2ceE8DFEE5cf15e70f3f8d73d3410654d46", + "258216802046" + ], + [ + "0x26acaa8Fa20c86875149d70Df29B01fd1061E0bb", + "100440975137" + ], + [ + "0x26BdC56005Dc75F59F461A03C90f8171e5CB6fc4", + "6741390794" + ], + [ + "0x26bdf362ab1C746665a10DdF6b3bAb7c2D8bC62f", + "1106961983" + ], + [ + "0x26e33588826E867A8A5d0c0cc203a483fF6f1354", + "2315976817" + ], + [ + "0x270990d832C7E0145e62e5BdF7fCE719F504D48D", + "43579197318" + ], + [ + "0x272fB300717A9F7e0215AfE22595af5cBfA58591", + "123345590" + ], + [ + "0x274C44d5aEcA4744eB6eF42Fede80cbee3cf2Ec5", + "14272231026" + ], + [ + "0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9", + "12824363842" + ], + [ + "0x277FC128D042B081F3EE99881802538E05af8c43", + "576836618" + ], + [ + "0x27E2826765085aaA5dB2837f56222Cf4Bb08A3C6", + "101939023" + ], + [ + "0x28009881f0Ffe85C90725B8B02be55773647C64a", + "6536615" + ], + [ + "0x2800B279e11e268d9D74AF01C551A9c52Eab1Be3", + "1290998707760" + ], + [ + "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", + "769164273" + ], + [ + "0x284A2d22620974fb416D866c18a1f3c848E7b7Bc", + "6520214878" + ], + [ + "0x28570D9d66627e0733dFE4FCa79B8fD5b8128636", + "3" + ], + [ + "0x2865De63D4aBBFdaf401eD0472a605e0a8C9Fa6D", + "87981590" + ], + [ + "0x2894457502751d0F92ed1e740e2c8935F879E8AE", + "104389202589" + ], + [ + "0x28a23f0679D435fA70D41A5A9F782F04134cd0D4", + "498700937" + ], + [ + "0x28A40076496E02a9A527D7323175b15050b6C67c", + "1663198454" + ], + [ + "0x28c095d163107c5e9Ca83b932Ea14863B224D2B3", + "25509193355" + ], + [ + "0x28e5366E2e8D6732bCc474d810CaCcc4d758dce1", + "1413312" + ], + [ + "0x28eD88c5F72C4e6DfC704f4CC71a4B7756BC4DbC", + "70439" + ], + [ + "0x28Ee765BCA9A5EA745C4D18A12D6ff975BC98298", + "946052415" + ], + [ + "0x28Fb01603CbA8A3826FB73587d62821258d7Aa72", + "432023" + ], + [ + "0x290420874BF65691b98B67D042c06bBC31f85f11", + "26" + ], + [ + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", + "136257580592" + ], + [ + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", + "9194586659" + ], + [ + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", + "7158" + ], + [ + "0x2972bf9B54aC5100d747150Dfd684899c0aBEc5E", + "2" + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + "40393332193" + ], + [ + "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3", + "113430448669" + ], + [ + "0x29Bf6652e795C360f7605be0FcD8b8e4F29a52d4", + "318853007" + ], + [ + "0x29C6B4307d9E665d3243903E408e6007c4300c99", + "1000000000" + ], + [ + "0x29D708E97282054E698AF0Da3133D5711BA3C592", + "1200781" + ], + [ + "0x29F821148099b0C342cD9BeF9936eB716F82409E", + "111720027" + ], + [ + "0x2a07272aF1327699F36F06835A2410f4367e7a5C", + "9668237006" + ], + [ + "0x2A16898b3a9124685832b752C1bdCB6Ba42b5d49", + "100000000" + ], + [ + "0x2A1A1D4E4257DbbA1136992577FF1b5EfDa1bB34", + "339200" + ], + [ + "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20", + "1473822208" + ], + [ + "0x2a213ee8125B9Bd6e8f5E1e199aD2B10744B384f", + "3486265403" + ], + [ + "0x2A23D58Ea4b5cC2e01ef53ea5dE51447C2528F16", + "2" + ], + [ + "0x2a40AAf3e076187B67CcCE82E20da5Ce27Caa2A7", + "235604312" + ], + [ + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", + "1493696321" + ], + [ + "0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F", + "7377285605" + ], + [ + "0x2A8e0ebDA46A075D77d197D21292e38D37a20AB3", + "60201226332" + ], + [ + "0x2A8eAc696c57a38aC79ae6168e8310306B4D7E9c", + "124338974075" + ], + [ + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", + "8683645265" + ], + [ + "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65", + "7915533791" + ], + [ + "0x2b5233fa7753870A588DCCA95E876f4C29470889", + "39421300" + ], + [ + "0x2B83aC024B0a4Ba3f93776Cacb61D98310614aFE", + "4212200019" + ], + [ + "0x2Be2273452ce4C80c0f9e9180D3f0d6eEDfa7923", + "230401015912" + ], + [ + "0x2bE9518cc2a9fc2aA15b78b92D96E0727a07DF7C", + "429468318" + ], + [ + "0x2bF046A052942B53Ca6746de4D3295d8f10d4562", + "67911732801" + ], + [ + "0x2Bf9b1B8cc4e6864660708498FB004E594eFC0b8", + "5984096636" + ], + [ + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", + "16107986711" + ], + [ + "0x2C6A44918f12fdeA9cd14c951E7b71Df824Fdba4", + "18258" + ], + [ + "0x2C90f88BE812349fdD5655c9bAd8288c03E7fB23", + "12609280618" + ], + [ + "0x2ca40f25ABFc9F860f8b1e8EdB689CA0645948Eb", + "30698390" + ], + [ + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", + "34436022481" + ], + [ + "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "1918965278639" + ], + [ + "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", + "1932968569334" + ], + [ + "0x2d5C566Dc54cA20028609839F88163Fd7CAD5Ea1", + "4994716841" + ], + [ + "0x2d9796333D7A9007FAa67006437b4c16EF8276E6", + "2626610063" + ], + [ + "0x2dAF6e1f7aEe5Bc0d88530cb9a60FE0ca86F5E67", + "300000000" + ], + [ + "0x2Df56902dAeD94248df3ACE6efB8a259E9Fe525f", + "5380750000" + ], + [ + "0x2DF6A706Ee101556D68d7e52CE4d066Fb4C9B16e", + "17520011978" + ], + [ + "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", + "9689005089" + ], + [ + "0x2e4145A204598534EA12b772853C08E736248E7B", + "1" + ], + [ + "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", + "519964010798" + ], + [ + "0x2e5E27c085F20ac1970cA32d25966D255Ab196d0", + "21947500690" + ], + [ + "0x2e676e0f071376e12eD9e12a031D01B9B87F5878", + "69680131" + ], + [ + "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872", + "51708569410" + ], + [ + "0x2e6EE7d373C6f98a1Ca995F3A4f5d43FedEeAD11", + "87784231" + ], + [ + "0x2e7435AC62AF083f5602b645602770F5328018d1", + "615093882" + ], + [ + "0x2e95A39eF19c5620887C0d9822916c0406E4E75e", + "119241246809" + ], + [ + "0x2E9af3a1f42435354846Bff3681771b5E3551121", + "56795990695" + ], + [ + "0x2EaacAf1468F248483Cec65254dff98FF95e3387", + "80558439031" + ], + [ + "0x2EC92468f73fEc122bb5d3f9c3C2e17Cfa3467Da", + "12276848572" + ], + [ + "0x2Ed7E934847AE82954e4456555CD5FFBe10eb6B5", + "200000000" + ], + [ + "0x2f0087909A6f638755689d88141F3466F582007d", + "10261504321" + ], + [ + "0x2F0441f249BDb0146223a2e3b60c146badd667A4", + "18337554622" + ], + [ + "0x2F3139A9903728e9a971330Ae7CB19662A0Ce143", + "15446125" + ], + [ + "0x2f48D91F26f4DE798E6e5883163FeF0a2E30D595", + "1851964881" + ], + [ + "0x2f4A81fDF6d61EbAb81073826915F1426896bD37", + "2" + ], + [ + "0x2f62960f4da8f18ff4875d6F0365d7Dbc3900B8C", + "18" + ], + [ + "0x2f65904D227C3D7e4BbBB7EA10CFc36CD2522405", + "604108560" + ], + [ + "0x2F6e6687FA7F1c8cBBDf5cf5b44A94a43081621c", + "4854060979" + ], + [ + "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", + "91814414968" + ], + [ + "0x305b0eCf72634825f7231058444c65D885E1f327", + "8952303501" + ], + [ + "0x305C5E928370941BE39b76DeB770d9Be299A5fF3", + "1268475699976" + ], + [ + "0x30709180d8747E5BC0bD6E1BFf51baEdAB31328D", + "85506291596" + ], + [ + "0x30A1fbFc214D2Af0A68f6652A1d18a1b71Dfa9eA", + "40478904407" + ], + [ + "0x30D3174Ce04F1E48c18B1299926029568Cf4E1D6", + "87120527317" + ], + [ + "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", + "127792642" + ], + [ + "0x30E8B02e0Db5A05bbfc4eEC38dD8b07cDBc96F12", + "1248844985" + ], + [ + "0x3103c84c86a534a4f10C3823606F2a5b90923924", + "238700000" + ], + [ + "0x3116a992bA59A1f818f69fC9C80B519C2Bb915B5", + "41162769764" + ], + [ + "0x31188536865De4593040fAfC4e175E190518e4Ef", + "8755027257" + ], + [ + "0x3120a7c463f7993E85Ac2a40AA7B2c8A0A9acd54", + "29794064786" + ], + [ + "0x317178D5d21a6eB723C957f986A8c069Da2Ee215", + "384928231" + ], + [ + "0x319c9DE67C2684Cfc932C54cDD4B4100d90c8d04", + "45829737419" + ], + [ + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", + "2086570365" + ], + [ + "0x31ca06f88438Decf247dd25695D53CBE2ac539f4", + "33322837140" + ], + [ + "0x31DEae0DDc9f0D0207D13fc56927f067F493d324", + "99060882649" + ], + [ + "0x3213977900A71e183818472e795c76aF8cbC3a3E", + "5232991598" + ], + [ + "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e", + "90379824026" + ], + [ + "0x32a59b87352e980dD6aB1bAF462696D28e63525D", + "20437895338" + ], + [ + "0x32C7006B7E287eBb972194B40135e0D15870Ab5E", + "1114706" + ], + [ + "0x32dA7EfC90a9D1Da76F7709097D1Fc8E304CAEc4", + "419" + ], + [ + "0x32ddCe808c77E45411CE3Bb28404499942db02a7", + "6360002633" + ], + [ + "0x32fa6F9861d9F4912670A2d326B1356Fbed2dA04", + "482109323333" + ], + [ + "0x330B24C43F212eD31591914ec2bd9F6e64fF912e", + "85688544668" + ], + [ + "0x33314cF610C14460d3c184a55363f51d609aa076", + "1" + ], + [ + "0x333ad4bd869b12Fb3B1C883Cf2F1C89b685E018c", + "2" + ], + [ + "0x334bdeAA1A66E199CE2067A205506Bf72de14593", + "6910399842" + ], + [ + "0x334f12F269213371fb59b328BB6e182C875e04B2", + "327126090709" + ], + [ + "0x335750d1A6148329c3e2bcd18671cd594D383F9b", + "2942785030" + ], + [ + "0x339dD90e14Ec35D2F74Ffea7495c2FB0150AF2Ba", + "1183088918" + ], + [ + "0x33B357B809c216cA9815ff340088C11b510e3434", + "499537547" + ], + [ + "0x33ee1FA9eD670001D1740419192142931e088e79", + "416969887" + ], + [ + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", + "9" + ], + [ + "0x343EE80f82440A498E48Ae186e066809750A055B", + "359253821702" + ], + [ + "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327", + "8363252988" + ], + [ + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", + "82900913976" + ], + [ + "0x347CC205EC065660F392Fc3765822eEb76FeBf90", + "171022185" + ], + [ + "0x3483A0282281768E2883c443989194259CBA7EAF", + "5909670275" + ], + [ + "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30", + "2233489342" + ], + [ + "0x34a370d288734d23bC48A926Cad90A6615abe4e3", + "8620593271" + ], + [ + "0x34a649fde43cE36882091A010aAe2805A9FcFf0d", + "250642362346" + ], + [ + "0x34DdFe208f02c3fC0a49fada184562e7Eb1a4206", + "1019739552" + ], + [ + "0x34e642520F4487D7D0229c07f2EDe107966D385E", + "904575303" + ], + [ + "0x35044Cc44d0a2E627a6a3a0222172B0cE663b00c", + "1168076626" + ], + [ + "0x350B75652059725c6E01F16198Da61BBeC33eD5f", + "6707105375" + ], + [ + "0x350EBDD5C2Ba29e7E14dD603dd36ea0e0d007F5F", + "2600925030" + ], + [ + "0x351A9C83756bB46D912c89ec1072C02ab7795Ac2", + "342535872" + ], + [ + "0x353667248112af748E3565a41eF101Daf57aE02a", + "104655060" + ], + [ + "0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e", + "1000000" + ], + [ + "0x357c242c8c2A3f8DCC3eB3b5e4c54f52a2F3c480", + "218346341" + ], + [ + "0x35B6870f0BBc8D7D846B7e21D9D99Eb9CE042929", + "6341790569" + ], + [ + "0x35F105E802DA60D3312e5a89F51453A0c46B9Dad", + "1799776126" + ], + [ + "0x362C51b56D3c8f79aecf367ff301d1aFd42EDCEA", + "44130997" + ], + [ + "0x362FFA9F404A14F4E805A39D4985042932D42aFe", + "2396053632" + ], + [ + "0x3635364e89EF6e842DD16a4028Df0A7124CA7A4A", + "16534061866" + ], + [ + "0x3640a9ba0A6EF5738f0b41b87EAE75B8928F8917", + "1980292" + ], + [ + "0x368D80b383a401a231674B168E101706389656cB", + "113878848" + ], + [ + "0x3694e90893D3de8d9C1AcC9D0e87Eb9BD0d041Ff", + "27052405226" + ], + [ + "0x369582706e408F497D7132d9446983722B67A399", + "1666778860" + ], + [ + "0x36991C5863Ead2d72C2b506966d1db72C2C6C6DF", + "1988631367" + ], + [ + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", + "168591315063" + ], + [ + "0x369D092150201b0DaB4ee942eb3F3972E4d73b67", + "1102736576" + ], + [ + "0x36A38cCA26aD880980d920585690Ec67422B40B2", + "3170813480" + ], + [ + "0x36Af78764eeB195Db2E8a7b63A49BB58aA67F247", + "2" + ], + [ + "0x36B9aB68D5999F060fE8db71e35c8b5201313178", + "198943022659" + ], + [ + "0x36C3094E86CB89e33a74F7e4c10659dd9366538C", + "9649995165" + ], + [ + "0x36CB18A75943396b526e20fde7F70B6367c70d7D", + "63876155" + ], + [ + "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B", + "384694059597" + ], + [ + "0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc", + "630509114" + ], + [ + "0x3704e6Ce76944849Bc913a4bE9aCA42C1A91c774", + "2435789385" + ], + [ + "0x3726F06d85fC77f13D352f86b4Da6f356f7BDaF6", + "706518646" + ], + [ + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", + "225485907126" + ], + [ + "0x37435b30f92749e3083597E834d9c1D549e2494B", + "2175724949423" + ], + [ + "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", + "35206485548" + ], + [ + "0x376a6EFE8E98f3ae2af230B3D45B8Cc5e962bC27", + "98" + ], + [ + "0x37A6156e4a6E8B60b2415AF040546cF5e91699bd", + "37197701" + ], + [ + "0x37D372339FfF4A46Dc0f000a6062E21192dC227C", + "887397650" + ], + [ + "0x37Dd96f96c2aCDa38Fb9daC8aAB4e57E2356555E", + "9673653451" + ], + [ + "0x37EdCDe4Ba9b3A2A82AE6bC439c163a067BB2003", + "17928271" + ], + [ + "0x37f8E3b0Dfc2A980Ec9CD2C233a054eAa99E9d8A", + "7228030518" + ], + [ + "0x3800645f556ee583E20D6491c3a60E9c32744376", + "19806759068" + ], + [ + "0x3804e244b0687A41619CdA590dA47ED0f9772C8B", + "149246111387" + ], + [ + "0x380E5b655d459A0cFa6fa2DFBbE586bf40DcFd7F", + "58841224698" + ], + [ + "0x3810EAcf5020D020B3317B559E59376c5d02dCB2", + "477293525" + ], + [ + "0x382fFCe2287252F930E1C8DC9328dac5BF282bA1", + "11026129" + ], + [ + "0x3841D90d38D0cD3846d00b37fAF0583504b93475", + "3285846733" + ], + [ + "0x3849a135D541232af220Bb839Ee1cE7e2165ed7D", + "375843387367" + ], + [ + "0x385B0F514eB52f37B25c01eEb1f777513C839d46", + "115471141" + ], + [ + "0x385f68B55cf0d9c8f00D60F0452BF9b2622D2C83", + "2780059140" + ], + [ + "0x387dfB7Fca2606AcaacD769Fb59803F6539C8269", + "99351908478" + ], + [ + "0x38840B12d538a9f3347a38cDb44562f875D38e26", + "13" + ], + [ + "0x388Bb4D6B0C8e09AFaaF84cDae8123778fadf28c", + "414516474521" + ], + [ + "0x38AE800E603F61a43f3B02f5E429b44E32e01D84", + "10410200875" + ], + [ + "0x38cd808be77b1a61973E7202A8e1b96e98CF315b", + "498331813" + ], + [ + "0x394c357DB3177E33Bde63F259F0EB2c04A46827c", + "434116403203" + ], + [ + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", + "27224573000" + ], + [ + "0x396f03e88F0bD5A69c88c70895440B36579d86fA", + "39761115" + ], + [ + "0x397eADFF98b18a0E8c1c1866b9e83aE887bAc1f1", + "2148884438" + ], + [ + "0x399abd36B9c7CeF008F75d8805eE5Fdf05D41773", + "160" + ], + [ + "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608", + "7272894" + ], + [ + "0x39BBb0F8D1C9F71051478Df51E0243aA16F4cB41", + "13873322472" + ], + [ + "0x3A048707c0E5064bAa275d9A4C4015e4E481f10d", + "3532345052" + ], + [ + "0x3A529A643e5b89555712B02e911AEC6add0d3188", + "21629242" + ], + [ + "0x3A628c8Ff76fEDDCB377B94a794A4d9fA785E1a4", + "135698697474" + ], + [ + "0x3A6E274ac986579E0322227e9E560aDB192c0093", + "154616887" + ], + [ + "0x3a7268413227Aed893057a8eB21299b36ec3477e", + "1" + ], + [ + "0x3aB1a190713Efdc091450aF618B8c1398281373E", + "3" + ], + [ + "0x3AEf36d1866C222BF930Dbb2479ec04e22afF05F", + "7863000000" + ], + [ + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", + "26342201190" + ], + [ + "0x3b13c2d95De500b90Cbef9c285a517B1E8bBdcEC", + "5742694489" + ], + [ + "0x3B24Dde8eF6B02438490117985D9Cfa2EdCcf746", + "240806763" + ], + [ + "0x3B3EC26149597e380B25A9Ef99631E9e0e85999A", + "50000000" + ], + [ + "0x3b55DF245d5350c4024Acc36259B3061d42140D2", + "289782333793" + ], + [ + "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd", + "40926127446" + ], + [ + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", + "123816262505" + ], + [ + "0x3bE25Eef7b994C05eb119548E700dE5A304B5Baf", + "49" + ], + [ + "0x3bf5FFF3Db120385AEefa86Ba00A27314a685d33", + "102251102276" + ], + [ + "0x3C087171AEBC50BE76A7C47cBB296928C32f5788", + "14554397735" + ], + [ + "0x3C2e7c9DD56225d3CC40fB863f9922fC73c399ae", + "1167127659" + ], + [ + "0x3C43674dfa916d791614827a50353fe65227B7f3", + "520866637890" + ], + [ + "0x3C4bf99EBd50cF2C116d95Fc4F9c258b2d1F03E5", + "5854265067" + ], + [ + "0x3C4d21243F55f0Ee12F9ddDe1296d08529503311", + "62332036115" + ], + [ + "0x3C58492Ad9cAd0D9f8570a80b6A1f02C0C1dA2c5", + "38992590113" + ], + [ + "0x3c5a438a2c19D024a3E53c27d45FAfAC9A45B4f7", + "2" + ], + [ + "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", + "96419728100" + ], + [ + "0x3C7560edEeE5B60e4a6c7abEbaa971065B2242b4", + "61298916276" + ], + [ + "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c", + "6416085500" + ], + [ + "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B", + "39044052267" + ], + [ + "0x3CBC3bEd185B837D79Ba18d36A3859EcbcFC3Dc8", + "642834" + ], + [ + "0x3cC431852CA2d16f6D8Cc333Ab323b748eb798eb", + "1340507729" + ], + [ + "0x3CC6Cc687870C972127E073E05b956A1eE270164", + "2" + ], + [ + "0x3CdF26e741B7298d7edc17b919FEB55fA7bc0311", + "390335019639" + ], + [ + "0x3Cdf2F8681b778E97D538DBa517bd614f2108647", + "96417199445" + ], + [ + "0x3d134073481122BCb063a55d90ba505E5A3f8F39", + "4790171223" + ], + [ + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", + "2" + ], + [ + "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", + "4578298952" + ], + [ + "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", + "12744418382" + ], + [ + "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", + "1878" + ], + [ + "0x3D93420AA8512e2bC7d77cB9352D752881706638", + "95422611" + ], + [ + "0x3dc9c874fa91AB41DfA7A6b80aa02676E931aa9F", + "71730886701" + ], + [ + "0x3dD413Fd4D03b1d8fD2C9Ed34553F7DeC3B26F5C", + "7258792003" + ], + [ + "0x3Df83869B8367602E762FC42Baae3E81aA1f2a20", + "25698905280" + ], + [ + "0x3E03E86E82B611046331E7b16f3e05ACF5a3eF6b", + "4553885" + ], + [ + "0x3E0fdEAB81bE617892472c457C3f69b846Fbf4C5", + "351077598643" + ], + [ + "0x3E26a32a90386E997C6AaD241aD231e78EeC08a1", + "794044386252" + ], + [ + "0x3e2EfD7D46a1260b927f179bC9275f2377b00634", + "1762627989" + ], + [ + "0x3e39961724f59b561269D88B03019C58c135Db57", + "2490566223" + ], + [ + "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB", + "15847367028" + ], + [ + "0x3e5Dc186E27C09f873aD4435903d92aD97e65B91", + "4191887802" + ], + [ + "0x3e763998E3c70B15347D68dC93a9CA021385675d", + "894846280" + ], + [ + "0x3E93205c610B326A8698f42A5384c8766f3Aa968", + "1351215983" + ], + [ + "0x3eb58BD63cB7f0FC0442180B79D5B8E6d4FAd088", + "1134816214" + ], + [ + "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c", + "2" + ], + [ + "0x3efdF7eB16a08c1FeDe60311244D8d0d2D223DB6", + "52021000000" + ], + [ + "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0", + "1150843921" + ], + [ + "0x3F6BaBbF1a9DFB3039Dc932986D4A9658234fe21", + "2962" + ], + [ + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", + "6681905182" + ], + [ + "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "1129291156" + ], + [ + "0x3f99E5BB6e6C76DA33AcC6c3020F64749bC116d3", + "514810568" + ], + [ + "0x3f9AE813aDD9A52268b2c7E3F72484FdA8735173", + "1555516443" + ], + [ + "0x3f9d48594FB58700cd6bF82BD010e25f61C7d8C9", + "2" + ], + [ + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", + "2" + ], + [ + "0x400609FDd8FD4882B503a55aeb59c24a39d66555", + "30334383382" + ], + [ + "0x400cb5ce0A005273c8De074a92ec3e1155229E2F", + "1988669" + ], + [ + "0x404aEeEACEDCF91bEE26f40470623a473cCFA040", + "104937341" + ], + [ + "0x4062Ec809b341660262CE22dAB11E4Bc5cECd622", + "2" + ], + [ + "0x4096E95da697Bd6F7c32E966b7b75F4d1f2817eA", + "1" + ], + [ + "0x40C5A7b9dAD9463CCf0cbaFEa05CEdA768962947", + "88" + ], + [ + "0x40ca67bA095c038B711AD37BbebAd8a586ae6f38", + "1648097" + ], + [ + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", + "51063548315" + ], + [ + "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7", + "2616500000" + ], + [ + "0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb", + "794071" + ], + [ + "0x4141f83314d623bADD56C062E8081ce0b3090e7a", + "111930516695" + ], + [ + "0x414564fB3654FcAbCa2e4A86936F03ac9B80aB64", + "431869063" + ], + [ + "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8", + "23553703129" + ], + [ + "0x4179FB53E818c228803cF30d88Bc0597189F141C", + "252097517366" + ], + [ + "0x4180c6aFeEd0290E87cE848FC48451027798958C", + "98267500172" + ], + [ + "0x41CC24B4E568715f33fE803a6C3419708205304d", + "1173233856" + ], + [ + "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B", + "671413640603" + ], + [ + "0x41e2965406330A130e61B39d867c91fa86aA3bB8", + "1198526094" + ], + [ + "0x41EfF4e547090fBD310099Fe13d18069C65dfe61", + "116645202760" + ], + [ + "0x4219656f75b02188581fBf7d86dcAbB5EbB513A3", + "861" + ], + [ + "0x42227B857Eca8114f724d870A8906b660ADED095", + "28347721820" + ], + [ + "0x4254e393674B85688414a2baB8C064FF96a408F1", + "14615202830" + ], + [ + "0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7", + "1739507542" + ], + [ + "0x428a10825e3529D95dF8C5b841694318Ca95446f", + "3786372833" + ], + [ + "0x42B2C65dB7F9e3b6c26Bc6151CCf30CcE0fb99EA", + "1" + ], + [ + "0x42c28A2a06bcc8F647d49797d988732c2C613Ab1", + "93580235" + ], + [ + "0x42C298794F24211d52Fa1A1B43031911b0B072c1", + "1131833645" + ], + [ + "0x4307011e9Bad016F70aA90A23983F9428952f2A2", + "35246430536" + ], + [ + "0x431e52E4993C4b7B23f587Cf96bc2Fe510037bE4", + "37372" + ], + [ + "0x4324177c067e3a768c405f512473bcc137c2dCB8", + "1230451" + ], + [ + "0x4330C25C858040aDbda9e05744Fa3ADF9A35664F", + "591078" + ], + [ + "0x433453d337Db0a3E9D8c2DF88e4a90d75328B0a4", + "596003183" + ], + [ + "0x433b1b3bc573FcD6fDDDCf9A72CE377dB7A38bb5", + "2" + ], + [ + "0x433f0763D76FE032874d670f29F6948db3A64AE3", + "1464168919" + ], + [ + "0x434252f52cE25DA0e64f0C38EBC65258AABB2844", + "2" + ], + [ + "0x43484020eE4b06022aD57CbF8932f5C8aafc9D59", + "427695904" + ], + [ + "0x43599673CBC37E6f0813Df8480Fe7BB34c50f662", + "313234220" + ], + [ + "0x4384f7916e165F0d24Ab3935965492229dfd50ea", + "4079542319" + ], + [ + "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7", + "2627229109" + ], + [ + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", + "381822772374" + ], + [ + "0x43b79f1E529330F1568e8741F1C04107db25EB28", + "34079786837" + ], + [ + "0x43D5472835f5F24dF67eC0f94f1369527e5c8B79", + "2267977834" + ], + [ + "0x44043c1E33C76B34C67d09a2fb964C0EEfBaE6B7", + "458341057" + ], + [ + "0x442540b161C02edecdCe6F871D94155e61f5dA80", + "2" + ], + [ + "0x4432e64624F4c64633466655de3D5132ad407343", + "51720487841" + ], + [ + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", + "2" + ], + [ + "0x443eb1f18CF8fD345DF376078C72e00B27e3F6a3", + "18673306" + ], + [ + "0x4462c633676323D07a54b6f87CDD7d65f703Bc76", + "1036621351222" + ], + [ + "0x4465c4474703BB199c6ed15C97b6E32BD211Cf9d", + "2370810978" + ], + [ + "0x44871f074E0bd158BbA0c0f5aE701C497edDBdDE", + "83657933068" + ], + [ + "0x448a549593020696455D9b5e25e0b0fB7a71201E", + "13021630497" + ], + [ + "0x44D812A7751AAeE2D517255794DAA3e3fc8117C2", + "2896855520" + ], + [ + "0x44db0002349036164dD46A04327201Eb7698A53e", + "3597838114" + ], + [ + "0x44E836EbFEF431e57442037b819B23fd29bc3B69", + "5169298937" + ], + [ + "0x44EE78D43529823D96Bf1435Fb00b9064522bD36", + "408211726" + ], + [ + "0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB", + "49526427" + ], + [ + "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975", + "198230127713" + ], + [ + "0x45577FfEc3C72075AF3E655Ea474E5c1585d9d14", + "7859105940" + ], + [ + "0x4588a155d63CFFC23b3321b4F99E8d34128B227a", + "254173" + ], + [ + "0x4626751B194018B6848797EA3eA40a9252eE86EE", + "1085053" + ], + [ + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", + "6581" + ], + [ + "0x4694d4A6f9bf20A491b7A93F77f34Aec2Be86546", + "20584613724" + ], + [ + "0x46aD7865CbaB5387BD24d8842a1C74c8C12D208a", + "1" + ], + [ + "0x46C4128981525aA446e02FFb2FF762F1D6A49170", + "1" + ], + [ + "0x46ED8A6431d461C96f498398aa1ff61FC3D5dB7c", + "770941958302" + ], + [ + "0x46Fb59229922d98DCc95bB501EFC3b10FA83D938", + "2" + ], + [ + "0x47217E48daAf7fe61486b265f701D449a8660A94", + "2" + ], + [ + "0x4733A76e10819FF1Fa603E52621E73Df2CE5C30A", + "17" + ], + [ + "0x473812413b6A8267C62aB76095463546C1F65Dc7", + "3812137339" + ], + [ + "0x473B4a343C0580d5B963198C91f78BeEaCf4135a", + "18742480755" + ], + [ + "0x47534888bF089f0359DF380a1782214344095A5f", + "16178306" + ], + [ + "0x4765fcd87025490bc8f650565474a7bD6A2179A3", + "568134878" + ], + [ + "0x47765838fACDeA8fda7D008f7c7cC8466CB1bDB8", + "11196646643" + ], + [ + "0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88", + "24462777602" + ], + [ + "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351", + "1800441088928" + ], + [ + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", + "8608587637" + ], + [ + "0x484aaf6cf481DC921117Cb4B396a10db4934A063", + "387935505383" + ], + [ + "0x4857d1C4b89A046F834FD9F271b0A82f5159889b", + "1033504915" + ], + [ + "0x4868aF497acaf3B7B93978eBAFE3911b288ec404", + "250000000" + ], + [ + "0x486d28706bcef411CBFe8fE357c287496A518DEA", + "22892689982" + ], + [ + "0x48A2bC5DC9e3c5c0421E0483bF0648AaEE87daca", + "805" + ], + [ + "0x48A5A6a01bA89cDdF97D2D552923d5a11401Ed19", + "236623616924" + ], + [ + "0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0", + "2500131664" + ], + [ + "0x48Dd5a438AaE27B27eCe5B8A3f23ba3E1Fb052F2", + "14139747736" + ], + [ + "0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B", + "10646036906" + ], + [ + "0x4936c26B396858597094719A44De2deaE3b8a3c9", + "17153211327" + ], + [ + "0x4949D9db8Af71A063971a60F918e3C63C30663d7", + "48733492672" + ], + [ + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", + "8857" + ], + [ + "0x499dd900f800FD0A2eD300006000A57f00FA009b", + "1" + ], + [ + "0x49cE991352A44f7B50AF79b89a50db6289013633", + "61392878866" + ], + [ + "0x49dfC7999be4e5c938a18676Aa11e96e3bF87ee8", + "3844040942" + ], + [ + "0x49Efdfb20FD0d286a1060Fe5cF1AEE93d2301B81", + "3629032258" + ], + [ + "0x49F4ca97f0BBa39425A2975e1FfCcE2587A441B2", + "2859100832" + ], + [ + "0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9", + "24993629794" + ], + [ + "0x4A24E54A090b0Fa060f7faAF561510775d314e84", + "2" + ], + [ + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", + "113102819678" + ], + [ + "0x4A337d1dF22d0D3077CaEFd083A1b70AA168d087", + "2325933560" + ], + [ + "0x4A5867445A1Fa5F394268A521720D1d4E5609413", + "947135953319" + ], + [ + "0x4A6A6573393485cC410b20a021381Fb39362B9D1", + "2" + ], + [ + "0x4AAE8E210F814916778259840d635AA3e73A4783", + "4242499868" + ], + [ + "0x4ab746092Fb040DBd02a41DEEb2D6933057eEF13", + "252758104" + ], + [ + "0x4ac9a97b3edb3f11b5ca91d8dE9468CF4882A7af", + "15685890504" + ], + [ + "0x4Aca0D5C138e811d6b74aF3940a724aa94c51C42", + "1302176731" + ], + [ + "0x4ADa23a97451e0B43444aBE15A2ea50a3E6110F9", + "74991315" + ], + [ + "0x4adE2ca80F8Ba92DAB1c0D003eb6e023B28E906B", + "27813967408" + ], + [ + "0x4Af7c12c7e210f4Cb8f2D8e340AaAdaE05A9f655", + "23058924930" + ], + [ + "0x4b1b04693a00F74B028215503eE97cC606f4ED66", + "10139779524" + ], + [ + "0x4B202C0fDA7197af32949366909823B4468155f0", + "4573278579" + ], + [ + "0x4b47DCaE50D5A3dDfd8610Fc8D435b0f5943E300", + "7348287144" + ], + [ + "0x4b9184dF8FA9f3Fc008fcdE7e7bbf7208eF5118d", + "100000000" + ], + [ + "0x4b9d08ECD76CD74F2314aA5ef687E70be3Cf6605", + "531308878" + ], + [ + "0x4ba91dD5D555EcED4589e70dd1B9962773709406", + "236771600378" + ], + [ + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", + "36489849527" + ], + [ + "0x4C066d71A23A6fa90f2448f6eB0ca899f13b869a", + "12252217" + ], + [ + "0x4c09E512B5B8d1EAdA8fc07Ef45406E4623D7FDd", + "36706468635" + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "2459169419623" + ], + [ + "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", + "142148" + ], + [ + "0x4c22f22547855855B837b84cF5a73B4C875320cb", + "4192635750" + ], + [ + "0x4C2b8dd251547C05188a40992843442D37eD28f2", + "326797" + ], + [ + "0x4c366E92D46796D14d658E690De9b1f54Bfb632F", + "3906876161" + ], + [ + "0x4c37d0fdc655909cDF07404E5E001CdD0F7168Df", + "226971109" + ], + [ + "0x4C3C27eB0C01088348132d6139F6d51FC592dDBD", + "188804922" + ], + [ + "0x4c54BD629ACB1DaedB3349023a239b4923b8589b", + "155697" + ], + [ + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", + "386632173118" + ], + [ + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "2" + ], + [ + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", + "138091510702" + ], + [ + "0x4Cdc86fa95Ec2704f0849825f1F8b077deeD8d39", + "942000000" + ], + [ + "0x4CddfF23d036E15fe786508FfA39B27F73b4A01a", + "71" + ], + [ + "0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6", + "37170926290" + ], + [ + "0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315", + "7495309309" + ], + [ + "0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1", + "19840298293" + ], + [ + "0x4d0bF3C6B181E719cdC50299303D65774dFB0aF7", + "51252549" + ], + [ + "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45", + "138682997988" + ], + [ + "0x4d39c77881f254C6B56d9F4aD64914cf760C946a", + "2960156368" + ], + [ + "0x4d4a25125BDca5226EFEF9938d0597964d5561d9", + "53130" + ], + [ + "0x4d7D2D9aDd39776Bba47A8F6473A6257dd897702", + "1" + ], + [ + "0x4d7fE683e9fd9891D856b7b528656DCb493f8242", + "36990612152" + ], + [ + "0x4dA56fED8e7Bc8D27eDfd3Db7cFCC9c8aa1955B8", + "30713295629" + ], + [ + "0x4DbA5CD287655CB9F3Abe810A59B3c7ac09b493e", + "27428790749" + ], + [ + "0x4dD06d3f05d573DB027459E8DC942e37249D71A8", + "5384893243" + ], + [ + "0x4df59c31a3008509B3C1FeE7A808C9a28F701719", + "1" + ], + [ + "0x4E2572d9161Fc58743A4622046Ca30a1fB538670", + "802660297" + ], + [ + "0x4e2A5a06934c35c83F7066bCa8Bc30f5F1685466", + "21584861079" + ], + [ + "0x4e2c7De1EF984bEeBB319057443D4AB87782eC42", + "70" + ], + [ + "0x4E30D913301a99175633601159553FF9a9287344", + "294459368" + ], + [ + "0x4E3E7d5183e42Fa4C5C4E223534A5307B5dAD6e9", + "1" + ], + [ + "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a", + "5" + ], + [ + "0x4e7ceb231714E80f90E895D13723a2c322F78127", + "220246973" + ], + [ + "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79", + "160211417704" + ], + [ + "0x4ee5F1A0084762687CF511C9b2Bb117665aB9CC1", + "9817816310" + ], + [ + "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8", + "1631738825" + ], + [ + "0x4f69c39fe8E37b0b4d9B439A05f89C25F2c658d3", + "19302199741" + ], + [ + "0x4F70FFDdAb3c60Ad12487b2906E3E46d8bC72970", + "18845049718" + ], + [ + "0x4F8D7711d18344F86A5F27863051964D333798E2", + "418023996837" + ], + [ + "0x4Fc6d828B691e644c86d2D7cDc7E9a6ccE576E56", + "161975430" + ], + [ + "0x4fCD42eb2557E49C0201Fb3283CfF62c1BaF0Fb4", + "40286679086" + ], + [ + "0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b", + "21361317287" + ], + [ + "0x4fEe908721C4A0538005c50d3002C850DA811505", + "5365460145" + ], + [ + "0x500da24eb4A9222854FCDe19E4bBc522e0644a2c", + "29563004938" + ], + [ + "0x5039ed981CeDfCBBB12c4985Df321c1F9d222440", + "102170250" + ], + [ + "0x504C11bDBE6E29b46E23e9A15d9c8d2e2e795709", + "1325826360" + ], + [ + "0x5068aed87a97c063729329c2ebE84cfEd3177F83", + "84993" + ], + [ + "0x50A5EcD4876E7Ff5e1a5C54A4f370C4c6F4047d8", + "11952663297" + ], + [ + "0x50c491ffDa25f9E472d467d60835468C522E7d3a", + "495690679" + ], + [ + "0x51001383C0283736664B0a81e383148aF7050890", + "35338906121" + ], + [ + "0x511cc569c99A2769DE5d1a4C0B8387B41EAf9307", + "110179087" + ], + [ + "0x511d230d3c94CadED14281d949b4D35D8575CA12", + "2117753346" + ], + [ + "0x512E3Eb472D53Df71Db0252cb8dccD25cd05E9e9", + "19375570094" + ], + [ + "0x5136a9A5D077aE4247C7706b577F77153C32A01C", + "72" + ], + [ + "0x515755b2c5A209976CF0de869c30f45aC7495a60", + "37317185320" + ], + [ + "0x5164aEf3212841FB3479439Fe06C23cC48ce433f", + "3449" + ], + [ + "0x51869683791F9950B19145fDC0be0feDF743dd78", + "359093896" + ], + [ + "0x51a418f72115B30d092F2A2FA271B74cF21c528B", + "117360107569" + ], + [ + "0x51bd1AAcb21df2056A214b4251542F738a2a76cc", + "7741882784" + ], + [ + "0x51cdDDC1Ec0eCb5686c6EA0bC75793A27573243d", + "4539944867" + ], + [ + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", + "647219930" + ], + [ + "0x51E7b8564F50ec4ad91877e39274bdA7E6eb880A", + "4101549406" + ], + [ + "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", + "23391953092" + ], + [ + "0x522E3b2b496a9e949C1B60a532c2500962C96Ef7", + "270043701" + ], + [ + "0x525208Dd0B56c27BD10703bD675FcA0509A17154", + "631086004" + ], + [ + "0x5270B883D12e6402a20675467e84364A2Eb542bF", + "99215074673" + ], + [ + "0x52A42429BDAaD4396F128CB92167e64a96bE8A61", + "78031852" + ], + [ + "0x52c9A7E7D265A09Db125b7369BC7487c589a7604", + "27547673951" + ], + [ + "0x52ccFf5c85314bbe4D9C019EE57E5B45Ad08B0Db", + "2" + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "715809953605" + ], + [ + "0x52D4d46E28dc72b1CEf2Cb8eb5eC75Dd12BC4dF3", + "749302147" + ], + [ + "0x52E03B19b1919867aC9fe7704E850287FC59d215", + "8878156649" + ], + [ + "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e", + "500000003" + ], + [ + "0x52F00b86cD0A23f03821aD2f9FA0C4741e692821", + "8747840586" + ], + [ + "0x531516CA59544Bf8AB2451A072b6fA94AdF5a88c", + "19200445677" + ], + [ + "0x5338035c008EA8c4b850052bc8Dad6A33dc2206c", + "220339976351" + ], + [ + "0x533af56B4E0F3B278841748E48F61566E6C763D6", + "962729403418" + ], + [ + "0x538c3fe98a11FBA5d7c70FD934C7299BffCFe4De", + "13111" + ], + [ + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", + "637003184132" + ], + [ + "0x53C0483B3D809c725f660F199B8B6a8a83B4c8Fe", + "4381941" + ], + [ + "0x53dC93b33d63094770A623406277f3B83a265588", + "74940937528" + ], + [ + "0x540dC960E3e10304723bEC44D20F682258e705fC", + "3447381135" + ], + [ + "0x542A94e6f4D9D15AaE550F7097d089f273E38f85", + "1351212" + ], + [ + "0x54bec524eC3F945D8945BC344B6aEC72B532B8fb", + "324556450" + ], + [ + "0x54CE05973cFadd3bbACf46497C08Fc6DAe156521", + "43452" + ], + [ + "0x5500aa1197f8B05D7cAA35138E22A7cf33F377D6", + "5239" + ], + [ + "0x55038f72943144983BAab03a0107C9a237bD0da9", + "13872315" + ], + [ + "0x550586FC064315b54af25024415786843131c8c1", + "7388329662" + ], + [ + "0x553114377d81bC47E316E238a5fE310D60a06418", + "3534830644" + ], + [ + "0x5533764Fd38812e5c14a858ce4f0fb810b6dc85a", + "236917382" + ], + [ + "0x5540D536A128F584A652aA2F82FF837BeE6f5790", + "2171225977" + ], + [ + "0x55493d2bf0860B23a6789E9BEfF8D03CE03911cd", + "1" + ], + [ + "0x554B1Bd47B7d180844175cA4635880da8A3c70B9", + "12894039148" + ], + [ + "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", + "2474667695" + ], + [ + "0x558B202d7D87B290bDB7B82DFEd9dD82D4BB1ecF", + "2247630167" + ], + [ + "0x558C4aFf233f17Ac0d25335410fAEa0453328da8", + "9811097262" + ], + [ + "0x55FD9Ab823d5c28128818Da3d2A2D144244406b2", + "485248639" + ], + [ + "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", + "109466234157" + ], + [ + "0x562f223a5847DaAe5Faa56a0883eD4d5e8EE0EE0", + "3" + ], + [ + "0x563F036896c19C6f4287fbE69c10bb63FAC717D6", + "30406776882" + ], + [ + "0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE", + "2" + ], + [ + "0x569fa8c1E62feaB5b93a6252DDb8c0fD29423C50", + "2930002737" + ], + [ + "0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95", + "6954932065" + ], + [ + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", + "2241972836640" + ], + [ + "0x56A76ED6582570254212d7653a1c833D4AeF883c", + "9214014088" + ], + [ + "0x5706537A9257C0F959924bf17C597A6f1BB68bA6", + "3029214618" + ], + [ + "0x5722dD3ea35E51A2c4EDAA2Ed10aBA128e12C520", + "475454593" + ], + [ + "0x575C9606CfcCF6F93D2E5a0C37d2C7696BCab132", + "5635990064" + ], + [ + "0x575E1701fCa9D40c4534576fCec320CFe22Bc561", + "44869470782" + ], + [ + "0x5767795b4eFbF06A40cb36181ac08f47CDB0fcEc", + "209703944667" + ], + [ + "0x576A4d006543d7Ba103933d6DBd1e3Cdf86E22d3", + "1057582305" + ], + [ + "0x5775b780006cBaC39aA84432BC6157E11BC5f672", + "11014167180" + ], + [ + "0x578BD31b74941eED1A0c924130FEf47181766a42", + "3" + ], + [ + "0x579CaC71BB7159e7657D68f1ae429b0Ab01A9261", + "2132465525" + ], + [ + "0x57a4342ED31c8f53e164EF28B0182620d20290A5", + "733426123008" + ], + [ + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", + "80015635117" + ], + [ + "0x57EE274CCEfF8be491B69A161E73E9269C6D8387", + "5991380141" + ], + [ + "0x57F77dcA6208F27240Ab4959000a30b1D6D7c647", + "318133235" + ], + [ + "0x58024B6C1005dE40eAC2D4c06bC947ebf2a302Af", + "34825114309" + ], + [ + "0x5812dF72f26aa7FF2Ad0065A48EC58f6A43252C4", + "5592958249" + ], + [ + "0x582500328b34CdC66d6c07fA1cf4720e65524fEc", + "1" + ], + [ + "0x584145Be171F646cd2a3979bA3edAE978b635465", + "168440356043" + ], + [ + "0x58509c1795770E1B4Cd6F9Fa25406ed92D013CEe", + "6265189368" + ], + [ + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", + "8716225" + ], + [ + "0x585eb56057437344F2AF49d349c470B8b932a394", + "1110407196" + ], + [ + "0x58737A9B0A8A5c8a2559C457fCC9e923F9d99FB7", + "41517783747" + ], + [ + "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00", + "8234475934" + ], + [ + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", + "471807204836" + ], + [ + "0x58e4e9D30Da309624c785069A99709b16276B196", + "5527620" + ], + [ + "0x58eF5B3A4c77a9b95e863F027a13C96F56e43051", + "3907239866" + ], + [ + "0x59305Dcf01419A23c94af97b8fe90441F58C78CD", + "2269625513" + ], + [ + "0x597D01CdfDC7ad72c19B562A18b2e31E41B67991", + "21187953350" + ], + [ + "0x59b0Bc0E790085A90D3EE4D0be139841C24aFaf8", + "379430" + ], + [ + "0x59b6E0185a290aC466A6c4B60093e33afeC7169b", + "6159630" + ], + [ + "0x59bc48f91747E64E6285aAb036800EB221E76135", + "1673598399" + ], + [ + "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", + "39503376593" + ], + [ + "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef", + "1031220568794" + ], + [ + "0x5a1675846387F82753d9f0E09acFCccd51270fb4", + "2" + ], + [ + "0x5A25455Cf1c5309FE746FD3904af00e766Eca65f", + "61487053262" + ], + [ + "0x5A2B016c641742FB97a75C0d4c22B2A637Ddf4B6", + "1846414343" + ], + [ + "0x5a2c17CEbE721e6Abd167FD0EDF9d3CE4b176A5D", + "9992" + ], + [ + "0x5a393c476Ac8AeB417BF47b3C3C5a7c9532a230D", + "340534202" + ], + [ + "0x5a57107A58A0447066C376b211059352B617c3BA", + "3248309" + ], + [ + "0x5a57711B103c6039eaddC160B94c932d499c6736", + "12913282012" + ], + [ + "0x5A7F487D4A9894583DE2Dbf3114F46695DD0b7F1", + "83886" + ], + [ + "0x5ab404ab63831bFcf824F53B4ac3737b9d155d90", + "4340" + ], + [ + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", + "12605135175" + ], + [ + "0x5acfbbF0aA370F232E341BC0B1a40e996c960e07", + "44774853" + ], + [ + "0x5ae019F7eE28612b058381f4Fea213Cc90ee88A4", + "90412880" + ], + [ + "0x5B0fD17be82d7b3DdB16018abd6b65510724e5d3", + "151878960" + ], + [ + "0x5B1B0349B3a668c75cc868801A39430684e3f36A", + "5273565158" + ], + [ + "0x5B29fD05C664e2806a3bd4cdAde11A64bD9E2873", + "28743602" + ], + [ + "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e", + "9030930264" + ], + [ + "0x5B435be574D63EBD1a502a23948c7a50832e0e24", + "57422462" + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "162425254926" + ], + [ + "0x5b5910186657F47BF46ee1776977D1Dc1c280C09", + "20280129647" + ], + [ + "0x5bc3E9826Edeb1722319792b0Ff56dFa41167648", + "1937141704" + ], + [ + "0x5bEe7135d309838166e62aCd74Db73ffb1D417c5", + "58" + ], + [ + "0x5c0D1c1FB6D4172A8EEf115DC31Fb2194d241E7c", + "8251843" + ], + [ + "0x5c5bDAFc0ACe887B422BD123C49aEA89E5d00671", + "2741874525" + ], + [ + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", + "6099828444" + ], + [ + "0x5C6cE0d90b085f29c089D054Ba816610a5d42371", + "38431277723" + ], + [ + "0x5C6D32CbcB99722e6295C3f1fb942F99e98394E8", + "543754690894" + ], + [ + "0x5c9d09716404556646B0B4567Cb4621C18581f94", + "334287187580" + ], + [ + "0x5Cb12a681ca9573925A5969296Cf15e244b8bddB", + "1689253" + ], + [ + "0x5CE307dc1722Ac07d2F1D98D408c7cAf9ea76A16", + "27003762972" + ], + [ + "0x5D120E0929DBbf2315c97A4D93067E2dD9128cE4", + "1749941429" + ], + [ + "0x5d12B49c48F756524162BB35FFA61ECEb714280D", + "99044" + ], + [ + "0x5d48f06eDE8715E7bD69414B97F97fF0706D6c71", + "1460460863791" + ], + [ + "0x5D9183A638Eaa57a0f4034DdCaDC02DB4A305c2f", + "2814094560" + ], + [ + "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", + "10156821650" + ], + [ + "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", + "84850273565" + ], + [ + "0x5de1F0BC895c27A0c1f7E20A74016E9aE3bC3B2b", + "61901890" + ], + [ + "0x5dfbB2344727462039eb18845a911C3396d91cf2", + "2513" + ], + [ + "0x5e4c21c30c968F1D1eE37c2701b99B193B89d3f3", + "1" + ], + [ + "0x5E4fa37a2308FE6152c0B0EbD29fb538A06332b8", + "305949823" + ], + [ + "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B", + "5977737550" + ], + [ + "0x5e64c426D3521da970BDFdb4b51EAbEb79fF2D3b", + "70305516284" + ], + [ + "0x5e68BB3dE6133baeE55EEB6552704dF2EC09A824", + "15627700938" + ], + [ + "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6", + "2" + ], + [ + "0x5ea7ea516720a8F59C9d245E2E98bCA0B6DF7441", + "22818859596" + ], + [ + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", + "57617684302" + ], + [ + "0x5eC5e26D5304EF62310b5bC46A150d15E144e122", + "1229576666972" + ], + [ + "0x5ec6bC92395bFE4dFb8F45cb129AC0c2F290F23d", + "38391853142" + ], + [ + "0x5Ed417274E1acd3A1Fd2c9d9B37eFD5c076954E4", + "51137021316" + ], + [ + "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2", + "13419826" + ], + [ + "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391", + "19481500469" + ], + [ + "0x5eE72CD125e21b67ABFf81bBe2aCE39C831ce433", + "1" + ], + [ + "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "62672894779" + ], + [ + "0x5F045d4CC917072c6D97440b73a3d65Cb7E05e18", + "449176" + ], + [ + "0x5f37479c76F16d94Afcc394b18Cf0727631d8F91", + "211608430745" + ], + [ + "0x5f3DF357144f748d7d53F30719A6e4040E2C7D04", + "2" + ], + [ + "0x5f683bd8E397e11858dAB751eca248E5B2afc522", + "12391750536" + ], + [ + "0x5F86078B14a8Aa7C9890e55A7051a26Ffd210256", + "127677885577" + ], + [ + "0x5FA8F6284E7d85C7fB21418a47De42580924F24d", + "1122055231" + ], + [ + "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", + "604233644" + ], + [ + "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "230057326178" + ], + [ + "0x5ff23E1940e22e6d1AaD8AF99984EC9821BAA423", + "1171413896666" + ], + [ + "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA", + "984865886" + ], + [ + "0x6040FDCa7f81540A89D39848dFC393DfE36efb92", + "3511796108" + ], + [ + "0x609A7742aCB183f5a365c2d40D80E0F30007a597", + "147340046" + ], + [ + "0x60D788A5267239951E9AFD1eB996B3d5EBff2948", + "11943530402" + ], + [ + "0x60e8b62C7Da32ff62fcd4Ab934B75d2d28FE7501", + "1377215809148" + ], + [ + "0x60F7a7802c9b7Dcc0b19eD670C2136041dfDc673", + "26789040" + ], + [ + "0x610656A1a666a3a630dA432Bc750BC0bE585AEB4", + "2732747864" + ], + [ + "0x6106e7b682296E3E67DE45DF3294A706b36a51a6", + "1825863624" + ], + [ + "0x6108565786d03CFC962086a66ee4E8C69560ebe2", + "2436549120" + ], + [ + "0x6112d6F5B955298eD8704Faf988B87A33428CCa6", + "1696173403" + ], + [ + "0x614D1D40e3b2b1601625E739bfe8Bdf85133B459", + "15111008618" + ], + [ + "0x61572ca1C6d53011e9B5318aa26dd285C7df6997", + "278698834" + ], + [ + "0x6196c2e7149c134CFd53cf8D819895532189Ce1D", + "51800213" + ], + [ + "0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF", + "435215255983" + ], + [ + "0x61e2ee7D23446b5263D735f2Ad58d97904676720", + "288707718" + ], + [ + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", + "2761359703503" + ], + [ + "0x61FEfD3706F7a6a62e72A3E2cF0d716e8dE9DF98", + "238207601" + ], + [ + "0x62289050DdF0f302cFDe7fc215f068738d510C2C", + "95" + ], + [ + "0x6266431213542Bb43beB87d59565d710bdf15c38", + "49371696113" + ], + [ + "0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A", + "258182802" + ], + [ + "0x627Fe83cf1485f906bd4dCfA4C24c363593162dC", + "4351422617" + ], + [ + "0x62A32ea089109e7b8f0fE29d839736DDB0C753F6", + "3840024417" + ], + [ + "0x62F96Bcc36Dccf97e1E6c4D2654d864c95d76335", + "9447252887" + ], + [ + "0x6301Add4fb128de9778B8651a2a9278B86761423", + "26963291792" + ], + [ + "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", + "420694200000" + ], + [ + "0x634118B21fbC1A53B0D7bcC2fcFa2E735a3B0200", + "15100000" + ], + [ + "0x6343B307C288432BB9AD9003B4230B08B56b3b82", + "14465653488" + ], + [ + "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", + "2963074788" + ], + [ + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", + "2148610332" + ], + [ + "0x63C2dc8AFEdB66c9C756834ee0570028933E919C", + "2601366994" + ], + [ + "0x64298A72F4E3e23387EFc409fc424a3f17356fC4", + "2806" + ], + [ + "0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1", + "546134745139" + ], + [ + "0x647bC16DCC2A3092A59a6b9F7944928d94301042", + "5802103979" + ], + [ + "0x647EAf826c6b7171c4cA1efb59C624AAf2553CE1", + "32576149546" + ], + [ + "0x648457FC44EAAf5B1FeB75974c826F1ca44745b7", + "414644433402" + ], + [ + "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", + "166849753532" + ], + [ + "0x64e149a229fa88AaA2A2107359390F3b76E518AD", + "457160206" + ], + [ + "0x6525e122975C19CE287997E9BBA41AD0738cFcE4", + "3756342388" + ], + [ + "0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8", + "357079390" + ], + [ + "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a", + "8240411910" + ], + [ + "0x65D67E60F981ACCD5a8D9F1d20f2Dc23EF40B498", + "186001607" + ], + [ + "0x65F992c16CB989B734A1d3CCAf13713391afa6d3", + "63087845722" + ], + [ + "0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22", + "988268302" + ], + [ + "0x6631E82eDD9f7F209aEF9d2d09fFc2be47d8Ae43", + "2851903358" + ], + [ + "0x66435387dcE9f113Be44d5e730eb1C068B328E93", + "398076897819" + ], + [ + "0x6647bb406CA87924F7039C67e5D01f3763fa888B", + "413476672" + ], + [ + "0x6649f72A0F12Ca03AE6b3D672662E9307C948D98", + "283595452" + ], + [ + "0x664D448A984DAe1e829BF71e837faCd7b657EE10", + "655410859" + ], + [ + "0x6661b9b527F4Dad25a97ca4Fc9B29F90f0760cFF", + "538581" + ], + [ + "0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD", + "3643976100" + ], + [ + "0x66B0115e839B954A6f6d8371DEe89dE90111C232", + "47234017569" + ], + [ + "0x66D47630Ac454275745b581a305d7C8Af1218181", + "25125595" + ], + [ + "0x66e4c7e22667A6D80F0C726a160E5DeE9A37223C", + "9946889240" + ], + [ + "0x66f049111958809841Bbe4b81c034Da2D953AA0c", + "9" + ], + [ + "0x66F6Ac1E4c4c8aE7D84231451126f613bFE61D98", + "5" + ], + [ + "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD", + "2927754" + ], + [ + "0x672cE9a5A136B5BE11215Ce36D256149cdf47914", + "187018686" + ], + [ + "0x6765e13B9d7Bfe31B2CaDD379e5962FC9Be51B64", + "2245044777" + ], + [ + "0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6", + "184767424279" + ], + [ + "0x677c9380B3043d2a0614003277b7265d5e421471", + "38288938796" + ], + [ + "0x67870422E6bAe4e8a5BFdF2Dbe01ae430b9bf803", + "22462977322" + ], + [ + "0x679B4172E1698579d562D1d8b4774968305b80b2", + "140899140004" + ], + [ + "0x67B549ca12bC83ECb5850006f366727F67d54001", + "6178431126" + ], + [ + "0x67dfAF31f444FaC36d4B1979014A92e6152D2FFA", + "2710524288" + ], + [ + "0x67f843931a71A6511B15B3DcE04c7729Cf05eCB6", + "77" + ], + [ + "0x68512d66e6386369686f58a912c86b390b9299d0", + "20" + ], + [ + "0x68572eAcf9E64e6dCD6bB19f992Bdc4Eff465fd0", + "2677019149" + ], + [ + "0x68575571E75D2CfA4222e0F8E7053F056EB91d6C", + "385519014" + ], + [ + "0x68781516d80eC9339ecDf5996DfBcafb8AfE8e22", + "4500000000" + ], + [ + "0x6887b5852847dD89d4C86dFAefaB5B0B236DCD8a", + "6043664172" + ], + [ + "0x688b3a3771011145519bd8db845d0D0739351C5D", + "16338250" + ], + [ + "0x689Ae6AA4F778B2C324E57440CFEa26acB6b2D0A", + "19595613393" + ], + [ + "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07", + "64319946" + ], + [ + "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3", + "785475450245" + ], + [ + "0x695e4494Bc9D802d4EF182944da80C7803903F75", + "214240" + ], + [ + "0x69b03bFC650B8174f5887B2320338b6c29150bCE", + "30605259631" + ], + [ + "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2", + "17047334367" + ], + [ + "0x69CeFF474F4C0856df11f983dcA8a43b40AEA6aB", + "13157852396" + ], + [ + "0x69e02D001146A86d4E2995F9eCf906265aA77d85", + "18527636773" + ], + [ + "0x6a3524676291A84a68BBB7f379d2F6fB9c89CDe0", + "3456660214" + ], + [ + "0x6a3e09694bDF65dA8F6bF6bfaD147811100f4C40", + "10801892809" + ], + [ + "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4", + "972008439" + ], + [ + "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", + "18929639013" + ], + [ + "0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b", + "1063657068" + ], + [ + "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", + "142552763288" + ], + [ + "0x6A9D63cBb02B6A7D5d09ce11D0a4b981Bb1A221d", + "1965220435" + ], + [ + "0x6ab6828D97289c48C5E2eA59B8C5f99fffA1e3fd", + "128324713" + ], + [ + "0x6AB880AFd1E0C7786cc5D05F4FD9b17761768da8", + "1819290695" + ], + [ + "0x6ad21a192AE398a8A195cc4655836b82c9c18a3e", + "1774169134" + ], + [ + "0x6Afbf03Fe3Bea05640da67Ae9F0B136c783e315d", + "56575393524" + ], + [ + "0x6b11790463C99EE403FBDc8371F7c5bD633544f8", + "2532992418" + ], + [ + "0x6b434f8e80E8B85A63A9f4fF0A14eB9568a827c8", + "2" + ], + [ + "0x6b4bd4c5bc6eD61a92C7bF30cA834b7A1ba26ecA", + "59619122825" + ], + [ + "0x6b6657a973644faaff1c5162D53C790C7E6a986d", + "18035785151" + ], + [ + "0x6B797A556cefD9e5c916B7fa1854ed0813867441", + "256216780219" + ], + [ + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", + "328581617" + ], + [ + "0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F", + "566852544" + ], + [ + "0x6C01ec9622e50799d62ca076F2e2aa34DC840D5B", + "4616" + ], + [ + "0x6c3E007377eFfd74afE237ce3B0Aeef969b63C91", + "2" + ], + [ + "0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd", + "37983591232" + ], + [ + "0x6C8c8050a9C551B765aDBfe5bf02B8D8202Aa010", + "8804127079" + ], + [ + "0x6ca3fB52498f02C85c48cF250f5972aDD97524A9", + "300000000" + ], + [ + "0x6CD83315e4c4bFdf95D4A8442927C018F328C9fe", + "4337281438" + ], + [ + "0x6d28De5368C09159F57A3a1576B94628E57362e0", + "2221416311" + ], + [ + "0x6D42977A60aEF0de154Dc255DE03070A690cF041", + "182256251" + ], + [ + "0x6D5194ECE4C937B58EE00c4238eF61E6b98eaCE8", + "22239039545" + ], + [ + "0x6dAE3f488035023cf7dF5FA51e685C3B3CbE50d7", + "140417517" + ], + [ + "0x6dd1E0028eF0a634b01E13B2291949255610b38f", + "14094352" + ], + [ + "0x6Dd407f05C032Ae2D5c1E666E4aA3570263b306f", + "39439078862" + ], + [ + "0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10", + "21627312722" + ], + [ + "0x6e47663a6467abA30BF4cfc3Bc659eEdf631db59", + "117259301" + ], + [ + "0x6E4ef712deCBe435C2E7edCB2Ce4A3c7fa46317a", + "42455949" + ], + [ + "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E", + "2176666667" + ], + [ + "0x6E7427155f14c4A826B5E7c8aF4506220A0895D2", + "2760322" + ], + [ + "0x6E7efec7b53332F06647005B0508D5e79D3674D7", + "2438992730" + ], + [ + "0x6ee25671aa43C7E9153d19A1a839CCbBBE65d1EC", + "11830275678" + ], + [ + "0x6eec856e1661Fd6B2345380843c3603Dd7A6A94C", + "1" + ], + [ + "0x6ef8C88E31F36b99afD4584e25D4f69B0793187b", + "4545274999" + ], + [ + "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9", + "17587036745" + ], + [ + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", + "92063509426" + ], + [ + "0x6F98dA2D5098604239C07875C6B7Fd583BC520b9", + "81825207835" + ], + [ + "0x6F9ceE855cB1F362F31256C65e1709222E0f2037", + "642055137257" + ], + [ + "0x6fa54cbFDc9D70829Ac9F110BB2B16D8c64fA91C", + "105290343631" + ], + [ + "0x6FAdD627a52b8De209403191eD193838152e974b", + "13862456616" + ], + [ + "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", + "31416375624" + ], + [ + "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54", + "201651307" + ], + [ + "0x6fE4aceD57AE0b50D14229F3d40617C8b7d2F2E1", + "2011860" + ], + [ + "0x6ff09a9A7af5fdC5754a732F5459E466b16452fa", + "41" + ], + [ + "0x702aA86601aBc776bEA3A8241688085125D75AE2", + "434401770" + ], + [ + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", + "169017409491" + ], + [ + "0x708E5804D0e930Fac266d8B3F3e13EdbA35ac86E", + "4" + ], + [ + "0x70a9c497536E98F2DbB7C66911700fe2b2550900", + "3684517877" + ], + [ + "0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793", + "1349345610" + ], + [ + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", + "20343353170" + ], + [ + "0x70c65accB3806917e0965C08A4a7D6c72F17651A", + "160415719144" + ], + [ + "0x7105401E7dA983F1310A59DBa35E5B92ff59bA0C", + "17037" + ], + [ + "0x711F800E64Ec8d2bd66d97E932B994Beef474d31", + "151898034550" + ], + [ + "0x717E61157ce63C7cd901dCb2F169f019D16c5aC9", + "36765375" + ], + [ + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", + "1351889814853" + ], + [ + "0x718B2c8110412b0968F7Bfc97f8733d6E063D84e", + "270503" + ], + [ + "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8", + "1544154625090" + ], + [ + "0x71a15Ac12ee91BF7c83D08506f3a3588143898B5", + "3106502288" + ], + [ + "0x71ad3B3bAc0Ab729FE8961512C6D430f34A36A34", + "239885008546" + ], + [ + "0x71D8472C58D77F2220C333149BdF8b843C314E99", + "1278468475" + ], + [ + "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", + "5" + ], + [ + "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", + "435297010767" + ], + [ + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", + "1292004140900" + ], + [ + "0x721f5D24c041d02f9316245D96DAc0094429Ce53", + "82803752882" + ], + [ + "0x723FfaFc402702f9DaD94fd10e8eDecAaAbA90aC", + "1357604575" + ], + [ + "0x72520D730efABFB090ed800f671F751f70E8e64f", + "13420719485" + ], + [ + "0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246", + "1144957111" + ], + [ + "0x726C46B3E0d605ea8821712bD09686354175D448", + "54573628954" + ], + [ + "0x728897111210Dc78F311E8366297bc31ac8FA805", + "16505794060" + ], + [ + "0x72a97cF2501aaFDCbB62afb7Bd6E4C237fD705a2", + "2" + ], + [ + "0x72aEae04BF7746803dc0d7593928Cc6B68D2Ea6d", + "8719577690" + ], + [ + "0x72BC9bE9cc199cE211b02F10487b740f8fc0F33D", + "4" + ], + [ + "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2", + "7096838972" + ], + [ + "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4", + "65429223673" + ], + [ + "0x72ea7c70c5663D4B8b9E61282f98fC26c21d5c9E", + "86594663" + ], + [ + "0x72ECeD3D01e8854b1f6D79d3c3a507244d6b770a", + "395986332" + ], + [ + "0x72f030d92ed78ED005E12f51D47F750ac72C3ce9", + "894946081" + ], + [ + "0x730a5682f0048b7937455bDCb15f51CCA1814084", + "9351792" + ], + [ + "0x7377bC02C27ea5E5D370EeE934De1576eE1952Fe", + "36487224947" + ], + [ + "0x7379a8357E5791Fbd3B77c3Ba380F7FE850C13f0", + "4212217851" + ], + [ + "0x73C91af57C657DfD05a31DAcA7Bff1aEb5754629", + "49112573767" + ], + [ + "0x73Cbc02516f5F4945cE2F2fACf002b2c6aA359e7", + "22003048972" + ], + [ + "0x73E9f9099497Dd0593C95BBc534bdc30FD19fA86", + "1065819639" + ], + [ + "0x74231623D8058Afc0a62f919742e15Af0fb299e5", + "21819609360" + ], + [ + "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347", + "77819774469" + ], + [ + "0x743025F4e7f64137137ca18567cd342b443a0aa5", + "339598073" + ], + [ + "0x7463154a39d8F6adc38fFC3f614a9f32E63a1735", + "1523215867" + ], + [ + "0x74730D48B5aAD8F7d70Ba0b27c3f7d3aA353A64A", + "1359449933" + ], + [ + "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", + "106405367" + ], + [ + "0x749461444e750F2354Cf33543C941e87d747f12f", + "14940730270" + ], + [ + "0x74B654D9F99cC7cdB7861faD857A6c9b46CF868C", + "246992571" + ], + [ + "0x74Bcf1a4c12Fc240773102C76Ea433502c188d84", + "8049485650" + ], + [ + "0x750Ea1907dC2A80085da079A7Db679EB57cbcb21", + "119834055" + ], + [ + "0x753e0Fb90EC97Cf202044d4c3B1F759210f4D8D1", + "2703301074" + ], + [ + "0x7550f43a91579C7e6dBeEee5AA34E9Fa40Ce7F62", + "152959083" + ], + [ + "0x7568614a27117EeEB6E06022D74540c3C5749B84", + "4" + ], + [ + "0x758917f2c8D3192FC9f109fE1EE0556808248CC0", + "1" + ], + [ + "0x75AeE7D5E8f23f2a562a4A5c5e9370A945f47Cc7", + "32929958" + ], + [ + "0x75b3D92d34140b2A98397911BdED09eC70F5F58f", + "23622823955" + ], + [ + "0x75d5CEd39b418D5E25F4A05db87fCC8bCEED7E66", + "143804366" + ], + [ + "0x75e4E9423E425D902D78e0f909BC8BDE7E86e38e", + "967272" + ], + [ + "0x75e6E04eB9BB5e4C1E8A57F3C6Eb89D7BfF63a14", + "1" + ], + [ + "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515", + "8500812354" + ], + [ + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", + "160656809730" + ], + [ + "0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000", + "36208008531" + ], + [ + "0x768DeC0cdCCF66eF7036fB8d2cE6673b73F9eA13", + "23978598654" + ], + [ + "0x768F2A7CcdFDe9eBDFd5Cea8B635dd590Cb3A3F1", + "210024767537" + ], + [ + "0x7690704d17fAeaba62f6fc45E464F307763445de", + "60657287981" + ], + [ + "0x76a014267b1D9e375D4A84554504E366C7De1167", + "96898710464" + ], + [ + "0x76A63B4ffb5E4d342371e312eBe62078760E8589", + "487190024" + ], + [ + "0x76aD595A4226EA608A3111901eBb6781692f4624", + "3062596041" + ], + [ + "0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc", + "7154670678" + ], + [ + "0x76d9546E42951BdbFb45b3FEA09dc381183Fff1A", + "1243356857" + ], + [ + "0x76e3D82B0c49f1C921d8C1093cd91C20Ba23740d", + "4918531573" + ], + [ + "0x77029090e07F7D144538C74cD3B7EcF674d82f62", + "24106797006" + ], + [ + "0x771433c3bB5B9eF6e97D452d265cffF930E6DdDB", + "3" + ], + [ + "0x774E9010cBbB1C5B07D6Dd443939305707Cc8dA7", + "35290948655" + ], + [ + "0x775B04CC1495447048313ddf868075f41F3bf3bB", + "1643140381" + ], + [ + "0x7761377f59863DDcaF83A7BC5E6534c8991Bf80f", + "42074940508" + ], + [ + "0x777EA5d7A90D7895D4db96Fb35BC13f37A329EB0", + "38651974" + ], + [ + "0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B", + "371532967" + ], + [ + "0x77BD7d6D8E6cB76032FF6a96921D81a98Baf3637", + "2" + ], + [ + "0x77E3CF7d9051f7e76889EC11D9Ab758F9dedc5c4", + "21979680047" + ], + [ + "0x7809792a0Ac72024Af361e0FC195B0066B25A76D", + "759075219" + ], + [ + "0x78320e6082f9E831DD3057272F553e143dFe5b9c", + "910825429" + ], + [ + "0x7833606Df8d790FcFA7494d0C254125C26d723D7", + "3274210755" + ], + [ + "0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E", + "26670365482" + ], + [ + "0x7893b13e58310cDAC183E5bA95774405CE373f83", + "67233932472" + ], + [ + "0x78a9Ab428e950D9E8F63De04833bd90D5BFD4fDA", + "1295358562" + ], + [ + "0x78b606B8D65498ab40c7F7995Fe83887238CC968", + "193513257087" + ], + [ + "0x78Bf8b271510E949ae4479bEd90c0c9a17cf020b", + "209564445165" + ], + [ + "0x7902b867Af288b1b33dFcC6D022B284063eF9976", + "1621579668891" + ], + [ + "0x79384685684121f64725594B84AE797AB5f797Ab", + "275913147" + ], + [ + "0x794f3b2CA85B97e2A2Fe57Acc277E96F549C0188", + "50000000" + ], + [ + "0x7957d651D862c08D257b85Aa54a51006712fac0A", + "8483235" + ], + [ + "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54", + "24273580464" + ], + [ + "0x79Af81df02789476F34E8dF5BAd9cb29fA57ad11", + "432794329" + ], + [ + "0x79ba2BD849cD811bCC4A6ddBe6162c7672A3ACd4", + "2968597005" + ], + [ + "0x7A25275EAe1aAaF0D85B8D5955B6DbC727A27EaC", + "1411789284" + ], + [ + "0x7A35147dCEE2db85E1407f08027F896b766364Ee", + "108203717897" + ], + [ + "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E", + "838901128" + ], + [ + "0x7a59ab141ab5fD585760386002dC2E9ec8A217e9", + "154180718" + ], + [ + "0x7A6161927f483c8E0d979F0572dA1c6fa8897DE7", + "100000000" + ], + [ + "0x7a638C02BA703a6476e3F397e78c18F677803ef6", + "93163267" + ], + [ + "0x7A63D7813039000e52Be63299D1302F1e03C7a6A", + "30773417" + ], + [ + "0x7A6530B0970397414192A8F86c91d1e1f870a5A6", + "3197434875" + ], + [ + "0x7aA55D3965455d50f779991783fD54178aBCa185", + "13116008731" + ], + [ + "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", + "2" + ], + [ + "0x7ac34681F6aAeb691E150c43ee494177C0e2c183", + "1026" + ], + [ + "0x7Ace5390CAa52Ea0c0D1aB408eE2D27DCE3f2711", + "10389385804" + ], + [ + "0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD", + "18328908498" + ], + [ + "0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E", + "1229335191" + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "220146521926" + ], + [ + "0x7B2d2934868077d5E938EfE238De65E0830Cf186", + "769961497480" + ], + [ + "0x7B5Fa2f03747326A5Eccd0e6d08329732Ed1E605", + "391839827" + ], + [ + "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4", + "1666627696" + ], + [ + "0x7bB955249d6f57345726569EA7131E2910CA9C0D", + "4" + ], + [ + "0x7bC93c819a168F1F684C17f4F44aFA9cB52d5184", + "461818592" + ], + [ + "0x7bd5d9279414A7d5c3B17916A916F0C7Fd2c593B", + "3" + ], + [ + "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc", + "33784871516" + ], + [ + "0x7bf98085c8336a374436C91fcf664595f9ff3FD7", + "22966030698" + ], + [ + "0x7C1effB343707fFdcaBd91Ee417C86Ab07dFd41c", + "131796447" + ], + [ + "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F", + "16960278064" + ], + [ + "0x7c4430695c5F17161CA34D12A023acEbD6e6D35e", + "418228" + ], + [ + "0x7c5534E88F8A7b3F81290a4372D85dbD4b9B2ae2", + "978758177553" + ], + [ + "0x7c6236c2fBe586E0E8992160201635Db87B7E543", + "1557398129" + ], + [ + "0x7Ca44C05AA9fcb723741CBf8D5c837931c08971a", + "1" + ], + [ + "0x7CA6217b72B630A5fF23c725636Ec2daf385C524", + "1941592599" + ], + [ + "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3", + "256072517" + ], + [ + "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16", + "7099707331" + ], + [ + "0x7Cc8880e3d74611e301fAaA5C8a05d3D8FCB3F18", + "3470079371975" + ], + [ + "0x7CCaF96bD91654998F286616717F72e0824Ec141", + "6619399293" + ], + [ + "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", + "1495650000" + ], + [ + "0x7cd222530d4D10E175c939F55c5dC394d51AaDaA", + "1941428197938" + ], + [ + "0x7cd5F8291eeB36D2998c703E7db2f94997fCB1F9", + "28657471412" + ], + [ + "0x7CDFc314b89a851054A9acC324171bF8a31593E9", + "695360073596" + ], + [ + "0x7Cf09D7A9A74f746EDcb06949B9d64bCd9D1604f", + "1" + ], + [ + "0x7D1589685F02502e628E60394D21AAF835EE25EE", + "9903943749" + ], + [ + "0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677", + "6" + ], + [ + "0x7D31bf47ddA62C185A057b4002f1235FC3c8ae82", + "400442104" + ], + [ + "0x7d50bfeAD43d4FDD47a8A61f32305b2dE21068Bd", + "2385" + ], + [ + "0x7D6261b4F9e117964210A8EE3a741499679438a0", + "21582792710" + ], + [ + "0x7D6A2f6D7C2F7Dd51C47b5EA9faA3ae208185eC7", + "69684902944" + ], + [ + "0x7D6de90cc5eFF4bEf577C928bed96c462c583d01", + "215760566" + ], + [ + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + "2" + ], + [ + "0x7dE837cAff6A19898e507F644939939cB9341209", + "109233694840" + ], + [ + "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", + "22023088835" + ], + [ + "0x7E07bEeA829a859345A1e59074264E468dB2cf64", + "7631317" + ], + [ + "0x7E860aBa712dAb899A00d1D30C7e05AC41FDF3f3", + "23382250210" + ], + [ + "0x7eaF877B409740afa24226D4A448c980896Be795", + "3503040254" + ], + [ + "0x7F01A8B42a1243C705DBc74964125755833ef453", + "98893334987" + ], + [ + "0x7F36BAC1BF73859bbEEBc5Fa46e78e4E7B39952C", + "169018081" + ], + [ + "0x7f538566f85310C901172142E8a9a892f0EAf946", + "18136469267" + ], + [ + "0x7F594CF111DADb003812729054050239101B4621", + "12479530140" + ], + [ + "0x7f5CCFb50D9087A572A80eC2585bdE8e0377625C", + "2499889775" + ], + [ + "0x7f7ecEeDE5F97179883Ef8F30eDF24C50AA5c597", + "216523587" + ], + [ + "0x7F81D5AF291481AFC4A9b5744286e7f49d20AFfF", + "8980233152" + ], + [ + "0x7F82e84C2021a311131e894ceFf475047deD4673", + "5214054329" + ], + [ + "0x7F91212b8403ae7A7eaBe88C8eAf98002f0A3bD3", + "13593601707" + ], + [ + "0x7fD4969BE7ff75E9E8cd3dea6911c54367F03774", + "1663044308" + ], + [ + "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70", + "3385" + ], + [ + "0x7fFadA80929a732f93D648D92cc4E052e2b9C4Aa", + "20853499" + ], + [ + "0x80077CB3B35A6c30DC354469f63e0743eeff32D4", + "447621215067" + ], + [ + "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5", + "203941099037" + ], + [ + "0x80281D33B56231Ea95a5b8F61cfD91ca052C7B5A", + "549024870" + ], + [ + "0x804Be57907807794D4982Bf60F8b86e9010A1639", + "7587269463" + ], + [ + "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81", + "100353511" + ], + [ + "0x807FE5922a2f5137601e8299A41055754EB83b21", + "39578784536" + ], + [ + "0x80893D541770DDe1c33df10d9ab2035800BA0B03", + "10831834536" + ], + [ + "0x808995E68A45b4D5a1ba61429882b47011E96c79", + "3" + ], + [ + "0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e", + "92829682529" + ], + [ + "0x80eC8c4e035A9A200155a3F8d3E5fD29b2d8Ca42", + "150682262" + ], + [ + "0x80efF130ddE6223a10e6ab27e35ee9456b635cCD", + "1068681923" + ], + [ + "0x80f900994D69b9012CE551543d26ebb5A8ADd14C", + "23709640667" + ], + [ + "0x80Fd357cAC78f7f70BDba65548e3b62982Eb31A7", + "349760027" + ], + [ + "0x8110331DBad6e7907F60B8BBb0E1A3af3dDb4BBd", + "1778541365" + ], + [ + "0x813de8BE827a526C271e5226AF912441d3b63700", + "22115337995" + ], + [ + "0x8168eb79738E9Fa034AB95B156047149277dc2f0", + "629448" + ], + [ + "0x81704Bce89289F64a4295134791848AaCd975311", + "280916616" + ], + [ + "0x81744feFDB94DE3A00DFE71623A63aB57BDED12E", + "12615219275" + ], + [ + "0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19", + "34935466284" + ], + [ + "0x81F3C0A3115e4F115075eE079A48717c7dfdA800", + "45600680646" + ], + [ + "0x81F45F896D8854007fd6E7C892A894804F8aD3cb", + "25891984563" + ], + [ + "0x820A2943762236e27A3a2C6ea1024117518895a5", + "85048190712" + ], + [ + "0x820cE800B58C7FAad586a335FD57a866Cc61B463", + "2921581045" + ], + [ + "0x821ACf4602B9D57Da21DEE0c3Db45e71143c0B45", + "1" + ], + [ + "0x82353d5D94ef75145D57C5109e8aD54D00Ff2459", + "29604540200" + ], + [ + "0x8242Cb3B1A95b20fF8c55ba280ECC6534e56Cdfd", + "13837341783" + ], + [ + "0x82610F2bbA3fC9b3207805b46E79F7db27C6af68", + "65485564996" + ], + [ + "0x828920Ee37fcF523a920290Fb9e23B3386382497", + "2540606518" + ], + [ + "0x828E31517612208483C25Ba70e1cDC89d89987Df", + "15901272" + ], + [ + "0x829148aBa1177C4b6A6A3dbcA3E165FD34094e1b", + "7176050" + ], + [ + "0x82eEfC94a9364620dd207D51Bf01038947A06f83", + "5124666830" + ], + [ + "0x82F402847051BDdAAb0f5D4b481417281837c424", + "5109479384" + ], + [ + "0x82fcd7cD3151b0ab9e4c00629f123D45AD17FA73", + "60594349864" + ], + [ + "0x8308E27C711C3f3e52E9FF52d91cA22459cF7b03", + "82932401382" + ], + [ + "0x8311a050b6E3C7a36760458734Efbc777e4D49c6", + "2364939" + ], + [ + "0x8325D26d08DaBf644582D2a8da311D94DBD02A97", + "8812229" + ], + [ + "0x832fBA673d712fd5bC698a3326073D6674e57DF5", + "1533994677" + ], + [ + "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751", + "82612852295" + ], + [ + "0x8366bc75C14C481c93AaC21a11183807E1DE0630", + "13602185044" + ], + [ + "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17", + "12887228054" + ], + [ + "0x8369E7900fF2359BB36eF1c40A60E5F76373A6ED", + "8798317646" + ], + [ + "0x838b1287523F8e1B8E5443941f374b418B2DB4Bc", + "11780902852" + ], + [ + "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", + "99437500" + ], + [ + "0x83C9EC651027e061BcC39485c1Fb369297bD428c", + "1167771103521" + ], + [ + "0x8421D4871C9d29cbf533ccbE569D8F94531d8C70", + "10110764547" + ], + [ + "0x842411AE8a8B8eC37bAd5e63419740a2854E6527", + "140990509" + ], + [ + "0x843f2C19bc6df9E32B482E2F9ad6C078001088b1", + "33054062713" + ], + [ + "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", + "5655545222" + ], + [ + "0x8456f07Bed6156863C2020816063Be79E3bDAB88", + "5645059280" + ], + [ + "0x84747165e0100cD7f9BdeB37d771E8d139f49e14", + "1510392124" + ], + [ + "0x848aB321B59da42521D10c07c2453870b9850c8A", + "52685049" + ], + [ + "0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b", + "313747868" + ], + [ + "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e", + "11202058311" + ], + [ + "0x850010F41EF5C2a3cf322B9Ab249DbdA7c72850B", + "3" + ], + [ + "0x8506B01FEC584cCaEACC7908D47725cf93E40680", + "5201001331" + ], + [ + "0x85312D6a50928F3ffC7a192444601E6E04A428a2", + "1179375906" + ], + [ + "0x853AebEc29B1DABA31de05aD58738Ed1507D3b82", + "5" + ], + [ + "0x85789daB691cFb2f95118642d459E3301aC88ABA", + "13082483" + ], + [ + "0x85971eb6073d28edF8f013221071bDBB9DEdA1af", + "4742475447" + ], + [ + "0x85bBE859d13c5311520167AAD51482672EEa654b", + "84419321471" + ], + [ + "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008", + "22844868" + ], + [ + "0x85d365405dFCfEeCDBD88A7c63476Ff976943C89", + "374672277" + ], + [ + "0x85Eada0D605d905262687Ad74314bc95837dB4F9", + "3" + ], + [ + "0x85EE4299c926b92412DAde8f1E968f276d44c276", + "9" + ], + [ + "0x861d7FCC4AbA8A082f266E01eaaE0767834db7D3", + "5859426766" + ], + [ + "0x8639AFABa2631C7c09220B161D2b3d0d4764EF85", + "8324607" + ], + [ + "0x8675C7bc738b4771D29bd0d984c6f397326c9eC2", + "580553996" + ], + [ + "0x867DAa0A6728c5281bD8DaDA98894381290E058F", + "17180142248" + ], + [ + "0x867fE13b4dE1dCeA131e9cdE6a6b4848a13Ec469", + "11402163948" + ], + [ + "0x8683eeE814A51AE9A1f88666B086e57729A50885", + "1768076189" + ], + [ + "0x8687c54f8A431134cDE94Ae3782cB7cba9963D12", + "3640000000" + ], + [ + "0x86a2059273FA831334F57887A0834c056d7D93A5", + "52659438" + ], + [ + "0x86A41524CB61edd8B115A72Ad9735F8068996688", + "22676193096" + ], + [ + "0x86d6facD0C3BD88C0e1e88b4802a8006ec46997b", + "2" + ], + [ + "0x86FAd5a4C85EA88C3A8cC433fdCfDA326C35CA34", + "4828707584" + ], + [ + "0x87061D42aE66a7A7c181b8664EA53780146fd0e7", + "39635085975" + ], + [ + "0x8723af66e4377dF827b9135B8bca3D4352d0f130", + "188962876790" + ], + [ + "0x87316f7261E140273F5fC4162da578389070879F", + "9093184850" + ], + [ + "0x87376f16268A0b93055A6FbcBe94f093cb589B81", + "206" + ], + [ + "0x87546FA086F625961A900Dbfa953662449644492", + "46039777381" + ], + [ + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", + "1606700454892" + ], + [ + "0x877cEA592fd83Dcc76243636dedC31CA7ce46cE1", + "30936654073" + ], + [ + "0x877F43de346B7B9de9d6e0675EB5Ab2B6D7A3730", + "19227054986" + ], + [ + "0x87872F0514Dd26F88c775D975C6C6Cf0f0A95FE1", + "6402432866" + ], + [ + "0x8798C5Add2c42cE8E773a3104d23CA36b10c8C15", + "160335568581" + ], + [ + "0x87a62b0B5f0dcd16A3D92Fb19B188C9ff9F067C2", + "30035491904" + ], + [ + "0x87A774178D49C919be273f1022de2ae106E2581e", + "1151920" + ], + [ + "0x87b6c8734180d89A7c5497AB91854165d71fAD60", + "7873358244" + ], + [ + "0x87C5E5413d60E1419Fd70b17c6D299aA107EfB49", + "140058000000" + ], + [ + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", + "2" + ], + [ + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", + "4" + ], + [ + "0x883a920EF16e9E270754623dC86885B8d4AA5A11", + "11693017535" + ], + [ + "0x88673cb5439fE3Ea7eaA633C2E02fb07284e0765", + "38149" + ], + [ + "0x88696C4985f64Ea1EBfb9E46c1B47197F7a244AB", + "85612060" + ], + [ + "0x8890687b8042C08c7C09499FA5158D7AB9d326b5", + "6604450899" + ], + [ + "0x88b007D55D545737436741691f965Ca066E19e7f", + "1193075813" + ], + [ + "0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F", + "18789301" + ], + [ + "0x88b74128df7CB82eB7C2167e89946f83FFC907E9", + "510304" + ], + [ + "0x88cE2D4fB3cC542F0989d61A1c152fa137486d81", + "2" + ], + [ + "0x88F09Bdc8e99272588242a808052eb32702f88D0", + "1146138189" + ], + [ + "0x88F667664E61221160ddc0414868eF2f40e83324", + "31745477494" + ], + [ + "0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1", + "2017868855" + ], + [ + "0x891768B90Ea274e95B40a3a11437b0e98ae96493", + "7329847963" + ], + [ + "0x8926E5956d3b3fA844F945b26855c9fB958Da269", + "33184416" + ], + [ + "0x8950D9117C136B29A9b1aE8cd38DB72226404243", + "10502638743" + ], + [ + "0x8953738233d6236c4d03bCe5372e20f58BdaAEfE", + "90341955" + ], + [ + "0x895EDB1B773DBCB90BF56C3D4573Bae65A6398B1", + "109066975" + ], + [ + "0x897F27d11c2DD9F4E80770D33b681232e93e2B62", + "116901663" + ], + [ + "0x898a3Af0b87DD21c3DbFDbd58E800c4BDe16a153", + "3548309238" + ], + [ + "0x898ab6605409028c42399a6dc9C8ca8Ee164fE44", + "24603936791" + ], + [ + "0x898fF4Bab886E4E96F3F56B86692dD0DB204aC27", + "20736961223" + ], + [ + "0x8a17484daFAEE8490F14BA0fb3FAC75CAeD80296", + "1731113707" + ], + [ + "0x8A30D3bb32291DBbB5F88F905433E499638387b7", + "161527606289" + ], + [ + "0x8a342A60A20D1FF2abc119e87990A2799B187Be7", + "195593633" + ], + [ + "0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9", + "5297273727" + ], + [ + "0x8A733E7280776149c505447042e5e3125896c333", + "111090472" + ], + [ + "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", + "848668808" + ], + [ + "0x8A7f7C5b556B1298a74c0e89df46Eba117A2F6c1", + "42000000" + ], + [ + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", + "130728719897" + ], + [ + "0x8aC9DB9c51e0d077a2FA432868EaFd02d9142d53", + "5051253" + ], + [ + "0x8AD30D5e981b4F7207A52Ed61B16639D02aA5a21", + "4926812720" + ], + [ + "0x8aFBe56240124e139204A8b7B9687159159a7532", + "908563585" + ], + [ + "0x8afcd552709BAC70a470EC1d137D535BFa4FAdEE", + "140634950093" + ], + [ + "0x8b08CA521FFbb87263Af2C6145E173c16576802d", + "8221120995" + ], + [ + "0x8b2DbfDeD8802A1AF686FeF45Dd9f7BABfd936a2", + "81753677" + ], + [ + "0x8b3E26b83e8bb734Cd69cEC6CF1146d5a693c11F", + "85166412839" + ], + [ + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", + "12895715938" + ], + [ + "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048", + "2086790014" + ], + [ + "0x8B79D14316cf2317C61b4Ab66448d0529E5Fc024", + "1046151712" + ], + [ + "0x8b8Bd62E0729692B7400137B6bBC815c2cE07bcF", + "5646556697" + ], + [ + "0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5", + "615909395" + ], + [ + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", + "17703941192" + ], + [ + "0x8BB07e694B421433c9545C0F3d75d99cc763d74A", + "87185008256" + ], + [ + "0x8Bb62eF3fdB47bB7c60e7bcdF3AA79d969a8bE9C", + "15505841017" + ], + [ + "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", + "155624277788" + ], + [ + "0x8Bea73Aac4F7EF9dadeD46359A544F0BB2d1364F", + "882175042" + ], + [ + "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", + "1416158212" + ], + [ + "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1", + "653007167" + ], + [ + "0x8C39f76b8A25563d84D8bbad76443b0E9CbB3D01", + "496548843375" + ], + [ + "0x8c809670Ab1d2b9013954ECA0445c0DF621Cf8eF", + "41636396741" + ], + [ + "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9", + "284383552" + ], + [ + "0x8c919F4128c9e7a1D82ee94A1916D12A9C073bb4", + "25557680988" + ], + [ + "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b", + "1024118709" + ], + [ + "0x8cB2E021b8B00a023F66107962dDFf94BF873BF7", + "4069927610" + ], + [ + "0x8cc956430A4cbeC784524C0F187ccA3a4583aD83", + "50246238" + ], + [ + "0x8D02496FA58682DB85034bCCCfE7Dd190000422e", + "17886959459" + ], + [ + "0x8D06Ffb1500343975571cC0240152C413d803778", + "209653369867" + ], + [ + "0x8d1c3018d6EC8Dc3BFb8c85250787f0b4F745e43", + "687930895" + ], + [ + "0x8d3D6458a80669Eb74726B2EB23B9169083a51F1", + "20096326820" + ], + [ + "0x8d5380a08b8010F14DC13FC1cFF655152e30998A", + "13804897546" + ], + [ + "0x8D5A64B827724bE1A36EC0482381aE47905C6f08", + "18137034837" + ], + [ + "0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D", + "21560" + ], + [ + "0x8D8603aF066dFF5e6E83E44ca42e0A900fE9c221", + "366486417" + ], + [ + "0x8d9261369E3BFba715F63303236C324D2E3C44eC", + "896416144468" + ], + [ + "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8", + "1326446480" + ], + [ + "0x8Db5e5A0D431A21e1824788F3AE0a6C1b388c88d", + "10235873103" + ], + [ + "0x8dB7147b554B739058E74C01042d2aEA44505E2F", + "1295985562" + ], + [ + "0x8Db89388FA485c6b85074140B865C946Dc23f652", + "195975798" + ], + [ + "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051", + "68118515642" + ], + [ + "0x8E22B0945051f9ca957923490FffC42732A602bb", + "2751119254179" + ], + [ + "0x8E32736429d2F0a39179214C826DeeF5B8A37861", + "19935020526" + ], + [ + "0x8E41d0A4465Ed01E0941a31f254FcE0862d8c8C1", + "27489844749" + ], + [ + "0x8e5cdd1fAeBEAe48b2b2b05d874de75AE7ad720f", + "4284684091" + ], + [ + "0x8e653fFf3466368A47879C2775F78070B30226ad", + "214606326738" + ], + [ + "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", + "4300000000" + ], + [ + "0x8e84bA411f07E08Cf5580d14F33bf0Bd6bC303fF", + "435531683" + ], + [ + "0x8E8A5fb89F6Ab165F982fA4869b7d3aCD3E4eBfE", + "81034231957" + ], + [ + "0x8eB354f1CBb0AB7ef0D038883b4c1065e008453F", + "14443653543" + ], + [ + "0x8eCb6912d43a0e096501dEb215FE553DB89966dE", + "25434428571" + ], + [ + "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3", + "6217423664" + ], + [ + "0x8EDEDfe975Ee132A3A034483b2734CdA183153d7", + "39" + ], + [ + "0x8EFef6B061bdA1a1712DB316E059CBc8eBDCAE4D", + "2821297" + ], + [ + "0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab", + "3858714913" + ], + [ + "0x8f1076Ad980585af2B207bF4f81eB2334f025f9b", + "3317200480" + ], + [ + "0x8F21151D98052eC4250f41632798716695Fb6F52", + "74624182595" + ], + [ + "0x8f3466B326F8A365e4193245255CC2A95DFF6406", + "6818862174" + ], + [ + "0x8F9f529978f487cb7E0D4C60AE99de5C9Af1ce2e", + "738415098" + ], + [ + "0x8FdD0CF22012a5FEcDbF77eF30d9e9834DC1bf0A", + "15883103505" + ], + [ + "0x8Fe316B09c8F570Fd00F1172665d1327a2c74c7E", + "42288752" + ], + [ + "0x8fE7261B58A691e40F7A21D38D27965E2d3AFd6E", + "117884705851" + ], + [ + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", + "2" + ], + [ + "0x9008D19f58AAbD9eD0D60971565AA8510560ab41", + "291524996" + ], + [ + "0x90111E5EfF22fFE04c137C2ceb03bCD28A959b60", + "2050947666" + ], + [ + "0x9023a931b49D21ba4e51803b584fAC9EA4d91f67", + "76302312680" + ], + [ + "0x90746A1393A772AF40c9F396b730a4fFd024bB63", + "244153356" + ], + [ + "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", + "4731127660" + ], + [ + "0x90a69b1a180f60c0059f149577919c778cE2b9e1", + "7" + ], + [ + "0x90B113Cf662039394D28505f51f0B1B4678Cc3b5", + "704035597" + ], + [ + "0x90Bd317F53EE82fe824eD077fe93d05EF7295d5c", + "1731563657" + ], + [ + "0x90F15E09B8Fb5BC080B968170C638920Db3A3446", + "10480461744" + ], + [ + "0x90Fe1AD4F312DCCE621389fc73A06dCcfD923211", + "180814789337" + ], + [ + "0x912Bf1C92e0A6D9c81dA5E8cDC86250b9c7D501b", + "165204288" + ], + [ + "0x912F852EB064C6cD74037B76987a8D4a8877F428", + "19898277623" + ], + [ + "0x9142A918Df6208Ae1bE65e2Be0ea9DAd6067155e", + "6463487078" + ], + [ + "0x91953b70d0861309f7D3A429A1CF82C8353132Be", + "121756453403" + ], + [ + "0x91d60813323A8795e098b127c8ec9b2aD0F70dA1", + "2" + ], + [ + "0x91e2127Ac041da6aC322b6492Fd8872D0860aFE9", + "651129629" + ], + [ + "0x91e795eB6a2307eDe1A0eeDe84e6F0914f60a9C3", + "130360299578" + ], + [ + "0x9201cB516D87eD1EEBA072808EE8ac4a7894086d", + "4444638" + ], + [ + "0x920ba6012447697b61b71480b05Bf965566D019D", + "24368121423" + ], + [ + "0x923CC3D985cE69a254458001097012cb33FAb601", + "6048974526" + ], + [ + "0x9241089cf848cB30c6020EE25Cd6a2b28c626744", + "8120165086" + ], + [ + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", + "421678281144" + ], + [ + "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA", + "137700848396" + ], + [ + "0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB", + "30508743227" + ], + [ + "0x92D29e49e9fD72AB2A620885Cc3f160274fA2B8b", + "9601829797" + ], + [ + "0x930836bA4242071FEa039732ff8bf18B8401403E", + "22838586542" + ], + [ + "0x935A937903d18f98A705803DC3c5F07277fAb1B6", + "1507499334" + ], + [ + "0x9362c5f4fD3fA3989E88268fB3e0D69E9eeb1705", + "324094915" + ], + [ + "0x9383E26556018f0E14D8255C5020d58b3f480Dac", + "157490205241" + ], + [ + "0x9392e42722ACDa954984590b243eB358582991aA", + "12779553121" + ], + [ + "0x939B4fCCf5A9f1De3d8aB1429Ff4CBa901bD286f", + "5599111738" + ], + [ + "0x93Aa01eAb7F9D6C8511A4a873FEa19073334c004", + "21730836" + ], + [ + "0x93b34d74a134b403450f993e3f2fb75B751fa3d6", + "1885621" + ], + [ + "0x93be7761f4C7153BC462a50f9Eb5eB424c39c2CD", + "23882456103" + ], + [ + "0x93BfBA47375856Ca59FF5d920dbD16899836CF34", + "517103144" + ], + [ + "0x93d4E7442F62028ca0a44df7712c2d202dc214B9", + "56367945507" + ], + [ + "0x940476d877C2DBcC055D315707758860431494b0", + "85497609976" + ], + [ + "0x940baBb7377036989509Ec55D03FfD7c87CaC6a7", + "415001" + ], + [ + "0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f", + "1757207276" + ], + [ + "0x947992B897642F19E921d73a3900914f2fC9AC36", + "249903386" + ], + [ + "0x94A5582f35643Fb7B0C5B1DAB23B0057b2AD01f9", + "324963129" + ], + [ + "0x94BC010E232824Be9bab598cd46c3cbDB06Fa2a9", + "163193286" + ], + [ + "0x94d29Be06f423738f96A5E67A2627B4876098Cdc", + "12840854034" + ], + [ + "0x94e179dEF45b2B377610eE915aC513BA17685151", + "3193228131" + ], + [ + "0x94F335a00F00d79b26336Fa1c77bAb6ae96F08c5", + "106322258456" + ], + [ + "0x94fDfEA0f8E66f245D242796b735B6070D52F6dD", + "42695217326" + ], + [ + "0x950E5BbDADf252609F49b2Cd45222cD3280F35d6", + "629092" + ], + [ + "0x951b928F2a8ba7CE14Cc418cfEBfeE30A57294c3", + "68259250" + ], + [ + "0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa", + "16640713" + ], + [ + "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5", + "10564443344" + ], + [ + "0x95603220F8245535385037C3Cd9819ebCf818866", + "2873" + ], + [ + "0x956a64CF19B231d887d6579711a2367aE6d0D30e", + "524544008" + ], + [ + "0x956BE972E8D16709D321b8C57Bce7E5f021fBE9E", + "12352229137" + ], + [ + "0x9599BF29Df5B7491C8cf7602b8C05157DbB784bF", + "5785367797" + ], + [ + "0x95D1C6ecb2951e3111333C987f8A0d939A9b7b09", + "2237" + ], + [ + "0x9664ca3827D81694aaf1b4C93891dE770A9340cf", + "1352863" + ], + [ + "0x968E24C15a30d6Ff1B67f590c1c3A7fCeCb5C3fd", + "6954815" + ], + [ + "0x96c195F6643A3D797cb90cb6BA0Ae2776D51b5F3", + "80" + ], + [ + "0x96C53DBE55a62287ea4E53360635cAF1CCCE467d", + "26994164491" + ], + [ + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", + "30908177318" + ], + [ + "0x96D4F9d8F23eadee78fc6824fc60b8c1CE578443", + "1" + ], + [ + "0x96D9eBF8c3440b91aD2b51bD5107A495ca0513E5", + "3123605574" + ], + [ + "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC", + "2128800000" + ], + [ + "0x970668Ec67fA074AED4Aea7727543904B22eE53f", + "2146497381" + ], + [ + "0x971b4a65048319cc9843DfdBDC8Aa97AD47Ef19d", + "590353895" + ], + [ + "0x9728444E6414E39d0F7F5389ca129B8abb4cB492", + "1313381190257" + ], + [ + "0x9777dAaBf322d38af7A49A66dC55F3086127baeA", + "396352460" + ], + [ + "0x97acbfFcAAdb2578602B539872d9AC5eB991761a", + "201147984" + ], + [ + "0x97E89f88407d375cCF90eC1B710B5A914eB784Af", + "4147409865" + ], + [ + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", + "6178041745" + ], + [ + "0x98056e817220A4d16d4392a95CD48306acEd1f76", + "16837378833" + ], + [ + "0x981793123af0E6126BEf8c8277Fdffec80eB13fd", + "107196391337" + ], + [ + "0x9821Aac07d0724C69835367D596352Aaf09C309c", + "14345427828" + ], + [ + "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", + "31076972795" + ], + [ + "0x985314FbAf1Dac0a5Afb649AbeD69D8a32aeBee7", + "16101525559" + ], + [ + "0x987C5f96524059F591244F930279346fFaF900B6", + "1046658" + ], + [ + "0x988fB2064B42a13eb556DF79077e23AA4924aF20", + "36613919118" + ], + [ + "0x989252fE804c3C1b15908C364AA5cDa791030067", + "22280077973" + ], + [ + "0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60", + "9850791388" + ], + [ + "0x989c235D8302fe906A84D076C24e51c1A7D44E3C", + "32726518115" + ], + [ + "0x98a692316057e74B9297D53a61b4916d253c9ea6", + "3434053113" + ], + [ + "0x9906F598d5472080e8aAEd5d33a3c54cE7Db3CBF", + "521414" + ], + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + "811009" + ], + [ + "0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b", + "1206231453" + ], + [ + "0x99e8845841BDe89e148663A6420a98C47e15EbCe", + "437965263650" + ], + [ + "0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221", + "6759099912" + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + "1225976145164" + ], + [ + "0x9a2F1b23aE1979976939A75F36c6593408098F9e", + "2081559" + ], + [ + "0x9a37d222322e75e40D90EC8127fB85dd4E63949B", + "22464751637" + ], + [ + "0x9a3E11097F77c403C36Dd8761B8b7328A2cd6D0C", + "1158233368" + ], + [ + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", + "170860287081" + ], + [ + "0x9A9f7885a9a0b9EFD48D1eAFA17e2E633f89E609", + "5" + ], + [ + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + "9001890" + ], + [ + "0x9af623bE3d125536929F8978233622A7BFc3feF4", + "73411768" + ], + [ + "0x9B0f5cCC13fa9fc22AB6C4766e419BB2A881eb1B", + "496000000" + ], + [ + "0x9b1F139298b71Fa95e42FA37C82542599AeBa24c", + "115021629" + ], + [ + "0x9b3C1fF2066ea1be0fD05ebF722f2492d8b810Fd", + "3994475353" + ], + [ + "0x9B4888F3B901a22f7534B60CBd28013897eEc3Fb", + "127685131126" + ], + [ + "0x9b54ede44B624e057aA948308e0C10D91BFD59E6", + "9078" + ], + [ + "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F", + "3179015480" + ], + [ + "0x9B7D7c4ce98036c4d6F3D638a00e220e083116c7", + "14974038" + ], + [ + "0x9bA956e1C9417cA7223DE8684619414D5dFFD9e2", + "3330316692" + ], + [ + "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", + "32706882564" + ], + [ + "0x9Bb70bf2938A667cA6f039DB35B925e3d3Eb9885", + "472532465" + ], + [ + "0x9BD25e549Ea9568569b132c1dc308eF3aEadC297", + "202662613612" + ], + [ + "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C", + "27600266051" + ], + [ + "0x9c211891aFFB1ce6CF8A3e537efbF2f948162204", + "66483484063" + ], + [ + "0x9C3Da668A27f58A60d937447E0A539b48321F04d", + "8377458204" + ], + [ + "0x9C529180015F78e13288831A2Cf06Da2e9304271", + "2" + ], + [ + "0x9c52dC78bd84007bF63987806f0aeEece0ef14a6", + "2" + ], + [ + "0x9c695f16975b57f730727F30f399d110cFc71f10", + "170406833021" + ], + [ + "0x9c7871F95e0b98BF84B70ffF7550BfA4683c7a56", + "10798809727" + ], + [ + "0x9c7ac7abbD3EC00E1d4b330C497529166db84f63", + "713142" + ], + [ + "0x9C8623E1244fA3FB56Ed855aeAcCF97A4371FfE0", + "16579836292" + ], + [ + "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753", + "56421539833" + ], + [ + "0x9c9A3328B789EC3581FaaA230054072dC4D27C57", + "1100865658" + ], + [ + "0x9CD661Bb06117974B4EA6db90583C2B14E7cAf0f", + "1286582" + ], + [ + "0x9CdF7Ca37Db491c34931E6084694A11Be758Ddd0", + "242423422435" + ], + [ + "0x9D0242F554D6785c109D09FD0e9026Ff705bC390", + "5015545629" + ], + [ + "0x9D3Ff6F8Da7a77A15926Fab609AD18963c8c461B", + "9475089677" + ], + [ + "0x9d5BC1E20C131a175924e912e20255465337A223", + "45070474423" + ], + [ + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", + "3063136383" + ], + [ + "0x9D6bA8738Dd587114C895ECD40623fc319e1BB99", + "94278620" + ], + [ + "0x9d84C5da53999D226ac4800bEff4f97EE4946E99", + "159744620" + ], + [ + "0x9E097E8999AFFab83e502C91Db8a52e12Ed8fd25", + "29369085440" + ], + [ + "0x9E0CB69Ae6A5aD4eB870EB18D051eFE642eD7db4", + "1736127928670" + ], + [ + "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196", + "76899556983" + ], + [ + "0x9e5d8933DdB758992b153ccD72924E30e20737A5", + "14075841411" + ], + [ + "0x9e8Caff2218E77befdc62Ea6D18ABd1493F96B9a", + "625742077" + ], + [ + "0x9E97Ebb3BA5e751dcbD55260CE660cDc73dd3854", + "3237021441" + ], + [ + "0x9ea987dda3F3e72cf8Ac7F4BCd7bfd69236A8057", + "14879121418" + ], + [ + "0x9eaE1fC640064c1f4786E569Ced40975441FBfd6", + "3742318627" + ], + [ + "0x9ebAd4282b772F8cc1181A2cB29D5240363D18B8", + "9883490008" + ], + [ + "0x9eD7029086dEB3Ea14D8F42efee988e4205cC4d9", + "29" + ], + [ + "0x9eE09Cb5fe9Eb306897f387DA09dB1C8C9F4627f", + "389566703" + ], + [ + "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", + "2254983" + ], + [ + "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "2852385621956" + ], + [ + "0x9F1F4714d07859DD4C8D1312881A0700Ed1C2A7e", + "39824325156" + ], + [ + "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE", + "17200000000" + ], + [ + "0x9F64674CAb93986254c6329C4521c4F9737Af864", + "416492632150" + ], + [ + "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", + "12663818717" + ], + [ + "0x9fA9761089aF6B720eB544319c5b2BDA2500C56D", + "42348918010" + ], + [ + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", + "1671676" + ], + [ + "0x9FE670cCD3a7A9f8152C1B090F8097F6fA1E5E03", + "1660304" + ], + [ + "0x9ffA3393287131D85d632D0f34385Eebb7E7caA0", + "37722530084" + ], + [ + "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8", + "8904078833" + ], + [ + "0xa0158E68588b1007B3bb1e8F8ea8a85cEE842896", + "130825044" + ], + [ + "0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc", + "10199802033" + ], + [ + "0xa03E8d9688844146867dEcb457A7308853699016", + "1004117376" + ], + [ + "0xA05eb807023B8d784dD144bd9E9Cc2b4e1A30333", + "2" + ], + [ + "0xa06793Bbb366775C8A8f31f5cdBe4DD4F712410a", + "1" + ], + [ + "0xA073C8A00485B2f072906cB5c9f07b1ce88D9d87", + "2935866915" + ], + [ + "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", + "80584704159" + ], + [ + "0xA0df63b73f3B8D4a8cE353833848D672e65Ad818", + "523978443" + ], + [ + "0xA0F0287683E820FF4211e67C03cf46a87431f4E1", + "23940466252" + ], + [ + "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", + "7342730225" + ], + [ + "0xA1006d0051a35b0000F961a8000000009eA8d2dB", + "240" + ], + [ + "0xa10FcA31A2Cb432C9Ac976779DC947CfDb003EF0", + "10086331" + ], + [ + "0xA14EDe51540df9d540CE6A9B5327bFDAfB2150e9", + "2866" + ], + [ + "0xa156d4e61bBd20E1F45bb3f10264DA829C904647", + "5596891114" + ], + [ + "0xA160ddd847200C5A0b86A2D4107dba56A6E3053b", + "69117211354" + ], + [ + "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf", + "10508170586" + ], + [ + "0xA1948B0aAf6d029861a02B917847229947642Fbb", + "1090338316" + ], + [ + "0xA1c1E53D7304aAE853Ef491516aEdff207b69F9D", + "4358141" + ], + [ + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", + "29110816986" + ], + [ + "0xa2321c2a5fAa8336b09519FB8fA5a19077da7794", + "922828836738" + ], + [ + "0xA240A72b63b1692Ee04E5cbd7dfB6E33F6502165", + "302147687619" + ], + [ + "0xa25243821277b10dff17a3276a51A772Fd68C9de", + "1747862308" + ], + [ + "0xA256Aa181aF9046995aF92506498E31E620C747a", + "17190598731" + ], + [ + "0xA2683C71bECB07E21155313F46F6ba00986414c3", + "30360559" + ], + [ + "0xA27964F356C5c2D6e9007d316cBfb06E454EEB3C", + "1741406077" + ], + [ + "0xa2c4435F208F9c9AdB6C15bB8DB5ABb86D0daeCc", + "1306315" + ], + [ + "0xA2d76c09b86Cf904f75672df51f859A876A88429", + "1589735194" + ], + [ + "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6", + "1769356988" + ], + [ + "0xa31CFf6aA0af969b6d9137690CF1557908df861B", + "115789660749" + ], + [ + "0xA3220B672d6632dB45b3aA2C5eE28b1628d2585F", + "20605381034" + ], + [ + "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e", + "4" + ], + [ + "0xA354D0a7c74AB2fcA6B3c90468A57C9260fF69f9", + "6039745229" + ], + [ + "0xa36B48545904789EbB6B898467F9506A54E9F052", + "39472056392" + ], + [ + "0xA398A1a1208FFc963A640588AB03068E0a70b2d2", + "940642231" + ], + [ + "0xa3C73B0cE38ad596FD185F9ee1FBBb01203A5Ab2", + "1660069333" + ], + [ + "0xa3d63491abf28803116569058A263B1A407e66Fb", + "19512721510" + ], + [ + "0xa3DCe4D1640691cE3993CE2e42D73BaAD0399076", + "2241268910" + ], + [ + "0xA3e1b60002a24f6cFf3f74E2AA260b8C17bbdF7D", + "1529363119" + ], + [ + "0xa405e822d1C3A8568c6B82Eb6e570FcA0136F802", + "514" + ], + [ + "0xA40633dF77e6065C7545cd4fcD79F0Ce2fa42cF1", + "5539723025" + ], + [ + "0xA419489219dC5fA1ECeC3749dB45767Aa9F8e912", + "10043963992" + ], + [ + "0xA46322948459845Bb5d895ED9C1fdd798692a1dA", + "1557969199" + ], + [ + "0xA46Fe4a0b569E6253B8765FC7b67b08325f0cd5C", + "22437567498" + ], + [ + "0xA4CBFcB9Ec8b109e63155655d9Fa91F0fdC7F669", + "1268877035" + ], + [ + "0xa4f1b0889354b88CaAcC8142Ee0601D8920AE776", + "5710202193" + ], + [ + "0xa4f79238d3c5b146054C8221A85DC442Ad87b45D", + "1587701543" + ], + [ + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", + "981746078" + ], + [ + "0xA518DdB15FBE19AAa6824D7aA076cB4dd6b35ed9", + "420010169656" + ], + [ + "0xa53bfbe5733924a383c13af5dED9Ae7b5DcE0eb8", + "7460434986" + ], + [ + "0xa569D7C014433DB04a895eD854B864e2E33EB0f0", + "1" + ], + [ + "0xa5A55bf143b12D14E2fe4CFE17ee92Ef39F0C493", + "56689169" + ], + [ + "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", + "1373013429" + ], + [ + "0xa5b200B10fd9897142dC2dd14708EFdF090A1b4d", + "321556024190" + ], + [ + "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", + "1154772313" + ], + [ + "0xA5f8e2881a275344Fe744B30C0b7066DB8Ace1f3", + "16212" + ], + [ + "0xa69eb732230F041E62640Da3571F414a01413DB3", + "1634918422332" + ], + [ + "0xA6a0BEd0732c49Bd847b4B308DAAC15640f1eC6E", + "16953707508" + ], + [ + "0xa6A22bf9285F2B549CaA0A8A49EB7EA9dFd8D03E", + "98919350" + ], + [ + "0xa6b2876743D22A11d6941d84738Abda7669FcAcF", + "1" + ], + [ + "0xa6b4669f8A6486159CbeC31C7818877D1C92FB23", + "361421485" + ], + [ + "0xA708F334E561292319769adf0cAeC89feA3aee80", + "103346158954" + ], + [ + "0xa720e16e2B197831805b3b3b0581220e943E9334", + "24770713697" + ], + [ + "0xa73329C4be0B6aD3b3640753c459526880E6C4a7", + "440351653" + ], + [ + "0xA73Bcfb3129B8350E02c05447fe1B30f677AeB7f", + "4" + ], + [ + "0xa752EeA12f7ecAA7674363255e5e7F0B083a515C", + "3" + ], + [ + "0xa75b7833c78EBA62F1C5389f811ef3A7364D44DE", + "852055663" + ], + [ + "0xa76B0152fE8BC2eC3CbfAC3D3ecee4A397747051", + "31552872" + ], + [ + "0xa7b80091Cec94643794427Ef9b072e65BF93061B", + "292978572" + ], + [ + "0xa7B9F667B3EC5b42b93D113055dFcd31f88caD53", + "243934798" + ], + [ + "0xa7Dcc417c63F24F9073b667A5d7149bD38463d0F", + "7289670369" + ], + [ + "0xA7e3feD558E81dAb40Cd87F334D68b0BF0AB3fD6", + "34745957403" + ], + [ + "0xa80383f17A92B110921C07Fb5261798f3A99377f", + "337953492838" + ], + [ + "0xa82240Bb0291A8Ef6e46a4f6B8ABF4737B0b5257", + "10000008092" + ], + [ + "0xA853A60b728B8Ccd5E228B7E6045B826cd6eEB0C", + "5755439" + ], + [ + "0xA86C58012d2e3f6fC2af244c96A5FA461BF2605b", + "2786334456" + ], + [ + "0xa86e29ad86D690f8b5a6A632cAb8405D40A319Fa", + "3465376875" + ], + [ + "0xa87b23dB84e79a52CE4790E4b4aBE568a0102643", + "738654429588" + ], + [ + "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2", + "9497575909" + ], + [ + "0xa89c9579bB1A22b6e56a2fb6a4F716E55900f966", + "1077315349" + ], + [ + "0xA8B969a61d87504bcD884e15A782E8F330C60Eda", + "920000000" + ], + [ + "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E", + "2059837403" + ], + [ + "0xa8ecAf8745C56D5935c232D2c5b83B9CD3dE1f6a", + "1" + ], + [ + "0xa8eE3e3c264d6034147fA1F21d691BaC393c7D94", + "231399957576" + ], + [ + "0xA9214877410560B17560955Ca84eABdE4E30DcCA", + "24083424" + ], + [ + "0xA92b09947ab93529687d937eDf92A2B44D2fD204", + "95852819" + ], + [ + "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", + "9987359820" + ], + [ + "0xa97aCe835947C7890B6cE4bC8BB35c3216771f1f", + "5056232894" + ], + [ + "0xA97C4418AB7f4c3fC33376D9A8954d18D8953910", + "1635101232" + ], + [ + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", + "140097260302" + ], + [ + "0xa9b13316697dEb755cd86585dE872ea09894EF0f", + "2" + ], + [ + "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c", + "135185391159" + ], + [ + "0xA9Ec7aB90eCDE9E33FC846de370a0f2532d513be", + "3666266393" + ], + [ + "0xaA1B990CaFbE75051aBfbEa97902df632A0C7313", + "611678892" + ], + [ + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", + "82454962668" + ], + [ + "0xAa2831496F633b4AEbe2e0eb5E79D99BC8E1Ae4D", + "59707409294" + ], + [ + "0xAA420e97534aB55637957e868b658193b112A551", + "20754000000" + ], + [ + "0xAa4f23a13f25E88bA710243dD59305f382376252", + "8798351796" + ], + [ + "0xaa5E95a4935A57b7CdaD972Dd368ea6BBd2908a1", + "1448955506" + ], + [ + "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", + "6770321011" + ], + [ + "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", + "250502954658" + ], + [ + "0xaAB4DfE6D735c4Ac46217216fE883a39fBFE8284", + "11278869500" + ], + [ + "0xaB13156930AB437897eF35287161051e92FC1c77", + "402457331400" + ], + [ + "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3", + "29618643227" + ], + [ + "0xab31Ea5ab64539516d4a690c05075C191f2626cE", + "1083686145" + ], + [ + "0xab557f77Ef6d758A18DF60AcfaCB1d5feE4C09c2", + "8198" + ], + [ + "0xAb56dA5518E70688A1FE993c11E56497a8a207d2", + "1151" + ], + [ + "0xAB86AB01AFc0EAC264675A77dFB111F05CF7d6A1", + "479758401" + ], + [ + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", + "11351207252" + ], + [ + "0xaBA9DC3A7B4F06158dD8C0c447E55bf200426208", + "52423509" + ], + [ + "0xABBb9Eb2512904123f9d372f26e2390a190d8550", + "69319158" + ], + [ + "0xAbBf4737089AD6FF18c74A53BBe92C04A44d517b", + "31495122535" + ], + [ + "0xABC508DdA7517F195e416d77C822A4861961947a", + "53147204911" + ], + [ + "0xaBcB8BBDe9cbB670F53de7aBA42cf4143dC5E552", + "203393957274" + ], + [ + "0xAbD456D341e426777795281041Dc5E5dd7b62677", + "2311407708" + ], + [ + "0xAbe1ee131c420b5687893518043C5df21E7Da28f", + "149961152326" + ], + [ + "0xaBe78350f850924bAfF4B7139c17932d4c0560C5", + "744330399906" + ], + [ + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", + "812246209831" + ], + [ + "0xAcdceB490C614fA827C4f20710ee38E6b27d0EB2", + "1920918376" + ], + [ + "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", + "236767853" + ], + [ + "0xAD503B72FC36A699BF849bB2ed4c3dB1967A73da", + "2" + ], + [ + "0xaD699032a6C129b7B6a8d1154d1d1592C006F7D2", + "1" + ], + [ + "0xAD7bBd9E7fbCdbf80199e940d0A8a6f2D690457d", + "582222" + ], + [ + "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0", + "41234128" + ], + [ + "0xad84B020432c8c95940C17f30Eb6642580301478", + "704802826" + ], + [ + "0xaD97723418aef1061Fc9EBBd04CCFB119734b176", + "2582138330" + ], + [ + "0xAdCC57A64Dfe3f67800644711BEA6d2572dA32da", + "119614745" + ], + [ + "0xAE4b17De773a35c4fAe98A8Fa10751dD7A657b58", + "100028043" + ], + [ + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", + "189330636161" + ], + [ + "0xAE7861C80D03826837A50b45aecF11eC677f6586", + "1" + ], + [ + "0xAE94Fc8403B50E2d86A42Acc6565F8e0fa68A31B", + "169035333" + ], + [ + "0xAeB9A1fddC21b1624f5ed6AcC22D659fc0e381CA", + "42565165976" + ], + [ + "0xAED278C323a13fD284C5a40182C1aA14d93D87a4", + "680082558" + ], + [ + "0xaed7Ae5288DB82dB2575De216eDC443bC8764a07", + "31057853" + ], + [ + "0xAEdd430Db561575A8110991aE4CE61548e771199", + "2898569812" + ], + [ + "0xaef29B25E1235E52D592a50d1FF05e60792C9552", + "2" + ], + [ + "0xaef4842A2C6f44ed2D8C4BFf94451126D79A065E", + "100000000" + ], + [ + "0xaf0acd71df2e5f3d637eaD63fe3FE3420eEC43C7", + "12398718" + ], + [ + "0xAf0aF5A4A7B3e26359696ebC3D40cDb98f832376", + "42480297428" + ], + [ + "0xaF616dABa40f81b75aF5373294d4dBE29DD0E0f6", + "101838490685" + ], + [ + "0xaf7B5d7f84b7DD6b960aC6aDF2D763DD49686992", + "3999989870" + ], + [ + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", + "12923833095" + ], + [ + "0xafaAa25675447563a093BFae2d3Db5662ADf9593", + "412013366" + ], + [ + "0xaFB19e242b8dD9C3991323293Ef9f9f91F2c6365", + "30105325699" + ], + [ + "0xAfdCc3033Dbd841D0bBFbD59600EF7f487CD1f0a", + "4279917064" + ], + [ + "0xafF33b887aE8a2Ab0079D88EFC7a36eb61632716", + "23665832166" + ], + [ + "0xaff56375f84a49Af2427c386c9c59895a4841DCB", + "1489852606" + ], + [ + "0xb0010aB3689B80177fF49773F1428aC9a0EDdfa0", + "2364206028" + ], + [ + "0xb02f6c30bcf0d42E64712C28B007b85c199Db43f", + "3" + ], + [ + "0xB06fF7d5560f213937fC723CC65366415B7821bd", + "120193090869" + ], + [ + "0xb077cBD6a097D65835a7F78FDd93f0F4325B5C40", + "5136327913" + ], + [ + "0xb0aA8bDDE2657dd1B7BA892d4dbdfAd7da4C3704", + "250000000" + ], + [ + "0xb0ce2cC07Bb9bEa2Ab381d9Ede11CB2136D15e28", + "506907671" + ], + [ + "0xB0dAfc466871c29662E5cbf4227322C96A8Ccbe9", + "138263230" + ], + [ + "0xb13c60ee3eCEC5f689469260322093870aA1e842", + "1347383897" + ], + [ + "0xB14b20138023b5B9692df1920A6f5F5d341C1666", + "184212667" + ], + [ + "0xB14d2eEf8df1a3C51C2c1859e10324efb58c96b6", + "7191097427" + ], + [ + "0xb1720612D0131839DC489fCf20398Ea925282fCa", + "3827819" + ], + [ + "0xB172de5C47899B7d1995549e09202f7e78971ACf", + "29877" + ], + [ + "0xB1794ae7649C969BFA7C1c798FD90357f4224dC0", + "1164726287" + ], + [ + "0xb1821263a27069c37AD6c042950c7BA59A7c8eC2", + "42313255698" + ], + [ + "0xb1bB137f6f2778008616cd9fE4C30Bb87C9C9616", + "29787712478" + ], + [ + "0xb1cE37aa1F51aB7E2dB1dB783A4E666389c5F2a3", + "2562458515" + ], + [ + "0xb1D47D39c3BB868E5E4Be068b7057D4CAaD0b31C", + "332586709825" + ], + [ + "0xB1fe6937a51870ea66B863BE76d668Fc98694f25", + "4" + ], + [ + "0xb1FEE9761555Fa7Fe548f8C56B47CE97d61270F9", + "41" + ], + [ + "0xB2268E1FBCA5049A173ACCf882298cA4FbfB02AC", + "256881533" + ], + [ + "0xB25429a922a3389b3D02E5D9Fb533FD3A7E58cBF", + "11581088906" + ], + [ + "0xb26B4A4BBA425aC28224cFDd45B4Bd00C886cC33", + "10374059645" + ], + [ + "0xB27226CE5f123f91514ae3955e5cFEB7B9754981", + "849814657" + ], + [ + "0xb28A6de906d72b2C52A7F7D2496D2DBa2B8D02E2", + "147966498" + ], + [ + "0xb2A147095999840BBcE5d679B97Ac379a658BFb9", + "6272164067" + ], + [ + "0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106", + "4456688859" + ], + [ + "0xb2e5F0C8932A5eb5e33c18963346300Eb5496a9f", + "13549663987" + ], + [ + "0xb319c06c96F676110AcC674a2B608ddb3117f43B", + "54867" + ], + [ + "0xb338092f7eE37A5267642BaE60Ff514EB7088593", + "5004000000" + ], + [ + "0xB33CB651648A99F2FFFf076fd3f645fAC24d460F", + "20467310409" + ], + [ + "0xB345720Ab089A6748CCec3b59caF642583e308Bf", + "129614885345" + ], + [ + "0xB34E6A3e475eA55A71c3f2272Ba84c0044397568", + "343042014" + ], + [ + "0xB3982fdc4bA9C5549F900f851D1564B80c054864", + "314974681" + ], + [ + "0xb3b454c4b4a73ccdd5c79c8e0E4e703B478E872D", + "3092468492" + ], + [ + "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", + "859688286973" + ], + [ + "0xB3fCD22ffD34D75C979D49E2E5fb3a3405644831", + "1" + ], + [ + "0xB406e0817EE66AD8c9d8389bb94b4ED50c101431", + "84180533980" + ], + [ + "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", + "4851614403" + ], + [ + "0xB4310C2CAFdE76E1A0F09B01195435F4A630D48f", + "2152037" + ], + [ + "0xB44D289543717a3723cD47b2E9b71d3Dd5Ff68c5", + "60879075" + ], + [ + "0xB454F20d38c0Bc020E18bDa03898904DCA77A38a", + "35015234" + ], + [ + "0xB463e599931d865Ad8426a7EeE93b36Fd5B0813a", + "21174830" + ], + [ + "0xB4670077B4D680595B15872d79dEe61Ffcb8b15d", + "30621" + ], + [ + "0xB4a91ac1D081573a0a3EbE9C2c06827D6D7037e3", + "415057000" + ], + [ + "0xB4B04564f56f4795EA4e14d566aF78dA54a99980", + "685783791" + ], + [ + "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277", + "97835977063" + ], + [ + "0xb4fbd802d9dc5C0208346c311BCB6B9ECFF468C6", + "131014892" + ], + [ + "0xb53031b8E67293dC17659338220599F4b1F15738", + "5536450301" + ], + [ + "0xB54099Bd341f0b16aCF27a41BC4b616b5bA70f49", + "5098450804" + ], + [ + "0xb54f4f12c886277eeF6E34B7e1c12C4647b820B2", + "15897742209" + ], + [ + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", + "478176221355" + ], + [ + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", + "41163376736" + ], + [ + "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393", + "54483485344" + ], + [ + "0xB5cc8B38317F80360EF2c90AE1D115a831A2DFa2", + "1" + ], + [ + "0xB5d0374F0c35cF84F495121F5d29eA9275414dE8", + "4900984164" + ], + [ + "0xb620CB571778F22829709c54F27656810eBd6436", + "25183956273" + ], + [ + "0xb63050875231622e99cd8eF32360f9c7084e50a7", + "26109505605" + ], + [ + "0xb6390d56cBe8F93123f5923B5C1D9eEc6F7539f9", + "228850714" + ], + [ + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", + "8443822471" + ], + [ + "0xB65a725e921f3feB83230Bd409683ff601881f68", + "125577424" + ], + [ + "0xb66889B1257381Bcc9ee00461E29930BD53A08bF", + "9200873244" + ], + [ + "0xb66924A7A23e22A87ac555c950019385A3438951", + "23357875823" + ], + [ + "0xb70c92bfFD28095E36010c5A46901929c32810E4", + "6257585533" + ], + [ + "0xB70e3a9573AE3De81f15257b1d5a0f20847De138", + "2" + ], + [ + "0xB72Ec053479Efc9f4264c4c84D96eB348b7a0453", + "1557733395" + ], + [ + "0xB73a795F4b55dC779658E11037e373d66b3094c7", + "51849136179" + ], + [ + "0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D", + "49445188169" + ], + [ + "0xb78003FCB54444E289969154A27Ca3106B3f41f6", + "22963014975" + ], + [ + "0xB788D42d5F9B50EAcbF04253135E9DD73A790Bb4", + "5194914245" + ], + [ + "0xb78afC3695870310E7C337aFBA7925308C1D946f", + "537" + ], + [ + "0xB7B104178014F26739955526354f6e0EA9Ccb19b", + "2285667947" + ], + [ + "0xB7d691867E549C7C54C559B7fc93965403AC65dF", + "1" + ], + [ + "0xB7e04F8E9b5d499DAd4E1a07EB084f3863877E5f", + "2739791603" + ], + [ + "0xb7f6f6BCd3856032b2D9F6681bE4DCd1cbfF9823", + "1431699398" + ], + [ + "0xb80A3488Bd3f1c5A2D6Fce9B095707ec62172Fb5", + "182354" + ], + [ + "0xB81D739df194fA589e244C7FF5a15E5C04978D0D", + "190944237412" + ], + [ + "0xB825c207600aDfD3fB23fEcE0b90AEFD4A017Fa8", + "2201022" + ], + [ + "0xb833B1B0eF7F2b2183076868C18Cf9A20661AC7E", + "1650899378" + ], + [ + "0xB84905a37A372d3FaB5106ef7fA6C39f8b5B8ADF", + "5843286027" + ], + [ + "0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B", + "11114528096" + ], + [ + "0xB8C76836e4138e1293A4Fa9e1904ABEB00d7e892", + "1543389038" + ], + [ + "0xb8C78C587B6c460DC57F416F54b279A722867907", + "14596661527" + ], + [ + "0xB8da309775c696576d26Ef7d25b68C103a9aB0d5", + "5240156695" + ], + [ + "0xb9488BB4f6b57093eAa9a0cf0D722Ed61E8039aC", + "2081030592" + ], + [ + "0xb95A01D3B437c57631231bF995ca65678764b2E8", + "20896651478" + ], + [ + "0xb95A918186Fe3b016038f2Dd1d9Ce395710f30C0", + "36273652" + ], + [ + "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", + "181639411413" + ], + [ + "0xB9A485811c6564F097fe832eC0F0AA6281997c7c", + "1186765" + ], + [ + "0xb9BEBaEE7F9029eD936De59bEa6d759F245aD786", + "22157481" + ], + [ + "0xba121d80C8Cac15fc960BdEe1B0Af7Eea9084526", + "19452375734" + ], + [ + "0xBA1b1F951ec6eb3c938197F04310951c180D7929", + "691454623" + ], + [ + "0xbA208F8Ba2fa377dfa9baE58A561D503C3F4d96C", + "195019379770" + ], + [ + "0xBa4ea38e1A2cE2BD3C59D116e79704f025795897", + "75205592473" + ], + [ + "0xBA682E593784f7654e4F92D58213dc495f229Eec", + "342774141" + ], + [ + "0xbA9d7BDc69d77b15427346D30796e0353Fa245DC", + "370410744" + ], + [ + "0xbAb04a0614a1747f6F27403450038123942Cf87b", + "872941934" + ], + [ + "0xBAe7A9B7Df36365Cb17004FD2372405773273a68", + "22533142990" + ], + [ + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1", + "4" + ], + [ + "0xBb02C110452Ae7aB8eb369b77Ad65bB6C18B4361", + "3314" + ], + [ + "0xBB05755eF4eAB7dfD4e0b34Ef63b0bdD05cce20A", + "746714965" + ], + [ + "0xbb257625458a12374daf2AD0c91d5A215732F206", + "5403732" + ], + [ + "0xbb2C53B8C42A5E3831E1ca5f97F0834Bf8aE7D77", + "3248707279" + ], + [ + "0xBB4946EeA34a98b2C0e497Cb7F8F3af83311B2AF", + "5867178846" + ], + [ + "0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711", + "21405096049" + ], + [ + "0xBB8772b75E93204dE7462f19100F7e17C43b263d", + "9679" + ], + [ + "0xBB8FB8fE5198f25D117C0e7B1b9C8260CB19C3C0", + "1969032566" + ], + [ + "0xBbAf0A1CB78E8Ae403244108fbdd0935C201b3Ca", + "109978920" + ], + [ + "0xBBd0035918b59Ba77f4F0002592b2E4726055659", + "241262059" + ], + [ + "0xBBD189593331b2538e9160D28720D4e3E20812FB", + "5722955716" + ], + [ + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6", + "697321583697" + ], + [ + "0xbbD78233f019E3774bAA601B613ceA31bBddD4bf", + "29996360385" + ], + [ + "0xbbe67B46f6AE629Eb469372a44F338fFc182509f", + "9699151059" + ], + [ + "0xbC07B76e4C63E7B91c6E0395312D88D20449b106", + "2183487640" + ], + [ + "0xbC147973709A9f8F25B5f45021CAb1EA030D3885", + "267522" + ], + [ + "0xbc2266159a68862B44e88f72687330a4a9760D00", + "143845042" + ], + [ + "0xbC3A1D31eb698Cd3c568f88C13b87081462054A8", + "35039898047" + ], + [ + "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB", + "2" + ], + [ + "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "4" + ], + [ + "0xBC9209c917069891F92D36B5E7e29DCaC5E1D5A2", + "2153790020" + ], + [ + "0xBcA1387717b3B1a749147eb59D3B33abe1b9D8a9", + "1324189119" + ], + [ + "0xbCC44956d70536bed17C146a4D9E66261BB701DD", + "107774490707" + ], + [ + "0xbcC7f6355bc08f6b7d3a41322CE4627118314763", + "14" + ], + [ + "0xBd01F3494FF4f5b6ACa5689CC6220E68d684F146", + "1" + ], + [ + "0xBd03118971755fC60e769C05067061ebf97064ba", + "18569622146" + ], + [ + "0xbd0D7F2115C73576464689883Ce7257A3b4D8eC4", + "12263185276" + ], + [ + "0xBD2a648B9b820B46EFf6De2FbA1cA3aAc0A82804", + "5141472870" + ], + [ + "0xBD39F80E400ed14A341DC2e6eC182EbBabF38662", + "176568446440" + ], + [ + "0xbD50a98a99438325067302D987ccebA3C7a8a296", + "1632828050" + ], + [ + "0xBD6B982b02E03594323D5D26259A6739c3dd35e1", + "68695749" + ], + [ + "0xBd80cee1D9EBe79a2005Fc338c9a49b2764cfc36", + "89165734122" + ], + [ + "0xBD874A4e472AEc2777a137788A0c7cC1e043E8D7", + "12345180669" + ], + [ + "0xbd8Ff52F1CB6c47FdF8A7997b379aDb6e04618c7", + "823947799" + ], + [ + "0xbDBeAe01C79bA57B5AF0195bF9dFFD082a79C372", + "229629810" + ], + [ + "0xbdE492A572392AbeB47123b2336C358D9F5d7C3E", + "10400881140" + ], + [ + "0xBe289902A13Ae7bA22524cb366B3C3666c10F38F", + "25886880084" + ], + [ + "0xBe41D609ad449e5F270863bBdCFcE2c55D80d039", + "18182085954" + ], + [ + "0xbE525d35A9270c199bC8d08e5bEb403C221F18e5", + "299029029" + ], + [ + "0xBE588f2f57A99Ca877a2d0fA59A0cAa3fFBFD4eb", + "2257790144" + ], + [ + "0xbe7395d579cBa0E3d7813334Ff5e2d3CFe1311Ba", + "8" + ], + [ + "0xbE8e93FF17304Ba941131539EFe6bE8e3df168aF", + "5336372429" + ], + [ + "0xBe9E8Ec25866B21bA34e97b9393BCabBcB4A5C86", + "434825711710" + ], + [ + "0xbeA2b910EE89eD59a160A60e75E3e1FF5047389C", + "39517857869" + ], + [ + "0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A", + "12938228983" + ], + [ + "0xbed17F511084FFEfCa09250886C1Fd77fA6A29A7", + "413469" + ], + [ + "0xbedBA1CDbD51689cEc0F2428333F30C2223aD3aB", + "2178131748" + ], + [ + "0xbefD31181229b7D34532344E38899e0fEa750818", + "3131196520" + ], + [ + "0xBefE4f86F189C1c817446B71EB6aC90e3cb68E60", + "100000000" + ], + [ + "0xbf30551890776159B0a38E956cEEed296CbAA720", + "2055486326" + ], + [ + "0xBF330a4028B0F2a01B336Df23Bc27DeFb4EddAD1", + "50718008" + ], + [ + "0xBf3dBc90F1A522B4111c9E180FFAf77d65407E3e", + "306185115" + ], + [ + "0xBf3f6477Dbd514Ef85b7D3eC6ac2205Fd0962039", + "1" + ], + [ + "0xBf4Aa57563dB2A8185148EC874EA96dff82CeB13", + "6608896440" + ], + [ + "0xBF4C73F321fB81816EeAaDE11238B9Ba480356f3", + "1488532247" + ], + [ + "0xBf68f1CE39Ed3BD9B20944260AA678bB934D164b", + "79713257869" + ], + [ + "0xbf8A064c575093bf91674C5045E144A347EEe02E", + "11782408670" + ], + [ + "0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD", + "15154526032" + ], + [ + "0xBF912CB4d1c3f93e51622fAe0bfa28be1B4b6C6c", + "34791226" + ], + [ + "0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2", + "6922721398" + ], + [ + "0xBFc87CaD2f664d4EecAbCCA45cF1407201353978", + "1695630098" + ], + [ + "0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e", + "29836923614" + ], + [ + "0xbfF54b44f72f9B722CD05e2e6E49202BA98FE244", + "5" + ], + [ + "0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb", + "298091307067" + ], + [ + "0xc06320d9028F851c6cE46e43F04aFF0A426F446c", + "7459017131505" + ], + [ + "0xc07fd4632d5792516E2EDc25733e83B3b47ab9aa", + "179268396" + ], + [ + "0xc08F967ED52dCFfD5687b56485eE6497502ef91d", + "10098440738" + ], + [ + "0xc0985b8b744C63e23e4923264eFfaC7535E44f21", + "415337740" + ], + [ + "0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B", + "26204273016" + ], + [ + "0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04", + "111894879172" + ], + [ + "0xC0eB311C2f846BD359ed8eAA9a766D5E4736846A", + "15875812612" + ], + [ + "0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8", + "2" + ], + [ + "0xC0f55956e8D939D979b8B86a8Ae003D9CD9713ae", + "3957974950" + ], + [ + "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D", + "70822951485" + ], + [ + "0xc10535D71513ab2abDF192DFDAa2a3e94134b377", + "2" + ], + [ + "0xc1146f4A68538a35f70c70434313FeF3C4456C33", + "136282377306" + ], + [ + "0xC13D06194E149Ea53f6c823d9446b100eED37042", + "672" + ], + [ + "0xc16Aa2E25F2868fea5C33E6A0b276dcE7EE1eE47", + "30171401851" + ], + [ + "0xc18676501a23A308191690262bE4B5d287104564", + "6352015813" + ], + [ + "0xC1877e530858F2fE9642b47c4e6583dec0d4e089", + "77546171" + ], + [ + "0xc18BAB9f644187505F391E394768949793e9894f", + "572878821646" + ], + [ + "0xc19447d62b924eFC029278d2e80db587944BbcD7", + "2" + ], + [ + "0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57", + "4" + ], + [ + "0xc1CaAbC760f5fDf28c7E50E1093f960f88694E3e", + "1235130" + ], + [ + "0xC1CeDc9707cAA9869Dca060FCF90054eA8571E42", + "2335733788" + ], + [ + "0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F", + "6" + ], + [ + "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d", + "1865373073" + ], + [ + "0xC1e607B7730C43C8D15562ffa1ad27B4463DC4c4", + "1" + ], + [ + "0xc1f3eBe56FE3a32ADAC585e7379882cf0e5a6D87", + "54370537166" + ], + [ + "0xc1F80163cC753f460A190643d8FCbb7755a48409", + "2" + ], + [ + "0xC1F841e806901cAc37dFE36cA63b849cee757b8F", + "1788" + ], + [ + "0xc207Ceb0709E1D2B6Ff32E17989d4a4D87C91F37", + "1246150621660" + ], + [ + "0xC21a7Fe78A0Fb9DF4Da21F2Ce78c76BdAe63e611", + "17288843712" + ], + [ + "0xc22846cf4ACc22f38746792f59F319b216E3F338", + "20677821676" + ], + [ + "0xc2352B1bb2115074B4C13a529B2C221E118D9817", + "17600943045" + ], + [ + "0xc240D9f8d38F2bE93900C5e5D1Acc10D2CC7AbAc", + "2387751634" + ], + [ + "0xc265FD59095B56B53442326Dd1059A7F8775ad0E", + "65000000000" + ], + [ + "0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732", + "142305895235" + ], + [ + "0xc2ac0d788A6C574a76Ded79b9373679850C2678f", + "21440032103" + ], + [ + "0xc31eD6608Afb1F7ABd8a4EE524793F60876b5b66", + "11833652119" + ], + [ + "0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5", + "3" + ], + [ + "0xc32e44288A51c864b9c194DFbab6Dc71139A3C4d", + "7901011995" + ], + [ + "0xC3391169cbbaa16B86c625b0305CfdF0CCbba40F", + "1369600757" + ], + [ + "0xC343B82Abcc6C0E60494a0F96a58f6F102B58F32", + "1404714769" + ], + [ + "0xc372958093939625d7d97e3319089CEC308d36E1", + "3993689751" + ], + [ + "0xC37e2C0D1d60512cFcBe657B0B050f0c82060d1b", + "1324435467" + ], + [ + "0xC3853C3A8fC9c454f59c9aeD2Fc6cfa1a41eB20E", + "4121508893155" + ], + [ + "0xC3D18115E5107c6259439400EC879cDAA1BF8f44", + "21307712399" + ], + [ + "0xc42593f89D4B6647Bff86fa309C72D5e93a9405c", + "50000000" + ], + [ + "0xc428a5eec605FDA02Af8083ad1928b669B81957c", + "22975208743" + ], + [ + "0xc459742d208ee4ddBA82Ac03DbCbfa3Fc7eDBa22", + "305200956" + ], + [ + "0xC45d45b54045074Ed12d1Fe127f714f8aCE46f8c", + "4932334114" + ], + [ + "0xc46C1B39E6c86115620f5297e98859529b92AD14", + "20147490693345" + ], + [ + "0xc47919bbF3276a416Ec34ffE097De3C1D0b7F1CD", + "61145740644" + ], + [ + "0xC4B07A842e0068A95c3cd933e229348e6d794279", + "8624953074" + ], + [ + "0xC4B07F805707e19d482056261F3502Ce08343648", + "1292035741" + ], + [ + "0xc4C09325007915ce44B9304B0B0052275D8422B0", + "16950794384" + ], + [ + "0xC4f842B2Ed481C73010fc1F531469FFB47EE09e9", + "22428115967" + ], + [ + "0xC4FF293174198e9AeB8f655673100EeEDcbBFb1a", + "400000000" + ], + [ + "0xc516f561098Cea752f06C4F7295d0827F1Ba0D6C", + "100385471291" + ], + [ + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", + "9" + ], + [ + "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", + "13850219367" + ], + [ + "0xC555347d2b369B074be94fE6F7Ae9Ab43966B884", + "1098382131" + ], + [ + "0xC5581F1aE61E34391824779D505Ca127a4566737", + "207220100849" + ], + [ + "0xC56725DE9274E17847db0E45c1DA36E46A7e197F", + "45607611796" + ], + [ + "0xC579176ddB061a5DE727467d83B30A1bf219a041", + "3026958679" + ], + [ + "0xC5e71bEc66D0E250A642bdE8aa3C47B1B605Dd53", + "10212533214" + ], + [ + "0xC5f9a15832745b00b8fFCD4F2b6857999C725aC0", + "1346114337" + ], + [ + "0xc5FB51E68d2753Fd484b7f99a13C8E746720C6aC", + "101782539" + ], + [ + "0xc6302894cd030601D5E1F65c8F504C83D5361279", + "12493142570" + ], + [ + "0xc63cEe16AB67BDb10eB12fcB611C7e6a9D361dc6", + "7384080111" + ], + [ + "0xC64d472Cc19c2A9Fae649eC2DcDcff87ca94F7De", + "393117430893" + ], + [ + "0xC65F06b01E114414Aac120d54a2E56d2B75b1F85", + "149041834674" + ], + [ + "0xC6AC7c7aCabc3585cfE16478fd4D22C1E8dC3c57", + "44876921145" + ], + [ + "0xC6c2A697E27242B3Ba5A393f304b64A27040E006", + "11762519025" + ], + [ + "0xc6DDfC6733a8874882FDE1D217d69BA522208B52", + "203168141612" + ], + [ + "0xC6e76A8CA58b58A72116d73256990F6B54EDC096", + "4816116219" + ], + [ + "0xc6Ee516b0426c7fCa0399EaA73438e087B967d57", + "56560384041" + ], + [ + "0xC725c98A214a3b79C0454Ef2151c73b248ce329c", + "2" + ], + [ + "0xc73E258784A41D10eE5823C12e97806551bc8eeC", + "561084" + ], + [ + "0xC76d7eb6B13a8aDC5E93da2bD1ae4309806757c6", + "33701347506" + ], + [ + "0xC77FA6C05B4e472fEee7c0f9B20E70C5BF33a99B", + "4" + ], + [ + "0xC799cC1E009ac2bEb510a8D685F385ac4d693fed", + "2097085625" + ], + [ + "0xC79Dafd2eEb336f524CF986fb7bc223F23f4db5B", + "15328107" + ], + [ + "0xC79Dc50233C12518c427587Bd88bD881239CD7b4", + "330941912" + ], + [ + "0xC7B42F99c63126B22858f4eEd636f805CFe82c91", + "300982068628" + ], + [ + "0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9", + "2" + ], + [ + "0xC7c5a25141dfBB4eb586c58fE0f12efd5f999A2B", + "284583355900" + ], + [ + "0xC7ED443D168A21f85e0336aa1334208e8Ee55C68", + "2530249148" + ], + [ + "0xc7f1916b741A7966Bd65144cb2B0Ba9eD1B29984", + "6229446199" + ], + [ + "0xC81635aBBF6EC73d0271F237a78b6456D6766132", + "139702771510" + ], + [ + "0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1", + "117064221254" + ], + [ + "0xc83746C2da00F42bA46a8800812Cd0FdD483d24A", + "110851061457" + ], + [ + "0xC83F16A4076a9F73897f21Ac9E9663c23D35743c", + "2" + ], + [ + "0xC849A498B4D98c80dfbC1A24F35EF234A9BA05D5", + "22311" + ], + [ + "0xc84C19Bbf07d0CB7CC430fC3C51173c4ACD5dD9D", + "118238923903" + ], + [ + "0xC852848A0e66200ce31AD5Db9cE3bC5d53918112", + "206435798" + ], + [ + "0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40", + "2746626540" + ], + [ + "0xC8801FFAaA9DfCce7299e7B4Eb616741EA01F5DE", + "2327110514" + ], + [ + "0xC88FC1f1136c3aC5FAC38b90f64c11Fe8E704962", + "311489538" + ], + [ + "0xc896E266368D3Eb26219C5cc74A4941339218d86", + "22334685" + ], + [ + "0xC89A6f24b352d35e783ae7C330462A3f44242E89", + "16990247523" + ], + [ + "0xC8a405aAD199C44742a1310c5a0924E871733cCb", + "7264861365" + ], + [ + "0xC8ABB314C6FdE10d1679a2ab6f4BDffA462e990D", + "154716" + ], + [ + "0xc90923827d774955DC6798ffF540C4E2D29F2DBe", + "80" + ], + [ + "0xc93678EC2b974a7aE280341cEFeb85984a29FFF7", + "314563805" + ], + [ + "0xC95186f04B68cfec0D9F585D08C3b5697C858fe0", + "1063309612454" + ], + [ + "0xc95Fe87a9D376FA1629848E22B7d2726529a2921", + "1573142060" + ], + [ + "0xC9691Cc21D99a0C3f52A41673C29F71906b13a0D", + "6104293" + ], + [ + "0xc970De1aFB9BC5b833d1AcDb3d43AEeCf6A4343B", + "5960810182" + ], + [ + "0xc99C07a3deD982ac5DF8f6B17677874EC57A54Ee", + "50000000" + ], + [ + "0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b", + "20309813079" + ], + [ + "0xC9D2565A86f477B831c7C706E998946eCF2123F3", + "4169309909" + ], + [ + "0xc9e4d54c9156ad9da31De3Cd3f2a38edAA882c3B", + "48816129313" + ], + [ + "0xC9F7a981fF817d70F691cDbdCB43a418b2dBa59B", + "1370403470" + ], + [ + "0xCa11d10CEb098f597a0CAb28117fC3465991a63c", + "2942989093" + ], + [ + "0xcA210D9D38247495886a99034DdFF2d3312DA4e3", + "9" + ], + [ + "0xca2819B74C29A1eDe92133fdfbaf06D4F5a5Ad4c", + "1090464891" + ], + [ + "0xca4A31c7ebcb126C60Fab495a4D7b545422f3AAF", + "5595353830" + ], + [ + "0xCA754d7Fc19e0c3cD56375c584aB9E61443a276d", + "5851468591" + ], + [ + "0xcA968044EffFf14Bee263CA6Af3b9823f1968f37", + "3548148114" + ], + [ + "0xCaf0CDBf6FD201ce4f673f5c232D21Dd8225f437", + "5409765207" + ], + [ + "0xcB1667B6F0Cd39C9A38eDadcfA743dE95cB65368", + "2" + ], + [ + "0xcb1Fda8A2c50e57601aa129ba2981318E025F68E", + "8154690" + ], + [ + "0xCB218f2638185d13758592f87A0A9732A83f29f5", + "3718937479" + ], + [ + "0xcb26ea9b520c6D300939A9D5B94308CD77484A6f", + "1901673273" + ], + [ + "0xCB85C8f60a34D2cB566CC0b0ce9e8Fd66C2d961F", + "2677962578" + ], + [ + "0xCba1A275e2D858EcffaF7a87F606f74B719a8A93", + "1000000003" + ], + [ + "0xCBbdcE7E539916630936453dfBd1CBCb82d414BF", + "1873060493" + ], + [ + "0xCbC961DFfa3174603D39d026a62a711A42cb9c77", + "730540787307" + ], + [ + "0xCbD6b0DeE49EeA88a3343Ff4E5a2423586B4C1D6", + "531039830900" + ], + [ + "0xCBE203901E2F3CA910558Efba39a48Af89e3c558", + "219402193859" + ], + [ + "0xcbFd8F36E763be77097701350137867986B605aC", + "97895858" + ], + [ + "0xcC1a8576F7e75398a390A147DA1fbe683C2A9587", + "39311750492" + ], + [ + "0xcc23CE3C69317EB40d125001D7c325b36e6d4357", + "98223056" + ], + [ + "0xcc2596D30702141f438c3d8bE8Bb9f81A9a4526C", + "4432062242" + ], + [ + "0xcC4804885733e8668Da3b3FB25537ed0E4DFAdF2", + "146171177" + ], + [ + "0xCC65fA278B917042822538c44ba10AD646824026", + "4854064000" + ], + [ + "0xCc71b8a0B9ea458aE7E17fa232a36816F6B27195", + "853547" + ], + [ + "0xcC8D6da195f44e9922FDFB12df80c47b4cc46702", + "11100000" + ], + [ + "0xCc9F072657F3B4208bcDA2BdDefe93Ac6849F8D6", + "446014138" + ], + [ + "0xcCbc56e1D30DBAaB70B013872Dbc7d773A9E54fB", + "1444503432" + ], + [ + "0xccbfB8e76153b8FEA7EB7BBD66f1AAaAE314D65F", + "6292863356" + ], + [ + "0xCCF00d42bdEA5Fff0b46DD18a5e23FC8ac85a4AA", + "134408730310" + ], + [ + "0xccF24a88a98312a508945aa0C7179C446FA43980", + "1115129289" + ], + [ + "0xcD181ad6f06cF7d0393D075242E9348dB027d62b", + "1787032126" + ], + [ + "0xCd1d766aa27655Cba70D10723bCC9f03A3FE489a", + "71359777" + ], + [ + "0xcd323d75aF5087a45c12229f64e1ef9fb8aAF143", + "7952682" + ], + [ + "0xcd5561b1be55C1Fa4BbA4749919A03219497B6eF", + "2862022204" + ], + [ + "0xcD6bA060694CFD27C17F23719de87116CbfE6107", + "13252916384" + ], + [ + "0xCD862100C54AC82b965cc54BFE1bf80CfefC0FD7", + "27365155229" + ], + [ + "0xcE0218C4fB63Ee56ddDbe85F0ECA06c6f996Ead6", + "11169744701" + ], + [ + "0xCE1Ef18B8c756E2A3bf24fF86DF3e2a4a442691e", + "2449687392" + ], + [ + "0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0", + "13570744354" + ], + [ + "0xce6d8374E58CDd4CA173c0B497aB91dA9A334078", + "5663329075" + ], + [ + "0xCE91783D36925bCc121D0C63376A248a2851982A", + "27462726700" + ], + [ + "0xCeB15131d3C0Adcffbfe229868b338FF24eD338A", + "4133000000" + ], + [ + "0xCeE29290c6DDa832898bA707eE9D40B311181b9A", + "1" + ], + [ + "0xcEf5A94Bb413c8039B490Ef627e20D16db2fFCC3", + "690218556" + ], + [ + "0xCF0dCc80F6e15604E258138cca455A040ecb4605", + "2" + ], + [ + "0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0", + "29954982391" + ], + [ + "0xCf1e4c0455E69c3A82C2344648bE76C72DBcDa06", + "688620389" + ], + [ + "0xcf25F663954157984d9915e9E7f7D2f1ef860f5c", + "122670467" + ], + [ + "0xCf2d231881E16365961281ec9D8b7B51A4044ABb", + "380068394" + ], + [ + "0xcf6b8a78F5Ddf39312D98Aa138eA2a29E5Ad851f", + "614465690" + ], + [ + "0xCfCdCdE4D1c654eD980B4B3f6ff782194b3Aa666", + "22582207702" + ], + [ + "0xcfd9c9Ac52b4B6Fe30537803CaEb327daDD411bB", + "16807093739" + ], + [ + "0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a", + "54140789866" + ], + [ + "0xD00fB8efFeE21177df7871F285B379Bb03d8A8b5", + "295651" + ], + [ + "0xd03c52B3256b5e102ce4BF6bB53d4Be9d9963838", + "2" + ], + [ + "0xD03EA0A5e6932fa79b2802E33d6aBFA9D604Ee35", + "39139250721" + ], + [ + "0xD047B65f54f4AA8EaE6BB9F3D9d5D126FE722b9F", + "3387663" + ], + [ + "0xd0932CEfBB20cBf5404D8f44CD63E7fF2bd33A29", + "4825721803" + ], + [ + "0xD0988045f54BAf8466a2EA9f097b22eEca8F7A00", + "76815159508" + ], + [ + "0xD0EC7D77eB018ca3789d5d1672705aAa1672d6f3", + "6091413415" + ], + [ + "0xd0fA4e10b39f3aC9c95deA8151F90b20c497d187", + "10664522666" + ], + [ + "0xd116EC51cEd0a7A49BEA6555f90872752448D8Bc", + "21913818412" + ], + [ + "0xD12570dEDa60976612Eeac099Fb843F2cc53c394", + "12901295469" + ], + [ + "0xD14f924DE730Bb2F0C6E5B45b21b37468950a2fF", + "3325294180" + ], + [ + "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", + "41244612991" + ], + [ + "0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0", + "1912026726" + ], + [ + "0xD1818A80DAc94Fa1dB124B9B1A1BB71Dc20f228d", + "25738445409" + ], + [ + "0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691", + "5725196187" + ], + [ + "0xd1BB2B2871730BC8EF4D86764148C8975b22ce1E", + "77518409166" + ], + [ + "0xD1C5599677A46067267B273179d45959a606401D", + "5098237870" + ], + [ + "0xD1F27c782978858A2937B147aa875391Bb8Fc278", + "19951466219" + ], + [ + "0xD20B976584bF506BAf5cC604D1f0A1B8D07138dA", + "100000000" + ], + [ + "0xD2594436a220e90495cb3066b24d37A8252Fac0c", + "3230998584" + ], + [ + "0xD286064cc27514B914BAB0F2FaD2E1a89A91F314", + "6647518692" + ], + [ + "0xd2aa924591B370a78e022763B82ddcC711D4f2f7", + "15512782003" + ], + [ + "0xD2aC889e89A2A9743Db24f6379ac045633E344D2", + "2231384426" + ], + [ + "0xD2bd78E6e96c98265725f02cEbC35232308c5031", + "969136" + ], + [ + "0xD2d038f866Ef6441e598E0f685f885693ef59917", + "1" + ], + [ + "0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911", + "2380467773" + ], + [ + "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", + "210596761489" + ], + [ + "0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8", + "3" + ], + [ + "0xd2F2f6b0F48e7a12496D8C9f7A2C18e6b76e49e0", + "460888812450" + ], + [ + "0xD300f2C6Ee9dA84b1dD8E3e24FF5Ae875772b55e", + "2" + ], + [ + "0xd30eB4f27aCac4d903a92A12a29f3fe758A6849c", + "12394937714" + ], + [ + "0xD32FBBd463DED23a44Fee49Fe2FA5979418945FA", + "10851" + ], + [ + "0xD360EcB91406717Ad13C4fae757b69B417E2Af6b", + "2" + ], + [ + "0xd368266f4e53b9e00147c758deD2eE063591F9A8", + "34273339162" + ], + [ + "0xd3765592d1bbFC7ec04E9011861D75B07a3c935b", + "6416146113" + ], + [ + "0xD379e6E98099A6C8EE68eaBe356a5BB8E0Df6AC7", + "2" + ], + [ + "0xd39A31e5f23D90371D61A976cACb728842e04ca9", + "532690" + ], + [ + "0xd3c1E750b5664170f4aF828145295B678BAFD460", + "2" + ], + [ + "0xd3e0Ef0eBB7bC536405918d4D8dBDF981185d435", + "872429109293" + ], + [ + "0xd3F0862E4AcEf9A0c2D7FC4EAc9AB02c80D7b16c", + "23992901515" + ], + [ + "0xd3FeeDc8E702A9F191737c0482b685b74Be48CFa", + "4329" + ], + [ + "0xd43324eB6f31F86e361B48185797b339242f95f4", + "103108258064" + ], + [ + "0xD441C97eF1458d847271f91714799007081494eF", + "429018576830" + ], + [ + "0xd45aCCF4512AF9cEAC4c3ab0e770F54212CDF9Ac", + "38718787449" + ], + [ + "0xd45EFb53298814b63B0d06A06237c22e3191eF19", + "62076748821" + ], + [ + "0xd480B92941CBe5CeAA56fecED93CED8B76E59615", + "149993691" + ], + [ + "0xD497Ed50BE7A80788898956f9a2677eDa71D027E", + "11491329978" + ], + [ + "0xD4B5541B7d82C6284e54910aB6068dC218Da1D1C", + "405439519329" + ], + [ + "0xd4BB9cc352AB9b8965A87Bde35508695B09d40fb", + "10942985869" + ], + [ + "0xD4ccCdedAAA75E15FdEdDd6D01B2af0a91D42562", + "41174997387" + ], + [ + "0xD4Da752Db1C3fafbF17456D6aA4a6CE1259372a8", + "6505786318" + ], + [ + "0xD4e92D4Ae3CbE3D1fC78883D53929e44c994d9eB", + "195468754" + ], + [ + "0xd53Adf794E2915b4F414BE1AB2282cA8DA56dCfD", + "4593637075" + ], + [ + "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", + "244274285050" + ], + [ + "0xD567BEdb9EAe1DB39f0e704B79dF6dF7f846B9B0", + "6094440250" + ], + [ + "0xd582359cC7c463aAd628936d7D1E31A20d6996f3", + "60618362079" + ], + [ + "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241", + "54337229968" + ], + [ + "0xd5d9aC9C658560071c66385E97c7387E7aeeB916", + "19280071498" + ], + [ + "0xD5Eedc95A91EBEFf9a23119e16aBCbBcD2773b54", + "886148331" + ], + [ + "0xD5eFa6Ce5E86C813d5b016ABd10Bf311648D9FE8", + "186196627" + ], + [ + "0xD5Fe199029ee4626478D47caE4F6F68CEa142c4C", + "22882388215" + ], + [ + "0xd608fBbb6D5B1149aD5F0F741f96C1a4D0676189", + "100000" + ], + [ + "0xd61296bc2FEaE9Ed107aB37d8BAF12562f770Bd5", + "7599805628" + ], + [ + "0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427", + "17508152" + ], + [ + "0xd653971FA19ef68BC80BECb7720675307Bfb3EE6", + "4966108159" + ], + [ + "0xD6626eA482D804DDd83C6824284766f73A45D734", + "187095504800" + ], + [ + "0xD66DcFf7D207Dd5C5D7323d99CC57d00Fa92D4ea", + "5707017003" + ], + [ + "0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF", + "121851073707" + ], + [ + "0xD683B78e988BA4bdb9Fa0E2012C4C36B7cC96aaD", + "44" + ], + [ + "0xD6921D0110D6A34c647fD421d088711ae2577D26", + "10305656345" + ], + [ + "0xD6e91233068c81b0eB6aAc77620641F72d27a039", + "726850328940" + ], + [ + "0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3", + "21697857175" + ], + [ + "0xD6ff57479699e3F93fFd68295F3257f7C07E983e", + "85315589030" + ], + [ + "0xD717E96bC764E9644e2f09bed46C71E53240748E", + "603910295" + ], + [ + "0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6", + "150761551104" + ], + [ + "0xd722B7b165bb87c77207a4e0e690596234Cf1aB6", + "99637237830" + ], + [ + "0xd72C0Bc5250c8F82E48BE46aD5f65bB5891483a0", + "57439405120" + ], + [ + "0xD72eD8B43368BEdC2AddE834Dd121c22B1B30130", + "2919107773" + ], + [ + "0xD73d566e1424674C12F1D45aEA023C419e6EfeF5", + "71013678" + ], + [ + "0xd742f773C69eB8bc3BE9eB8452aab0565d80e746", + "29400960101" + ], + [ + "0xd7748567c0ad116Cf84b70Ec52eBD4f6A7c346FD", + "803553889" + ], + [ + "0xd77749Dc29CDa028bbcdbAEe9fb04990FA387Fa3", + "20779154155" + ], + [ + "0xD79e92124A020410C238B23Fb93C95B2922d0B9E", + "408731194433" + ], + [ + "0xD7Fca6b7F0dD2C18E85a77b18a5e7aa6E1EBB445", + "64755675582" + ], + [ + "0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce", + "37332954096" + ], + [ + "0xD8711e8BdeCe3e95baAdbDBf7a21a73ba3471b7f", + "35459" + ], + [ + "0xD87bc009C1Fd2d29A3f1dDF94e6529dEC1aFD7D3", + "941886486" + ], + [ + "0xD87fDB14ceb841F1F38555af1F39bdfFF003CAC9", + "2901299266" + ], + [ + "0xd885881F6928Af7D3549c5D37908DF673D83568F", + "1810215256" + ], + [ + "0xD8c84eaC995150662CC052E6ac76Ec184fcF1122", + "45088791578" + ], + [ + "0xD8CbcFFe51B0364C50d6a0Ac947A61e3118d10D6", + "3747836826" + ], + [ + "0xd8D1fa915826a24d6103E8D0fA04020c4EbC0C5e", + "936175040" + ], + [ + "0xd8D219cdc59e087925B8Bb0aCA688Fd252C4315E", + "24491645" + ], + [ + "0xd8d9320Ba876eAc0f5BF9001aE2dC4473630EE5c", + "399964291" + ], + [ + "0xD8E7f213956d19d5eE7df4c9B00eE3F5D3DC79B2", + "1002452939" + ], + [ + "0xd8fC2eC57805817AaEe62FF23f4f07C16AF730E5", + "4671218441" + ], + [ + "0xD93cA8A20fE736C1a258134840b47526686D7307", + "197693233905" + ], + [ + "0xD93eC7e214C50FE64050d0A88002942f0E242659", + "55792832" + ], + [ + "0xD9437bd9becC57b2A152E3680aD3d675ed5b14b9", + "430919925" + ], + [ + "0xd94c1BEF5975C5eaa57989bb5E149BcAC6e4e41E", + "2945820900" + ], + [ + "0xd959d4C2d90FD2F291A71Bf923DA24E374E1Ef07", + "898639721" + ], + [ + "0xD970Ba10ED5E88b678cd39FA37DaA765F6948733", + "932869491" + ], + [ + "0xd980C07d4Ab9F14bf80a04297f7c6F41604D060B", + "985114" + ], + [ + "0xd9A859A420ddf413FbfCBC10bB7e16d773839004", + "361951586487" + ], + [ + "0xd9C6b4d5253EDb3675d4377FE676552Bc7D704d7", + "607739572" + ], + [ + "0xd9dFfbF57621be31A157F696E464cc729FDc0E64", + "4590444049" + ], + [ + "0xD9E886861966Af24A09a4e34414E34aCfC497906", + "651844111" + ], + [ + "0xDA7Ece710c262a825b4d255e50f139FA17Fd401F", + "5054452115" + ], + [ + "0xDa8C9D1B00D12DdF67F2aa6aF582fD6A38209b39", + "72017642962" + ], + [ + "0xDaA95A36D6CbD4E58A89253d3A19E26b067960C7", + "112845770836" + ], + [ + "0xdAe3b4E9bA2F1bd8da873B7dd5a391781a8C1Ae4", + "18653877782" + ], + [ + "0xDb18957bE8fb364E2F293E7cA6e689Dc55991688", + "29294073163" + ], + [ + "0xdb215bA8D9bed3aACE91E23307Caa00A8c9211f1", + "236496969" + ], + [ + "0xDB23905E09bc6934204991f02729392a11eEd8F8", + "470148" + ], + [ + "0xDB2480a43C79126F93Bd5a825dc0CBa46d7C0612", + "995000" + ], + [ + "0xdb4f969Eb7904A6ddf5528AE8d0E85F857991CFd", + "4548" + ], + [ + "0xdB4fBc231F1D2b3B4c3d9e1602C895806fb06278", + "453729065878" + ], + [ + "0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c", + "86787308651" + ], + [ + "0xdb59f54F833Ee542Ab4f99Cb3Cdd66CD1Aa7b318", + "57237128641" + ], + [ + "0xdB744A5853A0a8A81FeeDB4eFD5f69F0de6825ff", + "490" + ], + [ + "0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661", + "2215630589139" + ], + [ + "0xdBab0B75921E3008Fd0bB621A8248D969d2d2F0d", + "741733199" + ], + [ + "0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D", + "246595082116" + ], + [ + "0xdbc098E0E692ac11Da95166cd9D22c47A05cD8b8", + "357118958" + ], + [ + "0xdbD721c163a58a339C9b291EEAE012F904b0E06d", + "381373603" + ], + [ + "0xdbe95598aAf4ab9A68378FFB64b24e3126F346A6", + "995610703" + ], + [ + "0xdbeDB1B7d359b0776E139D385c78a5ac9B27C0f9", + "199870416" + ], + [ + "0xDC27b4a65F214743d68BEf4ba2004D4cCD6d7F65", + "272602" + ], + [ + "0xdC421f6599E483E98C460694Bb5B04bfB42FfDdb", + "8016743642" + ], + [ + "0xDc4F9f1986379979053E023E6aFA49a65A5E5584", + "98240198" + ], + [ + "0xDC50cB21557c8A1F1161683FC2ec4Cf5829ef50C", + "21486109048" + ], + [ + "0xDC5d7233CeC5C6A543A7837bb0202449bc35b01B", + "6015218850" + ], + [ + "0xdC5f4CE4520fFdF54d8D1c0E71A01DbBaa11fcD8", + "3283409663" + ], + [ + "0xdC6a5B3DA5C6c4cA0204Bac74654bE877eebeC04", + "1371447334" + ], + [ + "0xdc6C276D357e82C7D38D73061CEeD2e33990E5bC", + "8685082" + ], + [ + "0xDD11460317C683e4057E115eB14e1C9F7Ca41E12", + "56596297527" + ], + [ + "0xDd689D6bE86e1d4c5D8b53Fe79bDD2cA694615D9", + "192861009985" + ], + [ + "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27", + "116127823" + ], + [ + "0xddA42f12B8B2ccc6717c053A2b772baD24B08CbD", + "173440185" + ], + [ + "0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8", + "37895374472" + ], + [ + "0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78", + "1838261006676" + ], + [ + "0xDe06264c6746b5A994F7499012EC9feC181D01E5", + "23293543531" + ], + [ + "0xde1b617d64A7b7ac7cf2CD50487c472b5632ce3c", + "1083110" + ], + [ + "0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f", + "1440847299" + ], + [ + "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", + "1419999999039" + ], + [ + "0xDe8589960DA34eeFB00Ca879D8CC12B11F52Cb12", + "239688747" + ], + [ + "0xDEA221515cCe76dC4454B68c4918603DfFa12F31", + "800559147" + ], + [ + "0xDEA7BE57c300Cfd394A9FA91b477D7127b01538e", + "13966270925" + ], + [ + "0xDeb2a3547A13176719F006DB6c3886f90bAB323E", + "214553394" + ], + [ + "0xdEb5b508847C9AB1295E83806855AbC3c9859B38", + "135702198069" + ], + [ + "0xdEBA22ef671936a5CB3964C8469fDC32cF745C0a", + "4019710124" + ], + [ + "0xdedDEC0472852b71E7E0bD9A86D9a09d798094D0", + "1953686475" + ], + [ + "0xdeFecffBEA31b18B14703e10Ac81da2Ed8C5762A", + "669212925" + ], + [ + "0xdf044c7889935cCf0BD7a5D018E7e1e84000e4EB", + "145116208" + ], + [ + "0xdf39603397764512b6147740CAD2ea669BfC3fFa", + "7003924331" + ], + [ + "0xDF8F82536c34a86FDa65BcEF40CB6A1d2fAD96C5", + "158205168" + ], + [ + "0xdfb92A9d77205e2897D76C47847897B41B44c025", + "103967577" + ], + [ + "0xDFc6b16343F92c1347B6E9700aA6c5d9E34794A1", + "28143974209" + ], + [ + "0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0", + "3277108601" + ], + [ + "0xdfdF626Cd38e41c6F3Cc72B271fe13303A224934", + "100000002" + ], + [ + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", + "78016072001" + ], + [ + "0xE02A25580b96BE0B9986181Fd0b4CF2b9FD75Ec2", + "5" + ], + [ + "0xe031B10E874FaE6989359cdE6f55fcBCF2bA2ffd", + "4" + ], + [ + "0xe07e76714497eB8c3BB237eE5002C710E392b5A9", + "27963661903" + ], + [ + "0xe0842049837F79732d688d0d080aCee30b93578B", + "131800369" + ], + [ + "0xe0B54aa5E28109F6Aa8bEdcff9622D61a75E6B83", + "2899377" + ], + [ + "0xE0f61822B45bb03cdC581283287941517810D7bA", + "344813056" + ], + [ + "0xe105EaC05168E75657fb7048B481A17A53AF91E8", + "6" + ], + [ + "0xE113E7B1E8Ecd07973EA40978aED520241d17f27", + "459064867" + ], + [ + "0xE12857955437543CacacC51AB6970A683eFE859c", + "37449920073" + ], + [ + "0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25", + "4" + ], + [ + "0xe16CDF494e2BA063909b3073c68Bf57d869EfCd6", + "20703821062" + ], + [ + "0xe1762431241FE126a800c308D60178AdFF2D966a", + "2435327691" + ], + [ + "0xe1d045be479CE7127186896A0149aaC7137b455E", + "2" + ], + [ + "0xe1D86a7088d05398A2B9bA566bE0b3C5ffa5D9aF", + "448063684450" + ], + [ + "0xE1e98eAe1e00E692D77060237002a519E7e60b60", + "2339043101" + ], + [ + "0xE203096D7583E30888902b2608652c720D6C38da", + "15522997182" + ], + [ + "0xe21274B5c4cB75830F79d3A0dc38e7Ee49EC5b17", + "27115754" + ], + [ + "0xE218aF09CC357A5Cee1b214B262060fC314048A4", + "439463096" + ], + [ + "0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41", + "4230687185" + ], + [ + "0xE2bDaE527f99a68724B9D5C271438437FC2A4695", + "8935027957" + ], + [ + "0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C", + "38948040128" + ], + [ + "0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3", + "2130072927" + ], + [ + "0xE2EdD6Ba259A7a7543e76df6F3Eab80154Ff7982", + "8322900308" + ], + [ + "0xE30fBc19d251532824d86e900f52eEb95cD37EB3", + "5855819252" + ], + [ + "0xE37a010859a480f69C8aF3DC8dcf171DaEe80A01", + "705125145" + ], + [ + "0xE382de4893143c06007bA7929D9532bFF2140A3F", + "2420624671" + ], + [ + "0xe3a08ccE7E0167373A965B7B0D0dc57B6A2142f7", + "7210939776" + ], + [ + "0xE3A2Ad75e3e9B893c8188030BA7f550FDfEeadac", + "47322225143" + ], + [ + "0xE3b2fC5a80B80C8F668484171D7395e3fDE76670", + "329645513747" + ], + [ + "0xe3B78e510c3229d2Fc48918621817DC87288EBa1", + "143474091" + ], + [ + "0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6", + "400896824241" + ], + [ + "0xE3D47BeCcb31D105C149B37A9486d945Cca1E469", + "42043333101" + ], + [ + "0xe40617fd297164db4A57D72Ba507968216522f75", + "2" + ], + [ + "0xE432225AB3A24D0328c1eb8934f12C2C664dBF1E", + "17388042601" + ], + [ + "0xe43e06794069FeF7A93c1Ab5ef918CfC65e86E00", + "5732691529" + ], + [ + "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc", + "20310337401" + ], + [ + "0xE44E071BFE771158a7660dc13daB67de94f8273c", + "24322066229" + ], + [ + "0xE45D85B382EFd7833Da1B8CAB53B203D22340b1a", + "124874074860" + ], + [ + "0xE463d56e80da7292A90faF77bA3F7524F0a0dCCd", + "49985526057" + ], + [ + "0xE46523509280267d4785cFcF89eba8F3cbD96267", + "2" + ], + [ + "0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74", + "720759311712" + ], + [ + "0xe496c05e5E2a669cc60ab70572776ee22CA17F03", + "3940" + ], + [ + "0xe4a7CE553722E3879Ff8d00A3A11A226414644e0", + "29759683291" + ], + [ + "0xe4BF6E1967D7bc0Bd5E2C767c3A2CCAdf23446df", + "75132372019" + ], + [ + "0xE543357D4F0EB174CfC6BeD6Ef5E7Ab5762f1B2B", + "919058938209" + ], + [ + "0xE558619863102240058d9784a0AdF7c886Fb92fC", + "79348386" + ], + [ + "0xe57384b12A2b73767cDb5d2eadDFD96cC74753a6", + "230700000" + ], + [ + "0xe58000ce4dd92a478959a24392d43D4c100C85Fd", + "41275351494" + ], + [ + "0xE58E375Cc657e434e6981218A356fAC756b98097", + "1241848685" + ], + [ + "0xe591F77B7D5a0a704fEBa8558430D7991e928888", + "381081130" + ], + [ + "0xe596607344348723Aa3E9a1A8551577dcCa6c5b5", + "5457350695" + ], + [ + "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14", + "31692769933" + ], + [ + "0xe5eB46c6fdDb202CE7c1aa4CF3951F09F6ad00F3", + "17209475403" + ], + [ + "0xe63d1e4b80cF3B2ebcEC1175083D9266aEadf3A3", + "150003592" + ], + [ + "0xE64995F539Ad9ddFAEac0C759244B26e0Eb94313", + "693765031" + ], + [ + "0xe693eB739c0bE8c2bDD978C550B5D8b8022A8adA", + "5" + ], + [ + "0xe6a54e967ECB4E1e4b202678aED4918B5c492926", + "101258302461" + ], + [ + "0xe6a6eE4196D361ec4F6D587C7EbE20C50667fB39", + "42000000" + ], + [ + "0xE6C459B2d9e8EafD205b74201Ce1988B28Bd2a1F", + "888547453" + ], + [ + "0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0", + "17768376248" + ], + [ + "0xE6F00dDe5F7622298C16A9e39b471D1c1c2De250", + "238059223376" + ], + [ + "0xe78483c03249C1D5bb9687f3A95597f0c6360b84", + "388947271" + ], + [ + "0xE79cCABDbF2AA68fDae8D7Fc39654A62b07e12e3", + "1503250000" + ], + [ + "0xE7a9c882C15288E8FaDd3f84127bF89b04dF81b3", + "3590569080" + ], + [ + "0xe7BaF7Af12E6b18c8cdd32292c6F06840cF71442", + "14586806685" + ], + [ + "0xe82c4470c22ECD75393D508d709f6476043be567", + "1036853231" + ], + [ + "0xe83120C1D336896De42dEa2f5fD58Fef1b6b9934", + "26132575726" + ], + [ + "0xE8332043e54A2470e148f0c1ac0AF188d9D46524", + "429169" + ], + [ + "0xe8438502821Bfc888d26C8687BDafAE4b3ac0338", + "61099061" + ], + [ + "0xe846880530689a4f03dBd4B34F0CDbb405609de1", + "14307872915" + ], + [ + "0xe86a6C1D778F22D50056a0fED8486127387741e2", + "40779699785" + ], + [ + "0xE874946c5876E5e6a9Fbc1e17DB759e06E3B3ffe", + "4136" + ], + [ + "0xe886eCE8dEA22C64592E16CE9c6060C354e0cB46", + "5972090257" + ], + [ + "0xe88a280b0434f0523c99455D2d6FB0E2E5BE088C", + "9331984214" + ], + [ + "0xe89791e429bd5f0D051548f6E7985F9ed3aF8220", + "38556319648" + ], + [ + "0xe8B04a194d7710d55b2213EC21D489Fe93ce2E52", + "101456849061" + ], + [ + "0xe8C148209ADD124eE57199991E90a3b829A136aA", + "19" + ], + [ + "0xe8e8D10D48Bb4761E30A1A0C3f5705788E2Cf5Ca", + "32656889496" + ], + [ + "0xE8eA41F87Bbd365a3ec766e35ac4aC1d6A5E760a", + "26908503304" + ], + [ + "0xe8F65bFf630a1102e45C53D89183040a2Da27D36", + "19604192808" + ], + [ + "0xE90f8A0df275911A3c4fe561dCa300DF374E5428", + "282951" + ], + [ + "0xE95523f9fd968C64039538c2A4a0AD43a4904D15", + "29157" + ], + [ + "0xe974785b3f313FABDaD9a353AA45508B38C8C469", + "27703695" + ], + [ + "0xe9886487879Cf286a7a212C8CFe5A9a948ea1649", + "95474913" + ], + [ + "0xE9B05bC1FA8684EE3e01460aac2e64C678b9dA5d", + "250099383823" + ], + [ + "0xe9c6f6D44C546CdD54231e673Ba8b612972cdD07", + "10642984901" + ], + [ + "0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C", + "26141793102" + ], + [ + "0xe9F55fF0Ce2c086a02154E18d10696026aFC0E63", + "60779635438" + ], + [ + "0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29", + "819839894" + ], + [ + "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "63462001011" + ], + [ + "0xeA47644f110CC08B0Ecc731E992cbE3569940dad", + "2132724450" + ], + [ + "0xeA747056c4a5d2A8398EC64425989Ebf099733E9", + "434278487" + ], + [ + "0xEa87392249D04f80069AD60fdd367374bE315782", + "24365000210" + ], + [ + "0xEAa4F3773F57af1D4c7130e07CDE48050245511B", + "2" + ], + [ + "0xEaFc0e4AcF147e53398A4c9AE5F15950332Cce06", + "4" + ], + [ + "0xEAfD738c06C9cA5f1c443f45033A59d34737af2d", + "17" + ], + [ + "0xEB0BC725FfA2F9f968C6950dfFb236FF2f199d4D", + "29083538" + ], + [ + "0xeb11255b15600390e60a7aa1FBe1C821F6D0FD8a", + "1" + ], + [ + "0xeC22fB3817c8D0037Cf58EE2fd1f74403a58fe51", + "7104909204" + ], + [ + "0xEC4009A246789e37EA5278F5Cc8bF7Bc7f11A7D7", + "16013231487" + ], + [ + "0xEc51Ea752664C14FCC356be60CC143B5aCB81428", + "1731931256" + ], + [ + "0xEC5a0Dff55be882FAFe863895ef144b78aaEF097", + "2" + ], + [ + "0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196", + "2118503375" + ], + [ + "0xec62e790d671439812A9958973acADB017d5Ff4D", + "52880745297" + ], + [ + "0xEc89e2fc68D563595B82acBf1aaC1c7F1ECFe0dF", + "1209478752" + ], + [ + "0xEC9F16FAacD809ED3EC90D22C92cE84C5C115FAC", + "788662109" + ], + [ + "0xEcFca03a9326541F69FF0210FB0CAfAdde935DE9", + "6" + ], + [ + "0xED02cbe1BeEa0891cCfC565B839a947c3d2fAb5C", + "2564156855" + ], + [ + "0xED0f30677C760Ea8f0BfF70C76eaFc79D5f7C3c8", + "10332383424" + ], + [ + "0xeD131296C195a783d513EA8d439289f6Cf6295Fc", + "57380404548" + ], + [ + "0xed30c5f7F9AA27CCCd35A2717aFCd30907748353", + "3286256403" + ], + [ + "0xEd8440f3476073DF5077b5F97d34556fBd6c1AEA", + "10012461935" + ], + [ + "0xEdc0D61e5FcDc8949294Df3F5c13497643bE2B3E", + "20813316995" + ], + [ + "0xedC24C8a0B98715C4c42f23fA1a966D68d71DA40", + "1044469066" + ], + [ + "0xeDC36b2972542c0813a7aBd2aE1bBb7750391907", + "17252610061" + ], + [ + "0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef", + "370200846" + ], + [ + "0xEe20f85dD3f826700A6A42AF4873a04af8AC6D75", + "625" + ], + [ + "0xeE55F7F410487965aCDC4543DDcE241E299032A4", + "3" + ], + [ + "0xEe6cE216ceE9744BDc64cFB1c901d923d703b539", + "925106" + ], + [ + "0xeE7840DAC7C3ec2cCDe49517fd3952e349997aB5", + "422584643335" + ], + [ + "0xeE95e4cf086Fc80dF7Ae0F39DFC9EA53A3eAadcB", + "121553050351" + ], + [ + "0xeEA71D769BE2028A276BBb5210eD87d2962E1bAD", + "1715650941" + ], + [ + "0xEEb07cbca1a7F360FA8a6Bff4ac6f1eF47bbb8a1", + "14843921161" + ], + [ + "0xEeCD7796c92978a7E0e8F6754367F365E6e7E1fd", + "1177623569" + ], + [ + "0xEef86c2E49E11345F1a693675dF9a38f7d880C8F", + "44975655" + ], + [ + "0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee", + "44995484859" + ], + [ + "0xEF488FB124D5028e81db9DCeBF683C1f997f73c1", + "8653004587" + ], + [ + "0xEf49FFe2C1A6f64cfE18A26b3EfE7d87830838C8", + "5" + ], + [ + "0xef5939492958abb8488ce5A5C68D61Ac29C07732", + "2" + ], + [ + "0xeF6c4192C8530A2502e153bDc2256dD72AB445e4", + "78345" + ], + [ + "0xef764BAC8a438E7E498c2E5fcCf0f174c3E3F8dB", + "1" + ], + [ + "0xeF78730Aff229Ca10084c81334d405EA1DfE7EC5", + "177276222" + ], + [ + "0xef7ad5c1b7F18382176BCA305256b3766cE86007", + "299216002" + ], + [ + "0xEf7D9be5A88aF3c6Bc4D87606b2747695485E50E", + "43934983615" + ], + [ + "0xef999424aC8D61f966fBA778b200ECc5B991633B", + "17923091176" + ], + [ + "0xEfA117fC408c83E82427fcc22A7d06302c542346", + "410161707" + ], + [ + "0xEfa4c696Ea2505ec038c9dDC849b1bf817d7f69d", + "88852859" + ], + [ + "0xefaA5fE183b7CBe2772fE4AC88831b7Aa6C37422", + "67616438762" + ], + [ + "0xeFcc546826B5fa682c4931d0c83c49D208eC3B84", + "3265858233" + ], + [ + "0xefD09Cc91a34659B4Da25bc22Bd0D1380cBC47Ec", + "22059802" + ], + [ + "0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C", + "18573515721" + ], + [ + "0xF0062BD82a919f447dBBdE0D3768780F20Eff2c9", + "2255139321" + ], + [ + "0xF024e42Bc0d60a79c152425123949EC11d932275", + "4" + ], + [ + "0xF03C8c6A6aE736AB7089ffe1BbFF5428ec44d91C", + "194686876927" + ], + [ + "0xF05980BF83005362fdcBCB8F7A453fE40B669D96", + "36558250583" + ], + [ + "0xF05A92dFDa1D3a1771597Ca37925aAC4b88C7C25", + "640680954" + ], + [ + "0xf05b641229bB2aA63b205Ad8B423a390F7Ef05A7", + "1061907439304" + ], + [ + "0xf086898A7DB69Da014d79f7A86CC62d29F84d7b7", + "2291116" + ], + [ + "0xf115d93A31e79ccA4697B9683c856326E0BeD3c3", + "246154267" + ], + [ + "0xF1349Aa788121306c54109DB01abD5eB2f951ca0", + "1264366866" + ], + [ + "0xf13D26F5B891CC36C72Ea078Ee308423a873C08d", + "19375504943" + ], + [ + "0xf13F7bF69a5E57Ea3367222C65DD3380096d3FBF", + "385430918" + ], + [ + "0xF14Ee792bb979Aa08b5c65B1069A4209159d13fE", + "3749436019" + ], + [ + "0xF17722FFA53A2C57BDa1068a6890CDA8d6caF110", + "1047342" + ], + [ + "0xF18507A3D7907F2FDa0F80ea74b92707F67E0bd9", + "60568566668" + ], + [ + "0xF19e9B808Eca47dB283de76EEd94FbBf3E9FdF96", + "57138671" + ], + [ + "0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657", + "2320754219730" + ], + [ + "0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22", + "115655380692" + ], + [ + "0xF1cCFA46B1356589EC6361468f3520Aff95B21c3", + "3678377905" + ], + [ + "0xf1db5C88Ac2b757e8B33F2E58E19CC55b3039898", + "213645357448" + ], + [ + "0xF1F90739858584CEC5F198C2c9926c1d6Bfeb1BB", + "57853394087" + ], + [ + "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d", + "125407334940" + ], + [ + "0xF230B3EDaD4bE957Cc23aB1e94024181f7df7aA4", + "10453728" + ], + [ + "0xf25ba658b15A49D66b5b414F7718c2E579950aac", + "1" + ], + [ + "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5", + "17798035454" + ], + [ + "0xf286E07ED6889658A3285C05C4f736963cF41456", + "23827804845" + ], + [ + "0xf287893Cd86b5f13c3a602f3C75B48E1b1aD5b0f", + "889643681" + ], + [ + "0xF28AbB406EfBc933773789e69B505eEa8e6B6fCa", + "1167702" + ], + [ + "0xf28E9401310E13Cfd3ae0A9AF083af9101069453", + "6556990084" + ], + [ + "0xf295eCbE3cf6aB9fD521DFDF2B3ad296389d659F", + "2010824670" + ], + [ + "0xF2cB7617c7cbcBCc1F3A51bfc6D71aE749df5d60", + "130594577" + ], + [ + "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0", + "1893551014" + ], + [ + "0xf2d67343cB0599317127591bcef979feaF32fF76", + "966978438642" + ], + [ + "0xf2f65A8a44f0Bb1a634A85b1a4eb4be4D69769B6", + "15119679012" + ], + [ + "0xF2Fb34C4323F9bf4a5c04fE277f96588dDE5316f", + "33986969" + ], + [ + "0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e", + "37352399093" + ], + [ + "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", + "23959976085" + ], + [ + "0xF3659FA421DdC3517D7A37370a727C717Ce7855e", + "881984450" + ], + [ + "0xF38762504B458dC12E404Ac42B5ab618A7c4c78A", + "9608909486" + ], + [ + "0xf393fb8C4BbF7e37f583D0593AD1d1b2443E205c", + "833352744" + ], + [ + "0xf39B2C3D35B9bC51C332151D76f236426cF87bBB", + "5235329340" + ], + [ + "0xF3A45Ee798fc560CE080d143D12312185f84aa72", + "23444131394" + ], + [ + "0xf3E52C9756a7Cc53F15895B11cc248B1694C3D81", + "368534244916" + ], + [ + "0xf3e9848D5accE2f83b8078ee21f458e59ec4289A", + "2" + ], + [ + "0xF4003979abEbEf7dEdCE0FcB0A8064617ba1cb6c", + "1176757854" + ], + [ + "0xf476f6c0c97d088C3A1Ec2a076218C22EDFE018D", + "6083339929" + ], + [ + "0xf4b785ef2c10D5662A053043E362e7E74E14A206", + "657212719" + ], + [ + "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C", + "42199154670" + ], + [ + "0xF4CEC45FcdeDFafAa6bcB66736bBd332Ce43bA23", + "497134477" + ], + [ + "0xF50ABEF10CFcF99CdF69D52758799932933c3a80", + "69280350467" + ], + [ + "0xf50c00cb5547f53BE3843381aC3427b32b9C3F07", + "96311" + ], + [ + "0xf53cAB0C6F25f48F985d1e2c40E03FC7C1963364", + "4027198097" + ], + [ + "0xF54fCb4859f10019AEdaB0eBc4BB8C5C99591666", + "49" + ], + [ + "0xf55F7118fa68ae5a52e0B2d519BfFcbDb7387AFA", + "3038420250" + ], + [ + "0xF5664196ce7d0714Ee400C4C239b29608c9314Cd", + "7964683539" + ], + [ + "0xF56DD30d6Ab0eBDAe3A2892597eC5C8EE03Df099", + "5455454447" + ], + [ + "0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3", + "143321607002" + ], + [ + "0xF58c02C8aD9D6C436246ca124F43c690368bBdfE", + "1" + ], + [ + "0xf58F3DBB422624FE0Dd9E67dE9767c149Bf04fdd", + "4904141400" + ], + [ + "0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2", + "503584448618" + ], + [ + "0xF5Aebb3bFA1d7310EA3e6607669e59c4964B2013", + "10393229754" + ], + [ + "0xF5Ca1b4F227257B5367515498B38908d593E1EBe", + "12463111261" + ], + [ + "0xF62405e188Bb9629eD623d60B7c70dCc4e2ABd81", + "2" + ], + [ + "0xf62dC438Cd36b0E51DE92808382d040883f5A2d3", + "19980143" + ], + [ + "0xf658305D26c8DF03e9ED3ff7C7287F7233dE472D", + "65300106015" + ], + [ + "0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73", + "10872433887" + ], + [ + "0xf679A24BBF27c79dB5148a4908488fA01ed51625", + "21894940360" + ], + [ + "0xF69218D01eedd7ad518863ad65Ea390315f25C92", + "454017582" + ], + [ + "0xf69EA6646cf682262E84cd7c67133eac59cef07b", + "6169349391" + ], + [ + "0xF6aaEdc61221A551fDaA0C6BD18626d637f4E99D", + "39771738299" + ], + [ + "0xF6aF57C78B8635f7a3413fBB477DE47cAd01DcCf", + "2405300471" + ], + [ + "0xf6cCa4d94772Fff831bf3a250A29dE413d304Fc5", + "72915448" + ], + [ + "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8", + "4" + ], + [ + "0xf6FbDeCb1193f6b15659cE747bfC561E06f1214a", + "3" + ], + [ + "0xf70A76bFC303AF23eC3CE34900aF9eA4df1407B7", + "597994699" + ], + [ + "0xf719550e63911E1Fa672d7886AA6c0110532A763", + "980428257" + ], + [ + "0xF73FE15cFB88ea3C7f301F16adE3c02564ACa407", + "18767825292" + ], + [ + "0xF75f9a658E00B5FC55De9D23cf0B1183B23640C6", + "507534159" + ], + [ + "0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765", + "8572133177" + ], + [ + "0xf78da0B8Ae888C318e1A19415d593729A61Ac0c3", + "45483334791" + ], + [ + "0xf7acc9E4E4F82300b9A92Bc4D539C7928c23233B", + "61481320286" + ], + [ + "0xF7d4699Bb387bC4152855fcd22A1031511C6e9b6", + "4771504043" + ], + [ + "0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC", + "486532483681" + ], + [ + "0xf80cDe9FBB874500E8932de19B374Ab473E7d207", + "70426179107" + ], + [ + "0xf81AC7c4Ef437ea0A10f563CC0906B7849733465", + "478990864" + ], + [ + "0xF840AA35b73EE0Bbf488D81d684706729Aba0a15", + "2" + ], + [ + "0xf84F39554247723C757066b8fd7789462aC25894", + "28735967194" + ], + [ + "0xF869B8e5a54e7D93D98fc7C5c9D48fe972C330CA", + "9885509714" + ], + [ + "0xF871f8c17c571c158b4b5d18802cc329Ee9F19dF", + "45670522529" + ], + [ + "0xF87AEDfbB53d7DB34c730a50B480F5717860d0Bf", + "3" + ], + [ + "0xF88D3861f620699C4B3ec5D6191FFbF164CfbBC3", + "202342870413" + ], + [ + "0xf8aA30A3aCFaD49efbB6837f8fEa8225D66E993b", + "101291627622" + ], + [ + "0xf8BaC06C2D8AA828ebbB0e475ce72f07462f28e1", + "47279833037" + ], + [ + "0xf8d5708b32616b6c85c97F5a9c344e6B7076fE98", + "275033253" + ], + [ + "0xf8fdCac2C64Ba5e0459F67b9610bd3eda11F04ba", + "6224389358" + ], + [ + "0xF904cE88D7523a54c6C1eD4b98D6fc9562E91443", + "52272133582" + ], + [ + "0xF90A01Af91468F5418cDA5Ed6b19C51550eB5352", + "275235709" + ], + [ + "0xf95ecba30184289D15926Eb61337839E973a97df", + "34978297" + ], + [ + "0xF96a3DC0f7990035E3333e658B890d0f16171102", + "256598554" + ], + [ + "0xf972C7eDD78b945E9e089CA86Ca2f601bc061A53", + "1" + ], + [ + "0xf973554fbA6059F4aF0e362fcf48AB8497eC1d8f", + "4554263421" + ], + [ + "0xF9790906affda8aA80fFf67deD5063d1221a5F1d", + "233977423249" + ], + [ + "0xF99AD4a6272CAea33AeEE2031B072100479FDFBD", + "69619665" + ], + [ + "0xF9be86FfF624AfeE87803fd9F871e53F50FF79a8", + "52113409" + ], + [ + "0xF9D183AF486A973b7921ceb5FdC9908D12AAb440", + "2" + ], + [ + "0xFa0A637616BC13a47210B17DB8DD143aA9389334", + "558728224" + ], + [ + "0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4", + "123360087474" + ], + [ + "0xFa41E0dafbb231fc8974c02a597BE61299ddd10C", + "64372053920" + ], + [ + "0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d", + "2" + ], + [ + "0xFA97e9B029D3CB15A6566CB52211B022dc67EFFB", + "24108185157" + ], + [ + "0xFA9D9208627ea8c35215F7DF409bF1F5110d2486", + "39358468883" + ], + [ + "0xfaAe91b5d3C0378eE245E120952b21736F382c59", + "9214945884" + ], + [ + "0xFAe73E896f6e35Bf60a52C4F7275381e8d0F6344", + "1237797593" + ], + [ + "0xFaE9C276d513E6dC5060BB9bE5111c3124C4376c", + "6332099787" + ], + [ + "0xFb00Fab6af5a0aCD8718557D34B52828Ae128D34", + "374715161008" + ], + [ + "0xFB0B928E38Bf945aAa6DF73a17A5e837441BA386", + "199770027269" + ], + [ + "0xfB464Fcd5342D2997A43C6B7bcA7615d0fbDEeD9", + "17633966887" + ], + [ + "0xfb578D95837a7c8c00BacC369A79d6b962305E70", + "7834379" + ], + [ + "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef", + "25836910088" + ], + [ + "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", + "90328046207" + ], + [ + "0xFBa3CA5d207872eD1984eAe82e0D3c8074e971c1", + "3200000000" + ], + [ + "0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55", + "48894648832" + ], + [ + "0xfc22875F01ffeD27d6477983626E369844ff954C", + "100049708431" + ], + [ + "0xFc64410a03b205b995a9101f99a55026D8F1f1da", + "4633" + ], + [ + "0xFc748762F301229bCeA219B584Fdf8423D8060A1", + "134878770448" + ], + [ + "0xFC846285a2D89D2f6a838c06c514F4dB00D96Fed", + "14195056726" + ], + [ + "0xfC96372d3e1D9313504F7fe47b3F63Bd8aA0273D", + "25539211412" + ], + [ + "0xfCA811318D6A0a118a7C79047D302E5B892bC723", + "4843434765" + ], + [ + "0xfcBa05D5556b6A450209A4c9E2fe9a259C84d50F", + "12805938966" + ], + [ + "0xfcce6CE62A8C9fa9D6647C953c26358B139C1679", + "14428800691" + ], + [ + "0xfcf6a3d7eb8c62a5256a020e48f153c6D5Dd6909", + "96" + ], + [ + "0xfcFAf5f45D86Fa16eC801a8DeFEd5D2cB196D242", + "2440875253" + ], + [ + "0xfD446abDE36c9dc02bB872303965484330EdA047", + "3" + ], + [ + "0xfD459E98FaCCB98838440dB466F01690322A721C", + "3" + ], + [ + "0xfD67bbb8b3980801e28b8D9c49fd9d1eA487087B", + "492191119" + ], + [ + "0xFD89d3831C6973fB5BA0b82022142b54AD9e8d46", + "936742873" + ], + [ + "0xfD96Fc073abC3357b52C0467F45f95c67c4d22fc", + "35045913558" + ], + [ + "0xFda1215797D29414E588B2e62fC390Ee2949aaAA", + "1" + ], + [ + "0xFdAE7777f9e6E0D07f986f05289624129c3EE69C", + "684713368" + ], + [ + "0xFE09f953E10f3e6A9d22710cb6f743e4142321bd", + "401026628685" + ], + [ + "0xFe202706E36F31aFBaf4b4543C2A8bBa4ddB2deE", + "4124494" + ], + [ + "0xfe365E0f0F49650C71955754e2CABA027C0E2198", + "1947689353" + ], + [ + "0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7", + "381987609128" + ], + [ + "0xfE5c7e0f6282Ef213F334a7C4c8EC0bFa8C2884e", + "509" + ], + [ + "0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f", + "2" + ], + [ + "0xFe84Ced1581a0943aBEa7d57ac47E2d01D132c98", + "1" + ], + [ + "0xFE9FeE8A2Ebf2fF510a57bD6323903a659230F21", + "37759189" + ], + [ + "0xfEC0Ac5f7d6049c55926c226703CE7154514fEA2", + "347143637" + ], + [ + "0xfEc2248956179BF6965865440328D73bAC4eB6D2", + "238130149275" + ], + [ + "0xFEEC05a103f3EE7C4C42EE1d799B39A5b4c62Dbf", + "5914005633" + ], + [ + "0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943", + "29705734263" + ], + [ + "0xFeFE31009B95c04E062Aa89C975Fb61B5Bd9e785", + "3558492484" + ], + [ + "0xff266f62a0152F39FCf123B7086012cEb292516A", + "4865144278" + ], + [ + "0xFf4A6b6F1016695551355737d4F1236141ec018D", + "42899504913" + ], + [ + "0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7", + "12686867419" + ], + [ + "0xff5E7372B4592Bd9d872f58fe22AA024AafaC9c8", + "970389019" + ], + [ + "0xffb100C7Ec7463191F5C29598C2259334Ea77C94", + "100000000" + ], + [ + "0xffE8e5d3401C48Dfa05f6C6ee3b5cbBD2cb83F30", + "467748" + ] +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 54b28291..3e0a3593 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -3,11 +3,11 @@ const fs = require("fs"); // Deploys SiloPayback, BarnPayback, and ShipmentPlanner contracts async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, account, verbose = true }) { if (verbose) { - console.log("Deploying Beanstalk shipment contracts..."); + console.log("šŸš€ Deploying Beanstalk shipment contracts..."); } //////////////////////////// Silo Payback //////////////////////////// - console.log("\nDeploying SiloPayback..."); + console.log("\nšŸ“¦ Deploying SiloPayback..."); const siloPaybackFactory = await ethers.getContractFactory("SiloPayback", account); // factory, args, proxy options const siloPaybackContract = await upgrades.deployProxy(siloPaybackFactory, [PINTO, L2_PINTO], { @@ -15,12 +15,11 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, account, verbo kind: "transparent" }); await siloPaybackContract.deployed(); - if (verbose) console.log("SiloPayback deployed to:", siloPaybackContract.address); - if (verbose) console.log("SiloPayback owner:", await siloPaybackContract.owner()); + if (verbose) console.log("āœ… SiloPayback deployed to:", siloPaybackContract.address); + if (verbose) console.log("šŸ‘¤ SiloPayback owner:", await siloPaybackContract.owner()); //////////////////////////// Barn Payback //////////////////////////// - console.log("--------------------------------"); - console.log("Deploying BarnPayback..."); + console.log("\nšŸ“¦ Deploying BarnPayback..."); const barnPaybackFactory = await ethers.getContractFactory("BarnPayback", account); // get the initialization args from the json file const barnPaybackArgsPath = "./scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json"; @@ -35,17 +34,15 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, account, verbo } ); await barnPaybackContract.deployed(); - if (verbose) console.log("BarnPayback deployed to:", barnPaybackContract.address); - if (verbose) console.log("BarnPayback owner:", await barnPaybackContract.owner()); + if (verbose) console.log("āœ… BarnPayback deployed to:", barnPaybackContract.address); + if (verbose) console.log("šŸ‘¤ BarnPayback owner:", await barnPaybackContract.owner()); //////////////////////////// Shipment Planner //////////////////////////// - console.log("--------------------------------"); - console.log("Deploying ShipmentPlanner..."); + console.log("\nšŸ“¦ Deploying ShipmentPlanner..."); const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner", account); const shipmentPlannerContract = await shipmentPlannerFactory.deploy(L2_PINTO, PINTO); await shipmentPlannerContract.deployed(); - if (verbose) console.log("ShipmentPlanner deployed to:", shipmentPlannerContract.address); - console.log("--------------------------------"); + if (verbose) console.log("āœ… ShipmentPlanner deployed to:", shipmentPlannerContract.address); return { siloPaybackContract, @@ -61,14 +58,16 @@ async function distributeUnripeBdvTokens({ dataPath, verbose = true }) { - if (verbose) console.log("Distributing unripe BDV tokens..."); + if (verbose) console.log("🌱 Distributing unripe BDV tokens..."); try { const unripeAccountBdvTokens = JSON.parse(fs.readFileSync(dataPath)); + // log the length of the array + console.log("šŸ“Š Unripe BDV Accounts to be distributed:", unripeAccountBdvTokens.length); // mint all in one transaction await siloPaybackContract.connect(account).batchMint(unripeAccountBdvTokens); - if (verbose) console.log("Unripe BDV tokens distributed to old Beanstalk participants"); + if (verbose) console.log("āœ… Unripe BDV tokens distributed to old Beanstalk participants"); } catch (error) { console.error("Error distributing unripe BDV tokens:", error); throw error; @@ -82,17 +81,19 @@ async function distributeBarnPaybackTokens({ dataPath, verbose = true }) { - if (verbose) console.log("Distributing barn payback tokens..."); + if (verbose) console.log("🌱 Distributing barn payback tokens..."); try { const accountFertilizers = JSON.parse(fs.readFileSync(dataPath)); + // log the length of the array + console.log("šŸ“Š Fertilizer Ids to be distributed:", accountFertilizers.length); // mint all in one transaction await barnPaybackContract.connect(account).mintFertilizers(accountFertilizers); } catch (error) { console.error("Error distributing barn payback tokens:", error); throw error; } - if (verbose) console.log("Barn payback tokens distributed to old Beanstalk participants"); + if (verbose) console.log("āœ… Barn payback tokens distributed to old Beanstalk participants"); } // Transfers ownership of both payback contracts to PCM @@ -102,13 +103,13 @@ async function transferContractOwnership({ L2_PCM, verbose = true }) { - if (verbose) console.log("Transferring ownership to PCM..."); + if (verbose) console.log("šŸ”„ Transferring ownership to PCM..."); await siloPaybackContract.transferOwnership(L2_PCM); - if (verbose) console.log("SiloPayback ownership transferred to PCM"); + if (verbose) console.log("āœ… SiloPayback ownership transferred to PCM"); await barnPaybackContract.transferOwnership(L2_PCM); - if (verbose) console.log("BarnPayback ownership transferred to PCM"); + if (verbose) console.log("āœ… BarnPayback ownership transferred to PCM"); } // Main function that orchestrates all deployment steps diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js new file mode 100644 index 00000000..6605673a --- /dev/null +++ b/scripts/beanstalkShipments/parsers/index.js @@ -0,0 +1,51 @@ +const parseBarnData = require('./parseBarnData'); +const parseFieldData = require('./parseFieldData'); +const parseSiloData = require('./parseSiloData'); + +/** + * Main parser orchestrator that runs all parsers + * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + */ +function parseAllExportData(parseContracts = false) { + console.log('āš™ļø Starting export data parsing...'); + console.log(`šŸ“„ Include contracts: ${parseContracts}`); + + const results = {}; + + try { + // Parse barn data + console.log('\nšŸ›ļø BARN DATA'); + console.log('-'.repeat(30)); + results.barn = parseBarnData(parseContracts); + + // Parse field data + console.log('🌾 FIELD DATA'); + console.log('-'.repeat(30)); + results.field = parseFieldData(parseContracts); + + // Parse silo data + console.log('šŸ¢ SILO DATA'); + console.log('-'.repeat(30)); + results.silo = parseSiloData(parseContracts); + + console.log('šŸ“‹ PARSING SUMMARY'); + console.log('-'.repeat(30)); + console.log(`šŸ“Š Barn: ${results.barn.stats.fertilizerIds} fertilizer IDs, ${results.barn.stats.accountEntries} account entries`); + console.log(`šŸ“Š Field: ${results.field.stats.totalAccounts} accounts, ${results.field.stats.totalPlots} plots`); + console.log(`šŸ“Š Silo: ${results.silo.stats.totalAccounts} accounts with BDV`); + console.log(`šŸ“Š Include contracts: ${parseContracts}`); + + return results; + } catch (error) { + console.error('Error during parsing:', error); + throw error; + } +} + +// Export individual parsers and main function +module.exports = { + parseBarnData, + parseFieldData, + parseSiloData, + parseAllExportData +}; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseBarnData.js b/scripts/beanstalkShipments/parsers/parseBarnData.js new file mode 100644 index 00000000..4f44d98a --- /dev/null +++ b/scripts/beanstalkShipments/parsers/parseBarnData.js @@ -0,0 +1,131 @@ +const fs = require('fs'); +const path = require('path'); + +/** + * Parses barn export data into the beanstalkAccountFertilizer and beanstalkGlobalFertilizer formats + * + * Expected output formats: + * beanstalkAccountFertilizer.json: Array of [fertId, [[account, amount, lastBpf]]] + * beanstalkGlobalFertilizer.json: [fertIds[], amounts[], activeFertilizer, fertilizedIndex, unfertilizedIndex, fertilizedPaidIndex, fertFirst, fertLast, bpf, leftoverBeans] + * + * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + */ +function parseBarnData(includeContracts = false) { + const inputPath = path.join(__dirname, '../data/exports/beanstalk_barn.json'); + const outputAccountPath = path.join(__dirname, '../data/beanstalkAccountFertilizer.json'); + const outputGlobalPath = path.join(__dirname, '../data/beanstalkGlobalFertilizer.json'); + + console.log('Reading barn export data...'); + const barnData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); + + const { + beanBpf, + arbEOAs, + arbContracts = {}, + ethContracts = {}, + storage + } = barnData; + + const { + fertilizer: storageFertilizer = {}, + activeFertilizer, + fertilizedIndex, + unfertilizedIndex, + fertilizedPaidIndex, + fertFirst, + fertLast, + bpf, + leftoverBeans + } = storage || {}; + + console.log(`🌱 Using beanBpf: ${beanBpf}`); + console.log(`šŸ“‹ Processing ${Object.keys(arbEOAs).length} arbEOAs`); + if (includeContracts) { + console.log(`šŸ“‹ Processing ${Object.keys(arbContracts).length} arbContracts`); + console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); + } + + // Combine data sources based on flag + const allAccounts = { ...arbEOAs }; + if (includeContracts) { + Object.assign(allAccounts, arbContracts); + Object.assign(allAccounts, ethContracts); + } + + // Use storage fertilizer data directly for global fertilizer + const sortedFertIds = Object.keys(storageFertilizer).sort((a, b) => parseInt(a) - parseInt(b)); + const fertAmounts = sortedFertIds.map(fertId => storageFertilizer[fertId]); + + // Build fertilizer data structures for account fertilizer + const fertilizerMap = new Map(); // fertId -> { accounts: [[account, amount]], totalAmount: number } + + // Process all accounts + for (const [accountAddress, accountData] of Object.entries(allAccounts)) { + const { beanFert } = accountData; + + if (!beanFert) continue; + + for (const [fertId, amount] of Object.entries(beanFert)) { + if (!fertilizerMap.has(fertId)) { + fertilizerMap.set(fertId, { + accounts: [], + totalAmount: 0 + }); + } + + const fertData = fertilizerMap.get(fertId); + fertData.accounts.push([accountAddress, amount, beanBpf]); + fertData.totalAmount += parseInt(amount); + } + } + + // Build account fertilizer output format + const accountFertilizer = []; + for (const fertId of sortedFertIds) { + const fertData = fertilizerMap.get(fertId); + if (fertData && fertData.accounts.length > 0) { + accountFertilizer.push([fertId, fertData.accounts]); + } + } + + const globalFertilizer = [ + sortedFertIds, // fertilizerIds (uint128[]) + fertAmounts, // fertilizerAmounts (uint256[]) + activeFertilizer || "0", // activeFertilizer (uint256) + fertilizedIndex || "0", // fertilizedIndex (uint256) + unfertilizedIndex || "0", // unfertilizedIndex (uint256) + fertilizedPaidIndex || "0", // fertilizedPaidIndex (uint256) + fertFirst || "0", // fertFirst (uint128) + fertLast || "0", // fertLast (uint128) + bpf || "0", // bpf (uint128) + leftoverBeans || "0" // leftoverBeans (uint256) + ]; + + // Write output files + console.log('šŸ’¾ Writing beanstalkAccountFertilizer.json...'); + fs.writeFileSync(outputAccountPath, JSON.stringify(accountFertilizer, null, 2)); + + console.log('šŸ’¾ Writing beanstalkGlobalFertilizer.json...'); + fs.writeFileSync(outputGlobalPath, JSON.stringify(globalFertilizer, null, 2)); + + console.log('āœ… Barn data parsing complete!'); + console.log(` šŸ“Š Account fertilizer entries: ${accountFertilizer.length}`); + console.log(` šŸ“Š Global fertilizer IDs: ${sortedFertIds.length}`); + console.log(` šŸ“Š Active fertilizer: ${activeFertilizer}`); + console.log(` šŸ“Š Include contracts: ${includeContracts}`); + console.log(''); + + return { + accountFertilizer, + globalFertilizer, + stats: { + fertilizerIds: sortedFertIds.length, + accountEntries: accountFertilizer.length, + activeFertilizer: activeFertilizer || "0", + includeContracts + } + }; +} + +// Export for use in other scripts +module.exports = parseBarnData; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseFieldData.js b/scripts/beanstalkShipments/parsers/parseFieldData.js new file mode 100644 index 00000000..02141651 --- /dev/null +++ b/scripts/beanstalkShipments/parsers/parseFieldData.js @@ -0,0 +1,93 @@ +const fs = require('fs'); +const path = require('path'); + +/** + * Parses field export data into the beanstalkPlots format + * + * Expected output format: + * beanstalkPlots.json: Array of [account, [[plotIndex, pods]]] + * + * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + */ +function parseFieldData(includeContracts = false) { + const inputPath = path.join(__dirname, '../data/exports/beanstalk_field.json'); + const outputPath = path.join(__dirname, '../data/beanstalkPlots.json'); + + console.log('Reading field export data...'); + const fieldData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); + + const { arbEOAs, arbContracts = {}, ethContracts = {} } = fieldData; + + console.log(`šŸ“‹ Processing ${Object.keys(arbEOAs).length} arbEOAs`); + if (includeContracts) { + console.log(`šŸ“‹ Processing ${Object.keys(arbContracts).length} arbContracts`); + console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); + } + + // Combine data sources based on flag + const allAccounts = { ...arbEOAs }; + if (includeContracts) { + Object.assign(allAccounts, arbContracts); + Object.assign(allAccounts, ethContracts); + } + + // Build plots data structure + const plotsData = []; + + // Process all accounts + for (const [accountAddress, plotsMap] of Object.entries(allAccounts)) { + if (!plotsMap || typeof plotsMap !== 'object') continue; + + const accountPlots = []; + + // Convert plot map to array format + for (const [plotIndex, pods] of Object.entries(plotsMap)) { + accountPlots.push([plotIndex, pods]); + } + + // Sort plots by index (numerically) + accountPlots.sort((a, b) => { + const indexA = typeof a[0] === 'string' ? parseInt(a[0]) : a[0]; + const indexB = typeof b[0] === 'string' ? parseInt(b[0]) : b[0]; + return indexA - indexB; + }); + + if (accountPlots.length > 0) { + plotsData.push([accountAddress, accountPlots]); + } + } + + // Sort accounts by address for consistent output + plotsData.sort((a, b) => a[0].localeCompare(b[0])); + + // Calculate statistics + const totalAccounts = plotsData.length; + const totalPlots = plotsData.reduce((sum, [, plots]) => sum + plots.length, 0); + const totalPods = plotsData.reduce((sum, [, plots]) => { + return sum + plots.reduce((plotSum, [, pods]) => plotSum + parseInt(pods), 0); + }, 0); + + // Write output file + console.log('šŸ’¾ Writing beanstalkPlots.json...'); + fs.writeFileSync(outputPath, JSON.stringify(plotsData, null, 2)); + + console.log('āœ… Field data parsing complete!'); + console.log(` šŸ“Š Accounts with plots: ${totalAccounts}`); + console.log(` šŸ“Š Total plots: ${totalPlots}`); + console.log(` šŸ“Š Total pods: ${totalPods.toLocaleString()}`); + console.log(` šŸ“Š Include contracts: ${includeContracts}`); + console.log(''); // Add spacing + + return { + plotsData, + stats: { + totalAccounts, + totalPlots, + totalPods, + includeContracts + } + }; +} + +// Export for use in other scripts +module.exports = parseFieldData; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseSiloData.js b/scripts/beanstalkShipments/parsers/parseSiloData.js new file mode 100644 index 00000000..a381241b --- /dev/null +++ b/scripts/beanstalkShipments/parsers/parseSiloData.js @@ -0,0 +1,82 @@ +const fs = require('fs'); +const path = require('path'); + +/** + * Parses silo export data into the unripeBdvTokens format + * + * Expected output format: + * unripeBdvTokens.json: Array of [account, totalBdvAtRecapitalization] + * + * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + */ +function parseSiloData(includeContracts = false) { + const inputPath = path.join(__dirname, '../data/exports/beanstalk_silo.json'); + const outputPath = path.join(__dirname, '../data/unripeBdvTokens.json'); + + console.log('Reading silo export data...'); + const siloData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); + + const { arbEOAs, arbContracts = {}, ethContracts = {} } = siloData; + + console.log(`šŸ“‹ Processing ${Object.keys(arbEOAs).length} arbEOAs`); + if (includeContracts) { + console.log(`šŸ“‹ Processing ${Object.keys(arbContracts).length} arbContracts`); + console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); + } + + // Combine data sources based on flag + const allAccounts = { ...arbEOAs }; + if (includeContracts) { + Object.assign(allAccounts, arbContracts); + Object.assign(allAccounts, ethContracts); + } + + // Build unripe BDV data structure + const unripeBdvData = []; + + // Process all accounts + for (const [accountAddress, accountData] of Object.entries(allAccounts)) { + if (!accountData || !accountData.bdvAtRecapitalization || !accountData.bdvAtRecapitalization.total) continue; + + const { bdvAtRecapitalization } = accountData; + + // Use the pre-calculated total BDV at recapitalization + const totalBdv = parseInt(bdvAtRecapitalization.total); + + if (totalBdv > 0) { + unripeBdvData.push([accountAddress, totalBdv.toString()]); + } + } + + // Sort accounts by address for consistent output + unripeBdvData.sort((a, b) => a[0].localeCompare(b[0])); + + // Calculate statistics + const totalAccounts = unripeBdvData.length; + const totalBdv = unripeBdvData.reduce((sum, [, bdv]) => sum + parseInt(bdv), 0); + const averageBdv = totalAccounts > 0 ? Math.floor(totalBdv / totalAccounts) : 0; + + // Write output file + console.log('šŸ’¾ Writing unripeBdvTokens.json...'); + fs.writeFileSync(outputPath, JSON.stringify(unripeBdvData, null, 2)); + + console.log('āœ… Silo data parsing complete!'); + console.log(` šŸ“Š Accounts with BDV: ${totalAccounts}`); + console.log(` šŸ“Š Total BDV: ${totalBdv.toLocaleString()}`); + console.log(` šŸ“Š Average BDV per account: ${averageBdv.toLocaleString()}`); + console.log(` šŸ“Š Include contracts: ${includeContracts}`); + console.log(''); // Add spacing + + return { + unripeBdvData, + stats: { + totalAccounts, + totalBdv, + averageBdv, + includeContracts + } + }; +} + +// Export for use in other scripts +module.exports = parseSiloData; \ No newline at end of file From 944da8b80fdcca42e4833ff96b0a75130945d203 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 18 Aug 2025 15:30:28 +0300 Subject: [PATCH 042/270] improve chunking strategy and gas tracking --- .../init/shipments/InitReplaymentField.sol | 2 - .../beanstalkShipments/SiloPayback.sol | 4 +- hardhat.config.js | 12 +- .../deployPaybackContracts.js | 126 +++++++++++++++--- .../populateBeanstalkField.js | 72 +++++----- scripts/diamond.js | 1 + utils/read.js | 55 ++++++-- 7 files changed, 190 insertions(+), 82 deletions(-) diff --git a/contracts/beanstalk/init/shipments/InitReplaymentField.sol b/contracts/beanstalk/init/shipments/InitReplaymentField.sol index ecdcefdb..72394d66 100644 --- a/contracts/beanstalk/init/shipments/InitReplaymentField.sol +++ b/contracts/beanstalk/init/shipments/InitReplaymentField.sol @@ -4,7 +4,6 @@ pragma solidity ^0.8.20; import "contracts/libraries/LibAppStorage.sol"; -import "forge-std/console.sol"; /** * @title InitReplaymentField @@ -28,7 +27,6 @@ contract InitReplaymentField { function init(ReplaymentPlotData[] calldata accountPlots) external { // create new field initReplaymentField(); - console.log("new field created"); // populate the field to recreate the beanstalk podline initReplaymentPlots(accountPlots); } diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 4052f471..0b3a5606 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -123,11 +123,11 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { uint256 rewardsToClaim; if (tokenAmount == userCombinedBalance) { - // full balance claim - reset rewards to 0 + // full balance claim, reset rewards to 0 rewardsToClaim = totalEarned; rewards[account] = 0; } else { - // partial claim - rewards are proportional to the token amount specified + // partial claim, rewards are proportional to the token amount specified rewardsToClaim = (totalEarned * tokenAmount) / userCombinedBalance; // update rewards to reflect the portion claimed // maintains consistency since the user's checkpoint remains valid diff --git a/hardhat.config.js b/hardhat.config.js index 69853ffd..35fa4cc4 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2029,8 +2029,8 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi // params const verbose = false; // Reduced verbosity for cleaner output - const noFieldChunking = true; - const deploy = true; + const noFieldChunking = false; + const deploy = false; const parseContracts = true; // Step 0: Parse export data into required format @@ -2073,7 +2073,8 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi L2_PINTO, L2_PCM, account: deployer, - verbose + verbose, + useChunking: true, }); console.log("āœ… Payback contracts deployed and configured\n"); } @@ -2081,8 +2082,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi // Step 2: Create and populate beanstalk field console.log("šŸ“ˆ STEP 2: CREATING BEANSTALK FIELD"); console.log("-".repeat(50)); - console.log("ā­ļø Field population skipped for this run\n"); - // await populateBeanstalkField(L2_PINTO, owner, verbose, noFieldChunking); + await populateBeanstalkField(L2_PINTO, owner, verbose, noFieldChunking); // Step 3: Update shipment routes console.log("šŸ›¤ļø STEP 3: UPDATING SHIPMENT ROUTES"); @@ -2095,7 +2095,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi facetNames: [], initFacetName: "InitBeanstalkShipments", initArgs: [routes], - verbose: verbose, + verbose: true, account: owner }); console.log("āœ… Shipment routes updated\n"); diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 3e0a3593..f8618e6d 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -1,7 +1,8 @@ const fs = require("fs"); +const { splitEntriesIntoChunks, updateProgress, retryOperation } = require("../../utils/read.js"); // Deploys SiloPayback, BarnPayback, and ShipmentPlanner contracts -async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, account, verbose = true }) { +async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = true }) { if (verbose) { console.log("šŸš€ Deploying Beanstalk shipment contracts..."); } @@ -15,8 +16,8 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, account, verbo kind: "transparent" }); await siloPaybackContract.deployed(); - if (verbose) console.log("āœ… SiloPayback deployed to:", siloPaybackContract.address); - if (verbose) console.log("šŸ‘¤ SiloPayback owner:", await siloPaybackContract.owner()); + console.log("āœ… SiloPayback deployed to:", siloPaybackContract.address); + console.log("šŸ‘¤ SiloPayback owner:", await siloPaybackContract.owner()); //////////////////////////// Barn Payback //////////////////////////// console.log("\nšŸ“¦ Deploying BarnPayback..."); @@ -34,15 +35,15 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, L2_PCM, account, verbo } ); await barnPaybackContract.deployed(); - if (verbose) console.log("āœ… BarnPayback deployed to:", barnPaybackContract.address); - if (verbose) console.log("šŸ‘¤ BarnPayback owner:", await barnPaybackContract.owner()); + console.log("āœ… BarnPayback deployed to:", barnPaybackContract.address); + console.log("šŸ‘¤ BarnPayback owner:", await barnPaybackContract.owner()); //////////////////////////// Shipment Planner //////////////////////////// console.log("\nšŸ“¦ Deploying ShipmentPlanner..."); const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner", account); const shipmentPlannerContract = await shipmentPlannerFactory.deploy(L2_PINTO, PINTO); await shipmentPlannerContract.deployed(); - if (verbose) console.log("āœ… ShipmentPlanner deployed to:", shipmentPlannerContract.address); + console.log("āœ… ShipmentPlanner deployed to:", shipmentPlannerContract.address); return { siloPaybackContract, @@ -56,16 +57,57 @@ async function distributeUnripeBdvTokens({ siloPaybackContract, account, dataPath, - verbose = true + verbose = true, + useChunking = true, + targetEntriesPerChunk = 300 }) { if (verbose) console.log("🌱 Distributing unripe BDV tokens..."); try { const unripeAccountBdvTokens = JSON.parse(fs.readFileSync(dataPath)); - // log the length of the array console.log("šŸ“Š Unripe BDV Accounts to be distributed:", unripeAccountBdvTokens.length); - // mint all in one transaction - await siloPaybackContract.connect(account).batchMint(unripeAccountBdvTokens); + + if (!useChunking) { + // Process all tokens in a single transaction + console.log("Processing all tokens in a single transaction..."); + + // log the address of the payback contract + console.log("SiloPayback address:", siloPaybackContract.address); + + const tx = await siloPaybackContract.connect(account).batchMint(unripeAccountBdvTokens); + const receipt = await tx.wait(); + + if (verbose) console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + } else { + // Split into chunks for processing + const chunks = splitEntriesIntoChunks(unripeAccountBdvTokens, targetEntriesPerChunk); + console.log(`Starting to process ${chunks.length} chunks...`); + + let totalGasUsed = ethers.BigNumber.from(0); + + for (let i = 0; i < chunks.length; i++) { + if (verbose) { + console.log(`\n\nProcessing chunk ${i + 1}/${chunks.length}`); + console.log(`Chunk contains ${chunks[i].length} accounts`); + console.log("-----------------------------------"); + } + + await retryOperation(async () => { + // mint tokens to users in chunks + const tx = await siloPaybackContract.connect(account).batchMint(chunks[i]); + const receipt = await tx.wait(); + totalGasUsed = totalGasUsed.add(receipt.gasUsed); + if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); + }); + + await updateProgress(i + 1, chunks.length); + } + + if (verbose) { + console.log("\nšŸ“Š Total Gas Summary:"); + console.log(`⛽ Total gas used: ${totalGasUsed.toString()}`); + } + } if (verbose) console.log("āœ… Unripe BDV tokens distributed to old Beanstalk participants"); } catch (error) { @@ -79,21 +121,65 @@ async function distributeBarnPaybackTokens({ barnPaybackContract, account, dataPath, - verbose = true + verbose = true, + useChunking = true, + targetEntriesPerChunk = 300 }) { if (verbose) console.log("🌱 Distributing barn payback tokens..."); try { const accountFertilizers = JSON.parse(fs.readFileSync(dataPath)); - // log the length of the array console.log("šŸ“Š Fertilizer Ids to be distributed:", accountFertilizers.length); - // mint all in one transaction - await barnPaybackContract.connect(account).mintFertilizers(accountFertilizers); + + if (!useChunking) { + // Process all fertilizers in a single transaction + console.log("Processing all fertilizers in a single transaction..."); + + // log the address of the payback contract + console.log("BarnPayback address:", barnPaybackContract.address); + + const tx = await barnPaybackContract.connect(account).mintFertilizers(accountFertilizers); + const receipt = await tx.wait(); + + if (verbose) console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + + } else { + // Split into chunks for processing + const chunks = splitEntriesIntoChunks(accountFertilizers, targetEntriesPerChunk); + console.log(`Starting to process ${chunks.length} chunks...`); + + let totalGasUsed = ethers.BigNumber.from(0); + + for (let i = 0; i < chunks.length; i++) { + if (verbose) { + console.log(`\n\nProcessing chunk ${i + 1}/${chunks.length}`); + console.log(`Chunk contains ${chunks[i].length} fertilizers`); + console.log("-----------------------------------"); + } + + await retryOperation(async () => { + const tx = await barnPaybackContract.connect(account).mintFertilizers(chunks[i]); + const receipt = await tx.wait(); + + totalGasUsed = totalGasUsed.add(receipt.gasUsed); + + if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); + }); + + await updateProgress(i + 1, chunks.length); + } + + if (verbose) { + console.log("\nšŸ“Š Total Gas Summary:"); + console.log(`⛽ Total gas used: ${totalGasUsed.toString()}`); + } + } + + if (verbose) console.log("āœ… Barn payback tokens distributed to old Beanstalk participants"); } catch (error) { console.error("Error distributing barn payback tokens:", error); throw error; } - if (verbose) console.log("āœ… Barn payback tokens distributed to old Beanstalk participants"); } // Transfers ownership of both payback contracts to PCM @@ -114,29 +200,29 @@ async function transferContractOwnership({ // Main function that orchestrates all deployment steps async function deployAndSetupContracts(params) { - const { verbose = true } = params; - const contracts = await deployShipmentContracts(params); await distributeUnripeBdvTokens({ siloPaybackContract: contracts.siloPaybackContract, account: params.account, dataPath: "./scripts/beanstalkShipments/data/unripeBdvTokens.json", - verbose + verbose: true, + useChunking: params.useChunking, }); await distributeBarnPaybackTokens({ barnPaybackContract: contracts.barnPaybackContract, account: params.account, dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", - verbose + verbose: true, + useChunking: params.useChunking, }); await transferContractOwnership({ siloPaybackContract: contracts.siloPaybackContract, barnPaybackContract: contracts.barnPaybackContract, L2_PCM: params.L2_PCM, - verbose + verbose: true, }); return contracts; diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index cd2cebd4..741ac778 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -1,6 +1,10 @@ const { upgradeWithNewFacets } = require("../diamond.js"); const fs = require("fs"); -const { splitEntriesIntoChunksOptimized, updateProgress, retryOperation } = require("../../utils/read.js"); +const { + splitEntriesIntoChunksOptimized, + updateProgress, + retryOperation +} = require("../../utils/read.js"); /** * Populates the beanstalk field by reading data from beanstalkPlots.json @@ -8,67 +12,53 @@ const { splitEntriesIntoChunksOptimized, updateProgress, retryOperation } = requ * @param {string} diamondAddress - The address of the diamond contract * @param {Object} account - The account to use for the transaction * @param {boolean} verbose - Whether to log verbose output - * @param {boolean} noChunking - Whether to pass all plots in one transaction (default: false) */ -async function populateBeanstalkField(diamondAddress, account, verbose = false, noChunking = true) { +async function populateBeanstalkField(diamondAddress, account, verbose = false) { console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots."); // Read and parse the JSON file const plotsPath = "./scripts/beanstalkShipments/data/beanstalkPlots.json"; const rawPlotData = JSON.parse(fs.readFileSync(plotsPath)); + // Split into chunks for processing + const targetEntriesPerChunk = 800; + const plotChunks = splitEntriesIntoChunksOptimized(rawPlotData, targetEntriesPerChunk); + console.log(`Starting to process ${plotChunks.length} chunks...`); + + // Deploy the standalone InitReplaymentField contract using ethers + const initReplaymentFieldFactory = await ethers.getContractFactory("InitReplaymentField", account); + const initReplaymentField = await initReplaymentFieldFactory.deploy(); + await initReplaymentField.deployed(); + console.log("āœ… InitReplaymentField deployed to:", initReplaymentField.address); + + for (let i = 0; i < plotChunks.length; i++) { + await updateProgress(i + 1, plotChunks.length); + if (verbose) { + console.log(`Processing chunk ${i + 1}/${plotChunks.length}`); + console.log(`Chunk contains ${plotChunks[i].length} accounts`); + console.log("-----------------------------------"); + } - if (noChunking) { - // Process all plots in a single transaction - console.log("Processing all plots in a single transaction..."); - await retryOperation(async () => { await upgradeWithNewFacets({ diamondAddress: diamondAddress, facetNames: [], // No new facets to deploy initFacetName: "InitReplaymentField", - initArgs: [rawPlotData], // Pass all plots as ReplaymentPlotData[] + initFacetAddress: initReplaymentField.address, // Re-use the same contract for all chunks + initArgs: [plotChunks[i]], // Pass the chunk as ReplaymentPlotData[] verbose: verbose, account: account }); }); - console.log("āœ… Successfully populated Beanstalk field with all plots in one transaction!"); - - } else { - // Split into chunks for processing (similar to reseed3 pattern) - const targetEntriesPerChunk = 300; - const plotChunks = splitEntriesIntoChunksOptimized(rawPlotData, targetEntriesPerChunk); - console.log(`Starting to process ${plotChunks.length} chunks...`); - - for (let i = 0; i < plotChunks.length; i++) { - await updateProgress(i + 1, plotChunks.length); - if (verbose) { - console.log(`Processing chunk ${i + 1}/${plotChunks.length}`); - console.log(`Chunk contains ${plotChunks[i].length} accounts`); - console.log("-----------------------------------"); - } - - await retryOperation(async () => { - await upgradeWithNewFacets({ - diamondAddress: diamondAddress, - facetNames: [], // No new facets to deploy - initFacetName: "InitReplaymentField", - initArgs: [plotChunks[i]], // Pass the chunk as ReplaymentPlotData[] - verbose: verbose, - account: account - }); - }); - - if (verbose) { - console.log(`Completed chunk ${i + 1}/${plotChunks.length}`); - } + if (verbose) { + console.log(`Completed chunk ${i + 1}/${plotChunks.length}`); } - - console.log("āœ… Successfully populated Beanstalk field with all plots!"); } + + console.log("āœ… Successfully populated Beanstalk field with all plots!"); } module.exports = { populateBeanstalkField -}; \ No newline at end of file +}; diff --git a/scripts/diamond.js b/scripts/diamond.js index 25f963a8..a808edd9 100644 --- a/scripts/diamond.js +++ b/scripts/diamond.js @@ -754,6 +754,7 @@ async function upgradeWithNewFacets({ const receipt = await result.wait(); totalGasUsed = totalGasUsed.add(receipt.gasUsed); + console.log("diamondCut totalGasUsed: ", totalGasUsed.toString()); if (verbose) { console.log("------"); console.log("Upgrade transaction hash: " + result.hash); diff --git a/utils/read.js b/utils/read.js index 62ff0ab1..32de193b 100644 --- a/utils/read.js +++ b/utils/read.js @@ -25,15 +25,50 @@ function convertToBigNum(value) { return BigNumber.from(value).toString(); } -function splitEntriesIntoChunks(entries, chunkSize) { +function splitEntriesIntoChunks(data, targetEntriesPerChunk) { const chunks = []; - // Calculate the number of chunks - const numChunks = Math.ceil(entries.length / chunkSize); - // Loop through the entries and create chunks - for (let i = 0; i < numChunks; i++) { - const chunk = entries.slice(i * chunkSize, (i + 1) * chunkSize); - chunks.push(chunk); + let currentChunk = []; + let currentChunkEntries = 0; + + for (const item of data) { + const itemEntries = countEntries(item); + + if (currentChunkEntries + itemEntries > targetEntriesPerChunk && currentChunk.length > 0) { + // This item would exceed the target, so start a new chunk + chunks.push(currentChunk); + currentChunk = []; + currentChunkEntries = 0; + } + + currentChunk.push(item); + currentChunkEntries += itemEntries; + } + + // Add any remaining entries to the last chunk + if (currentChunk.length > 0) { + chunks.push(currentChunk); + } + + return chunks; +} + +function splitIntoExactChunks(data, numberOfChunks) { + if (numberOfChunks <= 0) { + throw new Error("Number of chunks must be greater than 0"); + } + + if (numberOfChunks >= data.length) { + // If we want more chunks than items, return each item as its own chunk + return data.map((item) => [item]); + } + + const chunks = []; + const itemsPerChunk = Math.ceil(data.length / numberOfChunks); + + for (let i = 0; i < data.length; i += itemsPerChunk) { + chunks.push(data.slice(i, i + itemsPerChunk)); } + return chunks; } @@ -84,10 +119,7 @@ async function updateProgress(current, total) { if (filledLength > progressBarLength) filledLength = progressBarLength; const progressBar = "ā–ˆ".repeat(filledLength) + "ā–‘".repeat(progressBarLength - filledLength); - process.stdout.clearLine(0); - process.stdout.cursorTo(0); - process.stdout.write("\n"); // end the line - process.stdout.write(`Processing: [${progressBar}] ${percentage}% | Chunk ${current}/${total}`); + console.log(`Processing: [${progressBar}] ${percentage}% | Chunk ${current}/${total}`); } const MAX_RETRIES = 20; @@ -114,6 +146,7 @@ async function retryOperation(operation, retries = MAX_RETRIES) { exports.readPrune = readPrune; exports.splitEntriesIntoChunks = splitEntriesIntoChunks; +exports.splitIntoExactChunks = splitIntoExactChunks; exports.splitEntriesIntoChunksOptimized = splitEntriesIntoChunksOptimized; exports.updateProgress = updateProgress; exports.convertToBigNum = convertToBigNum; From a9b4475d0b75ed3a6139207d417c1dd94e728af9 Mon Sep 17 00:00:00 2001 From: nickkatsios Date: Tue, 19 Aug 2025 14:13:43 +0300 Subject: [PATCH 043/270] simplify init route script, initial fork tests --- .../init/shipments/InitBeanstalkShipments.sol | 31 +- contracts/interfaces/IBarnPayback.sol | 4 +- contracts/interfaces/ISiloPayback.sol | 4 +- .../BeanstalkShipments.t.sol | 65 +++- .../beanstalkShipments/SiloPayback.t.sol | 334 ++++++++++++++---- 5 files changed, 336 insertions(+), 102 deletions(-) diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index f659604a..8eb0d658 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -6,7 +6,6 @@ pragma solidity ^0.8.20; import "contracts/libraries/LibAppStorage.sol"; import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; -import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; /** @@ -14,32 +13,26 @@ import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; * The first route is the silo payback contract and the second route is the barn payback contract. **/ contract InitBeanstalkShipments { - function init(ShipmentRoute[] calldata routes) external { - AppStorage storage s = LibAppStorage.diamondStorage(); - // deploy the new shipment planner - address shipmentPlanner = address(new ShipmentPlanner(address(this), s.sys.bean)); + event ShipmentRoutesSet(ShipmentRoute[] newRoutes); + + function init(ShipmentRoute[] calldata newRoutes) external { + AppStorage storage s = LibAppStorage.diamondStorage(); - // set the shipment routes - _resetShipmentRoutes(shipmentPlanner, routes); + // set the shipment routes, replaces the entire set of routes + _setShipmentRoutes(newRoutes); } /** - * @notice Sets the shipment routes to the field, silo and dev budget. + * @notice Replaces the entire set of ShipmentRoutes with a new set. (from Distribution.sol) * @dev Solidity does not support direct assignment of array structs to Storage. */ - function _resetShipmentRoutes( - address shipmentPlanner, - ShipmentRoute[] calldata routes - ) internal { + function _setShipmentRoutes(ShipmentRoute[] calldata newRoutes) internal { AppStorage storage s = LibAppStorage.diamondStorage(); - // pop all the old routes that use the old shipment planner - while (s.sys.shipmentRoutes.length > 0) { - s.sys.shipmentRoutes.pop(); - } - // push the new routes that use the new shipment planner - for (uint256 i; i < routes.length; i++) { - s.sys.shipmentRoutes.push(routes[i]); + delete s.sys.shipmentRoutes; + for (uint256 i; i < newRoutes.length; i++) { + s.sys.shipmentRoutes.push(newRoutes[i]); } + emit ShipmentRoutesSet(newRoutes); } } diff --git a/contracts/interfaces/IBarnPayback.sol b/contracts/interfaces/IBarnPayback.sol index 86ba9725..accae547 100644 --- a/contracts/interfaces/IBarnPayback.sol +++ b/contracts/interfaces/IBarnPayback.sol @@ -1,5 +1,5 @@ -// SPDX-License-Identifier: UNLICENSED -pragma solidity ^0.8.4; +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; library LibTransfer { type To is uint8; diff --git a/contracts/interfaces/ISiloPayback.sol b/contracts/interfaces/ISiloPayback.sol index 643e0e7b..fed24548 100644 --- a/contracts/interfaces/ISiloPayback.sol +++ b/contracts/interfaces/ISiloPayback.sol @@ -1,5 +1,5 @@ -// SPDX-License-Identifier: UNLICENSED -pragma solidity ^0.8.4; +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; library LibTransfer { type To is uint8; diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index cdde7841..d33e4696 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -9,6 +9,7 @@ import {console} from "forge-std/console.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; +import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; /** * @notice Tests that the whole shipments initialization and logic works correctly. @@ -18,15 +19,36 @@ import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; * 3. Run the test: `forge test --match-test test_shipments --fork-url http://localhost:8545` */ contract BeanstalkShipmentsTest is TestHelper { - // Contracts address constant SHIPMENT_PLANNER = address(0x1152691C30aAd82eB9baE7e32d662B19391e34Db); address constant SILO_PAYBACK = address(0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E); address constant BARN_PAYBACK = address(0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b); + address constant DEV_BUDGET = address(0xb0cdb715D8122bd976a30996866Ebe5e51bb18b0); // Owners address constant PCM = address(0x2cf82605402912C6a79078a9BBfcCf061CbfD507); + // Shipment Recipient enum + enum ShipmentRecipient { + NULL, + SILO, + FIELD, + INTERNAL_BALANCE, + EXTERNAL_BALANCE, + SILO_PAYBACK, + BARN_PAYBACK + } + + struct ShipmentRoute { + address planContract; + bytes4 planSelector; + ShipmentRecipient recipient; + bytes data; + } + + // Constants + uint256 constant PAYBACK_FIELD_ID = 1; + // Users address farmer1 = makeAddr("farmer1"); address farmer2 = makeAddr("farmer2"); @@ -35,7 +57,7 @@ contract BeanstalkShipmentsTest is TestHelper { // Contracts ISiloPayback siloPayback = ISiloPayback(SILO_PAYBACK); IBarnPayback barnPayback = IBarnPayback(BARN_PAYBACK); - IMockFBeanstalk pinto = IMockFBeanstalk(L2_PINTO); + IMockFBeanstalk pinto = IMockFBeanstalk(PINTO); // we need to: // - Verify that all state matches the one in the json files for shipments, silo and barn payback @@ -49,16 +71,34 @@ contract BeanstalkShipmentsTest is TestHelper { } //////////////////////// STATE VERIFICATION //////////////////////// - // note: get properties from json, see l2migration - - function test_shipment_state() public { - console.log("Bs Field data:"); - console.logBytes(abi.encode(1)); - console.log("Silo payback:"); - console.logBytes(abi.encode(SILO_PAYBACK)); - console.log("Barn payback:"); - console.logBytes(abi.encode(BARN_PAYBACK)); + function test_shipment_routes() public { + // get shipment routes + IMockFBeanstalk.ShipmentRoute[] memory routes = pinto.getShipmentRoutes(); + // silo (0x01) + assertEq(routes[0].planSelector, ShipmentPlanner.getSiloPlan.selector); + assertEq(uint8(routes[0].recipient), uint8(IShipmentRecipient.SILO)); + assertEq(routes[0].data, new bytes(32)); + // field (0x02) + assertEq(routes[1].planSelector, ShipmentPlanner.getFieldPlan.selector); + assertEq(uint8(routes[1].recipient), uint8(ShipmentRecipient.FIELD)); + assertEq(routes[1].data, abi.encodePacked(uint256(0))); + // budget (0x03) + assertEq(routes[2].planSelector, ShipmentPlanner.getBudgetPlan.selector); + assertEq(uint8(routes[2].recipient), uint8(ShipmentRecipient.INTERNAL_BALANCE)); + assertEq(routes[2].data, abi.encode(DEV_BUDGET)); + // payback field (0x02) + assertEq(routes[3].planSelector, ShipmentPlanner.getPaybackFieldPlan.selector); + assertEq(uint8(routes[3].recipient), uint8(ShipmentRecipient.FIELD)); + assertEq(routes[3].data, abi.encode(PAYBACK_FIELD_ID, PCM)); + // payback silo (0x05) + assertEq(routes[4].planSelector, ShipmentPlanner.getPaybackSiloPlan.selector); + assertEq(uint8(routes[4].recipient), uint8(ShipmentRecipient.SILO_PAYBACK)); + assertEq(routes[4].data, abi.encode(SILO_PAYBACK)); + // payback barn (0x06) + assertEq(routes[5].planSelector, ShipmentPlanner.getPaybackBarnPlan.selector); + assertEq(uint8(routes[5].recipient), uint8(ShipmentRecipient.BARN_PAYBACK)); + assertEq(routes[5].data, abi.encode(BARN_PAYBACK)); } function test_repayment_field_state() public {} @@ -66,10 +106,9 @@ contract BeanstalkShipmentsTest is TestHelper { function test_silo_payback_state() public {} function test_barn_payback_state() public {} - //////////////////////// SHIPMENT DISTRIBUTION //////////////////////// - // note: test distribution at the edge, + // note: test distribution at the edge, // note: test when a payback is done // note: test that all users can claim their rewards at any point } diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index 18fdd9be..94af22ab 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -97,8 +97,29 @@ contract SiloPaybackTest is TestHelper { function test_siloPaybackEarnedCalculationMultipleUsers() public { // Mint tokens: farmer1 40%, farmer2 60% - _mintTokensToUser(farmer1, 400e6); - _mintTokensToUser(farmer2, 600e6); + _mintTokensToUser(farmer1, 400e6, LibTransfer.To.EXTERNAL); + _mintTokensToUser(farmer2, 600e6, LibTransfer.To.EXTERNAL); + + // Send rewards + uint256 rewardAmount = 150e6; + _sendRewardsToContract(rewardAmount); + + // Check proportional rewards + assertEq(siloPayback.earned(farmer1), 60e6); // 40% of 150 + assertEq(siloPayback.earned(farmer2), 90e6); // 60% of 150 + + // Total should equal reward amount + assertEq(siloPayback.earned(farmer1) + siloPayback.earned(farmer2), rewardAmount); + } + + function test_siloPaybackEarnedCalculationMultipleUsersPartialInternalBalance() public { + // Mint tokens: farmer1 40%, farmer2 60% + _mintTokensToUser(farmer1, 400e6, LibTransfer.To.INTERNAL); + _mintTokensToUser(farmer2, 600e6, LibTransfer.To.INTERNAL); + + // Get initial internal balances + uint256 farmer1InternalBefore = bs.getInternalBalance(farmer1, address(BEAN)); + uint256 farmer2InternalBefore = bs.getInternalBalance(farmer2, address(BEAN)); // Send rewards uint256 rewardAmount = 150e6; @@ -115,14 +136,14 @@ contract SiloPaybackTest is TestHelper { ////////////// Claim ////////////// /** - * @dev test that two users can claim their rewards pro rata to their balance + * @dev test that two users can claim their rewards pro rata to their combined balance * - farmer1 claims after each distribution * - farmer2 waits until the end */ - function test_siloPayback2UsersLateClaim() public { + function test_siloPayback2UsersLateFullClaim() public { // Setup: farmer1 claims after each distribution, farmer2 waits until the end - _mintTokensToUser(farmer1, 400e6); // farmer1 has 40% - _mintTokensToUser(farmer2, 600e6); // farmer2 has 60% + _mintTokensToUser(farmer1, 400e6, LibTransfer.To.EXTERNAL); // farmer1 has 40% + _mintTokensToUser(farmer2, 600e6, LibTransfer.To.EXTERNAL); // farmer2 has 60% // First distribution: 100 BEAN rewards _sendRewardsToContract(100e6); @@ -182,151 +203,251 @@ contract SiloPaybackTest is TestHelper { assertEq(siloPayback.earned(farmer2), 0); } + /** + * @dev test that a user can claim a partial amount of their rewards and then the remaining rewards + */ + function test_siloPayback1UserPartialClaim() public { + // Setup: farmer1 has 40% + _mintTokensToUser(farmer1, 400e6, LibTransfer.To.EXTERNAL); // farmer1 has 40% + _mintTokensToUser(farmer2, 600e6, LibTransfer.To.EXTERNAL); // farmer2 has 60% + + // First distribution: 100 BEAN rewards + _sendRewardsToContract(100e6); + + uint256 amountToClaimFor = 200e6; // 50% of farmer1's balance + + // farmer1 claims 50% of their balance + vm.prank(farmer1); + siloPayback.claim(amountToClaimFor, farmer1, LibTransfer.To.EXTERNAL); + uint256 farmer1BalanceAfter = IERC20(BEAN).balanceOf(farmer1); + + // Verify farmer1 claimed 20% of total rewards, 20e6 still remaining + assertEq(siloPayback.earned(farmer1), 20e6); + // state has synced but some rewards remain + assertEq(siloPayback.userRewardPerTokenPaid(farmer1), siloPayback.rewardPerTokenStored()); + // verify balance of bean for farmer1 is 20e6 + assertEq(IERC20(BEAN).balanceOf(farmer1), 20e6); + + // then the user claims the remaining rewards + vm.prank(farmer1); + siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + + // verify balance of bean for farmer1 is 40e6, the full pro rata reward + assertEq(IERC20(BEAN).balanceOf(farmer1), 40e6); + // verify state is still synced but no rewards remain + assertEq(siloPayback.earned(farmer1), 0); + assertEq(siloPayback.userRewardPerTokenPaid(farmer1), siloPayback.rewardPerTokenStored()); + } + /** * @dev test that two users can claim their rewards to their internal balance */ - function test_siloPaybackClaimToInternalBalance2Users() public { + function test_siloPaybackFullClaimToInternalBalance2Users() public { // Simple test: Both farmers claim rewards to their internal balance - _mintTokensToUser(farmer1, 600e6); // 60% - _mintTokensToUser(farmer2, 400e6); // 40% - + _mintTokensToUser(farmer1, 600e6, LibTransfer.To.EXTERNAL); // 60% + _mintTokensToUser(farmer2, 400e6, LibTransfer.To.EXTERNAL); // 40% + // Distribute rewards uint256 rewardAmount = 150e6; _sendRewardsToContract(rewardAmount); - + uint256 farmer1Earned = siloPayback.earned(farmer1); // 90 BEAN (60%) uint256 farmer2Earned = siloPayback.earned(farmer2); // 60 BEAN (40%) assertEq(farmer1Earned, 90e6); assertEq(farmer2Earned, 60e6); - + // Get initial internal balances uint256 farmer1InternalBefore = bs.getInternalBalance(farmer1, address(BEAN)); uint256 farmer2InternalBefore = bs.getInternalBalance(farmer2, address(BEAN)); - + // Both farmers claim to INTERNAL balance vm.prank(farmer1); siloPayback.claim(0, farmer1, LibTransfer.To.INTERNAL); // 0 means claim all - + vm.prank(farmer2); siloPayback.claim(0, farmer2, LibTransfer.To.INTERNAL); // 0 means claim all - + // Verify both farmers' rewards went to internal balance uint256 farmer1InternalAfter = bs.getInternalBalance(farmer1, address(BEAN)); uint256 farmer2InternalAfter = bs.getInternalBalance(farmer2, address(BEAN)); - - assertEq(farmer1InternalAfter, farmer1InternalBefore + farmer1Earned, "farmer1 internal balance should increase by earned amount"); - assertEq(farmer2InternalAfter, farmer2InternalBefore + farmer2Earned, "farmer2 internal balance should increase by earned amount"); - + + assertEq( + farmer1InternalAfter, + farmer1InternalBefore + farmer1Earned, + "farmer1 internal balance should increase by earned amount" + ); + assertEq( + farmer2InternalAfter, + farmer2InternalBefore + farmer2Earned, + "farmer2 internal balance should increase by earned amount" + ); + // Both users should have zero earned rewards after claiming assertEq(siloPayback.earned(farmer1), 0, "farmer1 earned should reset after claim"); assertEq(siloPayback.earned(farmer2), 0, "farmer2 earned should reset after claim"); - + // Verify total internal balance increases equal total distributed rewards - uint256 totalInternalIncrease = (farmer1InternalAfter - farmer1InternalBefore) + (farmer2InternalAfter - farmer2InternalBefore); - assertEq(totalInternalIncrease, rewardAmount, "Total internal balance increase should equal total distributed rewards"); + uint256 totalInternalIncrease = (farmer1InternalAfter - farmer1InternalBefore) + + (farmer2InternalAfter - farmer2InternalBefore); + assertEq( + totalInternalIncrease, + rewardAmount, + "Total internal balance increase should equal total distributed rewards" + ); } ////////////// Double claim and transfer logic ////////////// - function test_siloPaybackDoubleClaimAndTransferNoClaiming() public { + function test_siloPaybackDoubleClaimAndExternalTransferNoClaiming() public { // Step 1: Setup users with different token amounts - _mintTokensToUser(farmer1, 600e6); // 60% ownership - _mintTokensToUser(farmer2, 400e6); // 40% ownership - + _mintTokensToUser(farmer1, 600e6, LibTransfer.To.EXTERNAL); // 60% ownership + _mintTokensToUser(farmer2, 400e6, LibTransfer.To.EXTERNAL); // 40% ownership + // Step 2: First reward distribution - both users earn proportionally _sendRewardsToContract(150e6); - + uint256 farmer1InitialEarned = siloPayback.earned(farmer1); // 90 BEAN (60%) uint256 farmer2InitialEarned = siloPayback.earned(farmer2); // 60 BEAN (40%) assertEq(farmer1InitialEarned, 90e6, "farmer1 should earn 60% of first distribution"); assertEq(farmer2InitialEarned, 60e6, "farmer2 should earn 40% of first distribution"); - + // Step 3: Transfer updates rewards (prevents gaming through checkpoint sync) uint256 farmer1PreTransferCheckpoint = siloPayback.userRewardPerTokenPaid(farmer1); uint256 farmer2PreTransferCheckpoint = siloPayback.userRewardPerTokenPaid(farmer2); - + // farmer1 transfers 200 tokens to farmer2 vm.prank(farmer1); siloPayback.transfer(farmer2, 200e6); - + // Verify that transfer hook captured earned rewards and updated checkpoints - assertEq(siloPayback.rewards(farmer1), farmer1InitialEarned, "farmer1 rewards should be captured in storage"); - assertEq(siloPayback.rewards(farmer2), farmer2InitialEarned, "farmer2 rewards should be captured in storage"); - assertEq(siloPayback.userRewardPerTokenPaid(farmer1), siloPayback.rewardPerTokenStored(), "farmer1 checkpoint updated"); - assertEq(siloPayback.userRewardPerTokenPaid(farmer2), siloPayback.rewardPerTokenStored(), "farmer2 checkpoint updated"); - + assertEq( + siloPayback.rewards(farmer1), + farmer1InitialEarned, + "farmer1 rewards should be captured in storage" + ); + assertEq( + siloPayback.rewards(farmer2), + farmer2InitialEarned, + "farmer2 rewards should be captured in storage" + ); + assertEq( + siloPayback.userRewardPerTokenPaid(farmer1), + siloPayback.rewardPerTokenStored(), + "farmer1 checkpoint updated" + ); + assertEq( + siloPayback.userRewardPerTokenPaid(farmer2), + siloPayback.rewardPerTokenStored(), + "farmer2 checkpoint updated" + ); + // Verify that earned amounts remain the same after transfer (no double counting) - assertEq(siloPayback.earned(farmer1), farmer1InitialEarned, "farmer1 earned should remain same after transfer"); - assertEq(siloPayback.earned(farmer2), farmer2InitialEarned, "farmer2 earned should remain same after transfer"); - - // Verify that token balances updated correctly + assertEq( + siloPayback.earned(farmer1), + farmer1InitialEarned, + "farmer1 earned should remain same after transfer" + ); + assertEq( + siloPayback.earned(farmer2), + farmer2InitialEarned, + "farmer2 earned should remain same after transfer" + ); + + // Verify that token balances updated correctly assertEq(siloPayback.balanceOf(farmer1), 400e6, "farmer1 balance after transfer"); assertEq(siloPayback.balanceOf(farmer2), 600e6, "farmer2 balance after transfer"); - - // Step 4: Anti-gaming test - farmer1 tries to game by transferring to farmer3 (new user) + + // Step 4: farmer1 tries to double claim by transferring to farmer3 (new user) vm.prank(farmer1); siloPayback.transfer(farmer3, 200e6); - + // Verify that farmer3 starts fresh with no previous rewards - assertEq(siloPayback.earned(farmer3), 0, "farmer3 should have no rewards from before they held tokens"); - assertEq(siloPayback.userRewardPerTokenPaid(farmer3), siloPayback.rewardPerTokenStored(), "farmer3 synced to current state"); + assertEq( + siloPayback.earned(farmer3), + 0, + "farmer3 should have no rewards from before they held tokens" + ); + assertEq( + siloPayback.userRewardPerTokenPaid(farmer3), + siloPayback.rewardPerTokenStored(), + "farmer3 synced to current state" + ); assertEq(siloPayback.balanceOf(farmer3), 200e6, "farmer3 received tokens"); - + // farmer1 still has their original earned rewards - assertEq(siloPayback.earned(farmer1), farmer1InitialEarned, "farmer1 retains original rewards"); - + assertEq( + siloPayback.earned(farmer1), + farmer1InitialEarned, + "farmer1 retains original rewards" + ); + // Step 5: Second reward distribution - new proportional split _sendRewardsToContract(300e6); - + // Current balances: farmer1=200, farmer2=600, farmer3=200 (total=1000) // New rewards: 300 BEAN should be split: 20%, 60%, 20% - + uint256 farmer1FinalEarned = siloPayback.earned(farmer1); // 90 (original) + 60 (20% of 300) - uint256 farmer2FinalEarned = siloPayback.earned(farmer2); // 60 (original) + 180 (60% of 300) + uint256 farmer2FinalEarned = siloPayback.earned(farmer2); // 60 (original) + 180 (60% of 300) uint256 farmer3FinalEarned = siloPayback.earned(farmer3); // 0 (original) + 60 (20% of 300) - + assertEq(farmer1FinalEarned, 150e6, "farmer1: 90 original + 60 new rewards"); assertEq(farmer2FinalEarned, 240e6, "farmer2: 60 original + 180 new rewards"); assertEq(farmer3FinalEarned, 60e6, "farmer3: 0 original + 60 new rewards"); - + // Step 6: Verify total conservation - no rewards lost or duplicated uint256 totalEarned = farmer1FinalEarned + farmer2FinalEarned + farmer3FinalEarned; uint256 totalDistributed = 150e6 + 300e6; // 450 total assertEq(totalEarned, totalDistributed, "Total earned must equal total distributed"); - + // Step 7: All users claim and verify final balances uint256 farmer1BalanceBefore = IERC20(BEAN).balanceOf(farmer1); uint256 farmer2BalanceBefore = IERC20(BEAN).balanceOf(farmer2); uint256 farmer3BalanceBefore = IERC20(BEAN).balanceOf(farmer3); - + // Claim for all users vm.prank(farmer1); siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all - + vm.prank(farmer2); siloPayback.claim(0, farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all - + vm.prank(farmer3); siloPayback.claim(0, farmer3, LibTransfer.To.EXTERNAL); // 0 means claim all - + // Verify all rewards were paid out correctly - assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBefore + farmer1FinalEarned, "farmer1 received correct payout"); - assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2BalanceBefore + farmer2FinalEarned, "farmer2 received correct payout"); - assertEq(IERC20(BEAN).balanceOf(farmer3), farmer3BalanceBefore + farmer3FinalEarned, "farmer3 received correct payout"); - + assertEq( + IERC20(BEAN).balanceOf(farmer1), + farmer1BalanceBefore + farmer1FinalEarned, + "farmer1 received correct payout" + ); + assertEq( + IERC20(BEAN).balanceOf(farmer2), + farmer2BalanceBefore + farmer2FinalEarned, + "farmer2 received correct payout" + ); + assertEq( + IERC20(BEAN).balanceOf(farmer3), + farmer3BalanceBefore + farmer3FinalEarned, + "farmer3 received correct payout" + ); + // Contract should be empty after all claims - assertEq(IERC20(BEAN).balanceOf(address(siloPayback)), 0, "Contract should have no remaining BEAN"); - + assertEq( + IERC20(BEAN).balanceOf(address(siloPayback)), + 0, + "Contract should have no remaining BEAN" + ); + // All earned amounts should be reset to zero assertEq(siloPayback.earned(farmer1), 0, "farmer1 earned reset after claim"); assertEq(siloPayback.earned(farmer2), 0, "farmer2 earned reset after claim"); assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned reset after claim"); } - // test case for sure // user puts the tokens in their internal balance, we claim from the ui via a farm call. - // rewardPertoken paid for user is updated. + // rewardPertoken paid for user is updated. // rewards keep accumulating as pinto distribution happens @@ -334,6 +455,72 @@ contract SiloPaybackTest is TestHelper { // no state variables get updated BUT // earned now updates to reflect the new internal balance + function test_siloPaybackDoubleClaimInternalTransfer() public { + // Setup: farmer1 has 40% + _mintTokensToUser(farmer1, 100e6, LibTransfer.To.EXTERNAL); // farmer1 has 50% of total, half in internal + _mintTokensToUser(farmer1, 100e6, LibTransfer.To.INTERNAL); + _mintTokensToUser(farmer2, 200e6, LibTransfer.To.EXTERNAL); // farmer2 has 50% of total all in external + + // First distribution: 100 BEAN rewards + _sendRewardsToContract(100e6); + + // get the state of rewards pre-internal transfer + uint256 farmer1Earned = siloPayback.earned(farmer1); + assertEq(farmer1Earned, 50e6); // 50% of 100 + // claim the rewards + vm.prank(farmer1); + siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + // user reward paid is synced to the global reward per token stored + assertEq( + siloPayback.userRewardPerTokenPaid(farmer1), + siloPayback.rewardPerTokenStored(), + "farmer1 rewards not synced" + ); + + // farmer1 transfers 100 tokens to farmer3 in internal balance + _transferTokensToUser( + farmer1, + farmer3, + 100e6, + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); + + // new ownership of tokens: + // farmer1: 100 external, 0 internal, 0 rewards + assertEq(siloPayback.balanceOf(farmer1), 100e6, "farmer1 balance not updated"); + assertEq(siloPayback.earned(farmer1), 0, "farmer1 earned not updated"); + + // farmer2: 200 external, 0 internal, 50 rewards + assertEq(siloPayback.balanceOf(farmer2), 200e6, "farmer2 balance not updated"); + assertEq(siloPayback.earned(farmer2), 50e6, "farmer2 earned not updated"); + + // farmer3: 100 internal, 0 external, 0 rewards + assertEq(siloPayback.getBalanceCombined(farmer3), 100e6, "farmer3 balance not updated"); + assertEq( + siloPayback.getBalanceInMode(farmer3, LibTransfer.From.INTERNAL), + 100e6, + "farmer3 internal balance not updated" + ); + assertEq( + siloPayback.getBalanceInMode(farmer3, LibTransfer.From.EXTERNAL), + 0, + "farmer3 external balance not updated" + ); + // assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned should be 0 before second reward distribution"); + + // log reward per token stored + console.log("reward per token stored", siloPayback.rewardPerTokenStored()); + // log user reward per token paid + console.log( + "user reward per token paid for farmer3", + siloPayback.userRewardPerTokenPaid(farmer3) + ); + + // Second distribution: 100 BEAN rewards + // _sendRewardsToContract(100e6); + } + // Scenario: // - User has 100 external + 50 internal tokens (150 // total) @@ -358,11 +545,26 @@ contract SiloPaybackTest is TestHelper { siloPayback.batchMint(receipts); } - function _mintTokensToUser(address user, uint256 amount) internal { + function _mintTokensToUser(address user, uint256 amount, LibTransfer.To toMode) internal { SiloPayback.UnripeBdvTokenData[] memory receipts = new SiloPayback.UnripeBdvTokenData[](1); receipts[0] = SiloPayback.UnripeBdvTokenData(user, amount); vm.prank(owner); siloPayback.batchMint(receipts); + + _transferTokensToUser(user, user, amount, LibTransfer.From.EXTERNAL, toMode); + } + + function _transferTokensToUser( + address sender, + address receipient, + uint256 amount, + LibTransfer.From fromMode, + LibTransfer.To toMode + ) internal { + vm.startPrank(sender); + IERC20(address(siloPayback)).approve(address(bs), amount); + bs.transferToken(address(siloPayback), receipient, amount, uint8(fromMode), uint8(toMode)); + vm.stopPrank(); } function _sendRewardsToContract(uint256 amount) internal { From 1b1063f297cdda71976f569c0991330ada203507 Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 20 Aug 2025 11:12:17 +0300 Subject: [PATCH 044/270] state tests and helpers, fix shipment enum bug --- .../init/shipments/InitBeanstalkShipments.sol | 2 - contracts/interfaces/IMockFBeanstalk.sol | 4 +- hardhat.config.js | 56 +- .../data/exports/accounts/barn_addresses.txt | 744 +++++ .../data/exports/accounts/field_addresses.txt | 1517 ++++++++++ .../data/exports/accounts/silo_addresses.txt | 2430 +++++++++++++++++ .../data/mocks/mockBeanstalkPlots.json | 40 + .../deployPaybackContracts.js | 91 +- .../parsers/parseBarnData.js | 5 +- .../populateBeanstalkField.js | 5 +- .../utils/extractAddresses.js | 106 + .../utils/fertilizerFinder.js | 55 + .../BeanstalkShipments.t.sol | 369 ++- 13 files changed, 5327 insertions(+), 97 deletions(-) create mode 100644 scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt create mode 100644 scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt create mode 100644 scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt create mode 100644 scripts/beanstalkShipments/data/mocks/mockBeanstalkPlots.json create mode 100644 scripts/beanstalkShipments/utils/extractAddresses.js create mode 100644 scripts/beanstalkShipments/utils/fertilizerFinder.js diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index 8eb0d658..7f68f481 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -17,8 +17,6 @@ contract InitBeanstalkShipments { event ShipmentRoutesSet(ShipmentRoute[] newRoutes); function init(ShipmentRoute[] calldata newRoutes) external { - AppStorage storage s = LibAppStorage.diamondStorage(); - // set the shipment routes, replaces the entire set of routes _setShipmentRoutes(newRoutes); } diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 397df315..8f724b9c 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -30,7 +30,9 @@ interface IMockFBeanstalk { SILO, FIELD, INTERNAL_BALANCE, - EXTERNAL_BALANCE + EXTERNAL_BALANCE, + SILO_PAYBACK, + BARN_PAYBACK } struct AccountSeasonOfPlenty { diff --git a/hardhat.config.js b/hardhat.config.js index 35fa4cc4..d803e0e4 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -40,7 +40,9 @@ const { getFacetBytecode, compareBytecode } = require("./test/hardhat/utils/byte const { populateBeanstalkField } = require("./scripts/beanstalkShipments/populateBeanstalkField.js"); -const { deployAndSetupContracts } = require("./scripts/beanstalkShipments/deployPaybackContracts.js"); +const { + deployAndSetupContracts +} = require("./scripts/beanstalkShipments/deployPaybackContracts.js"); const { parseAllExportData } = require("./scripts/beanstalkShipments/parsers"); //////////////////////// TASKS //////////////////////// @@ -2021,16 +2023,17 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m console.log("-----------------------------------"); }); -task("beanstalkShipments", "performs all actions to initialize the beanstalk shipments") - .setAction(async (taskArgs) => { +task("beanstalkShipments", "performs all actions to initialize the beanstalk shipments").setAction( + async (taskArgs) => { console.log("=".repeat(80)); console.log("🌱 BEANSTALK SHIPMENTS INITIALIZATION"); console.log("=".repeat(80)); - + // params - const verbose = false; // Reduced verbosity for cleaner output - const noFieldChunking = false; - const deploy = false; + const verbose = true; + const deploy = true; + const populateData = false; + const populateField = true; const parseContracts = true; // Step 0: Parse export data into required format @@ -2074,7 +2077,8 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi L2_PCM, account: deployer, verbose, - useChunking: true, + populateData: populateData, + useChunking: true }); console.log("āœ… Payback contracts deployed and configured\n"); } @@ -2082,9 +2086,15 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi // Step 2: Create and populate beanstalk field console.log("šŸ“ˆ STEP 2: CREATING BEANSTALK FIELD"); console.log("-".repeat(50)); - await populateBeanstalkField(L2_PINTO, owner, verbose, noFieldChunking); + if (populateField) { + await populateBeanstalkField(L2_PINTO, owner, verbose); + } // Step 3: Update shipment routes + // The season facet will also need to be updated to support the new receipients in the + // ShipmentRecipient enum in System.sol since the facet inherits from Distribution.sol + // That contains the function getShipmentRoutes() which reads the shipment routes from storage + // and imports the ShipmentRoute struct. console.log("šŸ›¤ļø STEP 3: UPDATING SHIPMENT ROUTES"); console.log("-".repeat(50)); const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; @@ -2092,8 +2102,29 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi await upgradeWithNewFacets({ diamondAddress: L2_PINTO, - facetNames: [], - initFacetName: "InitBeanstalkShipments", + facetNames: ["SeasonFacet"], + libraryNames: [ + "LibEvaluate", + "LibGauge", + "LibIncentive", + "LibShipping", + "LibWellMinting", + "LibFlood", + "LibGerminate", + "LibWeather" + ], + facetLibraries: { + SeasonFacet: [ + "LibEvaluate", + "LibGauge", + "LibIncentive", + "LibShipping", + "LibWellMinting", + "LibFlood", + "LibGerminate", + "LibWeather" + ] + }, initArgs: [routes], verbose: true, account: owner @@ -2103,7 +2134,8 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi console.log("=".repeat(80)); console.log("šŸŽ‰ BEANSTALK SHIPMENTS INITIALIZATION COMPLETED"); console.log("=".repeat(80)); - }); + } +); //////////////////////// CONFIGURATION //////////////////////// diff --git a/scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt b/scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt new file mode 100644 index 00000000..5ad1cf42 --- /dev/null +++ b/scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt @@ -0,0 +1,744 @@ +0xBd120e919eb05343DbA68863f2f8468bd7010163 +0x97b60488997482C29748d6f4EdC8665AF4A131B5 +0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73 +0x5f5ad340348Cd7B1d8FABE62c7afE2E32d2dE359 +0x3fc4310bf2eBae51BaC956dd60A81803A3f89188 +0x87263a1AC2C342a516989124D0dBA63DF6D0E790 +0x5090FeC124C090ca25179A996878A4Cd90147A1d +0x3c5Aac016EF2F178e8699D6208796A2D67557fe2 +0xa5D0084A766203b463b3164DFc49D91509C12daB +0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B +0x82Ff15f5de70250a96FC07a0E831D3e391e47c48 +0x710B5BB4552f20524232ae3e2467a6dC74b21982 +0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b +0xCF0dCc80F6e15604E258138cca455A040ecb4605 +0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B +0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f +0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85 +0x46387563927595f5ef11952f74DcC2Ce2E871E73 +0x5c0ed0a799c7025D3C9F10c561249A996502a62F +0xC5581F1aE61E34391824779D505Ca127a4566737 +0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40 +0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab +0x6D4ed8a1599DEe2655D51B245f786293E03d58f7 +0xC9F817EA7aABE604F5677bf9C1339e32Ef1B90F0 +0x971b4a65048319cc9843DfdBDC8Aa97AD47Ef19d +0x48e39dfd0450601Cb29F74cb43FC913A57FCA813 +0xF7d48932f456e98d2FF824E38830E8F59De13f4A +0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1 +0x4A337d1dF22d0D3077CaEFd083A1b70AA168d087 +0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c +0x597D01CdfDC7ad72c19B562A18b2e31E41B67991 +0x5a57711B103c6039eaddC160B94c932d499c6736 +0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B +0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56 +0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA +0xa5b200B10fd9897142dC2dd14708EFdF090A1b4d +0x87546FA086F625961A900Dbfa953662449644492 +0x68e41BDD608fC5eE054615CF2D9d079f9e99c483 +0x6343B307C288432BB9AD9003B4230B08B56b3b82 +0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254 +0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49 +0x44E836EbFEF431e57442037b819B23fd29bc3B69 +0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1 +0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458 +0x3800645f556ee583E20D6491c3a60E9c32744376 +0x507165FF0417126930D7F79163961DE8Ff19c8b8 +0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c +0x995D1e4e2807Ef2A8d7614B607A89be096313916 +0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507 +0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45 +0x7b2366996A64effE1aF089fA64e9cf4361FddC6e +0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe +0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F +0x394c357DB3177E33Bde63F259F0EB2c04A46827c +0x63a7255C515041fD243440e3db0D10f62f9936ae +0x02aA96e8d266Cee1411bB2ADB4D09066f2e94489 +0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb +0x679B4172E1698579d562D1d8b4774968305b80b2 +0xaf28E2A58Ef2D6d88fb4cDC28F380908BaDE162b +0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732 +0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6 +0xD6626eA482D804DDd83C6824284766f73A45D734 +0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655 +0xDf29Ee8F6D1b407808Eb0270f5b128DC28303684 +0x5656cB4721C21E1F5DCbe03Db9026ac0203d6e4f +0xa3d63491abf28803116569058A263B1A407e66Fb +0x52d3aBa582A24eeB9c1210D83EC312487815f405 +0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3 +0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd +0xb78003FCB54444E289969154A27Ca3106B3f41f6 +0xDc4F9f1986379979053E023E6aFA49a65A5E5584 +0xC38f042ae8C77f110c33eabfAA5Ed28861760Ac6 +0x58e4e9D30Da309624c785069A99709b16276B196 +0x1B91e045e59c18AeFb02A29b38bCCD46323632EF +0x43b79f1E529330F1568e8741F1C04107db25EB28 +0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1 +0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb +0x4a52078E4706884fc899b2Df902c4D2d852BF527 +0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e +0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5 +0x4330C25C858040aDbda9e05744Fa3ADF9A35664F +0x1C4E440e9f9069427d11bB1bD73e57458eeA9577 +0xb7AdcE9Fa8bc98137247f9b606D89De76eA8aACc +0x487175f921A713d8E67a95BCDD75139C35a7d838 +0x3C43674dfa916d791614827a50353fe65227B7f3 +0xC89A6f24b352d35e783ae7C330462A3f44242E89 +0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430 +0x08Bf22fB93892583a815C598502b9B0a88124DAD +0x51AAD11e5A5Bd05B3409358853D0D6A66aa60c40 +0xb47959506850b9b34A8f345179eD1C932aaA8bFa +0x4438767155537c3eD7696aeea2C758f9cF1DA82d +0x4c180462A051ab67D8237EdE2c987590DF2FbbE6 +0xd2D533b30Af2c22c5Af822035046d951B2D0bd57 +0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2 +0x96D48b045C9F825f2999C533Ad56B6B0fCa91F92 +0x840fe9Ce619cfAA1BE9e99C73F2A0eCbAb99f688 +0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333 +0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7 +0xD6ff57479699e3F93fFd68295F3257f7C07E983e +0xE84c01208c4868d5615FCCf0b98f8c90f460d2b6 +0xC1A9BC22CC31AB64A78421bEFa10c359A1417ce3 +0x3822bBBd588fE86964c7751d6c6a6Bd010927307 +0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E +0xcb89e2300E22Ec273F39e69E79E468723ad65158 +0x030ae585DB6d5169B3594eC37c008662f2494a1D +0x264c1cBEC44F201d0eBe67b269D16B3edc909C61 +0xDFe18DE4852AB020FC82502dcE862B1F4206C587 +0x15884aBb6c5a8908294f25eDf22B723bAB36934F +0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3 +0x14F78BdCcCD12c4f963bd0457212B3517f974b2b +0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0 +0x17757B0252c84341E243Ff49EEf8729eFa32f5De +0x85806019a442224D6345a1c2eD597d8a5DCE1F2B +0xF73FE15cFB88ea3C7f301F16adE3c02564ACa407 +0x69b03bFC650B8174f5887B2320338b6c29150bCE +0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e +0x55179ffEFc2d49daB14BA15D25fb023408450409 +0xC56725DE9274E17847db0E45c1DA36E46A7e197F +0x297751960DAD09c6d38b73538C1cce45457d796d +0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D +0x88F667664E61221160ddc0414868eF2f40e83324 +0x66C19e3612efa7b18C18ee4D75A8aaE1d7902225 +0xb871eE8C6b280463068627502c36b33CC79cc8d3 +0xf6F46f437691b6C42cd92c91b1b7c251D6793222 +0x09C88F29A308646204D11383c6139d9C93eFb6b8 +0x4DDE0C41511d49E83ACE51c94E668828214D9C51 +0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408 +0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7 +0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27 +0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8 +0xc6302894cd030601D5E1F65c8F504C83D5361279 +0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0 +0x4Ab209010345978254F1757a88cAc93CD19987a8 +0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d +0xF869B8e5a54e7D93D98fc7C5c9D48fe972C330CA +0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41 +0x5ea7ea516720a8F59C9d245E2E98bCA0B6DF7441 +0xFc748762F301229bCeA219B584Fdf8423D8060A1 +0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e +0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1 +0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1 +0x820A2943762236e27A3a2C6ea1024117518895a5 +0xC83414aBB6655320232fAA65eA72663dfD7198eC +0xe4BF6E1967D7bc0Bd5E2C767c3A2CCAdf23446df +0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D +0x8D7ee51Ec16a0F95C7f241582De8cffB9A4c2293 +0xBB2E54038196A51f6a42A9BB5aD6BD0EB2CF6C01 +0x2c820271ADE646fDb3D6D0002712Ee6bdc7DC173 +0xEC5a0Dff55be882FAFe863895ef144b78aaEF097 +0xdff24806405f62637E0b44cc2903F1DfC7c111Cd +0x17372637a937f7427871573a85e6FaC2400D147f +0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A +0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b +0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732 +0x6817be388a855cFa0F236aDCeBb56d7dc1DBd0Cf +0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25 +0x85Eada0D605d905262687Ad74314bc95837dB4F9 +0xE8dFA9c13CaB87E38991961d51FA391aAbb8ca9c +0x27291b970be79Eb325348752957F05c9739e1737 +0xb490aC9d599C2d4Fc24cC902ea4cd5af95EfF6e9 +0xf96A5d6c20872a7DdCacdDE4e825249040250d66 +0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4 +0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709 +0x876133657F5356e376B7ae27d251444727cE9488 +0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3 +0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F +0x48A2bC5DC9e3c5c0421E0483bF0648AaEE87daca +0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677 +0x5f37479c76F16d94Afcc394b18Cf0727631d8F91 +0xDf406B91b4F27c942c4B42eB04fAC9323EEE8Aa1 +0x79bD65C17537daA78152E6018EC6dB63C6bE57F5 +0xcdea6A23B9383a88E246975aD3f38778ee0E81fc +0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C +0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9 +0xfF961eD9c48FBEbDEf48542432D21efA546ddb89 +0xDe975401d53178cdF36E1301Da633A8f82C33ceF +0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781 +0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF +0x4319fBf2c6B823e20EdAA4002F5eac872CcAd3BD +0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2 +0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6 +0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C +0xe6cF807E4B2A640DfE03ff06FA6Ab32C334c7dF4 +0xA7194f754b5befC3277D6Bfa258028450dA654BA +0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74 +0x7e1CA6D381e2784Db210442bFC3e2B1451f773FD +0xeE55F7F410487965aCDC4543DDcE241E299032A4 +0x735CAB9B02Fd153174763958FFb4E0a971DD7f29 +0x46Fb59229922d98DCc95bB501EFC3b10FA83D938 +0x8d4122ffE442De3574871b9648868c1C3396A0AF +0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176 +0xE203096D7583E30888902b2608652c720D6C38da +0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df +0xdEb5b508847C9AB1295E83806855AbC3c9859B38 +0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2 +0xBAd4b03A764fb27Cdf65D23E2E59b76172526867 +0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF +0x515755b2c5A209976CF0de869c30f45aC7495a60 +0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5 +0x41922873B405216bb5a7751c5289f9DF853D9a9E +0x90030396F05AA263776c15e418a908Da4B018157 +0x2908A0379cBaFe2E8e523F735717447579Fc3c37 +0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17 +0x70Ce4bBa5076fa59E4fBDEe382663dF78402F2E0 +0x525Fbe4bC0607933F4BE05cEB22F8a4b6B01800A +0x3c5a438a2c19D024a3E53c27d45FAfAC9A45B4f7 +0x3Df83869B8367602E762FC42Baae3E81aA1f2a20 +0xf3e9848D5accE2f83b8078ee21f458e59ec4289A +0x48A5A6a01bA89cDdF97D2D552923d5a11401Ed19 +0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4 +0xb8EEa697890dceFe14Be1c1C457Db0f436DCcF7a +0x0017dFe08BCc0dc9a323ca5d4831E371534E9320 +0x69e02D001146A86d4E2995F9eCf906265aA77d85 +0x5F074e4Afb3547407614BC55a103d76A4E05BA04 +0x0519425dD15902466e7F7FA332F7b664c5c03503 +0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04 +0x2E34723A04B9bb5938373DCFdD61410F43189246 +0x4626751B194018B6848797EA3eA40a9252eE86EE +0xe90AFc1904E9A33499D8A708C01658A6d1899C6B +0x42005e1156ea20EA50E7845E8CaC975C49774df0 +0x41e2965406330A130e61B39d867c91fa86aA3bB8 +0x40E652fE0EC7329DC80282a6dB8f03253046eFde +0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a +0x6872A46F83af5Cc03A704B2fE250F0b371Caf7d0 +0x25F69051858D6a8f9a6E54dAfb073e8eF3a94C1E +0xCCF00d42bdEA5Fff0b46DD18a5e23FC8ac85a4AA +0x4fCD42eb2557E49C0201Fb3283CfF62c1BaF0Fb4 +0x5338035c008EA8c4b850052bc8Dad6A33dc2206c +0xa3F90e801CBa1f94Eb6501146e4E0e791444E4d3 +0x5ab404ab63831bFcf824F53B4ac3737b9d155d90 +0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F +0xc1F80163cC753f460A190643d8FCbb7755a48409 +0x5b9A2267a9e9B81FbF01ba10026fCB7B2F7304d3 +0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA +0x3C58492Ad9cAd0D9f8570a80b6A1f02C0C1dA2c5 +0xAb282590375f4ce7d3FfeD3A0D0e36cc5f9FF124 +0x6Afbf03Fe3Bea05640da67Ae9F0B136c783e315d +0x60fC79EC08C5386f030912f056dCA91dAEC3A488 +0x4432e64624F4c64633466655de3D5132ad407343 +0x8623b240830fD2c33B1b5C8449f98fd606de88A8 +0x9dC4D973F76c0051bba8900F8ffB4652110f1591 +0x734A6263fE23c1d68Ec9042e03082575C34c968C +0x6Cb50febbC4E796635963c1Ea9916099C69B4Bd9 +0x8eB354f1CBb0AB7ef0D038883b4c1065e008453F +0x66F6Ac1E4c4c8aE7D84231451126f613bFE61D98 +0x4179FB53E818c228803cF30d88Bc0597189F141C +0xc10535D71513ab2abDF192DFDAa2a3e94134b377 +0x241b2Fb0b7517c784Dd0c3e20a1f655985CFaa07 +0x124904f20eb8cf3B43A64EE728D01337b1dDc2b1 +0xA5EA62076326e0Eb89C34a4991A5aa58745266FC +0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22 +0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F +0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD +0x91443aF8B0B551Ba45208f03D32B22029969576c +0x69EE985456C52c85BA2035d8fD8bFe0A51f0E0D2 +0x94d29Be06f423738f96A5E67A2627B4876098Cdc +0xfB464Fcd5342D2997A43C6B7bcA7615d0fbDEeD9 +0xF501c1084d8473399fa01c4F102FA72d0465192C +0x19831b174e9deAbF9E4B355AadFD157F09E2af1F +0xde40AaD5E8154C6F8C31D1e2043E4B1cB1745761 +0xAf812E8BABab3173EdCE179fE6Fc6c2B1c482E39 +0xd43324eB6f31F86e361B48185797b339242f95f4 +0xE45D85B382EFd7833Da1B8CAB53B203D22340b1a +0x4Af7c12c7e210f4Cb8f2D8e340AaAdaE05A9f655 +0xD6e91233068c81b0eB6aAc77620641F72d27a039 +0x30CB1E845f6C03B988eC677A75700E70A019e2E4 +0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803 +0xa5C9a58776682701Cfd014F68ED73D1895d9b372 +0x11D86e9F9C2a1cF597b974E50C660316c92215AA +0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9 +0x330BAb385492b88CE5BBa93b581ed808b00e6189 +0x66B0115e839B954A6f6d8371DEe89dE90111C232 +0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427 +0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719 +0x144E8fe2e2052b7b6556790a06f001B56Ba033b3 +0x8e75ba859f299b66693388b925Bdb1af6EEc60d6 +0xf9563a8DaB33f6BEab2aBC34631c4eAF9EcC8b99 +0x7D6A2f6D7C2F7Dd51C47b5EA9faA3ae208185eC7 +0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E +0x404a75f728D7e89197C61c284d782EC246425aa6 +0xD15B5fA5370f0c3Cc068F107B7691e6dab678799 +0xe63E2CDd24695464C015b2f5ef723Ce17e96886B +0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043 +0xE91F37f702032dd81142f009f273C132AB8AAe1D +0xE3b2fC5a80B80C8F668484171D7395e3fDE76670 +0x2d96dAA63b1719DA208a72264e15b32ff818e79F +0x4bCbB32e470627AB0D767AC56bBCB2c33c181BCE +0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E +0x31DEae0DDc9f0D0207D13fc56927f067F493d324 +0xC3253E06fA7A2e4a3cd26cb561af4af83466902d +0xaF7ED02dE4B8A8967b996DF3b8bf28917B92EDcd +0x7e7408fdD6315e965138509d9310b384C4FD1163 +0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39 +0x4b10DA491b54ffe167Ec5AAf7046804fADA027d2 +0xA5F158e596D0e4051e70631D5d72a8Ee9d5A3B8A +0x25CFB95e1D64e271c1EdACc12B4C9032E2824905 +0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB +0x9241089cf848cB30c6020EE25Cd6a2b28c626744 +0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758 +0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78 +0x19A4FE7D0C76490ccA77b45580846CDB38B9A406 +0x4088E870e785320413288C605FD1BD6bD9D5BDAe +0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1 +0xaD63E4d4Be2229B080d20311c1402A2e45Cf7E75 +0xE2bDaE527f99a68724B9D5C271438437FC2A4695 +0x7Ac54882c1A9df477d583aDd40D1a47480F8a919 +0xd44dfDFDE075184e0f216C860e65913579F103Aa +0x58737A9B0A8A5c8a2559C457fCC9e923F9d99FB7 +0xbE2075Ac5B3d3E92293C0E3f3EA3f503f8C0354d +0xAa4f23a13f25E88bA710243dD59305f382376252 +0x8110331DBad6e7907F60B8BBb0E1A3af3dDb4BBd +0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0 +0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B +0x31b6020CeF40b72D1e53562229c1F9200d00CC12 +0xa1a234791392c42bD0c95e37e6908AE704D595BD +0x74E096E78789F31061Fc47F6950279A55C03288c +0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B +0xd7bF571d4F19F63e3091Ca37E13ED395ca8e9969 +0x97A5370695c5A64004359f43889F398fb4D07fb1 +0xE9B05bC1FA8684EE3e01460aac2e64C678b9dA5d +0x5292cF4e13F7Ed082Ec2996F8F8a549a05b2E6af +0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3 +0x74F9fadb40Bee2574BCDd7C1eD73270373Af0D21 +0xA09DEa781E503b6717BC28fA1254de768c6e1C4e +0x184CbD89E91039E6B1EF94753B3fD41c55e40888 +0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8 +0xDD11460317C683e4057E115eB14e1C9F7Ca41E12 +0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909 +0x56A201b872B50bBdEe0021ed4D1bb36359D291ED +0xB84e1E86eB2420887b10301cdCDFB729C4B9038b +0xC95186f04B68cfec0D9F585D08C3b5697C858fe0 +0x02009370Ff755704E9acbD96042C1ab832D6067e +0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF +0xB81D739df194fA589e244C7FF5a15E5C04978D0D +0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910 +0xC725c98A214a3b79C0454Ef2151c73b248ce329c +0xf060A025DDf6407f79F2fa0601666f61502a54A6 +0xc207Ceb0709E1D2B6Ff32E17989d4a4D87C91F37 +0xa734439d26Ce4dBf43ED7eb364Ec409D949bB369 +0xD0988045f54BAf8466a2EA9f097b22eEca8F7A00 +0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43 +0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee +0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0 +0xD441C97eF1458d847271f91714799007081494eF +0x87C9E571ae1657b19030EEe27506c5D7e66ac29e +0xb57Fd427c7a816853b280D8c445184e95Fe8f61A +0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657 +0x7C27A1F60B5229340bc57449Cfb91Ca496C3c1c1 +0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2 +0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E +0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22 +0xD189b1d9402631770B19bdb25b5d5702f15830a8 +0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf +0xCDbe0c24C858a75eADC38eb9a8DDAEE7f1598f71 +0xa2321c2a5fAa8336b09519FB8fA5a19077da7794 +0x4A5867445A1Fa5F394268A521720D1d4E5609413 +0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282 +0x37A6156e4a6E8B60b2415AF040546cF5e91699bd +0x4bD60086997F3896332B612eC36d30A6Ad57928E +0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF +0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb +0x20798Fd64a342d1EE640348E42C14181fDC842d8 +0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559 +0xb009714a5A4963d40Ac0625dB643E3EB6e755C25 +0x89979246e8764D8DCB794fC45F826437fDeC23b2 +0x0933F554312C7bcB86dF896c46A44AC2381383D1 +0x028afa72DADB6311107c382cF87504F37F11D482 +0x9c695f16975b57f730727F30f399d110cFc71f10 +0x8C35933C469406C8899882f5C2119649cD5B617f +0xAE0ff6098365140e3030e8360CCD8C0B0462286C +0x997563ba8058E80f1E4dd5b7f695b5C2B065408e +0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59 +0x5d48f06eDE8715E7bD69414B97F97fF0706D6c71 +0xa87b23dB84e79a52CE4790E4b4aBE568a0102643 +0xF35e261393F9705e10B378C6785582B2a5A71094 +0xd0C5A91800f504E5517dcD1173F271635d2e8000 +0x2ADC4D8e3d2df0B37611130bc9eD82cDfa3e2762 +0x027be82BF7895db5fc1Fea5696117e875BbCc0dE +0x2894457502751d0F92ed1e740e2c8935F879E8AE +0x7D51910845011B41Cc32806644dA478FEfF2f11F +0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b +0x1C0f042aE8dfFBac8113E3036d770339aB491a85 +0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8 +0x12Ed7C9007Cf0CB79b37E33D0244aD90c2a65C0B +0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11 +0x8D06Ffb1500343975571cC0240152C413d803778 +0x1d264de8264a506Ed0E88E5E092131915913Ed17 +0xB04fa1FB54a7317efe85a0962F57bD143867730E +0x3af2098d4e068E5aa19d2102ef263d75867549Ef +0x80077CB3B35A6c30DC354469f63e0743eeff32D4 +0x855a53E5f64C50bf8A5f3d18B485Bf43A5045e6A +0x718526D1A4a33C776DD745f220dd7EbC13c71e82 +0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4 +0x122de1514670141D4c22e5675010B6D65386a9F6 +0x66801CC7Ab6791afb179CC94cBbd268CFBfcBc7b +0xABC508DdA7517F195e416d77C822A4861961947a +0x0bf7Fb51211b4842bAd8E831ba2F42fcB836C7e1 +0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3 +0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6 +0xaaB247F5b39012081a487470AfFb4288e8445418 +0x334f12F269213371fb59b328BB6e182C875e04B2 +0xB1fe6937a51870ea66B863BE76d668Fc98694f25 +0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A +0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8 +0xFB3E532Bef028cCa0aa5a2276AAeF32D7e0b3d1B +0x30142a0E5597f3203792CD00817638158163d21F +0xaCc53F19851ce116d52B730aeE8772F7Bd568821 +0x9b04EA8897DfA0a817403ACACcDb24df019c7085 +0x91e795eB6a2307eDe1A0eeDe84e6F0914f60a9C3 +0x1fC84Da8c1DFD00a7F6D0970ed779cEc0BBf9CA4 +0x5270B883D12e6402a20675467e84364A2Eb542bF +0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb +0xCc81ec04591f56a730E429795729D3bD6C21D877 +0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25 +0x23807719299c9bA3C6d60d4097146259c7A16da3 +0x6DFffF3149b626148C79ca36D97fe0219CB66a6D +0xF05980BF83005362fdcBCB8F7A453fE40B669D96 +0x3EE2E1B07b76B09b12578cE7f26ab4Bc739770E7 +0xc493AA1EA56dfe12E3DC665c46E1425BC3ee426F +0x270252c5FAd90804CE9288F2C643d26EfA568cFC +0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C +0x1bFb00d16514560bb95d4312FDD39553395077aF +0x8d0B5a21a4D6B00B39d0fc9D49d0459af18a77eD +0x3D156580d650cceDBA0157B1Fc13BB35e7a48542 +0x70a9c497536E98F2DbB7C66911700fe2b2550900 +0x5767795b4eFbF06A40cb36181ac08f47CDB0fcEc +0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06 +0x6E93e171C5223493Ad5434ac406140E89BD606De +0x82F402847051BDdAAb0f5D4b481417281837c424 +0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE +0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6 +0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202 +0xd53Adf794E2915b4F414BE1AB2282cA8DA56dCfD +0x7004051A1baF0A89A568A8FA68DAd7e5B9790063 +0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906 +0xA256Aa181aF9046995aF92506498E31E620C747a +0x4b1b04693a00F74B028215503eE97cC606f4ED66 +0x57B649E1E06FB90F4b3F04549A74619d6F56802e +0xdb4f969Eb7904A6ddf5528AE8d0E85F857991CFd +0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6 +0x63B98C09120E4eF75b4C122d79b39875F28A6fCc +0x3DB6401fe220E686D535BCd88BF8B2E8b8c55482 +0xC8D71db19694312177B99fB5d15a1d295b22671A +0x41BF3C5167494cbCa4C08122237C1620A78267Ab +0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e +0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb +0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57 +0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8 +0x73C91af57C657DfD05a31DAcA7Bff1aEb5754629 +0x19dfdc194Bb5CF599af78B1967dbb3783c590720 +0x3D63719699585FD0bb308174d3f0aD8082d8c5A2 +0xf679A24BBF27c79dB5148a4908488fA01ed51625 +0x1348EA8E35236AA0769b91ae291e7291117bf15C +0x8E32736429d2F0a39179214C826DeeF5B8A37861 +0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2 +0xC940a80B7ceeaF00798B9178E63210ffCd23Ba9b +0x1df00f89bf7FdcdA1701A6787661A8962Cd49ef0 +0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B +0x28570D9d66627e0733dFE4FCa79B8fD5b8128636 +0x617e336ff734097AdddF9Fc9aF09a5A7690FA091 +0x88cE2D4fB3cC542F0989d61A1c152fa137486d81 +0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C +0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7 +0xcbd7712D9335a7A38f35b38D5dC9B5970f04e8FD +0x5ED2Cf60A0C6EE2e3A9c9d07195AC183c09A3D9e +0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5 +0xD9463BE909eBB97964d3E95E94331063707fc059 +0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8 +0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed +0x34a649fde43cE36882091A010aAe2805A9FcFf0d +0x629f61F97A29bd18de69B03ff71b2FA699c49f96 +0x30709180d8747E5BC0bD6E1BFf51baEdAB31328D +0x2A23D58Ea4b5cC2e01ef53ea5dE51447C2528F16 +0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7 +0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB +0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef +0xae6288A5B124bEB1620c0D5b374B8329882C07B6 +0xf286E07ED6889658A3285C05C4f736963cF41456 +0x752862DE6AE311B825e8589F78a400EB7251e995 +0x33B86fBC1Cc1F469d86655B3e0648fBB41010da0 +0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b +0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56 +0xe066684F0fF25A746aa51d63BA676bFc1D38442D +0x99e8845841BDe89e148663A6420a98C47e15EbCe +0x02491D37984764d39b99e4077649dcD349221a62 +0x394fEAe00CdF5eCB59728421DD7052b7654833A3 +0x3376Bde856bf6ec5dc7b9796895C788d53605da0 +0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F +0x79608C564704fdFC1d7dE7E512995C907f46cA07 +0x01914D6E47657d6A7893F84Fc84660dc5aec08b6 +0x930836bA4242071FEa039732ff8bf18B8401403E +0x8E8A5fb89F6Ab165F982fA4869b7d3aCD3E4eBfE +0xeA47644f110CC08B0Ecc731E992cbE3569940dad +0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C +0x047B22BFE547d29843c825dbcBd9E0168649d631 +0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE +0x90a69b1a180f60c0059f149577919c778cE2b9e1 +0x3aB1a190713Efdc091450aF618B8c1398281373E +0xbEb5B4Aae36A1EBd8a525017fe7fd2141D544Ee5 +0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d +0x877cEA592fd83Dcc76243636dedC31CA7ce46cE1 +0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658 +0xCeD392A0B38EEdC1f127179D88e986452aCe6433 +0xF5Ca1b4F227257B5367515498B38908d593E1EBe +0xe105EDc9d5E7B473251f91c3205bc62a6A30c446 +0x1083D7254E01beCd64C3230612BF20E14010d646 +0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8 +0xE9691477a468cC9084B690920B845C20dc54Ae04 +0x1aE02022a49b122a21bEBE24A1B1845113C37931 +0x193641EA463C3B9244cF9F00b77EE5220d4154e9 +0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c +0xD560fd84DAB03114C51448ab97AD82D21Cc3cEEc +0x274d8bD90C11E7f5598242ee174085281fDE1aed +0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d +0x9A428d7491ec6A669C7fE93E1E331fe881e9746f +0x400609FDd8FD4882B503a55aeb59c24a39d66555 +0xe6a54e967ECB4E1e4b202678aED4918B5c492926 +0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad +0xf84F39554247723C757066b8fd7789462aC25894 +0x2F0424705Ab89E72c6b9fAebfF6D4265F9d25fA2 +0xB58A0c101dd4dD9c29B965F944191023949A6fd0 +0xd653971FA19ef68BC80BECb7720675307Bfb3EE6 +0xbD50a98a99438325067302D987ccebA3C7a8a296 +0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c +0x9C8623E1244fA3FB56Ed855aeAcCF97A4371FfE0 +0xc5Df8672232f1C2b75310e4f2B80863721705a12 +0xA88bbFF5B5edec5Ab232174cce7e0921EAAa0EdC +0x16497eF5D7071a86F97f9140C651D68440527Bc4 +0x86642f87887c1313f284DBEc47E79Dc06593b82e +0x0C040E41b5b17374b060872295cBE10Ec8954550 +0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126 +0xC52A0B002ac4E62bE0d269A948e55D126a48C767 +0x648457FC44EAAf5B1FeB75974c826F1ca44745b7 +0x61e413DE4a40B8d03ca2f18026980e885ae2b345 +0x1B15ED3612CD3077ba4437a1e2B924C33d4de0F9 +0x9d1D4D631AE6BC24bD09aDfF6Ca82651e928B650 +0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7 +0x8A30D3bb32291DBbB5F88F905433E499638387b7 +0x0DE299534957329688a735d03961dBd848A5f87f +0x0cE72b7Dde6Ea0e9e8feeB634FcD9245E81D34F3 +0x8AD30D5e981b4F7207A52Ed61B16639D02aA5a21 +0x13201714657f8B211f72c5050AEb146D1faFc890 +0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1 +0x372c757349a5A81d8CF805f4d9cc88e8778228e6 +0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c +0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72 +0x48e9E2F211371bD2462e44Af3d2d1aA610437f82 +0x62F9075e7Bc85B500efd0f0Ad9e98c3b799B3d98 +0x1416C1FEd9c635ae1673118131c0880fCf71e3f3 +0x958f5ee318e6CAf1Ec22d682A0f823dAAa70D758 +0xb2A147095999840BBcE5d679B97Ac379a658BFb9 +0x772b17A408b225694053a01d30fccf789a3Ec21C +0x1aD66517368179738f521AF62E1acFe8816c22a4 +0x941169FFF3C353BE965e3f34823eeA63b772219c +0x8A782809D316B5f32b9512f98368337258194006 +0x7c5FEFF51C3623183A920de28c1f84e5289eb8c9 +0x891768B90Ea274e95B40a3a11437b0e98ae96493 +0xB73a795F4b55dC779658E11037e373d66b3094c7 +0x38C5cA4ee678D4f9d8D94A7f238E2700A8978B36 +0x12b1c89124aF9B720C1e3E8e31492d66662bf040 +0x8542ab72e61aC4a276c69A8a18706B5Cd49b38Ee +0xe3a08ccE7E0167373A965B7B0D0dc57B6A2142f7 +0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C +0x1AAE1ADe46D699C0B71976Cb486546B2685b219C +0xDFf58819aB64C79d5276e4052d3e74ACa493658D +0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7 +0x85eD5D7d62cC5d33aC57c1814faABc648AEc81e8 +0x8Fe316B09c8F570Fd00F1172665d1327a2c74c7E +0x8781e4F7c3C20E8Ab7b65Df6E8Ae26d9d16821D4 +0x1f3236F64Cb6878F164e3A281c2a9393e19A6D00 +0xf80cDe9FBB874500E8932de19B374Ab473E7d207 +0x0F9548165C4960624DEbb7e38b504E9Fd524d6Af +0x5FA8F6284E7d85C7fB21418a47De42580924F24d +0x2A5c5E614AC54969790c8e383487289CBAA0aF82 +0x3cc04875E98EDf01065a4B27e00bcfeDdb76CBA8 +0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31 +0x923CC3D985cE69a254458001097012cb33FAb601 +0xC0c0514363049224093eC8b610C00F292d80B621 +0xb5DC9dC6820E4EE9A1d844842EeE6256D2BC8399 +0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15 +0xA3e1b60002a24f6cFf3f74E2AA260b8C17bbdF7D +0xF352e5320291298bE60D00a015b27D3960F879FA +0x4e4834a9DB68D2c3c1B8F043f52cd1AfD3c50Df6 +0xB09ffb206dDA09B6bc556b093eD28903872Ad124 +0x85312D6a50928F3ffC7a192444601E6E04A428a2 +0x71B49dd7E69CD8a1e81F7a1e3012C7c12195b7f9 +0xe12c849046d447e60E6Fb47bacA6Dc8561D3Cbf7 +0xA59EaBB3DB0042d13d4E821D7C1507d270EF4051 +0x81fAc8eD831262A4Ced09BC0024BAe266e6AE688 +0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E +0x728897111210Dc78F311E8366297bc31ac8FA805 +0xf0F2DD63004315157b63d4c11dBbBa360cEB32a9 +0x26E8F0F1Dfd919034c909055e90b0B70AdfB7047 +0x2612C1bc597799dc2A468D6537720B245f956A22 +0xBd80cee1D9EBe79a2005Fc338c9a49b2764cfc36 +0x3BD142a93adC0554C69395AAE69433A74CFFc765 +0x2527F13bA7B1D8594365D8af829cdcc4FE445098 +0xfeC90Ae9638e5e5BcAee95D4e0478407155472eb +0x53bA90071fF3224AdCa6d3c7960Ad924796FED03 +0x2f0087909A6f638755689d88141F3466F582007d +0x0e4D2c272f192bCC5ef7Bb3D8A09bdA087652162 +0x8F76d8D3C733B02B60521D8181598E4bC1E7dDdB +0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1 +0x0e0826998f02b2353499a12a0Ea8d8EEbe27567f +0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99 +0x072Fa8a20fA621665B94745A8075073ceAdFE1DC +0xd5aE1639e5EF6Ecf241389894a289a7C0c398241 +0x7Df40fde5E8680c45BFEdAFCf61dD6962e688562 +0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d +0x92470BDC0CB1FC2eD3De81c1b5e8668371C12A83 +0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F +0xA1ae22c9744baceC7f321bE8F29B3eE6eF075205 +0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2 +0x4d498b930eD0dcBdeE385D7CBDBB292DAc0d1c91 +0x066E9372fF4D618ba8f9b1E366463A18DD711e5E +0x44db0002349036164dD46A04327201Eb7698A53e +0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7 +0xE381CEb106717c176013AdFCE95F9957B5ea3dA9 +0xAa24a2AB55b4F1B6af343261d71c98376084BA73 +0xC0eB311C2f846BD359ed8eAA9a766D5E4736846A +0x525AaDb22D87cAa26B00587dC6BF9a6Cc2F414E5 +0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2 +0x13042AF2293C0a41119749d6Ed8f81145312e3D7 +0x30A1fbFc214D2Af0A68f6652A1d18a1b71Dfa9eA +0xfB2594cE11e08cE68832adD3a11232CA8ef89B7d +0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf +0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF +0xd643F55F3B36c05588e4e34c1668E77Fe098B94F +0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612 +0x5163938834eaC9bB929BdFb4746e3910D58d0eAE +0xA9B7B0B422cB1F99dA3e75C3Df6feEc2E8cb32E7 +0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698 +0x368D80b383a401a231674B168E101706389656cB +0xCEb1D8aC8f30c697f332b2665d12c96f6c794e37 +0xb0010aB3689B80177fF49773F1428aC9a0EDdfa0 +0xD8c84eaC995150662CC052E6ac76Ec184fcF1122 +0xbF133C1763c0751494CE440300fCd6b8c4e80D83 +0x54201e6A63794512a6CCbe9D4397f68B37C18D5d +0x0aF4a5c820cC97fC86d9be25d3cD4791eD436866 +0xeEEC0e4927704ab3BBE5df7F4EfFa818b43665a3 +0xeDB8260d0Db635b1C8df7AF174F0dAFdb5a04716 +0xb833B1B0eF7F2b2183076868C18Cf9A20661AC7E +0x25f030D68E56F831011c8821913CED6248Dd0676 +0x5aD9b4F1D6bc470D3100533Ed4e32De9B2d011C6 +0xBB05755eF4eAB7dfD4e0b34Ef63b0bdD05cce20A +0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360 +0x333Ce4d2eEFb9C2f0e687d3aa6e96BEBAaC57291 +0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6 +0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133 +0x94380039eD5562E29F38263b77AdcC976F84a57f +0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc +0x2BFB526403f27751d2333a866b1De0ac8D1b58e8 +0xb75313Ee4f5bAb9aC4a004c430D5EA792ba27ed0 +0x4B202C0fDA7197af32949366909823B4468155f0 +0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D +0x433b1b3bc573FcD6fDDDCf9A72CE377dB7A38bb5 +0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6 +0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921 +0xdbC529316fe45F5Ce50528BF2356211051fB0F71 +0x7eaF877B409740afa24226D4A448c980896Be795 +0xa75b7833c78EBA62F1C5389f811ef3A7364D44DE +0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A +0xd2de1EE5C8453EDa993aC638772942A12B2C89e6 +0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2 +0x1c22C526E14D60BBbf493D6817B9901207D4f81D +0x43D413b607Ec68f75aA1558Dd1918a90fcfc310d +0x7Ace5390CAa52Ea0c0D1aB408eE2D27DCE3f2711 +0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE +0xAa8Acf55F4Dd1e3E725d4Ba6A52A593260DBA249 +0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15 +0xf2eDb5d3E6Fe66BD951DD9BdDef436D4cF8b0Dd0 +0xD14f924DE730Bb2F0C6E5B45b21b37468950a2fF +0x14019DBae34219EFC2305b0C1dB260Fce8520DbF +0x31188536865De4593040fAfC4e175E190518e4Ef +0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26 +0xb03F5438f9A243De5C3B830B7841EC315034cD5f +0x32C7006B7E287eBb972194B40135e0D15870Ab5E +0xb343067A6fF1B6E4A9892fF4FDD123fDD48de5E4 +0x8fa93f9B47146DBE1108F49a8784AED775F472a5 +0x1525797dc406CcaCC8C044beCA3611882d5Bbd53 +0x6ee25671aa43C7E9153d19A1a839CCbBBE65d1EC +0x473812413b6A8267C62aB76095463546C1F65Dc7 +0x1cE75A78Ce9FC7d7f2501157A2408Bd1bE4910f8 +0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88 +0xb54f4f12c886277eeF6E34B7e1c12C4647b820B2 +0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565 +0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87 +0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191 +0x79Af81df02789476F34E8dF5BAd9cb29fA57ad11 +0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12 +0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34 +0x31a9033E2C7231F2B3961aB8A275C69C182610b0 +0x64E29CCE3cC6E9056a144311A7eb3B8f381fd4ac +0x41CC24B4E568715f33fE803a6C3419708205304d +0xD2d038f866Ef6441e598E0f685f885693ef59917 +0xbaBADF2e1B6975bE66fcbED7387525c2f6b2101b +0x576A4d006543d7Ba103933d6DBd1e3Cdf86E22d3 +0xBf4Aa57563dB2A8185148EC874EA96dff82CeB13 +0x8c256deF29ccd5089e68c9147d07eaDFBB53353e +0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef +0xEE9729290A878bA0C418AeB35E59c43526083DFE +0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a +0x935A937903d18f98A705803DC3c5F07277fAb1B6 +0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a +0x68572eAcf9E64e6dCD6bB19f992Bdc4Eff465fd0 +0xaBA9DC3A7B4F06158dD8C0c447E55bf200426208 +0x2425F7f9e92e8b8709162F244146F4915AFF3D2F +0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911 +0xDC5d7233CeC5C6A543A7837bb0202449bc35b01B +0x234831d4CFF3B7027E0424e23F019657005635e1 +0xcf5C67136c5AaFcdBa3195E1dA38A3eE792434D6 +0xE203deCCbAdDcb21567DF9C3cAe82e2c481B2a53 +0x9ffDced20253eA90E13Eb1621447CFB3eC1E775e +0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a +0xD81a2cC2596E37Ae49322eDB198D84dc3986A3ed +0x06Bbf21A21eca16eB2a23093CC9c5A75D2Dd8648 +0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54 +0xa24bae25595E860D415817bE1680885386AAA682 +0xD4ccCdedAAA75E15FdEdDd6D01B2af0a91D42562 +0x7D38aE457a3E24E5aF60a637638e134c97e2a1d5 +0x1748672FbFA9D481c80d5feEeEdF7b30135e1F9f +0x830575A2Bc43dE4d60D415dD2631b22E81ada059 +0x177f44eCDEa293f7124C3071D9C54E59fcfD16f9 +0x793846163F80233F50d24eF06C44A8b2ba98f1Aa +0x01529E0d0C38AdF57Db199AE1cCcd8F8694d8B74 +0x542A94e6f4D9D15AaE550F7097d089f273E38f85 +0x3021D79Bfb91cf97B525Df72108b745Bf1071fE7 +0x8bCE57b7B84218397FFB6ceFaE99F4792Ee8161d +0xC00B46fC0B2673F561811580b0fBf41d56EdCf83 +0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14 +0x4C3A97DB74D60410Bf17Ee64Edd98D09997f3929 +0x83397cD5C698488176F8aB8Ce19580b75255b977 +0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE +0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e +0x1584B668643617D18321a0BEc6EF3786F4b8Eb7B +0x1397c24478cBe0a54572ADec2A333f87Ad75Ac02 +0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D +0xdC369e387b1906582FdC9e1CF75aD85774FaC894 +0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81 +0x4e7ceb231714E80f90E895D13723a2c322F78127 +0xd39A31e5f23D90371D61A976cACb728842e04ca9 +0xeCdc4DD795D79F668Ff09961b2A2f47FE8e4f170 +0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11 +0xea3154098a58eEbfA89d705F563E6C5Ac924959e diff --git a/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt b/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt new file mode 100644 index 00000000..99d45d36 --- /dev/null +++ b/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt @@ -0,0 +1,1517 @@ +0x01e82e6c90fa599067E1F59323064055F5007A26 +0x01914D6E47657d6A7893F84Fc84660dc5aec08b6 +0x029D058CFdBE37eb93949e4143c516557B89EB3c +0x028afa72DADB6311107c382cF87504F37F11D482 +0x00aaEa7B4dC89E4a4fACDa32da496ba5D8E1216d +0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97 +0x02A527084F5E73AF7781846762c8753aCD096461 +0x0259D65954DfbD0735E094C9CdACC256e5A29dD4 +0x0255b20571acc2e1708ADE387b692360537F9e89 +0x00427C81629Cd592Aa068B0290425261cbB8Eba2 +0x02df7e960FFda6Db4030003D1784A7639947d200 +0x047B22BFE547d29843c825dbcBd9E0168649d631 +0x0440bDd684444f1433f3d1E0208656abF9993C52 +0x05Dc8E95a479dDA8C8Fc5a27Eb825f5042048937 +0x0399ecFbb2a9D0D520738b3179FA685cD5c6D692 +0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8 +0x072Fa8a20fA621665B94745A8075073ceAdFE1DC +0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122 +0x083aA7FF9AE00099471902178bf2fda4e6aC14Bf +0x0872FcfE9C10993c0e55bb0d0c61c327933D6549 +0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b +0x0968d6491823b97446220081C511328d8d9Fb61D +0x0933F554312C7bcB86dF896c46A44AC2381383D1 +0x09Ad186D43615aa3131c6064538aF6E0A643Ce12 +0x09Bc3c127ED4c491880c2A250d6d034696cb5fC1 +0x0b8e605A7446801ae645e57de5AAbbc251cD1e3c +0x0baBD9Eba4c7C739Edd2dBCd6de0b7C483068948 +0x0C040E41b5b17374b060872295cBE10Ec8954550 +0x0ccBCaA60D8b59bDf751B70Ee623d58c609170ac +0x0e109847630A42fc85E1D47040ACAd1803078DCc +0x0DE299534957329688a735d03961dBd848A5f87f +0x0e40Cf5c020ADa54351699a004fAEbE5e709a3A2 +0x0e4D2c272f192bCC5ef7Bb3D8A09bdA087652162 +0x0f26F792fB89daF87A10a40f57eD1a0093b74Ad7 +0x0E9a7280741E9B018beb5Fe409e6e21689F3B8EF +0x0f5F4b5b7ca352cf4F5f2fc1Ac8A9889DECc4fCB +0x0F7aFAa9DAC8F9ada59a25fa02AA6Ab32E56b145 +0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59 +0x0FBF5E9C8D7cB0AeDd6F02Df0018178099c7d76A +0x10bf1Dcb5ab7860baB1C3320163C6dddf8DCC0e4 +0x1083D7254E01beCd64C3230612BF20E14010d646 +0x12b1c89124aF9B720C1e3E8e31492d66662bf040 +0x11D86e9F9C2a1cF597b974E50C660316c92215AA +0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043 +0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186 +0x1348EA8E35236AA0769b91ae291e7291117bf15C +0x12f1412fECBf2767D10031f01D772d618594Ea28 +0x1416C1FEd9c635ae1673118131c0880fCf71e3f3 +0x13b1ddb38c80327257Bdcb0e321c834401399967 +0x144E8fe2e2052b7b6556790a06f001B56Ba033b3 +0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b +0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1 +0x14A9034C185f04a82FdB93926787f713024c1d04 +0x14F78BdCcCD12c4f963bd0457212B3517f974b2b +0x1525797dc406CcaCC8C044beCA3611882d5Bbd53 +0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF +0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573 +0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21 +0x15e83602FDE900DdDdafC07bB67E18F64437b21e +0x15884aBb6c5a8908294f25eDf22B723bAB36934F +0x15e6e23b97D513ac117807bb88366f00fE6d6e17 +0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3 +0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE +0x168c6aC0268a29c3C0645917a4510ccd73F4D923 +0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d +0x16785ca8422Cb4008CB9792fcD756ADbEe42878E +0x183be3011809A2D41198e528d2b20Cc91b4C9665 +0x16942d62E8ad78A9026E41Fab484C265FC90b228 +0x184CbD89E91039E6B1EF94753B3fD41c55e40888 +0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b +0x19831b174e9deAbF9E4B355AadFD157F09E2af1F +0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C +0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD +0x1AAE1ADe46D699C0B71976Cb486546B2685b219C +0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b +0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d +0x1a368885B299D51E477c2737E0330aB35529154a +0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b +0x1d264de8264a506Ed0E88E5E092131915913Ed17 +0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7 +0x1aD66517368179738f521AF62E1acFe8816c22a4 +0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8 +0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974 +0x1faD27B543326E66185b7D1519C4E3d234D54A9C +0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7 +0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb +0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e +0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B +0x2032d6Fa962f05b05a648d0492936DCf879b0646 +0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D +0x19A4FE7D0C76490ccA77b45580846CDB38B9A406 +0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa +0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A +0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1 +0x22f5413C075Ccd56D575A54763831C4c27A37Bdb +0x234831d4CFF3B7027E0424e23F019657005635e1 +0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2 +0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3 +0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2 +0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6 +0x25d5Eb0603f36c47A53529b6A745A0805467B21F +0x25CFB95e1D64e271c1EdACc12B4C9032E2824905 +0x2612C1bc597799dc2A468D6537720B245f956A22 +0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9 +0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6 +0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2 +0x2894457502751d0F92ed1e740e2c8935F879E8AE +0x277FC128D042B081F3EE99881802538E05af8c43 +0x28A40076496E02a9A527D7323175b15050b6C67c +0x284A2d22620974fb416D866c18a1f3c848E7b7Bc +0x2908A0379cBaFe2E8e523F735717447579Fc3c37 +0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE +0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17 +0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20 +0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3 +0x297751960DAD09c6d38b73538C1cce45457d796d +0x2A5c5E614AC54969790c8e383487289CBAA0aF82 +0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F +0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a +0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65 +0x2bF046A052942B53Ca6746de4D3295d8f10d4562 +0x2BFB526403f27751d2333a866b1De0ac8D1b58e8 +0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3 +0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE +0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0 +0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8 +0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872 +0x2e95A39eF19c5620887C0d9822916c0406E4E75e +0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb +0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26 +0x31188536865De4593040fAfC4e175E190518e4Ef +0x31a9033E2C7231F2B3961aB8A275C69C182610b0 +0x3213977900A71e183818472e795c76aF8cbC3a3E +0x32ddCe808c77E45411CE3Bb28404499942db02a7 +0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e +0x33314cF610C14460d3c184a55363f51d609aa076 +0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb +0x334bdeAA1A66E199CE2067A205506Bf72de14593 +0x334f12F269213371fb59b328BB6e182C875e04B2 +0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2 +0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91 +0x344F8339533E1F5070fb1d37F1d2726D9FDAf327 +0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad +0x348788ae232F4e5F009d2e0481402Ce7e0d36E30 +0x34a649fde43cE36882091A010aAe2805A9FcFf0d +0x36C3094E86CB89e33a74F7e4c10659dd9366538C +0x362FFA9F404A14F4E805A39D4985042932D42aFe +0x34e642520F4487D7D0229c07f2EDe107966D385E +0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F +0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc +0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B +0x372c757349a5A81d8CF805f4d9cc88e8778228e6 +0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9 +0x3800645f556ee583E20D6491c3a60E9c32744376 +0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C +0x37435b30f92749e3083597E834d9c1D549e2494B +0x38AE800E603F61a43f3B02f5E429b44E32e01D84 +0x394fEAe00CdF5eCB59728421DD7052b7654833A3 +0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608 +0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7 +0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb +0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd +0x3b55DF245d5350c4024Acc36259B3061d42140D2 +0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133 +0x3C087171AEBC50BE76A7C47cBB296928C32f5788 +0x3C43674dfa916d791614827a50353fe65227B7f3 +0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B +0x3c5Aac016EF2F178e8699D6208796A2D67557fe2 +0x3Cdf2F8681b778E97D538DBa517bd614f2108647 +0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06 +0x3D156580d650cceDBA0157B1Fc13BB35e7a48542 +0x3e2EfD7D46a1260b927f179bC9275f2377b00634 +0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b +0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803 +0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c +0x3e763998E3c70B15347D68dC93a9CA021385675d +0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0 +0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB +0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2 +0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed +0x404a75f728D7e89197C61c284d782EC246425aa6 +0x40E652fE0EC7329DC80282a6dB8f03253046eFde +0x400609FDd8FD4882B503a55aeb59c24a39d66555 +0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8 +0x41BF3C5167494cbCa4C08122237C1620A78267Ab +0x41e2965406330A130e61B39d867c91fa86aA3bB8 +0x4254e393674B85688414a2baB8C064FF96a408F1 +0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B +0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7 +0x43816d942FA5977425D2aF2a4Fc5Adef907dE010 +0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7 +0x4384f7916e165F0d24Ab3935965492229dfd50ea +0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e +0x4438767155537c3eD7696aeea2C758f9cF1DA82d +0x4432e64624F4c64633466655de3D5132ad407343 +0x448a549593020696455D9b5e25e0b0fB7a71201E +0x44db0002349036164dD46A04327201Eb7698A53e +0x44E836EbFEF431e57442037b819B23fd29bc3B69 +0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975 +0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4 +0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719 +0x46387563927595f5ef11952f74DcC2Ce2E871E73 +0x473812413b6A8267C62aB76095463546C1F65Dc7 +0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88 +0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39 +0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0 +0x483CDC51a29Df38adeC82e1bb3f0AE197142a351 +0x4949D9db8Af71A063971a60F918e3C63C30663d7 +0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360 +0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2 +0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9 +0x4A5867445A1Fa5F394268A521720D1d4E5609413 +0x4AAE8E210F814916778259840d635AA3e73A4783 +0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6 +0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507 +0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C +0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6 +0x4C3C27eB0C01088348132d6139F6d51FC592dDBD +0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11 +0x4c180462A051ab67D8237EdE2c987590DF2FbbE6 +0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315 +0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1 +0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45 +0x4E2572d9161Fc58743A4622046Ca30a1fB538670 +0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a +0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79 +0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8 +0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b +0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56 +0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB +0x52c9A7E7D265A09Db125b7369BC7487c589a7604 +0x52E03B19b1919867aC9fe7704E850287FC59d215 +0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e +0x52d3aBa582A24eeB9c1210D83EC312487815f405 +0x533af56B4E0F3B278841748E48F61566E6C763D6 +0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910 +0x53dC93b33d63094770A623406277f3B83a265588 +0x53bA90071fF3224AdCa6d3c7960Ad924796FED03 +0x540dC960E3e10304723bEC44D20F682258e705fC +0x54201e6A63794512a6CCbe9D4397f68B37C18D5d +0x553114377d81bC47E316E238a5fE310D60a06418 +0x5540D536A128F584A652aA2F82FF837BeE6f5790 +0x554B1Bd47B7d180844175cA4635880da8A3c70B9 +0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5 +0x558C4aFf233f17Ac0d25335410fAEa0453328da8 +0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C +0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE +0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95 +0x5775b780006cBaC39aA84432BC6157E11BC5f672 +0x57B649E1E06FB90F4b3F04549A74619d6F56802e +0x56A201b872B50bBdEe0021ed4D1bb36359D291ED +0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00 +0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85 +0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F +0x59229eFD5206968301ed67D5b08E1C39e0179897 +0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c +0x59D2324CFE0718Bac3842809173136Ea2d5912Ef +0x5A25455Cf1c5309FE746FD3904af00e766Eca65f +0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e +0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87 +0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430 +0x5C6cE0d90b085f29c089D054Ba816610a5d42371 +0x5c0ed0a799c7025D3C9F10c561249A996502a62F +0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7 +0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be +0x5c9d09716404556646B0B4567Cb4621C18581f94 +0x5dd28BD033C86e96365c2EC6d382d857751D8e00 +0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B +0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2 +0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2 +0x5EdF82a73e12bcA1518eA40867326fdDc01b4391 +0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C +0x603898D099a3E16976E98595Fb9c47D1fa43FaeA +0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF +0x6040FDCa7f81540A89D39848dFC393DfE36efb92 +0x61e413DE4a40B8d03ca2f18026980e885ae2b345 +0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A +0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d +0x6343B307C288432BB9AD9003B4230B08B56b3b82 +0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8 +0x63B98C09120E4eF75b4C122d79b39875F28A6fCc +0x647bC16DCC2A3092A59a6b9F7944928d94301042 +0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61 +0x64e149a229fa88AaA2A2107359390F3b76E518AD +0x6525e122975C19CE287997E9BBA41AD0738cFcE4 +0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8 +0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a +0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22 +0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6 +0x66B0115e839B954A6f6d8371DEe89dE90111C232 +0x679B4172E1698579d562D1d8b4774968305b80b2 +0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD +0x682864C9Bc8747c804A6137d6f0E8e087f49089e +0x688b3a3771011145519bd8db845d0D0739351C5D +0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07 +0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3 +0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2 +0x69e02D001146A86d4E2995F9eCf906265aA77d85 +0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559 +0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b +0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7 +0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D +0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd +0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F +0x6DFffF3149b626148C79ca36D97fe0219CB66a6D +0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10 +0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9 +0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54 +0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906 +0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A +0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B +0x702aA86601aBc776bEA3A8241688085125D75AE2 +0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565 +0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793 +0x70a9c497536E98F2DbB7C66911700fe2b2550900 +0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31 +0x70c65accB3806917e0965C08A4a7D6c72F17651A +0x718526D1A4a33C776DD745f220dd7EbC13c71e82 +0x7197225aDAD17EeCb4946480D4BA014f3C106EF8 +0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537 +0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2 +0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126 +0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246 +0x726C46B3E0d605ea8821712bD09686354175D448 +0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2 +0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4 +0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347 +0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515 +0x74231623D8058Afc0a62f919742e15Af0fb299e5 +0x7568614a27117EeEB6E06022D74540c3C5749B84 +0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658 +0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000 +0x76A63B4ffb5E4d342371e312eBe62078760E8589 +0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc +0x775B04CC1495447048313ddf868075f41F3bf3bB +0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B +0x78320e6082f9E831DD3057272F553e143dFe5b9c +0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E +0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D +0x7893b13e58310cDAC183E5bA95774405CE373f83 +0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50 +0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E +0x7A63D7813039000e52Be63299D1302F1e03C7a6A +0x7A6530B0970397414192A8F86c91d1e1f870a5A6 +0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E +0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD +0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6 +0x7b2366996A64effE1aF089fA64e9cf4361FddC6e +0x7B2d2934868077d5E938EfE238De65E0830Cf186 +0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4 +0x7bB955249d6f57345726569EA7131E2910CA9C0D +0x7c3049d3B4103D244c59C5e53f807808EFBfc97F +0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc +0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3 +0x7D6261b4F9e117964210A8EE3a741499679438a0 +0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16 +0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E +0x80077CB3B35A6c30DC354469f63e0743eeff32D4 +0x7eaF877B409740afa24226D4A448c980896Be795 +0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5 +0x7F82e84C2021a311131e894ceFf475047deD4673 +0x804Be57907807794D4982Bf60F8b86e9010A1639 +0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81 +0x81F3C0A3115e4F115075eE079A48717c7dfdA800 +0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19 +0x81704Bce89289F64a4295134791848AaCd975311 +0x82F402847051BDdAAb0f5D4b481417281837c424 +0x80a2527A444C4f2b57a247191cDF1308c9EB210D +0x832fBA673d712fd5bC698a3326073D6674e57DF5 +0x8366bc75C14C481c93AaC21a11183807E1DE0630 +0x8368545412A7D32df7DAEB85399Fe1CC0284CF17 +0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751 +0x83C9EC651027e061BcC39485c1Fb369297bD428c +0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D +0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e +0x8456f07Bed6156863C2020816063Be79E3bDAB88 +0x848aB321B59da42521D10c07c2453870b9850c8A +0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b +0x85971eb6073d28edF8f013221071bDBB9DEdA1af +0x85bBE859d13c5311520167AAD51482672EEa654b +0x87263a1AC2C342a516989124D0dBA63DF6D0E790 +0x85Eada0D605d905262687Ad74314bc95837dB4F9 +0x8675C7bc738b4771D29bd0d984c6f397326c9eC2 +0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008 +0x87316f7261E140273F5fC4162da578389070879F +0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c +0x876133657F5356e376B7ae27d251444727cE9488 +0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45 +0x87C9E571ae1657b19030EEe27506c5D7e66ac29e +0x88F09Bdc8e99272588242a808052eb32702f88D0 +0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA +0x88F667664E61221160ddc0414868eF2f40e83324 +0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1 +0x891768B90Ea274e95B40a3a11437b0e98ae96493 +0x89979246e8764D8DCB794fC45F826437fDeC23b2 +0x8A30D3bb32291DBbB5F88F905433E499638387b7 +0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9 +0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B +0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF +0x8b08CA521FFbb87263Af2C6145E173c16576802d +0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72 +0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048 +0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5 +0x8BB07e694B421433c9545C0F3d75d99cc763d74A +0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612 +0x8be275DE1AF323ec3b146aB683A3aCd772A13648 +0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1 +0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE +0x8C35933C469406C8899882f5C2119649cD5B617f +0x8C83e4A0C17070263966A8208d20c0D7F72C44C9 +0x8D02496FA58682DB85034bCCCfE7Dd190000422e +0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D +0x8d5380a08b8010F14DC13FC1cFF655152e30998A +0x8D06Ffb1500343975571cC0240152C413d803778 +0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8 +0x8d9261369E3BFba715F63303236C324D2E3C44eC +0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051 +0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c +0x8E32736429d2F0a39179214C826DeeF5B8A37861 +0x8e75ba859f299b66693388b925Bdb1af6EEc60d6 +0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3 +0x8E22B0945051f9ca957923490FffC42732A602bb +0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab +0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD +0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2 +0x90a69b1a180f60c0059f149577919c778cE2b9e1 +0x923CC3D985cE69a254458001097012cb33FAb601 +0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1 +0x9260ae742F44b7a2e9472f5C299aa0432B3502FA +0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB +0x930836bA4242071FEa039732ff8bf18B8401403E +0x9383E26556018f0E14D8255C5020d58b3f480Dac +0x93d4E7442F62028ca0a44df7712c2d202dc214B9 +0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f +0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa +0x954C057227b227f56B3e1D8C3c279F6aF016d0e5 +0x9728444E6414E39d0F7F5389ca129B8abb4cB492 +0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb +0x97b60488997482C29748d6f4EdC8665AF4A131B5 +0x97E89f88407d375cCF90eC1B710B5A914eB784Af +0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A +0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1 +0x981793123af0E6126BEf8c8277Fdffec80eB13fd +0x988fB2064B42a13eb556DF79077e23AA4924aF20 +0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60 +0x989c235D8302fe906A84D076C24e51c1A7D44E3C +0x992C5a47F13AB085de76BD598ED3842c995bDf1c +0x995D1e4e2807Ef2A8d7614B607A89be096313916 +0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b +0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221 +0x99e8845841BDe89e148663A6420a98C47e15EbCe +0x9A428d7491ec6A669C7fE93E1E331fe881e9746f +0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA +0x9af623bE3d125536929F8978233622A7BFc3feF4 +0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F +0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb +0x9c176634A121A588F78B3E5Dc59e2382398a0C3C +0x9b69b0e48832479B970bF65F73F9CcD125E09d0F +0x9c211891aFFB1ce6CF8A3e537efbF2f948162204 +0x9c695f16975b57f730727F30f399d110cFc71f10 +0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753 +0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698 +0x9e16025a87B5431AE1371dE2Da7DcA4047C64196 +0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56 +0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E +0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE +0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c +0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282 +0xa03E8d9688844146867dEcb457A7308853699016 +0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc +0xA09DEa781E503b6717BC28fA1254de768c6e1C4e +0xA0df63b73f3B8D4a8cE353833848D672e65Ad818 +0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE +0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf +0xA256Aa181aF9046995aF92506498E31E620C747a +0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655 +0xa31CFf6aA0af969b6d9137690CF1557908df861B +0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6 +0xA46322948459845Bb5d895ED9C1fdd798692a1dA +0xa4f79238d3c5b146054C8221A85DC442Ad87b45D +0xA33be425a086dB8899c33a357d5aD53Ca3a6046e +0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15 +0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99 +0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191 +0xa73329C4be0B6aD3b3640753c459526880E6C4a7 +0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2 +0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E +0xA92b09947ab93529687d937eDf92A2B44D2fD204 +0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34 +0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22 +0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7 +0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c +0xa9b13316697dEb755cd86585dE872ea09894EF0f +0xAa24a2AB55b4F1B6af343261d71c98376084BA73 +0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15 +0xAA790Bd825503b2007Ad11FAFF05978645A92a2C +0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732 +0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc +0xABC508DdA7517F195e416d77C822A4861961947a +0xaBe78350f850924bAfF4B7139c17932d4c0560C5 +0xAbe1ee131c420b5687893518043C5df21E7Da28f +0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B +0xae6288A5B124bEB1620c0D5b374B8329882C07B6 +0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758 +0xaCc53F19851ce116d52B730aeE8772F7Bd568821 +0xafaAa25675447563a093BFae2d3Db5662ADf9593 +0xb13c60ee3eCEC5f689469260322093870aA1e842 +0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0 +0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106 +0xb338092f7eE37A5267642BaE60Ff514EB7088593 +0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F +0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277 +0xB345720Ab089A6748CCec3b59caF642583e308Bf +0xb53031b8E67293dC17659338220599F4b1F15738 +0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88 +0xb57Fd427c7a816853b280D8c445184e95Fe8f61A +0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393 +0xB58A0c101dd4dD9c29B965F944191023949A6fd0 +0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B +0xb63050875231622e99cd8eF32360f9c7084e50a7 +0xB65a725e921f3feB83230Bd409683ff601881f68 +0xb66924A7A23e22A87ac555c950019385A3438951 +0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6 +0xB73a795F4b55dC779658E11037e373d66b3094c7 +0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B +0xb78003FCB54444E289969154A27Ca3106B3f41f6 +0xB81D739df194fA589e244C7FF5a15E5C04978D0D +0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D +0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202 +0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711 +0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1 +0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6 +0xbC3A1D31eb698Cd3c568f88C13b87081462054A8 +0xbd0D7F2115C73576464689883Ce7257A3b4D8eC4 +0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB +0xBd03118971755fC60e769C05067061ebf97064ba +0xbD50a98a99438325067302D987ccebA3C7a8a296 +0xBD874A4e472AEc2777a137788A0c7cC1e043E8D7 +0xBe289902A13Ae7bA22524cb366B3C3666c10F38F +0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A +0xBe41D609ad449e5F270863bBdCFcE2c55D80d039 +0xbf8A064c575093bf91674C5045E144A347EEe02E +0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e +0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb +0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD +0xc06320d9028F851c6cE46e43F04aFF0A426F446c +0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04 +0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B +0xc0985b8b744C63e23e4923264eFfaC7535E44f21 +0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57 +0xc18BAB9f644187505F391E394768949793e9894f +0xc1F80163cC753f460A190643d8FCbb7755a48409 +0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d +0xc22846cf4ACc22f38746792f59F319b216E3F338 +0xc240D9f8d38F2bE93900C5e5D1Acc10D2CC7AbAc +0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5 +0xC4B07F805707e19d482056261F3502Ce08343648 +0xc493AA1EA56dfe12E3DC665c46E1425BC3ee426F +0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732 +0xC4FF293174198e9AeB8f655673100EeEDcbBFb1a +0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F +0xC52A0B002ac4E62bE0d269A948e55D126a48C767 +0xC5581F1aE61E34391824779D505Ca127a4566737 +0xc6302894cd030601D5E1F65c8F504C83D5361279 +0xC56725DE9274E17847db0E45c1DA36E46A7e197F +0xC555347d2b369B074be94fE6F7Ae9Ab43966B884 +0xC37e2C0D1d60512cFcBe657B0B050f0c82060d1b +0xC65F06b01E114414Aac120d54a2E56d2B75b1F85 +0xC6e76A8CA58b58A72116d73256990F6B54EDC096 +0xC3853C3A8fC9c454f59c9aeD2Fc6cfa1a41eB20E +0xc6Ee516b0426c7fCa0399EaA73438e087B967d57 +0xC7B42F99c63126B22858f4eEd636f805CFe82c91 +0xC76d7eb6B13a8aDC5E93da2bD1ae4309806757c6 +0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9 +0xC7ED443D168A21f85e0336aa1334208e8Ee55C68 +0xC7c5a25141dfBB4eb586c58fE0f12efd5f999A2B +0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1 +0xc83746C2da00F42bA46a8800812Cd0FdD483d24A +0xC89A6f24b352d35e783ae7C330462A3f44242E89 +0xC95186f04B68cfec0D9F585D08C3b5697C858fe0 +0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b +0xcb1Fda8A2c50e57601aa129ba2981318E025F68E +0xCa11d10CEb098f597a0CAb28117fC3465991a63c +0xCB85C8f60a34D2cB566CC0b0ce9e8Fd66C2d961F +0xcb89e2300E22Ec273F39e69E79E468723ad65158 +0xCba1A275e2D858EcffaF7a87F606f74B719a8A93 +0xCE1Ef18B8c756E2A3bf24fF86DF3e2a4a442691e +0xCeD392A0B38EEdC1f127179D88e986452aCe6433 +0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0 +0xCF0dCc80F6e15604E258138cca455A040ecb4605 +0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a +0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0 +0xcfd9c9Ac52b4B6Fe30537803CaEb327daDD411bB +0xD12570dEDa60976612Eeac099Fb843F2cc53c394 +0xd03c52B3256b5e102ce4BF6bB53d4Be9d9963838 +0xD00fB8efFeE21177df7871F285B379Bb03d8A8b5 +0xD130Ab894366e4376b1AfE3D52638a1087BE17F4 +0xD15B5fA5370f0c3Cc068F107B7691e6dab678799 +0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691 +0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0 +0xD1C5599677A46067267B273179d45959a606401D +0xD2594436a220e90495cb3066b24d37A8252Fac0c +0xD1F27c782978858A2937B147aa875391Bb8Fc278 +0xD2aC889e89A2A9743Db24f6379ac045633E344D2 +0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911 +0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8 +0xd2D533b30Af2c22c5Af822035046d951B2D0bd57 +0xd3FeeDc8E702A9F191737c0482b685b74Be48CFa +0xD441C97eF1458d847271f91714799007081494eF +0xd30eB4f27aCac4d903a92A12a29f3fe758A6849c +0xD497Ed50BE7A80788898956f9a2677eDa71D027E +0xD4B5541B7d82C6284e54910aB6068dC218Da1D1C +0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709 +0xD560fd84DAB03114C51448ab97AD82D21Cc3cEEc +0xD567BEdb9EAe1DB39f0e704B79dF6dF7f846B9B0 +0xd5aE1639e5EF6Ecf241389894a289a7C0c398241 +0xd582359cC7c463aAd628936d7D1E31A20d6996f3 +0xD5eFa6Ce5E86C813d5b016ABd10Bf311648D9FE8 +0xD5Fe199029ee4626478D47caE4F6F68CEa142c4C +0xd61296bc2FEaE9Ed107aB37d8BAF12562f770Bd5 +0xD6626eA482D804DDd83C6824284766f73A45D734 +0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427 +0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF +0xD6e91233068c81b0eB6aAc77620641F72d27a039 +0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3 +0xd722B7b165bb87c77207a4e0e690596234Cf1aB6 +0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6 +0xD79e92124A020410C238B23Fb93C95B2922d0B9E +0xD87bc009C1Fd2d29A3f1dDF94e6529dEC1aFD7D3 +0xD8c84eaC995150662CC052E6ac76Ec184fcF1122 +0xD93cA8A20fE736C1a258134840b47526686D7307 +0xD9E886861966Af24A09a4e34414E34aCfC497906 +0xD970Ba10ED5E88b678cd39FA37DaA765F6948733 +0xdAe3b4E9bA2F1bd8da873B7dd5a391781a8C1Ae4 +0xdb215bA8D9bed3aACE91E23307Caa00A8c9211f1 +0xdB4fBc231F1D2b3B4c3d9e1602C895806fb06278 +0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c +0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661 +0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D +0xDc4F9f1986379979053E023E6aFA49a65A5E5584 +0xDC50cB21557c8A1F1161683FC2ec4Cf5829ef50C +0xDD0C3175A65f7a26078FFF161B8Be32068ff8723 +0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78 +0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8 +0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f +0xdEBA22ef671936a5CB3964C8469fDC32cF745C0a +0xDFc6b16343F92c1347B6E9700aA6c5d9E34794A1 +0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0 +0xE09c29F85079035709b0CF2839750bcF5DcdE163 +0xe0842049837F79732d688d0d080aCee30b93578B +0xe105EDc9d5E7B473251f91c3205bc62a6A30c446 +0xe1762431241FE126a800c308D60178AdFF2D966a +0xE1e98eAe1e00E692D77060237002a519E7e60b60 +0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25 +0xE203096D7583E30888902b2608652c720D6C38da +0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41 +0xE2bDaE527f99a68724B9D5C271438437FC2A4695 +0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C +0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3 +0xE2EdD6Ba259A7a7543e76df6F3Eab80154Ff7982 +0xE381CEb106717c176013AdFCE95F9957B5ea3dA9 +0xE3A2Ad75e3e9B893c8188030BA7f550FDfEeadac +0xE382de4893143c06007bA7929D9532bFF2140A3F +0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6 +0xE432225AB3A24D0328c1eb8934f12C2C664dBF1E +0xE58E375Cc657e434e6981218A356fAC756b98097 +0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74 +0xE543357D4F0EB174CfC6BeD6Ef5E7Ab5762f1B2B +0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14 +0xe693eB739c0bE8c2bDD978C550B5D8b8022A8adA +0xE6C459B2d9e8EafD205b74201Ce1988B28Bd2a1F +0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0 +0xE7a9c882C15288E8FaDd3f84127bF89b04dF81b3 +0xe846880530689a4f03dBd4B34F0CDbb405609de1 +0xe886eCE8dEA22C64592E16CE9c6060C354e0cB46 +0xe8e8D10D48Bb4761E30A1A0C3f5705788E2Cf5Ca +0xe86a6C1D778F22D50056a0fED8486127387741e2 +0xe9c6f6D44C546CdD54231e673Ba8b612972cdD07 +0xe9886487879Cf286a7a212C8CFe5A9a948ea1649 +0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C +0xe9F55fF0Ce2c086a02154E18d10696026aFC0E63 +0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29 +0xEC4009A246789e37EA5278F5Cc8bF7Bc7f11A7D7 +0xEaFc0e4AcF147e53398A4c9AE5F15950332Cce06 +0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196 +0xEd8440f3476073DF5077b5F97d34556fBd6c1AEA +0xedC24C8a0B98715C4c42f23fA1a966D68d71DA40 +0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef +0xeE7840DAC7C3ec2cCDe49517fd3952e349997aB5 +0xeE55F7F410487965aCDC4543DDcE241E299032A4 +0xeEA71D769BE2028A276BBb5210eD87d2962E1bAD +0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee +0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C +0xF024e42Bc0d60a79c152425123949EC11d932275 +0xF05980BF83005362fdcBCB8F7A453fE40B669D96 +0xF14Ee792bb979Aa08b5c65B1069A4209159d13fE +0xf05b641229bB2aA63b205Ad8B423a390F7Ef05A7 +0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657 +0xF18507A3D7907F2FDa0F80ea74b92707F67E0bd9 +0xF1cCFA46B1356589EC6361468f3520Aff95B21c3 +0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d +0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22 +0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5 +0xf28E9401310E13Cfd3ae0A9AF083af9101069453 +0xf295eCbE3cf6aB9fD521DFDF2B3ad296389d659F +0xf2d67343cB0599317127591bcef979feaF32fF76 +0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e +0xf3999F964Ff170E2268Ba4c900e47d72313079c5 +0xF38762504B458dC12E404Ac42B5ab618A7c4c78A +0xf3E52C9756a7Cc53F15895B11cc248B1694C3D81 +0xF4003979abEbEf7dEdCE0FcB0A8064617ba1cb6c +0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F +0xf476f6c0c97d088C3A1Ec2a076218C22EDFE018D +0xF4CEC45FcdeDFafAa6bcB66736bBd332Ce43bA23 +0xF50ABEF10CFcF99CdF69D52758799932933c3a80 +0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C +0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3 +0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2 +0xf62dC438Cd36b0E51DE92808382d040883f5A2d3 +0xF7d48932f456e98d2FF824E38830E8F59De13f4A +0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765 +0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8 +0xf80cDe9FBB874500E8932de19B374Ab473E7d207 +0xf973554fbA6059F4aF0e362fcf48AB8497eC1d8f +0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC +0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4 +0xFa0A637616BC13a47210B17DB8DD143aA9389334 +0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d +0xfaAe91b5d3C0378eE245E120952b21736F382c59 +0xFb00Fab6af5a0aCD8718557D34B52828Ae128D34 +0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef +0xFaE9C276d513E6dC5060BB9bE5111c3124C4376c +0xfc22875F01ffeD27d6477983626E369844ff954C +0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55 +0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27 +0xFc748762F301229bCeA219B584Fdf8423D8060A1 +0xfCA811318D6A0a118a7C79047D302E5B892bC723 +0xfcBa05D5556b6A450209A4c9E2fe9a259C84d50F +0xfD67bbb8b3980801e28b8D9c49fd9d1eA487087B +0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7 +0xFE09f953E10f3e6A9d22710cb6f743e4142321bd +0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f +0xfEc2248956179BF6965865440328D73bAC4eB6D2 +0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943 +0xFf4A6b6F1016695551355737d4F1236141ec018D +0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c +0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7 +0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0 +0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746 +0x49cE991352A44f7B50AF79b89a50db6289013633 +0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a +0x6820572d10F8eC5B48694294F3FCFa1A640CFf40 +0xF28df3a3924eEC94853b66dAaAce2c85e1EB24ca +0x9eD25251826C88122E16428CbB70e65a33E85B19 +0x2E34723A04B9bb5938373DCFdD61410F43189246 +0xBd120e919eb05343DbA68863f2f8468bd7010163 +0xc80102BA8bFB97F2cD1b2B0dA158Dfe6200B33B3 +0xc9931D499EcAA1AE3E1F46fc385E03f7a47C2E54 +0xcBF3d4AB955d0bE844DbAed50d3A6e94Ada97E8b +0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b +0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc +0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397 +0x5a34897A6c1607811Ae763350839720c02107682 +0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab +0xE42Ab6d6dC5cc1569802c26a25aF993eeF76cAA2 +0x224e69025A2f705C8f31EFB6694398f8Fd09ac5C +0x6D4ed8a1599DEe2655D51B245f786293E03d58f7 +0x82Ff15f5de70250a96FC07a0E831D3e391e47c48 +0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c +0x08Bf22fB93892583a815C598502b9B0a88124DAD +0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E +0xC997B8078A2c4AA2aC8e17589583173518F3bc94 +0xfF961eD9c48FBEbDEf48542432D21efA546ddb89 +0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E +0xcDe68F6a7078f47Ee664cCBc594c9026a8a72d25 +0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF +0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f +0x38f733Fb3180276bE19135B3878580126F32c5Ab +0x82a8409a264ea933405f5Fe0c4011c3327626D9B +0xf6F46f437691b6C42cd92c91b1b7c251D6793222 +0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf +0xB615e3E80f20beA214076c463D61B336f6676566 +0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91 +0x4DDE0C41511d49E83ACE51c94E668828214D9C51 +0x09Ea3281Eeb7395DaD7851E7e37ad6aff9d68a4c +0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254 +0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458 +0xF493Fd087093522526b1fF0A14Ec79A1f77945cF +0x032865e6e27E90F465968ffc635900a4F7CEEB84 +0x55179ffEFc2d49daB14BA15D25fb023408450409 +0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4 +0x0519425dD15902466e7F7FA332F7b664c5c03503 +0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6 +0xB6CC924486681a1ca489639200dcEB4c41C283d3 +0x6B7F8019390Aa85b4A8679f963295D568098Cf51 +0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df +0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371 +0x632f3c0548f656c8470e2882582d02602CfF821C +0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4 +0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70 +0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE +0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E +0x0d619C8e3194b2aA5eddDdE5768c431bA76E27A4 +0xE9D18dbFd105155eb367fcFef87eAaAFD15ea4B2 +0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81 +0x52f3F126342fca99AC76D7c8f364671C9bb3fC67 +0xC1E64944de6BEE91752431fF83507dCBd57E186b +0x12B9D75389409d119Dd9a96DF1D41092204e8f32 +0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921 +0xD99f87535972Ba63B0fcE0bC2B3F7a2aF7193886 +0x399baf8F9AD4B3289d905f416bD3e245792C5fA6 +0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6 +0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6 +0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545 +0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b +0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0 +0x284f942F11a5046a5D11BCbEC9beCb46d1172512 +0x9A5d202C5384a032473b2370D636DcA39adcC28f +0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248 +0xF3F03727e066B33323662ACa4BE939aFBE49d198 +0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe +0x6A7E0712838A0b257C20e042cf9b6C5E910F221F +0x6bDd8c55a23D432D34c276A87584b8A96C03717F +0xd80eC2F30FB3542F0577EeD01fBDCCF007257127 +0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303 +0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2 +0x3a1Bc767d7442355E96BA646Ff83706f70518dAA +0xFA2a3c48b85D6790B943F645Abf35A1E12770D09 +0x084a35aE3B2F2513FF92fab6ad2954A1DF418093 +0xd5eF94eC1a13a9356C67CF9902B8eD22Ebd6A0f6 +0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22 +0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43 +0x085656Bd50C53E7e93D19270546956B00711FE2B +0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7 +0x84649973923f8d3565E8520171618588508983aF +0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714 +0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb +0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5 +0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3 +0x19CB3CfB44B052077E2c4dF7095900ce0b634056 +0xdF02A9ba6C6A5118CF259f01eD7A023A4599a945 +0xE48436022460c33e32FC98391CD6442d55CD1c69 +0xF074d66B602DaE945d261673B10C5d6197Ae5175 +0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569 +0x4932Ad7cde36e2aD8724f86648dF772D0413c39E +0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB +0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849 +0x1B89a08D82079337740e1cef68c571069725306e +0xE3546C83C06A298148214C8a25B4081d72a704B4 +0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96 +0x0c492D61651965E3096740306F8345516fCd8990 +0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6 +0x6384F5369d601992309c3102ac7670c62D33c239 +0xCd3F4c42552F24d5d8b1f508F8b8d138b01af53F +0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5 +0xdbC529316fe45F5Ce50528BF2356211051fB0F71 +0x262126FD37D04321D7f824c8984976542fCA2C36 +0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151 +0x922d012c7E8fCe3C46ac761179Bdb6d16246782D +0xcA580c4e991061D151021B13b984De73B183b06e +0x085E98CD14e00f9FC3E9F670e1740F954124e824 +0x219312542D51cae86E47a1A18585f0bac6E6867B +0x57068722592FeD292Aa9fdfA186A156D00A87a59 +0x41954b53cFB5e4292223720cB3577d3ed885D4f7 +0x30d0DEb932b5535f792d359604D7341D1B357a35 +0x7C28205352AD687348578f9cB2AB04DE1DcaA040 +0xe1887385C1ed2d53782F0231D8032E4Ae570B3CE +0x5004Be84E3C40fAf175218a50779b333B7c84276 +0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0 +0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e +0x0e9dc8fFc3a5A04A2Abdd5C5cBc52187E6653E42 +0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce +0x26f781D7f59c67BBd16acED83dB4ba90d1e47689 +0xF28841b27FD011475184aC5BECadd12a14667e04 +0xbb9dDEE672BF27905663F49bf950090050C4e9ad +0xEd52006B09b111dAa000126598ACD95F991692D6 +0xD1373DfB5Ff412291C06e5dFe6b25be239DBcf3E +0xcEB03369b7537eB3eCa2b2951DdfD6D032c01c41 +0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb +0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52 +0x6AB3E708231eBc450549B37f8DDF269E789ed322 +0x4497aAbaa9C178dc1525827b1690a3b8f3647457 +0x1904e56D521aC77B05270caefB55E18033b9b520 +0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE +0x0c940e42D91FE16E0f0Eccc964b26dde7808ab5d +0xc9EA118C809C72ccb561Dd227036ce3C88D892C2 +0xbFd7ddd26653A7706146895d6e314aF42f7B18D5 +0xae0aAF5E7135058919aB10756C6CdD574a92e557 +0xF352e5320291298bE60D00a015b27D3960F879FA +0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd +0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8 +0x54CE05973cFadd3bbACf46497C08Fc6DAe156521 +0x136e6F25117aF5e5ff5d353dC41A0e91F013D461 +0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F +0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B +0x8325D26d08DaBf644582D2a8da311D94DBD02A97 +0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5 +0x354F7a379e9478Ad1734f5c48e856F89E309a597 +0xF7cCA800424e518728F88D7FC3B67Ed6dFa0693C +0x406874Ac226662369d23B4a2B76313f3Cb8da983 +0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714 +0x07f7cA325221752380d6CdFBcFF9B5E5E9EC058F +0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5 +0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5 +0x2bDB0cB25Db0012dF643041B3490d163A1809eE6 +0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235 +0x533ac5848d57672399a281b65A834d88B0b2dF45 +0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d +0x328e124cE7F35d9aCe181B2e2B4071f51779B363 +0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C +0x058107C8b15Dd30eFF1c1d01Cf15bd68e6BEf26F +0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04 +0xc59821CBF1A4590cF659E2BA74de9Bbf7612E538 +0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2 +0x8709DD5FE0F07219D8d4cd60735B58E2C3009073 +0xaaEB726768606079484aa6b3715efEEC7E901D13 +0xE8c22A092593061D49d3Fbc2B5Ab733E82a66352 +0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31 +0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e +0x7310E238f2260ff111a941059B023B3eBCF2D54e +0xE67ae530c6578bCD59230EDac111Dd18eE47b344 +0x06E6932ed7D7De9bcF5bD7a11723Dc698D813F7e +0xE3faBA780BDe12D3DFEB226A120aA4271f1D72B2 +0x7125B7C60Ec85F9aD33742D9362f6161d403EC92 +0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0 +0xc4c89a41Ad3050Bb82deE573833f76f2c449353e +0xC21a7Fe78A0Fb9DF4Da21F2Ce78c76BdAe63e611 +0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C +0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F +0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A +0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37 +0x09DaDF51d403684A67886DB545AE1703d7856056 +0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09 +0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A +0xbf9Db3564c22fd22FF30A8dB7f689D654Bf5F1fD +0xF4B2300e02977720D590353725e4a73a67250bf3 +0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3 +0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D +0x567dA563057BE92a42B0c14a765bFB1a3dD250be +0x0846Bf78c84C11D58Bb2320Fc8807C1983A2797C +0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70 +0xD5351308c8Cb15ca93a8159325bFb392DC1e52aC +0x3638570931B30FbBa478535A94D3f2ec1Cd802cB +0x6fBDc235B6f55755BE1c0B554469633108E60608 +0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76 +0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee +0x0A7ED639830269B08eE845776E9b7a9EFD178574 +0x15682A522C149029F90108e2792A114E94AB4187 +0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36 +0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f +0x7eFaC69750cc933e7830829474F86149A7DD8e35 +0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0 +0x7c9551322a2e259830A7357e436107565EA79205 +0x09147d29d27E0c8122fC0b66Ff6Ca060Cda40aDc +0x61C562283B268F982ffa1334B643118eACF54480 +0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95 +0xB5030cAc364bE50104803A49C30CCfA0d6A48629 +0xEF64581Af57dFEc2722e618d4Dd5f3c9934C17De +0x80771B6DC16d2c8C291e84C8f6D820150567534C +0xCfCF5A55708Cd1Ae90fdcad70C7445073eB04d94 +0x0B7021897485cC2Db909866D78A1D82657A4be6F +0xcD26f79e60fd260c867EEbAeAB45e021bAeCe92D +0x59b9540ee2A8b2ab527a5312Ab622582b884749B +0xD0126092d4292F8DC755E6d8eEE8106fbf84583D +0x368a5564F46Bd896C8b365A2Dd45536252008372 +0xDB2480a43C79126F93Bd5a825dc0CBa46d7C0612 +0xD49946B3dA0428fE4E69c5F4D6c4125e5D0bf942 +0xde8351633c96Ac16860a78D90D3311fa390182BF +0x0A0761a91009101a86B7a0D786dBbA744cE2E240 +0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20 +0x0F0520237DB57A05728fa0880F8f08A1fd57ccff +0xeeBF4Ea438D5216115577f9340cD4fB0EDD29BD9 +0x821bb6973FdA779183d22C9891f566B2e59C8230 +0x90B113Cf662039394D28505f51f0B1B4678Cc3b5 +0x3BD4c721C1b547Ea42F728B5a19eB6233803963E +0xc32B1e77879F3544e629261E711A0cc87ae01182 +0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287 +0x0e56C87075CD53477C497D5B5F68CdcA8605cBF7 +0x97Ada2E26C06C263c68ECCe43756708d0f03D94A +0x5edd743E40c978590d987c74912b9424B7258677 +0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81 +0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E +0x110dfBb05F447880B9B29206c1140C07372090dc +0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7 +0x019285701d4502df31141dF600A472c61c054e63 +0xF8444CF11708d3901Ee7B981b204eD0c7130fB93 +0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E +0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E +0x79645bfB4Ef32902F4ee436A23E4A10A50789e54 +0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190 +0xF57c5533a9037E25E5688726fbccD03E09738aCd +0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a +0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a +0x99997957BF3c202446b1DCB1CAc885348C5b2222 +0x49444e6d0b374f33c43D5d27c53d0504241B9553 +0x4d26976EC64f11ce10325297363862669fCaAaD5 +0x08b6e06F64f62b7255840329b2DDB592d6A2c336 +0xFe2da4E7e3675b00BE2Ff58c6a018Ed06237C81D +0xDa12B5133e13e01d95f9a5BE0cc61496b17E5494 +0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E +0xe2282eA0D41b1a9D99B593e81D9adb500476C7C5 +0x93b34d74a134b403450f993e3f2fb75B751fa3d6 +0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21 +0xFD7998c9c23aa865590fd3405F19c23423a0611B +0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54 +0xEC9F16FAacD809ED3EC90D22C92cE84C5C115FAC +0xdF3A7C30313779D3b6AA577A28456259226Ff452 +0xd6E52faa29312cFda21a8a5962E8568b7cfe179a +0x27320AAc0E3bbc165E6048aFc0F28500091dca73 +0x5F067841319aD19eD32c432ac69DcF32AC3a773F +0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60 +0x5D177d3f4878038521936e6449C17BeCd2D10cBA +0x34Aec84391B6602e7624363Df85Efe02A1FF35f5 +0x5A803cD039d7c427AD01875990f76886cC574339 +0xf5f165910e11496C2d1B3D46319a5A07f09Bf2D9 +0xe4082AaCDEd950C0f21FEbAC03Aa6f48D15cd58D +0x220c12268c6f1744553f456c3BF161bd8b423662 +0xd380b5Fed7b9BaAFF7521aA4cEfC257Db3043d26 +0xcd1E27461aF28E23bd3e84eD87e2C9a281bF0d9F +0xD2927a91570146218eD700566DF516d67C5ECFAB +0x349E8490C47f42AB633D9392a077D6F1aF4d4c85 +0x997563ba8058E80f1E4dd5b7f695b5C2B065408e +0x4588a155d63CFFC23b3321b4F99E8d34128B227a +0x0948934A39767226E1FfC53bd0B95efa90055178 +0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1 +0xE6375dF92796f95394a276E0BA4Efc4176D41D49 +0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca +0xF4a04D998A8d6Cf89C9328486a952874E50892DC +0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f +0x317B157e02c3b5A16Efc3cc4eb26ACcC1cfF24e3 +0x26AFBbC659076B062548e8f46D424842Bc715064 +0xda333519D92b4D7a83DBAACB4fd7a31cDB4f24A4 +0x299e4B9591993c6001822baCF41aff63F9C1C93F +0x215F97a79287BE4192990FCc4555F7a102a7D3DE +0xbFC415Eb25AaCbEEf20aE5BC35f1F4CfdE9e3FC6 +0xae5c0ff6738cE54598C00ca3d14dC71176a9d929 +0xF1F2581Bd9BBd76134d5f111cA5CFF0a9753FD8E +0xB3561671651455D2E8BF99d2f9E2257f2a313a2c +0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb +0xCB2d95308f1f7db3e53E4389A90798d3F7219a7e +0x16b5e68f83684740b2DA481DB60EAb42362884b9 +0x08507B93B82152488512fe20Da7E42F4260D1209 +0x0690166a66626C670be8f1A09bcC4D23c0838D35 +0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797 +0x990cf47831822275a365e0C9239DC534b833922D +0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5 +0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5 +0x28aB25Bf7A691416445A85290717260971151eD2 +0x3BD142a93adC0554C69395AAE69433A74CFFc765 +0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106 +0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01 +0x59dC1eaE22eEbD6CfbD144ee4b6f4048F8A59880 +0x81eee01e854EC8b498543d9C2586e6aDCa3E2006 +0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968 +0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB +0x671ec816F329ddc7c78137522Ea52e6FBC8decCD +0x82CFf592c2D9238f05E0007F240c81990f17F764 +0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB +0x0FF2FAa2294434919501475CF58117ee89e2729c +0xF6FE6b3f7792B0a3E3E92Fdbe42B381395C2BBd8 +0x201ad214891136FC37750029A14008D99B9ab814 +0xD11FaEdC6F7af5b05137A3F62cb836Ab0aE5dbb6 +0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0 +0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1 +0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725 +0x095CB8F5E61b69A0C2fE075A772bb953f2d11C2A +0xaDd2955F0efC871902A7E421054DA7E6734d3DCA +0xcc5b337cd28b330705e2949a3e28e7EcA33FABF3 +0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE +0xE4202F5919F22377dB816a5D04851557480921dF +0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209 +0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6 +0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf +0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb +0x8bFe70E2D583f512E7248D67ACE918116B892aeA +0xDecaFa57F07292a338E59242AaC289594E6A0d68 +0x61C95fe68834db2d1f323bb85F0590690002a06d +0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA +0xcB0838c828Ec4911f6a0ba48e58BC67a8c5f9c3f +0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3 +0x6b87460Ce18951D31A7175cAbE2f3fc449E54256 +0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a +0x009A2534fd10c879D69daf4eE3000A6cb7E609Bb +0x507165FF0417126930D7F79163961DE8Ff19c8b8 +0x9D496BA09C9dDAE8de72F146DE012701a10400CC +0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1 +0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e +0x3810EAcf5020D020B3317B559E59376c5d02dCB2 +0x2352FDd9A457c549D822451B4cD43203580a29d1 +0x5084949C8f7bf350c646796B242010919f70898E +0xF4E3f1c01BD9A5398B92ac1B8bedb66ba4a2d627 +0xa48E7B26036360695be458D6904DE0892a5dB116 +0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB +0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d +0x532744D22891C4fccd5c4250D62894b3153667a7 +0xc390578437F7BdEe1F766Fdb00f641848bc19366 +0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D +0xF930b0A0500D8F53b2E7EFa4F7bCB5cc0c71067E +0xf152581b8cb486b24d73aD51e23a3Fd3E0222538 +0x61e193e514DE408F57A648a641d9fcD412CdeD82 +0x70C8eE0223D10c150b0db98A0423EC18Ec5aCa89 +0xe496c05e5E2a669cc60ab70572776ee22CA17F03 +0xBF843F2AA6425952aE92760250503cE9930342b4 +0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176 +0xbb595fEF3C86FE664836a5Ea6C6E549ECeA28dEe +0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48 +0x905B2Eb4B731B395E7517a4763CD829F6EC2f510 +0x568092fb0aA37027a4B75CFf2492Dbe298FcE650 +0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af +0xC252A841Af842a55b0F0b507f68f3864bf1C02b5 +0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e +0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5 +0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97 +0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D +0x5aB883168ab03c97239CEf348D5483FB2b57aFD9 +0x0B297D1e15bd63e7318AF0224ebeA1883eA1B78b +0x8264EA7b0b15a7AD9339F06666D7E339129C9482 +0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC +0x66F1089eD7D915bC7c7055d2d226487362347d39 +0x9c7ac7abbD3EC00E1d4b330C497529166db84f63 +0x829Ceb00fC74bD087b1e50d31ec628a90894cD52 +0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22 +0x08364bdB63045c391D33cb83d6AEd7582b94701d +0xbFc016652a6708b20ae850Ee92D2Ea23ccA5F31a +0x81696d556eeCDc42bED7C3b53b027de923cC5038 +0x70F11dbD21809EbCd4C6604581103506A6a8443A +0xECA7146bd5395A5BcAE51361989AcA45a87ae995 +0xCfD2b6487AFA4A30b79408cF57b2103348660a02 +0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4 +0xeEe59d723433a4b178fCD383CD936de9C8666111 +0x29e1A68927a46f42d3B82417A01645Ee23F86bD9 +0xe0E297e67191AF140BCa9E7c8dd9FfA7F57D3862 +0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3 +0xC2705469f7426E9EbE91e55095dCA2AdF19Bcbb2 +0xC9cE413f3761aB1Df6be145fe48Fc6c28A8DCc1a +0x843F293423895a837DBe3Dca561604e49410576C +0xAf93048424E9DBE29326AD1e1B00686760318f0D +0x26C08ce60A17a130f5483D50C404bDE46985bCaf +0x68ca44eD5d5Df216D10B14c13D18395a9151224a +0x33c0BCac5c1835fe9D52D35079F6617A22c6C431 +0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509 +0x0be0eCC301a1c0175f07A66243cfF628c24DB852 +0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17 +0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB +0x7c12222e79e1a2552CaF92ce8dA063e188a7234F +0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E +0xDeaB5B36743feb01150e47Ad9FfD981b9d5b7E8a +0x2f89DB6B5E80C4849142789d777109D2F911F780 +0x0C2301083B7f8021fB967C05a4C2fb1ab731C302 +0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79 +0x04A9b41a1288871FB60c6d015F3489612d36EB48 +0xF4839123454F7A65f79edb514A977d0A443d9F91 +0xb0226e96c71F94C44d998CE1b34F6a47c3A82404 +0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f +0x81d8363845F96f94858Fac44A521117DADBfD837 +0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED +0xe9ef7E644405dD6BD1cbd1550444bBF6B2Bfc7C1 +0x08c16a9c76Df28eE6bf9764B761E7C4cE411E890 +0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F +0x6ab4566Df630Be242D3CD48777aa4CA19C635f56 +0xCAeEf0dFCF97641389F8673264b7AbAB25D17c99 +0xE6A0D70CFe2BB97E39D37ED2549c25FA8C238B1A +0xCD4950a8Bd67123807dA21985F2d4C4553EA1523 +0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256 +0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe +0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC +0x9399943298b25632b21f4d1FA75DB0C5b8d457C5 +0x96e5aAcf14E93E6Bd747C403159526fa484F71dC +0x87834847477c82d340FCD37BE6b5524b4dF5e7c5 +0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba +0x66D8293781eF24184aa9164878dfC0486cfa9Aac +0x8a178306ffF20fd120C6d96666F08AC7c8b31ded +0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14 +0xCF04b3328326b24A1903cBd8c6Cab8E607594342 +0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74 +0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF +0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80 +0xF75e363F695Eb259d00BFa90E2c2A35d3bFd585f +0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490 +0x0A6f465033A42B1EC9D8Cd371386d124E9D3b408 +0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E +0x686381d3D0162De16414A274ED5FbA9929d4B830 +0x1a5280B471024622714DEc80344E2AC2823fd841 +0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA +0x2BeaB5818689309117AAfB0B89cd6F276C824D34 +0x3983b24542E637030af57a6Ca117B96Fc42Ace10 +0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0 +0x3798AE2cbC444ed5B5f4fb38344044977066D13F +0xec94F1645651C65f154F48779Db1F4C36911a56a +0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96 +0xc40dcc52887e1F08c2c91Dcd650da630DE671bD7 +0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A +0x0fbb76b9B283Dd22eCbD402B82EbFA6807e44260 +0x3103c84c86a534a4f10C3823606F2a5b90923924 +0x35a386D9B7517467a419DeC4af6FaFC4c669E788 +0x2437Db820DE92d8DD64B524954fA0D160767c471 +0xD5bFBD8FCD5eD15d3df952b0D34edA81FF04Dabe +0x699095648BBc658450a22E90DF34BD7e168FCedB +0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4 +0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F +0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39 +0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302 +0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6 +0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91 +0x2342670674C652157c1282d7E7F1bD7460EFa9E2 +0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3 +0x93A185CD1579c015043Af80da2D88C90240Ab3a9 +0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714 +0x18ED928719A8951729fBD4dbf617B7968D940c7B +0x08C1eBaC9aD1933E08718A790bc7D1026e588c9b +0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4 +0x25a7C06e48C9d025B0de3e0de3fcA5802698438d +0x0b406697078c0C74e327856Fc57561a3A81FB925 +0xD73d566e1424674C12F1D45aEA023C419e6EfeF5 +0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b +0xd16C24e9CCDdcD7630Dd59856791253F789b1640 +0x8A1B804543404477C19034593aCA22Ab699f0B7D +0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c +0xeAB3981257d761d809E7036F498208F06ce0E5bb +0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0 +0xC8D71db19694312177B99fB5d15a1d295b22671A +0xebDA75C5e193BBB82377b77e3c62c0b323240307 +0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3 +0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df +0xf0ec8fFED51B4Ba996005F04d38c3dBeF3A92773 +0x47b2EFa18736C6C211505aEFd321bEC3AC3E8779 +0x2C01E651a64387352EbAF860165778049031e190 +0x33033E306c89Dc5b662f01e74B12623f9a39CCE4 +0xD48E614c2CbAF0A588E8Be1BeD8675b35EEE93FC +0xDaD87a8cCe8D5B9C57e44ae28111034e2A39eD50 +0x5F0f6F695FebF386AA93126237b48c424961797B +0x74382a61e2e053353BECBC71a45adD91c0C21347 +0x2d0DDb67B7D551aFa7c8FA4D31F86DA9cc947450 +0x96b793d04E0D068083792E4D6E7780EEE50755Fa +0xd42E21c0b98c6b7EDbE350bCeD787CE0B9644877 +0xf6Dd6A99A970d627A3F0D673cb162F0fe3D03251 +0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362 +0xd776347E2FD043Cb2903Fd6999533a07eD4D6B48 +0x03fFDf41a57Fabf55C245F9175fc8644F8381C48 +0x0ACe049e9378FfDbcFcb93AEE763d72A935038AE +0x46b7c8c6513818348beF33cc5638dDe99e5c9E74 +0xDf3e8B69943AD8278D198681175E6f93135CDDfC +0x1FA517A273cC7e4305843DD136c09c8c370814be +0x7193b82899461a6aC45B528d48d74355F54E7F56 +0xEEf102b4B5A2f714aFd7c00C94257D7379dc913E +0x5355C2B0e056d032a4F11E096c235e9a59F5E6af +0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21 +0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228 +0x97c46EeC87a51320c05291286f36689967834854 +0x76ce7A233804C5f662897bBfc469212d28D11613 +0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76 +0xC25148EB441B3cAD327E2Ff9c45f317f087dF049 +0xc99c16815c5aEa507c2D8AeB1e69eed4CC8e4E56 +0x1aA6F8B965d692c8162131F98219a6986DD10A83 +0xF96A38c599D458fDb4BB1Cd6d4f22c9851427c61 +0x51b2Adf97650A8D732380f2D04f5922D740122E3 +0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529 +0xE223138F87fA7Bf30a98F86b974937ED487de9E5 +0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e +0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C +0x21D4Df25397446300C02338f334d0D219ABcc9C3 +0xF7f1dAEc57991db325a4d24Ca72E96a2EdF3683d +0x21754dF1E545e836be345B0F56Cde2D8419a21B2 +0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9 +0xd14Cb607F99f9c5c9a47D1DEF59a02A3fBbf14Fd +0x09d8591fc4D4d483565bd0AD22ccBc8c6Dd0fF55 +0x120Be1406E6B46dDD7878EDC06069C811f608844 +0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e +0x48F8738386D62948148D0483a68D692492e53904 +0x676B0Add3De8d340201F3F58F486beFEDCD609cD +0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F +0x2817a8dFe9DCff27449C8C66Fa02e05530859B73 +0xe4E51bb8cF044FBcdd6A0bb995a389dDa15fB94e +0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A +0x9336a604077688Ae5bB9e18EbDF305d81d474817 +0xbB69c6d675Db063a543d6D8fdA4435025f93b828 +0xBC0A7F1CB55d8f6eAdde498DbFE0FF2f78149A84 +0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0 +0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7 +0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F +0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2 +0xFe1640549e9D79fE9ba298C8d165D3eD3ABFa951 +0xBaD292Dbb933Aea623a3699621901A881E22FfAC +0xcdeC732853019E9F287A9Fdf02f21cfd5eFa0436 +0xB17fC3D59de766b659644241Dba722546E32b163 +0xD0ce08617E88D87696fDB034AF7Cc66f6ae2c203 +0xb3F7DF25CB052052dF6d73d83EdBF6a2238c67de +0xf9380E9F90aDE257C8F23d53817b33FBbF975a19 +0x0EdAc71d6c67BFA7A4dDD79A75967D9c0984F1ce +0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9 +0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F +0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27 +0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5 +0xac34CF8CF7497a570C9462F16C4eceb95750dd26 +0xc76b280880686397F7b95AfC72B581b1a52e6Bad +0xf4ACCDFA928bF863D097eCF4C4bB57ad77aa0cb2 +0xed67448506A9C724E78bF42d5Cf35b4b617cE2F6 +0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c +0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8 +0xcCA04Db4bbD395DFEC2B0c1b58550C38067C9849 +0x880bba07fA004b948D22f4492808b255d853DFFe +0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2 +0xE043b38b90712bdFf29a2D930047FF9A56660b0F +0xd00eb0185dadcEcF6d75E23632eC4201d66a4CD1 +0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6 +0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C +0xf1608f6796E1b121674036691203C8ecE7516cC2 +0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f +0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c +0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F +0xDb8D484c46cE6B0bd00f38a51b299EB129928AC0 +0xd56e3E325133EFEd6B1687C88571b8a91e517ab0 +0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4 +0xDC27b4a65F214743d68BEf4ba2004D4cCD6d7F65 +0xdDd607Ee226b65Ee1292bB2d67682b86cd024930 +0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E +0x03B431AC8c662a40765dbE98a0C44DecfF22067C +0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13 +0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A +0xE87CA36bcCA4dA5Ca25D92AF1E3B5755074565d6 +0x5a57107A58A0447066C376b211059352B617c3BA +0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b +0x20627f29B05c9ecd191542677492213aA51d9A61 +0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe +0xBe9998830C38910EF83e85eB33C90DD301D5516e +0xA97661df0380FF3eB6214709A6926526E38a3f68 +0x37d515Fa5DC710C588B93eC67DE42068090e3ED8 +0x04298C47FB301571e97496c3AE0E97711325CFaA +0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50 +0xe3D73DAaE939518c3853e0E8e532ae707cC1A436 +0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b +0xecEcd4D5f22a75307B10ebDd536Fc4Fa1696B0ED +0x94cf16A6C45474B05d383d8779479C69f0c5a07A +0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d +0x2745a1f9774FF3b59cbDfC139c6f19f003392e2C +0xc1A5b1d88045be9e2F50A26D79FA54e25Dc31741 +0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933 +0xe341D029A0541f84F53de23E416BeE8132101E48 +0xE3fEBd699133491dbf704A57b805bE1D284094Dd +0xE79cCABDbF2AA68fDae8D7Fc39654A62b07e12e3 +0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b +0xc5581ef96bF2ab587306668fdd16E6ed7580c856 +0xdc95f2Ec354b814Fc253846524b13b03be739Cd6 +0xFbDaA991B6C4e66581CFB0B11B513CA735cC0128 +0x73c09f642C4252f02a7a22801b5555f4f2b7B955 +0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b +0x0F1d41cc51e97DC9d0CAd80DC681777EED3675E3 +0xF2Fb34C4323F9bf4a5c04fE277f96588dDE5316f +0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C +0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9 +0x6223dd77dd5ED000592d7A8C745D68B2599C640D +0x58e4e9D30Da309624c785069A99709b16276B196 +0x035bb6b7D76562320dFFb5ec23128ED1541823cf +0x8a9C930896e453cA3D87f1918996423A589Dd529 +0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db +0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5 +0x80915E89Ffe836216866d16Ec4F693053f205179 +0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB +0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9 +0x31b9084568783Fd9D47c733F3799567379015e6D +0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6 +0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5 +0xDBB493488991F070176367aF5c57De2B8de5aAb1 +0xDF2501f4181Cd63D41ECE0F4EDcf722eEAd58EbD +0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e +0xb319c06c96F676110AcC674a2B608ddb3117f43B +0x23b7413b721AB75FE7024E7782F9EdcE053f220C +0xDd6Ab3d27d63e7Ed502422918BBcc9D881c9F4B7 +0x375C1DC69F05Ff526498C8aCa48805EeC52861d5 +0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe +0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631 +0x9D1334De1c51a46a9289D6258b986A267b09Ac18 +0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b +0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408 +0xe8AB75921D5F00cC982bE1e8A5Cf435e137319e9 +0x29841AfFE231392BF0826B85488e411C3E5B9cC4 +0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59 +0x122de1514670141D4c22e5675010B6D65386a9F6 +0x38293902871C8ee22720A6553585F24De019c78e +0xd480B92941CBe5CeAA56fecED93CED8B76E59615 +0xE2Bf7C6c86921E404f3D2cEc649E2272A92c64fE +0x3489B1E99537432acAe2DEaDd3C289408401d893 +0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b +0x40Da1406EeB71083290e2e068926F5FC8D8e0264 +0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8 +0xD9e38D3487298f9CFB2109f83d93196be5AD7Cd3 +0xE1aac3d6e7ad06F19052768ee50ea3165ca1fe70 +0x7A1184786066077022F671957299A685b2850BD6 +0x87A774178D49C919be273f1022de2ae106E2581e +0x90777294a457DDe6F7d297F66cCf30e1aD728997 +0xe78483c03249C1D5bb9687f3A95597f0c6360b84 +0x326481a3b0C792Cc7DF1df0c8e76490B5ccd7031 +0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402 +0xeA747056c4a5d2A8398EC64425989Ebf099733E9 +0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e +0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E +0x3A529A643e5b89555712B02e911AEC6add0d3188 +0xDb22E2AC346617C2a7e20F5F0a49009F679cEED9 +0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C +0x92e8E8760aBa91467A321230EF3ba081aD3998Fb +0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB +0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4 +0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521 +0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2 +0x30beFd253Ca972800150dBA8114F7A4EF53183D9 +0x4034adD1a1A750AA19142218A177D509b7A5448F +0xa7be8b7C4819eC8edd05178673575F76974B4EaA +0xDdBee81969465Bf34C390bdbebb51693aa60872A +0xDa90d355b1bd4d01F6124fEE7669090d4cbD5778 +0x9C6f40999C82cd18f31421596Ca3b1C5C5083048 +0xAeB2914f66222Fa7Ad138e128a0575048Bc76032 +0x849eA9003Ba70e64D0de047730d47907762174C3 +0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F +0x8687c54f8A431134cDE94Ae3782cB7cba9963D12 +0x579De8E7dA10b45b43a24aC21dA8b1a3a9452D64 +0xde13B8B32A0c7C1C300Cd4151772b7Ebd605660B +0xB0827d21e58354aa7ac05adFeb60861f85562376 +0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85 +0x679AeE8b2fA079B23934A1afB2d7d48DD7244560 +0xf454a5753C12d990A79A69729d1B541a526cD7F5 +0xEa8f1607df5fd7e54BDd76a8Cb9dc4B0970089bD +0x1298751f99f2f715178Cc58fB3779C55e91C26bC +0x08e0F0DE1e81051826464043e7Ae513457B27a86 +0x2E40961fd5Abd053128D2e724a61260C30715934 +0x113560910CE2258559d7E1B38A4dD308C64d6D6a +0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234 +0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8 +0xD0846D7D06f633b2Be43766E434eDf0acE9bA909 +0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3 +0x48e9E2F211371bD2462e44Af3d2d1aA610437f82 +0x48070111032FE753d1a72198d29b1811825A264e +0x088374e1aDf3111F2b77Af3a06d1F9Af8298910b +0xB651078d1856EB206fB090fd9101f537c33589c2 +0x377f781195d494779a6CcC2AA5C9fF961C683A27 +0x4fE52118aeF6CE3916a27310019af44bbc64cc31 +0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5 +0x8d98fFF066733b1867e83D1E9563dbe2ad93d933 +0x74E096E78789F31061Fc47F6950279A55C03288c +0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2 +0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a +0xc47214a1a269F5FE7BB5ce462a2df514De60118C +0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3 +0xb3b0EFf26C982669a9BA47B31aC6b130A4721819 +0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c +0xde03A13dfeeE02912Ae07a40c09dB2f99d940b00 +0x8d4122ffE442De3574871b9648868c1C3396A0AF +0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1 +0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264 +0x96E4FD50CD0A761528626fc072Da54ADFD2F8593 +0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA +0x06849E470D08bAb98007ff0758C1215a2D750219 +0x4a52078E4706884fc899b2Df902c4D2d852BF527 +0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12 +0x18D467c40568dE5D1Ca2177f576d589c2504dE73 +0x4888c0030b743c17C89A8AF875155cf75dCfd1E1 +0x5D02957cF469342084e42F9f4132403Ea4c5fE01 +0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B +0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7 +0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3 +0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49 +0xf3dfdAf97eBda5556FCE939C4cf1CB1436138072 +0x098616F858B4876Ff3BE60BA979d0f7620B53494 +0xfb9f3c5E44f15467066bCCF47026f2E2773bd3F0 +0x93C950E36f3C155B2141f1516b7ea5B6D15eD981 +0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E +0xd9f3F28735fDa3bF7207D19b9aD36fCF2701E329 +0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674 +0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD +0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B +0x7Fe78b37A3F8168Cd60C6860d176D22b81181555 +0x86642f87887c1313f284DBEc47E79Dc06593b82e +0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8 +0x925a3A49f8F831879ee7A848524cEfb558921874 +0x77f2cC48fD7dD11211A64650938a0B4004eBe72b +0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b +0x6974611c9e1437D74c07b5F031779Fb88f19923E +0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06 +0xd26Cc622697e8f6E580645094d62742EEc9bd4fc +0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0 +0xe182F132B7aB8639c3B2faEBa87f4c952B4b2319 +0xEF57259351dfD3BcE1a215C4688Cc67e6DCb258B +0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672 +0x39167e20B785B46EBd856CC86DDc615FeFa51E76 +0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf +0xEfe609f34A17C919118C086F81d61ecA579AB2E7 +0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d +0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E +0xE7cB38c67b4c07FfEA582bCa127fa5B4FFC568Fc +0x9980234b18408E07C0F74aCE3dF940B02DD4095c +0xf730c862ADFE955Be6a7612E092C123Ba89F50c6 +0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4 +0x87104977d80256B00465d3411c6D93A63818723c +0xa714B49Ff1Bae62E141e6a05bb10356069C31518 +0x214e02A853dCAd01B2ab341e7827a656655A1B81 +0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869 +0x4e6DA2D137281CaDa5E82372849CbA8D65fC88C7 +0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1 +0x23cAea94eB856767cf71a30824d72Ed5B93aA365 +0x358B8a97658648Bcf81103b397D571A2FED677eE +0x47C2f43D7fE9604c0f9cd4F6D209648a4E8e0209 +0x9558d273A81CF0b41931C78B502c4CB2Bd3deb42 +0x8ED057F90b2442813136066C8D1F1C54A64f6bFa +0x60A188efbC22bBC3aaB17084e2a0A26F85A640bC +0x4E7837928eD3E7AccF715da1aE86c0A0f5280DC0 +0x43b43aA7Ea873e8d7650f64ca24BeC007D6CD920 +0x1d18B7E78a9a92a9DF8a1e3546b4B1fB825e012A +0x9d5b2a8Ad23E7d870CFa7c7B88A74C64FA098b46 +0x78A0A1F1E055c4ceeBb658AdF0c4954ae925e944 +0x34d81294A7cf6F794F660e02B468449B31cA45fb +0x5A32038d9a3e6b7CffC28229bB214776bf50CE50 +0x72e864CF239cD6ce0116b78F9e1299A5948beD9A +0x24367F22624f739D7F8AB2976012FbDaB8dd33f4 +0xD8f6877aec57C3d70F458C54a1382dDc90522E7D +0xbF133C1763c0751494CE440300fCd6b8c4e80D83 +0xA5124bD6d445e23642F8D41c1ebf3Cd20FCe3056 +0x2BEe2D53261B16892733B448351a8Fd8c0f743e7 +0x1B91e045e59c18AeFb02A29b38bCCD46323632EF diff --git a/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt b/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt new file mode 100644 index 00000000..030fc27f --- /dev/null +++ b/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt @@ -0,0 +1,2430 @@ +0x00975ae9c986df066c7bbDA496103B4cC44B26c3 +0x008D63fab8179Ee0aE2082Bb57C72ED0c61f990f +0x006b4b47C7F404335c87E85355e217305F97E789 +0x00C459905bC314E03Af933020dea4644BE06aaD9 +0x008829aCd7Ec452Fc50989aA9BFa5d196Baae20a +0x0063886D458CC0790a170dEBA645A0bcCC7f44D9 +0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97 +0x001f43cd9E84d90E1ee9DB192724ceF073D3FB2e +0x002505eefcBd852a148f03cA3451811032A72f96 +0x00427C81629Cd592Aa068B0290425261cbB8Eba2 +0x00aaEa7B4dC89E4a4fACDa32da496ba5D8E1216d +0x01C7145c01d06a026D3dDA4700b727fE62677628 +0x01914D6E47657d6A7893F84Fc84660dc5aec08b6 +0x0259D65954DfbD0735E094C9CdACC256e5A29dD4 +0x01e82e6c90fa599067E1F59323064055F5007A26 +0x02A527084F5E73AF7781846762c8753aCD096461 +0x0301871FeDc523AB336535Ed14B939A956c4c39F +0x02009370Ff755704E9acbD96042C1ab832D6067e +0x028afa72DADB6311107c382cF87504F37F11D482 +0x02df7e960FFda6Db4030003D1784A7639947d200 +0x02FE27e7000C7B31E25E08dC3cDFdE5F39d659c5 +0x02bfbb25bf8396910378bF3b3ce82C0CE6d5E61d +0x0255b20571acc2e1708ADE387b692360537F9e89 +0x029D058CFdBE37eb93949e4143c516557B89EB3c +0x0127F5b0e559D1C8C054d83f8F187CDFDc80B608 +0x03768446C681761669Ab6DC721762Aa065c81f26 +0x031B8ece36b2C1f14C870421A1989AEbe3d7bcFa +0x0399ecFbb2a9D0D520738b3179FA685cD5c6D692 +0x03F52a039d9665C19a771204493B53B81C9405aF +0x04Dc1bDcb450Ea6734F5001B9CeCb0Cd09690f4f +0x0519064e3216cf6d6643Cc65dB1C39C20ABE50e0 +0x04F095a8B608527B336DcfE5cC8A5Ac253007Dec +0x0440bDd684444f1433f3d1E0208656abF9993C52 +0x051f77131b0ea6d149608021E06c7206317782CC +0x04776ef6C70C281E13deDaf50AA8bbA75fbecA31 +0x052E8fABDCE1dB054590664944B16e1df4B57898 +0x055C419F4841f6A3153E64a4E174a242A4fFA6f0 +0x05cD14412ccd74F05379199181aA1847ed4802fd +0x0562695929503E930DE265F944B899dEBF93Df7c +0x05Dc8E95a479dDA8C8Fc5a27Eb825f5042048937 +0x056590F16D5b314a132BbCFb1283fEc5D5C6E670 +0x0625fAaD99bCD3d22C91aB317079F6616e81e3c0 +0x06319B2e91A7C559105eE81fF599FaFFEDbAd000 +0x066E9372fF4D618ba8f9b1E366463A18DD711e5E +0x0686002661e6a2A1E86b8Cb897C2eC226060481b +0x0679bE304b60cd6ff0c254a16Ceef02Cb19ca1B8 +0x0692Ee6b5c88870DA8105aFEAA834A20091a29Ff +0x0694356524F17a18A0Ac3e1d8e767eeEBd8A4ad9 +0x077165031d8d46B52368A8C92E8333437fb60EF8 +0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122 +0x069e85D4F1010DD961897dC8C095FBB5FF297434 +0x07806c232D6F669Eb9cD33FD2834869aa14EE4F4 +0x07A75Ba044cDAaa624aAbAD27CB95C42510AF4B5 +0x084D73726d2824478dF09bE72EcAB4177F7F1bd7 +0x072Fa8a20fA621665B94745A8075073ceAdFE1DC +0x0872FcfE9C10993c0e55bb0d0c61c327933D6549 +0x0933F554312C7bcB86dF896c46A44AC2381383D1 +0x095B9C41921415636F91F9B5754786Ed6CA6f1d4 +0x08fD119453cD459F7E9e4232AD9816266863BFb1 +0x0968d6491823b97446220081C511328d8d9Fb61D +0x0ab72D3f6eddF0e382f5CF4098fFAb85EA961077 +0x0898512055826732026aC02242E7D7B66fccC2B0 +0x09Bc3c127ED4c491880c2A250d6d034696cb5fC1 +0x0988D84619708DCe4a9298939e5449d528Dc800B +0x093037BA3A1e350f549F0Ff8Ff17C86B1FfA2B4b +0x0b248c6A152F35A4678dF45Baf5958Ce8A8CaCCc +0x083aA7FF9AE00099471902178bf2fda4e6aC14Bf +0x0959BE05E1C3aDC6Ee20D6fA1252Bb0906A94743 +0x09Ad186D43615aa3131c6064538aF6E0A643Ce12 +0x0B54B916E90b8f28ad21dA40638E0724132C9c93 +0x0b8e605A7446801ae645e57de5AAbbc251cD1e3c +0x0baBD9Eba4c7C739Edd2dBCd6de0b7C483068948 +0x0b8fc89A38698B9BB52C544a1dBCc85ADfcA4153 +0x0Bbe643D5d9DD0498d0C9546F728504A4aAb78f4 +0x0Bb53dE33DF0F8BA40E0E06Be85998f506c4C7bc +0x0Bc7F48e752407108C0A164928DF7c65Aa4de31f +0x0bFD9FC73C82bE0558f3A651F10a8BD8c784F45E +0x0C040E41b5b17374b060872295cBE10Ec8954550 +0x0d0bD6469BE80d57893cf1B21434936dfAA35319 +0x0d07708d0E155865D9baEe9963E16ddd46F5dECF +0x0ccBCaA60D8b59bDf751B70Ee623d58c609170ac +0x0be9A9100A95075270e47De519D53c5fc8F7C936 +0x0d3fc68CA620bCFac48F18d75C6B6a8b0ffb8Fbb +0x0d5d11732391E14E2084596F0F521d4d363164B6 +0x0D935eaA0EaFcFe11f111638FEe358651456D29C +0x0d7E219D07ddE19fc3dfA9Ede55528b725231Ee5 +0x0d94B6e4c2Aa9383964986020B3534D34885f700 +0x0cb556AebE39b3c9EF5CBe8b668E925DB10a2D7D +0x0df3e4945E0Fa652D0FFEBc1bce58D1a14d9f9e0 +0x0DBFe040866BBF36f0231b589d26020bBAb923D2 +0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781 +0x0DE299534957329688a735d03961dBd848A5f87f +0x0E488e4a23cD8C67362AA716b5A2D45a9Cf65815 +0x0e40Cf5c020ADa54351699a004fAEbE5e709a3A2 +0x0e109847630A42fc85E1D47040ACAd1803078DCc +0x0e72774AE3ceE5a127Df723b1DE4F5C49cA17917 +0x0f26F792fB89daF87A10a40f57eD1a0093b74Ad7 +0x0F101CcDd4673316933339C8fba5Fc3b262cf4Cb +0x0E9a7280741E9B018beb5Fe409e6e21689F3B8EF +0x0f35218B2005F24a617996B691E71BCB433a329D +0x0F3A1E840F030617B7496194dC96Bf9BE1e54D59 +0x0eF8249cDF160C30d9ad1C46aa845Fd097EF498c +0x0f76727c4BBe50179AFc3b0cd7Db3aed761AD0bd +0x0F7aFAa9DAC8F9ada59a25fa02AA6Ab32E56b145 +0x0F7Ce9bd352145D50Dd197A43471752c7EcA6aF3 +0x1085057e6d9AD66e73D3cC788079155660264152 +0x0f951699Eb95204107a105890Ac9Af6C587C260D +0x0f5F4b5b7ca352cf4F5f2fc1Ac8A9889DECc4fCB +0x0fC213B53e1182796603F7dEc12A5A01bd09ff35 +0x0FBF5E9C8D7cB0AeDd6F02Df0018178099c7d76A +0x1083D7254E01beCd64C3230612BF20E14010d646 +0x10527A1232287Ad8c408848A56b7D0471BB23daB +0x11788dc374A39896CA7Ec0961110f997bd1BE201 +0x10Ec8540E82f4e0bEE54d8c8B72e00609b6CaB38 +0x10e03eB5950bEA08bb882e3FF01286665f209F97 +0x116E7Dbd690D6624FEeF080b9e8EbD6f967Fe315 +0x10bf1Dcb5ab7860baB1C3320163C6dddf8DCC0e4 +0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043 +0x11d67Fa925877813B744aBC0917900c2b1D6Eb81 +0x11D86e9F9C2a1cF597b974E50C660316c92215AA +0x1193C9F3E10DEFBd5cF956575aAF5aBEAcC1b068 +0x1223fB83511D643CD2f1e6257f8B77Fe282e8699 +0x1202fBA35cc425c07202BAA4b17fA9a37D2dBeBb +0x12263becBe8E1b30B5538b7E2626e47bDbB2585e +0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333 +0x1233B9569C0edf209826Bee9aa7B5d5DD202b36f +0x12627902E45c6424d51C770f41e1900563528B44 +0x12985a83081288BecABf59F76e5549dBE39Af4d6 +0x127c224bF830b74B823dc3e360A9aFf22A517E00 +0x12481a91479a750dE5Fd6Ded5741Fc87671E30Af +0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186 +0x12b1c89124aF9B720C1e3E8e31492d66662bf040 +0x12b9eeBf7960fB75B4e3A77af97C8A4f5f6cce34 +0x1397c24478cBe0a54572ADec2A333f87Ad75Ac02 +0x12f1412fECBf2767D10031f01D772d618594Ea28 +0x1384b4515544e520956e4FA7F5A10C7fb0AC3729 +0x13b1ddb38c80327257Bdcb0e321c834401399967 +0x132b0065386A4B750160573f618F3F657A8a370f +0x12e8123822485229EfaA08Cd244e27E533eb1F4B +0x13b841dBF99456fB55Ac0A7269D9cfBC0ceD7b42 +0x12Ed7C9007Cf0CB79b37E33D0244aD90c2a65C0B +0x13b07BE0C25E54309412870456db923e8970b724 +0x13e551F9B35332e07EEC5F112C5D89d348be37A9 +0x14019DBae34219EFC2305b0C1dB260Fce8520DbF +0x149FfF31BA5992F473DF72404D6fA60F782C3d2C +0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b +0x144E8fe2e2052b7b6556790a06f001B56Ba033b3 +0x142Ae08b246845cec2386b5eACb2D3e98a1E04E3 +0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573 +0x1416C1FEd9c635ae1673118131c0880fCf71e3f3 +0x141B5A59B40EFCFE77D411cAd4812813F44A7254 +0x14F78BdCcCD12c4f963bd0457212B3517f974b2b +0x1544E8C4736b47722E0AF9d44A099f14A96aAC84 +0x1584B668643617D18321a0BEc6EF3786F4b8Eb7B +0x164d71EE20a76d5ED08A072E3d368346F72640a9 +0x15884aBb6c5a8908294f25eDf22B723bAB36934F +0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3 +0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21 +0x15e83602FDE900DdDdafC07bB67E18F64437b21e +0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF +0x15e6e23b97D513ac117807bb88366f00fE6d6e17 +0x165b3C18eAb1D24F8bA1E25027698932482B67Ee +0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF +0x1525797dc406CcaCC8C044beCA3611882d5Bbd53 +0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE +0x168c6aC0268a29c3C0645917a4510ccd73F4D923 +0x16942d62E8ad78A9026E41Fab484C265FC90b228 +0x169E35b1c6784E7e846bcE0b6D018514f934B87D +0x182D4B08462CD5B79080d77C2B149F04d330D24b +0x16af50FC999032b3Bc32B6bC1abe138B924b1B0C +0x17FEE60B80356EAE404bC0d8DaA3debeE217741c +0x17757B0252c84341E243Ff49EEf8729eFa32f5De +0x16cfA7ca52268cFC6D701b0d47F86bFC152694F3 +0x183be3011809A2D41198e528d2b20Cc91b4C9665 +0x177f44eCDEa293f7124C3071D9C54E59fcfD16f9 +0x1867608e55A862e96e468B51dc6983BCA8688f3D +0x17643ca0570f8f7a04FFf22CEa6a433531e465aE +0x184CbD89E91039E6B1EF94753B3fD41c55e40888 +0x168cBd46d6D12da3C3FF2FAB191De5be4675bBB1 +0x16785ca8422Cb4008CB9792fcD756ADbEe42878E +0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b +0x18E03c62D0B46d50da7C5EC819Da57c0106Dc8DF +0x18AE0d58f978054E55181be633d4a6e1239aA456 +0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD +0x1907e1ab7791bB0c7A2b201b38e33da99d15285e +0x1a368885B299D51E477c2737E0330aB35529154a +0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b +0x19A4FE7D0C76490ccA77b45580846CDB38B9A406 +0x19831b174e9deAbF9E4B355AadFD157F09E2af1F +0x191C3a109770100b439124c35990103584a62f1d +0x19Dde5f247155293FB8c905d4A400021C12fb6F0 +0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d +0x1A96Db12AD7f0c9f91C538d16c39C360b5E8Fb21 +0x1A81dB156AFd3Cd93545b823fD2Ac6DCDf3B0725 +0x1aa7101F755Bd1c76B4e648a835054A7f652Dfd2 +0x1AAE1ADe46D699C0B71976Cb486546B2685b219C +0x1bb9b8dB251BAbF5e6bB7AA7795E4814C0b72471 +0x1aE02022a49b122a21bEBE24A1B1845113C37931 +0x1c4203Db716a122AFF5120203268113E8B471F0E +0x1aD66517368179738f521AF62E1acFe8816c22a4 +0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b +0x1b11CbCb7AB40A6ffeaA80aEeD13b6A99e2c2254 +0x1ba5C10C52c3Ab0A4a33c4D8D2a5AFD9f93147Ed +0x1B15ED3612CD3077ba4437a1e2B924C33d4de0F9 +0x1b17E6045234237f86c9acDeA0b637a561DeFf2E +0x1c10eD2ffe6b4228005EbAe5Aa1a9c790D275A52 +0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7 +0x1b32F18DF6539E64EC419BbE5E388E951E27feb3 +0x1C4E440e9f9069427d11bB1bD73e57458eeA9577 +0x1c6eDd90CAC0De22D8819c03Ae953D8B57f18Fd8 +0x1cac725Ed2e08F09F77c601D5D92d12d906C4003 +0x1D4D853870734161BCb46dAb0012739C21693d98 +0x1d264de8264a506Ed0E88E5E092131915913Ed17 +0x1D2667798581D8D3F93153DA8BA5E2E0330841f7 +0x1D0a4fee04892d90E2b8a4C1836598b081bB949f +0x1Dc2Dc7110F8ee61650864ad6680fE8144b7d6F9 +0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7 +0x1eB2Cc7208a2077DdF91beE9C944919bacCfccF9 +0x1E544b6d506Bb1843877aD6a9c95C2Bbc964d962 +0x1D7603B4173D52188b37f493107870bC9b4Ce746 +0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd +0x1e8eBAA6D9BF90ca2800F97C95aFEDd6A64C91e2 +0x1Eff71EE5463F7DD88a36A5674021f1E94F5166c +0x1f3236F64Cb6878F164e3A281c2a9393e19A6D00 +0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974 +0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8 +0x1F906aB7Bd49059d29cac759Bc84f9008dBF4112 +0x1faD27B543326E66185b7D1519C4E3d234D54A9C +0x1fC84Da8c1DFD00a7F6D0970ed779cEc0BBf9CA4 +0x20798Fd64a342d1EE640348E42C14181fDC842d8 +0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e +0x1Fc68EfbC126034D135c6a53cB991ff7e122B3D9 +0x21145738198e34A7aF32866913855ce1968006Ef +0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb +0x21501408B9E1359C1664b0A2e9F78492512ff605 +0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B +0x2032d6Fa962f05b05a648d0492936DCf879b0646 +0x21710d040ba8fcd9F34Fbd74461e746824B8BA1C +0x215B5b41E224fc24170dE2b20A3e0F619af96A71 +0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa +0x21Ad548e5dE92C656af636810110dd44CC617184 +0x21d50a8ec564E5EB96CC979b33bC5638D91e6F0D +0x22B725c15c35A299b6e9Aa3b2060416EA2b2030c +0x21DC07AFeeCF13394067E31eE32059a026449C41 +0x2251A7db3B3159422cED07e3bA65494D78A66A22 +0x22aA1F4173b826451763EbfCE22cf54A0603163c +0x226cb5b4F8Aae44Fbc4374a2be35B3070403e9da +0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D +0x22Ba9F0902fE08bd3b6d0c1e32991B4f1387b6D9 +0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A +0x223D168d318E0598d365aA1aAc78Dfa2eCA16dcf +0x2299BAFf6CCAA8b172e324Bcd5CDb756e7065C59 +0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1 +0x225C3D9CDC1F3c9EC7902216D3d315c9428AE025 +0x22f5413C075Ccd56D575A54763831C4c27A37Bdb +0x234831d4CFF3B7027E0424e23F019657005635e1 +0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2 +0x2329d6d67Dc1D4dA1858e2fe839C20E7f5456081 +0x23807719299c9bA3C6d60d4097146259c7A16da3 +0x239EeC9EC218f71cEf5CC14D88b142ed4fF44110 +0x23b93e03e7E54b1daA9A5A7139158E7779D9f753 +0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6 +0x241b2Fb0b7517c784Dd0c3e20a1f655985CFaa07 +0x2489ac126934D4d6a94Df08743Da7b7691e9798E +0x24294915f8b5831D710D40c277916eDC0fa0eC39 +0x24d72b67D6C7642fDf7Df71D9b54078A17d2b465 +0x25585171FC8dA74A6eD73943ADE4e32DE7e6C8Aa +0x250997F21bbcA2fc3d4F42f23d190C0f9c4cBFDd +0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2 +0x25d5Eb0603f36c47A53529b6A745A0805467B21F +0x2612C1bc597799dc2A468D6537720B245f956A22 +0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6 +0x26092F98B23D6CDdaB91ca1088fEdA19AA485dE3 +0x25CFB95e1D64e271c1EdACc12B4C9032E2824905 +0x263bFD6746489929B2F08d728FFC33D697538a92 +0x26acaa8Fa20c86875149d70Df29B01fd1061E0bb +0x2686e2ceE8DFEE5cf15e70f3f8d73d3410654d46 +0x26bdf362ab1C746665a10DdF6b3bAb7c2D8bC62f +0x272fB300717A9F7e0215AfE22595af5cBfA58591 +0x270990d832C7E0145e62e5BdF7fCE719F504D48D +0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9 +0x26e33588826E867A8A5d0c0cc203a483fF6f1354 +0x277FC128D042B081F3EE99881802538E05af8c43 +0x274C44d5aEcA4744eB6eF42Fede80cbee3cf2Ec5 +0x284A2d22620974fb416D866c18a1f3c848E7b7Bc +0x27E2826765085aaA5dB2837f56222Cf4Bb08A3C6 +0x28570D9d66627e0733dFE4FCa79B8fD5b8128636 +0x2800B279e11e268d9D74AF01C551A9c52Eab1Be3 +0x2894457502751d0F92ed1e740e2c8935F879E8AE +0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2 +0x28a23f0679D435fA70D41A5A9F782F04134cd0D4 +0x28eD88c5F72C4e6DfC704f4CC71a4B7756BC4DbC +0x28A40076496E02a9A527D7323175b15050b6C67c +0x28Fb01603CbA8A3826FB73587d62821258d7Aa72 +0x2908A0379cBaFe2E8e523F735717447579Fc3c37 +0x290420874BF65691b98B67D042c06bBC31f85f11 +0x28c095d163107c5e9Ca83b932Ea14863B224D2B3 +0x28Ee765BCA9A5EA745C4D18A12D6ff975BC98298 +0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3 +0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17 +0x297751960DAD09c6d38b73538C1cce45457d796d +0x29D708E97282054E698AF0Da3133D5711BA3C592 +0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE +0x2972bf9B54aC5100d747150Dfd684899c0aBEc5E +0x29Bf6652e795C360f7605be0FcD8b8e4F29a52d4 +0x2a07272aF1327699F36F06835A2410f4367e7a5C +0x2A1A1D4E4257DbbA1136992577FF1b5EfDa1bB34 +0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20 +0x2a213ee8125B9Bd6e8f5E1e199aD2B10744B384f +0x2A5c5E614AC54969790c8e383487289CBAA0aF82 +0x2A23D58Ea4b5cC2e01ef53ea5dE51447C2528F16 +0x2a40AAf3e076187B67CcCE82E20da5Ce27Caa2A7 +0x2A8e0ebDA46A075D77d197D21292e38D37a20AB3 +0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a +0x2A8eAc696c57a38aC79ae6168e8310306B4D7E9c +0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F +0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65 +0x2b5233fa7753870A588DCCA95E876f4C29470889 +0x2Be2273452ce4C80c0f9e9180D3f0d6eEDfa7923 +0x2B83aC024B0a4Ba3f93776Cacb61D98310614aFE +0x2bF046A052942B53Ca6746de4D3295d8f10d4562 +0x2bE9518cc2a9fc2aA15b78b92D96E0727a07DF7C +0x2BFB526403f27751d2333a866b1De0ac8D1b58e8 +0x2Bf9b1B8cc4e6864660708498FB004E594eFC0b8 +0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb +0x2ca40f25ABFc9F860f8b1e8EdB689CA0645948Eb +0x2d5C566Dc54cA20028609839F88163Fd7CAD5Ea1 +0x2d9796333D7A9007FAa67006437b4c16EF8276E6 +0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE +0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0 +0x2e676e0f071376e12eD9e12a031D01B9B87F5878 +0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872 +0x2e5E27c085F20ac1970cA32d25966D255Ab196d0 +0x2DF6A706Ee101556D68d7e52CE4d066Fb4C9B16e +0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8 +0x2e7435AC62AF083f5602b645602770F5328018d1 +0x2e6EE7d373C6f98a1Ca995F3A4f5d43FedEeAD11 +0x2F0441f249BDb0146223a2e3b60c146badd667A4 +0x2f0087909A6f638755689d88141F3466F582007d +0x2E9af3a1f42435354846Bff3681771b5E3551121 +0x2EaacAf1468F248483Cec65254dff98FF95e3387 +0x2EC92468f73fEc122bb5d3f9c3C2e17Cfa3467Da +0x2F3139A9903728e9a971330Ae7CB19662A0Ce143 +0x2f48D91F26f4DE798E6e5883163FeF0a2E30D595 +0x2e95A39eF19c5620887C0d9822916c0406E4E75e +0x2f4A81fDF6d61EbAb81073826915F1426896bD37 +0x2f65904D227C3D7e4BbBB7EA10CFc36CD2522405 +0x2f62960f4da8f18ff4875d6F0365d7Dbc3900B8C +0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb +0x30D3174Ce04F1E48c18B1299926029568Cf4E1D6 +0x31188536865De4593040fAfC4e175E190518e4Ef +0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26 +0x305b0eCf72634825f7231058444c65D885E1f327 +0x30709180d8747E5BC0bD6E1BFf51baEdAB31328D +0x30A1fbFc214D2Af0A68f6652A1d18a1b71Dfa9eA +0x3116a992bA59A1f818f69fC9C80B519C2Bb915B5 +0x305C5E928370941BE39b76DeB770d9Be299A5fF3 +0x3120a7c463f7993E85Ac2a40AA7B2c8A0A9acd54 +0x317178D5d21a6eB723C957f986A8c069Da2Ee215 +0x319c9DE67C2684Cfc932C54cDD4B4100d90c8d04 +0x31ca06f88438Decf247dd25695D53CBE2ac539f4 +0x31DEae0DDc9f0D0207D13fc56927f067F493d324 +0x32ddCe808c77E45411CE3Bb28404499942db02a7 +0x3213977900A71e183818472e795c76aF8cbC3a3E +0x32fa6F9861d9F4912670A2d326B1356Fbed2dA04 +0x31a9033E2C7231F2B3961aB8A275C69C182610b0 +0x32C7006B7E287eBb972194B40135e0D15870Ab5E +0x32a59b87352e980dD6aB1bAF462696D28e63525D +0x330B24C43F212eD31591914ec2bd9F6e64fF912e +0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e +0x33314cF610C14460d3c184a55363f51d609aa076 +0x333ad4bd869b12Fb3B1C883Cf2F1C89b685E018c +0x334bdeAA1A66E199CE2067A205506Bf72de14593 +0x339dD90e14Ec35D2F74Ffea7495c2FB0150AF2Ba +0x3483A0282281768E2883c443989194259CBA7EAF +0x335750d1A6148329c3e2bcd18671cd594D383F9b +0x347CC205EC065660F392Fc3765822eEb76FeBf90 +0x334f12F269213371fb59b328BB6e182C875e04B2 +0x344F8339533E1F5070fb1d37F1d2726D9FDAf327 +0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2 +0x343EE80f82440A498E48Ae186e066809750A055B +0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad +0x348788ae232F4e5F009d2e0481402Ce7e0d36E30 +0x33B357B809c216cA9815ff340088C11b510e3434 +0x34DdFe208f02c3fC0a49fada184562e7Eb1a4206 +0x34e642520F4487D7D0229c07f2EDe107966D385E +0x350B75652059725c6E01F16198Da61BBeC33eD5f +0x35044Cc44d0a2E627a6a3a0222172B0cE663b00c +0x350EBDD5C2Ba29e7E14dD603dd36ea0e0d007F5F +0x34a649fde43cE36882091A010aAe2805A9FcFf0d +0x353667248112af748E3565a41eF101Daf57aE02a +0x357c242c8c2A3f8DCC3eB3b5e4c54f52a2F3c480 +0x35F105E802DA60D3312e5a89F51453A0c46B9Dad +0x35B6870f0BBc8D7D846B7e21D9D99Eb9CE042929 +0x3635364e89EF6e842DD16a4028Df0A7124CA7A4A +0x362C51b56D3c8f79aecf367ff301d1aFd42EDCEA +0x351A9C83756bB46D912c89ec1072C02ab7795Ac2 +0x362FFA9F404A14F4E805A39D4985042932D42aFe +0x368D80b383a401a231674B168E101706389656cB +0x3640a9ba0A6EF5738f0b41b87EAE75B8928F8917 +0x369582706e408F497D7132d9446983722B67A399 +0x3694e90893D3de8d9C1AcC9D0e87Eb9BD0d041Ff +0x369D092150201b0DaB4ee942eb3F3972E4d73b67 +0x36Af78764eeB195Db2E8a7b63A49BB58aA67F247 +0x36B9aB68D5999F060fE8db71e35c8b5201313178 +0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B +0x36A38cCA26aD880980d920585690Ec67422B40B2 +0x36C3094E86CB89e33a74F7e4c10659dd9366538C +0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc +0x3704e6Ce76944849Bc913a4bE9aCA42C1A91c774 +0x3726F06d85fC77f13D352f86b4Da6f356f7BDaF6 +0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F +0x372c757349a5A81d8CF805f4d9cc88e8778228e6 +0x37D372339FfF4A46Dc0f000a6062E21192dC227C +0x37435b30f92749e3083597E834d9c1D549e2494B +0x37Dd96f96c2aCDa38Fb9daC8aAB4e57E2356555E +0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C +0x3804e244b0687A41619CdA590dA47ED0f9772C8B +0x37EdCDe4Ba9b3A2A82AE6bC439c163a067BB2003 +0x37f8E3b0Dfc2A980Ec9CD2C233a054eAa99E9d8A +0x3800645f556ee583E20D6491c3a60E9c32744376 +0x380E5b655d459A0cFa6fa2DFBbE586bf40DcFd7F +0x3841D90d38D0cD3846d00b37fAF0583504b93475 +0x3849a135D541232af220Bb839Ee1cE7e2165ed7D +0x385B0F514eB52f37B25c01eEb1f777513C839d46 +0x385f68B55cf0d9c8f00D60F0452BF9b2622D2C83 +0x387dfB7Fca2606AcaacD769Fb59803F6539C8269 +0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608 +0x396f03e88F0bD5A69c88c70895440B36579d86fA +0x394c357DB3177E33Bde63F259F0EB2c04A46827c +0x394fEAe00CdF5eCB59728421DD7052b7654833A3 +0x399abd36B9c7CeF008F75d8805eE5Fdf05D41773 +0x388Bb4D6B0C8e09AFaaF84cDae8123778fadf28c +0x38AE800E603F61a43f3B02f5E429b44E32e01D84 +0x397eADFF98b18a0E8c1c1866b9e83aE887bAc1f1 +0x3aB1a190713Efdc091450aF618B8c1398281373E +0x3A048707c0E5064bAa275d9A4C4015e4E481f10d +0x3a7268413227Aed893057a8eB21299b36ec3477e +0x39BBb0F8D1C9F71051478Df51E0243aA16F4cB41 +0x3A6E274ac986579E0322227e9E560aDB192c0093 +0x3A628c8Ff76fEDDCB377B94a794A4d9fA785E1a4 +0x3b13c2d95De500b90Cbef9c285a517B1E8bBdcEC +0x3B24Dde8eF6B02438490117985D9Cfa2EdCcf746 +0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd +0x3b55DF245d5350c4024Acc36259B3061d42140D2 +0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7 +0x3bf5FFF3Db120385AEefa86Ba00A27314a685d33 +0x3C087171AEBC50BE76A7C47cBB296928C32f5788 +0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133 +0x3C2e7c9DD56225d3CC40fB863f9922fC73c399ae +0x3c5a438a2c19D024a3E53c27d45FAfAC9A45B4f7 +0x3C4bf99EBd50cF2C116d95Fc4F9c258b2d1F03E5 +0x3C43674dfa916d791614827a50353fe65227B7f3 +0x3C4d21243F55f0Ee12F9ddDe1296d08529503311 +0x3C7560edEeE5B60e4a6c7abEbaa971065B2242b4 +0x3cC431852CA2d16f6D8Cc333Ab323b748eb798eb +0x3c5Aac016EF2F178e8699D6208796A2D67557fe2 +0x3C58492Ad9cAd0D9f8570a80b6A1f02C0C1dA2c5 +0x3CBC3bEd185B837D79Ba18d36A3859EcbcFC3Dc8 +0x3CC6Cc687870C972127E073E05b956A1eE270164 +0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B +0x3d134073481122BCb063a55d90ba505E5A3f8F39 +0x3CdF26e741B7298d7edc17b919FEB55fA7bc0311 +0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06 +0x3Cdf2F8681b778E97D538DBa517bd614f2108647 +0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b +0x3D156580d650cceDBA0157B1Fc13BB35e7a48542 +0x3dD413Fd4D03b1d8fD2C9Ed34553F7DeC3B26F5C +0x3e39961724f59b561269D88B03019C58c135Db57 +0x3E26a32a90386E997C6AaD241aD231e78EeC08a1 +0x3dc9c874fa91AB41DfA7A6b80aa02676E931aa9F +0x3Df83869B8367602E762FC42Baae3E81aA1f2a20 +0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803 +0x3e2EfD7D46a1260b927f179bC9275f2377b00634 +0x3E0fdEAB81bE617892472c457C3f69b846Fbf4C5 +0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB +0x3e5Dc186E27C09f873aD4435903d92aD97e65B91 +0x3efdF7eB16a08c1FeDe60311244D8d0d2D223DB6 +0x3eb58BD63cB7f0FC0442180B79D5B8E6d4FAd088 +0x3E93205c610B326A8698f42A5384c8766f3Aa968 +0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c +0x3e763998E3c70B15347D68dC93a9CA021385675d +0x3F6BaBbF1a9DFB3039Dc932986D4A9658234fe21 +0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0 +0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2 +0x400cb5ce0A005273c8De074a92ec3e1155229E2F +0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed +0x3f9AE813aDD9A52268b2c7E3F72484FdA8735173 +0x3f9d48594FB58700cd6bF82BD010e25f61C7d8C9 +0x400609FDd8FD4882B503a55aeb59c24a39d66555 +0x404aEeEACEDCF91bEE26f40470623a473cCFA040 +0x4062Ec809b341660262CE22dAB11E4Bc5cECd622 +0x40C5A7b9dAD9463CCf0cbaFEa05CEdA768962947 +0x4141f83314d623bADD56C062E8081ce0b3090e7a +0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb +0x40E652fE0EC7329DC80282a6dB8f03253046eFde +0x414564fB3654FcAbCa2e4A86936F03ac9B80aB64 +0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8 +0x4180c6aFeEd0290E87cE848FC48451027798958C +0x41CC24B4E568715f33fE803a6C3419708205304d +0x41e2965406330A130e61B39d867c91fa86aA3bB8 +0x41EfF4e547090fBD310099Fe13d18069C65dfe61 +0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B +0x42227B857Eca8114f724d870A8906b660ADED095 +0x4219656f75b02188581fBf7d86dcAbB5EbB513A3 +0x42c28A2a06bcc8F647d49797d988732c2C613Ab1 +0x428a10825e3529D95dF8C5b841694318Ca95446f +0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7 +0x4179FB53E818c228803cF30d88Bc0597189F141C +0x42C298794F24211d52Fa1A1B43031911b0B072c1 +0x4254e393674B85688414a2baB8C064FF96a408F1 +0x431e52E4993C4b7B23f587Cf96bc2Fe510037bE4 +0x4324177c067e3a768c405f512473bcc137c2dCB8 +0x4307011e9Bad016F70aA90A23983F9428952f2A2 +0x43484020eE4b06022aD57CbF8932f5C8aafc9D59 +0x4330C25C858040aDbda9e05744Fa3ADF9A35664F +0x43599673CBC37E6f0813Df8480Fe7BB34c50f662 +0x434252f52cE25DA0e64f0C38EBC65258AABB2844 +0x433b1b3bc573FcD6fDDDCf9A72CE377dB7A38bb5 +0x433f0763D76FE032874d670f29F6948db3A64AE3 +0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7 +0x43D5472835f5F24dF67eC0f94f1369527e5c8B79 +0x433453d337Db0a3E9D8c2DF88e4a90d75328B0a4 +0x4384f7916e165F0d24Ab3935965492229dfd50ea +0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e +0x43b79f1E529330F1568e8741F1C04107db25EB28 +0x44043c1E33C76B34C67d09a2fb964C0EEfBaE6B7 +0x442540b161C02edecdCe6F871D94155e61f5dA80 +0x4432e64624F4c64633466655de3D5132ad407343 +0x443eb1f18CF8fD345DF376078C72e00B27e3F6a3 +0x4438767155537c3eD7696aeea2C758f9cF1DA82d +0x44D812A7751AAeE2D517255794DAA3e3fc8117C2 +0x4462c633676323D07a54b6f87CDD7d65f703Bc76 +0x4626751B194018B6848797EA3eA40a9252eE86EE +0x4465c4474703BB199c6ed15C97b6E32BD211Cf9d +0x45577FfEc3C72075AF3E655Ea474E5c1585d9d14 +0x44EE78D43529823D96Bf1435Fb00b9064522bD36 +0x44E836EbFEF431e57442037b819B23fd29bc3B69 +0x44db0002349036164dD46A04327201Eb7698A53e +0x448a549593020696455D9b5e25e0b0fB7a71201E +0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975 +0x44871f074E0bd158BbA0c0f5aE701C497edDBdDE +0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719 +0x4694d4A6f9bf20A491b7A93F77f34Aec2Be86546 +0x46Fb59229922d98DCc95bB501EFC3b10FA83D938 +0x473B4a343C0580d5B963198C91f78BeEaCf4135a +0x4733A76e10819FF1Fa603E52621E73Df2CE5C30A +0x46ED8A6431d461C96f498398aa1ff61FC3D5dB7c +0x47217E48daAf7fe61486b265f701D449a8660A94 +0x47534888bF089f0359DF380a1782214344095A5f +0x47765838fACDeA8fda7D008f7c7cC8466CB1bDB8 +0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39 +0x4765fcd87025490bc8f650565474a7bD6A2179A3 +0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88 +0x484aaf6cf481DC921117Cb4B396a10db4934A063 +0x486d28706bcef411CBFe8fE357c287496A518DEA +0x48A2bC5DC9e3c5c0421E0483bF0648AaEE87daca +0x48A5A6a01bA89cDdF97D2D552923d5a11401Ed19 +0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360 +0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0 +0x4936c26B396858597094719A44De2deaE3b8a3c9 +0x48Dd5a438AaE27B27eCe5B8A3f23ba3E1Fb052F2 +0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B +0x4A24E54A090b0Fa060f7faAF561510775d314e84 +0x483CDC51a29Df38adeC82e1bb3f0AE197142a351 +0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9 +0x4949D9db8Af71A063971a60F918e3C63C30663d7 +0x473812413b6A8267C62aB76095463546C1F65Dc7 +0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2 +0x4AAE8E210F814916778259840d635AA3e73A4783 +0x4A6A6573393485cC410b20a021381Fb39362B9D1 +0x4ab746092Fb040DBd02a41DEEb2D6933057eEF13 +0x4A5867445A1Fa5F394268A521720D1d4E5609413 +0x4A337d1dF22d0D3077CaEFd083A1b70AA168d087 +0x4ADa23a97451e0B43444aBE15A2ea50a3E6110F9 +0x4Af7c12c7e210f4Cb8f2D8e340AaAdaE05A9f655 +0x4adE2ca80F8Ba92DAB1c0D003eb6e023B28E906B +0x4b1b04693a00F74B028215503eE97cC606f4ED66 +0x4ac9a97b3edb3f11b5ca91d8dE9468CF4882A7af +0x4B202C0fDA7197af32949366909823B4468155f0 +0x4b47DCaE50D5A3dDfd8610Fc8D435b0f5943E300 +0x4b9d08ECD76CD74F2314aA5ef687E70be3Cf6605 +0x4c09E512B5B8d1EAdA8fc07Ef45406E4623D7FDd +0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6 +0x4ba91dD5D555EcED4589e70dd1B9962773709406 +0x4C066d71A23A6fa90f2448f6eB0ca899f13b869a +0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507 +0x4c22f22547855855B837b84cF5a73B4C875320cb +0x4C3C27eB0C01088348132d6139F6d51FC592dDBD +0x4C2b8dd251547C05188a40992843442D37eD28f2 +0x4c366E92D46796D14d658E690De9b1f54Bfb632F +0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C +0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315 +0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11 +0x4c180462A051ab67D8237EdE2c987590DF2FbbE6 +0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6 +0x4d0bF3C6B181E719cdC50299303D65774dFB0aF7 +0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1 +0x4d7D2D9aDd39776Bba47A8F6473A6257dd897702 +0x4e2c7De1EF984bEeBB319057443D4AB87782eC42 +0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45 +0x4dA56fED8e7Bc8D27eDfd3Db7cFCC9c8aa1955B8 +0x4DbA5CD287655CB9F3Abe810A59B3c7ac09b493e +0x4E30D913301a99175633601159553FF9a9287344 +0x4d7fE683e9fd9891D856b7b528656DCb493f8242 +0x4dD06d3f05d573DB027459E8DC942e37249D71A8 +0x4E2572d9161Fc58743A4622046Ca30a1fB538670 +0x4E3E7d5183e42Fa4C5C4E223534A5307B5dAD6e9 +0x4e2A5a06934c35c83F7066bCa8Bc30f5F1685466 +0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a +0x4e7ceb231714E80f90E895D13723a2c322F78127 +0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79 +0x4ee5F1A0084762687CF511C9b2Bb117665aB9CC1 +0x4f69c39fe8E37b0b4d9B439A05f89C25F2c658d3 +0x4F70FFDdAb3c60Ad12487b2906E3E46d8bC72970 +0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8 +0x4Fc6d828B691e644c86d2D7cDc7E9a6ccE576E56 +0x500da24eb4A9222854FCDe19E4bBc522e0644a2c +0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b +0x504C11bDBE6E29b46E23e9A15d9c8d2e2e795709 +0x4fEe908721C4A0538005c50d3002C850DA811505 +0x4fCD42eb2557E49C0201Fb3283CfF62c1BaF0Fb4 +0x51001383C0283736664B0a81e383148aF7050890 +0x512E3Eb472D53Df71Db0252cb8dccD25cd05E9e9 +0x51a418f72115B30d092F2A2FA271B74cF21c528B +0x5068aed87a97c063729329c2ebE84cfEd3177F83 +0x515755b2c5A209976CF0de869c30f45aC7495a60 +0x51cdDDC1Ec0eCb5686c6EA0bC75793A27573243d +0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB +0x522E3b2b496a9e949C1B60a532c2500962C96Ef7 +0x51bd1AAcb21df2056A214b4251542F738a2a76cc +0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56 +0x4F8D7711d18344F86A5F27863051964D333798E2 +0x51E7b8564F50ec4ad91877e39274bdA7E6eb880A +0x52A42429BDAaD4396F128CB92167e64a96bE8A61 +0x525208Dd0B56c27BD10703bD675FcA0509A17154 +0x52c9A7E7D265A09Db125b7369BC7487c589a7604 +0x5270B883D12e6402a20675467e84364A2Eb542bF +0x52ccFf5c85314bbe4D9C019EE57E5B45Ad08B0Db +0x52d3aBa582A24eeB9c1210D83EC312487815f405 +0x52D4d46E28dc72b1CEf2Cb8eb5eC75Dd12BC4dF3 +0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910 +0x52E03B19b1919867aC9fe7704E850287FC59d215 +0x538c3fe98a11FBA5d7c70FD934C7299BffCFe4De +0x5338035c008EA8c4b850052bc8Dad6A33dc2206c +0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e +0x52F00b86cD0A23f03821aD2f9FA0C4741e692821 +0x540dC960E3e10304723bEC44D20F682258e705fC +0x533af56B4E0F3B278841748E48F61566E6C763D6 +0x531516CA59544Bf8AB2451A072b6fA94AdF5a88c +0x54bec524eC3F945D8945BC344B6aEC72B532B8fb +0x542A94e6f4D9D15AaE550F7097d089f273E38f85 +0x53dC93b33d63094770A623406277f3B83a265588 +0x55038f72943144983BAab03a0107C9a237bD0da9 +0x550586FC064315b54af25024415786843131c8c1 +0x553114377d81bC47E316E238a5fE310D60a06418 +0x55493d2bf0860B23a6789E9BEfF8D03CE03911cd +0x5533764Fd38812e5c14a858ce4f0fb810b6dc85a +0x554B1Bd47B7d180844175cA4635880da8A3c70B9 +0x558C4aFf233f17Ac0d25335410fAEa0453328da8 +0x562f223a5847DaAe5Faa56a0883eD4d5e8EE0EE0 +0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5 +0x55FD9Ab823d5c28128818Da3d2A2D144244406b2 +0x558B202d7D87B290bDB7B82DFEd9dD82D4BB1ecF +0x5540D536A128F584A652aA2F82FF837BeE6f5790 +0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95 +0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE +0x56A201b872B50bBdEe0021ed4D1bb36359D291ED +0x563F036896c19C6f4287fbE69c10bb63FAC717D6 +0x569fa8c1E62feaB5b93a6252DDb8c0fD29423C50 +0x5706537A9257C0F959924bf17C597A6f1BB68bA6 +0x56A76ED6582570254212d7653a1c833D4AeF883c +0x5722dD3ea35E51A2c4EDAA2Ed10aBA128e12C520 +0x575E1701fCa9D40c4534576fCec320CFe22Bc561 +0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C +0x578BD31b74941eED1A0c924130FEf47181766a42 +0x5767795b4eFbF06A40cb36181ac08f47CDB0fcEc +0x579CaC71BB7159e7657D68f1ae429b0Ab01A9261 +0x576A4d006543d7Ba103933d6DBd1e3Cdf86E22d3 +0x5775b780006cBaC39aA84432BC6157E11BC5f672 +0x57EE274CCEfF8be491B69A161E73E9269C6D8387 +0x57F77dcA6208F27240Ab4959000a30b1D6D7c647 +0x584145Be171F646cd2a3979bA3edAE978b635465 +0x57a4342ED31c8f53e164EF28B0182620d20290A5 +0x58737A9B0A8A5c8a2559C457fCC9e923F9d99FB7 +0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85 +0x58024B6C1005dE40eAC2D4c06bC947ebf2a302Af +0x585eb56057437344F2AF49d349c470B8b932a394 +0x582500328b34CdC66d6c07fA1cf4720e65524fEc +0x5812dF72f26aa7FF2Ad0065A48EC58f6A43252C4 +0x58509c1795770E1B4Cd6F9Fa25406ed92D013CEe +0x57B649E1E06FB90F4b3F04549A74619d6F56802e +0x58eF5B3A4c77a9b95e863F027a13C96F56e43051 +0x59b6E0185a290aC466A6c4B60093e33afeC7169b +0x59bc48f91747E64E6285aAb036800EB221E76135 +0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F +0x597D01CdfDC7ad72c19B562A18b2e31E41B67991 +0x59305Dcf01419A23c94af97b8fe90441F58C78CD +0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c +0x5a1675846387F82753d9f0E09acFCccd51270fb4 +0x5A2B016c641742FB97a75C0d4c22B2A637Ddf4B6 +0x5a2c17CEbE721e6Abd167FD0EDF9d3CE4b176A5D +0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00 +0x5A25455Cf1c5309FE746FD3904af00e766Eca65f +0x59D2324CFE0718Bac3842809173136Ea2d5912Ef +0x5a393c476Ac8AeB417BF47b3C3C5a7c9532a230D +0x5a57711B103c6039eaddC160B94c932d499c6736 +0x5A7F487D4A9894583DE2Dbf3114F46695DD0b7F1 +0x5ab404ab63831bFcf824F53B4ac3737b9d155d90 +0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87 +0x5acfbbF0aA370F232E341BC0B1a40e996c960e07 +0x5b5910186657F47BF46ee1776977D1Dc1c280C09 +0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e +0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430 +0x5bc3E9826Edeb1722319792b0Ff56dFa41167648 +0x5B435be574D63EBD1a502a23948c7a50832e0e24 +0x5c0D1c1FB6D4172A8EEf115DC31Fb2194d241E7c +0x5c5bDAFc0ACe887B422BD123C49aEA89E5d00671 +0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7 +0x5C6cE0d90b085f29c089D054Ba816610a5d42371 +0x5C6D32CbcB99722e6295C3f1fb942F99e98394E8 +0x5Cb12a681ca9573925A5969296Cf15e244b8bddB +0x5dd28BD033C86e96365c2EC6d382d857751D8e00 +0x5d12B49c48F756524162BB35FFA61ECEb714280D +0x5c9d09716404556646B0B4567Cb4621C18581f94 +0x5CE307dc1722Ac07d2F1D98D408c7cAf9ea76A16 +0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be +0x5e64c426D3521da970BDFdb4b51EAbEb79fF2D3b +0x5dfbB2344727462039eb18845a911C3396d91cf2 +0x5ea7ea516720a8F59C9d245E2E98bCA0B6DF7441 +0x5d48f06eDE8715E7bD69414B97F97fF0706D6c71 +0x5e68BB3dE6133baeE55EEB6552704dF2EC09A824 +0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B +0x5D9183A638Eaa57a0f4034DdCaDC02DB4A305c2f +0x5eC5e26D5304EF62310b5bC46A150d15E144e122 +0x5ec6bC92395bFE4dFb8F45cb129AC0c2F290F23d +0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2 +0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2 +0x5F045d4CC917072c6D97440b73a3d65Cb7E05e18 +0x5Ed417274E1acd3A1Fd2c9d9B37eFD5c076954E4 +0x5eE72CD125e21b67ABFf81bBe2aCE39C831ce433 +0x5EdF82a73e12bcA1518eA40867326fdDc01b4391 +0x5FA8F6284E7d85C7fB21418a47De42580924F24d +0x5f37479c76F16d94Afcc394b18Cf0727631d8F91 +0x5f683bd8E397e11858dAB751eca248E5B2afc522 +0x5F86078B14a8Aa7C9890e55A7051a26Ffd210256 +0x5ff23E1940e22e6d1AaD8AF99984EC9821BAA423 +0x5f3DF357144f748d7d53F30719A6e4040E2C7D04 +0x603898D099a3E16976E98595Fb9c47D1fa43FaeA +0x60D788A5267239951E9AFD1eB996B3d5EBff2948 +0x6040FDCa7f81540A89D39848dFC393DfE36efb92 +0x610656A1a666a3a630dA432Bc750BC0bE585AEB4 +0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C +0x6106e7b682296E3E67DE45DF3294A706b36a51a6 +0x6108565786d03CFC962086a66ee4E8C69560ebe2 +0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF +0x6112d6F5B955298eD8704Faf988B87A33428CCa6 +0x627Fe83cf1485f906bd4dCfA4C24c363593162dC +0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A +0x61FEfD3706F7a6a62e72A3E2cF0d716e8dE9DF98 +0x61e2ee7D23446b5263D735f2Ad58d97904676720 +0x60e8b62C7Da32ff62fcd4Ab934B75d2d28FE7501 +0x61572ca1C6d53011e9B5318aa26dd285C7df6997 +0x6266431213542Bb43beB87d59565d710bdf15c38 +0x61e413DE4a40B8d03ca2f18026980e885ae2b345 +0x62A32ea089109e7b8f0fE29d839736DDB0C753F6 +0x614D1D40e3b2b1601625E739bfe8Bdf85133B459 +0x62F96Bcc36Dccf97e1E6c4D2654d864c95d76335 +0x6301Add4fb128de9778B8651a2a9278B86761423 +0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d +0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8 +0x63B98C09120E4eF75b4C122d79b39875F28A6fCc +0x63C2dc8AFEdB66c9C756834ee0570028933E919C +0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1 +0x6343B307C288432BB9AD9003B4230B08B56b3b82 +0x647bC16DCC2A3092A59a6b9F7944928d94301042 +0x648457FC44EAAf5B1FeB75974c826F1ca44745b7 +0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8 +0x64e149a229fa88AaA2A2107359390F3b76E518AD +0x6525e122975C19CE287997E9BBA41AD0738cFcE4 +0x647EAf826c6b7171c4cA1efb59C624AAf2553CE1 +0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a +0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61 +0x65F992c16CB989B734A1d3CCAf13713391afa6d3 +0x65D67E60F981ACCD5a8D9F1d20f2Dc23EF40B498 +0x6631E82eDD9f7F209aEF9d2d09fFc2be47d8Ae43 +0x66435387dcE9f113Be44d5e730eb1C068B328E93 +0x6647bb406CA87924F7039C67e5D01f3763fa888B +0x6649f72A0F12Ca03AE6b3D672662E9307C948D98 +0x6661b9b527F4Dad25a97ca4Fc9B29F90f0760cFF +0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22 +0x664D448A984DAe1e829BF71e837faCd7b657EE10 +0x66D47630Ac454275745b581a305d7C8Af1218181 +0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD +0x672cE9a5A136B5BE11215Ce36D256149cdf47914 +0x66F6Ac1E4c4c8aE7D84231451126f613bFE61D98 +0x66e4c7e22667A6D80F0C726a160E5DeE9A37223C +0x67B549ca12bC83ECb5850006f366727F67d54001 +0x677c9380B3043d2a0614003277b7265d5e421471 +0x67870422E6bAe4e8a5BFdF2Dbe01ae430b9bf803 +0x6765e13B9d7Bfe31B2CaDD379e5962FC9Be51B64 +0x67dfAF31f444FaC36d4B1979014A92e6152D2FFA +0x679B4172E1698579d562D1d8b4774968305b80b2 +0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6 +0x68512d66e6386369686f58a912c86b390b9299d0 +0x68572eAcf9E64e6dCD6bB19f992Bdc4Eff465fd0 +0x688b3a3771011145519bd8db845d0D0739351C5D +0x6887b5852847dD89d4C86dFAefaB5B0B236DCD8a +0x689Ae6AA4F778B2C324E57440CFEa26acB6b2D0A +0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07 +0x695e4494Bc9D802d4EF182944da80C7803903F75 +0x66B0115e839B954A6f6d8371DEe89dE90111C232 +0x69b03bFC650B8174f5887B2320338b6c29150bCE +0x69CeFF474F4C0856df11f983dcA8a43b40AEA6aB +0x6a3524676291A84a68BBB7f379d2F6fB9c89CDe0 +0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3 +0x6a3e09694bDF65dA8F6bF6bfaD147811100f4C40 +0x69e02D001146A86d4E2995F9eCf906265aA77d85 +0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2 +0x6A9D63cBb02B6A7D5d09ce11D0a4b981Bb1A221d +0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7 +0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559 +0x6AB880AFd1E0C7786cc5D05F4FD9b17761768da8 +0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b +0x6ad21a192AE398a8A195cc4655836b82c9c18a3e +0x6Afbf03Fe3Bea05640da67Ae9F0B136c783e315d +0x6b434f8e80E8B85A63A9f4fF0A14eB9568a827c8 +0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D +0x6c3E007377eFfd74afE237ce3B0Aeef969b63C91 +0x6C8c8050a9C551B765aDBfe5bf02B8D8202Aa010 +0x6b4bd4c5bc6eD61a92C7bF30cA834b7A1ba26ecA +0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F +0x6D42977A60aEF0de154Dc255DE03070A690cF041 +0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd +0x6CD83315e4c4bFdf95D4A8442927C018F328C9fe +0x6D5194ECE4C937B58EE00c4238eF61E6b98eaCE8 +0x6b6657a973644faaff1c5162D53C790C7E6a986d +0x6d28De5368C09159F57A3a1576B94628E57362e0 +0x6dAE3f488035023cf7dF5FA51e685C3B3CbE50d7 +0x6eec856e1661Fd6B2345380843c3603Dd7A6A94C +0x6E7427155f14c4A826B5E7c8aF4506220A0895D2 +0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10 +0x6Dd407f05C032Ae2D5c1E666E4aA3570263b306f +0x6dd1E0028eF0a634b01E13B2291949255610b38f +0x6E7efec7b53332F06647005B0508D5e79D3674D7 +0x6E4ef712deCBe435C2E7edCB2Ce4A3c7fa46317a +0x6ef8C88E31F36b99afD4584e25D4f69B0793187b +0x6ee25671aa43C7E9153d19A1a839CCbBBE65d1EC +0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A +0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9 +0x6fa54cbFDc9D70829Ac9F110BB2B16D8c64fA91C +0x6FAdD627a52b8De209403191eD193838152e974b +0x6F9ceE855cB1F362F31256C65e1709222E0f2037 +0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54 +0x708E5804D0e930Fac266d8B3F3e13EdbA35ac86E +0x6fE4aceD57AE0b50D14229F3d40617C8b7d2F2E1 +0x702aA86601aBc776bEA3A8241688085125D75AE2 +0x70a9c497536E98F2DbB7C66911700fe2b2550900 +0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906 +0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793 +0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565 +0x7105401E7dA983F1310A59DBa35E5B92ff59bA0C +0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31 +0x70c65accB3806917e0965C08A4a7D6c72F17651A +0x718526D1A4a33C776DD745f220dd7EbC13c71e82 +0x71a15Ac12ee91BF7c83D08506f3a3588143898B5 +0x717E61157ce63C7cd901dCb2F169f019D16c5aC9 +0x7197225aDAD17EeCb4946480D4BA014f3C106EF8 +0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537 +0x71ad3B3bAc0Ab729FE8961512C6D430f34A36A34 +0x71D8472C58D77F2220C333149BdF8b843C314E99 +0x721f5D24c041d02f9316245D96DAc0094429Ce53 +0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126 +0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2 +0x72520D730efABFB090ed800f671F751f70E8e64f +0x723FfaFc402702f9DaD94fd10e8eDecAaAbA90aC +0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246 +0x72a97cF2501aaFDCbB62afb7Bd6E4C237fD705a2 +0x726C46B3E0d605ea8821712bD09686354175D448 +0x728897111210Dc78F311E8366297bc31ac8FA805 +0x72BC9bE9cc199cE211b02F10487b740f8fc0F33D +0x72aEae04BF7746803dc0d7593928Cc6B68D2Ea6d +0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2 +0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4 +0x72ea7c70c5663D4B8b9E61282f98fC26c21d5c9E +0x7379a8357E5791Fbd3B77c3Ba380F7FE850C13f0 +0x73E9f9099497Dd0593C95BBc534bdc30FD19fA86 +0x730a5682f0048b7937455bDCb15f51CCA1814084 +0x72f030d92ed78ED005E12f51D47F750ac72C3ce9 +0x73Cbc02516f5F4945cE2F2fACf002b2c6aA359e7 +0x7377bC02C27ea5E5D370EeE934De1576eE1952Fe +0x74231623D8058Afc0a62f919742e15Af0fb299e5 +0x7463154a39d8F6adc38fFC3f614a9f32E63a1735 +0x743025F4e7f64137137ca18567cd342b443a0aa5 +0x74730D48B5aAD8F7d70Ba0b27c3f7d3aA353A64A +0x749461444e750F2354Cf33543C941e87d747f12f +0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347 +0x73C91af57C657DfD05a31DAcA7Bff1aEb5754629 +0x74Bcf1a4c12Fc240773102C76Ea433502c188d84 +0x750Ea1907dC2A80085da079A7Db679EB57cbcb21 +0x758917f2c8D3192FC9f109fE1EE0556808248CC0 +0x75e6E04eB9BB5e4C1E8A57F3C6Eb89D7BfF63a14 +0x753e0Fb90EC97Cf202044d4c3B1F759210f4D8D1 +0x7568614a27117EeEB6E06022D74540c3C5749B84 +0x75b3D92d34140b2A98397911BdED09eC70F5F58f +0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515 +0x768DeC0cdCCF66eF7036fB8d2cE6673b73F9eA13 +0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000 +0x768F2A7CcdFDe9eBDFd5Cea8B635dd590Cb3A3F1 +0x76A63B4ffb5E4d342371e312eBe62078760E8589 +0x76a014267b1D9e375D4A84554504E366C7De1167 +0x7690704d17fAeaba62f6fc45E464F307763445de +0x75d5CEd39b418D5E25F4A05db87fCC8bCEED7E66 +0x76d9546E42951BdbFb45b3FEA09dc381183Fff1A +0x76aD595A4226EA608A3111901eBb6781692f4624 +0x77029090e07F7D144538C74cD3B7EcF674d82f62 +0x771433c3bB5B9eF6e97D452d265cffF930E6DdDB +0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc +0x775B04CC1495447048313ddf868075f41F3bf3bB +0x7809792a0Ac72024Af361e0FC195B0066B25A76D +0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B +0x774E9010cBbB1C5B07D6Dd443939305707Cc8dA7 +0x77BD7d6D8E6cB76032FF6a96921D81a98Baf3637 +0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658 +0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E +0x7761377f59863DDcaF83A7BC5E6534c8991Bf80f +0x7833606Df8d790FcFA7494d0C254125C26d723D7 +0x78a9Ab428e950D9E8F63De04833bd90D5BFD4fDA +0x7893b13e58310cDAC183E5bA95774405CE373f83 +0x78320e6082f9E831DD3057272F553e143dFe5b9c +0x78b606B8D65498ab40c7F7995Fe83887238CC968 +0x78Bf8b271510E949ae4479bEd90c0c9a17cf020b +0x79384685684121f64725594B84AE797AB5f797Ab +0x79Af81df02789476F34E8dF5BAd9cb29fA57ad11 +0x79ba2BD849cD811bCC4A6ddBe6162c7672A3ACd4 +0x7a59ab141ab5fD585760386002dC2E9ec8A217e9 +0x7A63D7813039000e52Be63299D1302F1e03C7a6A +0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E +0x7A6530B0970397414192A8F86c91d1e1f870a5A6 +0x7ac34681F6aAeb691E150c43ee494177C0e2c183 +0x7aA55D3965455d50f779991783fD54178aBCa185 +0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6 +0x7Ace5390CAa52Ea0c0D1aB408eE2D27DCE3f2711 +0x7902b867Af288b1b33dFcC6D022B284063eF9976 +0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD +0x7B2d2934868077d5E938EfE238De65E0830Cf186 +0x7b2366996A64effE1aF089fA64e9cf4361FddC6e +0x7B5Fa2f03747326A5Eccd0e6d08329732Ed1E605 +0x7bd5d9279414A7d5c3B17916A916F0C7Fd2c593B +0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E +0x7bB955249d6f57345726569EA7131E2910CA9C0D +0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4 +0x7bC93c819a168F1F684C17f4F44aFA9cB52d5184 +0x7c4430695c5F17161CA34D12A023acEbD6e6D35e +0x7c3049d3B4103D244c59C5e53f807808EFBfc97F +0x7C1effB343707fFdcaBd91Ee417C86Ab07dFd41c +0x7bf98085c8336a374436C91fcf664595f9ff3FD7 +0x7c6236c2fBe586E0E8992160201635Db87B7E543 +0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc +0x7CA6217b72B630A5fF23c725636Ec2daf385C524 +0x7c5534E88F8A7b3F81290a4372D85dbD4b9B2ae2 +0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16 +0x7CCaF96bD91654998F286616717F72e0824Ec141 +0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3 +0x7CDFc314b89a851054A9acC324171bF8a31593E9 +0x7Cc8880e3d74611e301fAaA5C8a05d3D8FCB3F18 +0x7cd222530d4D10E175c939F55c5dC394d51AaDaA +0x7D6A2f6D7C2F7Dd51C47b5EA9faA3ae208185eC7 +0x7cd5F8291eeB36D2998c703E7db2f94997fCB1F9 +0x7D6261b4F9e117964210A8EE3a741499679438a0 +0x7D31bf47ddA62C185A057b4002f1235FC3c8ae82 +0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677 +0x7D6de90cc5eFF4bEf577C928bed96c462c583d01 +0x7d50bfeAD43d4FDD47a8A61f32305b2dE21068Bd +0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E +0x7dE837cAff6A19898e507F644939939cB9341209 +0x7E07bEeA829a859345A1e59074264E468dB2cf64 +0x7eaF877B409740afa24226D4A448c980896Be795 +0x7F01A8B42a1243C705DBc74964125755833ef453 +0x7E860aBa712dAb899A00d1D30C7e05AC41FDF3f3 +0x7f538566f85310C901172142E8a9a892f0EAf946 +0x7F82e84C2021a311131e894ceFf475047deD4673 +0x7f5CCFb50D9087A572A80eC2585bdE8e0377625C +0x7F594CF111DADb003812729054050239101B4621 +0x7F81D5AF291481AFC4A9b5744286e7f49d20AFfF +0x7F91212b8403ae7A7eaBe88C8eAf98002f0A3bD3 +0x7fD4969BE7ff75E9E8cd3dea6911c54367F03774 +0x7fFadA80929a732f93D648D92cc4E052e2b9C4Aa +0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5 +0x807FE5922a2f5137601e8299A41055754EB83b21 +0x808995E68A45b4D5a1ba61429882b47011E96c79 +0x80077CB3B35A6c30DC354469f63e0743eeff32D4 +0x80893D541770DDe1c33df10d9ab2035800BA0B03 +0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e +0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81 +0x804Be57907807794D4982Bf60F8b86e9010A1639 +0x80eC8c4e035A9A200155a3F8d3E5fD29b2d8Ca42 +0x80Fd357cAC78f7f70BDba65548e3b62982Eb31A7 +0x80f900994D69b9012CE551543d26ebb5A8ADd14C +0x813de8BE827a526C271e5226AF912441d3b63700 +0x8110331DBad6e7907F60B8BBb0E1A3af3dDb4BBd +0x81704Bce89289F64a4295134791848AaCd975311 +0x81744feFDB94DE3A00DFE71623A63aB57BDED12E +0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19 +0x820cE800B58C7FAad586a335FD57a866Cc61B463 +0x81F3C0A3115e4F115075eE079A48717c7dfdA800 +0x820A2943762236e27A3a2C6ea1024117518895a5 +0x81F45F896D8854007fd6E7C892A894804F8aD3cb +0x82353d5D94ef75145D57C5109e8aD54D00Ff2459 +0x828920Ee37fcF523a920290Fb9e23B3386382497 +0x8242Cb3B1A95b20fF8c55ba280ECC6534e56Cdfd +0x828E31517612208483C25Ba70e1cDC89d89987Df +0x82eEfC94a9364620dd207D51Bf01038947A06f83 +0x8308E27C711C3f3e52E9FF52d91cA22459cF7b03 +0x82F402847051BDdAAb0f5D4b481417281837c424 +0x82fcd7cD3151b0ab9e4c00629f123D45AD17FA73 +0x832fBA673d712fd5bC698a3326073D6674e57DF5 +0x8311a050b6E3C7a36760458734Efbc777e4D49c6 +0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751 +0x8369E7900fF2359BB36eF1c40A60E5F76373A6ED +0x8366bc75C14C481c93AaC21a11183807E1DE0630 +0x8368545412A7D32df7DAEB85399Fe1CC0284CF17 +0x838b1287523F8e1B8E5443941f374b418B2DB4Bc +0x8421D4871C9d29cbf533ccbE569D8F94531d8C70 +0x843f2C19bc6df9E32B482E2F9ad6C078001088b1 +0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D +0x842411AE8a8B8eC37bAd5e63419740a2854E6527 +0x848aB321B59da42521D10c07c2453870b9850c8A +0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b +0x8456f07Bed6156863C2020816063Be79E3bDAB88 +0x850010F41EF5C2a3cf322B9Ab249DbdA7c72850B +0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e +0x83C9EC651027e061BcC39485c1Fb369297bD428c +0x84747165e0100cD7f9BdeB37d771E8d139f49e14 +0x853AebEc29B1DABA31de05aD58738Ed1507D3b82 +0x85312D6a50928F3ffC7a192444601E6E04A428a2 +0x85971eb6073d28edF8f013221071bDBB9DEdA1af +0x85789daB691cFb2f95118642d459E3301aC88ABA +0x85Eada0D605d905262687Ad74314bc95837dB4F9 +0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008 +0x85d365405dFCfEeCDBD88A7c63476Ff976943C89 +0x861d7FCC4AbA8A082f266E01eaaE0767834db7D3 +0x8675C7bc738b4771D29bd0d984c6f397326c9eC2 +0x85bBE859d13c5311520167AAD51482672EEa654b +0x867DAa0A6728c5281bD8DaDA98894381290E058F +0x867fE13b4dE1dCeA131e9cdE6a6b4848a13Ec469 +0x8639AFABa2631C7c09220B161D2b3d0d4764EF85 +0x8683eeE814A51AE9A1f88666B086e57729A50885 +0x86A41524CB61edd8B115A72Ad9735F8068996688 +0x86d6facD0C3BD88C0e1e88b4802a8006ec46997b +0x87061D42aE66a7A7c181b8664EA53780146fd0e7 +0x86FAd5a4C85EA88C3A8cC433fdCfDA326C35CA34 +0x8723af66e4377dF827b9135B8bca3D4352d0f130 +0x87376f16268A0b93055A6FbcBe94f093cb589B81 +0x87316f7261E140273F5fC4162da578389070879F +0x87546FA086F625961A900Dbfa953662449644492 +0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA +0x877cEA592fd83Dcc76243636dedC31CA7ce46cE1 +0x87a62b0B5f0dcd16A3D92Fb19B188C9ff9F067C2 +0x87872F0514Dd26F88c775D975C6C6Cf0f0A95FE1 +0x87C9E571ae1657b19030EEe27506c5D7e66ac29e +0x877F43de346B7B9de9d6e0675EB5Ab2B6D7A3730 +0x87b6c8734180d89A7c5497AB91854165d71fAD60 +0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45 +0x87C5E5413d60E1419Fd70b17c6D299aA107EfB49 +0x88673cb5439fE3Ea7eaA633C2E02fb07284e0765 +0x8798C5Add2c42cE8E773a3104d23CA36b10c8C15 +0x883a920EF16e9E270754623dC86885B8d4AA5A11 +0x88696C4985f64Ea1EBfb9E46c1B47197F7a244AB +0x8890687b8042C08c7C09499FA5158D7AB9d326b5 +0x88cE2D4fB3cC542F0989d61A1c152fa137486d81 +0x88b007D55D545737436741691f965Ca066E19e7f +0x88F09Bdc8e99272588242a808052eb32702f88D0 +0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1 +0x898ab6605409028c42399a6dc9C8ca8Ee164fE44 +0x8950D9117C136B29A9b1aE8cd38DB72226404243 +0x8953738233d6236c4d03bCe5372e20f58BdaAEfE +0x891768B90Ea274e95B40a3a11437b0e98ae96493 +0x8926E5956d3b3fA844F945b26855c9fB958Da269 +0x88F667664E61221160ddc0414868eF2f40e83324 +0x898a3Af0b87DD21c3DbFDbd58E800c4BDe16a153 +0x898fF4Bab886E4E96F3F56B86692dD0DB204aC27 +0x8a342A60A20D1FF2abc119e87990A2799B187Be7 +0x8A30D3bb32291DBbB5F88F905433E499638387b7 +0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B +0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9 +0x8afcd552709BAC70a470EC1d137D535BFa4FAdEE +0x8AD30D5e981b4F7207A52Ed61B16639D02aA5a21 +0x8aC9DB9c51e0d077a2FA432868EaFd02d9142d53 +0x8b2DbfDeD8802A1AF686FeF45Dd9f7BABfd936a2 +0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF +0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048 +0x8b8Bd62E0729692B7400137B6bBC815c2cE07bcF +0x8B79D14316cf2317C61b4Ab66448d0529E5Fc024 +0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72 +0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5 +0x8b08CA521FFbb87263Af2C6145E173c16576802d +0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612 +0x8be275DE1AF323ec3b146aB683A3aCd772A13648 +0x8Bb62eF3fdB47bB7c60e7bcdF3AA79d969a8bE9C +0x8Bea73Aac4F7EF9dadeD46359A544F0BB2d1364F +0x8BB07e694B421433c9545C0F3d75d99cc763d74A +0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE +0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1 +0x8C39f76b8A25563d84D8bbad76443b0E9CbB3D01 +0x8c809670Ab1d2b9013954ECA0445c0DF621Cf8eF +0x8d1c3018d6EC8Dc3BFb8c85250787f0b4F745e43 +0x8cc956430A4cbeC784524C0F187ccA3a4583aD83 +0x8c919F4128c9e7a1D82ee94A1916D12A9C073bb4 +0x8d3D6458a80669Eb74726B2EB23B9169083a51F1 +0x8D02496FA58682DB85034bCCCfE7Dd190000422e +0x8C83e4A0C17070263966A8208d20c0D7F72C44C9 +0x8d5380a08b8010F14DC13FC1cFF655152e30998A +0x8D5A64B827724bE1A36EC0482381aE47905C6f08 +0x8cB2E021b8B00a023F66107962dDFf94BF873BF7 +0x8D06Ffb1500343975571cC0240152C413d803778 +0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D +0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8 +0x8D8603aF066dFF5e6E83E44ca42e0A900fE9c221 +0x8d9261369E3BFba715F63303236C324D2E3C44eC +0x8Db89388FA485c6b85074140B865C946Dc23f652 +0x8E41d0A4465Ed01E0941a31f254FcE0862d8c8C1 +0x8e5cdd1fAeBEAe48b2b2b05d874de75AE7ad720f +0x8Db5e5A0D431A21e1824788F3AE0a6C1b388c88d +0x8E32736429d2F0a39179214C826DeeF5B8A37861 +0x8E22B0945051f9ca957923490FffC42732A602bb +0x8e653fFf3466368A47879C2775F78070B30226ad +0x8e84bA411f07E08Cf5580d14F33bf0Bd6bC303fF +0x8E8A5fb89F6Ab165F982fA4869b7d3aCD3E4eBfE +0x8eB354f1CBb0AB7ef0D038883b4c1065e008453F +0x8e75ba859f299b66693388b925Bdb1af6EEc60d6 +0x8eCb6912d43a0e096501dEb215FE553DB89966dE +0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051 +0x8EFef6B061bdA1a1712DB316E059CBc8eBDCAE4D +0x8f1076Ad980585af2B207bF4f81eB2334f025f9b +0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3 +0x8EDEDfe975Ee132A3A034483b2734CdA183153d7 +0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab +0x8f3466B326F8A365e4193245255CC2A95DFF6406 +0x8F9f529978f487cb7E0D4C60AE99de5C9Af1ce2e +0x8F21151D98052eC4250f41632798716695Fb6F52 +0x8FdD0CF22012a5FEcDbF77eF30d9e9834DC1bf0A +0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD +0x9023a931b49D21ba4e51803b584fAC9EA4d91f67 +0x90a69b1a180f60c0059f149577919c778cE2b9e1 +0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2 +0x90111E5EfF22fFE04c137C2ceb03bCD28A959b60 +0x90Bd317F53EE82fe824eD077fe93d05EF7295d5c +0x8Fe316B09c8F570Fd00F1172665d1327a2c74c7E +0x90F15E09B8Fb5BC080B968170C638920Db3A3446 +0x90Fe1AD4F312DCCE621389fc73A06dCcfD923211 +0x8fE7261B58A691e40F7A21D38D27965E2d3AFd6E +0x912Bf1C92e0A6D9c81dA5E8cDC86250b9c7D501b +0x912F852EB064C6cD74037B76987a8D4a8877F428 +0x91e795eB6a2307eDe1A0eeDe84e6F0914f60a9C3 +0x91953b70d0861309f7D3A429A1CF82C8353132Be +0x9201cB516D87eD1EEBA072808EE8ac4a7894086d +0x91d60813323A8795e098b127c8ec9b2aD0F70dA1 +0x920ba6012447697b61b71480b05Bf965566D019D +0x923CC3D985cE69a254458001097012cb33FAb601 +0x9260ae742F44b7a2e9472f5C299aa0432B3502FA +0x9241089cf848cB30c6020EE25Cd6a2b28c626744 +0x91e2127Ac041da6aC322b6492Fd8872D0860aFE9 +0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB +0x935A937903d18f98A705803DC3c5F07277fAb1B6 +0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1 +0x930836bA4242071FEa039732ff8bf18B8401403E +0x9392e42722ACDa954984590b243eB358582991aA +0x93Aa01eAb7F9D6C8511A4a873FEa19073334c004 +0x939B4fCCf5A9f1De3d8aB1429Ff4CBa901bD286f +0x92D29e49e9fD72AB2A620885Cc3f160274fA2B8b +0x93BfBA47375856Ca59FF5d920dbD16899836CF34 +0x940baBb7377036989509Ec55D03FfD7c87CaC6a7 +0x940476d877C2DBcC055D315707758860431494b0 +0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f +0x94d29Be06f423738f96A5E67A2627B4876098Cdc +0x94A5582f35643Fb7B0C5B1DAB23B0057b2AD01f9 +0x947992B897642F19E921d73a3900914f2fC9AC36 +0x9383E26556018f0E14D8255C5020d58b3f480Dac +0x93d4E7442F62028ca0a44df7712c2d202dc214B9 +0x94e179dEF45b2B377610eE915aC513BA17685151 +0x94F335a00F00d79b26336Fa1c77bAb6ae96F08c5 +0x951b928F2a8ba7CE14Cc418cfEBfeE30A57294c3 +0x94fDfEA0f8E66f245D242796b735B6070D52F6dD +0x95603220F8245535385037C3Cd9819ebCf818866 +0x956a64CF19B231d887d6579711a2367aE6d0D30e +0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa +0x93be7761f4C7153BC462a50f9Eb5eB424c39c2CD +0x954C057227b227f56B3e1D8C3c279F6aF016d0e5 +0x956BE972E8D16709D321b8C57Bce7E5f021fBE9E +0x95D1C6ecb2951e3111333C987f8A0d939A9b7b09 +0x968E24C15a30d6Ff1B67f590c1c3A7fCeCb5C3fd +0x9599BF29Df5B7491C8cf7602b8C05157DbB784bF +0x9664ca3827D81694aaf1b4C93891dE770A9340cf +0x96C53DBE55a62287ea4E53360635cAF1CCCE467d +0x971b4a65048319cc9843DfdBDC8Aa97AD47Ef19d +0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb +0x9728444E6414E39d0F7F5389ca129B8abb4cB492 +0x970668Ec67fA074AED4Aea7727543904B22eE53f +0x9777dAaBf322d38af7A49A66dC55F3086127baeA +0x97acbfFcAAdb2578602B539872d9AC5eB991761a +0x96D9eBF8c3440b91aD2b51bD5107A495ca0513E5 +0x97E89f88407d375cCF90eC1B710B5A914eB784Af +0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A +0x98056e817220A4d16d4392a95CD48306acEd1f76 +0x985314FbAf1Dac0a5Afb649AbeD69D8a32aeBee7 +0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1 +0x981793123af0E6126BEf8c8277Fdffec80eB13fd +0x989252fE804c3C1b15908C364AA5cDa791030067 +0x98a692316057e74B9297D53a61b4916d253c9ea6 +0x987C5f96524059F591244F930279346fFaF900B6 +0x989c235D8302fe906A84D076C24e51c1A7D44E3C +0x988fB2064B42a13eb556DF79077e23AA4924aF20 +0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221 +0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60 +0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b +0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA +0x99e8845841BDe89e148663A6420a98C47e15EbCe +0x9a2F1b23aE1979976939A75F36c6593408098F9e +0x995D1e4e2807Ef2A8d7614B607A89be096313916 +0x9a37d222322e75e40D90EC8127fB85dd4E63949B +0x9a3E11097F77c403C36Dd8761B8b7328A2cd6D0C +0x9A428d7491ec6A669C7fE93E1E331fe881e9746f +0x9A9f7885a9a0b9EFD48D1eAFA17e2E633f89E609 +0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F +0x9af623bE3d125536929F8978233622A7BFc3feF4 +0x9bA956e1C9417cA7223DE8684619414D5dFFD9e2 +0x9b1F139298b71Fa95e42FA37C82542599AeBa24c +0x9b54ede44B624e057aA948308e0C10D91BFD59E6 +0x9B7D7c4ce98036c4d6F3D638a00e220e083116c7 +0x9b3C1fF2066ea1be0fD05ebF722f2492d8b810Fd +0x9B4888F3B901a22f7534B60CBd28013897eEc3Fb +0x9b69b0e48832479B970bF65F73F9CcD125E09d0F +0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb +0x9Bb70bf2938A667cA6f039DB35B925e3d3Eb9885 +0x9BD25e549Ea9568569b132c1dc308eF3aEadC297 +0x9c176634A121A588F78B3E5Dc59e2382398a0C3C +0x9C3Da668A27f58A60d937447E0A539b48321F04d +0x9C529180015F78e13288831A2Cf06Da2e9304271 +0x9c211891aFFB1ce6CF8A3e537efbF2f948162204 +0x9C8623E1244fA3FB56Ed855aeAcCF97A4371FfE0 +0x9c695f16975b57f730727F30f399d110cFc71f10 +0x9c7871F95e0b98BF84B70ffF7550BfA4683c7a56 +0x9c9A3328B789EC3581FaaA230054072dC4D27C57 +0x9CD661Bb06117974B4EA6db90583C2B14E7cAf0f +0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753 +0x9D0242F554D6785c109D09FD0e9026Ff705bC390 +0x9CdF7Ca37Db491c34931E6084694A11Be758Ddd0 +0x9D3Ff6F8Da7a77A15926Fab609AD18963c8c461B +0x9E097E8999AFFab83e502C91Db8a52e12Ed8fd25 +0x9e5d8933DdB758992b153ccD72924E30e20737A5 +0x9e16025a87B5431AE1371dE2Da7DcA4047C64196 +0x9e8Caff2218E77befdc62Ea6D18ABd1493F96B9a +0x9eaE1fC640064c1f4786E569Ced40975441FBfd6 +0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698 +0x9D6bA8738Dd587114C895ECD40623fc319e1BB99 +0x9E0CB69Ae6A5aD4eB870EB18D051eFE642eD7db4 +0x9ebAd4282b772F8cc1181A2cB29D5240363D18B8 +0x9eE09Cb5fe9Eb306897f387DA09dB1C8C9F4627f +0x9eD7029086dEB3Ea14D8F42efee988e4205cC4d9 +0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE +0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E +0x9F1F4714d07859DD4C8D1312881A0700Ed1C2A7e +0x9fA9761089aF6B720eB544319c5b2BDA2500C56D +0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c +0x9F64674CAb93986254c6329C4521c4F9737Af864 +0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282 +0xa03E8d9688844146867dEcb457A7308853699016 +0x9FE670cCD3a7A9f8152C1B090F8097F6fA1E5E03 +0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc +0xA073C8A00485B2f072906cB5c9f07b1ce88D9d87 +0xA05eb807023B8d784dD144bd9E9Cc2b4e1A30333 +0x9ffA3393287131D85d632D0f34385Eebb7E7caA0 +0xA09DEa781E503b6717BC28fA1254de768c6e1C4e +0xA0F0287683E820FF4211e67C03cf46a87431f4E1 +0xA0df63b73f3B8D4a8cE353833848D672e65Ad818 +0xA14EDe51540df9d540CE6A9B5327bFDAfB2150e9 +0xA160ddd847200C5A0b86A2D4107dba56A6E3053b +0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE +0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf +0xA1948B0aAf6d029861a02B917847229947642Fbb +0xa2321c2a5fAa8336b09519FB8fA5a19077da7794 +0x9c52dC78bd84007bF63987806f0aeEece0ef14a6 +0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655 +0xA240A72b63b1692Ee04E5cbd7dfB6E33F6502165 +0xa25243821277b10dff17a3276a51A772Fd68C9de +0xA27964F356C5c2D6e9007d316cBfb06E454EEB3C +0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6 +0xA3220B672d6632dB45b3aA2C5eE28b1628d2585F +0xA2683C71bECB07E21155313F46F6ba00986414c3 +0xA33be425a086dB8899c33a357d5aD53Ca3a6046e +0xA256Aa181aF9046995aF92506498E31E620C747a +0xA354D0a7c74AB2fcA6B3c90468A57C9260fF69f9 +0xa31CFf6aA0af969b6d9137690CF1557908df861B +0xa3C73B0cE38ad596FD185F9ee1FBBb01203A5Ab2 +0xa3DCe4D1640691cE3993CE2e42D73BaAD0399076 +0xa36B48545904789EbB6B898467F9506A54E9F052 +0xa3d63491abf28803116569058A263B1A407e66Fb +0xA40633dF77e6065C7545cd4fcD79F0Ce2fa42cF1 +0xA3e1b60002a24f6cFf3f74E2AA260b8C17bbdF7D +0xA46322948459845Bb5d895ED9C1fdd798692a1dA +0xA419489219dC5fA1ECeC3749dB45767Aa9F8e912 +0xA46Fe4a0b569E6253B8765FC7b67b08325f0cd5C +0xa4f1b0889354b88CaAcC8142Ee0601D8920AE776 +0xa4f79238d3c5b146054C8221A85DC442Ad87b45D +0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15 +0xa53bfbe5733924a383c13af5dED9Ae7b5DcE0eb8 +0xA518DdB15FBE19AAa6824D7aA076cB4dd6b35ed9 +0xa5A55bf143b12D14E2fe4CFE17ee92Ef39F0C493 +0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191 +0xa5b200B10fd9897142dC2dd14708EFdF090A1b4d +0xA4CBFcB9Ec8b109e63155655d9Fa91F0fdC7F669 +0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99 +0xA6a0BEd0732c49Bd847b4B308DAAC15640f1eC6E +0xA5f8e2881a275344Fe744B30C0b7066DB8Ace1f3 +0xa69eb732230F041E62640Da3571F414a01413DB3 +0xa6b4669f8A6486159CbeC31C7818877D1C92FB23 +0xa720e16e2B197831805b3b3b0581220e943E9334 +0xa73329C4be0B6aD3b3640753c459526880E6C4a7 +0xA708F334E561292319769adf0cAeC89feA3aee80 +0xA73Bcfb3129B8350E02c05447fe1B30f677AeB7f +0xa752EeA12f7ecAA7674363255e5e7F0B083a515C +0xa75b7833c78EBA62F1C5389f811ef3A7364D44DE +0xa7B9F667B3EC5b42b93D113055dFcd31f88caD53 +0xa76B0152fE8BC2eC3CbfAC3D3ecee4A397747051 +0xA7e3feD558E81dAb40Cd87F334D68b0BF0AB3fD6 +0xa7b80091Cec94643794427Ef9b072e65BF93061B +0xa7Dcc417c63F24F9073b667A5d7149bD38463d0F +0xa80383f17A92B110921C07Fb5261798f3A99377f +0xA86C58012d2e3f6fC2af244c96A5FA461BF2605b +0xA853A60b728B8Ccd5E228B7E6045B826cd6eEB0C +0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2 +0xa82240Bb0291A8Ef6e46a4f6B8ABF4737B0b5257 +0xa87b23dB84e79a52CE4790E4b4aBE568a0102643 +0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E +0xa89c9579bB1A22b6e56a2fb6a4F716E55900f966 +0xa8eE3e3c264d6034147fA1F21d691BaC393c7D94 +0xA9214877410560B17560955Ca84eABdE4E30DcCA +0xA92b09947ab93529687d937eDf92A2B44D2fD204 +0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34 +0xa97aCe835947C7890B6cE4bC8BB35c3216771f1f +0xa9b13316697dEb755cd86585dE872ea09894EF0f +0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c +0xA97C4418AB7f4c3fC33376D9A8954d18D8953910 +0xAa2831496F633b4AEbe2e0eb5E79D99BC8E1Ae4D +0xA9Ec7aB90eCDE9E33FC846de370a0f2532d513be +0xAa24a2AB55b4F1B6af343261d71c98376084BA73 +0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7 +0xAa4f23a13f25E88bA710243dD59305f382376252 +0xaA1B990CaFbE75051aBfbEa97902df632A0C7313 +0xAA790Bd825503b2007Ad11FAFF05978645A92a2C +0xaa5E95a4935A57b7CdaD972Dd368ea6BBd2908a1 +0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc +0xAB86AB01AFc0EAC264675A77dFB111F05CF7d6A1 +0xab557f77Ef6d758A18DF60AcfaCB1d5feE4C09c2 +0xaB13156930AB437897eF35287161051e92FC1c77 +0xAb56dA5518E70688A1FE993c11E56497a8a207d2 +0xaAB4DfE6D735c4Ac46217216fE883a39fBFE8284 +0xaBA9DC3A7B4F06158dD8C0c447E55bf200426208 +0xABBb9Eb2512904123f9d372f26e2390a190d8550 +0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732 +0xab31Ea5ab64539516d4a690c05075C191f2626cE +0xAbe1ee131c420b5687893518043C5df21E7Da28f +0xAbD456D341e426777795281041Dc5E5dd7b62677 +0xaBcB8BBDe9cbB670F53de7aBA42cf4143dC5E552 +0xABC508DdA7517F195e416d77C822A4861961947a +0xAbBf4737089AD6FF18c74A53BBe92C04A44d517b +0xAcdceB490C614fA827C4f20710ee38E6b27d0EB2 +0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B +0xAD503B72FC36A699BF849bB2ed4c3dB1967A73da +0xaBe78350f850924bAfF4B7139c17932d4c0560C5 +0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0 +0xAD7bBd9E7fbCdbf80199e940d0A8a6f2D690457d +0xaCc53F19851ce116d52B730aeE8772F7Bd568821 +0xAE4b17De773a35c4fAe98A8Fa10751dD7A657b58 +0xaD97723418aef1061Fc9EBBd04CCFB119734b176 +0xAE94Fc8403B50E2d86A42Acc6565F8e0fa68A31B +0xad84B020432c8c95940C17f30Eb6642580301478 +0xAeB9A1fddC21b1624f5ed6AcC22D659fc0e381CA +0xaD699032a6C129b7B6a8d1154d1d1592C006F7D2 +0xae6288A5B124bEB1620c0D5b374B8329882C07B6 +0xAEdd430Db561575A8110991aE4CE61548e771199 +0xaed7Ae5288DB82dB2575De216eDC443bC8764a07 +0xAED278C323a13fD284C5a40182C1aA14d93D87a4 +0xaef29B25E1235E52D592a50d1FF05e60792C9552 +0xaf0acd71df2e5f3d637eaD63fe3FE3420eEC43C7 +0xAf0aF5A4A7B3e26359696ebC3D40cDb98f832376 +0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758 +0xafaAa25675447563a093BFae2d3Db5662ADf9593 +0xb0010aB3689B80177fF49773F1428aC9a0EDdfa0 +0xAfdCc3033Dbd841D0bBFbD59600EF7f487CD1f0a +0xafF33b887aE8a2Ab0079D88EFC7a36eb61632716 +0xaFB19e242b8dD9C3991323293Ef9f9f91F2c6365 +0xaf7B5d7f84b7DD6b960aC6aDF2D763DD49686992 +0xaff56375f84a49Af2427c386c9c59895a4841DCB +0xb02f6c30bcf0d42E64712C28B007b85c199Db43f +0xb077cBD6a097D65835a7F78FDd93f0F4325B5C40 +0xb0ce2cC07Bb9bEa2Ab381d9Ede11CB2136D15e28 +0xB06fF7d5560f213937fC723CC65366415B7821bd +0xb13c60ee3eCEC5f689469260322093870aA1e842 +0xB0dAfc466871c29662E5cbf4227322C96A8Ccbe9 +0xB14d2eEf8df1a3C51C2c1859e10324efb58c96b6 +0xB14b20138023b5B9692df1920A6f5F5d341C1666 +0xB1794ae7649C969BFA7C1c798FD90357f4224dC0 +0xb1bB137f6f2778008616cd9fE4C30Bb87C9C9616 +0xb1821263a27069c37AD6c042950c7BA59A7c8eC2 +0xB172de5C47899B7d1995549e09202f7e78971ACf +0xB1fe6937a51870ea66B863BE76d668Fc98694f25 +0xb1FEE9761555Fa7Fe548f8C56B47CE97d61270F9 +0xb1cE37aa1F51aB7E2dB1dB783A4E666389c5F2a3 +0xb1D47D39c3BB868E5E4Be068b7057D4CAaD0b31C +0xb26B4A4BBA425aC28224cFDd45B4Bd00C886cC33 +0xB2268E1FBCA5049A173ACCf882298cA4FbfB02AC +0xb2A147095999840BBcE5d679B97Ac379a658BFb9 +0xB33CB651648A99F2FFFf076fd3f645fAC24d460F +0xb2e5F0C8932A5eb5e33c18963346300Eb5496a9f +0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106 +0xb338092f7eE37A5267642BaE60Ff514EB7088593 +0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B +0xB345720Ab089A6748CCec3b59caF642583e308Bf +0xB34E6A3e475eA55A71c3f2272Ba84c0044397568 +0xB406e0817EE66AD8c9d8389bb94b4ED50c101431 +0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88 +0xB44D289543717a3723cD47b2E9b71d3Dd5Ff68c5 +0xB454F20d38c0Bc020E18bDa03898904DCA77A38a +0xB463e599931d865Ad8426a7EeE93b36Fd5B0813a +0xB4a91ac1D081573a0a3EbE9C2c06827D6D7037e3 +0xB4B04564f56f4795EA4e14d566aF78dA54a99980 +0xb54f4f12c886277eeF6E34B7e1c12C4647b820B2 +0xb53031b8E67293dC17659338220599F4b1F15738 +0xb4fbd802d9dc5C0208346c311BCB6B9ECFF468C6 +0xB54099Bd341f0b16aCF27a41BC4b616b5bA70f49 +0xB5d0374F0c35cF84F495121F5d29eA9275414dE8 +0xb57Fd427c7a816853b280D8c445184e95Fe8f61A +0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393 +0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277 +0xb6390d56cBe8F93123f5923B5C1D9eEc6F7539f9 +0xb63050875231622e99cd8eF32360f9c7084e50a7 +0xB58A0c101dd4dD9c29B965F944191023949A6fd0 +0xB65a725e921f3feB83230Bd409683ff601881f68 +0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6 +0xB70e3a9573AE3De81f15257b1d5a0f20847De138 +0xb70c92bfFD28095E36010c5A46901929c32810E4 +0xb66924A7A23e22A87ac555c950019385A3438951 +0xB72Ec053479Efc9f4264c4c84D96eB348b7a0453 +0xb620CB571778F22829709c54F27656810eBd6436 +0xB73a795F4b55dC779658E11037e373d66b3094c7 +0xb78afC3695870310E7C337aFBA7925308C1D946f +0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D +0xB788D42d5F9B50EAcbF04253135E9DD73A790Bb4 +0xB7B104178014F26739955526354f6e0EA9Ccb19b +0xb80A3488Bd3f1c5A2D6Fce9B095707ec62172Fb5 +0xb78003FCB54444E289969154A27Ca3106B3f41f6 +0xb7f6f6BCd3856032b2D9F6681bE4DCd1cbfF9823 +0xB7e04F8E9b5d499DAd4E1a07EB084f3863877E5f +0xB825c207600aDfD3fB23fEcE0b90AEFD4A017Fa8 +0xb833B1B0eF7F2b2183076868C18Cf9A20661AC7E +0xB84905a37A372d3FaB5106ef7fA6C39f8b5B8ADF +0xB81D739df194fA589e244C7FF5a15E5C04978D0D +0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B +0xB8C76836e4138e1293A4Fa9e1904ABEB00d7e892 +0xb9488BB4f6b57093eAa9a0cf0D722Ed61E8039aC +0xb8C78C587B6c460DC57F416F54b279A722867907 +0xb95A01D3B437c57631231bF995ca65678764b2E8 +0xB9A485811c6564F097fe832eC0F0AA6281997c7c +0xBa4ea38e1A2cE2BD3C59D116e79704f025795897 +0xbA208F8Ba2fa377dfa9baE58A561D503C3F4d96C +0xba121d80C8Cac15fc960BdEe1B0Af7Eea9084526 +0xBA682E593784f7654e4F92D58213dc495f229Eec +0xbAb04a0614a1747f6F27403450038123942Cf87b +0xBA1b1F951ec6eb3c938197F04310951c180D7929 +0xBAe7A9B7Df36365Cb17004FD2372405773273a68 +0xbA9d7BDc69d77b15427346D30796e0353Fa245DC +0xBB05755eF4eAB7dfD4e0b34Ef63b0bdD05cce20A +0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202 +0xBb02C110452Ae7aB8eb369b77Ad65bB6C18B4361 +0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1 +0xbb257625458a12374daf2AD0c91d5A215732F206 +0xBB4946EeA34a98b2C0e497Cb7F8F3af83311B2AF +0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711 +0xBB8772b75E93204dE7462f19100F7e17C43b263d +0xBbAf0A1CB78E8Ae403244108fbdd0935C201b3Ca +0xBB8FB8fE5198f25D117C0e7B1b9C8260CB19C3C0 +0xBBd0035918b59Ba77f4F0002592b2E4726055659 +0xBBD189593331b2538e9160D28720D4e3E20812FB +0xbbD78233f019E3774bAA601B613ceA31bBddD4bf +0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6 +0xbC07B76e4C63E7B91c6E0395312D88D20449b106 +0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB +0xbbe67B46f6AE629Eb469372a44F338fFc182509f +0xbC3A1D31eb698Cd3c568f88C13b87081462054A8 +0xBC9209c917069891F92D36B5E7e29DCaC5E1D5A2 +0xBcA1387717b3B1a749147eb59D3B33abe1b9D8a9 +0xBd03118971755fC60e769C05067061ebf97064ba +0xbb2C53B8C42A5E3831E1ca5f97F0834Bf8aE7D77 +0xbCC44956d70536bed17C146a4D9E66261BB701DD +0xbD50a98a99438325067302D987ccebA3C7a8a296 +0xBD2a648B9b820B46EFf6De2FbA1cA3aAc0A82804 +0xBd80cee1D9EBe79a2005Fc338c9a49b2764cfc36 +0xBD874A4e472AEc2777a137788A0c7cC1e043E8D7 +0xbDBeAe01C79bA57B5AF0195bF9dFFD082a79C372 +0xbd8Ff52F1CB6c47FdF8A7997b379aDb6e04618c7 +0xBE588f2f57A99Ca877a2d0fA59A0cAa3fFBFD4eb +0xbE525d35A9270c199bC8d08e5bEb403C221F18e5 +0xbdE492A572392AbeB47123b2336C358D9F5d7C3E +0xbE8e93FF17304Ba941131539EFe6bE8e3df168aF +0xBe9E8Ec25866B21bA34e97b9393BCabBcB4A5C86 +0xBe289902A13Ae7bA22524cb366B3C3666c10F38F +0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A +0xBe41D609ad449e5F270863bBdCFcE2c55D80d039 +0xbed17F511084FFEfCa09250886C1Fd77fA6A29A7 +0xbedBA1CDbD51689cEc0F2428333F30C2223aD3aB +0xbd0D7F2115C73576464689883Ce7257A3b4D8eC4 +0xbefD31181229b7D34532344E38899e0fEa750818 +0xbf30551890776159B0a38E956cEEed296CbAA720 +0xBf3dBc90F1A522B4111c9E180FFAf77d65407E3e +0xBF4C73F321fB81816EeAaDE11238B9Ba480356f3 +0xBf4Aa57563dB2A8185148EC874EA96dff82CeB13 +0xBf68f1CE39Ed3BD9B20944260AA678bB934D164b +0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD +0xbf8A064c575093bf91674C5045E144A347EEe02E +0xBFc87CaD2f664d4EecAbCCA45cF1407201353978 +0xbfF54b44f72f9B722CD05e2e6E49202BA98FE244 +0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e +0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2 +0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb +0xc06320d9028F851c6cE46e43F04aFF0A426F446c +0xc08F967ED52dCFfD5687b56485eE6497502ef91d +0xBF912CB4d1c3f93e51622fAe0bfa28be1B4b6C6c +0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B +0xc0985b8b744C63e23e4923264eFfaC7535E44f21 +0xC0eB311C2f846BD359ed8eAA9a766D5E4736846A +0xc07fd4632d5792516E2EDc25733e83B3b47ab9aa +0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8 +0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04 +0xc10535D71513ab2abDF192DFDAa2a3e94134b377 +0xc1146f4A68538a35f70c70434313FeF3C4456C33 +0xc16Aa2E25F2868fea5C33E6A0b276dcE7EE1eE47 +0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D +0xC0f55956e8D939D979b8B86a8Ae003D9CD9713ae +0xc18676501a23A308191690262bE4B5d287104564 +0xC1877e530858F2fE9642b47c4e6583dec0d4e089 +0xC19cF05F28BD4fd58E427a60EC9416d73B6d6c57 +0xc1CaAbC760f5fDf28c7E50E1093f960f88694E3e +0xc19447d62b924eFC029278d2e80db587944BbcD7 +0xc18BAB9f644187505F391E394768949793e9894f +0xC1CeDc9707cAA9869Dca060FCF90054eA8571E42 +0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d +0xC1F841e806901cAc37dFE36cA63b849cee757b8F +0xc1f3eBe56FE3a32ADAC585e7379882cf0e5a6D87 +0xC1e607B7730C43C8D15562ffa1ad27B4463DC4c4 +0xc1F80163cC753f460A190643d8FCbb7755a48409 +0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F +0xc22846cf4ACc22f38746792f59F319b216E3F338 +0xc207Ceb0709E1D2B6Ff32E17989d4a4D87C91F37 +0xc2352B1bb2115074B4C13a529B2C221E118D9817 +0xc240D9f8d38F2bE93900C5e5D1Acc10D2CC7AbAc +0xC2820F702Ef0fBd8842c5CE8A4FCAC5315593732 +0xc2ac0d788A6C574a76Ded79b9373679850C2678f +0xc31eD6608Afb1F7ABd8a4EE524793F60876b5b66 +0xC327F2f6C5Df87673E6E12e674bA26654A25a7B5 +0xc372958093939625d7d97e3319089CEC308d36E1 +0xc32e44288A51c864b9c194DFbab6Dc71139A3C4d +0xC343B82Abcc6C0E60494a0F96a58f6F102B58F32 +0xC37e2C0D1d60512cFcBe657B0B050f0c82060d1b +0xC3853C3A8fC9c454f59c9aeD2Fc6cfa1a41eB20E +0xC3D18115E5107c6259439400EC879cDAA1BF8f44 +0xc46C1B39E6c86115620f5297e98859529b92AD14 +0xc459742d208ee4ddBA82Ac03DbCbfa3Fc7eDBa22 +0xC45d45b54045074Ed12d1Fe127f714f8aCE46f8c +0xc47919bbF3276a416Ec34ffE097De3C1D0b7F1CD +0xC4B07A842e0068A95c3cd933e229348e6d794279 +0xc428a5eec605FDA02Af8083ad1928b669B81957c +0xC4f842B2Ed481C73010fc1F531469FFB47EE09e9 +0xc4C09325007915ce44B9304B0B0052275D8422B0 +0xc516f561098Cea752f06C4F7295d0827F1Ba0D6C +0xC4FF293174198e9AeB8f655673100EeEDcbBFb1a +0xC4B07F805707e19d482056261F3502Ce08343648 +0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F +0xC52A0B002ac4E62bE0d269A948e55D126a48C767 +0xC555347d2b369B074be94fE6F7Ae9Ab43966B884 +0xc5FB51E68d2753Fd484b7f99a13C8E746720C6aC +0xC56725DE9274E17847db0E45c1DA36E46A7e197F +0xC5e71bEc66D0E250A642bdE8aa3C47B1B605Dd53 +0xC579176ddB061a5DE727467d83B30A1bf219a041 +0xC5581F1aE61E34391824779D505Ca127a4566737 +0xC5f9a15832745b00b8fFCD4F2b6857999C725aC0 +0xc63cEe16AB67BDb10eB12fcB611C7e6a9D361dc6 +0xC64d472Cc19c2A9Fae649eC2DcDcff87ca94F7De +0xC65F06b01E114414Aac120d54a2E56d2B75b1F85 +0xc6302894cd030601D5E1F65c8F504C83D5361279 +0xC6c2A697E27242B3Ba5A393f304b64A27040E006 +0xc6DDfC6733a8874882FDE1D217d69BA522208B52 +0xC6e76A8CA58b58A72116d73256990F6B54EDC096 +0xC76d7eb6B13a8aDC5E93da2bD1ae4309806757c6 +0xC725c98A214a3b79C0454Ef2151c73b248ce329c +0xC77FA6C05B4e472fEee7c0f9B20E70C5BF33a99B +0xc73E258784A41D10eE5823C12e97806551bc8eeC +0xc6Ee516b0426c7fCa0399EaA73438e087B967d57 +0xC799cC1E009ac2bEb510a8D685F385ac4d693fed +0xC79Dafd2eEb336f524CF986fb7bc223F23f4db5B +0xC79Dc50233C12518c427587Bd88bD881239CD7b4 +0xC6AC7c7aCabc3585cfE16478fd4D22C1E8dC3c57 +0xC7c5a25141dfBB4eb586c58fE0f12efd5f999A2B +0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9 +0xC7B42F99c63126B22858f4eEd636f805CFe82c91 +0xc7f1916b741A7966Bd65144cb2B0Ba9eD1B29984 +0xC852848A0e66200ce31AD5Db9cE3bC5d53918112 +0xC83F16A4076a9F73897f21Ac9E9663c23D35743c +0xc84C19Bbf07d0CB7CC430fC3C51173c4ACD5dD9D +0xc896E266368D3Eb26219C5cc74A4941339218d86 +0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40 +0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1 +0xC7ED443D168A21f85e0336aa1334208e8Ee55C68 +0xC8801FFAaA9DfCce7299e7B4Eb616741EA01F5DE +0xc83746C2da00F42bA46a8800812Cd0FdD483d24A +0xC89A6f24b352d35e783ae7C330462A3f44242E89 +0xc90923827d774955DC6798ffF540C4E2D29F2DBe +0xC95186f04B68cfec0D9F585D08C3b5697C858fe0 +0xC8a405aAD199C44742a1310c5a0924E871733cCb +0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b +0xc95Fe87a9D376FA1629848E22B7d2726529a2921 +0xc970De1aFB9BC5b833d1AcDb3d43AEeCf6A4343B +0xC9D2565A86f477B831c7C706E998946eCF2123F3 +0xC9F7a981fF817d70F691cDbdCB43a418b2dBa59B +0xc9e4d54c9156ad9da31De3Cd3f2a38edAA882c3B +0xca2819B74C29A1eDe92133fdfbaf06D4F5a5Ad4c +0xCa11d10CEb098f597a0CAb28117fC3465991a63c +0xCA754d7Fc19e0c3cD56375c584aB9E61443a276d +0xcA210D9D38247495886a99034DdFF2d3312DA4e3 +0xcb1Fda8A2c50e57601aa129ba2981318E025F68E +0xCaf0CDBf6FD201ce4f673f5c232D21Dd8225f437 +0xcB1667B6F0Cd39C9A38eDadcfA743dE95cB65368 +0xcb26ea9b520c6D300939A9D5B94308CD77484A6f +0xca4A31c7ebcb126C60Fab495a4D7b545422f3AAF +0xCB85C8f60a34D2cB566CC0b0ce9e8Fd66C2d961F +0xCBbdcE7E539916630936453dfBd1CBCb82d414BF +0xcA968044EffFf14Bee263CA6Af3b9823f1968f37 +0xCbC961DFfa3174603D39d026a62a711A42cb9c77 +0xcC1a8576F7e75398a390A147DA1fbe683C2A9587 +0xCba1A275e2D858EcffaF7a87F606f74B719a8A93 +0xCc71b8a0B9ea458aE7E17fa232a36816F6B27195 +0xCC65fA278B917042822538c44ba10AD646824026 +0xCc9F072657F3B4208bcDA2BdDefe93Ac6849F8D6 +0xcCbc56e1D30DBAaB70B013872Dbc7d773A9E54fB +0xccbfB8e76153b8FEA7EB7BBD66f1AAaAE314D65F +0xcc2596D30702141f438c3d8bE8Bb9f81A9a4526C +0xCCF00d42bdEA5Fff0b46DD18a5e23FC8ac85a4AA +0xcD181ad6f06cF7d0393D075242E9348dB027d62b +0xccF24a88a98312a508945aa0C7179C446FA43980 +0xCbD6b0DeE49EeA88a3343Ff4E5a2423586B4C1D6 +0xCD862100C54AC82b965cc54BFE1bf80CfefC0FD7 +0xCE1Ef18B8c756E2A3bf24fF86DF3e2a4a442691e +0xcD6bA060694CFD27C17F23719de87116CbfE6107 +0xCd1d766aa27655Cba70D10723bCC9f03A3FE489a +0xcd5561b1be55C1Fa4BbA4749919A03219497B6eF +0xce66C6A88bD7BEc215Aa04FDa4CF7C81055521D0 +0xcE0218C4fB63Ee56ddDbe85F0ECA06c6f996Ead6 +0xce6d8374E58CDd4CA173c0B497aB91dA9A334078 +0xCE91783D36925bCc121D0C63376A248a2851982A +0xCF0dCc80F6e15604E258138cca455A040ecb4605 +0xCf2d231881E16365961281ec9D8b7B51A4044ABb +0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0 +0xCf1e4c0455E69c3A82C2344648bE76C72DBcDa06 +0xcf25F663954157984d9915e9E7f7D2f1ef860f5c +0xCBE203901E2F3CA910558Efba39a48Af89e3c558 +0xd03c52B3256b5e102ce4BF6bB53d4Be9d9963838 +0xCfCdCdE4D1c654eD980B4B3f6ff782194b3Aa666 +0xcfd9c9Ac52b4B6Fe30537803CaEb327daDD411bB +0xcf6b8a78F5Ddf39312D98Aa138eA2a29E5Ad851f +0xD00fB8efFeE21177df7871F285B379Bb03d8A8b5 +0xD03EA0A5e6932fa79b2802E33d6aBFA9D604Ee35 +0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a +0xD0EC7D77eB018ca3789d5d1672705aAa1672d6f3 +0xD047B65f54f4AA8EaE6BB9F3D9d5D126FE722b9F +0xd0fA4e10b39f3aC9c95deA8151F90b20c497d187 +0xD0988045f54BAf8466a2EA9f097b22eEca8F7A00 +0xd116EC51cEd0a7A49BEA6555f90872752448D8Bc +0xd0932CEfBB20cBf5404D8f44CD63E7fF2bd33A29 +0xD12570dEDa60976612Eeac099Fb843F2cc53c394 +0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0 +0xD15B5fA5370f0c3Cc068F107B7691e6dab678799 +0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691 +0xD1818A80DAc94Fa1dB124B9B1A1BB71Dc20f228d +0xD1C5599677A46067267B273179d45959a606401D +0xd1BB2B2871730BC8EF4D86764148C8975b22ce1E +0xD286064cc27514B914BAB0F2FaD2E1a89A91F314 +0xd2aa924591B370a78e022763B82ddcC711D4f2f7 +0xD14f924DE730Bb2F0C6E5B45b21b37468950a2fF +0xD2594436a220e90495cb3066b24d37A8252Fac0c +0xD2aC889e89A2A9743Db24f6379ac045633E344D2 +0xD1F27c782978858A2937B147aa875391Bb8Fc278 +0xD2bd78E6e96c98265725f02cEbC35232308c5031 +0xD2D276442051e3a96Ce9FAD331Cd4BCe87a65911 +0xd368266f4e53b9e00147c758deD2eE063591F9A8 +0xd2D533b30Af2c22c5Af822035046d951B2D0bd57 +0xD2F1BBfbC68c79F9D931C1fAD62933044F8f72c8 +0xd2F2f6b0F48e7a12496D8C9f7A2C18e6b76e49e0 +0xD360EcB91406717Ad13C4fae757b69B417E2Af6b +0xd30eB4f27aCac4d903a92A12a29f3fe758A6849c +0xd3765592d1bbFC7ec04E9011861D75B07a3c935b +0xD379e6E98099A6C8EE68eaBe356a5BB8E0Df6AC7 +0xd3F0862E4AcEf9A0c2D7FC4EAc9AB02c80D7b16c +0xd3c1E750b5664170f4aF828145295B678BAFD460 +0xd3e0Ef0eBB7bC536405918d4D8dBDF981185d435 +0xD441C97eF1458d847271f91714799007081494eF +0xD497Ed50BE7A80788898956f9a2677eDa71D027E +0xd45aCCF4512AF9cEAC4c3ab0e770F54212CDF9Ac +0xD4B5541B7d82C6284e54910aB6068dC218Da1D1C +0xd43324eB6f31F86e361B48185797b339242f95f4 +0xd45EFb53298814b63B0d06A06237c22e3191eF19 +0xd3FeeDc8E702A9F191737c0482b685b74Be48CFa +0xD4ccCdedAAA75E15FdEdDd6D01B2af0a91D42562 +0xd4BB9cc352AB9b8965A87Bde35508695B09d40fb +0xD4Da752Db1C3fafbF17456D6aA4a6CE1259372a8 +0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709 +0xD4e92D4Ae3CbE3D1fC78883D53929e44c994d9eB +0xd53Adf794E2915b4F414BE1AB2282cA8DA56dCfD +0xd582359cC7c463aAd628936d7D1E31A20d6996f3 +0xD567BEdb9EAe1DB39f0e704B79dF6dF7f846B9B0 +0xd5aE1639e5EF6Ecf241389894a289a7C0c398241 +0xd5d9aC9C658560071c66385E97c7387E7aeeB916 +0xD5eFa6Ce5E86C813d5b016ABd10Bf311648D9FE8 +0xd608fBbb6D5B1149aD5F0F741f96C1a4D0676189 +0xD5Eedc95A91EBEFf9a23119e16aBCbBcD2773b54 +0xd61296bc2FEaE9Ed107aB37d8BAF12562f770Bd5 +0xD5Fe199029ee4626478D47caE4F6F68CEa142c4C +0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427 +0xD6626eA482D804DDd83C6824284766f73A45D734 +0xd653971FA19ef68BC80BECb7720675307Bfb3EE6 +0xD66DcFf7D207Dd5C5D7323d99CC57d00Fa92D4ea +0xD6921D0110D6A34c647fD421d088711ae2577D26 +0xd67acdDB195E31AD9E09F2cBc8d7F7891A6d44BF +0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3 +0xD6e91233068c81b0eB6aAc77620641F72d27a039 +0xD6ff57479699e3F93fFd68295F3257f7C07E983e +0xd722B7b165bb87c77207a4e0e690596234Cf1aB6 +0xd742f773C69eB8bc3BE9eB8452aab0565d80e746 +0xd77749Dc29CDa028bbcdbAEe9fb04990FA387Fa3 +0xd72C0Bc5250c8F82E48BE46aD5f65bB5891483a0 +0xD87bc009C1Fd2d29A3f1dDF94e6529dEC1aFD7D3 +0xD72eD8B43368BEdC2AddE834Dd121c22B1B30130 +0xd7748567c0ad116Cf84b70Ec52eBD4f6A7c346FD +0xD7Fca6b7F0dD2C18E85a77b18a5e7aa6E1EBB445 +0xD71dB81bE94cbA42A39ad7171B36dB67b9B464c6 +0xD79e92124A020410C238B23Fb93C95B2922d0B9E +0xD87fDB14ceb841F1F38555af1F39bdfFF003CAC9 +0xd885881F6928Af7D3549c5D37908DF673D83568F +0xD8CbcFFe51B0364C50d6a0Ac947A61e3118d10D6 +0xd8d9320Ba876eAc0f5BF9001aE2dC4473630EE5c +0xD93cA8A20fE736C1a258134840b47526686D7307 +0xD93eC7e214C50FE64050d0A88002942f0E242659 +0xD8E7f213956d19d5eE7df4c9B00eE3F5D3DC79B2 +0xD8c84eaC995150662CC052E6ac76Ec184fcF1122 +0xd959d4C2d90FD2F291A71Bf923DA24E374E1Ef07 +0xd8fC2eC57805817AaEe62FF23f4f07C16AF730E5 +0xd94c1BEF5975C5eaa57989bb5E149BcAC6e4e41E +0xd9A859A420ddf413FbfCBC10bB7e16d773839004 +0xD970Ba10ED5E88b678cd39FA37DaA765F6948733 +0xd980C07d4Ab9F14bf80a04297f7c6F41604D060B +0xD9E886861966Af24A09a4e34414E34aCfC497906 +0xd9dFfbF57621be31A157F696E464cc729FDc0E64 +0xd9C6b4d5253EDb3675d4377FE676552Bc7D704d7 +0xDA7Ece710c262a825b4d255e50f139FA17Fd401F +0xDa8C9D1B00D12DdF67F2aa6aF582fD6A38209b39 +0xDaA95A36D6CbD4E58A89253d3A19E26b067960C7 +0xDb18957bE8fb364E2F293E7cA6e689Dc55991688 +0xDB23905E09bc6934204991f02729392a11eEd8F8 +0xdAe3b4E9bA2F1bd8da873B7dd5a391781a8C1Ae4 +0xDb599dAA6D9AFB1f911a29bBfcCEdbB8E51c9b0c +0xdb215bA8D9bed3aACE91E23307Caa00A8c9211f1 +0xdBab0B75921E3008Fd0bB621A8248D969d2d2F0d +0xdB4fBc231F1D2b3B4c3d9e1602C895806fb06278 +0xdbc098E0E692ac11Da95166cd9D22c47A05cD8b8 +0xdb4f969Eb7904A6ddf5528AE8d0E85F857991CFd +0xdb59f54F833Ee542Ab4f99Cb3Cdd66CD1Aa7b318 +0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661 +0xdbD721c163a58a339C9b291EEAE012F904b0E06d +0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D +0xdbeDB1B7d359b0776E139D385c78a5ac9B27C0f9 +0xdC421f6599E483E98C460694Bb5B04bfB42FfDdb +0xDC50cB21557c8A1F1161683FC2ec4Cf5829ef50C +0xDC5d7233CeC5C6A543A7837bb0202449bc35b01B +0xdbe95598aAf4ab9A68378FFB64b24e3126F346A6 +0xdC6a5B3DA5C6c4cA0204Bac74654bE877eebeC04 +0xdC5f4CE4520fFdF54d8D1c0E71A01DbBaa11fcD8 +0xDd689D6bE86e1d4c5D8b53Fe79bDD2cA694615D9 +0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8 +0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78 +0xDD11460317C683e4057E115eB14e1C9F7Ca41E12 +0xDe06264c6746b5A994F7499012EC9feC181D01E5 +0xde1b617d64A7b7ac7cf2CD50487c472b5632ce3c +0xDe8589960DA34eeFB00Ca879D8CC12B11F52Cb12 +0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f +0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0 +0xDeb2a3547A13176719F006DB6c3886f90bAB323E +0xdEb5b508847C9AB1295E83806855AbC3c9859B38 +0xDEA7BE57c300Cfd394A9FA91b477D7127b01538e +0xDF8F82536c34a86FDa65BcEF40CB6A1d2fAD96C5 +0xdfdF626Cd38e41c6F3Cc72B271fe13303A224934 +0xdf39603397764512b6147740CAD2ea669BfC3fFa +0xdf044c7889935cCf0BD7a5D018E7e1e84000e4EB +0xdEBA22ef671936a5CB3964C8469fDC32cF745C0a +0xDc4F9f1986379979053E023E6aFA49a65A5E5584 +0xDFc6b16343F92c1347B6E9700aA6c5d9E34794A1 +0xdedDEC0472852b71E7E0bD9A86D9a09d798094D0 +0xe031B10E874FaE6989359cdE6f55fcBCF2bA2ffd +0xE02A25580b96BE0B9986181Fd0b4CF2b9FD75Ec2 +0xdff24806405f62637E0b44cc2903F1DfC7c111Cd +0xe0842049837F79732d688d0d080aCee30b93578B +0xe105EaC05168E75657fb7048B481A17A53AF91E8 +0xE0f61822B45bb03cdC581283287941517810D7bA +0xe07e76714497eB8c3BB237eE5002C710E392b5A9 +0xe0B54aa5E28109F6Aa8bEdcff9622D61a75E6B83 +0xE12857955437543CacacC51AB6970A683eFE859c +0xe16CDF494e2BA063909b3073c68Bf57d869EfCd6 +0xE146313a9D6D6cCdd733CC15af3Cf11d47E96F25 +0xE1e98eAe1e00E692D77060237002a519E7e60b60 +0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41 +0xE203096D7583E30888902b2608652c720D6C38da +0xe1762431241FE126a800c308D60178AdFF2D966a +0xe21274B5c4cB75830F79d3A0dc38e7Ee49EC5b17 +0xe1D86a7088d05398A2B9bA566bE0b3C5ffa5D9aF +0xE218aF09CC357A5Cee1b214B262060fC314048A4 +0xE2CDf066eEe46b2C424Dd1894b8aE33f153F533C +0xE2CfBA3E0a8CE0825c5cbeFdc60d7e78cC35AaF3 +0xE2bDaE527f99a68724B9D5C271438437FC2A4695 +0xE30fBc19d251532824d86e900f52eEb95cD37EB3 +0xE2EdD6Ba259A7a7543e76df6F3Eab80154Ff7982 +0xe1d045be479CE7127186896A0149aaC7137b455E +0xE3A2Ad75e3e9B893c8188030BA7f550FDfEeadac +0xE3b2fC5a80B80C8F668484171D7395e3fDE76670 +0xE382de4893143c06007bA7929D9532bFF2140A3F +0xe3B78e510c3229d2Fc48918621817DC87288EBa1 +0xe40617fd297164db4A57D72Ba507968216522f75 +0xE3D47BeCcb31D105C149B37A9486d945Cca1E469 +0xe3a08ccE7E0167373A965B7B0D0dc57B6A2142f7 +0xE44E071BFE771158a7660dc13daB67de94f8273c +0xE432225AB3A24D0328c1eb8934f12C2C664dBF1E +0xe43e06794069FeF7A93c1Ab5ef918CfC65e86E00 +0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6 +0xE46523509280267d4785cFcF89eba8F3cbD96267 +0xe4a7CE553722E3879Ff8d00A3A11A226414644e0 +0xE45D85B382EFd7833Da1B8CAB53B203D22340b1a +0xE463d56e80da7292A90faF77bA3F7524F0a0dCCd +0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74 +0xe4BF6E1967D7bc0Bd5E2C767c3A2CCAdf23446df +0xE558619863102240058d9784a0AdF7c886Fb92fC +0xE543357D4F0EB174CfC6BeD6Ef5E7Ab5762f1B2B +0xe591F77B7D5a0a704fEBa8558430D7991e928888 +0xe58000ce4dd92a478959a24392d43D4c100C85Fd +0xE58E375Cc657e434e6981218A356fAC756b98097 +0xe596607344348723Aa3E9a1A8551577dcCa6c5b5 +0xe693eB739c0bE8c2bDD978C550B5D8b8022A8adA +0xE64995F539Ad9ddFAEac0C759244B26e0Eb94313 +0xe5eB46c6fdDb202CE7c1aa4CF3951F09F6ad00F3 +0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14 +0xe6a54e967ECB4E1e4b202678aED4918B5c492926 +0xE6C459B2d9e8EafD205b74201Ce1988B28Bd2a1F +0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0 +0xE6F00dDe5F7622298C16A9e39b471D1c1c2De250 +0xE7a9c882C15288E8FaDd3f84127bF89b04dF81b3 +0xe7BaF7Af12E6b18c8cdd32292c6F06840cF71442 +0xE8332043e54A2470e148f0c1ac0AF188d9D46524 +0xe8438502821Bfc888d26C8687BDafAE4b3ac0338 +0xe82c4470c22ECD75393D508d709f6476043be567 +0xe89791e429bd5f0D051548f6E7985F9ed3aF8220 +0xE874946c5876E5e6a9Fbc1e17DB759e06E3B3ffe +0xe886eCE8dEA22C64592E16CE9c6060C354e0cB46 +0xe846880530689a4f03dBd4B34F0CDbb405609de1 +0xe83120C1D336896De42dEa2f5fD58Fef1b6b9934 +0xe86a6C1D778F22D50056a0fED8486127387741e2 +0xe88a280b0434f0523c99455D2d6FB0E2E5BE088C +0xe8C148209ADD124eE57199991E90a3b829A136aA +0xe8B04a194d7710d55b2213EC21D489Fe93ce2E52 +0xe8e8D10D48Bb4761E30A1A0C3f5705788E2Cf5Ca +0xE95523f9fd968C64039538c2A4a0AD43a4904D15 +0xe8F65bFf630a1102e45C53D89183040a2Da27D36 +0xE8eA41F87Bbd365a3ec766e35ac4aC1d6A5E760a +0xe974785b3f313FABDaD9a353AA45508B38C8C469 +0xe9886487879Cf286a7a212C8CFe5A9a948ea1649 +0xe9c6f6D44C546CdD54231e673Ba8b612972cdD07 +0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29 +0xE9B05bC1FA8684EE3e01460aac2e64C678b9dA5d +0xE9ecBb281297D9BD50CF166ab1280312F9fA9e7C +0xe9F55fF0Ce2c086a02154E18d10696026aFC0E63 +0xeA47644f110CC08B0Ecc731E992cbE3569940dad +0xEa87392249D04f80069AD60fdd367374bE315782 +0xEAa4F3773F57af1D4c7130e07CDE48050245511B +0xEaFc0e4AcF147e53398A4c9AE5F15950332Cce06 +0xEB0BC725FfA2F9f968C6950dfFb236FF2f199d4D +0xeC22fB3817c8D0037Cf58EE2fd1f74403a58fe51 +0xEc51Ea752664C14FCC356be60CC143B5aCB81428 +0xEC5a0Dff55be882FAFe863895ef144b78aaEF097 +0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196 +0xec62e790d671439812A9958973acADB017d5Ff4D +0xEcFca03a9326541F69FF0210FB0CAfAdde935DE9 +0xEC4009A246789e37EA5278F5Cc8bF7Bc7f11A7D7 +0xEc89e2fc68D563595B82acBf1aaC1c7F1ECFe0dF +0xED02cbe1BeEa0891cCfC565B839a947c3d2fAb5C +0xED0f30677C760Ea8f0BfF70C76eaFc79D5f7C3c8 +0xeD131296C195a783d513EA8d439289f6Cf6295Fc +0xEd8440f3476073DF5077b5F97d34556fBd6c1AEA +0xEdc0D61e5FcDc8949294Df3F5c13497643bE2B3E +0xedC24C8a0B98715C4c42f23fA1a966D68d71DA40 +0xed30c5f7F9AA27CCCd35A2717aFCd30907748353 +0xeE55F7F410487965aCDC4543DDcE241E299032A4 +0xEE06B95328E522629BcE1E0D1f11C1533D9611Ef +0xEe20f85dD3f826700A6A42AF4873a04af8AC6D75 +0xeDC36b2972542c0813a7aBd2aE1bBb7750391907 +0xEe6cE216ceE9744BDc64cFB1c901d923d703b539 +0xeEA71D769BE2028A276BBb5210eD87d2962E1bAD +0xEeCD7796c92978a7E0e8F6754367F365E6e7E1fd +0xeE95e4cf086Fc80dF7Ae0F39DFC9EA53A3eAadcB +0xEEb07cbca1a7F360FA8a6Bff4ac6f1eF47bbb8a1 +0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee +0xEF488FB124D5028e81db9DCeBF683C1f997f73c1 +0xef5939492958abb8488ce5A5C68D61Ac29C07732 +0xeE7840DAC7C3ec2cCDe49517fd3952e349997aB5 +0xeF6c4192C8530A2502e153bDc2256dD72AB445e4 +0xef764BAC8a438E7E498c2E5fcCf0f174c3E3F8dB +0xeF78730Aff229Ca10084c81334d405EA1DfE7EC5 +0xef7ad5c1b7F18382176BCA305256b3766cE86007 +0xEf49FFe2C1A6f64cfE18A26b3EfE7d87830838C8 +0xEfA117fC408c83E82427fcc22A7d06302c542346 +0xef999424aC8D61f966fBA778b200ECc5B991633B +0xEf7D9be5A88aF3c6Bc4D87606b2747695485E50E +0xEfa4c696Ea2505ec038c9dDC849b1bf817d7f69d +0xeFcc546826B5fa682c4931d0c83c49D208eC3B84 +0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C +0xF024e42Bc0d60a79c152425123949EC11d932275 +0xefaA5fE183b7CBe2772fE4AC88831b7Aa6C37422 +0xF0062BD82a919f447dBBdE0D3768780F20Eff2c9 +0xF05980BF83005362fdcBCB8F7A453fE40B669D96 +0xF03C8c6A6aE736AB7089ffe1BbFF5428ec44d91C +0xF05A92dFDa1D3a1771597Ca37925aAC4b88C7C25 +0xf05b641229bB2aA63b205Ad8B423a390F7Ef05A7 +0xf13D26F5B891CC36C72Ea078Ee308423a873C08d +0xf086898A7DB69Da014d79f7A86CC62d29F84d7b7 +0xf13F7bF69a5E57Ea3367222C65DD3380096d3FBF +0xF1349Aa788121306c54109DB01abD5eB2f951ca0 +0xF14Ee792bb979Aa08b5c65B1069A4209159d13fE +0xF17722FFA53A2C57BDa1068a6890CDA8d6caF110 +0xf1AdA345a33F354e5BA0A5ba432E38d7e3fcaE22 +0xF1cCFA46B1356589EC6361468f3520Aff95B21c3 +0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d +0xF18507A3D7907F2FDa0F80ea74b92707F67E0bd9 +0xF1F90739858584CEC5F198C2c9926c1d6Bfeb1BB +0xf1db5C88Ac2b757e8B33F2E58E19CC55b3039898 +0xF230B3EDaD4bE957Cc23aB1e94024181f7df7aA4 +0xF1A621FE077e4E9ac2c0CEfd9B69551dB9c3f657 +0xF28AbB406EfBc933773789e69B505eEa8e6B6fCa +0xf287893Cd86b5f13c3a602f3C75B48E1b1aD5b0f +0xf286E07ED6889658A3285C05C4f736963cF41456 +0xf28E9401310E13Cfd3ae0A9AF083af9101069453 +0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5 +0xf295eCbE3cf6aB9fD521DFDF2B3ad296389d659F +0xF2cB7617c7cbcBCc1F3A51bfc6D71aE749df5d60 +0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e +0xF3659FA421DdC3517D7A37370a727C717Ce7855e +0xf2d67343cB0599317127591bcef979feaF32fF76 +0xF38762504B458dC12E404Ac42B5ab618A7c4c78A +0xf393fb8C4BbF7e37f583D0593AD1d1b2443E205c +0xF4003979abEbEf7dEdCE0FcB0A8064617ba1cb6c +0xF3A45Ee798fc560CE080d143D12312185f84aa72 +0xf476f6c0c97d088C3A1Ec2a076218C22EDFE018D +0xf39B2C3D35B9bC51C332151D76f236426cF87bBB +0xf3e9848D5accE2f83b8078ee21f458e59ec4289A +0xf3E52C9756a7Cc53F15895B11cc248B1694C3D81 +0xf4b785ef2c10D5662A053043E362e7E74E14A206 +0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C +0xF4CEC45FcdeDFafAa6bcB66736bBd332Ce43bA23 +0xF5664196ce7d0714Ee400C4C239b29608c9314Cd +0xf53cAB0C6F25f48F985d1e2c40E03FC7C1963364 +0xF56DD30d6Ab0eBDAe3A2892597eC5C8EE03Df099 +0xF50ABEF10CFcF99CdF69D52758799932933c3a80 +0xf58F3DBB422624FE0Dd9E67dE9767c149Bf04fdd +0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3 +0xF5Aebb3bFA1d7310EA3e6607669e59c4964B2013 +0xF62405e188Bb9629eD623d60B7c70dCc4e2ABd81 +0xF5Ca1b4F227257B5367515498B38908d593E1EBe +0xf62dC438Cd36b0E51DE92808382d040883f5A2d3 +0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73 +0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2 +0xF69218D01eedd7ad518863ad65Ea390315f25C92 +0xf69EA6646cf682262E84cd7c67133eac59cef07b +0xf679A24BBF27c79dB5148a4908488fA01ed51625 +0xf6FbDeCb1193f6b15659cE747bfC561E06f1214a +0xF6aaEdc61221A551fDaA0C6BD18626d637f4E99D +0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8 +0xf719550e63911E1Fa672d7886AA6c0110532A763 +0xf70A76bFC303AF23eC3CE34900aF9eA4df1407B7 +0xF73FE15cFB88ea3C7f301F16adE3c02564ACa407 +0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765 +0xf78da0B8Ae888C318e1A19415d593729A61Ac0c3 +0xf7acc9E4E4F82300b9A92Bc4D539C7928c23233B +0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC +0xF7d4699Bb387bC4152855fcd22A1031511C6e9b6 +0xF840AA35b73EE0Bbf488D81d684706729Aba0a15 +0xF869B8e5a54e7D93D98fc7C5c9D48fe972C330CA +0xF87AEDfbB53d7DB34c730a50B480F5717860d0Bf +0xF871f8c17c571c158b4b5d18802cc329Ee9F19dF +0xf84F39554247723C757066b8fd7789462aC25894 +0xf8aA30A3aCFaD49efbB6837f8fEa8225D66E993b +0xf80cDe9FBB874500E8932de19B374Ab473E7d207 +0xf8BaC06C2D8AA828ebbB0e475ce72f07462f28e1 +0xF88D3861f620699C4B3ec5D6191FFbF164CfbBC3 +0xf8d5708b32616b6c85c97F5a9c344e6B7076fE98 +0xF90A01Af91468F5418cDA5Ed6b19C51550eB5352 +0xF904cE88D7523a54c6C1eD4b98D6fc9562E91443 +0xf95ecba30184289D15926Eb61337839E973a97df +0xF96a3DC0f7990035E3333e658B890d0f16171102 +0xf8fdCac2C64Ba5e0459F67b9610bd3eda11F04ba +0xf973554fbA6059F4aF0e362fcf48AB8497eC1d8f +0xF9D183AF486A973b7921ceb5FdC9908D12AAb440 +0xF99AD4a6272CAea33AeEE2031B072100479FDFBD +0xfa1F34aB261c88BbD8c19389Ec9383015c3F27e4 +0xF9790906affda8aA80fFf67deD5063d1221a5F1d +0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d +0xFa41E0dafbb231fc8974c02a597BE61299ddd10C +0xFa0A637616BC13a47210B17DB8DD143aA9389334 +0xfaAe91b5d3C0378eE245E120952b21736F382c59 +0xFA97e9B029D3CB15A6566CB52211B022dc67EFFB +0xFA9D9208627ea8c35215F7DF409bF1F5110d2486 +0xFAe73E896f6e35Bf60a52C4F7275381e8d0F6344 +0xFaE9C276d513E6dC5060BB9bE5111c3124C4376c +0xFB0B928E38Bf945aAa6DF73a17A5e837441BA386 +0xFb00Fab6af5a0aCD8718557D34B52828Ae128D34 +0xfB464Fcd5342D2997A43C6B7bcA7615d0fbDEeD9 +0xfb578D95837a7c8c00BacC369A79d6b962305E70 +0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27 +0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55 +0xFc64410a03b205b995a9101f99a55026D8F1f1da +0xFC846285a2D89D2f6a838c06c514F4dB00D96Fed +0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef +0xfc22875F01ffeD27d6477983626E369844ff954C +0xfcBa05D5556b6A450209A4c9E2fe9a259C84d50F +0xfCA811318D6A0a118a7C79047D302E5B892bC723 +0xfD446abDE36c9dc02bB872303965484330EdA047 +0xFc748762F301229bCeA219B584Fdf8423D8060A1 +0xfD459E98FaCCB98838440dB466F01690322A721C +0xfcce6CE62A8C9fa9D6647C953c26358B139C1679 +0xFda1215797D29414E588B2e62fC390Ee2949aaAA +0xFD89d3831C6973fB5BA0b82022142b54AD9e8d46 +0xfD67bbb8b3980801e28b8D9c49fd9d1eA487087B +0xfD96Fc073abC3357b52C0467F45f95c67c4d22fc +0xFdAE7777f9e6E0D07f986f05289624129c3EE69C +0xFE09f953E10f3e6A9d22710cb6f743e4142321bd +0xFE42972c584E442C3f0a49Cb2930E55d5Bf13bA7 +0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f +0xfe365E0f0F49650C71955754e2CABA027C0E2198 +0xfE5c7e0f6282Ef213F334a7C4c8EC0bFa8C2884e +0xFE9FeE8A2Ebf2fF510a57bD6323903a659230F21 +0xfEC0Ac5f7d6049c55926c226703CE7154514fEA2 +0xfEc2248956179BF6965865440328D73bAC4eB6D2 +0xFEEC05a103f3EE7C4C42EE1d799B39A5b4c62Dbf +0xFeFE31009B95c04E062Aa89C975Fb61B5Bd9e785 +0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943 +0xff266f62a0152F39FCf123B7086012cEb292516A +0xff5E7372B4592Bd9d872f58fe22AA024AafaC9c8 +0xFf4A6b6F1016695551355737d4F1236141ec018D +0xffE8e5d3401C48Dfa05f6C6ee3b5cbBD2cb83F30 +0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7 +0xC81635aBBF6EC73d0271F237a78b6456D6766132 +0x23444f470C8760bef7424C457c30DC2d4378974b +0xb3b454c4b4a73ccdd5c79c8e0E4e703B478E872D +0x77E3CF7d9051f7e76889EC11D9Ab758F9dedc5c4 +0x15AD9ef623b0D635F2eEBf20e0548121CBaFc719 +0x79645bfB4Ef32902F4ee436A23E4A10A50789e54 +0x6B797A556cefD9e5c916B7fa1854ed0813867441 +0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c +0xaF616dABa40f81b75aF5373294d4dBE29DD0E0f6 +0x253ab8294bf3FB6AB6439abC9Bc7081504DB9bff +0xB8da309775c696576d26Ef7d25b68C103a9aB0d5 +0x1a8A0255e8B0ED7C596D236bf28D57Ff3978899b +0x1860a5C708c1e982E293aA4338bdbCafB7Cb90aC +0x575C9606CfcCF6F93D2E5a0C37d2C7696BCab132 +0x044c53d8576d4D700E6327c954f88388EE03b8dB +0x8687c54f8A431134cDE94Ae3782cB7cba9963D12 +0xf658305D26c8DF03e9ED3ff7C7287F7233dE472D +0x9821Aac07d0724C69835367D596352Aaf09C309c +0xd8D1fa915826a24d6103E8D0fA04020c4EbC0C5e +0x9142A918Df6208Ae1bE65e2Be0ea9DAd6067155e +0x76e3D82B0c49f1C921d8C1093cd91C20Ba23740d +0x3D93420AA8512e2bC7d77cB9352D752881706638 +0xc42593f89D4B6647Bff86fa309C72D5e93a9405c +0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce +0x9B0f5cCC13fa9fc22AB6C4766e419BB2A881eb1B +0xa86e29ad86D690f8b5a6A632cAb8405D40A319Fa +0x40ca67bA095c038B711AD37BbebAd8a586ae6f38 +0xf2f65A8a44f0Bb1a634A85b1a4eb4be4D69769B6 +0x4b9184dF8FA9f3Fc008fcdE7e7bbf7208eF5118d +0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0 +0x49cE991352A44f7B50AF79b89a50db6289013633 +0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc +0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397 +0x28e5366E2e8D6732bCc474d810CaCcc4d758dce1 +0x64298A72F4E3e23387EFc409fc424a3f17356fC4 +0xa569D7C014433DB04a895eD854B864e2E33EB0f0 +0x82610F2bbA3fC9b3207805b46E79F7db27C6af68 +0x1164fe7a76D22EAA66f6A0aDcE3E3a30d9957A5f +0xD2d038f866Ef6441e598E0f685f885693ef59917 +0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248 +0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70 +0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6 +0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7 +0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714 +0x8325D26d08DaBf644582D2a8da311D94DBD02A97 +0x54CE05973cFadd3bbACf46497C08Fc6DAe156521 +0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e +0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2 +0xC21a7Fe78A0Fb9DF4Da21F2Ce78c76BdAe63e611 +0xDB2480a43C79126F93Bd5a825dc0CBa46d7C0612 +0x93b34d74a134b403450f993e3f2fb75B751fa3d6 +0xEC9F16FAacD809ED3EC90D22C92cE84C5C115FAC +0x90B113Cf662039394D28505f51f0B1B4678Cc3b5 +0x4588a155d63CFFC23b3321b4F99E8d34128B227a +0x0FF2FAa2294434919501475CF58117ee89e2729c +0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB +0x671ec816F329ddc7c78137522Ea52e6FBC8decCD +0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC +0x96e5aAcf14E93E6Bd747C403159526fa484F71dC +0x3810EAcf5020D020B3317B559E59376c5d02dCB2 +0x3103c84c86a534a4f10C3823606F2a5b90923924 +0xe496c05e5E2a669cc60ab70572776ee22CA17F03 +0x9c7ac7abbD3EC00E1d4b330C497529166db84f63 +0xD73d566e1424674C12F1D45aEA023C419e6EfeF5 +0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3 +0xDC27b4a65F214743d68BEf4ba2004D4cCD6d7F65 +0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8 +0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E +0x5a57107A58A0447066C376b211059352B617c3BA +0xE79cCABDbF2AA68fDae8D7Fc39654A62b07e12e3 +0x0F1d41cc51e97DC9d0CAd80DC681777EED3675E3 +0xb319c06c96F676110AcC674a2B608ddb3117f43B +0x035bb6b7D76562320dFFb5ec23128ED1541823cf +0x58e4e9D30Da309624c785069A99709b16276B196 +0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5 +0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b +0xF2Fb34C4323F9bf4a5c04fE277f96588dDE5316f +0x87A774178D49C919be273f1022de2ae106E2581e +0xe78483c03249C1D5bb9687f3A95597f0c6360b84 +0xeA747056c4a5d2A8398EC64425989Ebf099733E9 +0xd480B92941CBe5CeAA56fecED93CED8B76E59615 +0x3A529A643e5b89555712B02e911AEC6add0d3188 +0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4 +0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8 +0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F +0x000000009D3a9E5C7c620514e1f36905c4eb91E6 +0x1AFB54B63626E9e78A3D11Bb0Eb3f5660982b0b0 +0x07c2af75788814BA7e5225b2F5c951eD161cB589 +0x0c722F3dCf2beBb50fCca45Cd6715EE31A2ad793 +0x1b35fcb58F5E1e2a42fF8E66ddf5646966aBf08C +0x28009881f0Ffe85C90725B8B02be55773647C64a +0x2C90f88BE812349fdD5655c9bAd8288c03E7fB23 +0x21503C7F8D1C9407cB0D27de13CC95A05F13373A +0x2F6e6687FA7F1c8cBBDf5cf5b44A94a43081621c +0x2e4145A204598534EA12b772853C08E736248E7B +0x34a370d288734d23bC48A926Cad90A6615abe4e3 +0x36991C5863Ead2d72C2b506966d1db72C2C6C6DF +0x4096E95da697Bd6F7c32E966b7b75F4d1f2817eA +0x37A6156e4a6E8B60b2415AF040546cF5e91699bd +0x32dA7EfC90a9D1Da76F7709097D1Fc8E304CAEc4 +0x38cd808be77b1a61973E7202A8e1b96e98CF315b +0x3E03E86E82B611046331E7b16f3e05ACF5a3eF6b +0x5039ed981CeDfCBBB12c4985Df321c1F9d222440 +0x511cc569c99A2769DE5d1a4C0B8387B41EAf9307 +0x511d230d3c94CadED14281d949b4D35D8575CA12 +0x6196c2e7149c134CFd53cf8D819895532189Ce1D +0x6e47663a6467abA30BF4cfc3Bc659eEdf631db59 +0x711F800E64Ec8d2bd66d97E932B994Beef474d31 +0x80efF130ddE6223a10e6ab27e35ee9456b635cCD +0x7F36BAC1BF73859bbEEBc5Fa46e78e4E7B39952C +0x8168eb79738E9Fa034AB95B156047149277dc2f0 +0x7A25275EAe1aAaF0D85B8D5955B6DbC727A27EaC +0x7f7ecEeDE5F97179883Ef8F30eDF24C50AA5c597 +0x8506B01FEC584cCaEACC7908D47725cf93E40680 +0x8a17484daFAEE8490F14BA0fb3FAC75CAeD80296 +0x9d5BC1E20C131a175924e912e20255465337A223 +0x8b3E26b83e8bb734Cd69cEC6CF1146d5a693c11F +0x829148aBa1177C4b6A6A3dbcA3E165FD34094e1b +0xa06793Bbb366775C8A8f31f5cdBe4DD4F712410a +0x9ea987dda3F3e72cf8Ac7F4BCd7bfd69236A8057 +0xa156d4e61bBd20E1F45bb3f10264DA829C904647 +0xB25429a922a3389b3D02E5D9Fb533FD3A7E58cBF +0xbeA2b910EE89eD59a160A60e75E3e1FF5047389C +0xBD39F80E400ed14A341DC2e6eC182EbBabF38662 +0xcC8D6da195f44e9922FDFB12df80c47b4cc46702 +0xC8ABB314C6FdE10d1679a2ab6f4BDffA462e990D +0xD20B976584bF506BAf5cC604D1f0A1B8D07138dA +0xdeFecffBEA31b18B14703e10Ac81da2Ed8C5762A +0xddA42f12B8B2ccc6717c053A2b772baD24B08CbD +0xc93678EC2b974a7aE280341cEFeb85984a29FFF7 +0xBF330a4028B0F2a01B336Df23Bc27DeFb4EddAD1 +0xD300f2C6Ee9dA84b1dD8E3e24FF5Ae875772b55e +0xe57384b12A2b73767cDb5d2eadDFD96cC74753a6 +0xeb11255b15600390e60a7aa1FBe1C821F6D0FD8a +0x0000000000003f5e74C1ba8A66b48E6f3d71aE82 +0xfcFAf5f45D86Fa16eC801a8DeFEd5D2cB196D242 +0x000000000000084e91743124a982076C59f10084 +0x0000000000007F150Bd6f54c40A34d7C3d5e9f56 +0x00000000003b3cc22aF3aE1EAc0440BcEe416B40 +0x000000000035B5e5ad9019092C665357240f594e +0x000000001ada84C06b7d1075f17228C34b307cFA +0x00000000500e2fece27a7600435d0C48d64E0C00 +0x001AC61da3301BeFE1F94abc095Bb9732b69F362 +0x00000000003E04625c9001717346dD811AE5Eba2 +0xF19e9B808Eca47dB283de76EEd94FbBf3E9FdF96 +0x000000005736775Feb0C8568e7DEe77222a26880 +0x00000000a1F2d3063Ed639d19a6A56be87E25B1a +0x034E617D90Eba96b47a555D1d9B1BedbFF196044 +0x0081aFa76cDf86b4Dd3D1196db559471b229ED16 +0x07197a25bF7297C2c41dd09a79160D05b6232BcF +0x01FF6318440f7D5553a82294D78262D5f5084EFF +0x0536f43136d5479310C01f82De2C04C0115217A6 +0x057a8F9253949d2e6752161b0aD6ba6d28f37044 +0x07432d559Fa617b6e23a516f9A6187440FbFB086 +0x0Ba9e984768B8A4fe28c657Bf858f128429850b5 +0x0b3b1DD110bB02f40A5161478149d09c5ef46F7e +0x0c565f3A167Df783cF6Bb9fcF174E6C7D0d3892B +0x11eDedebF63bef0ea2d2D071bdF88F71543ec6fB +0x0BE0f09aDc19334286027Ed281B612A49893Cd9A +0x10E1439455BD2624878b243819E31CfEE9eb721C +0x0d0ac94a91badd82264ABaeB355504AE9587Aa82 +0x0D9326f283D8Ca7EEEA4d323d07a0C9c0ab1A192 +0x0cE80210EAfd8b7d5E55F611150509998c3bd9B3 +0x152d08D7e74106A5681C8963E253d039c3e76859 +0x1406899696aDb2fA7a95eA68E80D4f9C82FCDeDd +0x1D634ce4e77863113734158C5aF8244567355452 +0x1897EcfC9Df8Ca7F360D271c84E3d8567460202d +0x162852F5D4007B76D3CDc432945516b9bBf1A01f +0x1d6E8BAC6EA3730825bde4B005ed7B2B39A2932d +0x1Fa208031725Cc75Fe0C92D28ce3072a86e3cEFd +0x21194d506Ab47C531a7874B563dFA3787b3938a5 +0x218d75b17f491793a96ab4326c7875950359a80C +0x214c5645d54A27c66A46734515A8F32C57268Cd9 +0x21eD24C01edb72fb67f717378D1BCC72A5326E87 +0x22F92B5Cb630524aF4E6C5031249931a77c43845 +0x25Ae1F605A57bc57E88Fb9791d44594f9aB2A3B2 +0x247FAF1c6070735423e4e7Fa02d7B2a3821A5363 +0x29F821148099b0C342cD9BeF9936eB716F82409E +0x26BdC56005Dc75F59F461A03C90f8171e5CB6fc4 +0x2C6A44918f12fdeA9cd14c951E7b71Df824Fdba4 +0x2A16898b3a9124685832b752C1bdCB6Ba42b5d49 +0x2Df56902dAeD94248df3ACE6efB8a259E9Fe525f +0x30E8B02e0Db5A05bbfc4eEC38dD8b07cDBc96F12 +0x2dAF6e1f7aEe5Bc0d88530cb9a60FE0ca86F5E67 +0x382fFCe2287252F930E1C8DC9328dac5BF282bA1 +0x2Ed7E934847AE82954e4456555CD5FFBe10eb6B5 +0x376a6EFE8E98f3ae2af230B3D45B8Cc5e962bC27 +0x3AEf36d1866C222BF930Dbb2479ec04e22afF05F +0x3B3EC26149597e380B25A9Ef99631E9e0e85999A +0x38840B12d538a9f3347a38cDb44562f875D38e26 +0x3bE25Eef7b994C05eb119548E700dE5A304B5Baf +0x46aD7865CbaB5387BD24d8842a1C74c8C12D208a +0x42B2C65dB7F9e3b6c26Bc6151CCf30CcE0fb99EA +0x3f99E5BB6e6C76DA33AcC6c3020F64749bC116d3 +0x46C4128981525aA446e02FFb2FF762F1D6A49170 +0x49Efdfb20FD0d286a1060Fe5cF1AEE93d2301B81 +0x4868aF497acaf3B7B93978eBAFE3911b288ec404 +0x4857d1C4b89A046F834FD9F271b0A82f5159889b +0x499dd900f800FD0A2eD300006000A57f00FA009b +0x49F4ca97f0BBa39425A2975e1FfCcE2587A441B2 +0x49dfC7999be4e5c938a18676Aa11e96e3bF87ee8 +0x4Aca0D5C138e811d6b74aF3940a724aa94c51C42 +0x4c54BD629ACB1DaedB3349023a239b4923b8589b +0x4Cdc86fa95Ec2704f0849825f1F8b077deeD8d39 +0x5164aEf3212841FB3479439Fe06C23cC48ce433f +0x50A5EcD4876E7Ff5e1a5C54A4f370C4c6F4047d8 +0x4c37d0fdc655909cDF07404E5E001CdD0F7168Df +0x50c491ffDa25f9E472d467d60835468C522E7d3a +0x5136a9A5D077aE4247C7706b577F77153C32A01C +0x4d4a25125BDca5226EFEF9938d0597964d5561d9 +0x5500aa1197f8B05D7cAA35138E22A7cf33F377D6 +0x51869683791F9950B19145fDC0be0feDF743dd78 +0x53C0483B3D809c725f660F199B8B6a8a83B4c8Fe +0x4CddfF23d036E15fe786508FfA39B27F73b4A01a +0x59b0Bc0E790085A90D3EE4D0be139841C24aFaf8 +0x5B1B0349B3a668c75cc868801A39430684e3f36A +0x5B0fD17be82d7b3DdB16018abd6b65510724e5d3 +0x5de1F0BC895c27A0c1f7E20A74016E9aE3bC3B2b +0x609A7742aCB183f5a365c2d40D80E0F30007a597 +0x66f049111958809841Bbe4b81c034Da2D953AA0c +0x5e4c21c30c968F1D1eE37c2701b99B193B89d3f3 +0x634118B21fbC1A53B0D7bcC2fcFa2E735a3B0200 +0x67f843931a71A6511B15B3DcE04c7729Cf05eCB6 +0x68781516d80eC9339ecDf5996DfBcafb8AfE8e22 +0x68575571E75D2CfA4222e0F8E7053F056EB91d6C +0x6ab6828D97289c48C5E2eA59B8C5f99fffA1e3fd +0x6ca3fB52498f02C85c48cF250f5972aDD97524A9 +0x6ff09a9A7af5fdC5754a732F5459E466b16452fa +0x62289050DdF0f302cFDe7fc215f068738d510C2C +0x718B2c8110412b0968F7Bfc97f8733d6E063D84e +0x6C01ec9622e50799d62ca076F2e2aa34DC840D5B +0x75e4E9423E425D902D78e0f909BC8BDE7E86e38e +0x75AeE7D5E8f23f2a562a4A5c5e9370A945f47Cc7 +0x7550f43a91579C7e6dBeEee5AA34E9Fa40Ce7F62 +0x794f3b2CA85B97e2A2Fe57Acc277E96F549C0188 +0x777EA5d7A90D7895D4db96Fb35BC13f37A329EB0 +0x7957d651D862c08D257b85Aa54a51006712fac0A +0x7A35147dCEE2db85E1407f08027F896b766364Ee +0x7A6161927f483c8E0d979F0572dA1c6fa8897DE7 +0x7Ca44C05AA9fcb723741CBf8D5c837931c08971a +0x7Cf09D7A9A74f746EDcb06949B9d64bCd9D1604f +0x7a638C02BA703a6476e3F397e78c18F677803ef6 +0x80281D33B56231Ea95a5b8F61cfD91ca052C7B5A +0x72ECeD3D01e8854b1f6D79d3c3a507244d6b770a +0x5bEe7135d309838166e62aCd74Db73ffb1D417c5 +0x85EE4299c926b92412DAde8f1E968f276d44c276 +0x821ACf4602B9D57Da21DEE0c3Db45e71143c0B45 +0x88b74128df7CB82eB7C2167e89946f83FFC907E9 +0x895EDB1B773DBCB90BF56C3D4573Bae65A6398B1 +0x86a2059273FA831334F57887A0834c056d7D93A5 +0x8A7f7C5b556B1298a74c0e89df46Eba117A2F6c1 +0x8A733E7280776149c505447042e5e3125896c333 +0x897F27d11c2DD9F4E80770D33b681232e93e2B62 +0x90746A1393A772AF40c9F396b730a4fFd024bB63 +0x8aFBe56240124e139204A8b7B9687159159a7532 +0x94BC010E232824Be9bab598cd46c3cbDB06Fa2a9 +0x9362c5f4fD3fA3989E88268fB3e0D69E9eeb1705 +0x950E5BbDADf252609F49b2Cd45222cD3280F35d6 +0x96D4F9d8F23eadee78fc6824fc60b8c1CE578443 +0x96c195F6643A3D797cb90cb6BA0Ae2776D51b5F3 +0xa0158E68588b1007B3bb1e8F8ea8a85cEE842896 +0x9906F598d5472080e8aAEd5d33a3c54cE7Db3CBF +0x9d84C5da53999D226ac4800bEff4f97EE4946E99 +0xA398A1a1208FFc963A640588AB03068E0a70b2d2 +0xA1006d0051a35b0000F961a8000000009eA8d2dB +0x9E97Ebb3BA5e751dcbD55260CE660cDc73dd3854 +0xa6b2876743D22A11d6941d84738Abda7669FcAcF +0xa6A22bf9285F2B549CaA0A8A49EB7EA9dFd8D03E +0xa405e822d1C3A8568c6B82Eb6e570FcA0136F802 +0xA8B969a61d87504bcD884e15A782E8F330C60Eda +0xA1c1E53D7304aAE853Ef491516aEdff207b69F9D +0xAdCC57A64Dfe3f67800644711BEA6d2572dA32da +0xa8ecAf8745C56D5935c232D2c5b83B9CD3dE1f6a +0xa2c4435F208F9c9AdB6C15bB8DB5ABb86D0daeCc +0xaef4842A2C6f44ed2D8C4BFf94451126D79A065E +0xb1720612D0131839DC489fCf20398Ea925282fCa +0xB3fCD22ffD34D75C979D49E2E5fb3a3405644831 +0xb28A6de906d72b2C52A7F7D2496D2DBa2B8D02E2 +0xB4310C2CAFdE76E1A0F09B01195435F4A630D48f +0xb0aA8bDDE2657dd1B7BA892d4dbdfAd7da4C3704 +0xB4670077B4D680595B15872d79dEe61Ffcb8b15d +0xB5cc8B38317F80360EF2c90AE1D115a831A2DFa2 +0xb9BEBaEE7F9029eD936De59bEa6d759F245aD786 +0xBd01F3494FF4f5b6ACa5689CC6220E68d684F146 +0xbC147973709A9f8F25B5f45021CAb1EA030D3885 +0xbc2266159a68862B44e88f72687330a4a9760D00 +0xbcC7f6355bc08f6b7d3a41322CE4627118314763 +0xa10FcA31A2Cb432C9Ac976779DC947CfDb003EF0 +0xAE7861C80D03826837A50b45aecF11eC677f6586 +0xBefE4f86F189C1c817446B71EB6aC90e3cb68E60 +0xbe7395d579cBa0E3d7813334Ff5e2d3CFe1311Ba +0xB7d691867E549C7C54C559B7fc93965403AC65dF +0xBf3f6477Dbd514Ef85b7D3eC6ac2205Fd0962039 +0xC3391169cbbaa16B86c625b0305CfdF0CCbba40F +0xc265FD59095B56B53442326Dd1059A7F8775ad0E +0xc99C07a3deD982ac5DF8f6B17677874EC57A54Ee +0xC9691Cc21D99a0C3f52A41673C29F71906b13a0D +0xCB218f2638185d13758592f87A0A9732A83f29f5 +0xC13D06194E149Ea53f6c823d9446b100eED37042 +0xC849A498B4D98c80dfbC1A24F35EF234A9BA05D5 +0xcbFd8F36E763be77097701350137867986B605aC +0xcc23CE3C69317EB40d125001D7c325b36e6d4357 +0xcC4804885733e8668Da3b3FB25537ed0E4DFAdF2 +0xCeB15131d3C0Adcffbfe229868b338FF24eD338A +0xcd323d75aF5087a45c12229f64e1ef9fb8aAF143 +0xD32FBBd463DED23a44Fee49Fe2FA5979418945FA +0xd8D219cdc59e087925B8Bb0aCA688Fd252C4315E +0xD683B78e988BA4bdb9Fa0E2012C4C36B7cC96aaD +0xD9437bd9becC57b2A152E3680aD3d675ed5b14b9 +0xCeE29290c6DDa832898bA707eE9D40B311181b9A +0xcEf5A94Bb413c8039B490Ef627e20D16db2fFCC3 +0xdB744A5853A0a8A81FeeDB4eFD5f69F0de6825ff +0xdc6C276D357e82C7D38D73061CEeD2e33990E5bC +0xD8711e8BdeCe3e95baAdbDBf7a21a73ba3471b7f +0xdfb92A9d77205e2897D76C47847897B41B44c025 +0xE113E7B1E8Ecd07973EA40978aED520241d17f27 +0xe63d1e4b80cF3B2ebcEC1175083D9266aEadf3A3 +0xDEA221515cCe76dC4454B68c4918603DfFa12F31 +0xe6a6eE4196D361ec4F6D587C7EbE20C50667fB39 +0xEef86c2E49E11345F1a693675dF9a38f7d880C8F +0xE90f8A0df275911A3c4fe561dCa300DF374E5428 +0xefD09Cc91a34659B4Da25bc22Bd0D1380cBC47Ec +0xEAfD738c06C9cA5f1c443f45033A59d34737af2d +0xf50c00cb5547f53BE3843381aC3427b32b9C3F07 +0xf25ba658b15A49D66b5b414F7718c2E579950aac +0xf115d93A31e79ccA4697B9683c856326E0BeD3c3 +0xF58c02C8aD9D6C436246ca124F43c690368bBdfE +0xF54fCb4859f10019AEdaB0eBc4BB8C5C99591666 +0xF75f9a658E00B5FC55De9D23cf0B1183B23640C6 +0xf6cCa4d94772Fff831bf3a250A29dE413d304Fc5 +0xf81AC7c4Ef437ea0A10f563CC0906B7849733465 +0xf972C7eDD78b945E9e089CA86Ca2f601bc061A53 +0xfC96372d3e1D9313504F7fe47b3F63Bd8aA0273D +0xFBa3CA5d207872eD1984eAe82e0D3c8074e971c1 +0xF9be86FfF624AfeE87803fd9F871e53F50FF79a8 +0xfcf6a3d7eb8c62a5256a020e48f153c6D5Dd6909 +0xFe84Ced1581a0943aBEa7d57ac47E2d01D132c98 +0x237B45906A501102dFdd0cDccb1Fd3D7b869CF36 +0xffb100C7Ec7463191F5C29598C2259334Ea77C94 +0x33ee1FA9eD670001D1740419192142931e088e79 +0x2865De63D4aBBFdaf401eD0472a605e0a8C9Fa6D +0x36CB18A75943396b526e20fde7F70B6367c70d7D +0x037C8e92AE5EB2140157af396de2c1566bf658B1 +0x60F7a7802c9b7Dcc0b19eD670C2136041dfDc673 +0x29C6B4307d9E665d3243903E408e6007c4300c99 +0x5D120E0929DBbf2315c97A4D93067E2dD9128cE4 +0x5ae019F7eE28612b058381f4Fea213Cc90ee88A4 +0x6b11790463C99EE403FBDc8371F7c5bD633544f8 +0x4d39c77881f254C6B56d9F4aD64914cf760C946a +0x74B654D9F99cC7cdB7861faD857A6c9b46CF868C +0x8dB7147b554B739058E74C01042d2aEA44505E2F +0x7D1589685F02502e628E60394D21AAF835EE25EE +0xFe202706E36F31aFBaf4b4543C2A8bBa4ddB2deE +0xA2d76c09b86Cf904f75672df51f859A876A88429 +0xBD6B982b02E03594323D5D26259A6739c3dd35e1 +0xE37a010859a480f69C8aF3DC8dcf171DaEe80A01 +0xb66889B1257381Bcc9ee00461E29930BD53A08bF +0xB3982fdc4bA9C5549F900f851D1564B80c054864 +0xC88FC1f1136c3aC5FAC38b90f64c11Fe8E704962 +0x6F98dA2D5098604239C07875C6B7Fd583BC520b9 +0xb95A918186Fe3b016038f2Dd1d9Ce395710f30C0 +0xB27226CE5f123f91514ae3955e5cFEB7B9754981 +0x5B29fD05C664e2806a3bd4cdAde11A64bD9E2873 +0x5E4fa37a2308FE6152c0B0EbD29fb538A06332b8 +0xD717E96bC764E9644e2f09bed46C71E53240748E +0xF6aF57C78B8635f7a3413fBB477DE47cAd01DcCf +0xf55F7118fa68ae5a52e0B2d519BfFcbDb7387AFA diff --git a/scripts/beanstalkShipments/data/mocks/mockBeanstalkPlots.json b/scripts/beanstalkShipments/data/mocks/mockBeanstalkPlots.json new file mode 100644 index 00000000..be7f3a72 --- /dev/null +++ b/scripts/beanstalkShipments/data/mocks/mockBeanstalkPlots.json @@ -0,0 +1,40 @@ +[ + [ + "0x00427C81629Cd592Aa068B0290425261cbB8Eba2", + [ + [ + "158383612870588", + "7223908" + ], + [ + "158383620094496", + "31759311271" + ], + [ + "159131870998418", + "50970469725" + ], + [ + "159283729997792", + "224945750526" + ], + [ + "235858732140980", + "196600091571" + ], + [ + "236391103218862", + "323552874641" + ] + ] + ], + [ + "0x0086e622aC7afa3e5502dc895Fd0EAB8B3A78D97", + [ + [ + "198178936313645", + "26788151839" + ] + ] + ] +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index f8618e6d..0fdcbbdd 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -99,7 +99,7 @@ async function distributeUnripeBdvTokens({ totalGasUsed = totalGasUsed.add(receipt.gasUsed); if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); }); - + await updateProgress(i + 1, chunks.length); } @@ -122,7 +122,6 @@ async function distributeBarnPaybackTokens({ account, dataPath, verbose = true, - useChunking = true, targetEntriesPerChunk = 300 }) { if (verbose) console.log("🌱 Distributing barn payback tokens..."); @@ -131,50 +130,30 @@ async function distributeBarnPaybackTokens({ const accountFertilizers = JSON.parse(fs.readFileSync(dataPath)); console.log("šŸ“Š Fertilizer Ids to be distributed:", accountFertilizers.length); - if (!useChunking) { - // Process all fertilizers in a single transaction - console.log("Processing all fertilizers in a single transaction..."); + // Split into chunks for processing + const chunks = splitEntriesIntoChunks(accountFertilizers, targetEntriesPerChunk); + console.log(`Starting to process ${chunks.length} chunks...`); - // log the address of the payback contract - console.log("BarnPayback address:", barnPaybackContract.address); + let totalGasUsed = ethers.BigNumber.from(0); - const tx = await barnPaybackContract.connect(account).mintFertilizers(accountFertilizers); + for (let i = 0; i < chunks.length; i++) { + if (verbose) { + console.log(`\n\nProcessing chunk ${i + 1}/${chunks.length}`); + console.log(`Chunk contains ${chunks[i].length} fertilizers`); + console.log("-----------------------------------"); + } + const tx = await barnPaybackContract.connect(account).mintFertilizers(chunks[i]); const receipt = await tx.wait(); - if (verbose) console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); - - } else { - // Split into chunks for processing - const chunks = splitEntriesIntoChunks(accountFertilizers, targetEntriesPerChunk); - console.log(`Starting to process ${chunks.length} chunks...`); + totalGasUsed = totalGasUsed.add(receipt.gasUsed); + if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); - let totalGasUsed = ethers.BigNumber.from(0); - - for (let i = 0; i < chunks.length; i++) { - if (verbose) { - console.log(`\n\nProcessing chunk ${i + 1}/${chunks.length}`); - console.log(`Chunk contains ${chunks[i].length} fertilizers`); - console.log("-----------------------------------"); - } - - await retryOperation(async () => { - const tx = await barnPaybackContract.connect(account).mintFertilizers(chunks[i]); - const receipt = await tx.wait(); - - totalGasUsed = totalGasUsed.add(receipt.gasUsed); - - if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); - }); - - await updateProgress(i + 1, chunks.length); - } - - if (verbose) { - console.log("\nšŸ“Š Total Gas Summary:"); - console.log(`⛽ Total gas used: ${totalGasUsed.toString()}`); - } + await updateProgress(i + 1, chunks.length); + } + if (verbose) { + console.log("\nšŸ“Š Total Gas Summary:"); + console.log(`⛽ Total gas used: ${totalGasUsed.toString()}`); } - if (verbose) console.log("āœ… Barn payback tokens distributed to old Beanstalk participants"); } catch (error) { console.error("Error distributing barn payback tokens:", error); @@ -202,27 +181,27 @@ async function transferContractOwnership({ async function deployAndSetupContracts(params) { const contracts = await deployShipmentContracts(params); - await distributeUnripeBdvTokens({ - siloPaybackContract: contracts.siloPaybackContract, - account: params.account, - dataPath: "./scripts/beanstalkShipments/data/unripeBdvTokens.json", - verbose: true, - useChunking: params.useChunking, - }); - - await distributeBarnPaybackTokens({ - barnPaybackContract: contracts.barnPaybackContract, - account: params.account, - dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", - verbose: true, - useChunking: params.useChunking, - }); + if (params.populateData) { + await distributeUnripeBdvTokens({ + siloPaybackContract: contracts.siloPaybackContract, + account: params.account, + dataPath: "./scripts/beanstalkShipments/data/unripeBdvTokens.json", + verbose: true + }); + + await distributeBarnPaybackTokens({ + barnPaybackContract: contracts.barnPaybackContract, + account: params.account, + dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", + verbose: true + }); + } await transferContractOwnership({ siloPaybackContract: contracts.siloPaybackContract, barnPaybackContract: contracts.barnPaybackContract, L2_PCM: params.L2_PCM, - verbose: true, + verbose: true }); return contracts; diff --git a/scripts/beanstalkShipments/parsers/parseBarnData.js b/scripts/beanstalkShipments/parsers/parseBarnData.js index 4f44d98a..6e25ae69 100644 --- a/scripts/beanstalkShipments/parsers/parseBarnData.js +++ b/scripts/beanstalkShipments/parsers/parseBarnData.js @@ -72,7 +72,10 @@ function parseBarnData(includeContracts = false) { totalAmount: 0 }); } - + + // note: beanBpf here is the lastBpf and it is the same across all accounts + // since we claimed on behalf of them during the l2 migration and there were no + // beans distributed to fertilizer during this period const fertData = fertilizerMap.get(fertId); fertData.accounts.push([accountAddress, amount, beanBpf]); fertData.totalAmount += parseInt(amount); diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 741ac778..9d67c82d 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -15,9 +15,12 @@ const { */ async function populateBeanstalkField(diamondAddress, account, verbose = false) { console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots."); + const mockData = true; // Read and parse the JSON file - const plotsPath = "./scripts/beanstalkShipments/data/beanstalkPlots.json"; + const plotsPath = mockData + ? "./scripts/beanstalkShipments/data/mocks/mockBeanstalkPlots.json" + : "./scripts/beanstalkShipments/data/beanstalkPlots.json"; const rawPlotData = JSON.parse(fs.readFileSync(plotsPath)); // Split into chunks for processing diff --git a/scripts/beanstalkShipments/utils/extractAddresses.js b/scripts/beanstalkShipments/utils/extractAddresses.js new file mode 100644 index 00000000..2af5d359 --- /dev/null +++ b/scripts/beanstalkShipments/utils/extractAddresses.js @@ -0,0 +1,106 @@ +const fs = require('fs'); + +/** + * Extracts addresses from beanstalk field JSON and writes them to a file + * @param {string} inputPath - Path to the beanstalk field JSON file + * @param {string} outputPath - Path where to write the addresses file + */ +function extractAddressesFromFieldJson(inputPath, outputPath) { + try { + const fieldData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); + const addresses = Object.keys(fieldData.arbEOAs); + + // Write addresses to file, one per line + fs.writeFileSync(outputPath, addresses.join('\n') + '\n'); + + console.log(`āœ… Extracted ${addresses.length} addresses from field to ${outputPath}`); + return addresses; + } catch (error) { + console.error('Error extracting addresses from field:', error); + throw error; + } +} + +/** + * Extracts addresses from silo JSON + */ +function extractAddressesFromSiloJson(inputPath, outputPath) { + try { + const siloData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); + const addresses = Object.keys(siloData.arbEOAs); + + // Write addresses to file, one per line + fs.writeFileSync(outputPath, addresses.join('\n') + '\n'); + + console.log(`āœ… Extracted ${addresses.length} addresses from silo to ${outputPath}`); + return addresses; + } catch (error) { + console.error('Error extracting addresses from silo:', error); + throw error; + } +} + +/** + * Extracts addresses from fertilizer JSON + * Format: [[fertilizerIndex, [[account, balance, supply], ...]], ...] + */ +function extractAddressesFromFertilizerJson(inputPath, outputPath) { + try { + const fertilizerData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); + const addressesSet = new Set(); + + // Each entry is [fertilizerIndex, accountData[]] + fertilizerData.forEach(([fertilizerIndex, accountDataArray]) => { + // Each accountData is [account, balance, supply] + accountDataArray.forEach(([account, balance, supply]) => { + addressesSet.add(account); + }); + }); + + const addresses = Array.from(addressesSet); + + // Write addresses to file, one per line + fs.writeFileSync(outputPath, addresses.join('\n') + '\n'); + + console.log(`āœ… Extracted ${addresses.length} unique addresses from fertilizer to ${outputPath}`); + return addresses; + } catch (error) { + console.error('Error extracting addresses from fertilizer:', error); + throw error; + } +} + +// If called directly, extract from all sources +if (require.main === module) { + const baseDir = './scripts/beanstalkShipments/data'; + const exportsDir = `${baseDir}/exports`; + + // Create exports directory if it doesn't exist + if (!fs.existsSync(exportsDir)) { + fs.mkdirSync(exportsDir, { recursive: true }); + } + + // Extract field addresses + extractAddressesFromFieldJson( + `${exportsDir}/beanstalk_field.json`, + `${exportsDir}/field_addresses.txt` + ); + + // Extract silo addresses + extractAddressesFromSiloJson( + `${exportsDir}/beanstalk_silo.json`, + `${exportsDir}/silo_addresses.txt` + ); + + // Extract fertilizer addresses + extractAddressesFromFertilizerJson( + `${baseDir}/beanstalkAccountFertilizer.json`, + `${exportsDir}/barn_addresses.txt` + ); +} + +module.exports = { + extractAddressesFromFieldJson, + extractAddressesFromSiloJson, + extractAddressesFromFertilizerJson +}; \ No newline at end of file diff --git a/scripts/beanstalkShipments/utils/fertilizerFinder.js b/scripts/beanstalkShipments/utils/fertilizerFinder.js new file mode 100644 index 00000000..a0698448 --- /dev/null +++ b/scripts/beanstalkShipments/utils/fertilizerFinder.js @@ -0,0 +1,55 @@ +const fs = require("fs"); +const { ethers } = require("ethers"); + +function findFertilizer(jsonFilePath, targetAccount) { + // Load the JSON file + const jsonData = JSON.parse(fs.readFileSync(jsonFilePath, "utf8")); + + const fertBalances = []; + + // Get the global beanBpf value to use as lastBpf for all fertilizers + const globalBpf = BigInt(jsonData.beanBpf || "0"); + + // Check if account exists in arbEOAs + if (jsonData.arbEOAs && jsonData.arbEOAs[targetAccount]) { + const accountData = jsonData.arbEOAs[targetAccount]; + + // Check if account has beanFert data + if (accountData.beanFert) { + // Loop through each fertilizer ID and amount + for (const [fertId, amount] of Object.entries(accountData.beanFert)) { + fertBalances.push({ + fertId: BigInt(fertId), + amount: BigInt(amount), + lastBpf: globalBpf // Use the global beanBpf value + }); + } + } + } + + // ABI encode the array of FertDepositData structs + const encodedData = ethers.utils.defaultAbiCoder.encode( + ["tuple(uint256 fertId, uint256 amount, uint256 lastBpf)[]"], + [fertBalances] + ); + + return encodedData; +} + +// Get the command line arguments +const args = process.argv.slice(2); +const jsonFilePath = args[0]; +const account = args[1]; + +try { + // Run the function and output the result + const encodedFertilizerData = findFertilizer(jsonFilePath, account); + console.log(encodedFertilizerData); +} catch (error) { + // If there's an error or no data found, return empty encoded array + const encodedData = ethers.utils.defaultAbiCoder.encode( + ["tuple(uint256 fertId, uint256 amount, uint256 lastBpf)[]"], + [[]] + ); + console.log(encodedData); +} \ No newline at end of file diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index d33e4696..38bb674d 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -10,11 +10,13 @@ import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; /** * @notice Tests that the whole shipments initialization and logic works correctly. * This tests should be ran against a local node after the deployment and initialization task is complete. - * 1. Create a local anvil node + * 1. Create a local anvil node at block 33349326, right before Season 5952 where the deltab was +19,281 TWAĪ”P * 2. Run the hardhat task: `npx hardhat compile && npx hardhat beanstalkShipments --network localhost` * 3. Run the test: `forge test --match-test test_shipments --fork-url http://localhost:8545` */ @@ -25,29 +27,53 @@ contract BeanstalkShipmentsTest is TestHelper { address constant BARN_PAYBACK = address(0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b); address constant DEV_BUDGET = address(0xb0cdb715D8122bd976a30996866Ebe5e51bb18b0); + // Wells + address constant PINTO_CBETH_WELL = address(0x3e111115A82dF6190e36ADf0d552880663A4dBF1); + address constant PINTO_CBBTC_WELL = address(0x3e11226fe3d85142B734ABCe6e58918d5828d1b4); + address constant PINTO_USDC_WELL = address(0x3e1133aC082716DDC3114bbEFEeD8B1731eA9cb1); + + // Paths + // Field + string constant FIELD_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt"; + string constant FIELD_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_field.json"; + // Silo + string constant SILO_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt"; + string constant SILO_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_silo.json"; + // Barn + string constant BARN_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt"; + string constant BARN_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_barn.json"; + // Owners address constant PCM = address(0x2cf82605402912C6a79078a9BBfcCf061CbfD507); - // Shipment Recipient enum - enum ShipmentRecipient { - NULL, - SILO, - FIELD, - INTERNAL_BALANCE, - EXTERNAL_BALANCE, - SILO_PAYBACK, - BARN_PAYBACK + ////////// State Structs ////////// + + struct SystemFertilizerStruct { + uint256 activeFertilizer; + uint256 fertilizedIndex; + uint256 unfertilizedIndex; + uint256 fertilizedPaidIndex; + uint128 fertFirst; + uint128 fertLast; + uint128 bpf; + uint256 leftoverBeans; } - struct ShipmentRoute { - address planContract; - bytes4 planSelector; - ShipmentRecipient recipient; - bytes data; + struct FertDepositData { + uint256 fertId; + uint256 amount; + uint256 lastBpf; } // Constants uint256 constant PAYBACK_FIELD_ID = 1; + uint256 constant SUPPLY_THRESHOLD = 1_000_000_000e6; // Users address farmer1 = makeAddr("farmer1"); @@ -66,18 +92,33 @@ contract BeanstalkShipmentsTest is TestHelper { // - for each component, make sure everything is distributed correctly // - make sure that at any point all users can claim their rewards pro rata function setUp() public { - // mint 1bil pinto - // deal(PINTO, farmer1, 1_000_000_000e6); + // add liquidity to the well to make deltaB>0 + + // addLiquidityToPintoWell( + // farmer1, + // PINTO_CBETH_WELL, + // 10e6, // 10 Beans + // 10 ether // 10 WETH of wstETH + // ); + + // addLiquidityToPintoWell( + // farmer1, + // PINTO_CBBTC_WELL, + // 10e6, // 10 Beans + // 2e8 // 2 btc + // ); + + console.log("Total delta B", pinto.totalDeltaB()); } //////////////////////// STATE VERIFICATION //////////////////////// - function test_shipment_routes() public { + function test_beanstalkShipmentRoutes() public { // get shipment routes IMockFBeanstalk.ShipmentRoute[] memory routes = pinto.getShipmentRoutes(); // silo (0x01) assertEq(routes[0].planSelector, ShipmentPlanner.getSiloPlan.selector); - assertEq(uint8(routes[0].recipient), uint8(IShipmentRecipient.SILO)); + assertEq(uint8(routes[0].recipient), uint8(ShipmentRecipient.SILO)); assertEq(routes[0].data, new bytes(32)); // field (0x02) assertEq(routes[1].planSelector, ShipmentPlanner.getFieldPlan.selector); @@ -101,14 +142,294 @@ contract BeanstalkShipmentsTest is TestHelper { assertEq(routes[5].data, abi.encode(BARN_PAYBACK)); } - function test_repayment_field_state() public {} + //////////////////// Field State Verification //////////////////// + + function test_beanstalkRepaymentFieldState() public { + uint256 accountNumber = getAccountNumber(FIELD_ADDRESSES_PATH); + console.log("Testing repayment field state for", accountNumber, "accounts"); + + // get active field, assert its the same + uint256 activeField = pinto.activeField(); + assertEq(activeField, 0); + + // get the field count, assert a new field has been added + uint256 fieldCount = pinto.fieldCount(); + assertEq(fieldCount, 2); + + string memory account; + // For every account + for (uint256 i = 0; i < accountNumber; i++) { + account = vm.readLine(FIELD_ADDRESSES_PATH); + // get the plots in storage + IMockFBeanstalk.Plot[] memory plots = pinto.getPlotsFromAccount( + vm.parseAddress(account), + PAYBACK_FIELD_ID + ); + // compare against the plots in the json + for (uint256 j = 0; j < plots.length; j++) { + // Get the expected pod amount for this plot index from JSON + string memory plotIndexKey = vm.toString(plots[j].index); + // arbEOAs.account.plotIndex + string memory plotAmountPath = string.concat( + "arbEOAs.", + account, + ".", + plotIndexKey + ); + + bytes memory plotAmountJson = searchPropertyData(plotAmountPath, FIELD_JSON_PATH); + // Decode the plot amount from JSON + uint256 expectedPodAmount = vm.parseUint(vm.toString(plotAmountJson)); + // Compare the plot amount and index + assertEq(expectedPodAmount, plots[j].pods, "Invalid pod amount for account"); + } + } + } + + function test_siloPaybackState() public { + uint256 accountNumber = getAccountNumber(SILO_ADDRESSES_PATH); + + console.log("Testing silo payback state for", accountNumber, "accounts"); + + string memory account; - function test_silo_payback_state() public {} + // For every account + for (uint256 i = 0; i < accountNumber; i++) { + account = vm.readLine(SILO_ADDRESSES_PATH); + address accountAddr = vm.parseAddress(account); + + // Get the silo payback ERC20 token balance for this account + uint256 siloPaybackBalance = siloPayback.balanceOf(accountAddr); + + // Get the expected total BDV at recapitalization from JSON + string memory totalBdvPath = string.concat( + "arbEOAs.", + account, + ".bdvAtRecapitalization.total" + ); + bytes memory expectedTotalBdvJson = searchPropertyData(totalBdvPath, SILO_JSON_PATH); + + // Decode the expected total BDV from JSON + uint256 expectedTotalBdv = vm.parseUint(vm.toString(expectedTotalBdvJson)); + + // Compare the silo payback balance against total BDV at recapitalization + assertEq( + siloPaybackBalance, + expectedTotalBdv, + string.concat("Silo payback balance mismatch for account ", account) + ); + } + } + + function test_barnPaybackStateGlobal() public { + SystemFertilizerStruct memory systemFertilizer = _getSystemFertilizer(); + // get each property and compare against the json + // get the activeFertilizer + uint256 activeFertilizer = vm.parseUint( + vm.toString(searchPropertyData("storage.activeFertilizer", BARN_JSON_PATH)) + ); + assertEq(activeFertilizer, systemFertilizer.activeFertilizer, "activeFertilizer mismatch"); + + // get the fertilizedIndex + uint256 fertilizedIndex = vm.parseUint( + vm.toString(searchPropertyData("storage.fertilizedIndex", BARN_JSON_PATH)) + ); + assertEq(fertilizedIndex, systemFertilizer.fertilizedIndex, "fertilizedIndex mismatch"); + + // get the unfertilizedIndex + uint256 unfertilizedIndex = vm.parseUint( + vm.toString(searchPropertyData("storage.unfertilizedIndex", BARN_JSON_PATH)) + ); + assertEq( + unfertilizedIndex, + systemFertilizer.unfertilizedIndex, + "unfertilizedIndex mismatch" + ); + + // get the fertilizedPaidIndex + uint256 fertilizedPaidIndex = vm.parseUint( + vm.toString(searchPropertyData("storage.fertilizedPaidIndex", BARN_JSON_PATH)) + ); + assertEq( + fertilizedPaidIndex, + systemFertilizer.fertilizedPaidIndex, + "fertilizedPaidIndex mismatch" + ); + + // get the fertFirst + uint256 fertFirst = vm.parseUint( + vm.toString(searchPropertyData("storage.fertFirst", BARN_JSON_PATH)) + ); + assertEq(fertFirst, systemFertilizer.fertFirst, "fertFirst mismatch"); + + // get the fertLast + uint256 fertLast = vm.parseUint( + vm.toString(searchPropertyData("storage.fertLast", BARN_JSON_PATH)) + ); + assertEq(fertLast, systemFertilizer.fertLast, "fertLast mismatch"); + + // get the bpf + uint128 bpf = uint128( + vm.parseUint(vm.toString(searchPropertyData("storage.bpf", BARN_JSON_PATH))) + ); + assertEq(bpf, systemFertilizer.bpf, "bpf mismatch"); + + // get the leftoverBeans + uint256 leftoverBeans = vm.parseUint( + vm.toString(searchPropertyData("storage.leftoverBeans", BARN_JSON_PATH)) + ); + assertEq(leftoverBeans, systemFertilizer.leftoverBeans, "leftoverBeans mismatch"); + } - function test_barn_payback_state() public {} + function test_barnPaybackStateAccount() public { + uint256 accountNumber = getAccountNumber(BARN_ADDRESSES_PATH); + console.log("Testing barn payback state for", accountNumber, "accounts"); + + string memory account; + + // For every account + for (uint256 i = 0; i < accountNumber; i++) { + account = vm.readLine(BARN_ADDRESSES_PATH); + address accountAddr = vm.parseAddress(account); + + // Get fertilizer data for this account using the fertilizer finder + bytes memory accountFertilizerData = searchAccountFertilizer(accountAddr); + FertDepositData[] memory expectedFertilizers = abi.decode( + accountFertilizerData, + (FertDepositData[]) + ); + + // For each expected fertilizer, verify the balance matches + for (uint256 j = 0; j < expectedFertilizers.length; j++) { + FertDepositData memory expectedFert = expectedFertilizers[j]; + + // Get actual balance from barn payback contract + uint256 actualBalance = barnPayback.balanceOf(accountAddr, expectedFert.fertId); + + // Compare the balances + assertEq( + actualBalance, + expectedFert.amount, + string.concat( + "Fertilizer balance mismatch for account ", + account, + " fertilizer ID ", + vm.toString(expectedFert.fertId) + ) + ); + } + } + } //////////////////////// SHIPMENT DISTRIBUTION //////////////////////// - // note: test distribution at the edge, - // note: test when a payback is done + + // note: test distribution normal case, well above 1billion supply + function test_shipmentDistributionKicksInAtCorrectSupply() public { + // get the total supply before minting + uint256 totalSupplyBefore = IERC20(L2_PINTO).totalSupply(); + console.log("Total supply before minting", totalSupplyBefore); + assertLt(totalSupplyBefore, SUPPLY_THRESHOLD, "Total supply is not below the threshold"); + + // mint 1bil supply to get well above the threshold + deal(L2_PINTO, address(this), SUPPLY_THRESHOLD, true); + + // get the total supply of pinto + uint256 totalSupplyAfter = IERC20(L2_PINTO).totalSupply(); + console.log("Total supply after minting", totalSupplyAfter); + // assert the total supply is above the threshold + assertGt(totalSupplyAfter, SUPPLY_THRESHOLD, "Total supply is not above the threshold"); + + // get the totalDeltaB + int256 totalDeltaB = pinto.totalDeltaB(); + console.log("Total delta B", totalDeltaB); + assertGt(totalDeltaB, 0, "System should be above the value target"); + + // skip 2 blocks and call sunrise + _skipAndCallSunrise(); + } + + // note: test distribution at the edge, ~1bil supply, asserts the scaling is correct + function test_shipmentDistributionScaledAtSupplyEdge() public {} + + // note: test when a payback is done, + // replace the payback contracts with mock contracts via etch to return 0 on silo and barn payback remaining calls + // or use vm.mockCall to return 0 on silo and barn payback remaining calls + function test_shipmentDistributionFinishesWhenNoRemainingPayback() public {} + // note: test that all users can claim their rewards at any point + // iterate through the accounts array of silo and fert payback and claim the rewards for each + // silo + function test_siloPaybackClaimShipmentDistribution() public {} + // barn + function test_barnPaybackClaimShipmentDistribution() public {} + + //////////////////// Helper Functions //////////////////// + + function searchPropertyData( + string memory property, + string memory jsonFilePath + ) public returns (bytes memory) { + string[] memory inputs = new string[](4); + inputs[0] = "node"; + inputs[1] = "./scripts/deployment/parameters/finders/finder.js"; + inputs[2] = jsonFilePath; + inputs[3] = property; + bytes memory propertyValue = vm.ffi(inputs); + return propertyValue; + } + + function searchAccountFertilizer(address account) public returns (bytes memory) { + string[] memory inputs = new string[](4); + inputs[0] = "node"; + inputs[1] = "./scripts/beanstalkShipments/utils/fertilizerFinder.js"; + inputs[2] = BARN_JSON_PATH; + inputs[3] = vm.toString(account); + bytes memory accountFertilizer = vm.ffi(inputs); + return accountFertilizer; + } + + /// @dev returns the number of accounts in the txt account file + function getAccountNumber(string memory addressesFilePath) public returns (uint256) { + string memory content = vm.readFile(addressesFilePath); + string[] memory lines = vm.split(content, "\n"); + + uint256 count = 0; + for (uint256 i = 0; i < lines.length; i++) { + if (bytes(lines[i]).length > 0) { + count++; + } + } + return count; + } + + function _getSystemFertilizer() internal view returns (SystemFertilizerStruct memory) { + ( + uint256 activeFertilizer, + uint256 fertilizedIndex, + uint256 unfertilizedIndex, + uint256 fertilizedPaidIndex, + uint128 fertFirst, + uint128 fertLast, + uint128 bpf, + uint256 leftoverBeans + ) = barnPayback.fert(); + return + SystemFertilizerStruct({ + activeFertilizer: uint256(activeFertilizer), + fertilizedIndex: fertilizedIndex, + unfertilizedIndex: unfertilizedIndex, + fertilizedPaidIndex: fertilizedPaidIndex, + fertFirst: fertFirst, + fertLast: fertLast, + bpf: bpf, + leftoverBeans: leftoverBeans + }); + } + + function _skipAndCallSunrise() internal { + // skip 2 blocks and call sunrise + vm.roll(block.number + 2); + vm.warp(block.timestamp + 30 seconds); + pinto.sunrise(); + } } From bb7c37619cafd07978ec7d997b53a683d096cb7c Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 20 Aug 2025 11:29:23 +0300 Subject: [PATCH 045/270] verify all shipment routes --- contracts/interfaces/IShipmentPlanner.sol | 8 ++++ hardhat.config.js | 1 + .../BeanstalkShipments.t.sol | 41 +++++++++++-------- 3 files changed, 32 insertions(+), 18 deletions(-) diff --git a/contracts/interfaces/IShipmentPlanner.sol b/contracts/interfaces/IShipmentPlanner.sol index 138c2834..acefa407 100644 --- a/contracts/interfaces/IShipmentPlanner.sol +++ b/contracts/interfaces/IShipmentPlanner.sol @@ -20,4 +20,12 @@ interface IShipmentPlanner { function getPaybackPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan); + + function getPaybackSiloPlan( + bytes memory data + ) external view returns (ShipmentPlan memory shipmentPlan); + + function getPaybackBarnPlan( + bytes memory data + ) external view returns (ShipmentPlan memory shipmentPlan); } diff --git a/hardhat.config.js b/hardhat.config.js index d803e0e4..02f5a3de 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2125,6 +2125,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi "LibWeather" ] }, + initFacetName: "InitBeanstalkShipments", initArgs: [routes], verbose: true, account: owner diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 38bb674d..53d67e08 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -72,6 +72,7 @@ contract BeanstalkShipmentsTest is TestHelper { } // Constants + uint256 constant ACTIVE_FIELD_ID = 0; uint256 constant PAYBACK_FIELD_ID = 1; uint256 constant SUPPLY_THRESHOLD = 1_000_000_000e6; @@ -116,30 +117,34 @@ contract BeanstalkShipmentsTest is TestHelper { function test_beanstalkShipmentRoutes() public { // get shipment routes IMockFBeanstalk.ShipmentRoute[] memory routes = pinto.getShipmentRoutes(); + + // assert length is 6 + assertEq(routes.length, 6, "Shipment routes length mismatch"); + // silo (0x01) - assertEq(routes[0].planSelector, ShipmentPlanner.getSiloPlan.selector); - assertEq(uint8(routes[0].recipient), uint8(ShipmentRecipient.SILO)); - assertEq(routes[0].data, new bytes(32)); + assertEq(routes[0].planSelector, ShipmentPlanner.getSiloPlan.selector, "Silo plan selector mismatch"); + assertEq(uint8(routes[0].recipient), uint8(ShipmentRecipient.SILO), "Silo recipient mismatch"); + assertEq(routes[0].data, new bytes(32), "Silo data mismatch"); // field (0x02) - assertEq(routes[1].planSelector, ShipmentPlanner.getFieldPlan.selector); - assertEq(uint8(routes[1].recipient), uint8(ShipmentRecipient.FIELD)); - assertEq(routes[1].data, abi.encodePacked(uint256(0))); + assertEq(routes[1].planSelector, ShipmentPlanner.getFieldPlan.selector, "Field plan selector mismatch"); + assertEq(uint8(routes[1].recipient), uint8(ShipmentRecipient.FIELD), "Field recipient mismatch"); + assertEq(routes[1].data, abi.encodePacked(uint256(0)), "Field data mismatch"); // budget (0x03) - assertEq(routes[2].planSelector, ShipmentPlanner.getBudgetPlan.selector); - assertEq(uint8(routes[2].recipient), uint8(ShipmentRecipient.INTERNAL_BALANCE)); - assertEq(routes[2].data, abi.encode(DEV_BUDGET)); + assertEq(routes[2].planSelector, ShipmentPlanner.getBudgetPlan.selector, "Budget plan selector mismatch"); + assertEq(uint8(routes[2].recipient), uint8(ShipmentRecipient.INTERNAL_BALANCE), "Budget recipient mismatch"); + assertEq(routes[2].data, abi.encode(DEV_BUDGET), "Budget data mismatch"); // payback field (0x02) - assertEq(routes[3].planSelector, ShipmentPlanner.getPaybackFieldPlan.selector); - assertEq(uint8(routes[3].recipient), uint8(ShipmentRecipient.FIELD)); - assertEq(routes[3].data, abi.encode(PAYBACK_FIELD_ID, PCM)); + assertEq(routes[3].planSelector, ShipmentPlanner.getPaybackFieldPlan.selector, "Payback field plan selector mismatch"); + assertEq(uint8(routes[3].recipient), uint8(ShipmentRecipient.FIELD), "Payback field recipient mismatch"); + assertEq(routes[3].data, abi.encode(ACTIVE_FIELD_ID), "Payback field data mismatch"); // payback silo (0x05) - assertEq(routes[4].planSelector, ShipmentPlanner.getPaybackSiloPlan.selector); - assertEq(uint8(routes[4].recipient), uint8(ShipmentRecipient.SILO_PAYBACK)); - assertEq(routes[4].data, abi.encode(SILO_PAYBACK)); + assertEq(routes[4].planSelector, ShipmentPlanner.getPaybackSiloPlan.selector, "Payback silo plan selector mismatch"); + assertEq(uint8(routes[4].recipient), uint8(ShipmentRecipient.SILO_PAYBACK), "Payback silo recipient mismatch"); + assertEq(routes[4].data, abi.encode(SILO_PAYBACK), "Payback silo data mismatch"); // payback barn (0x06) - assertEq(routes[5].planSelector, ShipmentPlanner.getPaybackBarnPlan.selector); - assertEq(uint8(routes[5].recipient), uint8(ShipmentRecipient.BARN_PAYBACK)); - assertEq(routes[5].data, abi.encode(BARN_PAYBACK)); + assertEq(routes[5].planSelector, ShipmentPlanner.getPaybackBarnPlan.selector, "Payback barn plan selector mismatch"); + assertEq(uint8(routes[5].recipient), uint8(ShipmentRecipient.BARN_PAYBACK), "Payback barn recipient mismatch"); + assertEq(routes[5].data, abi.encode(BARN_PAYBACK), "Payback barn data mismatch"); } //////////////////// Field State Verification //////////////////// From ba99b77bb50e11e265d5b51ef09fff77d3bce519 Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 20 Aug 2025 13:16:41 +0300 Subject: [PATCH 046/270] initial distribution contract for contract accounts --- contracts/ecosystem/ShipmentPlanner.sol | 8 +- .../ContractPaybackDistributor.sol | 169 ++++++++++++++++++ contracts/interfaces/IBeanstalk.sol | 20 +++ hardhat.config.js | 7 +- .../populateBeanstalkField.js | 3 +- .../BeanstalkShipments.t.sol | 136 +++++++++----- 6 files changed, 285 insertions(+), 58 deletions(-) create mode 100644 contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index dd35b28b..c2166b6d 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -86,7 +86,7 @@ contract ShipmentPlanner { */ function getBudgetPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan) { uint256 budgetRatio = budgetMintRatio(); - require(budgetRatio > 0); + require(budgetRatio > 0, "ShipmentPlanner: Supply above flipping point, no budget allocation"); uint256 points = (BUDGET_POINTS * budgetRatio) / PRECISION; uint256 cap = (beanstalk.time().standardMintedBeans * 3) / 100; return ShipmentPlan({points: points, cap: cap}); @@ -100,7 +100,7 @@ contract ShipmentPlanner { bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { uint256 paybackRatio = PRECISION - budgetMintRatio(); - require(paybackRatio > 0); + require(paybackRatio > 0, "ShipmentPlanner: Supply above flipping point, no payback allocation"); (uint256 fieldId, address siloPaybackContract, address barnPaybackContract) = abi.decode( data, @@ -151,7 +151,7 @@ contract ShipmentPlanner { ) external view returns (ShipmentPlan memory shipmentPlan) { // get the payback ratio to scale the points if needed uint256 paybackRatio = PRECISION - budgetMintRatio(); - require(paybackRatio > 0); + require(paybackRatio > 0, "ShipmentPlanner: Supply above flipping point, no payback allocation"); // perform a static call to the silo payback contract to get the remaining silo debt (address siloPaybackContract, address barnPaybackContract) = abi.decode( data, @@ -193,7 +193,7 @@ contract ShipmentPlanner { ) external view returns (ShipmentPlan memory shipmentPlan) { // get the payback ratio to scale the points if needed uint256 paybackRatio = PRECISION - budgetMintRatio(); - require(paybackRatio > 0); + require(paybackRatio > 0, "ShipmentPlanner: Supply above flipping point, no payback allocation"); // perform a static call to the fert payback contract to get the remaining fert debt (address siloPaybackContract, address barnPaybackContract) = abi.decode( diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol new file mode 100644 index 00000000..be3e2eb6 --- /dev/null +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -0,0 +1,169 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import {ReentrancyGuard} from "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {Season} from "contracts/beanstalk/storage/System.sol"; +import {IBudget} from "contracts/interfaces/IBudget.sol"; +import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; +import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; +import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; + +/** + * @title ContractPaybackDistributor + * @notice Contract that distributes the beanstalk repayment assets to the contract accounts. + * After the distribution, this contract will custody and distrubute all assets for all eligible contract accounts. + * + * Contract accounts eligible for Beanstalk repayment assets can either: + * + * 1. Deploy their contracts on the same address as in Ethereum L1 using the following methods: + * - For safe multisigs with version >1.3.0 , deploy their safe from the official UI + * (https://help.safe.global/en/articles/222612-deploying-a-multi-chain-safe) + * - For regular contracts, deploy using the same deployer nonce as on L1 to replicate their address on Base + * - For amibre wallets just perform a transaction on Base to activate their account + * Once their address is replicated they can just call claimDirect() and receive their assets. + * + * 2. Send a cross chain message from Ethereum L1 using the cross chain messenger that when + * received, calls claimFromMessage and receive their assets in an address of their choice + * + */ +contract ContractPaybackDistributor is ReentrancyGuard { + using SafeERC20 for IERC20; + + struct AccountFertilizerClaimData { + address contractAccount; + uint256[] fertilizerIds; + uint256[] fertilizerAmounts; + } + + struct AccountPlotClaimData { + address contractAccount; + uint256 fieldId; + uint256[] ids; + uint256[] starts; + uint256[] ends; + } + + /// @dev whitelisted contract accounts + mapping(address contractAccount => bool whitelisted) public isWhitelisted; + /// @dev keep track of which contracts have claimed + mapping(address contractAccount => bool hasClaimed) public claimed; + /// @dev keep track of how many silo payback tokens are owed to each whitelisted contract + mapping(address contractAccount => uint256 siloPaybackTokensOwed) public siloPaybackTokensOwed; + /// @dev keep track of which fertilizer tokens are owed to each whitelisted contract + mapping(address contractAccount => AccountFertilizerClaimData) public accountFertilizer; + /// @dev keep track of which plots are owed to each whitelisted contract + mapping(address contractAccount => AccountPlotClaimData) public accountPlots; + + IBeanstalk immutable pintoProtocol; + IERC20 immutable siloPayback; + IBarnPayback immutable barnPayback; + + /** + * @param _contractAccounts The contract accounts that are allowed to claim + * @param _siloPaybackTokensOwed The amount of silo payback tokens owed to each contract + * @param _fertilizerClaims The fertilizer claims for each contract + * @param _plotClaims The plot claims for each contract + * @param _pintoProtocol The pinto protocol address + * @param _siloPayback The silo payback contract address + * @param _barnPayback The barn payback contract address + */ + constructor( + address[] memory _contractAccounts, + uint256[] memory _siloPaybackTokensOwed, + AccountFertilizerClaimData[] memory _fertilizerClaims, + AccountPlotClaimData[] memory _plotClaims, + address _pintoProtocol, + address _siloPayback, + address _barnPayback + ) { + // whitelist the contract accounts and set their claims + for (uint256 i = 0; i < _contractAccounts.length; i++) { + isWhitelisted[_contractAccounts[i]] = true; + siloPaybackTokensOwed[_contractAccounts[i]] = _siloPaybackTokensOwed[i]; + accountFertilizer[_contractAccounts[i]] = _fertilizerClaims[i]; + accountPlots[_contractAccounts[i]] = _plotClaims[i]; + } + pintoProtocol = IBeanstalk(_pintoProtocol); + siloPayback = IERC20(_siloPayback); + barnPayback = IBarnPayback(_barnPayback); + } + + /** + * @notice Allows a contract account to claim their beanstalk repayment assets directly. + * @param receiver The address to transfer the assets to + */ + function claimDirect(address receiver) external nonReentrant { + require( + isWhitelisted[msg.sender], + "ContractPaybackDistributor: Caller not whitelisted for claim" + ); + require(!claimed[msg.sender], "ContractPaybackDistributor: Caller already claimed"); + + // mark the caller as claimed + claimed[msg.sender] = true; + + _transferAllAssetsForAccount(msg.sender, receiver); + } + + // receives a message from the l1 and distrubutes all assets. + function claimFromMessage(bytes memory message) public nonReentrant { + // todo: decode message, verify and send assets. + + require( + isWhitelisted[msg.sender], + "ContractPaybackDistributor: Caller not whitelisted for claim" + ); + require(!claimed[msg.sender], "ContractPaybackDistributor: Caller already claimed"); + claimed[msg.sender] = true; + + address receiver = abi.decode(message, (address)); + // _transferAllAssetsForAccount(msg.sender, receiver); + } + + /** + * @notice Transfers all assets for a whitelisted contract account to a receiver + * @param account The address of the account to claim from + * @param receiver The address to transfer the assets to + */ + function _transferAllAssetsForAccount(address account, address receiver) internal { + // get the amount of silo payback tokens owed to the contract account + uint256 claimableSiloPaybackTokens = siloPaybackTokensOwed[account]; + + // get the amount of fertilizer tokens owed to the contract account + uint256[] memory fertilizerIds = accountFertilizer[account].fertilizerIds; + uint256[] memory fertilizerAmounts = accountFertilizer[account].fertilizerAmounts; + + // get the amount of plots owed to the contract account + uint256 fieldId = accountPlots[account].fieldId; + uint256[] memory plotIds = accountPlots[account].ids; + uint256[] memory starts = accountPlots[account].starts; + uint256[] memory ends = accountPlots[account].ends; + + // transfer silo payback tokens to the contract account + if (claimableSiloPaybackTokens > 0) { + siloPayback.safeTransfer(receiver, claimableSiloPaybackTokens); + } + + // transfer fertilizer erc115s to the contract account + // note: if the receiver is a contract it must implement the IERC1155Receiver interface + if (fertilizerIds.length > 0) { + barnPayback.safeBatchTransferFrom( + address(this), + receiver, + fertilizerIds, + fertilizerAmounts, + "" + ); + } + + // transfer the plots to the receiver + // todo: very unlikely but need to test with + // 0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997 that has a ton of plots + // to make sure gas is not an issue + if (plotIds.length > 0) { + pintoProtocol.transferPlots(address(this), receiver, fieldId, plotIds, starts, ends); + } + } +} diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 9a2d7c3f..9ceacabf 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -197,6 +197,26 @@ interface IBeanstalk { LibTransfer.To toMode ) external payable; + + function transferPlot( + address sender, + address recipient, + uint256 fieldId, + uint256 index, + uint256 start, + uint256 end + ) external payable; + + + function transferPlots( + address sender, + address recipient, + uint256 fieldId, + uint256[] calldata ids, + uint256[] calldata starts, + uint256[] calldata ends + ) external payable; + function update(address account) external payable; function updateSortedDepositIds( diff --git a/hardhat.config.js b/hardhat.config.js index 02f5a3de..961658d0 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2032,9 +2032,10 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi // params const verbose = true; const deploy = true; - const populateData = false; + const populateData = true; const populateField = true; const parseContracts = true; + const mockFieldData = false; // Step 0: Parse export data into required format console.log("\nšŸ“Š STEP 0: PARSING EXPORT DATA"); @@ -2087,7 +2088,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi console.log("šŸ“ˆ STEP 2: CREATING BEANSTALK FIELD"); console.log("-".repeat(50)); if (populateField) { - await populateBeanstalkField(L2_PINTO, owner, verbose); + await populateBeanstalkField(L2_PINTO, owner, verbose, mockFieldData); } // Step 3: Update shipment routes @@ -2156,7 +2157,7 @@ module.exports = { localhost: { chainId: 1337, url: "http://127.0.0.1:8545/", - timeout: 1000000000, + timeout: 100000000000000000, accounts: "remote" }, mainnet: { diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 9d67c82d..200f7788 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -13,9 +13,8 @@ const { * @param {Object} account - The account to use for the transaction * @param {boolean} verbose - Whether to log verbose output */ -async function populateBeanstalkField(diamondAddress, account, verbose = false) { +async function populateBeanstalkField(diamondAddress, account, verbose = false, mockData = false) { console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots."); - const mockData = true; // Read and parse the JSON file const plotsPath = mockData diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 53d67e08..7f537f0a 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -92,25 +92,7 @@ contract BeanstalkShipmentsTest is TestHelper { // - make the system print, check distribution in each contract // - for each component, make sure everything is distributed correctly // - make sure that at any point all users can claim their rewards pro rata - function setUp() public { - // add liquidity to the well to make deltaB>0 - - // addLiquidityToPintoWell( - // farmer1, - // PINTO_CBETH_WELL, - // 10e6, // 10 Beans - // 10 ether // 10 WETH of wstETH - // ); - - // addLiquidityToPintoWell( - // farmer1, - // PINTO_CBBTC_WELL, - // 10e6, // 10 Beans - // 2e8 // 2 btc - // ); - - console.log("Total delta B", pinto.totalDeltaB()); - } + function setUp() public {} //////////////////////// STATE VERIFICATION //////////////////////// @@ -122,28 +104,76 @@ contract BeanstalkShipmentsTest is TestHelper { assertEq(routes.length, 6, "Shipment routes length mismatch"); // silo (0x01) - assertEq(routes[0].planSelector, ShipmentPlanner.getSiloPlan.selector, "Silo plan selector mismatch"); - assertEq(uint8(routes[0].recipient), uint8(ShipmentRecipient.SILO), "Silo recipient mismatch"); + assertEq( + routes[0].planSelector, + ShipmentPlanner.getSiloPlan.selector, + "Silo plan selector mismatch" + ); + assertEq( + uint8(routes[0].recipient), + uint8(ShipmentRecipient.SILO), + "Silo recipient mismatch" + ); assertEq(routes[0].data, new bytes(32), "Silo data mismatch"); // field (0x02) - assertEq(routes[1].planSelector, ShipmentPlanner.getFieldPlan.selector, "Field plan selector mismatch"); - assertEq(uint8(routes[1].recipient), uint8(ShipmentRecipient.FIELD), "Field recipient mismatch"); + assertEq( + routes[1].planSelector, + ShipmentPlanner.getFieldPlan.selector, + "Field plan selector mismatch" + ); + assertEq( + uint8(routes[1].recipient), + uint8(ShipmentRecipient.FIELD), + "Field recipient mismatch" + ); assertEq(routes[1].data, abi.encodePacked(uint256(0)), "Field data mismatch"); // budget (0x03) - assertEq(routes[2].planSelector, ShipmentPlanner.getBudgetPlan.selector, "Budget plan selector mismatch"); - assertEq(uint8(routes[2].recipient), uint8(ShipmentRecipient.INTERNAL_BALANCE), "Budget recipient mismatch"); + assertEq( + routes[2].planSelector, + ShipmentPlanner.getBudgetPlan.selector, + "Budget plan selector mismatch" + ); + assertEq( + uint8(routes[2].recipient), + uint8(ShipmentRecipient.INTERNAL_BALANCE), + "Budget recipient mismatch" + ); assertEq(routes[2].data, abi.encode(DEV_BUDGET), "Budget data mismatch"); // payback field (0x02) - assertEq(routes[3].planSelector, ShipmentPlanner.getPaybackFieldPlan.selector, "Payback field plan selector mismatch"); - assertEq(uint8(routes[3].recipient), uint8(ShipmentRecipient.FIELD), "Payback field recipient mismatch"); + assertEq( + routes[3].planSelector, + ShipmentPlanner.getPaybackFieldPlan.selector, + "Payback field plan selector mismatch" + ); + assertEq( + uint8(routes[3].recipient), + uint8(ShipmentRecipient.FIELD), + "Payback field recipient mismatch" + ); assertEq(routes[3].data, abi.encode(ACTIVE_FIELD_ID), "Payback field data mismatch"); // payback silo (0x05) - assertEq(routes[4].planSelector, ShipmentPlanner.getPaybackSiloPlan.selector, "Payback silo plan selector mismatch"); - assertEq(uint8(routes[4].recipient), uint8(ShipmentRecipient.SILO_PAYBACK), "Payback silo recipient mismatch"); + assertEq( + routes[4].planSelector, + ShipmentPlanner.getPaybackSiloPlan.selector, + "Payback silo plan selector mismatch" + ); + assertEq( + uint8(routes[4].recipient), + uint8(ShipmentRecipient.SILO_PAYBACK), + "Payback silo recipient mismatch" + ); assertEq(routes[4].data, abi.encode(SILO_PAYBACK), "Payback silo data mismatch"); // payback barn (0x06) - assertEq(routes[5].planSelector, ShipmentPlanner.getPaybackBarnPlan.selector, "Payback barn plan selector mismatch"); - assertEq(uint8(routes[5].recipient), uint8(ShipmentRecipient.BARN_PAYBACK), "Payback barn recipient mismatch"); + assertEq( + routes[5].planSelector, + ShipmentPlanner.getPaybackBarnPlan.selector, + "Payback barn plan selector mismatch" + ); + assertEq( + uint8(routes[5].recipient), + uint8(ShipmentRecipient.BARN_PAYBACK), + "Payback barn recipient mismatch" + ); assertEq(routes[5].data, abi.encode(BARN_PAYBACK), "Payback barn data mismatch"); } @@ -330,27 +360,17 @@ contract BeanstalkShipmentsTest is TestHelper { // note: test distribution normal case, well above 1billion supply function test_shipmentDistributionKicksInAtCorrectSupply() public { - // get the total supply before minting - uint256 totalSupplyBefore = IERC20(L2_PINTO).totalSupply(); - console.log("Total supply before minting", totalSupplyBefore); - assertLt(totalSupplyBefore, SUPPLY_THRESHOLD, "Total supply is not below the threshold"); - - // mint 1bil supply to get well above the threshold - deal(L2_PINTO, address(this), SUPPLY_THRESHOLD, true); + // supply is 1,010bil, sunrise is called and new pintos are distributed + increaseSupplyAndDistribute(); - // get the total supply of pinto - uint256 totalSupplyAfter = IERC20(L2_PINTO).totalSupply(); - console.log("Total supply after minting", totalSupplyAfter); - // assert the total supply is above the threshold - assertGt(totalSupplyAfter, SUPPLY_THRESHOLD, "Total supply is not above the threshold"); + // assert that: 1 % of mints went to the payback field so harvestable index must have increased + assertGt(pinto.harvestableIndex(PAYBACK_FIELD_ID), 0, "Harvestable index must have increased"); - // get the totalDeltaB - int256 totalDeltaB = pinto.totalDeltaB(); - console.log("Total delta B", totalDeltaB); - assertGt(totalDeltaB, 0, "System should be above the value target"); + // assert that: 1 % of mints went to the silo so silo payback balance of pinto must have increased + assertGt(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), 0, "Silo payback balance must have increased"); - // skip 2 blocks and call sunrise - _skipAndCallSunrise(); + // assert that: 1 % of mints went to the barn so barn payback balance of pinto must have increased + assertGt(IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), 0, "Barn payback balance must have increased"); } // note: test distribution at the edge, ~1bil supply, asserts the scaling is correct @@ -437,4 +457,22 @@ contract BeanstalkShipmentsTest is TestHelper { vm.warp(block.timestamp + 30 seconds); pinto.sunrise(); } + + function increaseSupplyAndDistribute() internal { + // get the total supply before minting + uint256 totalSupplyBefore = IERC20(L2_PINTO).totalSupply(); + assertLt(totalSupplyBefore, SUPPLY_THRESHOLD, "Total supply is not below the threshold"); + + // mint 1bil supply to get well above the threshold + deal(L2_PINTO, address(this), SUPPLY_THRESHOLD, true); + + // get the total supply of pinto + uint256 totalSupplyAfter = IERC20(L2_PINTO).totalSupply(); + console.log("Total supply after minting", totalSupplyAfter); + // assert the total supply is above the threshold + assertGt(totalSupplyAfter, SUPPLY_THRESHOLD, "Total supply is not above the threshold"); + assertGt(pinto.totalDeltaB(), 0, "System should be above the value target"); + // skip 2 blocks and call sunrise + _skipAndCallSunrise(); + } } From ce8367fdfc2ee8a3e5ad356eaf48fba253282889 Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 20 Aug 2025 14:48:47 +0300 Subject: [PATCH 047/270] fix encoded data in routes, deploy and init contract distributor --- contracts/ecosystem/ShipmentPlanner.sol | 2 +- contracts/libraries/LibReceiving.sol | 8 +- .../data/contractDistributorData.json | 1380 +++++++++++++++++ .../data/updatedShipmentRoutes.json | 6 +- .../deployPaybackContracts.js | 204 ++- scripts/beanstalkShipments/parsers/index.js | 8 + .../parsers/parseBarnData.js | 3 +- .../parsers/parseContractData.js | 145 ++ .../parsers/parseFieldData.js | 3 +- .../parsers/parseSiloData.js | 3 +- .../BeanstalkShipments.t.sol | 18 +- 11 files changed, 1767 insertions(+), 13 deletions(-) create mode 100644 scripts/beanstalkShipments/data/contractDistributorData.json create mode 100644 scripts/beanstalkShipments/parsers/parseContractData.js diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index c2166b6d..242c02f7 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -131,7 +131,7 @@ contract ShipmentPlanner { points = PAYBACK_FIELD_POINTS + PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS; cap = min(cap, (beanstalk.time().standardMintedBeans * 3) / 100); // 3% } else if (barnRemaining == 0) { - // if silo remaining is 0 then 1.5% of all mints goes to fert and 1.5% goes to the field + // if barn remaining is 0 then 1.5% of all mints goes to silo and 1.5% goes to the field points = PAYBACK_FIELD_POINTS + ((PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS) * 1) / 4; cap = min(cap, (beanstalk.time().standardMintedBeans * 15) / 1000); // 1.5% } else { diff --git a/contracts/libraries/LibReceiving.sol b/contracts/libraries/LibReceiving.sol index 5179f45e..b7f40c8f 100644 --- a/contracts/libraries/LibReceiving.sol +++ b/contracts/libraries/LibReceiving.sol @@ -88,6 +88,8 @@ library LibReceiving { /** * @notice Receive Bean at the Field. The next `shipmentAmount` Pods become harvestable. * @dev Amount should never exceed the number of Pods that are not yet Harvestable. + * @dev In the case of a payback field, even though it cointains additional data, + * the fieldId is always the first parameter. * @param shipmentAmount Amount of Bean to receive. * @param data Encoded uint256 containing the index of the Field to receive the Bean. */ @@ -150,7 +152,8 @@ library LibReceiving { */ function barnPaybackReceive(uint256 shipmentAmount, bytes memory data) private { AppStorage storage s = LibAppStorage.diamondStorage(); - address barnPaybackContract = abi.decode(data, (address)); + // barn payback is the second parameter in the data + (, address barnPaybackContract) = abi.decode(data, (address, address)); // transfer the shipment amount to the barn payback contract LibTransfer.sendToken( @@ -178,7 +181,8 @@ library LibReceiving { */ function siloPaybackReceive(uint256 shipmentAmount, bytes memory data) private { AppStorage storage s = LibAppStorage.diamondStorage(); - address siloPaybackContract = abi.decode(data, (address)); + // silo payback is the first parameter in the data + (address siloPaybackContract, ) = abi.decode(data, (address, address)); // transfer the shipment amount to the silo payback contract LibTransfer.sendToken( diff --git a/scripts/beanstalkShipments/data/contractDistributorData.json b/scripts/beanstalkShipments/data/contractDistributorData.json new file mode 100644 index 00000000..dec13095 --- /dev/null +++ b/scripts/beanstalkShipments/data/contractDistributorData.json @@ -0,0 +1,1380 @@ +{ + "contractAccounts": [ + "0x0245934a930544c7046069968eb4339b03addfcf", + "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", + "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", + "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", + "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95", + "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", + "0x9008D19f58AAbD9eD0D60971565AA8510560ab41", + "0xAA420e97534aB55637957e868b658193b112A551", + "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27", + "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0", + "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", + "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", + "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E", + "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", + "0x251FAe8f687545BDD462Ba4FCDd7581051740463", + "0x8525664820C549864982D4965a41F83A7d26AF58", + "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997" + ], + "siloPaybackTokensOwed": [ + "3", + "1210864256332", + "79602258619", + "1918965278639", + "1129291156", + "62672894779", + "230057326178", + "22023088835", + "2852385621956", + "4", + "23959976085", + "63462001011", + "8568", + "99437500", + "291524996", + "20754000000", + "116127823", + "1893551014", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + "fertilizerClaims": [ + { + "contractAccount": "0x0245934a930544c7046069968eb4339b03addfcf", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0xAA420e97534aB55637957e868b658193b112A551", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "fertilizerIds": [ + "3458512", + "3458531", + "3470220", + "6000000" + ], + "fertilizerAmounts": [ + "542767", + "56044", + "291896", + "8046712" + ] + }, + { + "contractAccount": "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", + "fertilizerIds": [ + "3500000", + "6000000" + ], + "fertilizerAmounts": [ + "40000", + "51100" + ] + }, + { + "contractAccount": "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "3025" + ] + }, + { + "contractAccount": "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E", + "fertilizerIds": [ + "3471974" + ], + "fertilizerAmounts": [ + "10" + ] + }, + { + "contractAccount": "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "3180" + ] + }, + { + "contractAccount": "0x251FAe8f687545BDD462Ba4FCDd7581051740463", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0x8525664820C549864982D4965a41F83A7d26AF58", + "fertilizerIds": [], + "fertilizerAmounts": [] + }, + { + "contractAccount": "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997", + "fertilizerIds": [], + "fertilizerAmounts": [] + } + ], + "plotClaims": [ + { + "contractAccount": "0x0245934a930544c7046069968eb4339b03addfcf", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", + "fieldId": "1", + "ids": [ + "344618618497376" + ], + "starts": [ + "0" + ], + "ends": [ + "81000597500" + ] + }, + { + "contractAccount": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0xAA420e97534aB55637957e868b658193b112A551", + "fieldId": "1", + "ids": [ + "31772724860478" + ], + "starts": [ + "0" + ], + "ends": [ + "43540239232" + ] + }, + { + "contractAccount": "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "fieldId": "1", + "ids": [ + "28553316405699", + "32013293099710", + "33262951017861", + "33290510627174", + "118322555232226", + "180071240663041", + "317859517384357", + "338910099578361", + "444973868346640", + "477195175494445", + "706133899990342", + "721409921103392", + "726480740731617", + "729812277370084", + "735554122237517", + "744819318753537", + "760472183068657" + ], + "starts": [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + "ends": [ + "56203360846", + "15000000000", + "9375000000", + "565390687", + "5892426278", + "81992697619", + "291195415400", + "72913082044", + "61560768641", + "29857571563", + "2720589483246", + "4415003338706", + "2047412139790", + "5650444595733", + "2514215964115", + "98324836380", + "71399999953" + ] + }, + { + "contractAccount": "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", + "fieldId": "1", + "ids": [ + "462646168927", + "647175726076112", + "720495305315880" + ], + "starts": [ + "0", + "0", + "0" + ], + "ends": [ + "1666666666", + "16711431033", + "55569209804" + ] + }, + { + "contractAccount": "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E", + "fieldId": "1", + "ids": [], + "starts": [], + "ends": [] + }, + { + "contractAccount": "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", + "fieldId": "1", + "ids": [ + "634031481420456", + "647388734023467", + "721225229970053", + "741007335527824", + "743270084189585" + ], + "starts": [ + "0", + "0", + "0", + "0", + "0" + ], + "ends": [ + "3170719864", + "9748779666", + "55487912201", + "48848467587", + "44269246366" + ] + }, + { + "contractAccount": "0x251FAe8f687545BDD462Ba4FCDd7581051740463", + "fieldId": "1", + "ids": [ + "28368015360976", + "33106872744841", + "38722543672289", + "61000878716919", + "72536373875278", + "75784287632794", + "75995951619880", + "217474381338301", + "220144194502828", + "333622810114113", + "378227726508635", + "574387565763701", + "575679606872092", + "626184530707078", + "634034652140320", + "680095721530457", + "767824420446983", + "767978192014986", + "790662167913055", + "792657494145217", + "845186146706783" + ], + "starts": [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + "ends": [ + "10000000000", + "6434958505", + "250000000", + "789407727", + "200000000", + "2935934380", + "5268032293", + "1293174476", + "47404123300", + "200755943301", + "645363133", + "55857695832", + "38492647384", + "90718871797", + "1827630964", + "10113856826", + "1158445599", + "1606680000", + "60917382823", + "11153713894", + "62659298764" + ] + }, + { + "contractAccount": "0x8525664820C549864982D4965a41F83A7d26AF58", + "fieldId": "1", + "ids": [ + "28385711672356" + ], + "starts": [ + "0" + ], + "ends": [ + "4000000000" + ] + }, + { + "contractAccount": "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997", + "fieldId": "1", + "ids": [ + "743356388661755", + "743356672709419", + "743357477641655", + "743358222242706", + "743358858802512", + "743359427829722", + "743360044452561", + "743360634868902", + "743361211817145", + "743361558991435", + "743474498214916", + "743511743622993", + "743539482459035", + "743575662666260", + "743600698167087", + "743630495498696", + "743655500242803", + "743683339211263", + "743715232207665", + "743715386299109", + "743715742909728", + "743716535470658", + "743717465912681", + "743718396440568", + "743719327158832", + "743720227259710", + "743721114148315", + "743722931420691", + "743723263763777", + "743724247539524", + "743724657401075", + "743724754699738", + "743724841468431", + "743758351384781", + "743828125898584", + "743850107713372", + "743850150895666", + "743850188159903", + "743850188407614", + "743850188825560", + "743970693645298", + "744149549341165", + "759669831627157", + "759761297451604", + "759773643882684", + "759775201252262", + "759793466228152", + "759794285432848", + "759820979493945", + "759821049929135", + "759821114749502", + "759821772251897", + "759822114721445", + "759844955449185", + "759845017811534", + "759845097673944", + "759845176024847", + "759845257599860", + "759845339211703", + "759845419086397", + "759845499012078", + "759845578243712", + "759845651534881", + "759845766640518", + "759845823617743", + "759845895004270", + "759846058683685", + "759846134413094", + "759846162136020", + "759846192334006", + "759846350575818", + "759846474502111", + "759846598641700", + "759846623834951", + "759846649222491", + "759846954659102", + "759847586635496", + "759847653594023", + "759847698544603", + "759847745091804", + "759847763930840", + "759848034600283", + "759848595655012", + "759848782950665", + "759848808246117", + "759848981304400", + "759849045125533", + "759849070462313", + "759849099543704", + "759849128665876", + "759849157372869", + "759849170829070", + "759849207340352", + "759849248584132", + "759849282436810", + "759849316392935", + "759849350525552", + "759849367566775", + "759849387840672", + "759849396878147", + "759849442801928", + "759849495684737", + "759849567176346", + "759849606957706", + "759849642570643", + "759849688360602", + "759849734651926", + "759849781068480", + "759849827548506", + "759849856458453", + "759849877025014", + "759849897637984", + "759849923422103", + "759849966845504", + "759864364377919", + "759864377428188", + "759864451656441", + "759864497019333", + "759864542405730", + "759864623518170", + "759864639547896", + "759864666970344", + "759864712294540", + "759864794252615", + "759864839501675", + "759864878053872", + "759864923379852", + "759864968712520", + "759864983659561", + "759865028070737", + "759865073912287", + "759865111403591", + "759865189244823", + "759865235204630", + "759865309352063", + "759865363704424", + "759865401309329", + "759865502784387", + "759865545775991", + "759865588793765", + "759865634502895", + "759865655175792", + "759865673264324", + "759865849406376", + "759866099136204", + "759866210354501", + "759866238288974", + "759866265757869", + "759868180376858", + "759868225980551", + "759868271823279", + "759868317837719", + "759868363900948", + "759868366522237", + "759868420231465", + "759868472460443", + "759935033618046", + "759935079369547", + "759935171141704", + "759935217066027", + "759935244157971", + "759935291251999", + "759940035846319", + "759940115261530", + "759940220149474", + "759940324571976", + "759940371695183", + "759940431848469", + "759940458415728", + "759940486880466", + "759940529740783", + "759940553538875", + "759940575669691", + "759940703254106", + "759944301288885", + "759944524831820", + "759944631176184", + "759944876402388", + "759945236861297", + "759945663978694", + "759947353926358", + "759967315893614", + "759967359236250", + "759968303751614", + "759968390231662", + "759968565049433", + "759969182444540", + "759969313128560", + "759969922263950", + "759970009257032", + "759970096328147", + "759970659966091", + "759970895945609", + "759971171933682", + "759971792380007", + "759971848298778", + "759971899962466", + "759971951782615", + "759972005045778", + "759972051319140", + "759972063083193", + "759972107604345", + "759972270510579", + "759972378810991", + "759972432426724", + "759972545991397", + "759972586384002", + "759972626954274", + "759972656946269", + "759972684661677", + "759972695406835", + "759973067945793", + "760353358762258", + "760353369656132", + "760353370648423", + "760353370784739", + "760353371573213", + "760353372233103", + "760354201137939", + "760354238838872", + "760357963287583", + "760358123735957", + "760765586953427", + "760961254322316", + "761807542325030", + "761808255104338", + "761818941407193", + "761858011206868", + "761858211139284", + "761858291968910", + "761860307483525", + "762237672060652", + "762295918132248", + "762295986750224", + "762477170260262", + "762658275077583", + "762928154263486", + "762941373378458", + "762941584284511", + "762941637855962", + "762941691439629", + "763444820135647", + "763454275602361", + "763478961261387", + "763529207082055", + "763574531068892", + "763877196713494", + "763877250938021", + "763877347112986", + "763879425886186", + "763899542751244", + "763904856308950", + "763904947351082", + "763908632298791", + "763910715862653", + "763938664793385", + "763975977681622", + "763976127391221", + "763976238932410", + "763978572723857", + "763983475557042", + "763985961279749", + "763989323641528", + "764448523798789", + "764448533013699", + "764453314028098", + "766181126764911", + "766291456879801", + "767321251748842" + ], + "starts": [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + "ends": [ + "284047664", + "804932236", + "744601051", + "636559806", + "569027210", + "616622839", + "590416341", + "576948243", + "347174290", + "112939223481", + "37245408077", + "27738836042", + "36180207225", + "9251544878", + "4239282", + "25004744107", + "27838968460", + "1045028130", + "154091444", + "356610619", + "792560930", + "930442023", + "930527887", + "930718264", + "900100878", + "886888605", + "1195569000", + "332343086", + "983775747", + "409861551", + "97298663", + "86768693", + "33509916350", + "69774513803", + "21981814788", + "43182294", + "37264237", + "247711", + "417946", + "120504819738", + "178855695867", + "125886081790", + "91465441036", + "12346431080", + "1557369578", + "18264975890", + "133677", + "26613224094", + "70435190", + "64820367", + "315142246", + "342469548", + "22786793078", + "62362349", + "79862410", + "78350903", + "81575013", + "81611843", + "79874694", + "79925681", + "79231634", + "73291169", + "61264703", + "56977225", + "71386527", + "75906832", + "75729409", + "27722926", + "30197986", + "158241812", + "123926293", + "124139589", + "25193251", + "25387540", + "665345", + "631976394", + "66958527", + "44950580", + "46547201", + "18839036", + "270669443", + "365575215", + "187295653", + "25295452", + "173058283", + "63821133", + "25336780", + "29081391", + "29122172", + "28706993", + "13456201", + "36511282", + "41243780", + "33852678", + "33956125", + "34132617", + "17041223", + "20273897", + "9037475", + "45923781", + "52882809", + "71491609", + "39781360", + "35612937", + "45789959", + "46291324", + "46416554", + "46480026", + "28909947", + "20566561", + "20612970", + "9530420", + "43423401", + "11714877", + "13050269", + "28949561", + "45362892", + "45386397", + "44251644", + "16029726", + "27422448", + "45324196", + "45381527", + "45249060", + "38552197", + "45325980", + "45332668", + "14947041", + "44411176", + "45841550", + "37491304", + "35823677", + "45959807", + "28621023", + "54352361", + "37604905", + "48060122", + "41998112", + "43017774", + "45709130", + "20672897", + "18088532", + "176142052", + "249729828", + "111218297", + "27934473", + "27468895", + "1914618989", + "45603693", + "45842728", + "46014440", + "46063229", + "2621289", + "53709228", + "52228978", + "66561157603", + "45751501", + "45866818", + "45924323", + "27091944", + "47094028", + "4720868852", + "79415211", + "104887944", + "104422502", + "47123207", + "21522781", + "26567259", + "28464738", + "16535232", + "23798092", + "22130816", + "19923295", + "96921736", + "148924295", + "94934102", + "441416", + "86731197", + "37118", + "33147570", + "19648269869", + "43342636", + "73180835", + "86480048", + "87319503", + "57445411", + "86435423", + "78853009", + "86993082", + "87071115", + "87094141", + "7037654", + "88340633", + "103831674", + "55918771", + "51663688", + "51820149", + "53263163", + "46273362", + "11764053", + "44521152", + "54315334", + "52771216", + "53615733", + "54009683", + "40392605", + "40570272", + "29991995", + "27715408", + "10745158", + "53647337", + "43509245", + "10893874", + "992291", + "136316", + "147677", + "659890", + "46092807", + "3218014", + "3273321614", + "52520804", + "112541922486", + "195667368889", + "846285958415", + "712321671", + "10685317968", + "38669865140", + "52031027", + "53537634", + "1954482199", + "798157403", + "57392002182", + "68617976", + "181183510038", + "181104817321", + "181134595436", + "12718343972", + "61742453", + "53571451", + "53583667", + "503128696018", + "9452272123", + "24685659026", + "50245820668", + "45323986837", + "38976282600", + "54224527", + "54871543", + "53640521", + "18918512681", + "4287074277", + "91042132", + "3672111531", + "1924103043", + "4104368630", + "889781905", + "85746574", + "54879926", + "67220754", + "2432585925", + "2433575022", + "3362361779", + "66961666112", + "9214910", + "3175483736", + "886719471", + "110330114890", + "143444348214", + "180967833670" + ] + } + ] +} \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index a0bbf55c..0e089029 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -21,18 +21,18 @@ "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0x6fc9267a", "recipient": "0x2", - "data": "0x0000000000000000000000000000000000000000000000000000000000000001" + "data": "0x00000000000000000000000000000000000000000000000000000000000000010000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" }, { "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0xb34da3d2", "recipient": "0x5", - "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e" + "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" }, { "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0x5f6cc37d", "recipient": "0x6", - "data": "0x00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" + "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" } ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 0fdcbbdd..9761d14c 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -45,10 +45,35 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru await shipmentPlannerContract.deployed(); console.log("āœ… ShipmentPlanner deployed to:", shipmentPlannerContract.address); + //////////////////////////// Contract Payback Distributor //////////////////////////// + console.log("\nšŸ“¦ Deploying ContractPaybackDistributor..."); + const contractPaybackDistributorFactory = await ethers.getContractFactory("ContractPaybackDistributor", account); + + // Load constructor data + const contractDataPath = "./scripts/beanstalkShipments/data/contractDistributorData.json"; + const contractData = JSON.parse(fs.readFileSync(contractDataPath)); + + const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy( + contractData.contractAccounts, + contractData.siloPaybackTokensOwed, + contractData.fertilizerClaims, + contractData.plotClaims, + L2_PINTO, + siloPaybackContract.address, + barnPaybackContract.address + ); + await contractPaybackDistributorContract.deployed(); + console.log("āœ… ContractPaybackDistributor deployed to:", contractPaybackDistributorContract.address); + console.log(`šŸ“Š Managing ${contractData.contractAccounts.length} contract accounts`); + // log total gas used from deployment + const receipt = await contractPaybackDistributorContract.deployTransaction.wait(); + console.log("⛽ Gas used:", receipt.gasUsed.toString()); + return { siloPaybackContract, barnPaybackContract, - shipmentPlannerContract + shipmentPlannerContract, + contractPaybackDistributorContract }; } @@ -116,6 +141,47 @@ async function distributeUnripeBdvTokens({ } } +// Distributes silo payback tokens to ContractPaybackDistributor for ethContracts +async function distributeSiloTokensToDistributor({ + siloPaybackContract, + contractPaybackDistributorContract, + account, + verbose = true +}) { + if (verbose) console.log("šŸ­ Distributing silo payback tokens to ContractPaybackDistributor..."); + + try { + const contractDataPath = "./scripts/beanstalkShipments/data/contractDistributorData.json"; + const contractData = JSON.parse(fs.readFileSync(contractDataPath)); + + // Calculate total silo tokens owed to all contract accounts + const totalSiloOwed = contractData.siloPaybackTokensOwed.reduce((sum, amount) => { + return sum.add(ethers.BigNumber.from(amount)); + }, ethers.BigNumber.from(0)); + + console.log(`šŸ“Š Total silo tokens to distribute to ContractPaybackDistributor: ${totalSiloOwed.toString()}`); + + if (totalSiloOwed.gt(0)) { + // Mint the total amount to the ContractPaybackDistributor + const tx = await siloPaybackContract.connect(account).mint( + contractPaybackDistributorContract.address, + totalSiloOwed + ); + const receipt = await tx.wait(); + + if (verbose) { + console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + console.log("āœ… Silo payback tokens distributed to ContractPaybackDistributor"); + } + } else { + console.log("ā„¹ļø No silo tokens to distribute to ContractPaybackDistributor"); + } + } catch (error) { + console.error("Error distributing silo tokens to ContractPaybackDistributor:", error); + throw error; + } +} + // Distributes barn payback tokens from JSON file to contract recipients async function distributeBarnPaybackTokens({ barnPaybackContract, @@ -161,6 +227,115 @@ async function distributeBarnPaybackTokens({ } } +// Distributes fertilizer tokens to ContractPaybackDistributor for ethContracts +async function distributeFertilizerTokensToDistributor({ + barnPaybackContract, + contractPaybackDistributorContract, + account, + verbose = true +}) { + if (verbose) console.log("šŸ­ Distributing fertilizer tokens to ContractPaybackDistributor..."); + + try { + const contractDataPath = "./scripts/beanstalkShipments/data/contractDistributorData.json"; + const contractData = JSON.parse(fs.readFileSync(contractDataPath)); + + // Build fertilizer data for minting to ContractPaybackDistributor + const contractFertilizers = []; + + for (const fertilizerClaim of contractData.fertilizerClaims) { + if (fertilizerClaim.fertilizerIds.length > 0) { + // For each fertilizer ID, create account data pointing to ContractPaybackDistributor + for (let i = 0; i < fertilizerClaim.fertilizerIds.length; i++) { + const fertId = fertilizerClaim.fertilizerIds[i]; + const amount = fertilizerClaim.fertilizerAmounts[i]; + + // Find or create entry for this fertilizer ID + let fertilizerEntry = contractFertilizers.find(entry => entry[0] === fertId); + if (!fertilizerEntry) { + fertilizerEntry = [fertId, []]; + contractFertilizers.push(fertilizerEntry); + } + + // Add the amount to the ContractPaybackDistributor + fertilizerEntry[1].push([ + contractPaybackDistributorContract.address, + amount, + "340802" // Using the global beanBpf value + ]); + } + } + } + + console.log(`šŸ“Š Fertilizer IDs to mint to ContractPaybackDistributor: ${contractFertilizers.length}`); + + if (contractFertilizers.length > 0) { + const tx = await barnPaybackContract.connect(account).mintFertilizers(contractFertilizers); + const receipt = await tx.wait(); + + if (verbose) { + console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + console.log("āœ… Fertilizer tokens distributed to ContractPaybackDistributor"); + } + } else { + console.log("ā„¹ļø No fertilizer tokens to distribute to ContractPaybackDistributor"); + } + } catch (error) { + console.error("Error distributing fertilizer tokens to ContractPaybackDistributor:", error); + throw error; + } +} + +// Pre-sows plots for ContractPaybackDistributor using protocol sow function +async function sowPlotsForDistributor({ + pintoProtocol, + contractPaybackDistributorContract, + account, + verbose = true +}) { + if (verbose) console.log("🌾 Pre-sowing plots for ContractPaybackDistributor..."); + + try { + const contractDataPath = "./scripts/beanstalkShipments/data/contractDistributorData.json"; + const contractData = JSON.parse(fs.readFileSync(contractDataPath)); + + // Calculate total pods needed for all plots + let totalPodsNeeded = ethers.BigNumber.from(0); + let totalPlotsCount = 0; + + for (const plotClaim of contractData.plotClaims) { + for (let i = 0; i < plotClaim.ids.length; i++) { + const podAmount = ethers.BigNumber.from(plotClaim.ends[i]); + totalPodsNeeded = totalPodsNeeded.add(podAmount); + totalPlotsCount++; + } + } + + console.log(`šŸ“Š Total pods to sow for ContractPaybackDistributor: ${totalPodsNeeded.toString()}`); + console.log(`šŸ“Š Total plots to create: ${totalPlotsCount}`); + + if (totalPodsNeeded.gt(0)) { + // Note: This assumes we have beans available to sow and current soil/temperature conditions allow it + // In practice, this might need to be done during protocol initialization or through a special admin function + console.log("āš ļø WARNING: Plot sowing requires special protocol initialization"); + console.log("āš ļø This would typically be done through protocol admin functions during deployment"); + console.log(`āš ļø ContractPaybackDistributor address: ${contractPaybackDistributorContract.address}`); + console.log(`āš ļø Total beans needed for sowing: ${totalPodsNeeded.toString()}`); + + // For now, we'll log what needs to be done rather than attempt the sow operation + // since it requires specific protocol state and bean balance + if (verbose) { + console.log("šŸ“ Plot sowing will need to be handled through protocol initialization"); + } + } else { + console.log("ā„¹ļø No plots to sow for ContractPaybackDistributor"); + } + } catch (error) { + console.error("Error preparing plots for ContractPaybackDistributor:", error); + throw error; + } +} + // Transfers ownership of both payback contracts to PCM async function transferContractOwnership({ siloPaybackContract, @@ -195,6 +370,29 @@ async function deployAndSetupContracts(params) { dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", verbose: true }); + + // Distribute tokens to ContractPaybackDistributor for ethContracts + await distributeSiloTokensToDistributor({ + siloPaybackContract: contracts.siloPaybackContract, + contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, + account: params.account, + verbose: true + }); + + await distributeFertilizerTokensToDistributor({ + barnPaybackContract: contracts.barnPaybackContract, + contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, + account: params.account, + verbose: true + }); + + // Handle plot pre-sowing for ContractPaybackDistributor + await sowPlotsForDistributor({ + pintoProtocol: params.L2_PINTO, + contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, + account: params.account, + verbose: true + }); } await transferContractOwnership({ @@ -210,6 +408,10 @@ async function deployAndSetupContracts(params) { module.exports = { deployShipmentContracts, distributeUnripeBdvTokens, + distributeBarnPaybackTokens, + distributeSiloTokensToDistributor, + distributeFertilizerTokensToDistributor, + sowPlotsForDistributor, transferContractOwnership, deployAndSetupContracts }; diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 6605673a..0a17e4c2 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -1,6 +1,7 @@ const parseBarnData = require('./parseBarnData'); const parseFieldData = require('./parseFieldData'); const parseSiloData = require('./parseSiloData'); +const parseContractData = require('./parseContractData'); /** * Main parser orchestrator that runs all parsers @@ -28,11 +29,17 @@ function parseAllExportData(parseContracts = false) { console.log('-'.repeat(30)); results.silo = parseSiloData(parseContracts); + // Parse contract data for ContractPaybackDistributor + console.log('šŸ­ CONTRACT DISTRIBUTOR DATA'); + console.log('-'.repeat(30)); + results.contracts = parseContractData(); + console.log('šŸ“‹ PARSING SUMMARY'); console.log('-'.repeat(30)); console.log(`šŸ“Š Barn: ${results.barn.stats.fertilizerIds} fertilizer IDs, ${results.barn.stats.accountEntries} account entries`); console.log(`šŸ“Š Field: ${results.field.stats.totalAccounts} accounts, ${results.field.stats.totalPlots} plots`); console.log(`šŸ“Š Silo: ${results.silo.stats.totalAccounts} accounts with BDV`); + console.log(`šŸ“Š Contracts: ${results.contracts.stats.contractAccounts} accounts, ${results.contracts.stats.totalFertilizers} fertilizers, ${results.contracts.stats.totalPlots} plots`); console.log(`šŸ“Š Include contracts: ${parseContracts}`); return results; @@ -47,5 +54,6 @@ module.exports = { parseBarnData, parseFieldData, parseSiloData, + parseContractData, parseAllExportData }; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseBarnData.js b/scripts/beanstalkShipments/parsers/parseBarnData.js index 6e25ae69..a325a085 100644 --- a/scripts/beanstalkShipments/parsers/parseBarnData.js +++ b/scripts/beanstalkShipments/parsers/parseBarnData.js @@ -46,10 +46,11 @@ function parseBarnData(includeContracts = false) { } // Combine data sources based on flag + // Note: ethContracts are excluded as they are handled by ContractPaybackDistributor const allAccounts = { ...arbEOAs }; if (includeContracts) { Object.assign(allAccounts, arbContracts); - Object.assign(allAccounts, ethContracts); + // ethContracts intentionally excluded - handled by ContractPaybackDistributor } // Use storage fertilizer data directly for global fertilizer diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js new file mode 100644 index 00000000..9178749c --- /dev/null +++ b/scripts/beanstalkShipments/parsers/parseContractData.js @@ -0,0 +1,145 @@ +const fs = require('fs'); +const path = require('path'); + +/** + * Parses ethContracts data from all export files into ContractPaybackDistributor constructor format + * + * Expected output format: + * contractDistributorData.json: { + * contractAccounts: address[], + * siloPaybackTokensOwed: uint256[], + * fertilizerClaims: AccountFertilizerClaimData[], + * plotClaims: AccountPlotClaimData[] + * } + */ +function parseContractData() { + const siloInputPath = path.join(__dirname, '../data/exports/beanstalk_silo.json'); + const barnInputPath = path.join(__dirname, '../data/exports/beanstalk_barn.json'); + const fieldInputPath = path.join(__dirname, '../data/exports/beanstalk_field.json'); + const outputPath = path.join(__dirname, '../data/contractDistributorData.json'); + + console.log('šŸ“‹ Parsing ethContracts data for ContractPaybackDistributor...'); + + // Load all export data files + console.log('šŸ“– Reading export data files...'); + const siloData = JSON.parse(fs.readFileSync(siloInputPath, 'utf8')); + const barnData = JSON.parse(fs.readFileSync(barnInputPath, 'utf8')); + const fieldData = JSON.parse(fs.readFileSync(fieldInputPath, 'utf8')); + + const siloContracts = siloData.ethContracts || {}; + const barnContracts = barnData.ethContracts || {}; + const fieldContracts = fieldData.ethContracts || {}; + + console.log(`šŸ­ Found ${Object.keys(siloContracts).length} silo contracts`); + console.log(`🚜 Found ${Object.keys(barnContracts).length} barn contracts`); + console.log(`🌾 Found ${Object.keys(fieldContracts).length} field contracts`); + + // Get all unique contract addresses + const allContractAddresses = new Set([ + ...Object.keys(siloContracts), + ...Object.keys(barnContracts), + ...Object.keys(fieldContracts) + ]); + + const contractAccounts = Array.from(allContractAddresses); + console.log(`šŸ”— Total unique contract accounts: ${contractAccounts.length}`); + + // Build arrays for constructor parameters + const siloPaybackTokensOwed = []; + const fertilizerClaims = []; + const plotClaims = []; + + // Process each contract account + for (const contractAccount of contractAccounts) { + // Process silo data + const siloAccount = siloContracts[contractAccount]; + let siloOwed = "0"; + if (siloAccount && siloAccount.bdvAtRecapitalization && siloAccount.bdvAtRecapitalization.total) { + siloOwed = siloAccount.bdvAtRecapitalization.total; + } + siloPaybackTokensOwed.push(siloOwed); + + // Process barn data (fertilizer) + const barnAccount = barnContracts[contractAccount]; + let fertilizerIds = []; + let fertilizerAmounts = []; + + if (barnAccount && barnAccount.beanFert) { + for (const [fertId, amount] of Object.entries(barnAccount.beanFert)) { + fertilizerIds.push(fertId); + fertilizerAmounts.push(amount); + } + } + + fertilizerClaims.push({ + contractAccount: contractAccount, + fertilizerIds: fertilizerIds, + fertilizerAmounts: fertilizerAmounts + }); + + // Process field data (plots) + const fieldAccount = fieldContracts[contractAccount]; + let plotIds = []; + let starts = []; + let ends = []; + + if (fieldAccount && typeof fieldAccount === 'object') { + // Sort plot indices numerically + const plotIndices = Object.keys(fieldAccount).sort((a, b) => parseInt(a) - parseInt(b)); + + for (const plotIndex of plotIndices) { + const podAmount = parseInt(fieldAccount[plotIndex]); + if (podAmount > 0) { + plotIds.push(plotIndex); + starts.push("0"); // Start from beginning of plot + ends.push(podAmount.toString()); // End is the pod amount + } + } + } + + plotClaims.push({ + contractAccount: contractAccount, + fieldId: "1", // Payback field ID + ids: plotIds, + starts: starts, + ends: ends + }); + } + + // Calculate statistics + const totalSiloOwed = siloPaybackTokensOwed.reduce((sum, amount) => sum + parseInt(amount), 0); + const totalFertilizers = fertilizerClaims.reduce((sum, claim) => sum + claim.fertilizerIds.length, 0); + const totalPlots = plotClaims.reduce((sum, claim) => sum + claim.ids.length, 0); + + // Build output data structure + const contractDistributorData = { + contractAccounts, + siloPaybackTokensOwed, + fertilizerClaims, + plotClaims + }; + + // Write output file + console.log('šŸ’¾ Writing contractDistributorData.json...'); + fs.writeFileSync(outputPath, JSON.stringify(contractDistributorData, null, 2)); + + console.log('āœ… Contract data parsing complete!'); + console.log(` šŸ“Š Contract accounts: ${contractAccounts.length}`); + console.log(` šŸ“Š Total silo BDV owed: ${totalSiloOwed.toLocaleString()}`); + console.log(` šŸ“Š Total fertilizer claims: ${totalFertilizers}`); + console.log(` šŸ“Š Total plot claims: ${totalPlots}`); + console.log(''); + + return { + contractDistributorData, + stats: { + contractAccounts: contractAccounts.length, + totalSiloOwed, + totalFertilizers, + totalPlots + } + }; +} + +// Export for use in other scripts +module.exports = parseContractData; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseFieldData.js b/scripts/beanstalkShipments/parsers/parseFieldData.js index 02141651..a036edb8 100644 --- a/scripts/beanstalkShipments/parsers/parseFieldData.js +++ b/scripts/beanstalkShipments/parsers/parseFieldData.js @@ -25,10 +25,11 @@ function parseFieldData(includeContracts = false) { } // Combine data sources based on flag + // Note: ethContracts are excluded as they are handled by ContractPaybackDistributor const allAccounts = { ...arbEOAs }; if (includeContracts) { Object.assign(allAccounts, arbContracts); - Object.assign(allAccounts, ethContracts); + // ethContracts intentionally excluded - handled by ContractPaybackDistributor } // Build plots data structure diff --git a/scripts/beanstalkShipments/parsers/parseSiloData.js b/scripts/beanstalkShipments/parsers/parseSiloData.js index a381241b..33fa6d3b 100644 --- a/scripts/beanstalkShipments/parsers/parseSiloData.js +++ b/scripts/beanstalkShipments/parsers/parseSiloData.js @@ -25,10 +25,11 @@ function parseSiloData(includeContracts = false) { } // Combine data sources based on flag + // Note: ethContracts are excluded as they are handled by ContractPaybackDistributor const allAccounts = { ...arbEOAs }; if (includeContracts) { Object.assign(allAccounts, arbContracts); - Object.assign(allAccounts, ethContracts); + // ethContracts intentionally excluded - handled by ContractPaybackDistributor } // Build unripe BDV data structure diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 7f537f0a..9e6ddd96 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -150,7 +150,11 @@ contract BeanstalkShipmentsTest is TestHelper { uint8(ShipmentRecipient.FIELD), "Payback field recipient mismatch" ); - assertEq(routes[3].data, abi.encode(ACTIVE_FIELD_ID), "Payback field data mismatch"); + assertEq( + routes[3].data, + abi.encode(PAYBACK_FIELD_ID, SILO_PAYBACK, BARN_PAYBACK), + "Payback field data mismatch" + ); // payback silo (0x05) assertEq( routes[4].planSelector, @@ -162,7 +166,11 @@ contract BeanstalkShipmentsTest is TestHelper { uint8(ShipmentRecipient.SILO_PAYBACK), "Payback silo recipient mismatch" ); - assertEq(routes[4].data, abi.encode(SILO_PAYBACK), "Payback silo data mismatch"); + assertEq( + routes[4].data, + abi.encode(SILO_PAYBACK, BARN_PAYBACK), + "Payback silo data mismatch" + ); // payback barn (0x06) assertEq( routes[5].planSelector, @@ -174,7 +182,11 @@ contract BeanstalkShipmentsTest is TestHelper { uint8(ShipmentRecipient.BARN_PAYBACK), "Payback barn recipient mismatch" ); - assertEq(routes[5].data, abi.encode(BARN_PAYBACK), "Payback barn data mismatch"); + assertEq( + routes[5].data, + abi.encode(SILO_PAYBACK, BARN_PAYBACK), + "Payback barn data mismatch" + ); } //////////////////// Field State Verification //////////////////// From 9f6f10a9bdf7d997c5e9f066e250ebe9bcaadd90 Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 20 Aug 2025 18:05:58 +0300 Subject: [PATCH 048/270] temp repayment field facet to initialize beanstalk plots and move new field init in main init script --- .../field/TempRepaymentFieldFacet.sol} | 57 +- .../init/shipments/InitBeanstalkShipments.sol | 23 + .../ContractPaybackDistributor.sol | 2 +- hardhat.config.js | 41 +- .../data/beanstalkAccountFertilizer.json | 29 +- .../data/beanstalkPlots.json | 9447 ++++++++--------- .../data/contractDistributorData.json | 1380 --- .../data/unripeBdvTokens.json | 76 +- .../deployPaybackContracts.js | 203 +- scripts/beanstalkShipments/parsers/index.js | 8 - .../parsers/parseBarnData.js | 30 +- .../parsers/parseContractData.js | 145 - .../parsers/parseFieldData.js | 30 +- .../parsers/parseSiloData.js | 26 +- .../populateBeanstalkField.js | 45 +- test/hardhat/utils/constants.js | 3 + 16 files changed, 4901 insertions(+), 6644 deletions(-) rename contracts/beanstalk/{init/shipments/InitReplaymentField.sol => facets/field/TempRepaymentFieldFacet.sol} (50%) delete mode 100644 scripts/beanstalkShipments/data/contractDistributorData.json delete mode 100644 scripts/beanstalkShipments/parsers/parseContractData.js diff --git a/contracts/beanstalk/init/shipments/InitReplaymentField.sol b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol similarity index 50% rename from contracts/beanstalk/init/shipments/InitReplaymentField.sol rename to contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol index 72394d66..cfa51aca 100644 --- a/contracts/beanstalk/init/shipments/InitReplaymentField.sol +++ b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol @@ -1,54 +1,45 @@ -/* - SPDX-License-Identifier: MIT -*/ +// SPDX-License-Identifier: MIT pragma solidity ^0.8.20; -import "contracts/libraries/LibAppStorage.sol"; + +import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; +import {ReentrancyGuard} from "contracts/beanstalk/ReentrancyGuard.sol"; +import {LibAppStorage} from "contracts/libraries/LibAppStorage.sol"; +import {FieldFacet} from "contracts/beanstalk/facets/field/FieldFacet.sol"; /** - * @title InitReplaymentField - * @dev Initializes the beanstalk repayment field - **/ -contract InitReplaymentField { - uint256 constant REPAYMENT_FIELD_ID = 1; + * @title TempRepaymentFieldFacet + * @notice Temporary facet to re-initialize the repayment field with data from the Beanstalk Podline. + * Upon deployment of the beanstalkShipments, a new field will be created in + */ +contract TempRepaymentFieldFacet is ReentrancyGuard { + + address public constant REPAYMENT_FIELD_POPULATOR = 0xc4c66c8b199443a8deA5939ce175C3592e349791; + uint256 public constant REPAYMENT_FIELD_ID = 1; - event FieldAdded(uint256 fieldId); event ReplaymentPlotAdded(address indexed account, uint256 indexed plotIndex, uint256 pods); struct Plot { uint256 podIndex; uint256 podAmounts; } + struct ReplaymentPlotData { address account; Plot[] plots; } - function init(ReplaymentPlotData[] calldata accountPlots) external { - // create new field - initReplaymentField(); - // populate the field to recreate the beanstalk podline - initReplaymentPlots(accountPlots); - } - - /** - * @notice Create new field, mimics the addField function in FieldFacet.sol - * @dev Harvesting is handled in LibReceiving.sol - */ - function initReplaymentField() internal { - AppStorage storage s = LibAppStorage.diamondStorage(); - // make sure this is only called once to create the beanstalk field - if (s.sys.fieldCount == 2) return; - uint256 fieldId = s.sys.fieldCount; - s.sys.fieldCount++; - emit FieldAdded(fieldId); - } - /** - * @notice Re-initializes the repayment field with a reconstructed Beanstalk Podline. - * @param accountPlots the plots for each account + * @notice Re-initializes the repayment field using data from the Beanstalk Podline. + * @dev This function is only callable by the repayment field populator. + * @param accountPlots the plot for each account */ - function initReplaymentPlots(ReplaymentPlotData[] calldata accountPlots) internal { + function initializeReplaymentPlots(ReplaymentPlotData[] calldata accountPlots) external nonReentrant { + require( + msg.sender == REPAYMENT_FIELD_POPULATOR, + "Only the repayment field populator can call this function" + ); + require(s.sys.fieldCount == 2, "Repayment field should be initialized"); AppStorage storage s = LibAppStorage.diamondStorage(); for (uint i; i < accountPlots.length; i++) { for (uint j; j < accountPlots[i].plots.length; j++) { diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index 7f68f481..9a694359 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -14,11 +14,18 @@ import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; **/ contract InitBeanstalkShipments { + uint256 constant REPAYMENT_FIELD_ID = 1; + /// @dev total length of the podline. The largest index in beanstalk_field.json incremented by the amount. + uint256 constant REPAYMENT_FIELD_PODS = 919768387056514; + event ShipmentRoutesSet(ShipmentRoute[] newRoutes); + event FieldAdded(uint256 fieldId); function init(ShipmentRoute[] calldata newRoutes) external { // set the shipment routes, replaces the entire set of routes _setShipmentRoutes(newRoutes); + // create the repayment field + _initReplaymentField(); } /** @@ -33,4 +40,20 @@ contract InitBeanstalkShipments { } emit ShipmentRoutesSet(newRoutes); } + + /** + * @notice Create new field, mimics the addField function in FieldFacet.sol + * @dev Harvesting is handled in LibReceiving.sol + */ + function _initReplaymentField() internal { + AppStorage storage s = LibAppStorage.diamondStorage(); + if (s.sys.fieldCount == 2) return; + // require(s.sys.fieldCount == 1, "Repayment field already exists"); + uint256 fieldId = s.sys.fieldCount; + s.sys.fieldCount++; + // init global state for new field, + // harvestable and harvested vars are 0 + s.sys.fields[REPAYMENT_FIELD_ID].pods = REPAYMENT_FIELD_PODS; + emit FieldAdded(fieldId); + } } diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index be3e2eb6..56c4c8e1 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -124,6 +124,7 @@ contract ContractPaybackDistributor is ReentrancyGuard { /** * @notice Transfers all assets for a whitelisted contract account to a receiver + * @dev note: if the receiver is a contract it must implement the IERC1155Receiver interface * @param account The address of the account to claim from * @param receiver The address to transfer the assets to */ @@ -147,7 +148,6 @@ contract ContractPaybackDistributor is ReentrancyGuard { } // transfer fertilizer erc115s to the contract account - // note: if the receiver is a contract it must implement the IERC1155Receiver interface if (fertilizerIds.length > 0) { barnPayback.safeBatchTransferFrom( address(this), diff --git a/hardhat.config.js b/hardhat.config.js index 961658d0..13165c74 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -22,6 +22,7 @@ const { L2_PINTO, PINTO_DIAMOND_DEPLOYER, BEANSTALK_SHIPMENTS_DEPLOYER, + BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR, L2_PCM, BASE_BLOCK_TIME, PINTO_WETH_WELL_BASE, @@ -2067,8 +2068,19 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi deployer = (await ethers.getSigners())[1]; } + // Use the repayment field populator for the beanstalk field initialization + let repaymentFieldPopulator; + if (mock) { + repaymentFieldPopulator = await impersonateSigner( + BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR + ); + await mintEth(repaymentFieldPopulator.address); + } else { + repaymentFieldPopulator = (await ethers.getSigners())[2]; + } + // Step 1: Deploy and setup payback contracts - console.log("šŸš€ STEP 1: DEPLOYING PAYBACK CONTRACTS"); + console.log("šŸš€ STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); console.log("-".repeat(50)); let contracts = {}; if (deploy) { @@ -2084,26 +2096,19 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi console.log("āœ… Payback contracts deployed and configured\n"); } - // Step 2: Create and populate beanstalk field - console.log("šŸ“ˆ STEP 2: CREATING BEANSTALK FIELD"); - console.log("-".repeat(50)); - if (populateField) { - await populateBeanstalkField(L2_PINTO, owner, verbose, mockFieldData); - } - - // Step 3: Update shipment routes + // Step 2: Update shipment routes, create new field and create the new TempRepaymentFieldFacet // The season facet will also need to be updated to support the new receipients in the // ShipmentRecipient enum in System.sol since the facet inherits from Distribution.sol // That contains the function getShipmentRoutes() which reads the shipment routes from storage // and imports the ShipmentRoute struct. - console.log("šŸ›¤ļø STEP 3: UPDATING SHIPMENT ROUTES"); + console.log("šŸ›¤ļø STEP 2: UPDATING SHIPMENT ROUTES AND CREATING NEW FIELD"); console.log("-".repeat(50)); const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; const routes = JSON.parse(fs.readFileSync(routesPath)); await upgradeWithNewFacets({ diamondAddress: L2_PINTO, - facetNames: ["SeasonFacet"], + facetNames: ["SeasonFacet", "TempRepaymentFieldFacet"], libraryNames: [ "LibEvaluate", "LibGauge", @@ -2131,7 +2136,19 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi verbose: true, account: owner }); - console.log("āœ… Shipment routes updated\n"); + console.log("āœ… Shipment routes updated and new field created\n"); + + // Step 2: Create and populate beanstalk field + console.log("šŸ“ˆ STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); + console.log("-".repeat(50)); + if (populateField) { + await populateBeanstalkField({ + diamondAddress: L2_PINTO, + account: repaymentFieldPopulator, + verbose: verbose, + mockData: mockFieldData + }); + } console.log("=".repeat(80)); console.log("šŸŽ‰ BEANSTALK SHIPMENTS INITIALIZATION COMPLETED"); diff --git a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json index 7652a7a6..0589076e 100644 --- a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json @@ -1688,7 +1688,7 @@ "340802" ], [ - "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", "542767", "340802" ] @@ -1723,7 +1723,7 @@ "340802" ], [ - "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", "56044", "340802" ] @@ -2568,7 +2568,7 @@ "340802" ], [ - "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", + "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", "291896", "340802" ] @@ -2773,7 +2773,7 @@ "340802" ], [ - "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E", + "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", "10", "340802" ] @@ -3248,7 +3248,7 @@ "340802" ], [ - "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", + "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", "40000", "340802" ] @@ -6008,23 +6008,8 @@ "340802" ], [ - "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", - "8046712", - "340802" - ], - [ - "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", - "51100", - "340802" - ], - [ - "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", - "3025", - "340802" - ], - [ - "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", - "3180", + "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + "8104017", "340802" ] ] diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json index dd94df24..e57bcc73 100644 --- a/scripts/beanstalkShipments/data/beanstalkPlots.json +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -5589,95 +5589,6 @@ ] ] ], - [ - "0x251FAe8f687545BDD462Ba4FCDd7581051740463", - [ - [ - "28368015360976", - "10000000000" - ], - [ - "33106872744841", - "6434958505" - ], - [ - "38722543672289", - "250000000" - ], - [ - "61000878716919", - "789407727" - ], - [ - "72536373875278", - "200000000" - ], - [ - "75784287632794", - "2935934380" - ], - [ - "75995951619880", - "5268032293" - ], - [ - "217474381338301", - "1293174476" - ], - [ - "220144194502828", - "47404123300" - ], - [ - "333622810114113", - "200755943301" - ], - [ - "378227726508635", - "645363133" - ], - [ - "574387565763701", - "55857695832" - ], - [ - "575679606872092", - "38492647384" - ], - [ - "626184530707078", - "90718871797" - ], - [ - "634034652140320", - "1827630964" - ], - [ - "680095721530457", - "10113856826" - ], - [ - "767824420446983", - "1158445599" - ], - [ - "767978192014986", - "1606680000" - ], - [ - "790662167913055", - "60917382823" - ], - [ - "792657494145217", - "11153713894" - ], - [ - "845186146706783", - "62659298764" - ] - ] - ], [ "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d", [ @@ -17521,79 +17432,6 @@ ] ] ], - [ - "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", - [ - [ - "28553316405699", - "56203360846" - ], - [ - "32013293099710", - "15000000000" - ], - [ - "33262951017861", - "9375000000" - ], - [ - "33290510627174", - "565390687" - ], - [ - "118322555232226", - "5892426278" - ], - [ - "180071240663041", - "81992697619" - ], - [ - "317859517384357", - "291195415400" - ], - [ - "338910099578361", - "72913082044" - ], - [ - "444973868346640", - "61560768641" - ], - [ - "477195175494445", - "29857571563" - ], - [ - "706133899990342", - "2720589483246" - ], - [ - "721409921103392", - "4415003338706" - ], - [ - "726480740731617", - "2047412139790" - ], - [ - "729812277370084", - "5650444595733" - ], - [ - "735554122237517", - "2514215964115" - ], - [ - "744819318753537", - "98324836380" - ], - [ - "760472183068657", - "71399999953" - ] - ] - ], [ "0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14", [ @@ -18562,23 +18400,6 @@ ] ] ], - [ - "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", - [ - [ - "462646168927", - "1666666666" - ], - [ - "647175726076112", - "16711431033" - ], - [ - "720495305315880", - "55569209804" - ] - ] - ], [ "0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af", [ @@ -19456,15 +19277,6 @@ ] ] ], - [ - "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", - [ - [ - "344618618497376", - "81000597500" - ] - ] - ], [ "0x83C9EC651027e061BcC39485c1Fb369297bD428c", [ @@ -19604,15 +19416,6 @@ ] ] ], - [ - "0x8525664820C549864982D4965a41F83A7d26AF58", - [ - [ - "28385711672356", - "4000000000" - ] - ] - ], [ "0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371", [ @@ -20047,7586 +19850,7773 @@ ] ], [ - "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", + "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", [ [ - "7610595204140", - "5073919704077" + "462646168927", + "1666666666" ], [ - "38787729222746", - "2131906543178" + "28368015360976", + "10000000000" ], [ - "57813809876489", - "1456044500354" + "28385711672356", + "4000000000" ], [ - "170272286454622", - "56571249769" + "28553316405699", + "56203360846" ], [ - "349019688741041", - "1506500000000" + "31772724860478", + "43540239232" ], [ - "380692001264631", - "3775193029045" + "32013293099710", + "15000000000" ], [ - "441243549115022", - "2601287700000" + "33106872744841", + "6434958505" ], [ - "517190544221796", - "3763750720000" + "33262951017861", + "9375000000" ], [ - "632606217533439", - "22758013200" + "33290510627174", + "565390687" ], [ - "745015672951634", - "2234666668979" - ] - ] - ], - [ - "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", - [ + "38722543672289", + "250000000" + ], [ - "167782267131210", - "106256000000" + "61000878716919", + "789407727" ], [ - "827629800353740", - "110783253508" + "72536373875278", + "200000000" ], [ - "827740583607248", - "853190019303" - ] - ] - ], - [ - "0x880bba07fA004b948D22f4492808b255d853DFFe", - [ + "75784287632794", + "2935934380" + ], [ - "550921667542369", - "41775210170" - ] - ] - ], - [ - "0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b", - [ + "75995951619880", + "5268032293" + ], [ - "801693742643965", - "99999995904" - ] - ] - ], - [ - "0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F", - [ + "118322555232226", + "5892426278" + ], [ - "644166242707654", - "2050308397" - ] - ] - ], - [ - "0x88F09Bdc8e99272588242a808052eb32702f88D0", - [ + "180071240663041", + "81992697619" + ], [ - "85029199936365", - "840122967451" + "217474381338301", + "1293174476" ], [ - "88453221835372", - "233118002521" + "220144194502828", + "47404123300" ], [ - "153171960305965", - "41365965513" + "317859517384357", + "291195415400" ], [ - "154999547640805", - "375222322618" + "333622810114113", + "200755943301" ], [ - "165315717408183", - "439812976881" + "338910099578361", + "72913082044" ], [ - "171503540188858", - "351737246973" + "344618618497376", + "81000597500" ], [ - "218906363945697", - "267770208367" - ] - ] - ], - [ - "0x88F667664E61221160ddc0414868eF2f40e83324", - [ + "378227726508635", + "645363133" + ], [ - "350528056631821", - "31369126849" - ] - ] - ], - [ - "0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1", - [ + "444973868346640", + "61560768641" + ], [ - "344900298455340", - "70954400000" - ] - ] - ], - [ - "0x891768B90Ea274e95B40a3a11437b0e98ae96493", - [ + "477195175494445", + "29857571563" + ], [ - "542384825883218", - "183217724421" + "574387565763701", + "55857695832" ], [ - "580263603894911", - "202078712746" + "575679606872092", + "38492647384" ], [ - "580852891674604", - "240857146192" + "626184530707078", + "90718871797" ], [ - "643546658124727", - "67704306110" + "634031481420456", + "3170719864" ], [ - "646848441162974", - "13082343750" + "634034652140320", + "1827630964" ], [ - "646861523506724", - "9963000000" + "647175726076112", + "16711431033" ], [ - "647064793304491", - "19836000000" + "647388734023467", + "9748779666" ], [ - "647361422909783", - "10074093750" + "680095721530457", + "10113856826" ], [ - "647416263710967", - "9033750000" + "706133899990342", + "2720589483246" ], [ - "647580506034299", - "7345791596" + "720495305315880", + "55569209804" ], [ - "648573161562432", - "8173059019" + "721225229970053", + "55487912201" ], [ - "652685809874501", - "41130226166" + "721409921103392", + "4415003338706" ], [ - "653461600264912", - "16002234489" + "726480740731617", + "2047412139790" ], [ - "654979952361127", - "23536146483" + "729812277370084", + "5650444595733" ], [ - "699140429441765", - "235512332890" + "735554122237517", + "2514215964115" ], [ - "810139795794754", - "1021515561753" - ] - ] - ], - [ - "0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df", - [ + "741007335527824", + "48848467587" + ], [ - "400667403191381", - "202636723695" + "743270084189585", + "44269246366" ], [ - "408340443663992", - "1766184702" + "743356388661755", + "284047664" ], [ - "408342209848694", - "1766821870" + "743356672709419", + "804932236" ], [ - "408343976670564", - "1776377083" + "743357477641655", + "744601051" ], [ - "408345753047647", - "1776940468" + "743358222242706", + "636559806" ], [ - "409571787389145", - "1940500171" + "743358858802512", + "569027210" ], [ - "411707409641311", - "1769006754" + "743359427829722", + "616622839" ], [ - "460456294770519", - "1909649071" + "743360044452561", + "590416341" ], [ - "460458204419590", - "1909460313" + "743360634868902", + "576948243" ], [ - "460660502553919", - "1913525664" - ] - ] - ], - [ - "0x89979246e8764D8DCB794fC45F826437fDeC23b2", - [ + "743361211817145", + "347174290" + ], [ - "180499793470389", - "111111111" - ] - ] - ], - [ - "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a", - [ + "743361558991435", + "112939223481" + ], [ - "228344590940664", - "13645890242" + "743474498214916", + "37245408077" ], [ - "404814012582428", - "13502469920" - ] - ] - ], - [ - "0x8a178306ffF20fd120C6d96666F08AC7c8b31ded", - [ + "743511743622993", + "27738836042" + ], [ - "341743032293513", - "96491602264" - ] - ] - ], - [ - "0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A", - [ + "743539482459035", + "36180207225" + ], [ - "185180686460512", - "227508332382" - ] - ] - ], - [ - "0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234", - [ - [ - "657666540789773", - "75000000000" - ] - ] - ], - [ - "0x8A1B804543404477C19034593aCA22Ab699f0B7D", - [ - [ - "394825004766547", - "132495619648" - ] - ] - ], - [ - "0x8A30D3bb32291DBbB5F88F905433E499638387b7", - [ - [ - "624854422205544", - "365063359304" + "743575662666260", + "9251544878" ], [ - "720966007001489", - "172940224850" + "743600698167087", + "4239282" ], [ - "790054047305179", - "266340074594" - ] - ] - ], - [ - "0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9", - [ - [ - "173480616224954", - "5892105020" - ] - ] - ], - [ - "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", - [ - [ - "764117220398714", - "5082059700" - ] - ] - ], - [ - "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", - [ - [ - "31876165099710", - "4909413452" + "743630495498696", + "25004744107" ], [ - "324785641390123", - "20381632106" + "743655500242803", + "27838968460" ], [ - "337836629850712", - "110785980662" - ] - ] - ], - [ - "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", - [ - [ - "4952878965910", - "25693" + "743683339211263", + "1045028130" ], [ - "75795223567174", - "55399924533" + "743715232207665", + "154091444" ], [ - "270425564599223", - "6167341566" + "743715386299109", + "356610619" ], [ - "634279320795686", - "1458416574" + "743715742909728", + "792560930" ], [ - "634375990601696", - "8038918025" + "743716535470658", + "930442023" ], [ - "634684031419046", - "14524410119" + "743717465912681", + "930527887" ], [ - "636910709575795", - "43996256" + "743718396440568", + "930718264" ], [ - "636951322053443", - "5949833624" - ] - ] - ], - [ - "0x8a9C930896e453cA3D87f1918996423A589Dd529", - [ - [ - "599110871788478", - "1467343" - ] - ] - ], - [ - "0x8b08CA521FFbb87263Af2C6145E173c16576802d", - [ - [ - "273422474556206", - "86252721548" - ] - ] - ], - [ - "0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d", - [ - [ - "582413872658220", - "312333420" - ] - ] - ], - [ - "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", - [ - [ - "648003472838380", - "12191197851" + "743719327158832", + "900100878" ], [ - "653322368574912", - "1500000000" + "743720227259710", + "886888605" ], [ - "656881019664829", - "5000000000" + "743721114148315", + "1195569000" ], [ - "656943897664851", - "10000000000" - ] - ] - ], - [ - "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048", - [ - [ - "647544630241326", - "8159246655" + "743722931420691", + "332343086" ], [ - "656973507284806", - "14666666666" + "743723263763777", + "983775747" ], [ - "679488933480560", - "10109491684" - ] - ] - ], - [ - "0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5", - [ - [ - "273822660112045", - "7974066988" - ] - ] - ], - [ - "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", - [ - [ - "918986387237878", - "39771142560" + "743724247539524", + "409861551" ], [ - "919359990785000", - "42954878920" - ] - ] - ], - [ - "0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F", - [ - [ - "534969937819543", - "135093374272" - ] - ] - ], - [ - "0x8BB07e694B421433c9545C0F3d75d99cc763d74A", - [ - [ - "201066794771608", - "25133316533" + "743724657401075", + "97298663" ], [ - "262064136145414", - "3613514390" + "743724754699738", + "86768693" ], [ - "429986876991709", - "54054054054" - ] - ] - ], - [ - "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", - [ + "743724841468431", + "33509916350" + ], [ - "201109552307211", - "5955474760" + "743758351384781", + "69774513803" ], [ - "217487565268538", - "44350084857" + "743828125898584", + "21981814788" ], [ - "239366783598110", - "43020513083" + "743850107713372", + "43182294" ], [ - "299402420990124", - "221104866853" + "743850150895666", + "37264237" ], [ - "326242916529391", - "17549000000" + "743850188159903", + "247711" ], [ - "326313112529391", - "17549000000" + "743850188407614", + "417946" ], [ - "361863180975181", - "277218187043" + "743850188825560", + "120504819738" ], [ - "522905481908356", - "367508589170" + "743970693645298", + "178855695867" ], [ - "867419292286175", - "168927430163" + "744149549341165", + "125886081790" ], [ - "869942050156433", - "161251868752" - ] - ] - ], - [ - "0x8bFe70E2D583f512E7248D67ACE918116B892aeA", - [ - [ - "278038360536371", - "43467727584" - ] - ] - ], - [ - "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", - [ - [ - "193207655597753", - "21615842337" - ] - ] - ], - [ - "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1", - [ - [ - "236244833829125", - "21640000" + "744819318753537", + "98324836380" ], [ - "247467483053971", - "97017435775" + "759669831627157", + "91465441036" ], [ - "268035191288542", - "43140000000" + "759761297451604", + "12346431080" ], [ - "385713611898436", - "6012500000" - ] - ] - ], - [ - "0x8C35933C469406C8899882f5C2119649cD5B617f", - [ - [ - "738068338201632", - "87106285553" - ] - ] - ], - [ - "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9", - [ - [ - "320002058744923", - "981658441" + "759773643882684", + "1557369578" ], [ - "396538880923743", - "3278000000" - ] - ] - ], - [ - "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b", - [ - [ - "634147730459515", - "19019153520" + "759775201252262", + "18264975890" ], [ - "639381458599755", - "43462477350" + "759793466228152", + "133677" ], [ - "640267729343515", - "1639640204" + "759794285432848", + "26613224094" ], [ - "643109436914433", - "3695060762" + "759820979493945", + "70435190" ], [ - "656886019664829", - "9255777800" - ] - ] - ], - [ - "0x8D02496FA58682DB85034bCCCfE7Dd190000422e", - [ - [ - "343580534466152", - "26811409430" - ] - ] - ], - [ - "0x8D06Ffb1500343975571cC0240152C413d803778", - [ - [ - "28904918772117", - "509586314410" + "759821049929135", + "64820367" ], [ - "149476539987788", - "595705787279" + "759821114749502", + "315142246" ], [ - "150623260553725", - "436653263484" + "759821772251897", + "342469548" ], [ - "161092113186340", - "738480151497" + "759822114721445", + "22786793078" ], [ - "162734759646450", - "737048150894" + "759844955449185", + "62362349" ], [ - "163471807797344", - "717665153748" + "759845017811534", + "79862410" ], [ - "174803269011285", - "323070981235" + "759845097673944", + "78350903" ], [ - "210525931443438", - "62132577144" + "759845176024847", + "81575013" ], [ - "232704752844281", - "204706266628" + "759845257599860", + "81611843" ], [ - "247742878911682", - "275332296988" + "759845339211703", + "79874694" ], [ - "253931736847120", - "290236580727" + "759845419086397", + "79925681" ], [ - "261970235265316", - "30303030303" + "759845499012078", + "79231634" ], [ - "272319508243958", - "438603533273" + "759845578243712", + "73291169" ], [ - "335529346845329", - "13913764863" + "759845651534881", + "61264703" ], [ - "340276769047777", - "33796000000" + "759845766640518", + "56977225" ], [ - "344515718397376", - "18025000000" + "759845823617743", + "71386527" ], [ - "344533743397376", - "18025000000" + "759845895004270", + "75906832" ], [ - "344833670732808", - "5702918963" + "759846058683685", + "75729409" ], [ - "429976284393417", - "10590000000" + "759846134413094", + "27722926" ], [ - "628854228397766", - "372857584031" + "759846162136020", + "30197986" ], [ - "629227085981797", - "216873485917" + "759846192334006", + "158241812" ], [ - "634643031419046", - "20948977130" + "759846350575818", + "123926293" ], [ - "637149167789946", - "4910026986" + "759846474502111", + "124139589" ], [ - "637351998004377", - "258192517612" + "759846598641700", + "25193251" ], [ - "639180990676042", - "199438094194" + "759846623834951", + "25387540" ], [ - "641522728201681", - "5800000000" + "759846649222491", + "665345" ], [ - "641574417641439", - "154715717850" + "759846954659102", + "631976394" ], [ - "643909821821812", - "6902000000" + "759847586635496", + "66958527" ], [ - "643916723821812", - "10900958949" + "759847653594023", + "44950580" ], [ - "643999292802533", - "8204345668" + "759847698544603", + "46547201" ], [ - "644007497148201", - "11854871050" + "759847745091804", + "18839036" ], [ - "644045596517280", - "6544832392" + "759847763930840", + "270669443" ], [ - "644057761258485", - "8182865200" + "759848034600283", + "365575215" ], [ - "644065944123685", - "7516642526" + "759848595655012", + "187295653" ], [ - "644171938918668", - "9601229268" + "759848782950665", + "25295452" ], [ - "644306806412385", - "12054054687" + "759848808246117", + "173058283" ], [ - "644319149838335", - "10735050747" + "759848981304400", + "63821133" ], [ - "644329884889082", - "14347680621" + "759849045125533", + "25336780" ], [ - "644396277666556", - "6674520726" + "759849070462313", + "29081391" ], [ - "644525199249437", - "6225710228" + "759849099543704", + "29122172" ], [ - "644616712009539", - "14199853473" + "759849128665876", + "28706993" ], [ - "644642611623012", - "12249630834" + "759849157372869", + "13456201" ], [ - "646758741417842", - "4969664107" + "759849170829070", + "36511282" ], [ - "646871486506724", - "17642812500" + "759849207340352", + "41243780" ], [ - "646914219232490", - "8605864430" + "759849248584132", + "33852678" ], [ - "647002050880741", - "9799080000" + "759849282436810", + "33956125" ], [ - "647046808773241", - "17984531250" + "759849316392935", + "34132617" ], [ - "647084629304491", - "23544562500" + "759849350525552", + "17041223" ], [ - "647119660778668", - "15762838323" + "759849367566775", + "20273897" ], [ - "647151216777708", - "11761593750" + "759849387840672", + "9037475" ], [ - "647166440607362", - "9285468750" + "759849396878147", + "45923781" ], [ - "647371497003533", - "6381630000" + "759849442801928", + "52882809" ], [ - "647505902133654", - "6953600000" + "759849495684737", + "71491609" ], [ - "647527562675656", - "8111120358" + "759849567176346", + "39781360" ], [ - "647617732404338", - "19873525000" + "759849606957706", + "35612937" ], [ - "647798301685196", - "7654771125" + "759849642570643", + "45789959" ], [ - "647838858023565", - "29093546875" + "759849688360602", + "46291324" ], [ - "647908205457926", - "12756105568" + "759849734651926", + "46416554" ], [ - "647978638361818", - "24834476562" + "759849781068480", + "46480026" ], [ - "648017646545411", - "10268964843" + "759849827548506", + "28909947" ], [ - "648034585438303", - "11688871093" + "759849856458453", + "20566561" ], [ - "648106773674125", - "3568208882" + "759849877025014", + "20612970" ], [ - "648187497812653", - "10104336384" + "759849897637984", + "9530420" ], [ - "648233657616208", - "10357224170" + "759849923422103", + "43423401" ], [ - "648244014840378", - "8114610976" + "759849966845504", + "11714877" ], [ - "648252129451354", - "8545778006" + "759864364377919", + "13050269" ], [ - "648262194812840", - "8952959614" + "759864377428188", + "28949561" ], [ - "648271147772454", - "6063060479" + "759864451656441", + "45362892" ], [ - "648287518441310", - "7377849726" + "759864497019333", + "45386397" ], [ - "648416302604421", - "20715605468" + "759864542405730", + "44251644" ], [ - "648452542642294", - "21586449186" + "759864623518170", + "16029726" ], [ - "648483189881961", - "20797810726" + "759864639547896", + "27422448" ], [ - "648510092345893", - "15239253108" + "759864666970344", + "45324196" ], [ - "648616078919292", - "8718470609" + "759864712294540", + "45381527" ], [ - "648629542096134", - "21544183345" + "759864794252615", + "45249060" ], [ - "648750501960130", - "10150581160" + "759864839501675", + "38552197" ], [ - "648760652541290", - "23321057117" + "759864878053872", + "45325980" ], [ - "648783994477207", - "23277498479" + "759864923379852", + "45332668" ], [ - "648807289596036", - "20989718750" + "759864968712520", + "14947041" ], [ - "648828279314786", - "20297082735" + "759864983659561", + "44411176" ], [ - "648889660439973", - "41844097841" + "759865028070737", + "45841550" ], [ - "649214012945345", - "22440187500" + "759865073912287", + "37491304" ], [ - "649236472457547", - "7534311320" + "759865111403591", + "35823677" ], [ - "649261133791064", - "23748160156" + "759865189244823", + "45959807" ], [ - "649656745149465", - "12205116299" + "759865235204630", + "28621023" ], [ - "649693929475018", - "11667351669" + "759865309352063", + "54352361" ], [ - "657232832610979", - "97443079393" + "759865363704424", + "37604905" ], [ - "657631435066681", - "35105723092" + "759865401309329", + "48060122" ], [ - "657741540789773", - "84888584622" + "759865502784387", + "41998112" ], [ - "657986484502639", - "80000000000" + "759865545775991", + "43017774" ], [ - "658147267102223", - "82507217675" + "759865588793765", + "45709130" ], [ - "659366890690250", - "174474635475" + "759865634502895", + "20672897" ], [ - "665058906638905", - "92828595185" + "759865655175792", + "18088532" ], [ - "676664914525249", - "18043478260" + "759865673264324", + "176142052" ], [ - "676683083298681", - "3118260869" + "759865849406376", + "249729828" ], [ - "679750611381961", - "234067235160" + "759866099136204", + "111218297" ], [ - "681871200072623", - "12689035666" + "759866210354501", + "27934473" ], [ - "682844108475123", - "1148082700" + "759866238288974", + "27468895" ], [ - "741732026495866", - "17262110558" + "759866265757869", + "1914618989" ], [ - "741842944533312", - "61092850308" + "759868180376858", + "45603693" ], [ - "763709016360993", - "44972105263" + "759868225980551", + "45842728" ], [ - "763803405580259", - "33297747636" + "759868271823279", + "46014440" ], [ - "768649803857758", - "67782688750" + "759868317837719", + "46063229" ], [ - "912555361492019", - "2704904821499" - ] - ] - ], - [ - "0x8d4122ffE442De3574871b9648868c1C3396A0AF", - [ - [ - "741717634585957", - "400610000" + "759868363900948", + "2621289" ], [ - "741718197414792", - "455722490" + "759868366522237", + "53709228" ], [ - "741726062974606", - "818667500" + "759868420231465", + "52228978" ], [ - "741731207273166", - "819222700" + "759868472460443", + "66561157603" ], [ - "743584914211138", - "4590853221" - ] - ] - ], - [ - "0x8d5380a08b8010F14DC13FC1cFF655152e30998A", - [ - [ - "547597031515157", - "77364415010" - ] - ] - ], - [ - "0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D", - [ - [ - "44938174265414", - "58533046674" - ] - ] - ], - [ - "0x8d9261369E3BFba715F63303236C324D2E3C44eC", - [ - [ - "56104423797726", - "5555555555" + "759935033618046", + "45751501" ], [ - "56128647277576", - "115480969665" + "759935079369547", + "45866818" ], [ - "593991444075917", - "1088800000000" + "759935171141704", + "45924323" ], [ - "809590710610923", - "69000002695" - ] - ] - ], - [ - "0x8d98fFF066733b1867e83D1E9563dbe2ad93d933", - [ - [ - "682012823032558", - "229947181" + "759935217066027", + "27091944" ], [ - "726480239479153", - "501252464" - ] - ] - ], - [ - "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8", - [ - [ - "76139269514624", - "1990740993" + "759935244157971", + "47094028" ], [ - "76141260255617", - "5973245960" - ] - ] - ], - [ - "0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c", - [ - [ - "759849978560381", - "14385817538" - ] - ] - ], - [ - "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051", - [ - [ - "161830593337837", - "115150000000" + "759935291251999", + "4720868852" ], [ - "202662490970944", - "110850000000" - ] - ] - ], - [ - "0x8E22B0945051f9ca957923490FffC42732A602bb", - [ - [ - "634788539076470", - "6276203466" + "759940035846319", + "79415211" ], [ - "634794815279936", - "9827545588" + "759940115261530", + "104887944" ], [ - "635904827427826", - "9070037632" + "759940220149474", + "104422502" ], [ - "636030747598704", - "5542323541" + "759940324571976", + "47123207" ], [ - "637155158025776", - "5119268057" + "759940371695183", + "21522781" ], [ - "637160277293833", - "4699403170" + "759940431848469", + "26567259" ], [ - "638272444804205", - "4087299849" + "759940458415728", + "28464738" ], [ - "638517747611099", - "59892617241" + "759940486880466", + "16535232" ], [ - "638577640228340", - "369705124715" + "759940529740783", + "23798092" ], [ - "639881343943323", - "3286401254" + "759940553538875", + "22130816" ], [ - "639884630344577", - "355774647137" + "759940575669691", + "19923295" ], [ - "640240404991714", - "27324351801" + "759940703254106", + "96921736" ], [ - "643614362430837", - "2066888224" + "759944301288885", + "148924295" ], [ - "643620283037921", - "8939065419" + "759944524831820", + "94934102" ], [ - "643694953463326", - "2752359372" + "759944631176184", + "441416" ], [ - "643703391590700", - "661959372" + "759944876402388", + "86731197" ], [ - "643708407761224", - "7208774373" + "759945236861297", + "37118" ], [ - "643719737373681", - "5569600000" + "759945663978694", + "33147570" ], [ - "643725306973681", - "9742600000" + "759947353926358", + "19648269869" ], [ - "643779525019527", - "3820850000" + "759967315893614", + "43342636" ], [ - "643783345869527", - "1707040042" + "759967359236250", + "73180835" ], [ - "643785052909569", - "5763520000" + "759968303751614", + "86480048" ], [ - "643821358178040", - "7971800000" + "759968390231662", + "87319503" ], [ - "643829329978040", - "5039030716" + "759968565049433", + "57445411" ], [ - "644476737396027", - "16895000000" + "759969182444540", + "86435423" ], [ - "644493632396027", - "1504381620" + "759969313128560", + "78853009" ], [ - "644546930195508", - "8900760000" + "759969922263950", + "86993082" ], [ - "644630911863012", - "11699760000" + "759970009257032", + "87071115" ], [ - "644654861253846", - "10623920000" + "759970096328147", + "87094141" ], [ - "644665485173846", - "17638053943" + "759970659966091", + "7037654" ], [ - "644683123227789", - "9745450000" + "759970895945609", + "88340633" ], [ - "644715557290166", - "7386500000" + "759971171933682", + "103831674" ], [ - "644722943790166", - "6647850000" + "759971792380007", + "55918771" ], [ - "644730383784474", - "8593920000" + "759971848298778", + "51663688" ], [ - "644739405621666", - "7046550000" + "759971899962466", + "51820149" ], [ - "646586693145487", - "7647120000" + "759971951782615", + "53263163" ], [ - "646594340265487", - "7107300000" + "759972005045778", + "46273362" ], [ - "646601447565487", - "10325700000" + "759972051319140", + "11764053" ], [ - "646649283926819", - "13915200000" + "759972063083193", + "44521152" ], [ - "648975005377814", - "14240250000" + "759972107604345", + "54315334" ], [ - "649465991359682", - "39499055600" + "759972270510579", + "52771216" ], [ - "649543350358696", - "30370700000" + "759972378810991", + "53615733" ], [ - "649638915549465", - "17829600000" + "759972432426724", + "54009683" ], [ - "649682731105706", - "10750000000" + "759972545991397", + "40392605" ], [ - "649732321655883", - "29365153200" + "759972586384002", + "40570272" ], [ - "649853553682918", - "21210990800" + "759972626954274", + "29991995" ], [ - "649877349506586", - "37388375200" + "759972656946269", + "27715408" ], [ - "649945145929507", - "16389700000" + "759972684661677", + "10745158" ], [ - "649997091073072", - "23302500000" + "759972695406835", + "53647337" ], [ - "650021492240274", - "44719200000" + "759973067945793", + "43509245" ], [ - "650106319488124", - "22080492500" + "760353358762258", + "10893874" ], [ - "650180188928485", - "39053700000" + "760353369656132", + "992291" ], [ - "650221099958669", - "31599600000" + "760353370648423", + "136316" ], [ - "650253593040147", - "33458400000" + "760353370784739", + "147677" ], [ - "650288534678033", - "30655350000" + "760353371573213", + "659890" ], [ - "650320795125561", - "45806000000" + "760353372233103", + "46092807" ], [ - "650366601125561", - "30935000000" + "760354201137939", + "3218014" ], [ - "650452255356813", - "44503200000" + "760354238838872", + "3273321614" ], [ - "650551388583982", - "35815000000" + "760357963287583", + "52520804" ], [ - "650651519952014", - "67859000000" + "760358123735957", + "112541922486" ], [ - "650721535280868", - "77075000000" + "760472183068657", + "71399999953" ], [ - "650801314728485", - "80119000000" + "760765586953427", + "195667368889" ], [ - "651106116712104", - "119445800000" + "760961254322316", + "846285958415" ], [ - "651226237935004", - "123080000000" + "761807542325030", + "712321671" ], [ - "651352897558523", - "132861600000" + "761808255104338", + "10685317968" ], [ - "651490734941819", - "126034000000" + "761818941407193", + "38669865140" ], [ - "651859212744680", - "131988500000" + "761858011206868", + "52031027" ], [ - "651994987597920", - "92040000000" + "761858211139284", + "53537634" ], [ - "652092559809813", - "106100900000" + "761858291968910", + "1954482199" ], [ - "652200893903770", - "110340000000" + "761860307483525", + "798157403" ], [ - "652314223783562", - "164816300000" + "762237672060652", + "57392002182" ], [ - "652482991863768", - "199030000000" + "762295918132248", + "68617976" ], [ - "656273596415795", - "139472000000" + "762295986750224", + "181183510038" ], [ - "656726385959559", - "145320000000" + "762477170260262", + "181104817321" ], [ - "657483455066681", - "147980000000" + "762658275077583", + "181134595436" ], [ - "660094725857615", - "275770000000" + "762928154263486", + "12718343972" ], [ - "663738170468081", - "341622600000" + "762941373378458", + "61742453" ], [ - "667521733568321", - "189440000000" + "762941584284511", + "53571451" ], [ - "667713496616813", - "185793800000" + "762941637855962", + "53583667" ], [ - "667901436175266", - "198119000000" + "762941691439629", + "503128696018" ], [ - "668712695471943", - "188864000000" + "763444820135647", + "9452272123" ], [ - "670464846916585", - "243812500000" + "763454275602361", + "24685659026" ], [ - "670716975210715", - "252496000000" + "763478961261387", + "50245820668" ], [ - "743136696323798", - "38477499111" - ] - ] - ], - [ - "0x8E32736429d2F0a39179214C826DeeF5B8A37861", - [ + "763529207082055", + "45323986837" + ], [ - "217364218398563", - "2286050992" + "763574531068892", + "38976282600" ], [ - "235843631746968", - "10000000000" - ] - ] - ], - [ - "0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9", - [ + "763877196713494", + "54224527" + ], [ - "533811200182803", - "10832666996" - ] - ] - ], - [ - "0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1", - [ + "763877250938021", + "54871543" + ], [ - "294885031008106", - "214939119695" - ] - ] - ], - [ - "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", - [ + "763877347112986", + "53640521" + ], [ - "33289238004194", - "88586040" - ] - ] - ], - [ - "0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f", - [ + "763879425886186", + "18918512681" + ], [ - "261926912251264", - "43323014052" + "763899542751244", + "4287074277" ], [ - "267608940617108", - "47689884851" - ] - ] - ], - [ - "0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E", - [ + "763904856308950", + "91042132" + ], [ - "228395750082372", - "40000269904" - ] - ] - ], - [ - "0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1", - [ + "763904947351082", + "3672111531" + ], [ - "250822439474701", - "20080403416" + "763908632298791", + "1924103043" + ], + [ + "763910715862653", + "4104368630" + ], + [ + "763938664793385", + "889781905" + ], + [ + "763975977681622", + "85746574" + ], + [ + "763976127391221", + "54879926" + ], + [ + "763976238932410", + "67220754" + ], + [ + "763978572723857", + "2432585925" + ], + [ + "763983475557042", + "2433575022" + ], + [ + "763985961279749", + "3362361779" + ], + [ + "763989323641528", + "66961666112" + ], + [ + "764448523798789", + "9214910" + ], + [ + "764448533013699", + "3175483736" + ], + [ + "764453314028098", + "886719471" + ], + [ + "766181126764911", + "110330114890" + ], + [ + "766291456879801", + "143444348214" + ], + [ + "767321251748842", + "180967833670" + ], + [ + "767824420446983", + "1158445599" + ], + [ + "767978192014986", + "1606680000" + ], + [ + "790662167913055", + "60917382823" + ], + [ + "792657494145217", + "11153713894" + ], + [ + "845186146706783", + "62659298764" ] ] ], [ - "0x8ED057F90b2442813136066C8D1F1C54A64f6bFa", + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", [ [ - "823927383087247", - "1820804740000" + "7610595204140", + "5073919704077" + ], + [ + "38787729222746", + "2131906543178" + ], + [ + "57813809876489", + "1456044500354" + ], + [ + "170272286454622", + "56571249769" + ], + [ + "349019688741041", + "1506500000000" + ], + [ + "380692001264631", + "3775193029045" + ], + [ + "441243549115022", + "2601287700000" + ], + [ + "517190544221796", + "3763750720000" + ], + [ + "632606217533439", + "22758013200" + ], + [ + "745015672951634", + "2234666668979" ] ] ], [ - "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3", + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", [ [ - "647923615594199", - "3641357127" - ], - [ - "656957870028532", - "10106346172" + "167782267131210", + "106256000000" ], [ - "740606283858594", - "19356731682" + "827629800353740", + "110783253508" ], [ - "763837600998279", - "7849710807" + "827740583607248", + "853190019303" ] ] ], [ - "0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab", + "0x880bba07fA004b948D22f4492808b255d853DFFe", [ [ - "644084234800388", - "4987061378" + "550921667542369", + "41775210170" ] ] ], [ - "0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3", + "0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b", [ [ - "298728570869450", - "16832925562" + "801693742643965", + "99999995904" ] ] ], [ - "0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3", + "0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F", [ [ - "661958706677690", - "25027091964" - ], - [ - "763845450709086", - "30629325526" - ], - [ - "768080691689073", - "4437963" + "644166242707654", + "2050308397" ] ] ], [ - "0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd", + "0x88F09Bdc8e99272588242a808052eb32702f88D0", [ [ - "143431239052286", - "274715000000" + "85029199936365", + "840122967451" ], [ - "160171656111929", - "64458305378" + "88453221835372", + "233118002521" ], [ - "166312311338905", - "4355746398" + "153171960305965", + "41365965513" ], [ - "283231288673626", - "85392080830" + "154999547640805", + "375222322618" ], [ - "428537479118543", - "192740698873" + "165315717408183", + "439812976881" + ], + [ + "171503540188858", + "351737246973" + ], + [ + "218906363945697", + "267770208367" ] ] ], [ - "0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E", + "0x88F667664E61221160ddc0414868eF2f40e83324", [ [ - "636957271887067", - "7101122035" + "350528056631821", + "31369126849" ] ] ], [ - "0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf", + "0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1", [ [ - "279415281575631", - "21362369519" + "344900298455340", + "70954400000" ] ] ], [ - "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", + "0x891768B90Ea274e95B40a3a11437b0e98ae96493", [ [ - "634067048999317", - "624152515" + "542384825883218", + "183217724421" ], [ - "634313671519967", - "2917389996" + "580263603894911", + "202078712746" ], [ - "634316588909963", - "1608309723" - ] - ] - ], - [ - "0x905B2Eb4B731B395E7517a4763CD829F6EC2f510", - [ - [ - "318867707803280", - "11656420007" - ] - ] - ], - [ - "0x90777294a457DDe6F7d297F66cCf30e1aD728997", - [ - [ - "635851055266738", - "6942682548" - ], - [ - "635865859827411", - "591391110" + "580852891674604", + "240857146192" ], [ - "635866451218521", - "1887298581" + "643546658124727", + "67704306110" ], [ - "635913897465458", - "4889469871" + "646848441162974", + "13082343750" ], [ - "635924362730406", - "5619208960" + "646861523506724", + "9963000000" ], [ - "635933837379991", - "466964066" + "647064793304491", + "19836000000" ], [ - "635944448014495", - "11358834076" + "647361422909783", + "10074093750" ], [ - "635955806848571", - "8964889758" + "647416263710967", + "9033750000" ], [ - "636007716379648", - "11412961016" + "647580506034299", + "7345791596" ], [ - "636019129340664", - "5321360246" + "648573161562432", + "8173059019" ], [ - "636024450700910", - "6296897794" + "652685809874501", + "41130226166" ], [ - "636036289922245", - "4024217651" + "653461600264912", + "16002234489" ], [ - "636040314139896", - "7156191386" + "654979952361127", + "23536146483" ], [ - "640489298182683", - "25062802988" + "699140429441765", + "235512332890" ], [ - "640514360985671", - "40682056506" + "810139795794754", + "1021515561753" ] ] ], [ - "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", + "0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df", [ [ - "32880713693820", - "64911823433" - ] - ] - ], - [ - "0x90a69b1a180f60c0059f149577919c778cE2b9e1", - [ + "400667403191381", + "202636723695" + ], [ - "768076090723695", - "4151494524" + "408340443663992", + "1766184702" ], [ - "768080242218597", - "449469381" + "408342209848694", + "1766821870" ], [ - "768317482790786", - "557834029" + "408343976670564", + "1776377083" ], [ - "768563844703458", - "1171046769" + "408345753047647", + "1776940468" ], [ - "883616982283453", - "11518551564" + "409571787389145", + "1940500171" + ], + [ + "411707409641311", + "1769006754" + ], + [ + "460456294770519", + "1909649071" + ], + [ + "460458204419590", + "1909460313" + ], + [ + "460660502553919", + "1913525664" ] ] ], [ - "0x90B113Cf662039394D28505f51f0B1B4678Cc3b5", + "0x89979246e8764D8DCB794fC45F826437fDeC23b2", [ [ - "219654135446081", - "12564997296" + "180499793470389", + "111111111" ] ] ], [ - "0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50", + "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a", [ [ - "580032854468122", - "88320699942" + "228344590940664", + "13645890242" + ], + [ + "404814012582428", + "13502469920" ] ] ], [ - "0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F", + "0x8a178306ffF20fd120C6d96666F08AC7c8b31ded", [ [ - "558624634802147", - "1237233093659" + "341743032293513", + "96491602264" ] ] ], [ - "0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96", + "0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A", [ [ - "84457739949221", - "34043324970" + "185180686460512", + "227508332382" ] ] ], [ - "0x922d012c7E8fCe3C46ac761179Bdb6d16246782D", + "0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234", [ [ - "88955798195330", - "25000000000" - ], - [ - "624243295610454", - "69069767441" + "657666540789773", + "75000000000" ] ] ], [ - "0x923CC3D985cE69a254458001097012cb33FAb601", + "0x8A1B804543404477C19034593aCA22Ab699f0B7D", [ [ - "249612009457166", - "4073310240" - ], - [ - "322124343236298", - "166137507314" - ], - [ - "483902259120899", - "107641561256" - ], - [ - "744791150134115", - "7566204130" + "394825004766547", + "132495619648" ] ] ], [ - "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", + "0x8A30D3bb32291DBbB5F88F905433E499638387b7", [ [ - "28489123737390", - "4974815" + "624854422205544", + "365063359304" ], [ - "343041139126193", - "95838400000" + "720966007001489", + "172940224850" + ], + [ + "790054047305179", + "266340074594" ] ] ], [ - "0x925a3A49f8F831879ee7A848524cEfb558921874", + "0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9", [ [ - "789556545675975", - "477950000000" + "173480616224954", + "5892105020" ] ] ], [ - "0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36", + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", [ [ - "201091928088141", - "17624219070" + "764117220398714", + "5082059700" ] ] ], [ - "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA", + "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", [ [ - "217366504449555", - "302171" + "31876165099710", + "4909413452" ], [ - "217531915353395", - "8958398331" + "324785641390123", + "20381632106" ], [ - "218296843888721", - "80071865513" + "337836629850712", + "110785980662" + ] + ] + ], + [ + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", + [ + [ + "4952878965910", + "25693" ], [ - "224631428800796", - "22378" + "75795223567174", + "55399924533" ], [ - "231844168579875", - "306052702649" + "270425564599223", + "6167341566" ], [ - "376516373148891", - "1755109" + "634279320795686", + "1458416574" ], [ - "380624351115891", - "67650148740" + "634375990601696", + "8038918025" ], [ - "395424902256127", - "6675646701" + "634684031419046", + "14524410119" ], [ - "401212958523891", - "54089424183" + "636910709575795", + "43996256" ], [ - "643927624780761", - "11229570252" - ], - [ - "644546638392961", - "291802547" - ], - [ - "646780136970742", - "8953406250" - ], - [ - "646810991621895", - "8729437500" - ], - [ - "647028402460741", - "18406312500" - ], - [ - "647238526691033", - "17103187500" - ], - [ - "647587851825895", - "11928928125" - ], - [ - "650150114947102", - "30073981383" - ], - [ - "654554821960398", - "2548987716" - ], - [ - "654977582470147", - "2369890980" - ], - [ - "664868558503085", - "115005092260" - ], - [ - "667337080209108", - "100000000000" - ], - [ - "667437080209108", - "84653359213" + "636951322053443", + "5949833624" ] ] ], [ - "0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB", + "0x8a9C930896e453cA3D87f1918996423A589Dd529", [ [ - "299318297064041", - "56184744549" + "599110871788478", + "1467343" ] ] ], [ - "0x92e8E8760aBa91467A321230EF3ba081aD3998Fb", + "0x8b08CA521FFbb87263Af2C6145E173c16576802d", [ [ - "638142095832193", - "89554550" - ], - [ - "638276532104054", - "5326837099" + "273422474556206", + "86252721548" ] ] ], [ - "0x930836bA4242071FEa039732ff8bf18B8401403E", + "0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d", [ [ - "78615049172294", - "2221663677" - ], + "582413872658220", + "312333420" + ] + ] + ], + [ + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", + [ [ - "217475674512777", - "11890755761" + "648003472838380", + "12191197851" ], [ - "299133073539652", - "93793524292" + "653322368574912", + "1500000000" ], [ - "866979581798975", - "5154270000" + "656881019664829", + "5000000000" ], [ - "912080623426716", - "22562763887" + "656943897664851", + "10000000000" ] ] ], [ - "0x9336a604077688Ae5bB9e18EbDF305d81d474817", + "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048", [ [ - "507627505426137", - "16376776057" + "647544630241326", + "8159246655" + ], + [ + "656973507284806", + "14666666666" + ], + [ + "679488933480560", + "10109491684" ] ] ], [ - "0x9383E26556018f0E14D8255C5020d58b3f480Dac", + "0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5", [ [ - "221721022666875", - "88075053596" + "273822660112045", + "7974066988" ] ] ], [ - "0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228", + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", [ [ - "415361829991557", - "21739077662" + "918986387237878", + "39771142560" + ], + [ + "919359990785000", + "42954878920" ] ] ], [ - "0x9399943298b25632b21f4d1FA75DB0C5b8d457C5", + "0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F", [ [ - "342893609901961", - "12098559997" - ], - [ - "344871912132732", - "28386322608" + "534969937819543", + "135093374272" ] ] ], [ - "0x93A185CD1579c015043Af80da2D88C90240Ab3a9", + "0x8BB07e694B421433c9545C0F3d75d99cc763d74A", [ [ - "363871731464758", - "67603779457" + "201066794771608", + "25133316533" ], [ - "470298210971887", - "82596094458" + "262064136145414", + "3613514390" ], [ - "582132866585744", - "152697324377" + "429986876991709", + "54054054054" ] ] ], [ - "0x93b34d74a134b403450f993e3f2fb75B751fa3d6", + "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", [ [ - "235668949340980", - "139782800000" - ] - ] - ], - [ - "0x93C950E36f3C155B2141f1516b7ea5B6D15eD981", - [ + "201109552307211", + "5955474760" + ], [ - "768601886344092", - "32526495264" + "217487565268538", + "44350084857" ], [ - "860250156865870", - "35738780868" + "239366783598110", + "43020513083" ], [ - "868255530067476", - "89704746985" + "299402420990124", + "221104866853" + ], + [ + "326242916529391", + "17549000000" + ], + [ + "326313112529391", + "17549000000" + ], + [ + "361863180975181", + "277218187043" + ], + [ + "522905481908356", + "367508589170" + ], + [ + "867419292286175", + "168927430163" + ], + [ + "869942050156433", + "161251868752" ] ] ], [ - "0x93d4E7442F62028ca0a44df7712c2d202dc214B9", + "0x8bFe70E2D583f512E7248D67ACE918116B892aeA", [ [ - "153777795374191", - "148859700937" + "278038360536371", + "43467727584" ] ] ], [ - "0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb", + "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", [ [ - "76137278825671", - "1990688953" - ], - [ - "643070034423361", - "6711451596" + "193207655597753", + "21615842337" ] ] ], [ - "0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f", + "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1", [ [ - "118268129285100", - "16859278098" + "236244833829125", + "21640000" + ], + [ + "247467483053971", + "97017435775" + ], + [ + "268035191288542", + "43140000000" + ], + [ + "385713611898436", + "6012500000" ] ] ], [ - "0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74", + "0x8C35933C469406C8899882f5C2119649cD5B617f", [ [ - "343508462299842", - "21014656050" + "738068338201632", + "87106285553" ] ] ], [ - "0x94cf16A6C45474B05d383d8779479C69f0c5a07A", + "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9", [ [ - "580121175168064", - "85134042441" + "320002058744923", + "981658441" + ], + [ + "396538880923743", + "3278000000" ] ] ], [ - "0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB", + "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b", [ [ - "83647572521207", - "18782949347" + "634147730459515", + "19019153520" ], [ - "271861492103884", - "19812902768" - ] - ] - ], - [ - "0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa", - [ + "639381458599755", + "43462477350" + ], [ - "38045439233929", - "14316608969" + "640267729343515", + "1639640204" + ], + [ + "643109436914433", + "3695060762" + ], + [ + "656886019664829", + "9255777800" ] ] ], [ - "0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95", + "0x8D02496FA58682DB85034bCCCfE7Dd190000422e", [ [ - "203417856117845", - "45234008042" + "343580534466152", + "26811409430" ] ] ], [ - "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5", + "0x8D06Ffb1500343975571cC0240152C413d803778", [ [ - "76194265704929", - "3500000000" + "28904918772117", + "509586314410" ], [ - "646832204344041", - "177292448" + "149476539987788", + "595705787279" ], [ - "646841938136489", - "152188010" - ] - ] - ], - [ - "0x9558d273A81CF0b41931C78B502c4CB2Bd3deb42", - [ + "150623260553725", + "436653263484" + ], [ - "131067170257727", - "423037526400" - ] - ] - ], - [ - "0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6", - [ + "161092113186340", + "738480151497" + ], [ - "355295604996220", - "17574315355" + "162734759646450", + "737048150894" ], [ - "559861867895806", - "7681062381" + "163471807797344", + "717665153748" ], [ - "588875863204433", - "2978711605" - ] - ] - ], - [ - "0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13", - [ + "174803269011285", + "323070981235" + ], [ - "563601797802308", - "150555000000" - ] - ] - ], - [ - "0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e", - [ + "210525931443438", + "62132577144" + ], [ - "321946865430555", - "17115881788" - ] - ] - ], - [ - "0x96b793d04E0D068083792E4D6E7780EEE50755Fa", - [ + "232704752844281", + "204706266628" + ], [ - "402932963276600", - "30982753569" - ] - ] - ], - [ - "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", - [ + "247742878911682", + "275332296988" + ], [ - "563752352802308", - "102495000000" + "253931736847120", + "290236580727" ], [ - "566326224363477", - "253050000000" + "261970235265316", + "30303030303" ], [ - "568613671950815", - "253050000000" + "272319508243958", + "438603533273" ], [ - "569509116433715", - "253050000000" + "335529346845329", + "13913764863" ], [ - "572451504525253", - "253050000000" + "340276769047777", + "33796000000" ], [ - "595080378032834", - "10000000000" + "344515718397376", + "18025000000" ], [ - "672201516338595", - "49886373590" + "344533743397376", + "18025000000" ], [ - "742850925745520", - "13729367592" + "344833670732808", + "5702918963" ], [ - "742864655113112", - "272041210686" - ] - ] - ], - [ - "0x96E4FD50CD0A761528626fc072Da54ADFD2F8593", - [ + "429976284393417", + "10590000000" + ], [ - "741719419577984", - "1466608" - ] - ] - ], - [ - "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC", - [ + "628854228397766", + "372857584031" + ], [ - "340404094520260", - "3964784011" + "629227085981797", + "216873485917" ], [ - "646482350566546", - "15589908000" - ] - ] - ], - [ - "0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6", - [ + "634643031419046", + "20948977130" + ], [ - "282819759198190", - "269171533434" - ] - ] - ], - [ - "0x9728444E6414E39d0F7F5389ca129B8abb4cB492", - [ + "637149167789946", + "4910026986" + ], [ - "480577854120899", - "3324405000000" + "637351998004377", + "258192517612" ], [ - "631799252766314", - "1813500000" + "639180990676042", + "199438094194" ], [ - "643804834253676", - "6721835647" - ] - ] - ], - [ - "0x97Ada2E26C06C263c68ECCe43756708d0f03D94A", - [ + "641522728201681", + "5800000000" + ], [ - "220240212248773", - "104797064592" - ] - ] - ], - [ - "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", - [ + "641574417641439", + "154715717850" + ], [ - "679499042972244", - "1010851037" + "643909821821812", + "6902000000" ], [ - "679985431655992", - "5054528890" + "643916723821812", + "10900958949" ], [ - "911892086318462", - "14908452858" - ] - ] - ], - [ - "0x97b60488997482C29748d6f4EdC8665AF4A131B5", - [ + "643999292802533", + "8204345668" + ], [ - "18053754491380", - "122517511" - ] - ] - ], - [ - "0x97c46EeC87a51320c05291286f36689967834854", - [ + "644007497148201", + "11854871050" + ], [ - "415490440421248", - "60177474475" - ] - ] - ], - [ - "0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672", - [ - [ - "826335238626477", - "9112774391" - ] - ] - ], - [ - "0x97E89f88407d375cCF90eC1B710B5A914eB784Af", - [ - [ - "201768350656481", - "1844339969" + "644045596517280", + "6544832392" ], [ - "220224852015278", - "6971402273" + "644057761258485", + "8182865200" ], [ - "264821742218510", - "14054479986" + "644065944123685", + "7516642526" ], [ - "310876801024927", - "8504661454" - ] - ] - ], - [ - "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", - [ - [ - "428374263505395", - "9378468172" + "644171938918668", + "9601229268" ], [ - "586115544020889", - "50921590468" + "644306806412385", + "12054054687" ], [ - "595214601590334", - "15218730000" - ] - ] - ], - [ - "0x981793123af0E6126BEf8c8277Fdffec80eB13fd", - [ - [ - "649010129912775", - "665549350" + "644319149838335", + "10735050747" ], [ - "649027243062125", - "483108332" + "644329884889082", + "14347680621" ], [ - "649287757760638", - "69640042" - ] - ] - ], - [ - "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", - [ - [ - "668901559471943", - "2552486513" - ] - ] - ], - [ - "0x988fB2064B42a13eb556DF79077e23AA4924aF20", - [ - [ - "96723333293899", - "17313210068" + "644396277666556", + "6674520726" ], [ - "217902719272293", - "226251708976" - ] - ] - ], - [ - "0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60", - [ - [ - "318373329094766", - "101752513973" - ] - ] - ], - [ - "0x989c235D8302fe906A84D076C24e51c1A7D44E3C", - [ - [ - "656118292039843", - "2141035469" + "644525199249437", + "6225710228" ], [ - "659821030952031", - "142619335500" - ] - ] - ], - [ - "0x990cf47831822275a365e0C9239DC534b833922D", - [ - [ - "267334127487509", - "3651796730" - ] - ] - ], - [ - "0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a", - [ - [ - "562079457802308", - "379575000000" + "644616712009539", + "14199853473" ], [ - "565096894810977", - "379575000000" + "644642611623012", + "12249630834" ], [ - "566912175347146", - "379575000000" + "646758741417842", + "4969664107" ], [ - "567901195967146", - "379575000000" + "646871486506724", + "17642812500" ], [ - "570422537669484", - "379575000000" + "646914219232490", + "8605864430" ], [ - "571411558289484", - "379575000000" - ] - ] - ], - [ - "0x992C5a47F13AB085de76BD598ED3842c995bDf1c", - [ - [ - "770897210700702", - "32781647269" - ] - ] - ], - [ - "0x995D1e4e2807Ef2A8d7614B607A89be096313916", - [ - [ - "141100334358920", - "3759398496" + "647002050880741", + "9799080000" ], [ - "157546915049126", - "1894286900" + "647046808773241", + "17984531250" ], [ - "167724340170029", - "7142857142" + "647084629304491", + "23544562500" ], [ - "201063937145997", - "2857625611" + "647119660778668", + "15762838323" ], [ - "217470159827742", - "4221510559" + "647151216777708", + "11761593750" ], [ - "262000538295619", - "1941820772" + "647166440607362", + "9285468750" ], [ - "429969815360084", - "6469033333" + "647371497003533", + "6381630000" ], [ - "430040931045763", - "7468303231" + "647505902133654", + "6953600000" ], [ - "634268733708050", - "10587087636" + "647527562675656", + "8111120358" ], [ - "634481097972888", - "857142857" + "647617732404338", + "19873525000" ], [ - "634485782133373", - "1788298206" + "647798301685196", + "7654771125" ], [ - "636910753572051", - "20630903371" + "647838858023565", + "29093546875" ], [ - "641737331477120", - "4335852529" + "647908205457926", + "12756105568" ], [ - "648129956489413", - "12056682276" + "647978638361818", + "24834476562" ], [ - "672730845984332", - "4306282320" + "648017646545411", + "10268964843" ], [ - "679500053823281", - "844417120" + "648034585438303", + "11688871093" ], [ - "741257694168719", - "95204051" + "648106773674125", + "3568208882" ], [ - "757912612741718", - "38494858016" + "648187497812653", + "10104336384" ], [ - "763876080034612", - "623293283" + "648233657616208", + "10357224170" ], [ - "764083981653091", - "62649720" + "648244014840378", + "8114610976" ], [ - "764093598842759", - "6707198969" + "648252129451354", + "8545778006" ], [ - "768095325828979", - "19256876112" + "648262194812840", + "8952959614" ], [ - "848062102251836", - "58373882896" + "648271147772454", + "6063060479" ], [ - "848140906334524", - "96391325008" + "648287518441310", + "7377849726" ], [ - "860099248890927", - "6689760000" - ] - ] - ], - [ - "0x997563ba8058E80f1E4dd5b7f695b5C2B065408e", - [ - [ - "250927013915742", - "25000000000" - ] - ] - ], - [ - "0x9980234b18408E07C0F74aCE3dF940B02DD4095c", - [ - [ - "883529586723571", - "5308261827" - ] - ] - ], - [ - "0x99997957BF3c202446b1DCB1CAc885348C5b2222", - [ - [ - "224631428823174", - "22606820288" - ], - [ - "237800674733611", - "66551024044" - ] - ] - ], - [ - "0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b", - [ - [ - "767310292972398", - "1824412499" - ] - ] - ], - [ - "0x99e8845841BDe89e148663A6420a98C47e15EbCe", - [ - [ - "667899290416813", - "2145758453" - ] - ] - ], - [ - "0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221", - [ - [ - "190844375756353", - "112457271309" - ] - ] - ], - [ - "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", - [ - [ - "27675714415954", - "28428552478" - ], - [ - "28382015360976", - "3696311380" + "648416302604421", + "20715605468" ], [ - "31670582016164", - "10000000000" + "648452542642294", + "21586449186" ], [ - "31768149901004", - "1262870028" + "648483189881961", + "20797810726" ], [ - "32346871499710", - "3745346177" + "648510092345893", + "15239253108" ], [ - "32350616845887", - "279480420" + "648616078919292", + "8718470609" ], [ - "32374040679120", - "10949720000" + "648629542096134", + "21544183345" ], [ - "38665412577552", - "24234066624" + "648750501960130", + "10150581160" ], [ - "38689646644176", - "25000000000" + "648760652541290", + "23321057117" ], [ - "38771428831519", - "765933376" + "648783994477207", + "23277498479" ], [ - "38772194764895", - "15534457850" + "648807289596036", + "20989718750" ], [ - "41290690886174", - "33333333333" + "648828279314786", + "20297082735" ], [ - "41373045659339", - "23121000000" + "648889660439973", + "41844097841" ], [ - "41397566242672", - "22053409145" + "649214012945345", + "22440187500" ], [ - "60450977817664", - "25794401425" + "649236472457547", + "7534311320" ], [ - "60476772219089", - "57688204600" + "649261133791064", + "23748160156" ], [ - "70456530221510", - "18433333333" + "649656745149465", + "12205116299" ], [ - "72513985814422", - "14491677571" + "649693929475018", + "11667351669" ], [ - "76155330934072", - "31663342271" + "657232832610979", + "97443079393" ], [ - "76210249214022", - "5833333333" + "657631435066681", + "35105723092" ], [ - "78786823008925", - "60000000000" + "657741540789773", + "84888584622" ], [ - "86769330994210", - "21622894540" + "657986484502639", + "80000000000" ], [ - "88930464353484", - "20159065566" + "658147267102223", + "82507217675" ], [ - "107758212738194", - "26283248584" + "659366890690250", + "174474635475" ], [ - "107784495986778", - "73418207324" + "665058906638905", + "92828595185" ], [ - "164387799728437", - "209998797626" + "676664914525249", + "18043478260" ], [ - "167679367131210", - "584126946" + "676683083298681", + "3118260869" ], [ - "171855277435831", - "38451787955" + "679750611381961", + "234067235160" ], [ - "185657906453513", - "65394189314" + "681871200072623", + "12689035666" ], [ - "228435750352276", - "5440000000" + "682844108475123", + "1148082700" ], [ - "245016829121327", - "43975873054" + "741732026495866", + "17262110558" ], [ - "272983487213885", - "24345144843" + "741842944533312", + "61092850308" ], [ - "278810931077752", - "61482926829" + "763709016360993", + "44972105263" ], [ - "345065787237708", - "11163284655" + "763803405580259", + "33297747636" ], [ - "384698308395580", - "109943584385" + "768649803857758", + "67782688750" ], [ - "385029414062246", - "85561000000" - ], + "912555361492019", + "2704904821499" + ] + ] + ], + [ + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + [ [ - "409893164256334", - "1771119180000" + "741717634585957", + "400610000" ], [ - "470830034187107", - "6357442000000" + "741718197414792", + "455722490" ], [ - "634257675267110", - "11058440940" + "741726062974606", + "818667500" ], [ - "634663980396176", - "51022870" + "741731207273166", + "819222700" ], [ - "679984678617121", - "582008800" - ], + "743584914211138", + "4590853221" + ] + ] + ], + [ + "0x8d5380a08b8010F14DC13FC1cFF655152e30998A", + [ [ - "686252659342435", - "12828436637551" - ], + "547597031515157", + "77364415010" + ] + ] + ], + [ + "0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D", + [ [ - "701165945775675", - "4725277211064" - ], - [ - "712925633754929", - "7525989446089" - ], - [ - "742249808817806", - "125000000" - ], - [ - "760295074894366", - "58283867892" - ], + "44938174265414", + "58533046674" + ] + ] + ], + [ + "0x8d9261369E3BFba715F63303236C324D2E3C44eC", + [ [ - "761862357338505", - "193914722147" + "56104423797726", + "5555555555" ], [ - "764182912505930", - "110218533197" + "56128647277576", + "115480969665" ], [ - "862566363552351", - "3470058078836" + "593991444075917", + "1088800000000" ], [ - "873232203687519", - "875826549" - ], + "809590710610923", + "69000002695" + ] + ] + ], + [ + "0x8d98fFF066733b1867e83D1E9563dbe2ad93d933", + [ [ - "873233079514068", - "1" + "682012823032558", + "229947181" ], [ - "873233079514069", - "8767124173450" + "726480239479153", + "501252464" ] ] ], [ - "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", + "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8", [ [ - "28079737718067", - "38853754100" + "76139269514624", + "1990740993" ], [ - "28524969242262", - "2368065675" - ], + "76141260255617", + "5973245960" + ] + ] + ], + [ + "0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c", + [ [ - "649543303268638", - "47090058" + "759849978560381", + "14385817538" ] ] ], [ - "0x9A5d202C5384a032473b2370D636DcA39adcC28f", + "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051", [ [ - "41274338068902", - "10701754385" + "161830593337837", + "115150000000" + ], + [ + "202662490970944", + "110850000000" ] ] ], [ - "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + "0x8E22B0945051f9ca957923490FffC42732A602bb", [ [ - "28389711672356", - "104406740" + "634788539076470", + "6276203466" ], [ - "33289034812134", - "202192060" + "634794815279936", + "9827545588" ], [ - "33289237004194", - "1000000" + "635904827427826", + "9070037632" ], [ - "33300426361001", - "1000000" + "636030747598704", + "5542323541" ], [ - "33300427361001", - "5000000" + "637155158025776", + "5119268057" ], [ - "33300432361001", - "5000000" + "637160277293833", + "4699403170" ], [ - "33300437361001", - "13656860" + "638272444804205", + "4087299849" ], [ - "61044373437038", - "25689347322" + "638517747611099", + "59892617241" ], [ - "76147233501577", - "6856167984" + "638577640228340", + "369705124715" ], [ - "429960272856509", - "9542503575" + "639881343943323", + "3286401254" ], [ - "561871994522568", - "13450279740" + "639884630344577", + "355774647137" ], [ - "643790816429569", - "7279671848" + "640240404991714", + "27324351801" ], [ - "646935480690670", - "6157413604" + "643614362430837", + "2066888224" ], [ - "647192437507145", - "407318967" + "643620283037921", + "8939065419" ], [ - "649248676270246", - "9479483" + "643694953463326", + "2752359372" ], [ - "650449504800190", - "2539843750" + "643703391590700", + "661959372" ], [ - "651725675783863", - "1673375675" + "643708407761224", + "7208774373" ], [ - "653079279087019", - "3142881940" + "643719737373681", + "5569600000" ], [ - "668346065728228", - "1702871488" + "643725306973681", + "9742600000" ], [ - "676865712743974", - "13348297600" + "643779525019527", + "3820850000" ], [ - "700043849883120", - "15882769" + "643783345869527", + "1707040042" ], [ - "741061075495092", - "11965994685" + "643785052909569", + "5763520000" ], [ - "741274318742427", - "170840041445" + "643821358178040", + "7971800000" ], [ - "768308228493998", - "500910625" - ] - ] - ], - [ - "0x9af623bE3d125536929F8978233622A7BFc3feF4", - [ + "643829329978040", + "5039030716" + ], [ - "79296814826113", - "1185063194630" + "644476737396027", + "16895000000" ], [ - "188132972372439", - "634988906630" - ] - ] - ], - [ - "0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2", - [ + "644493632396027", + "1504381620" + ], [ - "67661612435034", - "7500000000" + "644546930195508", + "8900760000" ], [ - "326657149277910", - "365524741141" + "644630911863012", + "11699760000" ], [ - "327607470128575", - "221232078910" - ] - ] - ], - [ - "0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0", - [ + "644654861253846", + "10623920000" + ], [ - "201260587940851", - "66013841091" - ] - ] - ], - [ - "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F", - [ + "644665485173846", + "17638053943" + ], [ - "561734572056961", - "18261807412" + "644683123227789", + "9745450000" ], [ - "561752833864373", - "22055244259" - ] - ] - ], - [ - "0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52", - [ + "644715557290166", + "7386500000" + ], [ - "141778150492051", - "8228218644" - ] - ] - ], - [ - "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", - [ - [ - "661999206613204", - "25000000000" - ] - ] - ], - [ - "0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E", - [ - [ - "343608586695690", - "6294220121" - ] - ] - ], - [ - "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C", - [ - [ - "647881759045440", - "106457720" + "644722943790166", + "6647850000" ], [ - "647898572853160", - "795636" - ] - ] - ], - [ - "0x9c211891aFFB1ce6CF8A3e537efbF2f948162204", - [ - [ - "577935041861106", - "59036591791" - ] - ] - ], - [ - "0x9c695f16975b57f730727F30f399d110cFc71f10", - [ - [ - "461882379832", - "763789095" + "644730383784474", + "8593920000" ], [ - "501577877086", - "8058429169" + "644739405621666", + "7046550000" ], [ - "28378015360976", - "474338291" + "646586693145487", + "7647120000" ], [ - "632732083964954", - "1303739940" + "646594340265487", + "7107300000" ], [ - "633969304929591", - "49424794604" + "646601447565487", + "10325700000" ], [ - "634191999230784", - "2612080692" + "646649283926819", + "13915200000" ], [ - "699433001774655", - "535830837294" + "648975005377814", + "14240250000" ], [ - "721395262187317", - "14658916075" + "649465991359682", + "39499055600" ], [ - "740509548356246", - "96735502348" + "649543350358696", + "30370700000" ], [ - "826252078588592", - "16970820644" + "649638915549465", + "17829600000" ], [ - "885461415329976", - "566999495822" - ] - ] - ], - [ - "0x9C6f40999C82cd18f31421596Ca3b1C5C5083048", - [ - [ - "644385379072596", - "2088841809" - ] - ] - ], - [ - "0x9c7ac7abbD3EC00E1d4b330C497529166db84f63", - [ - [ - "323003646918374", - "27365907771" - ] - ] - ], - [ - "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753", - [ - [ - "28868829340297", - "1785516900" + "649682731105706", + "10750000000" ], [ - "28870614857197", - "266145543" + "649732321655883", + "29365153200" ], [ - "76029285005811", - "2" - ] - ] - ], - [ - "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b", - [ - [ - "385694828784542", - "3478109734" + "649853553682918", + "21210990800" ], [ - "385719624398436", - "3179294885" + "649877349506586", + "37388375200" ], [ - "395508552599182", - "2015623893" + "649945145929507", + "16389700000" ], [ - "605147868070297", - "210641200000" + "649997091073072", + "23302500000" ], [ - "632638886261264", - "76135000000" + "650021492240274", + "44719200000" ], [ - "664655112978280", - "14440162929" + "650106319488124", + "22080492500" ], [ - "675156678410802", - "83910292215" + "650180188928485", + "39053700000" ], [ - "676829643561375", - "10000000000" - ] - ] - ], - [ - "0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8", - [ - [ - "141954294169149", - "30687677344" - ] - ] - ], - [ - "0x9D1334De1c51a46a9289D6258b986A267b09Ac18", - [ - [ - "624548747558738", - "15810994142" - ] - ] - ], - [ - "0x9D496BA09C9dDAE8de72F146DE012701a10400CC", - [ - [ - "298511519013444", - "217051856006" - ] - ] - ], - [ - "0x9d5b2a8Ad23E7d870CFa7c7B88A74C64FA098b46", - [ - [ - "32028293099710", - "14856250000" + "650221099958669", + "31599600000" ], [ - "84597875356697", - "133850744098" + "650253593040147", + "33458400000" ], [ - "97016486455371", - "254834033922" + "650288534678033", + "30655350000" ], [ - "158734314278093", - "202188482247" + "650320795125561", + "45806000000" ], [ - "171941305124226", - "512087118743" + "650366601125561", + "30935000000" ], [ - "172453392242969", - "167963854918" + "650452255356813", + "44503200000" ], [ - "250740780766453", - "6745238037" + "650551388583982", + "35815000000" ], [ - "395286775789415", - "32560000000" + "650651519952014", + "67859000000" ], [ - "564630258655208", - "32896500000" + "650721535280868", + "77075000000" ], [ - "565841291995977", - "32896500000" + "650801314728485", + "80119000000" ], [ - "569318757818315", - "32896500000" + "651106116712104", + "119445800000" ], [ - "569955901513715", - "32896500000" + "651226237935004", + "123080000000" ], [ - "635871823538305", - "8232935488" + "651352897558523", + "132861600000" ], [ - "636053162040032", - "971681987" + "651490734941819", + "126034000000" ], [ - "637126106210329", - "3549072302" + "651859212744680", + "131988500000" ], [ - "637129677608084", - "6326081465" + "651994987597920", + "92040000000" ], [ - "638142185386743", - "70301972656" + "652092559809813", + "106100900000" ], [ - "638293184544519", - "3222535993" + "652200893903770", + "110340000000" ], [ - "638952019925396", - "53884687500" + "652314223783562", + "164816300000" ], [ - "644463766708048", - "12970687979" + "652482991863768", + "199030000000" ], [ - "644495136777647", - "14591855468" + "656273596415795", + "139472000000" ], [ - "645998771359546", - "402840000000" + "656726385959559", + "145320000000" ], [ - "646991286880741", - "10764000000" + "657483455066681", + "147980000000" ], [ - "648593843684716", - "9515295236" + "660094725857615", + "275770000000" ], [ - "659752492504115", - "68538447916" + "663738170468081", + "341622600000" ], [ - "682072110977139", - "44526000000" - ] - ] - ], - [ - "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", - [ + "667521733568321", + "189440000000" + ], [ - "531849151603571", - "116351049553" + "667713496616813", + "185793800000" ], [ - "533550128922703", - "19753556385" + "667901436175266", + "198119000000" ], [ - "544213439498555", - "93587607857" + "668712695471943", + "188864000000" + ], + [ + "670464846916585", + "243812500000" + ], + [ + "670716975210715", + "252496000000" + ], + [ + "743136696323798", + "38477499111" ] ] ], [ - "0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C", + "0x8E32736429d2F0a39179214C826DeeF5B8A37861", [ [ - "465366616460626", - "12745164567" + "217364218398563", + "2286050992" ], [ - "534838741555277", - "19231055968" + "235843631746968", + "10000000000" ] ] ], [ - "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196", + "0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9", [ [ - "145457231580719", - "24029099031" - ], - [ - "187576828165577", - "27608467355" + "533811200182803", + "10832666996" ] ] ], [ - "0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A", + "0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1", [ [ - "189397241850520", - "74656417530" - ], + "294885031008106", + "214939119695" + ] + ] + ], + [ + "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", + [ [ - "634499611419046", - "143420000000" + "33289238004194", + "88586040" ] ] ], [ - "0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d", + "0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f", [ [ - "151778101037835", - "204744106703" + "261926912251264", + "43323014052" ], [ - "430070314991709", - "1718500000" + "267608940617108", + "47689884851" ] ] ], [ - "0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4", + "0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E", [ [ - "886028414825798", - "48979547469" + "228395750082372", + "40000269904" ] ] ], [ - "0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56", + "0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1", [ [ - "682506977792619", - "12652582923" + "250822439474701", + "20080403416" ] ] ], [ - "0x9eD25251826C88122E16428CbB70e65a33E85B19", + "0x8ED057F90b2442813136066C8D1F1C54A64f6bFa", [ [ - "790034495675975", - "19551629204" + "823927383087247", + "1820804740000" ] ] ], [ - "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", + "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3", [ [ - "236911541186226", - "1352237819" + "647923615594199", + "3641357127" ], [ - "408418430300088", - "1389648589" + "656957870028532", + "10106346172" ], [ - "634458769639996", - "2997137850" + "740606283858594", + "19356731682" + ], + [ + "763837600998279", + "7849710807" ] ] ], [ - "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE", + "0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab", [ [ - "142090287304002", - "17901404645" - ], - [ - "429116006573679", - "11930700081" + "644084234800388", + "4987061378" ] ] ], [ - "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", + "0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3", [ [ - "76154089669561", - "1241264511" + "298728570869450", + "16832925562" ] ] ], [ - "0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1", + "0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3", [ [ - "279436643945150", - "3073743220711" + "661958706677690", + "25027091964" + ], + [ + "763845450709086", + "30629325526" + ], + [ + "768080691689073", + "4437963" ] ] ], [ - "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", + "0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd", [ [ - "88808287575483", - "30000000000" + "143431239052286", + "274715000000" ], [ - "96740646503967", - "17128687218" + "160171656111929", + "64458305378" ], [ - "229489538650748", - "32886283743" + "166312311338905", + "4355746398" ], [ - "401152958523891", - "60000000000" + "283231288673626", + "85392080830" ], [ - "609312164824779", - "1735981704349" + "428537479118543", + "192740698873" ] ] ], [ - "0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402", + "0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E", [ [ - "636566959970125", - "151773247545" + "636957271887067", + "7101122035" ] ] ], [ - "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8", + "0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf", [ [ - "660690919212731", - "289575171383" - ], + "279415281575631", + "21362369519" + ] + ] + ], + [ + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", + [ [ - "661622790183905", - "239200000000" + "634067048999317", + "624152515" ], [ - "668099555175266", - "7477326571" + "634313671519967", + "2917389996" ], [ - "670969584019292", - "234760000000" - ], + "634316588909963", + "1608309723" + ] + ] + ], + [ + "0x905B2Eb4B731B395E7517a4763CD829F6EC2f510", + [ [ - "674505181593279", - "234450921461" + "318867707803280", + "11656420007" + ] + ] + ], + [ + "0x90777294a457DDe6F7d297F66cCf30e1aD728997", + [ + [ + "635851055266738", + "6942682548" ], [ - "674739632514740", - "263907264047" + "635865859827411", + "591391110" ], [ - "675273135381879", - "259861322259" + "635866451218521", + "1887298581" ], [ - "675532996704138", - "197622058472" + "635913897465458", + "4889469871" ], [ - "675730618762610", - "151122236793" + "635924362730406", + "5619208960" ], [ - "676029448628099", - "156891853803" + "635933837379991", + "466964066" ], [ - "676355375239188", - "179430599503" - ] - ] - ], - [ - "0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151", - [ + "635944448014495", + "11358834076" + ], [ - "92502053320361", - "53620740838" + "635955806848571", + "8964889758" + ], + [ + "636007716379648", + "11412961016" + ], + [ + "636019129340664", + "5321360246" + ], + [ + "636024450700910", + "6296897794" + ], + [ + "636036289922245", + "4024217651" + ], + [ + "636040314139896", + "7156191386" + ], + [ + "640489298182683", + "25062802988" + ], + [ + "640514360985671", + "40682056506" ] ] ], [ - "0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc", + "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", [ [ - "632158717283728", - "132492430252" + "32880713693820", + "64911823433" ] ] ], [ - "0xa03E8d9688844146867dEcb457A7308853699016", + "0x90a69b1a180f60c0059f149577919c778cE2b9e1", [ [ - "637610190521989", - "210060204" + "768076090723695", + "4151494524" + ], + [ + "768080242218597", + "449469381" + ], + [ + "768317482790786", + "557834029" + ], + [ + "768563844703458", + "1171046769" + ], + [ + "883616982283453", + "11518551564" ] ] ], [ - "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", + "0x90B113Cf662039394D28505f51f0B1B4678Cc3b5", [ [ - "808559640519864", - "3390839496" + "219654135446081", + "12564997296" ] ] ], [ - "0xA0df63b73f3B8D4a8cE353833848D672e65Ad818", + "0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50", [ [ - "202835949108939", - "22" + "580032854468122", + "88320699942" ] ] ], [ - "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", + "0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F", [ [ - "282604279025472", - "19163060173" - ], - [ - "395376016689151", - "26717740160" + "558624634802147", + "1237233093659" ] ] ], [ - "0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7", + "0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96", [ [ - "764293131039127", - "5229504715" + "84457739949221", + "34043324970" ] ] ], [ - "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf", + "0x922d012c7E8fCe3C46ac761179Bdb6d16246782D", [ [ - "523468438510750", - "57354074175" - ], - [ - "525245705716340", - "196968848290" - ], - [ - "530603875619848", - "61988431714" - ], - [ - "531536857228833", - "206618185436" - ], - [ - "586955456756494", - "136890000000" - ], - [ - "587932486316494", - "136890000000" - ], - [ - "588236306066494", - "136890000000" - ], - [ - "588540125816494", - "136890000000" - ], - [ - "634979077385365", - "10413750000" + "88955798195330", + "25000000000" ], [ - "635251139802881", - "10413750000" + "624243295610454", + "69069767441" ] ] ], [ - "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", + "0x923CC3D985cE69a254458001097012cb33FAb601", [ [ - "85026199936365", - "3000000000" - ], - [ - "88852883837163", - "4811715614" + "249612009457166", + "4073310240" ], [ - "96710970854679", - "12362439220" + "322124343236298", + "166137507314" ], [ - "106834324920574", - "4912604718" + "483902259120899", + "107641561256" ], [ - "643886475933352", - "3765334850" + "744791150134115", + "7566204130" ] ] ], [ - "0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0", + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", [ [ - "845407075505547", - "149022357044" + "28489123737390", + "4974815" + ], + [ + "343041139126193", + "95838400000" ] ] ], [ - "0xA256Aa181aF9046995aF92506498E31E620C747a", + "0x925a3A49f8F831879ee7A848524cEfb558921874", [ [ - "211328028616940", - "48907133253" - ], - [ - "250772216022849", - "50223451852" + "789556545675975", + "477950000000" ] ] ], [ - "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6", + "0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36", [ [ - "635189799238365", - "55984064516" - ], - [ - "635432840138881", - "96417000000" + "201091928088141", + "17624219070" ] ] ], [ - "0xa31CFf6aA0af969b6d9137690CF1557908df861B", + "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA", [ [ - "676729211151593", - "22234228333" + "217366504449555", + "302171" ], [ - "682011116351038", - "122067507" + "217531915353395", + "8958398331" ], [ - "682012314843498", - "508189060" + "218296843888721", + "80071865513" ], [ - "686184845909654", - "67813432781" - ] - ] - ], - [ - "0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714", - [ - [ - "355648398557215", - "124964349871" - ] - ] - ], - [ - "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e", - [ + "224631428800796", + "22378" + ], [ - "12998236449826", - "426119290214" + "231844168579875", + "306052702649" ], [ - "73062201497306", - "639498343615" + "376516373148891", + "1755109" ], [ - "145584038361780", - "447994980945" + "380624351115891", + "67650148740" ], [ - "146717193948896", - "349624513178" + "395424902256127", + "6675646701" ], [ - "147733502440483", - "358107845085" + "401212958523891", + "54089424183" ], [ - "161945743337837", - "789016308613" + "643927624780761", + "11229570252" ], [ - "187637878190147", - "382459205759" + "644546638392961", + "291802547" ], [ - "192336527239129", - "209422598089" + "646780136970742", + "8953406250" ], [ - "204912402135128", - "844577500760" + "646810991621895", + "8729437500" ], [ - "220380031906084", - "231048083326" + "647028402460741", + "18406312500" ], [ - "262067749659804", - "640903306175" + "647238526691033", + "17103187500" ], [ - "306964647833074", - "338382661514" + "647587851825895", + "11928928125" ], [ - "523998966576689", - "403876115080" + "650150114947102", + "30073981383" ], [ - "644357568047841", - "2333969425" + "654554821960398", + "2548987716" ], [ - "760721375485603", - "44211467824" + "654977582470147", + "2369890980" ], [ - "768308729410302", - "399538786" + "664868558503085", + "115005092260" ], [ - "774509663364768", - "69954674028" + "667337080209108", + "100000000000" ], [ - "860392158116449", - "34095737422" + "667437080209108", + "84653359213" + ] + ] + ], + [ + "0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB", + [ + [ + "299318297064041", + "56184744549" + ] + ] + ], + [ + "0x92e8E8760aBa91467A321230EF3ba081aD3998Fb", + [ + [ + "638142095832193", + "89554550" ], [ - "861654004231708", - "3679385472" + "638276532104054", + "5326837099" ] ] ], [ - "0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c", + "0x930836bA4242071FEa039732ff8bf18B8401403E", [ [ - "575718099519476", - "32762422300" + "78615049172294", + "2221663677" ], [ - "605567098770297", - "210641200000" + "217475674512777", + "11890755761" ], [ - "836111814253126", - "153625996701" + "299133073539652", + "93793524292" ], [ - "845020731525698", - "149234921085" + "866979581798975", + "5154270000" ], [ - "859277327665173", - "150200542274" + "912080623426716", + "22562763887" ] ] ], [ - "0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797", + "0x9336a604077688Ae5bB9e18EbDF305d81d474817", [ [ - "267140974896619", - "10071394154" + "507627505426137", + "16376776057" ] ] ], [ - "0xA46322948459845Bb5d895ED9C1fdd798692a1dA", + "0x9383E26556018f0E14D8255C5020d58b3f480Dac", [ [ - "157856472537094", - "4473579144" - ], + "221721022666875", + "88075053596" + ] + ] + ], + [ + "0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228", + [ [ - "220203807336965", - "10453702941" + "415361829991557", + "21739077662" ] ] ], [ - "0xa48E7B26036360695be458D6904DE0892a5dB116", + "0x9399943298b25632b21f4d1FA75DB0C5b8d457C5", [ [ - "300546769579166", - "360670112242" + "342893609901961", + "12098559997" + ], + [ + "344871912132732", + "28386322608" ] ] ], [ - "0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5", + "0x93A185CD1579c015043Af80da2D88C90240Ab3a9", [ [ - "267569813448805", - "1716069" + "363871731464758", + "67603779457" ], [ - "589787132206086", - "2588993459" + "470298210971887", + "82596094458" + ], + [ + "582132866585744", + "152697324377" ] ] ], [ - "0xa4f79238d3c5b146054C8221A85DC442Ad87b45D", + "0x93b34d74a134b403450f993e3f2fb75B751fa3d6", [ [ - "650651495333882", - "24618132" + "235668949340980", + "139782800000" ] ] ], [ - "0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302", + "0x93C950E36f3C155B2141f1516b7ea5B6D15eD981", [ [ - "344745112963643", - "23506738608" + "768601886344092", + "32526495264" + ], + [ + "860250156865870", + "35738780868" + ], + [ + "868255530067476", + "89704746985" ] ] ], [ - "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", + "0x93d4E7442F62028ca0a44df7712c2d202dc214B9", [ [ - "180058848381814", - "1317740918" + "153777795374191", + "148859700937" + ] + ] + ], + [ + "0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb", + [ + [ + "76137278825671", + "1990688953" ], [ - "180491055783453", - "8737686936" + "643070034423361", + "6711451596" ] ] ], [ - "0xA5124bD6d445e23642F8D41c1ebf3Cd20FCe3056", + "0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f", [ [ - "448540020279257", - "424808836024" + "118268129285100", + "16859278098" ] ] ], [ - "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", + "0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74", [ [ - "78581810315624", - "1000000000" + "343508462299842", + "21014656050" ] ] ], [ - "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", + "0x94cf16A6C45474B05d383d8779479C69f0c5a07A", [ [ - "177603077453261", - "22497716826" + "580121175168064", + "85134042441" ] ] ], [ - "0xa714B49Ff1Bae62E141e6a05bb10356069C31518", + "0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB", [ [ - "860392158080817", - "160" + "83647572521207", + "18782949347" ], [ - "860392158080977", - "160" - ], + "271861492103884", + "19812902768" + ] + ] + ], + [ + "0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa", + [ [ - "860392158081137", - "160" - ], + "38045439233929", + "14316608969" + ] + ] + ], + [ + "0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95", + [ [ - "860392158081297", - "160" + "203417856117845", + "45234008042" + ] + ] + ], + [ + "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5", + [ + [ + "76194265704929", + "3500000000" ], [ - "860392158081457", - "160" + "646832204344041", + "177292448" ], [ - "860392158081617", - "160" - ], - [ - "860392158081777", - "160" - ], - [ - "860392158081937", - "160" - ], + "646841938136489", + "152188010" + ] + ] + ], + [ + "0x9558d273A81CF0b41931C78B502c4CB2Bd3deb42", + [ [ - "860392158082097", - "160" - ], + "131067170257727", + "423037526400" + ] + ] + ], + [ + "0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6", + [ [ - "860392158082257", - "160" + "355295604996220", + "17574315355" ], [ - "860392158082417", - "160" + "559861867895806", + "7681062381" ], [ - "860392158110026", - "160" - ], + "588875863204433", + "2978711605" + ] + ] + ], + [ + "0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13", + [ [ - "860426253857405", - "160" - ], + "563601797802308", + "150555000000" + ] + ] + ], + [ + "0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e", + [ [ - "860426253857565", - "160" - ], + "321946865430555", + "17115881788" + ] + ] + ], + [ + "0x96b793d04E0D068083792E4D6E7780EEE50755Fa", + [ [ - "860426253857725", - "160" - ], + "402932963276600", + "30982753569" + ] + ] + ], + [ + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", + [ [ - "860426253857885", - "160" + "563752352802308", + "102495000000" ], [ - "860426253858045", - "160" + "566326224363477", + "253050000000" ], [ - "860426253858205", - "160" + "568613671950815", + "253050000000" ], [ - "860426253858365", - "160" + "569509116433715", + "253050000000" ], [ - "860426253858525", - "160" + "572451504525253", + "253050000000" ], [ - "860426253858685", - "160" + "595080378032834", + "10000000000" ], [ - "860426253858845", - "160" + "672201516338595", + "49886373590" ], [ - "860426253859005", - "160" + "742850925745520", + "13729367592" ], [ - "860426253859165", - "160" - ], + "742864655113112", + "272041210686" + ] + ] + ], + [ + "0x96E4FD50CD0A761528626fc072Da54ADFD2F8593", + [ [ - "860426253859325", - "160" - ], + "741719419577984", + "1466608" + ] + ] + ], + [ + "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC", + [ [ - "860426253859485", - "160" + "340404094520260", + "3964784011" ], [ - "860426253859645", - "160" - ], + "646482350566546", + "15589908000" + ] + ] + ], + [ + "0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6", + [ [ - "860426253859805", - "160" - ], + "282819759198190", + "269171533434" + ] + ] + ], + [ + "0x9728444E6414E39d0F7F5389ca129B8abb4cB492", + [ [ - "860426253859965", - "160" + "480577854120899", + "3324405000000" ], [ - "860426253860125", - "160" + "631799252766314", + "1813500000" ], [ - "860426253860285", - "160" - ], + "643804834253676", + "6721835647" + ] + ] + ], + [ + "0x97Ada2E26C06C263c68ECCe43756708d0f03D94A", + [ [ - "860426253860445", - "160" - ], + "220240212248773", + "104797064592" + ] + ] + ], + [ + "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", + [ [ - "860426253860605", - "160" + "679499042972244", + "1010851037" ], [ - "860426253860765", - "160" + "679985431655992", + "5054528890" ], [ - "860426253860925", - "159" - ], + "911892086318462", + "14908452858" + ] + ] + ], + [ + "0x97b60488997482C29748d6f4EdC8665AF4A131B5", + [ [ - "860426253861084", - "159" - ], + "18053754491380", + "122517511" + ] + ] + ], + [ + "0x97c46EeC87a51320c05291286f36689967834854", + [ [ - "860426253861243", - "159" - ], + "415490440421248", + "60177474475" + ] + ] + ], + [ + "0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672", + [ [ - "860426253861402", - "159" - ], + "826335238626477", + "9112774391" + ] + ] + ], + [ + "0x97E89f88407d375cCF90eC1B710B5A914eB784Af", + [ [ - "860426253861561", - "159" + "201768350656481", + "1844339969" ], [ - "860426253861720", - "159" + "220224852015278", + "6971402273" ], [ - "860426253861879", - "159" + "264821742218510", + "14054479986" ], [ - "860426253862038", - "159" - ], - [ - "860426253862197", - "159" - ], + "310876801024927", + "8504661454" + ] + ] + ], + [ + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", + [ [ - "860426253862356", - "159" + "428374263505395", + "9378468172" ], [ - "860426253862515", - "159" + "586115544020889", + "50921590468" ], [ - "860426253862674", - "159" - ], + "595214601590334", + "15218730000" + ] + ] + ], + [ + "0x981793123af0E6126BEf8c8277Fdffec80eB13fd", + [ [ - "860426253862833", - "159" + "649010129912775", + "665549350" ], [ - "860426253862992", - "159" + "649027243062125", + "483108332" ], [ - "860426253863151", - "159" - ], + "649287757760638", + "69640042" + ] + ] + ], + [ + "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", + [ [ - "860426253863310", - "159" - ], + "668901559471943", + "2552486513" + ] + ] + ], + [ + "0x988fB2064B42a13eb556DF79077e23AA4924aF20", + [ [ - "860426253863469", - "159" + "96723333293899", + "17313210068" ], [ - "860426253863628", - "159" - ], + "217902719272293", + "226251708976" + ] + ] + ], + [ + "0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60", + [ [ - "860426253863787", - "159" - ], + "318373329094766", + "101752513973" + ] + ] + ], + [ + "0x989c235D8302fe906A84D076C24e51c1A7D44E3C", + [ [ - "860426253863946", - "159" + "656118292039843", + "2141035469" ], [ - "860426253864105", - "159" - ], + "659821030952031", + "142619335500" + ] + ] + ], + [ + "0x990cf47831822275a365e0C9239DC534b833922D", + [ [ - "860426253864264", - "159" - ], + "267334127487509", + "3651796730" + ] + ] + ], + [ + "0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a", + [ [ - "860426253864423", - "159" + "562079457802308", + "379575000000" ], [ - "860426253864582", - "159" + "565096894810977", + "379575000000" ], [ - "860426254274753", - "159" + "566912175347146", + "379575000000" ], [ - "860426254274912", - "159" + "567901195967146", + "379575000000" ], [ - "860426254275071", - "159" + "570422537669484", + "379575000000" ], [ - "860426254275230", - "159" - ], + "571411558289484", + "379575000000" + ] + ] + ], + [ + "0x992C5a47F13AB085de76BD598ED3842c995bDf1c", + [ [ - "860426254275389", - "159" - ], + "770897210700702", + "32781647269" + ] + ] + ], + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + [ [ - "860426254275548", - "159" + "141100334358920", + "3759398496" ], [ - "860426254275707", - "159" + "157546915049126", + "1894286900" ], [ - "860426254275866", - "159" + "167724340170029", + "7142857142" ], [ - "860426254276025", - "159" + "201063937145997", + "2857625611" ], [ - "860426254276184", - "158" + "217470159827742", + "4221510559" ], [ - "860426254276342", - "158" + "262000538295619", + "1941820772" ], [ - "860426254276500", - "158" + "429969815360084", + "6469033333" ], [ - "860426254276658", - "158" + "430040931045763", + "7468303231" ], [ - "860426255123753", - "158" + "634268733708050", + "10587087636" ], [ - "860426260244926", - "158" + "634481097972888", + "857142857" ], [ - "860426260245084", - "158" + "634485782133373", + "1788298206" ], [ - "860426260245242", - "158" + "636910753572051", + "20630903371" ], [ - "860426260245400", - "158" + "641737331477120", + "4335852529" ], [ - "860426260245558", - "158" + "648129956489413", + "12056682276" ], [ - "860426260245716", - "158" + "672730845984332", + "4306282320" ], [ - "860426260245874", - "158" + "679500053823281", + "844417120" ], [ - "860426260246032", - "158" + "741257694168719", + "95204051" ], [ - "860810927572524", - "158" + "757912612741718", + "38494858016" ], [ - "860810927572682", - "158" + "763876080034612", + "623293283" ], [ - "860810927572840", - "158" + "764083981653091", + "62649720" ], [ - "860810927572998", - "158" + "764093598842759", + "6707198969" ], [ - "860810927573156", - "158" + "768095325828979", + "19256876112" ], [ - "860810927573314", - "158" + "848062102251836", + "58373882896" ], [ - "860810927573472", - "158" + "848140906334524", + "96391325008" ], [ - "860810927573630", - "158" - ], + "860099248890927", + "6689760000" + ] + ] + ], + [ + "0x997563ba8058E80f1E4dd5b7f695b5C2B065408e", + [ [ - "860810927573788", - "158" - ], + "250927013915742", + "25000000000" + ] + ] + ], + [ + "0x9980234b18408E07C0F74aCE3dF940B02DD4095c", + [ [ - "860810927685874", - "158" - ], + "883529586723571", + "5308261827" + ] + ] + ], + [ + "0x99997957BF3c202446b1DCB1CAc885348C5b2222", + [ [ - "860810927686032", - "158" + "224631428823174", + "22606820288" ], [ - "860810927686190", - "158" - ], + "237800674733611", + "66551024044" + ] + ] + ], + [ + "0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b", + [ [ - "860810927686348", - "158" - ], + "767310292972398", + "1824412499" + ] + ] + ], + [ + "0x99e8845841BDe89e148663A6420a98C47e15EbCe", + [ [ - "861085838112763", - "158" - ], + "667899290416813", + "2145758453" + ] + ] + ], + [ + "0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221", + [ [ - "861085838112921", - "158" - ], + "190844375756353", + "112457271309" + ] + ] + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + [ [ - "861085838113079", - "158" + "27675714415954", + "28428552478" ], [ - "861085838113237", - "158" + "28382015360976", + "3696311380" ], [ - "861085838113395", - "158" + "31670582016164", + "10000000000" ], [ - "861085838113711", - "158" + "31768149901004", + "1262870028" ], [ - "861085838113869", - "158" + "32346871499710", + "3745346177" ], [ - "861085838114027", - "158" + "32350616845887", + "279480420" ], [ - "861085838114185", - "158" + "32374040679120", + "10949720000" ], [ - "861085838114343", - "158" + "38665412577552", + "24234066624" ], [ - "861085838114501", - "158" + "38689646644176", + "25000000000" ], [ - "861085838114659", - "158" + "38771428831519", + "765933376" ], [ - "861085838114817", - "158" + "38772194764895", + "15534457850" ], [ - "861085838114975", - "158" + "41290690886174", + "33333333333" ], [ - "861085838115133", - "158" + "41373045659339", + "23121000000" ], [ - "861085838115291", - "158" + "41397566242672", + "22053409145" ], [ - "861085838115449", - "158" + "60450977817664", + "25794401425" ], [ - "861085838115607", - "158" + "60476772219089", + "57688204600" ], [ - "861085838115765", - "158" + "70456530221510", + "18433333333" ], [ - "861085838115923", - "158" + "72513985814422", + "14491677571" ], [ - "861085838116081", - "158" + "76155330934072", + "31663342271" ], [ - "861085838446610", - "160" + "76210249214022", + "5833333333" ], [ - "861085838446770", - "160" + "78786823008925", + "60000000000" ], [ - "861085838446930", - "160" + "86769330994210", + "21622894540" ], [ - "861085838447090", - "159" + "88930464353484", + "20159065566" ], [ - "861085838447249", - "159" + "107758212738194", + "26283248584" ], [ - "861085838447408", - "159" + "107784495986778", + "73418207324" ], [ - "861085838447567", - "159" + "164387799728437", + "209998797626" ], [ - "861085838447726", - "159" + "167679367131210", + "584126946" ], [ - "861085838447885", - "159" + "171855277435831", + "38451787955" ], [ - "861085838448044", - "159" + "185657906453513", + "65394189314" ], [ - "861085838448203", - "159" + "228435750352276", + "5440000000" ], [ - "861085838448362", - "159" + "245016829121327", + "43975873054" ], [ - "861085838448521", - "159" + "272983487213885", + "24345144843" ], [ - "861085838448680", - "159" + "278810931077752", + "61482926829" ], [ - "861085838448839", - "159" + "345065787237708", + "11163284655" ], [ - "861085838448998", - "159" + "384698308395580", + "109943584385" ], [ - "861085838449157", - "159" + "385029414062246", + "85561000000" ], [ - "861085838449316", - "159" + "409893164256334", + "1771119180000" ], [ - "861085838449475", - "159" + "470830034187107", + "6357442000000" ], [ - "861085838449634", - "159" + "634257675267110", + "11058440940" ], [ - "861085838449793", - "159" + "634663980396176", + "51022870" ], [ - "861085838480292", - "160" + "679984678617121", + "582008800" ], [ - "861085838480452", - "160" + "686252659342435", + "12828436637551" ], [ - "861085838480612", - "159" + "701165945775675", + "4725277211064" ], [ - "861085838480771", - "159" + "712925633754929", + "7525989446089" ], [ - "861085838480930", - "159" + "742249808817806", + "125000000" ], [ - "861085838481089", - "159" + "760295074894366", + "58283867892" ], [ - "861085838481248", - "159" + "761862357338505", + "193914722147" ], [ - "861085838481407", - "159" + "764182912505930", + "110218533197" ], [ - "861085838481566", - "159" + "862566363552351", + "3470058078836" ], [ - "861104013698685", - "158" + "873232203687519", + "875826549" ], [ - "861104013698843", - "158" + "873233079514068", + "1" ], [ - "861104013699001", - "158" + "873233079514069", + "8767124173450" + ] + ] + ], + [ + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", + [ + [ + "28079737718067", + "38853754100" ], [ - "861104013699159", - "476" + "28524969242262", + "2368065675" ], [ - "861104013699635", - "634" + "649543303268638", + "47090058" + ] + ] + ], + [ + "0x9A5d202C5384a032473b2370D636DcA39adcC28f", + [ + [ + "41274338068902", + "10701754385" + ] + ] + ], + [ + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + [ + [ + "28389711672356", + "104406740" ], [ - "861104013700269", - "793" + "33289034812134", + "202192060" ], [ - "861104013701062", - "952" + "33289237004194", + "1000000" ], [ - "861104013702172", - "1110" + "33300426361001", + "1000000" ], [ - "861104480230238", - "1268" + "33300427361001", + "5000000" ], [ - "861104480232140", - "1427" + "33300432361001", + "5000000" ], [ - "861104480234359", - "1585" + "33300437361001", + "13656860" ], [ - "861104480236895", - "1743" + "61044373437038", + "25689347322" ], [ - "861104480239747", - "1902" + "76147233501577", + "6856167984" ], [ - "861104480242916", - "2060" + "429960272856509", + "9542503575" ], [ - "861104480246401", - "2218" + "561871994522568", + "13450279740" ], [ - "861104480248619", - "158" + "643790816429569", + "7279671848" ], [ - "861104480248935", - "158" + "646935480690670", + "6157413604" ], [ - "861104480249251", - "158" + "647192437507145", + "407318967" ], [ - "861104480249883", - "316" + "649248676270246", + "9479483" ], [ - "861104480250199", - "158" + "650449504800190", + "2539843750" ], [ - "861104480250515", - "158" - ] - ] - ], - [ - "0xa73329C4be0B6aD3b3640753c459526880E6C4a7", - [ + "651725675783863", + "1673375675" + ], [ - "342007094123381", - "5537799063" + "653079279087019", + "3142881940" + ], + [ + "668346065728228", + "1702871488" + ], + [ + "676865712743974", + "13348297600" + ], + [ + "700043849883120", + "15882769" + ], + [ + "741061075495092", + "11965994685" + ], + [ + "741274318742427", + "170840041445" + ], + [ + "768308228493998", + "500910625" ] ] ], [ - "0xa7be8b7C4819eC8edd05178673575F76974B4EaA", + "0x9af623bE3d125536929F8978233622A7BFc3feF4", [ [ - "643105932414433", - "3504500000" + "79296814826113", + "1185063194630" + ], + [ + "188132972372439", + "634988906630" ] ] ], [ - "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2", + "0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2", [ [ - "227302500823517", - "91254470715" + "67661612435034", + "7500000000" ], [ - "240936644343173", - "172400000000" + "326657149277910", + "365524741141" + ], + [ + "327607470128575", + "221232078910" ] ] ], [ - "0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85", + "0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0", [ [ - "647522463818695", - "70976639" + "201260587940851", + "66013841091" ] ] ], [ - "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E", + "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F", [ [ - "87378493677209", - "18540386828" + "561734572056961", + "18261807412" ], [ - "157789513042632", - "46130596396" + "561752833864373", + "22055244259" ] ] ], [ - "0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7", + "0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52", [ [ - "524680103453466", - "565602262874" - ], - [ - "531965502653124", - "631379688396" - ], - [ - "533822032849799", - "1016708705478" + "141778150492051", + "8228218644" ] ] ], [ - "0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5", + "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", [ [ - "322943294893160", - "8758397681" + "661999206613204", + "25000000000" ] ] ], [ - "0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe", + "0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E", [ [ - "624708043376039", - "5666343221" + "343608586695690", + "6294220121" ] ] ], [ - "0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c", + "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C", [ [ - "28391158520616", - "5664262851" - ], - [ - "31624276642782", - "827500000" - ], - [ - "32010465599710", - "2827500000" - ], - [ - "32163187849710", - "827500000" + "647881759045440", + "106457720" ], [ - "32180546599710", - "468750000" + "647898572853160", + "795636" ] ] ], [ - "0xA92b09947ab93529687d937eDf92A2B44D2fD204", + "0x9c211891aFFB1ce6CF8A3e537efbF2f948162204", [ [ - "174457557935439", - "2252016869" - ], - [ - "217090244886952", - "100017300000" + "577935041861106", + "59036591791" ] ] ], [ - "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", + "0x9c695f16975b57f730727F30f399d110cFc71f10", [ [ - "647552789487981", - "25673034" + "461882379832", + "763789095" + ], + [ + "501577877086", + "8058429169" + ], + [ + "28378015360976", + "474338291" + ], + [ + "632732083964954", + "1303739940" + ], + [ + "633969304929591", + "49424794604" + ], + [ + "634191999230784", + "2612080692" + ], + [ + "699433001774655", + "535830837294" + ], + [ + "721395262187317", + "14658916075" + ], + [ + "740509548356246", + "96735502348" + ], + [ + "826252078588592", + "16970820644" + ], + [ + "885461415329976", + "566999495822" ] ] ], [ - "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", + "0x9C6f40999C82cd18f31421596Ca3b1C5C5083048", [ [ - "342102180028527", - "9515722669" + "644385379072596", + "2088841809" ] ] ], [ - "0xA97661df0380FF3eB6214709A6926526E38a3f68", + "0x9c7ac7abbD3EC00E1d4b330C497529166db84f63", [ [ - "579063492093806", - "43896808582" + "323003646918374", + "27365907771" ] ] ], [ - "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", + "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753", [ [ - "189133019330752", - "32609949600" - ], - [ - "237255472873302", - "41700155407" - ], - [ - "650798610280868", - "2704447617" + "28868829340297", + "1785516900" ], [ - "652198660709813", - "2233193957" + "28870614857197", + "266145543" ], [ - "661861990183905", - "96716493785" + "76029285005811", + "2" ] ] ], [ - "0xa9b13316697dEb755cd86585dE872ea09894EF0f", + "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b", [ [ - "140155656908183", - "4149923574" - ], - [ - "198971377368461", - "18087016900" + "385694828784542", + "3478109734" ], [ - "211708788713612", - "10681995985" + "385719624398436", + "3179294885" ], [ - "241399390159934", - "842071924045" + "395508552599182", + "2015623893" ], [ - "384563894405801", - "115228517177" + "605147868070297", + "210641200000" ], [ - "563854847802308", - "18284000000" + "632638886261264", + "76135000000" ], [ - "564151486302308", - "18284615400" + "664655112978280", + "14440162929" ], [ - "566633249231746", - "18284615400" + "675156678410802", + "83910292215" ], [ - "569490831818315", - "18284615400" - ], + "676829643561375", + "10000000000" + ] + ] + ], + [ + "0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8", + [ [ - "572704554525253", - "18284615400" - ], + "141954294169149", + "30687677344" + ] + ] + ], + [ + "0x9D1334De1c51a46a9289D6258b986A267b09Ac18", + [ [ - "595117800435834", - "12085354500" - ], + "624548747558738", + "15810994142" + ] + ] + ], + [ + "0x9D496BA09C9dDAE8de72F146DE012701a10400CC", + [ [ - "640930157267749", - "65849399034" + "298511519013444", + "217051856006" ] ] ], [ - "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c", + "0x9d5b2a8Ad23E7d870CFa7c7B88A74C64FA098b46", [ [ - "31816265099710", - "59900000000" + "32028293099710", + "14856250000" ], [ - "31935590099710", - "74875500000" + "84597875356697", + "133850744098" ], [ - "32088312349710", - "74875500000" + "97016486455371", + "254834033922" ], [ - "563579921802308", - "21876000000" + "158734314278093", + "202188482247" ], [ - "564422820917708", - "21876172500" + "171941305124226", + "512087118743" ], [ - "566153593653477", - "21876172500" + "172453392242969", + "167963854918" ], [ - "569017476488315", - "21876172500" + "250740780766453", + "6745238037" ], [ - "569762166433715", - "21876172500" + "395286775789415", + "32560000000" ], [ - "572429628352753", - "21876172500" - ] - ] - ], - [ - "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", - [ + "564630258655208", + "32896500000" + ], [ - "28870881002740", - "7927293103" + "565841291995977", + "32896500000" ], [ - "33175764242262", - "2879757656" + "569318757818315", + "32896500000" ], [ - "33287034809521", - "2000002613" + "569955901513715", + "32896500000" ], [ - "67071383981721", - "4370751822" + "635871823538305", + "8232935488" ], [ - "76001219652173", - "2000000" + "636053162040032", + "971681987" ], [ - "224377827434669", - "8843521858" + "637126106210329", + "3549072302" ], [ - "227266143617682", - "36357205835" + "637129677608084", + "6326081465" ], [ - "346980492268033", - "299504678878" + "638142185386743", + "70301972656" ], [ - "390489917323118", - "30009118039" + "638293184544519", + "3222535993" ], [ - "390714321832800", - "15011668209" + "638952019925396", + "53884687500" ], [ - "496313316602869", - "14480945853" + "644463766708048", + "12970687979" ], [ - "496327797548722", - "17563125222" + "644495136777647", + "14591855468" ], [ - "574176328586258", - "11373869605" + "645998771359546", + "402840000000" ], [ - "581926056394610", - "57230000000" + "646991286880741", + "10764000000" ], [ - "582414831630740", - "58387156830" + "648593843684716", + "9515295236" ], [ - "646758540482222", - "200935620" + "659752492504115", + "68538447916" ], [ - "648099627744347", - "7145929778" - ], + "682072110977139", + "44526000000" + ] + ] + ], + [ + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", + [ [ - "768350264491863", - "97750210" + "531849151603571", + "116351049553" ], [ - "799970499717615", - "199999867679" + "533550128922703", + "19753556385" ], [ - "859839460259246", - "49999681340" - ], + "544213439498555", + "93587607857" + ] + ] + ], + [ + "0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C", + [ [ - "861579337591263", - "20955496102" + "465366616460626", + "12745164567" ], [ - "866501316671921", - "3915489816" - ], + "534838741555277", + "19231055968" + ] + ] + ], + [ + "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196", + [ [ - "867998656653702", - "3760487192" + "145457231580719", + "24029099031" ], [ - "868004210064042", - "11148893919" - ], + "187576828165577", + "27608467355" + ] + ] + ], + [ + "0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A", + [ [ - "868717458995563", - "137089560126" + "189397241850520", + "74656417530" ], [ - "882380209424876", - "25123931061" + "634499611419046", + "143420000000" ] ] ], [ - "0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f", + "0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d", [ [ - "553814968232795", - "1000000" + "151778101037835", + "204744106703" ], [ - "553814969232795", - "4769665935949" + "430070314991709", + "1718500000" ] ] ], [ - "0xAA420e97534aB55637957e868b658193b112A551", + "0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4", [ [ - "31772724860478", - "43540239232" + "886028414825798", + "48979547469" ] ] ], [ - "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15", + "0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56", [ [ - "767312117384897", - "5239569017" - ], - [ - "790723454198851", - "1404119830" + "682506977792619", + "12652582923" ] ] ], [ - "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", + "0x9eD25251826C88122E16428CbB70e65a33E85B19", [ [ - "86212387135166", - "9412000000" + "790034495675975", + "19551629204" ] ] ], [ - "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", + "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", [ [ - "31662554742782", - "21750" + "236911541186226", + "1352237819" ], [ - "790724858318681", - "201654015884" + "408418430300088", + "1389648589" ], [ - "805283832227311", - "122955165365" + "634458769639996", + "2997137850" ] ] ], [ - "0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01", + "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE", [ [ - "270431731940789", - "35213496314" + "142090287304002", + "17901404645" + ], + [ + "429116006573679", + "11930700081" ] ] ], [ - "0xaaEB726768606079484aa6b3715efEEC7E901D13", + "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", [ [ - "164232302945961", - "52342902973" + "76154089669561", + "1241264511" ] ] ], [ - "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3", + "0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1", [ [ - "396371740775536", - "132692764932" - ], - [ - "595154386328334", - "12415183500" + "279436643945150", + "3073743220711" ] ] ], [ - "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", [ [ - "78583733231186", - "1178558112" + "88808287575483", + "30000000000" ], [ - "87051010845698", - "12909150685" + "96740646503967", + "17128687218" ], [ - "87849021681484", - "3600000000" + "229489538650748", + "32886283743" ], [ - "87852621681484", - "800000000" + "401152958523891", + "60000000000" + ], + [ + "609312164824779", + "1735981704349" ] ] ], [ - "0xABC508DdA7517F195e416d77C822A4861961947a", + "0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402", [ [ - "611465268974532", - "5766000000" + "636566959970125", + "151773247545" + ] + ] + ], + [ + "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8", + [ + [ + "660690919212731", + "289575171383" ], [ - "611565632974532", - "108706000000" + "661622790183905", + "239200000000" ], [ - "859912145350487", - "61408881869" + "668099555175266", + "7477326571" + ], + [ + "670969584019292", + "234760000000" + ], + [ + "674505181593279", + "234450921461" + ], + [ + "674739632514740", + "263907264047" + ], + [ + "675273135381879", + "259861322259" + ], + [ + "675532996704138", + "197622058472" + ], + [ + "675730618762610", + "151122236793" + ], + [ + "676029448628099", + "156891853803" + ], + [ + "676355375239188", + "179430599503" ] ] ], [ - "0xAbe1ee131c420b5687893518043C5df21E7Da28f", + "0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151", [ [ - "219174134154064", - "257767294743" + "92502053320361", + "53620740838" ] ] ], [ - "0xaBe78350f850924bAfF4B7139c17932d4c0560C5", + "0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc", [ [ - "170355877646894", - "103277281284" - ], - [ - "186591806305035", - "119796085879" + "632158717283728", + "132492430252" ] ] ], [ - "0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2", + "0xa03E8d9688844146867dEcb457A7308853699016", [ [ - "532675989297032", - "13095000100" + "637610190521989", + "210060204" ] ] ], [ - "0xac34CF8CF7497a570C9462F16C4eceb95750dd26", + "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", [ [ - "558584635168744", - "8664709191" + "808559640519864", + "3390839496" ] ] ], [ - "0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE", + "0xA0df63b73f3B8D4a8cE353833848D672e65Ad818", [ [ - "143354831843541", - "653648140" - ], + "202835949108939", + "22" + ] + ] + ], + [ + "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", + [ [ - "267347914229767", - "50626218743" + "282604279025472", + "19163060173" ], [ - "595274550370334", - "30610750000" + "395376016689151", + "26717740160" ] ] ], [ - "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", + "0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7", [ [ - "70537827998930", - "394859823062" + "764293131039127", + "5229504715" + ] + ] + ], + [ + "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf", + [ + [ + "523468438510750", + "57354074175" ], [ - "181019314406176", - "26533824991" + "525245705716340", + "196968848290" ], [ - "191825120066350", - "32755674081" + "530603875619848", + "61988431714" ], [ - "204414095372189", - "466944255800" + "531536857228833", + "206618185436" ], [ - "918515480200659", - "103418450000" - ] - ] - ], - [ - "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", - [ + "586955456756494", + "136890000000" + ], [ - "167664059643126", - "10271881722" + "587932486316494", + "136890000000" ], [ - "173335964650235", - "50944632063" + "588236306066494", + "136890000000" ], [ - "174153752764497", - "51388130513" + "588540125816494", + "136890000000" ], [ - "340816250327274", - "13849594030" - ] - ] - ], - [ - "0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8", - [ + "634979077385365", + "10413750000" + ], [ - "634757739139885", - "1075350000" + "635251139802881", + "10413750000" ] ] ], [ - "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0", + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", [ [ - "396280573607632", - "1310000000" + "85026199936365", + "3000000000" ], [ - "547738448758023", - "2624259160" - ] - ] - ], - [ - "0xaDd2955F0efC871902A7E421054DA7E6734d3DCA", - [ + "88852883837163", + "4811715614" + ], [ - "278872415592357", - "1605049904" + "96710970854679", + "12362439220" ], [ - "278874020642261", - "1605019105" - ] - ] - ], - [ - "0xae0aAF5E7135058919aB10756C6CdD574a92e557", - [ + "106834324920574", + "4912604718" + ], [ - "143154831843541", - "200000000000" + "643886475933352", + "3765334850" ] ] ], [ - "0xae5c0ff6738cE54598C00ca3d14dC71176a9d929", + "0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0", [ [ - "266124689762314", - "14563973655" + "845407075505547", + "149022357044" ] ] ], [ - "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", + "0xA256Aa181aF9046995aF92506498E31E620C747a", [ [ - "150202730332467", - "98095645584" + "211328028616940", + "48907133253" ], [ - "496833602545561", - "787707309561" - ] - ] - ], - [ - "0xAeB2914f66222Fa7Ad138e128a0575048Bc76032", - [ - [ - "643849421808137", - "6652871947" - ] - ] - ], - [ - "0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e", - [ - [ - "443844836815022", - "15594289962" + "250772216022849", + "50223451852" ] ] ], [ - "0xAf93048424E9DBE29326AD1e1B00686760318f0D", + "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6", [ [ - "325970651658765", - "9082486597" + "635189799238365", + "55984064516" ], [ - "542294295589408", - "17206071534" + "635432840138881", + "96417000000" ] ] ], [ - "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", + "0xa31CFf6aA0af969b6d9137690CF1557908df861B", [ [ - "657182189000929", - "25000000000" - ], - [ - "657229852916854", - "2979694125" - ], - [ - "658066484502639", - "2015000000" - ], - [ - "664619505628982", - "15403726711" + "676729211151593", + "22234228333" ], [ - "667312080209108", - "25000000000" + "682011116351038", + "122067507" ], [ - "670173265504450", - "40000000000" + "682012314843498", + "508189060" ], [ - "672719969501772", - "10876482560" + "686184845909654", + "67813432781" ] ] ], [ - "0xafaAa25675447563a093BFae2d3Db5662ADf9593", + "0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714", [ [ - "637115742967476", - "637343258" + "355648398557215", + "124964349871" ] ] ], [ - "0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0", + "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e", [ [ - "396925635091619", - "2200000000" - ] - ] - ], - [ - "0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A", - [ + "12998236449826", + "426119290214" + ], [ - "507127205293221", - "60620015754" + "73062201497306", + "639498343615" ], [ - "516313933449950", - "49630409652" + "145584038361780", + "447994980945" ], [ - "533061821284421", - "60249402002" - ] - ] - ], - [ - "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f", - [ + "146717193948896", + "349624513178" + ], [ - "769134792577607", - "1295600000" + "147733502440483", + "358107845085" ], [ - "770964524215275", - "10866330177" + "161945743337837", + "789016308613" ], [ - "782603527725793", - "19357500000" + "187637878190147", + "382459205759" ], [ - "783356308498157", - "20255000000" - ] - ] - ], - [ - "0xb0226e96c71F94C44d998CE1b34F6a47c3A82404", - [ + "192336527239129", + "209422598089" + ], [ - "336175075840856", - "767141673418" + "204912402135128", + "844577500760" + ], + [ + "220380031906084", + "231048083326" + ], + [ + "262067749659804", + "640903306175" + ], + [ + "306964647833074", + "338382661514" + ], + [ + "523998966576689", + "403876115080" + ], + [ + "644357568047841", + "2333969425" + ], + [ + "760721375485603", + "44211467824" + ], + [ + "768308729410302", + "399538786" + ], + [ + "774509663364768", + "69954674028" + ], + [ + "860392158116449", + "34095737422" + ], + [ + "861654004231708", + "3679385472" ] ] ], [ - "0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A", + "0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c", [ [ - "570994112669484", - "2013435000" + "575718099519476", + "32762422300" + ], + [ + "605567098770297", + "210641200000" + ], + [ + "836111814253126", + "153625996701" + ], + [ + "845020731525698", + "149234921085" + ], + [ + "859277327665173", + "150200542274" ] ] ], [ - "0xB0827d21e58354aa7ac05adFeb60861f85562376", + "0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797", [ [ - "648060618871896", - "108280308" + "267140974896619", + "10071394154" ] ] ], [ - "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", + "0xA46322948459845Bb5d895ED9C1fdd798692a1dA", [ [ - "680570676055231", - "12790345862" + "157856472537094", + "4473579144" ], [ - "741073041489777", - "58475807020" - ], + "220203807336965", + "10453702941" + ] + ] + ], + [ + "0xa48E7B26036360695be458D6904DE0892a5dB116", + [ [ - "811161311356507", - "10974488319" - ], + "300546769579166", + "360670112242" + ] + ] + ], + [ + "0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5", + [ [ - "811179416748655", - "18986801346" + "267569813448805", + "1716069" ], [ - "849346368621598", - "11433794528" - ], + "589787132206086", + "2588993459" + ] + ] + ], + [ + "0xa4f79238d3c5b146054C8221A85DC442Ad87b45D", + [ [ - "861496906364983", - "7066180139" + "650651495333882", + "24618132" ] ] ], [ - "0xb13c60ee3eCEC5f689469260322093870aA1e842", + "0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302", [ [ - "264925932058496", - "11752493257" + "344745112963643", + "23506738608" ] ] ], [ - "0xB17fC3D59de766b659644241Dba722546E32b163", + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", [ [ - "530457276837452", - "21389399522" + "180058848381814", + "1317740918" + ], + [ + "180491055783453", + "8737686936" ] ] ], [ - "0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106", + "0xA5124bD6d445e23642F8D41c1ebf3Cd20FCe3056", [ [ - "648783973598407", - "20878800" + "448540020279257", + "424808836024" ] ] ], [ - "0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e", + "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", [ [ - "602679309587183", - "74690241246" - ], + "78581810315624", + "1000000000" + ] + ] + ], + [ + "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", + [ [ - "602753999828429", - "822947782651" + "177603077453261", + "22497716826" ] ] ], [ - "0xb319c06c96F676110AcC674a2B608ddb3117f43B", + "0xa714B49Ff1Bae62E141e6a05bb10356069C31518", [ [ - "611471034974532", - "94598000000" + "860392158080817", + "160" ], [ - "636826909305416", - "83800270379" + "860392158080977", + "160" ], [ - "650587203583982", - "2695189900" + "860392158081137", + "160" ], [ - "652743079185278", - "141663189223" + "860392158081297", + "160" ], [ - "654431959023764", - "13424979052" + "860392158081457", + "160" ], [ - "654445384002816", - "109437957582" + "860392158081617", + "160" ], [ - "655168391284111", - "167255000000" + "860392158081777", + "160" ], [ - "656569610821263", - "155690600000" + "860392158081937", + "160" ], [ - "657033695277469", - "148493723460" + "860392158082097", + "160" ], [ - "657826429374395", - "145018797369" + "860392158082257", + "160" ], [ - "658259541638510", - "150002086275" + "860392158082417", + "160" ], [ - "658561025456875", - "148762745637" + "860392158110026", + "160" ], [ - "660384609944925", - "306309267806" + "860426253857405", + "160" ], [ - "660980494384114", - "322801544810" - ] - ] - ], - [ - "0xb338092f7eE37A5267642BaE60Ff514EB7088593", - [ - [ - "152402596679147", - "93039721219" + "860426253857565", + "160" ], [ - "152657826400366", - "185210230255" + "860426253857725", + "160" ], [ - "167944467831210", - "364035918660" + "860426253857885", + "160" ], [ - "168326342418592", - "142183392268" + "860426253858045", + "160" ], [ - "667711173568321", - "2323048492" + "860426253858205", + "160" ], [ - "779534812787850", - "16116959741" + "860426253858365", + "160" ], [ - "859649522699248", - "12551804265" - ] - ] - ], - [ - "0xB345720Ab089A6748CCec3b59caF642583e308Bf", - [ + "860426253858525", + "160" + ], [ - "634496771451551", - "2768287495" + "860426253858685", + "160" ], [ - "634746131014038", - "2338659386" + "860426253858845", + "160" ], [ - "634804642825524", - "15032871752" + "860426253859005", + "160" ], [ - "648328801845272", - "12731370312" + "860426253859165", + "160" ], [ - "648353111527661", - "10493080827" + "860426253859325", + "160" ], [ - "649167541060009", - "16767945280" + "860426253859485", + "160" ], [ - "649195623906283", - "18389039062" + "860426253859645", + "160" ], [ - "654358595160398", - "29902100900" + "860426253859805", + "160" ], [ - "654388497261298", - "43461762466" + "860426253859965", + "160" ], [ - "656871705959559", - "9313705270" + "860426253860125", + "160" ], [ - "660370495857615", - "14114087310" + "860426253860285", + "160" ], [ - "671696472763514", - "231205357536" + "860426253860445", + "160" ], [ - "671927678121050", - "252155202330" + "860426253860605", + "160" ], [ - "672398260373775", - "214433251957" + "860426253860765", + "160" ], [ - "672830275797486", - "210961749202" + "860426253860925", + "159" ], [ - "673041237546688", - "205321095099" + "860426253861084", + "159" ], [ - "673246558641787", - "240472769386" + "860426253861243", + "159" ], [ - "673487031411173", - "273039002863" + "860426253861402", + "159" ], [ - "673760070414036", - "172558844132" + "860426253861561", + "159" ], [ - "675240588703017", - "31281369769" - ] - ] - ], - [ - "0xB3561671651455D2E8BF99d2f9E2257f2a313a2c", - [ + "860426253861720", + "159" + ], [ - "262002480116391", - "61656029023" + "860426253861879", + "159" ], [ - "299029773648836", - "103299890816" + "860426253862038", + "159" ], [ - "299623525856977", - "96553480454" + "860426253862197", + "159" ], [ - "340830099921304", - "42326378229" + "860426253862356", + "159" ], [ - "341635869146462", - "53919698039" + "860426253862515", + "159" ], [ - "341990086557247", - "17007566134" + "860426253862674", + "159" ], [ - "343614880915811", - "56782954188" - ] - ] - ], - [ - "0xb3b0EFf26C982669a9BA47B31aC6b130A4721819", - [ + "860426253862833", + "159" + ], [ - "679985260625992", - "171030000" - ] - ] - ], - [ - "0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e", - [ + "860426253862992", + "159" + ], [ - "107211387355694", - "152715666195" + "860426253863151", + "159" ], [ - "247564500489746", - "77337849888" - ] - ] - ], - [ - "0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F", - [ + "860426253863310", + "159" + ], [ - "130196078661356", - "508123258818" - ] - ] - ], - [ - "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", - [ + "860426253863469", + "159" + ], [ - "191771322130870", - "4" - ] - ] - ], - [ - "0xb3F7DF25CB052052dF6d73d83EdBF6a2238c67de", - [ + "860426253863628", + "159" + ], [ - "532689084297132", - "625506" - ] - ] - ], - [ - "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", - [ + "860426253863787", + "159" + ], [ - "164600428750782", - "35727783275" - ] - ] - ], - [ - "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", - [ + "860426253863946", + "159" + ], [ - "680105835387283", - "912195631" - ] - ] - ], - [ - "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277", - [ + "860426253864105", + "159" + ], [ - "217894094937121", - "8624335172" + "860426253864264", + "159" ], [ - "729014568575071", - "291619601680" - ] - ] - ], - [ - "0xB5030cAc364bE50104803A49C30CCfA0d6A48629", - [ + "860426253864423", + "159" + ], [ - "210588064020582", - "198112928750" - ] - ] - ], - [ - "0xb53031b8E67293dC17659338220599F4b1F15738", - [ + "860426253864582", + "159" + ], [ - "219666700443377", - "55265901" + "860426254274753", + "159" ], [ - "224654035643462", - "40771987379" - ] - ] - ], - [ - "0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714", - [ + "860426254274912", + "159" + ], [ - "76119225435585", - "962826980" + "860426254275071", + "159" ], [ - "579111175545954", - "3774608352" + "860426254275230", + "159" ], [ - "634748469673424", - "4160000000" - ] - ] - ], - [ - "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", - [ + "860426254275389", + "159" + ], [ - "83737011617598", - "306070239187" + "860426254275548", + "159" ], [ - "398321865655642", - "2054144320000" - ] - ] - ], - [ - "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", - [ + "860426254275707", + "159" + ], [ - "4955860418772", - "7048876233" + "860426254275866", + "159" ], [ - "655811760146606", - "1801805718" - ] - ] - ], - [ - "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393", - [ + "860426254276025", + "159" + ], [ - "631462636069759", - "104395512250" + "860426254276184", + "158" ], [ - "631569644291966", - "139558094702" + "860426254276342", + "158" ], [ - "632291209713980", - "81489498170" - ] - ] - ], - [ - "0xB615e3E80f20beA214076c463D61B336f6676566", - [ + "860426254276500", + "158" + ], [ - "157631883911600", - "6658333333" + "860426254276658", + "158" ], [ - "452052986565565", - "7692307692" + "860426255123753", + "158" ], [ - "646401611359546", - "35903115000" - ] - ] - ], - [ - "0xb63050875231622e99cd8eF32360f9c7084e50a7", - [ + "860426260244926", + "158" + ], [ - "146717188782725", - "5166171" + "860426260245084", + "158" ], [ - "150200863181163", - "1867151304" + "860426260245242", + "158" ], [ - "150300825978051", - "18112431039" + "860426260245400", + "158" ], [ - "155767639963423", - "99245868053" - ] - ] - ], - [ - "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", - [ + "860426260245558", + "158" + ], [ - "153735131926682", - "3710134756" + "860426260245716", + "158" ], [ - "679485017868431", - "3915612129" + "860426260245874", + "158" ], [ - "680114838606701", - "27308328915" + "860426260246032", + "158" ], [ - "685025137352998", - "25233193029" + "860810927572524", + "158" ], [ - "841664773576665", - "44866112401" - ] - ] - ], - [ - "0xB651078d1856EB206fB090fd9101f537c33589c2", - [ + "860810927572682", + "158" + ], [ - "670156602457239", - "16663047211" - ] - ] - ], - [ - "0xB65a725e921f3feB83230Bd409683ff601881f68", - [ + "860810927572840", + "158" + ], [ - "250639941891472", - "3441975352" + "860810927572998", + "158" ], [ - "250643383866824", - "29574505735" - ] - ] - ], - [ - "0xb66924A7A23e22A87ac555c950019385A3438951", - [ + "860810927573156", + "158" + ], [ - "154652447640805", - "347100000000" + "860810927573314", + "158" ], [ - "155374769963423", - "392870000000" + "860810927573472", + "158" ], [ - "160285058311354", - "100671341995" + "860810927573630", + "158" ], [ - "174205140895010", - "132445933047" + "860810927573788", + "158" ], [ - "202924952054531", - "35561818090" - ] - ] - ], - [ - "0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2", - [ + "860810927685874", + "158" + ], [ - "552304065222426", - "308085069906" + "860810927686032", + "158" ], [ - "577017952241768", - "78820430185" + "860810927686190", + "158" ], [ - "577096772671953", - "153413133261" - ] - ] - ], - [ - "0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5", - [ + "860810927686348", + "158" + ], [ - "158532389505642", - "22000000000" - ] - ] - ], - [ - "0xB6CC924486681a1ca489639200dcEB4c41C283d3", - [ + "861085838112763", + "158" + ], [ - "3761444092233", - "30919467843" + "861085838112921", + "158" ], [ - "86557982815957", - "47171577753" + "861085838113079", + "158" ], [ - "91035130926027", - "100278708038" + "861085838113237", + "158" ], [ - "107705159415631", - "32372691975" + "861085838113395", + "158" ], [ - "107737532107606", - "20680630588" + "861085838113711", + "158" ], [ - "189221726611474", - "50441908776" + "861085838113869", + "158" ], [ - "331897561408947", - "208972688693" - ] - ] - ], - [ - "0xB73a795F4b55dC779658E11037e373d66b3094c7", - [ + "861085838114027", + "158" + ], [ - "363939335244215", - "341688796" + "861085838114185", + "158" ], [ - "390558902441157", - "134653071054" + "861085838114343", + "158" ], [ - "401267047948074", - "134236764892" + "861085838114501", + "158" ], [ - "655972005039843", - "146287000000" - ] - ] - ], - [ - "0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D", - [ - [ - "648110341883007", - "332151166" - ] - ] - ], - [ - "0xb78003FCB54444E289969154A27Ca3106B3f41f6", - [ + "861085838114659", + "158" + ], [ - "164189472951092", - "11278479258" + "861085838114817", + "158" ], [ - "191781471592467", - "43648473883" + "861085838114975", + "158" ], [ - "385711073784542", - "2538113894" + "861085838115133", + "158" ], [ - "395411549090894", - "13353165233" + "861085838115291", + "158" ], [ - "562459032802308", - "121464000000" + "861085838115449", + "158" ], [ - "564975430810977", - "121464000000" + "861085838115607", + "158" ], [ - "566651533847146", - "121464000000" + "861085838115765", + "158" ], [ - "568419948467146", - "121464000000" + "861085838115923", + "158" ], [ - "570301073669484", - "121464000000" + "861085838116081", + "158" ], [ - "571791133289484", - "121464000000" - ] - ] - ], - [ - "0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70", - [ + "861085838446610", + "160" + ], [ - "191150584432777", - "327574162163" - ] - ] - ], - [ - "0xB81D739df194fA589e244C7FF5a15E5C04978D0D", - [ + "861085838446770", + "160" + ], [ - "764122302458414", - "389659428" - ] - ] - ], - [ - "0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B", - [ + "861085838446930", + "160" + ], [ - "321732175378043", - "214690052512" - ] - ] - ], - [ - "0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76", - [ + "861085838447090", + "159" + ], [ - "199312851785361", - "21012816705" - ] - ] - ], - [ - "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", - [ + "861085838447249", + "159" + ], [ - "61252565809868", - "616986784925" + "861085838447408", + "159" ], [ - "186580654253728", - "2582826931" + "861085838447567", + "159" ], [ - "193229271440090", - "76640448070" - ] - ] - ], - [ - "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5", - [ + "861085838447726", + "159" + ], [ - "88303018180293", - "145192655079" + "861085838447885", + "159" ], [ - "88448210835372", - "10000000" + "861085838448044", + "159" ], [ - "88448220835372", - "1000000" + "861085838448203", + "159" ], [ - "152141663101028", - "46320000000" + "861085838448362", + "159" ], [ - "201463917097433", - "98698631369" + "861085838448521", + "159" ], [ - "340872426299533", - "273300000000" + "861085838448680", + "159" ], [ - "638362383116869", - "152606794771" + "861085838448839", + "159" ], [ - "640276210842856", - "176025000000" - ] - ] - ], - [ - "0xBaD292Dbb933Aea623a3699621901A881E22FfAC", - [ + "861085838448998", + "159" + ], [ - "533432040425065", - "88596535296" + "861085838449157", + "159" ], [ - "551506370791010", - "333170781639" - ] - ] - ], - [ - "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1", - [ + "861085838449316", + "159" + ], [ - "650399357993384", - "146806806" + "861085838449475", + "159" ], [ - "655638701856093", - "1192390513" + "861085838449634", + "159" ], [ - "656272714775312", - "881640483" + "861085838449793", + "159" ], [ - "712920144208889", - "5489546040" + "861085838480292", + "160" ], [ - "744734189369609", - "28037331000" + "861085838480452", + "160" ], [ - "760703583068610", - "17792416993" - ] - ] - ], - [ - "0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711", - [ + "861085838480612", + "159" + ], [ - "144769294835640", - "687936745079" + "861085838480771", + "159" ], [ - "184218638484144", - "465422973716" + "861085838480930", + "159" ], [ - "184684061457860", - "10000000" - ] - ] - ], - [ - "0xbb595fEF3C86FE664836a5Ea6C6E549ECeA28dEe", - [ + "861085838481089", + "159" + ], [ - "319745968562762", - "99808811019" - ] - ] - ], - [ - "0xbB69c6d675Db063a543d6D8fdA4435025f93b828", - [ + "861085838481248", + "159" + ], [ - "506927515739631", - "14275224982" - ] - ] - ], - [ - "0xbb9dDEE672BF27905663F49bf950090050C4e9ad", - [ + "861085838481407", + "159" + ], [ - "107364103021889", - "81983801879" - ] - ] - ], - [ - "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6", - [ - [ - "140329444835781", - "217646800712" + "861085838481566", + "159" ], [ - "220611079989410", - "79386856736" + "861104013698685", + "158" ], [ - "234100743945240", - "142725497767" + "861104013698843", + "158" ], [ - "239319159337177", - "47624260933" - ] - ] - ], - [ - "0xBC0A7F1CB55d8f6eAdde498DbFE0FF2f78149A84", - [ - [ - "507643882202194", - "20759609713" - ] - ] - ], - [ - "0xbC3A1D31eb698Cd3c568f88C13b87081462054A8", - [ - [ - "646966739449551", - "173482798" - ] - ] - ], - [ - "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB", - [ - [ - "767979798694986", - "1562050000" + "861104013699001", + "158" ], [ - "767981360744986", - "1294270000" + "861104013699159", + "476" ], [ - "779648863431627", - "3082627625" - ] - ] - ], - [ - "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997", - [ - [ - "743356388661755", - "284047664" + "861104013699635", + "634" ], [ - "743356672709419", - "804932236" + "861104013700269", + "793" ], [ - "743357477641655", - "744601051" + "861104013701062", + "952" ], [ - "743358222242706", - "636559806" + "861104013702172", + "1110" ], [ - "743358858802512", - "569027210" + "861104480230238", + "1268" ], [ - "743359427829722", - "616622839" + "861104480232140", + "1427" ], [ - "743360044452561", - "590416341" + "861104480234359", + "1585" ], [ - "743360634868902", - "576948243" + "861104480236895", + "1743" ], [ - "743361211817145", - "347174290" + "861104480239747", + "1902" ], [ - "743361558991435", - "112939223481" + "861104480242916", + "2060" ], [ - "743474498214916", - "37245408077" + "861104480246401", + "2218" ], [ - "743511743622993", - "27738836042" + "861104480248619", + "158" ], [ - "743539482459035", - "36180207225" + "861104480248935", + "158" ], [ - "743575662666260", - "9251544878" + "861104480249251", + "158" ], [ - "743600698167087", - "4239282" + "861104480249883", + "316" ], [ - "743630495498696", - "25004744107" + "861104480250199", + "158" ], [ - "743655500242803", - "27838968460" - ], + "861104480250515", + "158" + ] + ] + ], + [ + "0xa73329C4be0B6aD3b3640753c459526880E6C4a7", + [ [ - "743683339211263", - "1045028130" - ], + "342007094123381", + "5537799063" + ] + ] + ], + [ + "0xa7be8b7C4819eC8edd05178673575F76974B4EaA", + [ [ - "743715232207665", - "154091444" - ], + "643105932414433", + "3504500000" + ] + ] + ], + [ + "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2", + [ [ - "743715386299109", - "356610619" + "227302500823517", + "91254470715" ], [ - "743715742909728", - "792560930" - ], + "240936644343173", + "172400000000" + ] + ] + ], + [ + "0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85", + [ [ - "743716535470658", - "930442023" - ], + "647522463818695", + "70976639" + ] + ] + ], + [ + "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E", + [ [ - "743717465912681", - "930527887" + "87378493677209", + "18540386828" ], [ - "743718396440568", - "930718264" - ], + "157789513042632", + "46130596396" + ] + ] + ], + [ + "0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7", + [ [ - "743719327158832", - "900100878" + "524680103453466", + "565602262874" ], [ - "743720227259710", - "886888605" + "531965502653124", + "631379688396" ], [ - "743721114148315", - "1195569000" - ], + "533822032849799", + "1016708705478" + ] + ] + ], + [ + "0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5", + [ [ - "743722931420691", - "332343086" - ], + "322943294893160", + "8758397681" + ] + ] + ], + [ + "0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe", + [ [ - "743723263763777", - "983775747" + "624708043376039", + "5666343221" + ] + ] + ], + [ + "0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c", + [ + [ + "28391158520616", + "5664262851" ], [ - "743724247539524", - "409861551" + "31624276642782", + "827500000" ], [ - "743724657401075", - "97298663" + "32010465599710", + "2827500000" ], [ - "743724754699738", - "86768693" + "32163187849710", + "827500000" ], [ - "743724841468431", - "33509916350" - ], + "32180546599710", + "468750000" + ] + ] + ], + [ + "0xA92b09947ab93529687d937eDf92A2B44D2fD204", + [ [ - "743758351384781", - "69774513803" + "174457557935439", + "2252016869" ], [ - "743828125898584", - "21981814788" - ], + "217090244886952", + "100017300000" + ] + ] + ], + [ + "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", + [ [ - "743850107713372", - "43182294" - ], + "647552789487981", + "25673034" + ] + ] + ], + [ + "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", + [ [ - "743850150895666", - "37264237" - ], + "342102180028527", + "9515722669" + ] + ] + ], + [ + "0xA97661df0380FF3eB6214709A6926526E38a3f68", + [ [ - "743850188159903", - "247711" - ], + "579063492093806", + "43896808582" + ] + ] + ], + [ + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", + [ [ - "743850188407614", - "417946" + "189133019330752", + "32609949600" ], [ - "743850188825560", - "120504819738" + "237255472873302", + "41700155407" ], [ - "743970693645298", - "178855695867" + "650798610280868", + "2704447617" ], [ - "744149549341165", - "125886081790" + "652198660709813", + "2233193957" ], [ - "759669831627157", - "91465441036" - ], + "661861990183905", + "96716493785" + ] + ] + ], + [ + "0xa9b13316697dEb755cd86585dE872ea09894EF0f", + [ [ - "759761297451604", - "12346431080" + "140155656908183", + "4149923574" ], [ - "759773643882684", - "1557369578" + "198971377368461", + "18087016900" ], [ - "759775201252262", - "18264975890" + "211708788713612", + "10681995985" ], [ - "759793466228152", - "133677" + "241399390159934", + "842071924045" ], [ - "759794285432848", - "26613224094" + "384563894405801", + "115228517177" ], [ - "759820979493945", - "70435190" + "563854847802308", + "18284000000" ], [ - "759821049929135", - "64820367" + "564151486302308", + "18284615400" ], [ - "759821114749502", - "315142246" + "566633249231746", + "18284615400" ], [ - "759821772251897", - "342469548" + "569490831818315", + "18284615400" ], [ - "759822114721445", - "22786793078" + "572704554525253", + "18284615400" ], [ - "759844955449185", - "62362349" + "595117800435834", + "12085354500" ], [ - "759845017811534", - "79862410" - ], + "640930157267749", + "65849399034" + ] + ] + ], + [ + "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c", + [ [ - "759845097673944", - "78350903" + "31816265099710", + "59900000000" ], [ - "759845176024847", - "81575013" + "31935590099710", + "74875500000" ], [ - "759845257599860", - "81611843" + "32088312349710", + "74875500000" ], [ - "759845339211703", - "79874694" + "563579921802308", + "21876000000" ], [ - "759845419086397", - "79925681" + "564422820917708", + "21876172500" ], [ - "759845499012078", - "79231634" + "566153593653477", + "21876172500" ], [ - "759845578243712", - "73291169" + "569017476488315", + "21876172500" ], [ - "759845651534881", - "61264703" + "569762166433715", + "21876172500" ], [ - "759845766640518", - "56977225" - ], + "572429628352753", + "21876172500" + ] + ] + ], + [ + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", + [ [ - "759845823617743", - "71386527" + "28870881002740", + "7927293103" ], [ - "759845895004270", - "75906832" + "33175764242262", + "2879757656" ], [ - "759846058683685", - "75729409" + "33287034809521", + "2000002613" ], [ - "759846134413094", - "27722926" + "67071383981721", + "4370751822" ], [ - "759846162136020", - "30197986" + "76001219652173", + "2000000" ], [ - "759846192334006", - "158241812" + "224377827434669", + "8843521858" ], [ - "759846350575818", - "123926293" + "227266143617682", + "36357205835" ], [ - "759846474502111", - "124139589" + "346980492268033", + "299504678878" ], [ - "759846598641700", - "25193251" + "390489917323118", + "30009118039" ], [ - "759846623834951", - "25387540" + "390714321832800", + "15011668209" ], [ - "759846649222491", - "665345" + "496313316602869", + "14480945853" ], [ - "759846954659102", - "631976394" + "496327797548722", + "17563125222" ], [ - "759847586635496", - "66958527" + "574176328586258", + "11373869605" ], [ - "759847653594023", - "44950580" + "581926056394610", + "57230000000" ], [ - "759847698544603", - "46547201" + "582414831630740", + "58387156830" ], [ - "759847745091804", - "18839036" + "646758540482222", + "200935620" ], [ - "759847763930840", - "270669443" + "648099627744347", + "7145929778" ], [ - "759848034600283", - "365575215" + "768350264491863", + "97750210" ], [ - "759848595655012", - "187295653" + "799970499717615", + "199999867679" ], [ - "759848782950665", - "25295452" + "859839460259246", + "49999681340" ], [ - "759848808246117", - "173058283" + "861579337591263", + "20955496102" ], [ - "759848981304400", - "63821133" + "866501316671921", + "3915489816" ], [ - "759849045125533", - "25336780" + "867998656653702", + "3760487192" ], [ - "759849070462313", - "29081391" + "868004210064042", + "11148893919" ], [ - "759849099543704", - "29122172" + "868717458995563", + "137089560126" ], [ - "759849128665876", - "28706993" + "882380209424876", + "25123931061" + ] + ] + ], + [ + "0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f", + [ + [ + "553814968232795", + "1000000" ], [ - "759849157372869", - "13456201" + "553814969232795", + "4769665935949" + ] + ] + ], + [ + "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15", + [ + [ + "767312117384897", + "5239569017" ], [ - "759849170829070", - "36511282" + "790723454198851", + "1404119830" + ] + ] + ], + [ + "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", + [ + [ + "86212387135166", + "9412000000" + ] + ] + ], + [ + "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", + [ + [ + "31662554742782", + "21750" ], [ - "759849207340352", - "41243780" + "790724858318681", + "201654015884" ], [ - "759849248584132", - "33852678" + "805283832227311", + "122955165365" + ] + ] + ], + [ + "0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01", + [ + [ + "270431731940789", + "35213496314" + ] + ] + ], + [ + "0xaaEB726768606079484aa6b3715efEEC7E901D13", + [ + [ + "164232302945961", + "52342902973" + ] + ] + ], + [ + "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3", + [ + [ + "396371740775536", + "132692764932" ], [ - "759849282436810", - "33956125" + "595154386328334", + "12415183500" + ] + ] + ], + [ + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", + [ + [ + "78583733231186", + "1178558112" ], [ - "759849316392935", - "34132617" + "87051010845698", + "12909150685" ], [ - "759849350525552", - "17041223" + "87849021681484", + "3600000000" ], [ - "759849367566775", - "20273897" + "87852621681484", + "800000000" + ] + ] + ], + [ + "0xABC508DdA7517F195e416d77C822A4861961947a", + [ + [ + "611465268974532", + "5766000000" ], [ - "759849387840672", - "9037475" + "611565632974532", + "108706000000" ], [ - "759849396878147", - "45923781" + "859912145350487", + "61408881869" + ] + ] + ], + [ + "0xAbe1ee131c420b5687893518043C5df21E7Da28f", + [ + [ + "219174134154064", + "257767294743" + ] + ] + ], + [ + "0xaBe78350f850924bAfF4B7139c17932d4c0560C5", + [ + [ + "170355877646894", + "103277281284" ], [ - "759849442801928", - "52882809" + "186591806305035", + "119796085879" + ] + ] + ], + [ + "0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2", + [ + [ + "532675989297032", + "13095000100" + ] + ] + ], + [ + "0xac34CF8CF7497a570C9462F16C4eceb95750dd26", + [ + [ + "558584635168744", + "8664709191" + ] + ] + ], + [ + "0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE", + [ + [ + "143354831843541", + "653648140" ], [ - "759849495684737", - "71491609" + "267347914229767", + "50626218743" ], [ - "759849567176346", - "39781360" + "595274550370334", + "30610750000" + ] + ] + ], + [ + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", + [ + [ + "70537827998930", + "394859823062" ], [ - "759849606957706", - "35612937" + "181019314406176", + "26533824991" ], [ - "759849642570643", - "45789959" + "191825120066350", + "32755674081" ], [ - "759849688360602", - "46291324" + "204414095372189", + "466944255800" ], [ - "759849734651926", - "46416554" + "918515480200659", + "103418450000" + ] + ] + ], + [ + "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", + [ + [ + "167664059643126", + "10271881722" ], [ - "759849781068480", - "46480026" + "173335964650235", + "50944632063" ], [ - "759849827548506", - "28909947" + "174153752764497", + "51388130513" + ], + [ + "340816250327274", + "13849594030" + ] + ] + ], + [ + "0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8", + [ + [ + "634757739139885", + "1075350000" + ] + ] + ], + [ + "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0", + [ + [ + "396280573607632", + "1310000000" + ], + [ + "547738448758023", + "2624259160" + ] + ] + ], + [ + "0xaDd2955F0efC871902A7E421054DA7E6734d3DCA", + [ + [ + "278872415592357", + "1605049904" + ], + [ + "278874020642261", + "1605019105" + ] + ] + ], + [ + "0xae0aAF5E7135058919aB10756C6CdD574a92e557", + [ + [ + "143154831843541", + "200000000000" + ] + ] + ], + [ + "0xae5c0ff6738cE54598C00ca3d14dC71176a9d929", + [ + [ + "266124689762314", + "14563973655" + ] + ] + ], + [ + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", + [ + [ + "150202730332467", + "98095645584" + ], + [ + "496833602545561", + "787707309561" + ] + ] + ], + [ + "0xAeB2914f66222Fa7Ad138e128a0575048Bc76032", + [ + [ + "643849421808137", + "6652871947" + ] + ] + ], + [ + "0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e", + [ + [ + "443844836815022", + "15594289962" + ] + ] + ], + [ + "0xAf93048424E9DBE29326AD1e1B00686760318f0D", + [ + [ + "325970651658765", + "9082486597" + ], + [ + "542294295589408", + "17206071534" + ] + ] + ], + [ + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", + [ + [ + "657182189000929", + "25000000000" + ], + [ + "657229852916854", + "2979694125" + ], + [ + "658066484502639", + "2015000000" + ], + [ + "664619505628982", + "15403726711" + ], + [ + "667312080209108", + "25000000000" + ], + [ + "670173265504450", + "40000000000" + ], + [ + "672719969501772", + "10876482560" + ] + ] + ], + [ + "0xafaAa25675447563a093BFae2d3Db5662ADf9593", + [ + [ + "637115742967476", + "637343258" + ] + ] + ], + [ + "0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0", + [ + [ + "396925635091619", + "2200000000" + ] + ] + ], + [ + "0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A", + [ + [ + "507127205293221", + "60620015754" + ], + [ + "516313933449950", + "49630409652" + ], + [ + "533061821284421", + "60249402002" + ] + ] + ], + [ + "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f", + [ + [ + "769134792577607", + "1295600000" + ], + [ + "770964524215275", + "10866330177" + ], + [ + "782603527725793", + "19357500000" + ], + [ + "783356308498157", + "20255000000" + ] + ] + ], + [ + "0xb0226e96c71F94C44d998CE1b34F6a47c3A82404", + [ + [ + "336175075840856", + "767141673418" + ] + ] + ], + [ + "0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A", + [ + [ + "570994112669484", + "2013435000" + ] + ] + ], + [ + "0xB0827d21e58354aa7ac05adFeb60861f85562376", + [ + [ + "648060618871896", + "108280308" + ] + ] + ], + [ + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", + [ + [ + "680570676055231", + "12790345862" ], [ - "759849856458453", - "20566561" + "741073041489777", + "58475807020" ], [ - "759849877025014", - "20612970" + "811161311356507", + "10974488319" ], [ - "759849897637984", - "9530420" + "811179416748655", + "18986801346" ], [ - "759849923422103", - "43423401" + "849346368621598", + "11433794528" ], [ - "759849966845504", - "11714877" - ], + "861496906364983", + "7066180139" + ] + ] + ], + [ + "0xb13c60ee3eCEC5f689469260322093870aA1e842", + [ [ - "759864364377919", - "13050269" - ], + "264925932058496", + "11752493257" + ] + ] + ], + [ + "0xB17fC3D59de766b659644241Dba722546E32b163", + [ [ - "759864377428188", - "28949561" - ], + "530457276837452", + "21389399522" + ] + ] + ], + [ + "0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106", + [ [ - "759864451656441", - "45362892" - ], + "648783973598407", + "20878800" + ] + ] + ], + [ + "0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e", + [ [ - "759864497019333", - "45386397" + "602679309587183", + "74690241246" ], [ - "759864542405730", - "44251644" + "602753999828429", + "822947782651" + ] + ] + ], + [ + "0xb319c06c96F676110AcC674a2B608ddb3117f43B", + [ + [ + "611471034974532", + "94598000000" ], [ - "759864623518170", - "16029726" + "636826909305416", + "83800270379" ], [ - "759864639547896", - "27422448" + "650587203583982", + "2695189900" ], [ - "759864666970344", - "45324196" + "652743079185278", + "141663189223" ], [ - "759864712294540", - "45381527" + "654431959023764", + "13424979052" ], [ - "759864794252615", - "45249060" + "654445384002816", + "109437957582" ], [ - "759864839501675", - "38552197" + "655168391284111", + "167255000000" ], [ - "759864878053872", - "45325980" + "656569610821263", + "155690600000" ], [ - "759864923379852", - "45332668" + "657033695277469", + "148493723460" ], [ - "759864968712520", - "14947041" + "657826429374395", + "145018797369" ], [ - "759864983659561", - "44411176" + "658259541638510", + "150002086275" ], [ - "759865028070737", - "45841550" + "658561025456875", + "148762745637" ], [ - "759865073912287", - "37491304" + "660384609944925", + "306309267806" ], [ - "759865111403591", - "35823677" + "660980494384114", + "322801544810" + ] + ] + ], + [ + "0xb338092f7eE37A5267642BaE60Ff514EB7088593", + [ + [ + "152402596679147", + "93039721219" ], [ - "759865189244823", - "45959807" + "152657826400366", + "185210230255" ], [ - "759865235204630", - "28621023" + "167944467831210", + "364035918660" ], [ - "759865309352063", - "54352361" + "168326342418592", + "142183392268" ], [ - "759865363704424", - "37604905" + "667711173568321", + "2323048492" ], [ - "759865401309329", - "48060122" + "779534812787850", + "16116959741" ], [ - "759865502784387", - "41998112" + "859649522699248", + "12551804265" + ] + ] + ], + [ + "0xB345720Ab089A6748CCec3b59caF642583e308Bf", + [ + [ + "634496771451551", + "2768287495" ], [ - "759865545775991", - "43017774" + "634746131014038", + "2338659386" ], [ - "759865588793765", - "45709130" + "634804642825524", + "15032871752" ], [ - "759865634502895", - "20672897" + "648328801845272", + "12731370312" ], [ - "759865655175792", - "18088532" + "648353111527661", + "10493080827" ], [ - "759865673264324", - "176142052" + "649167541060009", + "16767945280" ], [ - "759865849406376", - "249729828" + "649195623906283", + "18389039062" ], [ - "759866099136204", - "111218297" + "654358595160398", + "29902100900" ], [ - "759866210354501", - "27934473" + "654388497261298", + "43461762466" ], [ - "759866238288974", - "27468895" + "656871705959559", + "9313705270" ], [ - "759866265757869", - "1914618989" + "660370495857615", + "14114087310" ], [ - "759868180376858", - "45603693" + "671696472763514", + "231205357536" ], [ - "759868225980551", - "45842728" + "671927678121050", + "252155202330" ], [ - "759868271823279", - "46014440" + "672398260373775", + "214433251957" ], [ - "759868317837719", - "46063229" + "672830275797486", + "210961749202" ], [ - "759868363900948", - "2621289" + "673041237546688", + "205321095099" ], [ - "759868366522237", - "53709228" + "673246558641787", + "240472769386" ], [ - "759868420231465", - "52228978" + "673487031411173", + "273039002863" ], [ - "759868472460443", - "66561157603" + "673760070414036", + "172558844132" ], [ - "759935033618046", - "45751501" + "675240588703017", + "31281369769" + ] + ] + ], + [ + "0xB3561671651455D2E8BF99d2f9E2257f2a313a2c", + [ + [ + "262002480116391", + "61656029023" ], [ - "759935079369547", - "45866818" + "299029773648836", + "103299890816" ], [ - "759935171141704", - "45924323" + "299623525856977", + "96553480454" ], [ - "759935217066027", - "27091944" + "340830099921304", + "42326378229" ], [ - "759935244157971", - "47094028" + "341635869146462", + "53919698039" ], [ - "759935291251999", - "4720868852" + "341990086557247", + "17007566134" ], [ - "759940035846319", - "79415211" - ], + "343614880915811", + "56782954188" + ] + ] + ], + [ + "0xb3b0EFf26C982669a9BA47B31aC6b130A4721819", + [ [ - "759940115261530", - "104887944" - ], + "679985260625992", + "171030000" + ] + ] + ], + [ + "0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e", + [ [ - "759940220149474", - "104422502" + "107211387355694", + "152715666195" ], [ - "759940324571976", - "47123207" - ], + "247564500489746", + "77337849888" + ] + ] + ], + [ + "0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F", + [ [ - "759940371695183", - "21522781" - ], + "130196078661356", + "508123258818" + ] + ] + ], + [ + "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", + [ [ - "759940431848469", - "26567259" - ], + "191771322130870", + "4" + ] + ] + ], + [ + "0xb3F7DF25CB052052dF6d73d83EdBF6a2238c67de", + [ [ - "759940458415728", - "28464738" - ], + "532689084297132", + "625506" + ] + ] + ], + [ + "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", + [ [ - "759940486880466", - "16535232" - ], + "164600428750782", + "35727783275" + ] + ] + ], + [ + "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", + [ [ - "759940529740783", - "23798092" - ], + "680105835387283", + "912195631" + ] + ] + ], + [ + "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277", + [ [ - "759940553538875", - "22130816" + "217894094937121", + "8624335172" ], [ - "759940575669691", - "19923295" - ], + "729014568575071", + "291619601680" + ] + ] + ], + [ + "0xB5030cAc364bE50104803A49C30CCfA0d6A48629", + [ [ - "759940703254106", - "96921736" - ], + "210588064020582", + "198112928750" + ] + ] + ], + [ + "0xb53031b8E67293dC17659338220599F4b1F15738", + [ [ - "759944301288885", - "148924295" + "219666700443377", + "55265901" ], [ - "759944524831820", - "94934102" - ], + "224654035643462", + "40771987379" + ] + ] + ], + [ + "0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714", + [ [ - "759944631176184", - "441416" + "76119225435585", + "962826980" ], [ - "759944876402388", - "86731197" + "579111175545954", + "3774608352" ], [ - "759945236861297", - "37118" - ], + "634748469673424", + "4160000000" + ] + ] + ], + [ + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", + [ [ - "759945663978694", - "33147570" + "83737011617598", + "306070239187" ], [ - "759947353926358", - "19648269869" - ], + "398321865655642", + "2054144320000" + ] + ] + ], + [ + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", + [ [ - "759967315893614", - "43342636" + "4955860418772", + "7048876233" ], [ - "759967359236250", - "73180835" - ], + "655811760146606", + "1801805718" + ] + ] + ], + [ + "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393", + [ [ - "759968303751614", - "86480048" + "631462636069759", + "104395512250" ], [ - "759968390231662", - "87319503" + "631569644291966", + "139558094702" ], [ - "759968565049433", - "57445411" - ], + "632291209713980", + "81489498170" + ] + ] + ], + [ + "0xB615e3E80f20beA214076c463D61B336f6676566", + [ [ - "759969182444540", - "86435423" + "157631883911600", + "6658333333" ], [ - "759969313128560", - "78853009" + "452052986565565", + "7692307692" ], [ - "759969922263950", - "86993082" - ], + "646401611359546", + "35903115000" + ] + ] + ], + [ + "0xb63050875231622e99cd8eF32360f9c7084e50a7", + [ [ - "759970009257032", - "87071115" + "146717188782725", + "5166171" ], [ - "759970096328147", - "87094141" + "150200863181163", + "1867151304" ], [ - "759970659966091", - "7037654" + "150300825978051", + "18112431039" ], [ - "759970895945609", - "88340633" + "155767639963423", + "99245868053" + ] + ] + ], + [ + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", + [ + [ + "153735131926682", + "3710134756" ], [ - "759971171933682", - "103831674" + "679485017868431", + "3915612129" ], [ - "759971792380007", - "55918771" + "680114838606701", + "27308328915" ], [ - "759971848298778", - "51663688" + "685025137352998", + "25233193029" ], [ - "759971899962466", - "51820149" - ], + "841664773576665", + "44866112401" + ] + ] + ], + [ + "0xB651078d1856EB206fB090fd9101f537c33589c2", + [ [ - "759971951782615", - "53263163" - ], + "670156602457239", + "16663047211" + ] + ] + ], + [ + "0xB65a725e921f3feB83230Bd409683ff601881f68", + [ [ - "759972005045778", - "46273362" + "250639941891472", + "3441975352" ], [ - "759972051319140", - "11764053" - ], + "250643383866824", + "29574505735" + ] + ] + ], + [ + "0xb66924A7A23e22A87ac555c950019385A3438951", + [ [ - "759972063083193", - "44521152" + "154652447640805", + "347100000000" ], [ - "759972107604345", - "54315334" + "155374769963423", + "392870000000" ], [ - "759972270510579", - "52771216" + "160285058311354", + "100671341995" ], [ - "759972378810991", - "53615733" + "174205140895010", + "132445933047" ], [ - "759972432426724", - "54009683" - ], + "202924952054531", + "35561818090" + ] + ] + ], + [ + "0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2", + [ [ - "759972545991397", - "40392605" + "552304065222426", + "308085069906" ], [ - "759972586384002", - "40570272" + "577017952241768", + "78820430185" ], [ - "759972626954274", - "29991995" - ], + "577096772671953", + "153413133261" + ] + ] + ], + [ + "0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5", + [ [ - "759972656946269", - "27715408" - ], + "158532389505642", + "22000000000" + ] + ] + ], + [ + "0xB6CC924486681a1ca489639200dcEB4c41C283d3", + [ [ - "759972684661677", - "10745158" + "3761444092233", + "30919467843" ], [ - "759972695406835", - "53647337" + "86557982815957", + "47171577753" ], [ - "759973067945793", - "43509245" + "91035130926027", + "100278708038" ], [ - "760353358762258", - "10893874" + "107705159415631", + "32372691975" ], [ - "760353369656132", - "992291" + "107737532107606", + "20680630588" ], [ - "760353370648423", - "136316" + "189221726611474", + "50441908776" ], [ - "760353370784739", - "147677" - ], + "331897561408947", + "208972688693" + ] + ] + ], + [ + "0xB73a795F4b55dC779658E11037e373d66b3094c7", + [ [ - "760353371573213", - "659890" + "363939335244215", + "341688796" ], [ - "760353372233103", - "46092807" + "390558902441157", + "134653071054" ], [ - "760354201137939", - "3218014" + "401267047948074", + "134236764892" ], [ - "760354238838872", - "3273321614" - ], + "655972005039843", + "146287000000" + ] + ] + ], + [ + "0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D", + [ [ - "760357963287583", - "52520804" - ], + "648110341883007", + "332151166" + ] + ] + ], + [ + "0xb78003FCB54444E289969154A27Ca3106B3f41f6", + [ [ - "760358123735957", - "112541922486" + "164189472951092", + "11278479258" ], [ - "760765586953427", - "195667368889" + "191781471592467", + "43648473883" ], [ - "760961254322316", - "846285958415" + "385711073784542", + "2538113894" ], [ - "761807542325030", - "712321671" + "395411549090894", + "13353165233" ], [ - "761808255104338", - "10685317968" + "562459032802308", + "121464000000" ], [ - "761818941407193", - "38669865140" + "564975430810977", + "121464000000" ], [ - "761858011206868", - "52031027" + "566651533847146", + "121464000000" ], [ - "761858211139284", - "53537634" + "568419948467146", + "121464000000" ], [ - "761858291968910", - "1954482199" + "570301073669484", + "121464000000" ], [ - "761860307483525", - "798157403" - ], + "571791133289484", + "121464000000" + ] + ] + ], + [ + "0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70", + [ [ - "762237672060652", - "57392002182" - ], + "191150584432777", + "327574162163" + ] + ] + ], + [ + "0xB81D739df194fA589e244C7FF5a15E5C04978D0D", + [ [ - "762295918132248", - "68617976" - ], + "764122302458414", + "389659428" + ] + ] + ], + [ + "0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B", + [ [ - "762295986750224", - "181183510038" - ], + "321732175378043", + "214690052512" + ] + ] + ], + [ + "0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76", + [ [ - "762477170260262", - "181104817321" - ], + "199312851785361", + "21012816705" + ] + ] + ], + [ + "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", + [ [ - "762658275077583", - "181134595436" + "61252565809868", + "616986784925" ], [ - "762928154263486", - "12718343972" + "186580654253728", + "2582826931" ], [ - "762941373378458", - "61742453" - ], + "193229271440090", + "76640448070" + ] + ] + ], + [ + "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5", + [ [ - "762941584284511", - "53571451" + "88303018180293", + "145192655079" ], [ - "762941637855962", - "53583667" + "88448210835372", + "10000000" ], [ - "762941691439629", - "503128696018" + "88448220835372", + "1000000" ], [ - "763444820135647", - "9452272123" + "152141663101028", + "46320000000" ], [ - "763454275602361", - "24685659026" + "201463917097433", + "98698631369" ], [ - "763478961261387", - "50245820668" + "340872426299533", + "273300000000" ], [ - "763529207082055", - "45323986837" + "638362383116869", + "152606794771" ], [ - "763574531068892", - "38976282600" - ], + "640276210842856", + "176025000000" + ] + ] + ], + [ + "0xBaD292Dbb933Aea623a3699621901A881E22FfAC", + [ [ - "763877196713494", - "54224527" + "533432040425065", + "88596535296" ], [ - "763877250938021", - "54871543" - ], + "551506370791010", + "333170781639" + ] + ] + ], + [ + "0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1", + [ [ - "763877347112986", - "53640521" + "650399357993384", + "146806806" ], [ - "763879425886186", - "18918512681" + "655638701856093", + "1192390513" ], [ - "763899542751244", - "4287074277" + "656272714775312", + "881640483" ], [ - "763904856308950", - "91042132" + "712920144208889", + "5489546040" ], [ - "763904947351082", - "3672111531" + "744734189369609", + "28037331000" ], [ - "763908632298791", - "1924103043" - ], + "760703583068610", + "17792416993" + ] + ] + ], + [ + "0xBb4ef09F16Fa20cbb1B81Ab8300B00a2756cE711", + [ [ - "763910715862653", - "4104368630" + "144769294835640", + "687936745079" ], [ - "763938664793385", - "889781905" + "184218638484144", + "465422973716" ], [ - "763975977681622", - "85746574" - ], + "184684061457860", + "10000000" + ] + ] + ], + [ + "0xbb595fEF3C86FE664836a5Ea6C6E549ECeA28dEe", + [ [ - "763976127391221", - "54879926" - ], + "319745968562762", + "99808811019" + ] + ] + ], + [ + "0xbB69c6d675Db063a543d6D8fdA4435025f93b828", + [ [ - "763976238932410", - "67220754" - ], + "506927515739631", + "14275224982" + ] + ] + ], + [ + "0xbb9dDEE672BF27905663F49bf950090050C4e9ad", + [ [ - "763978572723857", - "2432585925" - ], + "107364103021889", + "81983801879" + ] + ] + ], + [ + "0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6", + [ [ - "763983475557042", - "2433575022" + "140329444835781", + "217646800712" ], [ - "763985961279749", - "3362361779" + "220611079989410", + "79386856736" ], [ - "763989323641528", - "66961666112" + "234100743945240", + "142725497767" ], [ - "764448523798789", - "9214910" - ], + "239319159337177", + "47624260933" + ] + ] + ], + [ + "0xBC0A7F1CB55d8f6eAdde498DbFE0FF2f78149A84", + [ [ - "764448533013699", - "3175483736" - ], + "507643882202194", + "20759609713" + ] + ] + ], + [ + "0xbC3A1D31eb698Cd3c568f88C13b87081462054A8", + [ [ - "764453314028098", - "886719471" - ], + "646966739449551", + "173482798" + ] + ] + ], + [ + "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB", + [ [ - "766181126764911", - "110330114890" + "767979798694986", + "1562050000" ], [ - "766291456879801", - "143444348214" + "767981360744986", + "1294270000" ], [ - "767321251748842", - "180967833670" + "779648863431627", + "3082627625" ] ] ], @@ -35721,31 +35711,6 @@ ] ] ], - [ - "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", - [ - [ - "634031481420456", - "3170719864" - ], - [ - "647388734023467", - "9748779666" - ], - [ - "721225229970053", - "55487912201" - ], - [ - "741007335527824", - "48848467587" - ], - [ - "743270084189585", - "44269246366" - ] - ] - ], [ "0xeA747056c4a5d2A8398EC64425989Ebf099733E9", [ diff --git a/scripts/beanstalkShipments/data/contractDistributorData.json b/scripts/beanstalkShipments/data/contractDistributorData.json deleted file mode 100644 index dec13095..00000000 --- a/scripts/beanstalkShipments/data/contractDistributorData.json +++ /dev/null @@ -1,1380 +0,0 @@ -{ - "contractAccounts": [ - "0x0245934a930544c7046069968eb4339b03addfcf", - "0x153072c11d6dffc0f1e5489bc7c996c219668c67", - "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", - "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", - "0x3f9208f556735504e985ff1a369af2e8ff6240a3", - "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", - "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", - "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", - "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", - "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", - "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", - "0xea3154098a58eebfa89d705f563e6c5ac924959e", - "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95", - "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", - "0x9008D19f58AAbD9eD0D60971565AA8510560ab41", - "0xAA420e97534aB55637957e868b658193b112A551", - "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27", - "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0", - "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", - "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", - "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", - "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E", - "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", - "0x251FAe8f687545BDD462Ba4FCDd7581051740463", - "0x8525664820C549864982D4965a41F83A7d26AF58", - "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997" - ], - "siloPaybackTokensOwed": [ - "3", - "1210864256332", - "79602258619", - "1918965278639", - "1129291156", - "62672894779", - "230057326178", - "22023088835", - "2852385621956", - "4", - "23959976085", - "63462001011", - "8568", - "99437500", - "291524996", - "20754000000", - "116127823", - "1893551014", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0" - ], - "fertilizerClaims": [ - { - "contractAccount": "0x0245934a930544c7046069968eb4339b03addfcf", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0xea3154098a58eebfa89d705f563e6c5ac924959e", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0xAA420e97534aB55637957e868b658193b112A551", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", - "fertilizerIds": [ - "3458512", - "3458531", - "3470220", - "6000000" - ], - "fertilizerAmounts": [ - "542767", - "56044", - "291896", - "8046712" - ] - }, - { - "contractAccount": "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", - "fertilizerIds": [ - "3500000", - "6000000" - ], - "fertilizerAmounts": [ - "40000", - "51100" - ] - }, - { - "contractAccount": "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", - "fertilizerIds": [ - "6000000" - ], - "fertilizerAmounts": [ - "3025" - ] - }, - { - "contractAccount": "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E", - "fertilizerIds": [ - "3471974" - ], - "fertilizerAmounts": [ - "10" - ] - }, - { - "contractAccount": "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", - "fertilizerIds": [ - "6000000" - ], - "fertilizerAmounts": [ - "3180" - ] - }, - { - "contractAccount": "0x251FAe8f687545BDD462Ba4FCDd7581051740463", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0x8525664820C549864982D4965a41F83A7d26AF58", - "fertilizerIds": [], - "fertilizerAmounts": [] - }, - { - "contractAccount": "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997", - "fertilizerIds": [], - "fertilizerAmounts": [] - } - ], - "plotClaims": [ - { - "contractAccount": "0x0245934a930544c7046069968eb4339b03addfcf", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0xea3154098a58eebfa89d705f563e6c5ac924959e", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", - "fieldId": "1", - "ids": [ - "344618618497376" - ], - "starts": [ - "0" - ], - "ends": [ - "81000597500" - ] - }, - { - "contractAccount": "0x9008D19f58AAbD9eD0D60971565AA8510560ab41", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0xAA420e97534aB55637957e868b658193b112A551", - "fieldId": "1", - "ids": [ - "31772724860478" - ], - "starts": [ - "0" - ], - "ends": [ - "43540239232" - ] - }, - { - "contractAccount": "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x735CAB9B02Fd153174763958FFb4E0a971DD7f29", - "fieldId": "1", - "ids": [ - "28553316405699", - "32013293099710", - "33262951017861", - "33290510627174", - "118322555232226", - "180071240663041", - "317859517384357", - "338910099578361", - "444973868346640", - "477195175494445", - "706133899990342", - "721409921103392", - "726480740731617", - "729812277370084", - "735554122237517", - "744819318753537", - "760472183068657" - ], - "starts": [ - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0" - ], - "ends": [ - "56203360846", - "15000000000", - "9375000000", - "565390687", - "5892426278", - "81992697619", - "291195415400", - "72913082044", - "61560768641", - "29857571563", - "2720589483246", - "4415003338706", - "2047412139790", - "5650444595733", - "2514215964115", - "98324836380", - "71399999953" - ] - }, - { - "contractAccount": "0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11", - "fieldId": "1", - "ids": [ - "462646168927", - "647175726076112", - "720495305315880" - ], - "starts": [ - "0", - "0", - "0" - ], - "ends": [ - "1666666666", - "16711431033", - "55569209804" - ] - }, - { - "contractAccount": "0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E", - "fieldId": "1", - "ids": [], - "starts": [], - "ends": [] - }, - { - "contractAccount": "0xea3154098a58eEbfA89d705F563E6C5Ac924959e", - "fieldId": "1", - "ids": [ - "634031481420456", - "647388734023467", - "721225229970053", - "741007335527824", - "743270084189585" - ], - "starts": [ - "0", - "0", - "0", - "0", - "0" - ], - "ends": [ - "3170719864", - "9748779666", - "55487912201", - "48848467587", - "44269246366" - ] - }, - { - "contractAccount": "0x251FAe8f687545BDD462Ba4FCDd7581051740463", - "fieldId": "1", - "ids": [ - "28368015360976", - "33106872744841", - "38722543672289", - "61000878716919", - "72536373875278", - "75784287632794", - "75995951619880", - "217474381338301", - "220144194502828", - "333622810114113", - "378227726508635", - "574387565763701", - "575679606872092", - "626184530707078", - "634034652140320", - "680095721530457", - "767824420446983", - "767978192014986", - "790662167913055", - "792657494145217", - "845186146706783" - ], - "starts": [ - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0" - ], - "ends": [ - "10000000000", - "6434958505", - "250000000", - "789407727", - "200000000", - "2935934380", - "5268032293", - "1293174476", - "47404123300", - "200755943301", - "645363133", - "55857695832", - "38492647384", - "90718871797", - "1827630964", - "10113856826", - "1158445599", - "1606680000", - "60917382823", - "11153713894", - "62659298764" - ] - }, - { - "contractAccount": "0x8525664820C549864982D4965a41F83A7d26AF58", - "fieldId": "1", - "ids": [ - "28385711672356" - ], - "starts": [ - "0" - ], - "ends": [ - "4000000000" - ] - }, - { - "contractAccount": "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997", - "fieldId": "1", - "ids": [ - "743356388661755", - "743356672709419", - "743357477641655", - "743358222242706", - "743358858802512", - "743359427829722", - "743360044452561", - "743360634868902", - "743361211817145", - "743361558991435", - "743474498214916", - "743511743622993", - "743539482459035", - "743575662666260", - "743600698167087", - "743630495498696", - "743655500242803", - "743683339211263", - "743715232207665", - "743715386299109", - "743715742909728", - "743716535470658", - "743717465912681", - "743718396440568", - "743719327158832", - "743720227259710", - "743721114148315", - "743722931420691", - "743723263763777", - "743724247539524", - "743724657401075", - "743724754699738", - "743724841468431", - "743758351384781", - "743828125898584", - "743850107713372", - "743850150895666", - "743850188159903", - "743850188407614", - "743850188825560", - "743970693645298", - "744149549341165", - "759669831627157", - "759761297451604", - "759773643882684", - "759775201252262", - "759793466228152", - "759794285432848", - "759820979493945", - "759821049929135", - "759821114749502", - "759821772251897", - "759822114721445", - "759844955449185", - "759845017811534", - "759845097673944", - "759845176024847", - "759845257599860", - "759845339211703", - "759845419086397", - "759845499012078", - "759845578243712", - "759845651534881", - "759845766640518", - "759845823617743", - "759845895004270", - "759846058683685", - "759846134413094", - "759846162136020", - "759846192334006", - "759846350575818", - "759846474502111", - "759846598641700", - "759846623834951", - "759846649222491", - "759846954659102", - "759847586635496", - "759847653594023", - "759847698544603", - "759847745091804", - "759847763930840", - "759848034600283", - "759848595655012", - "759848782950665", - "759848808246117", - "759848981304400", - "759849045125533", - "759849070462313", - "759849099543704", - "759849128665876", - "759849157372869", - "759849170829070", - "759849207340352", - "759849248584132", - "759849282436810", - "759849316392935", - "759849350525552", - "759849367566775", - "759849387840672", - "759849396878147", - "759849442801928", - "759849495684737", - "759849567176346", - "759849606957706", - "759849642570643", - "759849688360602", - "759849734651926", - "759849781068480", - "759849827548506", - "759849856458453", - "759849877025014", - "759849897637984", - "759849923422103", - "759849966845504", - "759864364377919", - "759864377428188", - "759864451656441", - "759864497019333", - "759864542405730", - "759864623518170", - "759864639547896", - "759864666970344", - "759864712294540", - "759864794252615", - "759864839501675", - "759864878053872", - "759864923379852", - "759864968712520", - "759864983659561", - "759865028070737", - "759865073912287", - "759865111403591", - "759865189244823", - "759865235204630", - "759865309352063", - "759865363704424", - "759865401309329", - "759865502784387", - "759865545775991", - "759865588793765", - "759865634502895", - "759865655175792", - "759865673264324", - "759865849406376", - "759866099136204", - "759866210354501", - "759866238288974", - "759866265757869", - "759868180376858", - "759868225980551", - "759868271823279", - "759868317837719", - "759868363900948", - "759868366522237", - "759868420231465", - "759868472460443", - "759935033618046", - "759935079369547", - "759935171141704", - "759935217066027", - "759935244157971", - "759935291251999", - "759940035846319", - "759940115261530", - "759940220149474", - "759940324571976", - "759940371695183", - "759940431848469", - "759940458415728", - "759940486880466", - "759940529740783", - "759940553538875", - "759940575669691", - "759940703254106", - "759944301288885", - "759944524831820", - "759944631176184", - "759944876402388", - "759945236861297", - "759945663978694", - "759947353926358", - "759967315893614", - "759967359236250", - "759968303751614", - "759968390231662", - "759968565049433", - "759969182444540", - "759969313128560", - "759969922263950", - "759970009257032", - "759970096328147", - "759970659966091", - "759970895945609", - "759971171933682", - "759971792380007", - "759971848298778", - "759971899962466", - "759971951782615", - "759972005045778", - "759972051319140", - "759972063083193", - "759972107604345", - "759972270510579", - "759972378810991", - "759972432426724", - "759972545991397", - "759972586384002", - "759972626954274", - "759972656946269", - "759972684661677", - "759972695406835", - "759973067945793", - "760353358762258", - "760353369656132", - "760353370648423", - "760353370784739", - "760353371573213", - "760353372233103", - "760354201137939", - "760354238838872", - "760357963287583", - "760358123735957", - "760765586953427", - "760961254322316", - "761807542325030", - "761808255104338", - "761818941407193", - "761858011206868", - "761858211139284", - "761858291968910", - "761860307483525", - "762237672060652", - "762295918132248", - "762295986750224", - "762477170260262", - "762658275077583", - "762928154263486", - "762941373378458", - "762941584284511", - "762941637855962", - "762941691439629", - "763444820135647", - "763454275602361", - "763478961261387", - "763529207082055", - "763574531068892", - "763877196713494", - "763877250938021", - "763877347112986", - "763879425886186", - "763899542751244", - "763904856308950", - "763904947351082", - "763908632298791", - "763910715862653", - "763938664793385", - "763975977681622", - "763976127391221", - "763976238932410", - "763978572723857", - "763983475557042", - "763985961279749", - "763989323641528", - "764448523798789", - "764448533013699", - "764453314028098", - "766181126764911", - "766291456879801", - "767321251748842" - ], - "starts": [ - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0" - ], - "ends": [ - "284047664", - "804932236", - "744601051", - "636559806", - "569027210", - "616622839", - "590416341", - "576948243", - "347174290", - "112939223481", - "37245408077", - "27738836042", - "36180207225", - "9251544878", - "4239282", - "25004744107", - "27838968460", - "1045028130", - "154091444", - "356610619", - "792560930", - "930442023", - "930527887", - "930718264", - "900100878", - "886888605", - "1195569000", - "332343086", - "983775747", - "409861551", - "97298663", - "86768693", - "33509916350", - "69774513803", - "21981814788", - "43182294", - "37264237", - "247711", - "417946", - "120504819738", - "178855695867", - "125886081790", - "91465441036", - "12346431080", - "1557369578", - "18264975890", - "133677", - "26613224094", - "70435190", - "64820367", - "315142246", - "342469548", - "22786793078", - "62362349", - "79862410", - "78350903", - "81575013", - "81611843", - "79874694", - "79925681", - "79231634", - "73291169", - "61264703", - "56977225", - "71386527", - "75906832", - "75729409", - "27722926", - "30197986", - "158241812", - "123926293", - "124139589", - "25193251", - "25387540", - "665345", - "631976394", - "66958527", - "44950580", - "46547201", - "18839036", - "270669443", - "365575215", - "187295653", - "25295452", - "173058283", - "63821133", - "25336780", - "29081391", - "29122172", - "28706993", - "13456201", - "36511282", - "41243780", - "33852678", - "33956125", - "34132617", - "17041223", - "20273897", - "9037475", - "45923781", - "52882809", - "71491609", - "39781360", - "35612937", - "45789959", - "46291324", - "46416554", - "46480026", - "28909947", - "20566561", - "20612970", - "9530420", - "43423401", - "11714877", - "13050269", - "28949561", - "45362892", - "45386397", - "44251644", - "16029726", - "27422448", - "45324196", - "45381527", - "45249060", - "38552197", - "45325980", - "45332668", - "14947041", - "44411176", - "45841550", - "37491304", - "35823677", - "45959807", - "28621023", - "54352361", - "37604905", - "48060122", - "41998112", - "43017774", - "45709130", - "20672897", - "18088532", - "176142052", - "249729828", - "111218297", - "27934473", - "27468895", - "1914618989", - "45603693", - "45842728", - "46014440", - "46063229", - "2621289", - "53709228", - "52228978", - "66561157603", - "45751501", - "45866818", - "45924323", - "27091944", - "47094028", - "4720868852", - "79415211", - "104887944", - "104422502", - "47123207", - "21522781", - "26567259", - "28464738", - "16535232", - "23798092", - "22130816", - "19923295", - "96921736", - "148924295", - "94934102", - "441416", - "86731197", - "37118", - "33147570", - "19648269869", - "43342636", - "73180835", - "86480048", - "87319503", - "57445411", - "86435423", - "78853009", - "86993082", - "87071115", - "87094141", - "7037654", - "88340633", - "103831674", - "55918771", - "51663688", - "51820149", - "53263163", - "46273362", - "11764053", - "44521152", - "54315334", - "52771216", - "53615733", - "54009683", - "40392605", - "40570272", - "29991995", - "27715408", - "10745158", - "53647337", - "43509245", - "10893874", - "992291", - "136316", - "147677", - "659890", - "46092807", - "3218014", - "3273321614", - "52520804", - "112541922486", - "195667368889", - "846285958415", - "712321671", - "10685317968", - "38669865140", - "52031027", - "53537634", - "1954482199", - "798157403", - "57392002182", - "68617976", - "181183510038", - "181104817321", - "181134595436", - "12718343972", - "61742453", - "53571451", - "53583667", - "503128696018", - "9452272123", - "24685659026", - "50245820668", - "45323986837", - "38976282600", - "54224527", - "54871543", - "53640521", - "18918512681", - "4287074277", - "91042132", - "3672111531", - "1924103043", - "4104368630", - "889781905", - "85746574", - "54879926", - "67220754", - "2432585925", - "2433575022", - "3362361779", - "66961666112", - "9214910", - "3175483736", - "886719471", - "110330114890", - "143444348214", - "180967833670" - ] - } - ] -} \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json index 4b6f4c1d..782ea75e 100644 --- a/scripts/beanstalkShipments/data/unripeBdvTokens.json +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -119,10 +119,6 @@ "0x02009370Ff755704E9acbD96042C1ab832D6067e", "2" ], - [ - "0x0245934a930544c7046069968eb4339b03addfcf", - "3" - ], [ "0x0255b20571acc2e1708ADE387b692360537F9e89", "22606818271" @@ -771,10 +767,6 @@ "0x152d08D7e74106A5681C8963E253d039c3e76859", "194246881" ], - [ - "0x153072c11d6dffc0f1e5489bc7c996c219668c67", - "1210864256332" - ], [ "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", "3119075316" @@ -1155,14 +1147,6 @@ "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", "6368195715" ], - [ - "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", - "79602258619" - ], - [ - "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95", - "8568" - ], [ "0x21145738198e34A7aF32866913855ce1968006Ef", "136966119136" @@ -1607,10 +1591,6 @@ "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", "34436022481" ], - [ - "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", - "1918965278639" - ], [ "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", "1932968569334" @@ -2351,10 +2331,6 @@ "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", "6681905182" ], - [ - "0x3f9208f556735504e985ff1a369af2e8ff6240a3", - "1129291156" - ], [ "0x3f99E5BB6e6C76DA33AcC6c3020F64749bC116d3", "514810568" @@ -3583,10 +3559,6 @@ "0x5eE72CD125e21b67ABFf81bBe2aCE39C831ce433", "1" ], - [ - "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", - "62672894779" - ], [ "0x5F045d4CC917072c6D97440b73a3d65Cb7E05e18", "449176" @@ -3615,10 +3587,6 @@ "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", "604233644" ], - [ - "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", - "230057326178" - ], [ "0x5ff23E1940e22e6d1AaD8AF99984EC9821BAA423", "1171413896666" @@ -4703,10 +4671,6 @@ "0x7dE837cAff6A19898e507F644939939cB9341209", "109233694840" ], - [ - "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", - "22023088835" - ], [ "0x7E07bEeA829a859345A1e59074264E468dB2cf64", "7631317" @@ -4935,10 +4899,6 @@ "0x838b1287523F8e1B8E5443941f374b418B2DB4Bc", "11780902852" ], - [ - "0x83A758a6a24FE27312C1f8BDa7F3277993b64783", - "99437500" - ], [ "0x83C9EC651027e061BcC39485c1Fb369297bD428c", "1167771103521" @@ -5115,6 +5075,10 @@ "0x87A774178D49C919be273f1022de2ae106E2581e", "1151920" ], + [ + "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + "6488276643498" + ], [ "0x87b6c8734180d89A7c5497AB91854165d71fAD60", "7873358244" @@ -5491,10 +5455,6 @@ "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", "2" ], - [ - "0x9008D19f58AAbD9eD0D60971565AA8510560ab41", - "291524996" - ], [ "0x90111E5EfF22fFE04c137C2ceb03bCD28A959b60", "2050947666" @@ -6035,10 +5995,6 @@ "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", "2254983" ], - [ - "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", - "2852385621956" - ], [ "0x9F1F4714d07859DD4C8D1312881A0700Ed1C2A7e", "39824325156" @@ -6455,10 +6411,6 @@ "0xAa2831496F633b4AEbe2e0eb5E79D99BC8E1Ae4D", "59707409294" ], - [ - "0xAA420e97534aB55637957e868b658193b112A551", - "20754000000" - ], [ "0xAa4f23a13f25E88bA710243dD59305f382376252", "8798351796" @@ -7127,10 +7079,6 @@ "0xbC4de0a59D8aF0Af3e66e08e488400Aa6F8bB0FB", "2" ], - [ - "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", - "4" - ], [ "0xBC9209c917069891F92D36B5E7e29DCaC5E1D5A2", "2153790020" @@ -8511,10 +8459,6 @@ "0xDd689D6bE86e1d4c5D8b53Fe79bDD2cA694615D9", "192861009985" ], - [ - "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27", - "116127823" - ], [ "0xddA42f12B8B2ccc6717c053A2b772baD24B08CbD", "173440185" @@ -8963,10 +8907,6 @@ "0xeA1Ee1DB0463d87F004c68bDCf779B505Eb91B29", "819839894" ], - [ - "0xea3154098a58eebfa89d705f563e6c5ac924959e", - "63462001011" - ], [ "0xeA47644f110CC08B0Ecc731E992cbE3569940dad", "2132724450" @@ -9291,10 +9231,6 @@ "0xF2cB7617c7cbcBCc1F3A51bfc6D71aE749df5d60", "130594577" ], - [ - "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0", - "1893551014" - ], [ "0xf2d67343cB0599317127591bcef979feaF32fF76", "966978438642" @@ -9311,10 +9247,6 @@ "0xf324D236fbB7d642BDE863b4a65C3DB1DdbEC22e", "37352399093" ], - [ - "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", - "23959976085" - ], [ "0xF3659FA421DdC3517D7A37370a727C717Ce7855e", "881984450" diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 9761d14c..1dd52c58 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -46,34 +46,16 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru console.log("āœ… ShipmentPlanner deployed to:", shipmentPlannerContract.address); //////////////////////////// Contract Payback Distributor //////////////////////////// - console.log("\nšŸ“¦ Deploying ContractPaybackDistributor..."); - const contractPaybackDistributorFactory = await ethers.getContractFactory("ContractPaybackDistributor", account); - - // Load constructor data - const contractDataPath = "./scripts/beanstalkShipments/data/contractDistributorData.json"; - const contractData = JSON.parse(fs.readFileSync(contractDataPath)); - - const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy( - contractData.contractAccounts, - contractData.siloPaybackTokensOwed, - contractData.fertilizerClaims, - contractData.plotClaims, - L2_PINTO, - siloPaybackContract.address, - barnPaybackContract.address - ); - await contractPaybackDistributorContract.deployed(); - console.log("āœ… ContractPaybackDistributor deployed to:", contractPaybackDistributorContract.address); - console.log(`šŸ“Š Managing ${contractData.contractAccounts.length} contract accounts`); - // log total gas used from deployment - const receipt = await contractPaybackDistributorContract.deployTransaction.wait(); - console.log("⛽ Gas used:", receipt.gasUsed.toString()); + // console.log("\nšŸ“¦ Deploying ContractPaybackDistributor..."); + // const contractPaybackDistributorFactory = await ethers.getContractFactory("ContractPaybackDistributor", account); + // const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy(); + // await contractPaybackDistributorContract.deployed(); + // console.log("āœ… ContractPaybackDistributor deployed to:", contractPaybackDistributorContract.address); return { siloPaybackContract, barnPaybackContract, - shipmentPlannerContract, - contractPaybackDistributorContract + shipmentPlannerContract }; } @@ -141,46 +123,6 @@ async function distributeUnripeBdvTokens({ } } -// Distributes silo payback tokens to ContractPaybackDistributor for ethContracts -async function distributeSiloTokensToDistributor({ - siloPaybackContract, - contractPaybackDistributorContract, - account, - verbose = true -}) { - if (verbose) console.log("šŸ­ Distributing silo payback tokens to ContractPaybackDistributor..."); - - try { - const contractDataPath = "./scripts/beanstalkShipments/data/contractDistributorData.json"; - const contractData = JSON.parse(fs.readFileSync(contractDataPath)); - - // Calculate total silo tokens owed to all contract accounts - const totalSiloOwed = contractData.siloPaybackTokensOwed.reduce((sum, amount) => { - return sum.add(ethers.BigNumber.from(amount)); - }, ethers.BigNumber.from(0)); - - console.log(`šŸ“Š Total silo tokens to distribute to ContractPaybackDistributor: ${totalSiloOwed.toString()}`); - - if (totalSiloOwed.gt(0)) { - // Mint the total amount to the ContractPaybackDistributor - const tx = await siloPaybackContract.connect(account).mint( - contractPaybackDistributorContract.address, - totalSiloOwed - ); - const receipt = await tx.wait(); - - if (verbose) { - console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); - console.log("āœ… Silo payback tokens distributed to ContractPaybackDistributor"); - } - } else { - console.log("ā„¹ļø No silo tokens to distribute to ContractPaybackDistributor"); - } - } catch (error) { - console.error("Error distributing silo tokens to ContractPaybackDistributor:", error); - throw error; - } -} // Distributes barn payback tokens from JSON file to contract recipients async function distributeBarnPaybackTokens({ @@ -227,114 +169,6 @@ async function distributeBarnPaybackTokens({ } } -// Distributes fertilizer tokens to ContractPaybackDistributor for ethContracts -async function distributeFertilizerTokensToDistributor({ - barnPaybackContract, - contractPaybackDistributorContract, - account, - verbose = true -}) { - if (verbose) console.log("šŸ­ Distributing fertilizer tokens to ContractPaybackDistributor..."); - - try { - const contractDataPath = "./scripts/beanstalkShipments/data/contractDistributorData.json"; - const contractData = JSON.parse(fs.readFileSync(contractDataPath)); - - // Build fertilizer data for minting to ContractPaybackDistributor - const contractFertilizers = []; - - for (const fertilizerClaim of contractData.fertilizerClaims) { - if (fertilizerClaim.fertilizerIds.length > 0) { - // For each fertilizer ID, create account data pointing to ContractPaybackDistributor - for (let i = 0; i < fertilizerClaim.fertilizerIds.length; i++) { - const fertId = fertilizerClaim.fertilizerIds[i]; - const amount = fertilizerClaim.fertilizerAmounts[i]; - - // Find or create entry for this fertilizer ID - let fertilizerEntry = contractFertilizers.find(entry => entry[0] === fertId); - if (!fertilizerEntry) { - fertilizerEntry = [fertId, []]; - contractFertilizers.push(fertilizerEntry); - } - - // Add the amount to the ContractPaybackDistributor - fertilizerEntry[1].push([ - contractPaybackDistributorContract.address, - amount, - "340802" // Using the global beanBpf value - ]); - } - } - } - - console.log(`šŸ“Š Fertilizer IDs to mint to ContractPaybackDistributor: ${contractFertilizers.length}`); - - if (contractFertilizers.length > 0) { - const tx = await barnPaybackContract.connect(account).mintFertilizers(contractFertilizers); - const receipt = await tx.wait(); - - if (verbose) { - console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); - console.log("āœ… Fertilizer tokens distributed to ContractPaybackDistributor"); - } - } else { - console.log("ā„¹ļø No fertilizer tokens to distribute to ContractPaybackDistributor"); - } - } catch (error) { - console.error("Error distributing fertilizer tokens to ContractPaybackDistributor:", error); - throw error; - } -} - -// Pre-sows plots for ContractPaybackDistributor using protocol sow function -async function sowPlotsForDistributor({ - pintoProtocol, - contractPaybackDistributorContract, - account, - verbose = true -}) { - if (verbose) console.log("🌾 Pre-sowing plots for ContractPaybackDistributor..."); - - try { - const contractDataPath = "./scripts/beanstalkShipments/data/contractDistributorData.json"; - const contractData = JSON.parse(fs.readFileSync(contractDataPath)); - - // Calculate total pods needed for all plots - let totalPodsNeeded = ethers.BigNumber.from(0); - let totalPlotsCount = 0; - - for (const plotClaim of contractData.plotClaims) { - for (let i = 0; i < plotClaim.ids.length; i++) { - const podAmount = ethers.BigNumber.from(plotClaim.ends[i]); - totalPodsNeeded = totalPodsNeeded.add(podAmount); - totalPlotsCount++; - } - } - - console.log(`šŸ“Š Total pods to sow for ContractPaybackDistributor: ${totalPodsNeeded.toString()}`); - console.log(`šŸ“Š Total plots to create: ${totalPlotsCount}`); - - if (totalPodsNeeded.gt(0)) { - // Note: This assumes we have beans available to sow and current soil/temperature conditions allow it - // In practice, this might need to be done during protocol initialization or through a special admin function - console.log("āš ļø WARNING: Plot sowing requires special protocol initialization"); - console.log("āš ļø This would typically be done through protocol admin functions during deployment"); - console.log(`āš ļø ContractPaybackDistributor address: ${contractPaybackDistributorContract.address}`); - console.log(`āš ļø Total beans needed for sowing: ${totalPodsNeeded.toString()}`); - - // For now, we'll log what needs to be done rather than attempt the sow operation - // since it requires specific protocol state and bean balance - if (verbose) { - console.log("šŸ“ Plot sowing will need to be handled through protocol initialization"); - } - } else { - console.log("ā„¹ļø No plots to sow for ContractPaybackDistributor"); - } - } catch (error) { - console.error("Error preparing plots for ContractPaybackDistributor:", error); - throw error; - } -} // Transfers ownership of both payback contracts to PCM async function transferContractOwnership({ @@ -371,28 +205,6 @@ async function deployAndSetupContracts(params) { verbose: true }); - // Distribute tokens to ContractPaybackDistributor for ethContracts - await distributeSiloTokensToDistributor({ - siloPaybackContract: contracts.siloPaybackContract, - contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, - account: params.account, - verbose: true - }); - - await distributeFertilizerTokensToDistributor({ - barnPaybackContract: contracts.barnPaybackContract, - contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, - account: params.account, - verbose: true - }); - - // Handle plot pre-sowing for ContractPaybackDistributor - await sowPlotsForDistributor({ - pintoProtocol: params.L2_PINTO, - contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, - account: params.account, - verbose: true - }); } await transferContractOwnership({ @@ -409,9 +221,6 @@ module.exports = { deployShipmentContracts, distributeUnripeBdvTokens, distributeBarnPaybackTokens, - distributeSiloTokensToDistributor, - distributeFertilizerTokensToDistributor, - sowPlotsForDistributor, transferContractOwnership, deployAndSetupContracts }; diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 0a17e4c2..6605673a 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -1,7 +1,6 @@ const parseBarnData = require('./parseBarnData'); const parseFieldData = require('./parseFieldData'); const parseSiloData = require('./parseSiloData'); -const parseContractData = require('./parseContractData'); /** * Main parser orchestrator that runs all parsers @@ -29,17 +28,11 @@ function parseAllExportData(parseContracts = false) { console.log('-'.repeat(30)); results.silo = parseSiloData(parseContracts); - // Parse contract data for ContractPaybackDistributor - console.log('šŸ­ CONTRACT DISTRIBUTOR DATA'); - console.log('-'.repeat(30)); - results.contracts = parseContractData(); - console.log('šŸ“‹ PARSING SUMMARY'); console.log('-'.repeat(30)); console.log(`šŸ“Š Barn: ${results.barn.stats.fertilizerIds} fertilizer IDs, ${results.barn.stats.accountEntries} account entries`); console.log(`šŸ“Š Field: ${results.field.stats.totalAccounts} accounts, ${results.field.stats.totalPlots} plots`); console.log(`šŸ“Š Silo: ${results.silo.stats.totalAccounts} accounts with BDV`); - console.log(`šŸ“Š Contracts: ${results.contracts.stats.contractAccounts} accounts, ${results.contracts.stats.totalFertilizers} fertilizers, ${results.contracts.stats.totalPlots} plots`); console.log(`šŸ“Š Include contracts: ${parseContracts}`); return results; @@ -54,6 +47,5 @@ module.exports = { parseBarnData, parseFieldData, parseSiloData, - parseContractData, parseAllExportData }; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseBarnData.js b/scripts/beanstalkShipments/parsers/parseBarnData.js index a325a085..ef985167 100644 --- a/scripts/beanstalkShipments/parsers/parseBarnData.js +++ b/scripts/beanstalkShipments/parsers/parseBarnData.js @@ -45,12 +45,36 @@ function parseBarnData(includeContracts = false) { console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); } - // Combine data sources based on flag - // Note: ethContracts are excluded as they are handled by ContractPaybackDistributor + // Load constants for distributor address + const constants = require('../../../test/hardhat/utils/constants.js'); + const DISTRIBUTOR_ADDRESS = constants.BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR; + + // Combine data sources and reassign ethContracts to distributor const allAccounts = { ...arbEOAs }; if (includeContracts) { Object.assign(allAccounts, arbContracts); - // ethContracts intentionally excluded - handled by ContractPaybackDistributor + } + + // Reassign all ethContracts fertilizer assets to the distributor contract + for (const [ethContractAddress, ethContractData] of Object.entries(ethContracts)) { + if (ethContractData && ethContractData.beanFert) { + // If distributor already has data, merge fertilizer data + if (allAccounts[DISTRIBUTOR_ADDRESS]) { + if (!allAccounts[DISTRIBUTOR_ADDRESS].beanFert) { + allAccounts[DISTRIBUTOR_ADDRESS].beanFert = {}; + } + // Merge fertilizer amounts for same IDs + for (const [fertId, amount] of Object.entries(ethContractData.beanFert)) { + const existingAmount = parseInt(allAccounts[DISTRIBUTOR_ADDRESS].beanFert[fertId] || '0'); + const newAmount = parseInt(amount); + allAccounts[DISTRIBUTOR_ADDRESS].beanFert[fertId] = (existingAmount + newAmount).toString(); + } + } else { + allAccounts[DISTRIBUTOR_ADDRESS] = { + beanFert: { ...ethContractData.beanFert } + }; + } + } } // Use storage fertilizer data directly for global fertilizer diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js deleted file mode 100644 index 9178749c..00000000 --- a/scripts/beanstalkShipments/parsers/parseContractData.js +++ /dev/null @@ -1,145 +0,0 @@ -const fs = require('fs'); -const path = require('path'); - -/** - * Parses ethContracts data from all export files into ContractPaybackDistributor constructor format - * - * Expected output format: - * contractDistributorData.json: { - * contractAccounts: address[], - * siloPaybackTokensOwed: uint256[], - * fertilizerClaims: AccountFertilizerClaimData[], - * plotClaims: AccountPlotClaimData[] - * } - */ -function parseContractData() { - const siloInputPath = path.join(__dirname, '../data/exports/beanstalk_silo.json'); - const barnInputPath = path.join(__dirname, '../data/exports/beanstalk_barn.json'); - const fieldInputPath = path.join(__dirname, '../data/exports/beanstalk_field.json'); - const outputPath = path.join(__dirname, '../data/contractDistributorData.json'); - - console.log('šŸ“‹ Parsing ethContracts data for ContractPaybackDistributor...'); - - // Load all export data files - console.log('šŸ“– Reading export data files...'); - const siloData = JSON.parse(fs.readFileSync(siloInputPath, 'utf8')); - const barnData = JSON.parse(fs.readFileSync(barnInputPath, 'utf8')); - const fieldData = JSON.parse(fs.readFileSync(fieldInputPath, 'utf8')); - - const siloContracts = siloData.ethContracts || {}; - const barnContracts = barnData.ethContracts || {}; - const fieldContracts = fieldData.ethContracts || {}; - - console.log(`šŸ­ Found ${Object.keys(siloContracts).length} silo contracts`); - console.log(`🚜 Found ${Object.keys(barnContracts).length} barn contracts`); - console.log(`🌾 Found ${Object.keys(fieldContracts).length} field contracts`); - - // Get all unique contract addresses - const allContractAddresses = new Set([ - ...Object.keys(siloContracts), - ...Object.keys(barnContracts), - ...Object.keys(fieldContracts) - ]); - - const contractAccounts = Array.from(allContractAddresses); - console.log(`šŸ”— Total unique contract accounts: ${contractAccounts.length}`); - - // Build arrays for constructor parameters - const siloPaybackTokensOwed = []; - const fertilizerClaims = []; - const plotClaims = []; - - // Process each contract account - for (const contractAccount of contractAccounts) { - // Process silo data - const siloAccount = siloContracts[contractAccount]; - let siloOwed = "0"; - if (siloAccount && siloAccount.bdvAtRecapitalization && siloAccount.bdvAtRecapitalization.total) { - siloOwed = siloAccount.bdvAtRecapitalization.total; - } - siloPaybackTokensOwed.push(siloOwed); - - // Process barn data (fertilizer) - const barnAccount = barnContracts[contractAccount]; - let fertilizerIds = []; - let fertilizerAmounts = []; - - if (barnAccount && barnAccount.beanFert) { - for (const [fertId, amount] of Object.entries(barnAccount.beanFert)) { - fertilizerIds.push(fertId); - fertilizerAmounts.push(amount); - } - } - - fertilizerClaims.push({ - contractAccount: contractAccount, - fertilizerIds: fertilizerIds, - fertilizerAmounts: fertilizerAmounts - }); - - // Process field data (plots) - const fieldAccount = fieldContracts[contractAccount]; - let plotIds = []; - let starts = []; - let ends = []; - - if (fieldAccount && typeof fieldAccount === 'object') { - // Sort plot indices numerically - const plotIndices = Object.keys(fieldAccount).sort((a, b) => parseInt(a) - parseInt(b)); - - for (const plotIndex of plotIndices) { - const podAmount = parseInt(fieldAccount[plotIndex]); - if (podAmount > 0) { - plotIds.push(plotIndex); - starts.push("0"); // Start from beginning of plot - ends.push(podAmount.toString()); // End is the pod amount - } - } - } - - plotClaims.push({ - contractAccount: contractAccount, - fieldId: "1", // Payback field ID - ids: plotIds, - starts: starts, - ends: ends - }); - } - - // Calculate statistics - const totalSiloOwed = siloPaybackTokensOwed.reduce((sum, amount) => sum + parseInt(amount), 0); - const totalFertilizers = fertilizerClaims.reduce((sum, claim) => sum + claim.fertilizerIds.length, 0); - const totalPlots = plotClaims.reduce((sum, claim) => sum + claim.ids.length, 0); - - // Build output data structure - const contractDistributorData = { - contractAccounts, - siloPaybackTokensOwed, - fertilizerClaims, - plotClaims - }; - - // Write output file - console.log('šŸ’¾ Writing contractDistributorData.json...'); - fs.writeFileSync(outputPath, JSON.stringify(contractDistributorData, null, 2)); - - console.log('āœ… Contract data parsing complete!'); - console.log(` šŸ“Š Contract accounts: ${contractAccounts.length}`); - console.log(` šŸ“Š Total silo BDV owed: ${totalSiloOwed.toLocaleString()}`); - console.log(` šŸ“Š Total fertilizer claims: ${totalFertilizers}`); - console.log(` šŸ“Š Total plot claims: ${totalPlots}`); - console.log(''); - - return { - contractDistributorData, - stats: { - contractAccounts: contractAccounts.length, - totalSiloOwed, - totalFertilizers, - totalPlots - } - }; -} - -// Export for use in other scripts -module.exports = parseContractData; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseFieldData.js b/scripts/beanstalkShipments/parsers/parseFieldData.js index a036edb8..aa3d4e0c 100644 --- a/scripts/beanstalkShipments/parsers/parseFieldData.js +++ b/scripts/beanstalkShipments/parsers/parseFieldData.js @@ -24,12 +24,36 @@ function parseFieldData(includeContracts = false) { console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); } - // Combine data sources based on flag - // Note: ethContracts are excluded as they are handled by ContractPaybackDistributor + // Load constants for distributor address + const constants = require('../../../test/hardhat/utils/constants.js'); + const DISTRIBUTOR_ADDRESS = constants.BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR; + + // Combine data sources and reassign ethContracts to distributor const allAccounts = { ...arbEOAs }; if (includeContracts) { Object.assign(allAccounts, arbContracts); - // ethContracts intentionally excluded - handled by ContractPaybackDistributor + } + + // Reassign all ethContracts plot assets to the distributor contract + for (const [ethContractAddress, plotsMap] of Object.entries(ethContracts)) { + if (plotsMap && typeof plotsMap === 'object') { + // If distributor already has data, merge plot data + if (allAccounts[DISTRIBUTOR_ADDRESS]) { + // Merge plot data + for (const [plotIndex, pods] of Object.entries(plotsMap)) { + // If same plot index exists, add the pod amounts + if (allAccounts[DISTRIBUTOR_ADDRESS][plotIndex]) { + const existingPods = parseInt(allAccounts[DISTRIBUTOR_ADDRESS][plotIndex]); + const newPods = parseInt(pods); + allAccounts[DISTRIBUTOR_ADDRESS][plotIndex] = (existingPods + newPods).toString(); + } else { + allAccounts[DISTRIBUTOR_ADDRESS][plotIndex] = pods; + } + } + } else { + allAccounts[DISTRIBUTOR_ADDRESS] = { ...plotsMap }; + } + } } // Build plots data structure diff --git a/scripts/beanstalkShipments/parsers/parseSiloData.js b/scripts/beanstalkShipments/parsers/parseSiloData.js index 33fa6d3b..182886f2 100644 --- a/scripts/beanstalkShipments/parsers/parseSiloData.js +++ b/scripts/beanstalkShipments/parsers/parseSiloData.js @@ -24,12 +24,32 @@ function parseSiloData(includeContracts = false) { console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); } - // Combine data sources based on flag - // Note: ethContracts are excluded as they are handled by ContractPaybackDistributor + // Load constants for distributor address + const constants = require('../../../test/hardhat/utils/constants.js'); + const DISTRIBUTOR_ADDRESS = constants.BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR; + + // Combine data sources and reassign ethContracts to distributor const allAccounts = { ...arbEOAs }; if (includeContracts) { Object.assign(allAccounts, arbContracts); - // ethContracts intentionally excluded - handled by ContractPaybackDistributor + } + + // Reassign all ethContracts assets to the distributor contract + for (const [ethContractAddress, ethContractData] of Object.entries(ethContracts)) { + if (ethContractData && ethContractData.bdvAtRecapitalization) { + // If distributor already has data, add to it, otherwise create new entry + if (allAccounts[DISTRIBUTOR_ADDRESS]) { + const distributorBdv = parseInt(allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total || '0'); + const ethContractBdv = parseInt(ethContractData.bdvAtRecapitalization.total || '0'); + allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total = (distributorBdv + ethContractBdv).toString(); + } else { + allAccounts[DISTRIBUTOR_ADDRESS] = { + bdvAtRecapitalization: { + total: ethContractData.bdvAtRecapitalization.total + } + }; + } + } } // Build unripe BDV data structure diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 200f7788..ff1bb6c8 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -1,4 +1,3 @@ -const { upgradeWithNewFacets } = require("../diamond.js"); const fs = require("fs"); const { splitEntriesIntoChunksOptimized, @@ -8,12 +7,14 @@ const { /** * Populates the beanstalk field by reading data from beanstalkPlots.json - * and calling diamond upgrade with InitReplaymentField init script - * @param {string} diamondAddress - The address of the diamond contract - * @param {Object} account - The account to use for the transaction - * @param {boolean} verbose - Whether to log verbose output + * and calling initializeReplaymentPlots directly on the L2_PINTO contract + * @param {Object} params - The parameters object + * @param {string} params.diamondAddress - The address of the diamond contract + * @param {Object} params.account - The account to use for the transaction + * @param {boolean} params.verbose - Whether to log verbose output + * @param {boolean} params.mockData - Whether to use mock data */ -async function populateBeanstalkField(diamondAddress, account, verbose = false, mockData = false) { +async function populateBeanstalkField({ diamondAddress, account, verbose, mockData }) { console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots."); // Read and parse the JSON file @@ -23,36 +24,32 @@ async function populateBeanstalkField(diamondAddress, account, verbose = false, const rawPlotData = JSON.parse(fs.readFileSync(plotsPath)); // Split into chunks for processing - const targetEntriesPerChunk = 800; + const targetEntriesPerChunk = 500; const plotChunks = splitEntriesIntoChunksOptimized(rawPlotData, targetEntriesPerChunk); console.log(`Starting to process ${plotChunks.length} chunks...`); - // Deploy the standalone InitReplaymentField contract using ethers - const initReplaymentFieldFactory = await ethers.getContractFactory("InitReplaymentField", account); - const initReplaymentField = await initReplaymentFieldFactory.deploy(); - await initReplaymentField.deployed(); - console.log("āœ… InitReplaymentField deployed to:", initReplaymentField.address); + // Get contract instance for TempRepaymentFieldFacet + const pintoDiamond = await ethers.getContractAt( + "TempRepaymentFieldFacet", + diamondAddress, + account + ); for (let i = 0; i < plotChunks.length; i++) { await updateProgress(i + 1, plotChunks.length); if (verbose) { - console.log(`Processing chunk ${i + 1}/${plotChunks.length}`); + console.log(`\nšŸ”„ Processing chunk ${i + 1}/${plotChunks.length}`); console.log(`Chunk contains ${plotChunks[i].length} accounts`); console.log("-----------------------------------"); } - await retryOperation(async () => { - await upgradeWithNewFacets({ - diamondAddress: diamondAddress, - facetNames: [], // No new facets to deploy - initFacetName: "InitReplaymentField", - initFacetAddress: initReplaymentField.address, // Re-use the same contract for all chunks - initArgs: [plotChunks[i]], // Pass the chunk as ReplaymentPlotData[] - verbose: verbose, - account: account - }); + const tx = await pintoDiamond.initializeReplaymentPlots(plotChunks[i]); + const receipt = await tx.wait(); + if (verbose) { + console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + console.log(`šŸ“‹ Transaction hash: ${receipt.transactionHash}`); + } }); - if (verbose) { console.log(`Completed chunk ${i + 1}/${plotChunks.length}`); } diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index ad8a3da4..fa757cec 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -122,9 +122,12 @@ module.exports = { // Beanstalk Shipments BEANSTALK_SHIPMENTS_DEPLOYER: "0x47c365cc9ef51052651c2be22f274470ad6afc53", + BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR: "0xc4c66c8b199443a8dea5939ce175c3592e349791", BEANSTALK_SILO_PAYBACK: "0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E", BEANSTALK_BARN_PAYBACK: "0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b", BEANSTALK_SHIPMENT_PLANNER: "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + // todo figure out address of this based on nonce of deployer + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR: "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", // Wells PINTO_WETH_WELL_BASE, From 1fa7d71e17029013afb302d5424a9c9225676e7a Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 20 Aug 2025 20:27:05 +0300 Subject: [PATCH 049/270] split repayment field init before new field creation --- .../facets/field/TempRepaymentFieldFacet.sol | 8 +-- .../beanstalkShipments/SiloPayback.sol | 3 + hardhat.config.js | 72 ++++++++++++++----- .../deployPaybackContracts.js | 2 +- 4 files changed, 63 insertions(+), 22 deletions(-) diff --git a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol index cfa51aca..374b377c 100644 --- a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol @@ -10,10 +10,9 @@ import {FieldFacet} from "contracts/beanstalk/facets/field/FieldFacet.sol"; /** * @title TempRepaymentFieldFacet * @notice Temporary facet to re-initialize the repayment field with data from the Beanstalk Podline. - * Upon deployment of the beanstalkShipments, a new field will be created in + * Upon deployment of the beanstalkShipments, a new field will be created in */ contract TempRepaymentFieldFacet is ReentrancyGuard { - address public constant REPAYMENT_FIELD_POPULATOR = 0xc4c66c8b199443a8deA5939ce175C3592e349791; uint256 public constant REPAYMENT_FIELD_ID = 1; @@ -34,12 +33,13 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { * @dev This function is only callable by the repayment field populator. * @param accountPlots the plot for each account */ - function initializeReplaymentPlots(ReplaymentPlotData[] calldata accountPlots) external nonReentrant { + function initializeReplaymentPlots( + ReplaymentPlotData[] calldata accountPlots + ) external nonReentrant { require( msg.sender == REPAYMENT_FIELD_POPULATOR, "Only the repayment field populator can call this function" ); - require(s.sys.fieldCount == 2, "Repayment field should be initialized"); AppStorage storage s = LibAppStorage.diamondStorage(); for (uint i; i < accountPlots.length; i++) { for (uint j; j < accountPlots[i].plots.length; j++) { diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 0b3a5606..cedb78e0 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -38,6 +38,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { event Claimed(address indexed user, uint256 amount, uint256 rewards); /// @dev event emitted when rewards are received from shipments event SiloPaybackRewardsReceived(uint256 amount, uint256 newIndex); + /// @dev event emitted when unripe bdv tokens are minted + event UnripeBdvTokenMinted(address indexed user, uint256 amount); /// @dev modifier to ensure only the Pinto protocol can call the function modifier onlyPintoProtocol() { @@ -70,6 +72,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { for (uint256 i = 0; i < unripeReceipts.length; i++) { _mint(unripeReceipts[i].receipient, unripeReceipts[i].bdv); totalDistributed += unripeReceipts[i].bdv; + emit UnripeBdvTokenMinted(unripeReceipts[i].receipient, unripeReceipts[i].bdv); } } diff --git a/hardhat.config.js b/hardhat.config.js index 13165c74..9663e5fb 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2079,7 +2079,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi repaymentFieldPopulator = (await ethers.getSigners())[2]; } - // Step 1: Deploy and setup payback contracts + // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract console.log("šŸš€ STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); console.log("-".repeat(50)); let contracts = {}; @@ -2096,19 +2096,42 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi console.log("āœ… Payback contracts deployed and configured\n"); } - // Step 2: Update shipment routes, create new field and create the new TempRepaymentFieldFacet + // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field + console.log("šŸ›¤ļø STEP 2: ADDING NEW TEMPREPAYMENTFIELD FACET TO THE PINTO DIAMOND"); + console.log("-".repeat(50)); + + await upgradeWithNewFacets({ + diamondAddress: L2_PINTO, + facetNames: ["TempRepaymentFieldFacet"], + initArgs: [], + verbose: true, + account: owner + }); + + // Step 3: Populate the repayment field with data + console.log("šŸ“ˆ STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); + console.log("-".repeat(50)); + if (populateField) { + await populateBeanstalkField({ + diamondAddress: L2_PINTO, + account: repaymentFieldPopulator, + verbose: verbose, + mockData: mockFieldData + }); + } + + // Step 4: Update shipment routes and create new field // The season facet will also need to be updated to support the new receipients in the // ShipmentRecipient enum in System.sol since the facet inherits from Distribution.sol // That contains the function getShipmentRoutes() which reads the shipment routes from storage // and imports the ShipmentRoute struct. - console.log("šŸ›¤ļø STEP 2: UPDATING SHIPMENT ROUTES AND CREATING NEW FIELD"); - console.log("-".repeat(50)); + console.log("\nšŸ›¤ļø STEP 4: UPDATING SHIPMENT ROUTES AND CREATING NEW FIELD"); const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; const routes = JSON.parse(fs.readFileSync(routesPath)); await upgradeWithNewFacets({ diamondAddress: L2_PINTO, - facetNames: ["SeasonFacet", "TempRepaymentFieldFacet"], + facetNames: ["SeasonFacet"], libraryNames: [ "LibEvaluate", "LibGauge", @@ -2138,24 +2161,39 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi }); console.log("āœ… Shipment routes updated and new field created\n"); - // Step 2: Create and populate beanstalk field - console.log("šŸ“ˆ STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); - console.log("-".repeat(50)); - if (populateField) { - await populateBeanstalkField({ - diamondAddress: L2_PINTO, - account: repaymentFieldPopulator, - verbose: verbose, - mockData: mockFieldData - }); - } - console.log("=".repeat(80)); console.log("šŸŽ‰ BEANSTALK SHIPMENTS INITIALIZATION COMPLETED"); console.log("=".repeat(80)); } ); +// After the initialization of the repayment field is done and the shipments have been deployed +// The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed +task( + "removeTempRepaymentFieldFacet", + "removes the TempRepaymentFieldFacet from the diamond" +).setAction(async (taskArgs) => { + const mock = true; + let owner; + if (mock) { + owner = await impersonateSigner(L2_PCM); + await mintEth(owner.address); + } else { + owner = (await ethers.getSigners())[0]; + } + + // 0x31f2cd56: REPAYMENT_FIELD_ID() + // 0x49e40d6c: REPAYMENT_FIELD_POPULATOR() + // 0x0b678c09: initializeReplaymentPlots() + await upgradeWithNewFacets({ + diamondAddress: L2_PINTO, + facetNames: [], + selectorsToRemove: ["0x31f2cd56", "0x49e40d6c", "0x0b678c09"], + verbose: true, + account: owner + }); +}); + //////////////////////// CONFIGURATION //////////////////////// module.exports = { diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 1dd52c58..60deb706 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -1,7 +1,7 @@ const fs = require("fs"); const { splitEntriesIntoChunks, updateProgress, retryOperation } = require("../../utils/read.js"); -// Deploys SiloPayback, BarnPayback, and ShipmentPlanner contracts +// Deploys SiloPayback, BarnPayback, ShipmentPlanner, and ContractPaybackDistributor contracts async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = true }) { if (verbose) { console.log("šŸš€ Deploying Beanstalk shipment contracts..."); From b5c16de2bd870ef700c2ef14ff017d86c8e9098c Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 20 Aug 2025 20:47:27 +0300 Subject: [PATCH 050/270] cache account in field init --- .../facets/field/TempRepaymentFieldFacet.sol | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol index 374b377c..047d5c4e 100644 --- a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol @@ -42,20 +42,18 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { ); AppStorage storage s = LibAppStorage.diamondStorage(); for (uint i; i < accountPlots.length; i++) { + // cache the account + address account = accountPlots[i].account; for (uint j; j < accountPlots[i].plots.length; j++) { uint256 podIndex = accountPlots[i].plots[j].podIndex; uint256 podAmount = accountPlots[i].plots[j].podAmounts; - s.accts[accountPlots[i].account].fields[REPAYMENT_FIELD_ID].plots[ - podIndex - ] = podAmount; - s.accts[accountPlots[i].account].fields[REPAYMENT_FIELD_ID].plotIndexes.push( - podIndex - ); + s.accts[account].fields[REPAYMENT_FIELD_ID].plots[podIndex] = podAmount; + s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.push(podIndex); // Set the plot index after the push to ensure length is > 0. - s.accts[accountPlots[i].account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = - s.accts[accountPlots[i].account].fields[REPAYMENT_FIELD_ID].plotIndexes.length - + s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = + s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length - 1; - emit ReplaymentPlotAdded(accountPlots[i].account, podIndex, podAmount); + emit ReplaymentPlotAdded(account, podIndex, podAmount); } } } From e8aea9789ff77a8c1707b235c2386834321cdd92 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 21 Aug 2025 13:59:34 +0300 Subject: [PATCH 051/270] l1 to l2 contract claims and messenger --- .../ContractPaybackDistributor.sol | 183 ++++++++++-------- .../L1ContractMessenger.sol | 60 ++++++ .../interfaces/ICrossDomainMessenger.sol | 7 + 3 files changed, 167 insertions(+), 83 deletions(-) create mode 100644 contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol create mode 100644 contracts/interfaces/ICrossDomainMessenger.sol diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 56c4c8e1..923d7628 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -9,6 +9,7 @@ import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; /** * @title ContractPaybackDistributor @@ -21,6 +22,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; * - For safe multisigs with version >1.3.0 , deploy their safe from the official UI * (https://help.safe.global/en/articles/222612-deploying-a-multi-chain-safe) * - For regular contracts, deploy using the same deployer nonce as on L1 to replicate their address on Base + * (https://github.com/pinto-org/beanstalkContractRedeployer) * - For amibre wallets just perform a transaction on Base to activate their account * Once their address is replicated they can just call claimDirect() and receive their assets. * @@ -31,95 +33,113 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; contract ContractPaybackDistributor is ReentrancyGuard { using SafeERC20 for IERC20; - struct AccountFertilizerClaimData { - address contractAccount; + // Repayment field id + uint256 public constant REPAYMENT_FIELD_ID = 1; + + // L2 messenger on the Superchain + ICrossDomainMessenger public constant MESSENGER = + ICrossDomainMessenger(0x4200000000000000000000000000000000000007); + + // L1 sender: the contract address that sent the claim message from the L1 + address public constant L1_SENDER = 0x0000000000000000000000000000000000000000; + + struct AccountData { + bool whitelisted; + bool claimed; + uint256 siloPaybackTokensOwed; uint256[] fertilizerIds; uint256[] fertilizerAmounts; + uint256[] plotIds; + uint256[] plotStarts; + uint256[] plotEnds; + } + + /// @dev contains all the data for all the contract accounts + mapping(address => AccountData) public accounts; + + // Beanstalk protocol + IBeanstalk immutable PINTO_PROTOCOL; + // Silo payback token + IERC20 immutable SILO_PAYBACK; + // Barn payback token + IBarnPayback immutable BARN_PAYBACK; + + modifier onlyWhitelistedCaller(address caller) { + require( + accounts[caller].whitelisted, + "ContractPaybackDistributor: Caller not whitelisted for claim" + ); + _; } - struct AccountPlotClaimData { - address contractAccount; - uint256 fieldId; - uint256[] ids; - uint256[] starts; - uint256[] ends; + modifier onlyL1Messenger() { + require( + msg.sender == address(MESSENGER), + "ContractPaybackDistributor: Caller not L1 messenger" + ); + require( + MESSENGER.xDomainMessageSender() == L1_SENDER, + "ContractPaybackDistributor: Bad origin" + ); + _; } - /// @dev whitelisted contract accounts - mapping(address contractAccount => bool whitelisted) public isWhitelisted; - /// @dev keep track of which contracts have claimed - mapping(address contractAccount => bool hasClaimed) public claimed; - /// @dev keep track of how many silo payback tokens are owed to each whitelisted contract - mapping(address contractAccount => uint256 siloPaybackTokensOwed) public siloPaybackTokensOwed; - /// @dev keep track of which fertilizer tokens are owed to each whitelisted contract - mapping(address contractAccount => AccountFertilizerClaimData) public accountFertilizer; - /// @dev keep track of which plots are owed to each whitelisted contract - mapping(address contractAccount => AccountPlotClaimData) public accountPlots; - - IBeanstalk immutable pintoProtocol; - IERC20 immutable siloPayback; - IBarnPayback immutable barnPayback; + modifier isValidReceiver(address receiver) { + require(receiver != address(0), "ContractPaybackDistributor: Invalid receiver address"); + _; + } /** - * @param _contractAccounts The contract accounts that are allowed to claim - * @param _siloPaybackTokensOwed The amount of silo payback tokens owed to each contract - * @param _fertilizerClaims The fertilizer claims for each contract - * @param _plotClaims The plot claims for each contract + * @param _accountsData Array of account data for whitelisted contracts * @param _pintoProtocol The pinto protocol address * @param _siloPayback The silo payback contract address * @param _barnPayback The barn payback contract address */ constructor( + AccountData[] memory _accountsData, address[] memory _contractAccounts, - uint256[] memory _siloPaybackTokensOwed, - AccountFertilizerClaimData[] memory _fertilizerClaims, - AccountPlotClaimData[] memory _plotClaims, address _pintoProtocol, address _siloPayback, address _barnPayback ) { - // whitelist the contract accounts and set their claims + require(_accountsData.length == _contractAccounts.length, "Init Array length mismatch"); for (uint256 i = 0; i < _contractAccounts.length; i++) { - isWhitelisted[_contractAccounts[i]] = true; - siloPaybackTokensOwed[_contractAccounts[i]] = _siloPaybackTokensOwed[i]; - accountFertilizer[_contractAccounts[i]] = _fertilizerClaims[i]; - accountPlots[_contractAccounts[i]] = _plotClaims[i]; + require(_contractAccounts[i] != address(0), "Invalid contract account address"); + accounts[_contractAccounts[i]] = _accountsData[i]; } - pintoProtocol = IBeanstalk(_pintoProtocol); - siloPayback = IERC20(_siloPayback); - barnPayback = IBarnPayback(_barnPayback); + + PINTO_PROTOCOL = IBeanstalk(_pintoProtocol); + SILO_PAYBACK = IERC20(_siloPayback); + BARN_PAYBACK = IBarnPayback(_barnPayback); } /** - * @notice Allows a contract account to claim their beanstalk repayment assets directly. + * @notice Allows a contract account to claim their beanstalk repayment assets directly to a receiver. * @param receiver The address to transfer the assets to */ - function claimDirect(address receiver) external nonReentrant { - require( - isWhitelisted[msg.sender], - "ContractPaybackDistributor: Caller not whitelisted for claim" - ); - require(!claimed[msg.sender], "ContractPaybackDistributor: Caller already claimed"); - - // mark the caller as claimed - claimed[msg.sender] = true; + function claimDirect( + address receiver + ) external nonReentrant onlyWhitelistedCaller(msg.sender) isValidReceiver(receiver) { + AccountData storage account = accounts[msg.sender]; + require(!account.claimed, "ContractPaybackDistributor: Caller already claimed"); + account.claimed = true; _transferAllAssetsForAccount(msg.sender, receiver); } - // receives a message from the l1 and distrubutes all assets. - function claimFromMessage(bytes memory message) public nonReentrant { - // todo: decode message, verify and send assets. - - require( - isWhitelisted[msg.sender], - "ContractPaybackDistributor: Caller not whitelisted for claim" - ); - require(!claimed[msg.sender], "ContractPaybackDistributor: Caller already claimed"); - claimed[msg.sender] = true; - - address receiver = abi.decode(message, (address)); - // _transferAllAssetsForAccount(msg.sender, receiver); + /** + * @notice Receives a message from the l1 messenger and distrubutes all assets to a receiver. + * @param caller The address of the caller on the l1. (The encoded msg.sender in the message) + * @param receiver The address to transfer all the assets to. + */ + function claimFromL1Message( + address caller, + address receiver + ) public nonReentrant onlyL1Messenger onlyWhitelistedCaller(caller) isValidReceiver(receiver) { + AccountData storage account = accounts[caller]; + require(!account.claimed, "ContractPaybackDistributor: Caller already claimed"); + account.claimed = true; + _transferAllAssetsForAccount(caller, receiver); } /** @@ -129,31 +149,20 @@ contract ContractPaybackDistributor is ReentrancyGuard { * @param receiver The address to transfer the assets to */ function _transferAllAssetsForAccount(address account, address receiver) internal { - // get the amount of silo payback tokens owed to the contract account - uint256 claimableSiloPaybackTokens = siloPaybackTokensOwed[account]; - - // get the amount of fertilizer tokens owed to the contract account - uint256[] memory fertilizerIds = accountFertilizer[account].fertilizerIds; - uint256[] memory fertilizerAmounts = accountFertilizer[account].fertilizerAmounts; - - // get the amount of plots owed to the contract account - uint256 fieldId = accountPlots[account].fieldId; - uint256[] memory plotIds = accountPlots[account].ids; - uint256[] memory starts = accountPlots[account].starts; - uint256[] memory ends = accountPlots[account].ends; - - // transfer silo payback tokens to the contract account - if (claimableSiloPaybackTokens > 0) { - siloPayback.safeTransfer(receiver, claimableSiloPaybackTokens); + AccountData storage accountData = accounts[account]; + + // transfer silo payback tokens to the receiver + if (accountData.siloPaybackTokensOwed > 0) { + SILO_PAYBACK.safeTransfer(receiver, accountData.siloPaybackTokensOwed); } - // transfer fertilizer erc115s to the contract account - if (fertilizerIds.length > 0) { - barnPayback.safeBatchTransferFrom( + // transfer fertilizer ERC1155s to the receiver + if (accountData.fertilizerIds.length > 0) { + BARN_PAYBACK.safeBatchTransferFrom( address(this), receiver, - fertilizerIds, - fertilizerAmounts, + accountData.fertilizerIds, + accountData.fertilizerAmounts, "" ); } @@ -162,8 +171,16 @@ contract ContractPaybackDistributor is ReentrancyGuard { // todo: very unlikely but need to test with // 0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997 that has a ton of plots // to make sure gas is not an issue - if (plotIds.length > 0) { - pintoProtocol.transferPlots(address(this), receiver, fieldId, plotIds, starts, ends); + // todo: may require an allowance to be set on the plots of this contract + if (accountData.plotIds.length > 0) { + PINTO_PROTOCOL.transferPlots( + address(this), + receiver, + REPAYMENT_FIELD_ID, + accountData.plotIds, + accountData.plotStarts, + accountData.plotEnds + ); } } } diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol new file mode 100644 index 00000000..f5635312 --- /dev/null +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -0,0 +1,60 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; + +/// @dev the interface of the L2 ContractPaybackDistributor contract +interface IContractPaybackDistributor { + function claimFromL1Message( + address caller, + address receiver + ) external; +} + +/** + * @title L1ContractMessenger + * @notice This contract can be used as a backup solution from smart contract accounts on Ethereum L1 that are + * eligible for beanstalk repayment assets but are unable to claim their assets directly on Base. + */ +contract L1ContractMessenger { + // Superchain messenger from Ethereum L1 + ICrossDomainMessenger public constant MESSENGER = + ICrossDomainMessenger(0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1); + // The address of the L2 ContractPaybackDistributor contract + address public immutable L2_CONTRACT_PAYBACK_DISTRIBUTOR; + + // Contract addresses allowed to call the claimL2BeanstalkAssets function + // To release their funds on the L2 from the L2 ContractPaybackDistributor contract + mapping(address => bool) public isWhitelistedL1Caller; + + modifier onlyWhitelistedL1Caller() { + require( + isWhitelistedL1Caller[msg.sender], + "L1ContractMessenger: Caller not whitelisted for claim" + ); + _; + } + + constructor(address _l2ContractPaybackDistributor, address[] memory _whitelistedL1Callers) { + L2_CONTRACT_PAYBACK_DISTRIBUTOR = _l2ContractPaybackDistributor; + // Whitelist the L1 callers + for (uint256 i = 0; i < _whitelistedL1Callers.length; i++) { + isWhitelistedL1Caller[_whitelistedL1Callers[i]] = true; + } + } + + /** + * @notice Sends a message from the L1 to the L2 ContractPaybackDistributor contract + * to claim the assets for a given L2 receiver address + * @param l2Receiver The address to transfer the assets to on the L2 + * Todo: check the max gas limit needed on the l2 and add 20% on top of that as buffer + * (https://docs.optimism.io/app-developers/bridging/messaging#basics-of-communication-between-layers) + */ + function claimL2BeanstalkAssets(address l2Receiver) public onlyWhitelistedL1Caller { + MESSENGER.sendMessage( + L2_CONTRACT_PAYBACK_DISTRIBUTOR, // target + abi.encodeCall(IContractPaybackDistributor.claimFromL1Message, (msg.sender, l2Receiver)), // message + 200000 // gas limit + ); + } +} diff --git a/contracts/interfaces/ICrossDomainMessenger.sol b/contracts/interfaces/ICrossDomainMessenger.sol new file mode 100644 index 00000000..44a0706c --- /dev/null +++ b/contracts/interfaces/ICrossDomainMessenger.sol @@ -0,0 +1,7 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +interface ICrossDomainMessenger { + function xDomainMessageSender() external view returns (address); + function sendMessage(address _target, bytes calldata _message, uint32 _gasLimit) external; +} From 5d5c4f407825d52cf7f10bf632666a3377f5c805 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 21 Aug 2025 15:28:14 +0300 Subject: [PATCH 052/270] parsing for eth contract initialization --- hardhat.config.js | 4 +- .../data/ethAccountDistributorInit.json | 1228 +++++++++++++++++ .../data/ethContractAccounts.json | 24 + .../deployPaybackContracts.js | 36 +- scripts/beanstalkShipments/parsers/index.js | 8 + .../parsers/parseContractData.js | 204 +++ .../populateBeanstalkField.js | 2 +- 7 files changed, 1497 insertions(+), 9 deletions(-) create mode 100644 scripts/beanstalkShipments/data/ethAccountDistributorInit.json create mode 100644 scripts/beanstalkShipments/data/ethContractAccounts.json create mode 100644 scripts/beanstalkShipments/parsers/parseContractData.js diff --git a/hardhat.config.js b/hardhat.config.js index 9663e5fb..32aea818 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2121,10 +2121,10 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi } // Step 4: Update shipment routes and create new field - // The season facet will also need to be updated to support the new receipients in the + // The SeasonFacet will also need to be updated to support the new receipients in the // ShipmentRecipient enum in System.sol since the facet inherits from Distribution.sol // That contains the function getShipmentRoutes() which reads the shipment routes from storage - // and imports the ShipmentRoute struct. + // and imports the ShipmentRoute struct. LibReceiving was also updated. console.log("\nšŸ›¤ļø STEP 4: UPDATING SHIPMENT ROUTES AND CREATING NEW FIELD"); const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; const routes = JSON.parse(fs.readFileSync(routesPath)); diff --git a/scripts/beanstalkShipments/data/ethAccountDistributorInit.json b/scripts/beanstalkShipments/data/ethAccountDistributorInit.json new file mode 100644 index 00000000..9c4505b5 --- /dev/null +++ b/scripts/beanstalkShipments/data/ethAccountDistributorInit.json @@ -0,0 +1,1228 @@ +[ + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1210864256332", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "79602267187", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "28368015360976", + "38722543672289", + "33106872744841", + "61000878716919", + "72536373875278", + "75995951619880", + "75784287632794", + "217474381338301", + "220144194502828", + "333622810114113", + "378227726508635", + "574387565763701", + "575679606872092", + "626184530707078", + "634034652140320", + "680095721530457", + "767824420446983", + "767978192014986", + "792657494145217", + "790662167913055", + "845186146706783" + ], + "plotStarts": [ + "28368015360976", + "38722543672289", + "33106872744841", + "61000878716919", + "72536373875278", + "75995951619880", + "75784287632794", + "217474381338301", + "220144194502828", + "333622810114113", + "378227726508635", + "574387565763701", + "575679606872092", + "626184530707078", + "634034652140320", + "680095721530457", + "767824420446983", + "767978192014986", + "792657494145217", + "790662167913055", + "845186146706783" + ], + "plotEnds": [ + "28378015360976", + "38722793672289", + "33113307703346", + "61001668124646", + "72536573875278", + "76001219652173", + "75787223567174", + "217475674512777", + "220191598626128", + "333823566057414", + "378228371871768", + "574443423459533", + "575718099519476", + "626275249578875", + "634036479771284", + "680105835387283", + "767825578892582", + "767979798694986", + "792668647859111", + "790723085295878", + "845248806005547" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1918965278639", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1129291156", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "62672894779", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "230057326178", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3458512", + "3458531", + "3470220", + "6000000" + ], + "fertilizerAmounts": [ + "542767", + "56044", + "291896", + "8046712" + ], + "plotIds": [ + "28553316405699", + "33290510627174", + "32013293099710", + "33262951017861", + "118322555232226", + "180071240663041", + "317859517384357", + "338910099578361", + "444973868346640", + "477195175494445", + "706133899990342", + "726480740731617", + "721409921103392", + "735554122237517", + "729812277370084", + "744819318753537", + "760472183068657" + ], + "plotStarts": [ + "28553316405699", + "33290510627174", + "32013293099710", + "33262951017861", + "118322555232226", + "180071240663041", + "317859517384357", + "338910099578361", + "444973868346640", + "477195175494445", + "706133899990342", + "726480740731617", + "721409921103392", + "735554122237517", + "729812277370084", + "744819318753537", + "760472183068657" + ], + "plotEnds": [ + "28609519766545", + "33291076017861", + "32028293099710", + "33272326017861", + "118328447658504", + "180153233360660", + "318150712799757", + "338983012660405", + "445035429115281", + "477225033066008", + "708854489473588", + "728528152871407", + "725824924442098", + "738068338201632", + "735462721965817", + "744917643589917", + "760543583068610" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3500000", + "6000000" + ], + "fertilizerAmounts": [ + "40000", + "51100" + ], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "22023088835", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "3025" + ], + "plotIds": [ + "462646168927", + "647175726076112", + "720495305315880" + ], + "plotStarts": [ + "462646168927", + "647175726076112", + "720495305315880" + ], + "plotEnds": [ + "464312835593", + "647192437507145", + "720550874525684" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3471974" + ], + "fertilizerAmounts": [ + "10" + ], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "99437500", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "344618618497376" + ], + "plotStarts": [ + "344618618497376" + ], + "plotEnds": [ + "344699619094876" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "28385711672356" + ], + "plotStarts": [ + "28385711672356" + ], + "plotEnds": [ + "28389711672356" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "291524996", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2852385621956", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "20754000000", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "31772724860478" + ], + "plotStarts": [ + "31772724860478" + ], + "plotEnds": [ + "31816265099710" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "4", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "743356388661755", + "743361211817145", + "743715232207665", + "743356672709419", + "743360634868902", + "743722931420691", + "743361558991435", + "743721114148315", + "743723263763777", + "743359427829722", + "743719327158832", + "743630495498696", + "743717465912681", + "743850150895666", + "743360044452561", + "743474498214916", + "743600698167087", + "743850188159903", + "743357477641655", + "743828125898584", + "743724841468431", + "743358222242706", + "743539482459035", + "743718396440568", + "743655500242803", + "743720227259710", + "743683339211263", + "743716535470658", + "743724247539524", + "743724754699738", + "743758351384781", + "743715386299109", + "743511743622993", + "744149549341165", + "743850188825560", + "743715742909728", + "743850107713372", + "743850188407614", + "743724657401075", + "743970693645298", + "743575662666260", + "743358858802512", + "759846598641700", + "759845499012078", + "759820979493945", + "759848782950665", + "759849170829070", + "759846192334006", + "759845097673944", + "759846954659102", + "759847586635496", + "759849350525552", + "759846134413094", + "759849070462313", + "759849282436810", + "759849367566775", + "759847763930840", + "759846649222491", + "759794285432848", + "759849642570643", + "759849606957706", + "759847653594023", + "759822114721445", + "759848034600283", + "759846162136020", + "759845257599860", + "759775201252262", + "759849567176346", + "759844955449185", + "759845419086397", + "759848981304400", + "759846623834951", + "759849442801928", + "759793466228152", + "759845578243712", + "759847745091804", + "759849099543704", + "759845339211703", + "759845895004270", + "759821772251897", + "759849495684737", + "759669831627157", + "759849316392935", + "759773643882684", + "759847698544603", + "759849045125533", + "759821049929135", + "759849396878147", + "759849207340352", + "759845766640518", + "759821114749502", + "759848595655012", + "759761297451604", + "759845651534881", + "759846350575818", + "759849157372869", + "759848808246117", + "759846058683685", + "759845176024847", + "759845823617743", + "759849128665876", + "759849387840672", + "759849248584132", + "759846474502111", + "759845017811534", + "759868363900948", + "759849734651926", + "759935079369547", + "759865634502895", + "759864451656441", + "759868472460443", + "759866238288974", + "759940035846319", + "759864923379852", + "759866210354501", + "759865189244823", + "759864968712520", + "759868225980551", + "759864623518170", + "759865849406376", + "759868271823279", + "759849923422103", + "759865028070737", + "759864666970344", + "759944631176184", + "759865401309329", + "759849688360602", + "759849966845504", + "759868366522237", + "759935291251999", + "759864377428188", + "759864983659561", + "759865309352063", + "759849877025014", + "759940529740783", + "759940575669691", + "759940703254106", + "759849781068480", + "759865588793765", + "759866099136204", + "759940324571976", + "759865073912287", + "759865673264324", + "759864839501675", + "759864497019333", + "759865111403591", + "759868180376858", + "759865363704424", + "759864712294540", + "759940458415728", + "759864794252615", + "759864878053872", + "759940371695183", + "759944524831820", + "759940115261530", + "759865502784387", + "759864364377919", + "759849897637984", + "759868420231465", + "759865655175792", + "759935217066027", + "759940486880466", + "759935244157971", + "759940220149474", + "759935033618046", + "759864542405730", + "759935171141704", + "759868317837719", + "759864639547896", + "759865545775991", + "759944301288885", + "759865235204630", + "759940553538875", + "759866265757869", + "759849827548506", + "759849856458453", + "759940431848469", + "759944876402388", + "759970096328147", + "759968303751614", + "759970009257032", + "759969922263950", + "759945236861297", + "759968390231662", + "759969313128560", + "759947353926358", + "759945663978694", + "759968565049433", + "759967359236250", + "759969182444540", + "759970659966091", + "759967315893614", + "760353370648423", + "760353371573213", + "759971792380007", + "759971171933682", + "759972626954274", + "759972684661677", + "760353369656132", + "759972063083193", + "759972656946269", + "760357963287583", + "759972051319140", + "759972432426724", + "759972545991397", + "759972270510579", + "759972107604345", + "760353358762258", + "760353370784739", + "759972005045778", + "759971951782615", + "760354238838872", + "759971848298778", + "759971899962466", + "759972695406835", + "760354201137939", + "759972378810991", + "759972586384002", + "759973067945793", + "760353372233103", + "759970895945609", + "760358123735957", + "761858291968910", + "761807542325030", + "760961254322316", + "762477170260262", + "762295918132248", + "762237672060652", + "761858211139284", + "762941637855962", + "762941584284511", + "761808255104338", + "761858011206868", + "762928154263486", + "762658275077583", + "760765586953427", + "762941373378458", + "761860307483525", + "763444820135647", + "762295986750224", + "762941691439629", + "761818941407193", + "763877250938021", + "763574531068892", + "763877196713494", + "763879425886186", + "763478961261387", + "763529207082055", + "763454275602361", + "763877347112986", + "763899542751244", + "763938664793385", + "763976238932410", + "763976127391221", + "763908632298791", + "763904947351082", + "763904856308950", + "763978572723857", + "763910715862653", + "763975977681622", + "763989323641528", + "763985961279749", + "763983475557042", + "764453314028098", + "764448533013699", + "764448523798789", + "766181126764911", + "767321251748842", + "766291456879801" + ], + "plotStarts": [ + "743356388661755", + "743361211817145", + "743715232207665", + "743356672709419", + "743360634868902", + "743722931420691", + "743361558991435", + "743721114148315", + "743723263763777", + "743359427829722", + "743719327158832", + "743630495498696", + "743717465912681", + "743850150895666", + "743360044452561", + "743474498214916", + "743600698167087", + "743850188159903", + "743357477641655", + "743828125898584", + "743724841468431", + "743358222242706", + "743539482459035", + "743718396440568", + "743655500242803", + "743720227259710", + "743683339211263", + "743716535470658", + "743724247539524", + "743724754699738", + "743758351384781", + "743715386299109", + "743511743622993", + "744149549341165", + "743850188825560", + "743715742909728", + "743850107713372", + "743850188407614", + "743724657401075", + "743970693645298", + "743575662666260", + "743358858802512", + "759846598641700", + "759845499012078", + "759820979493945", + "759848782950665", + "759849170829070", + "759846192334006", + "759845097673944", + "759846954659102", + "759847586635496", + "759849350525552", + "759846134413094", + "759849070462313", + "759849282436810", + "759849367566775", + "759847763930840", + "759846649222491", + "759794285432848", + "759849642570643", + "759849606957706", + "759847653594023", + "759822114721445", + "759848034600283", + "759846162136020", + "759845257599860", + "759775201252262", + "759849567176346", + "759844955449185", + "759845419086397", + "759848981304400", + "759846623834951", + "759849442801928", + "759793466228152", + "759845578243712", + "759847745091804", + "759849099543704", + "759845339211703", + "759845895004270", + "759821772251897", + "759849495684737", + "759669831627157", + "759849316392935", + "759773643882684", + "759847698544603", + "759849045125533", + "759821049929135", + "759849396878147", + "759849207340352", + "759845766640518", + "759821114749502", + "759848595655012", + "759761297451604", + "759845651534881", + "759846350575818", + "759849157372869", + "759848808246117", + "759846058683685", + "759845176024847", + "759845823617743", + "759849128665876", + "759849387840672", + "759849248584132", + "759846474502111", + "759845017811534", + "759868363900948", + "759849734651926", + "759935079369547", + "759865634502895", + "759864451656441", + "759868472460443", + "759866238288974", + "759940035846319", + "759864923379852", + "759866210354501", + "759865189244823", + "759864968712520", + "759868225980551", + "759864623518170", + "759865849406376", + "759868271823279", + "759849923422103", + "759865028070737", + "759864666970344", + "759944631176184", + "759865401309329", + "759849688360602", + "759849966845504", + "759868366522237", + "759935291251999", + "759864377428188", + "759864983659561", + "759865309352063", + "759849877025014", + "759940529740783", + "759940575669691", + "759940703254106", + "759849781068480", + "759865588793765", + "759866099136204", + "759940324571976", + "759865073912287", + "759865673264324", + "759864839501675", + "759864497019333", + "759865111403591", + "759868180376858", + "759865363704424", + "759864712294540", + "759940458415728", + "759864794252615", + "759864878053872", + "759940371695183", + "759944524831820", + "759940115261530", + "759865502784387", + "759864364377919", + "759849897637984", + "759868420231465", + "759865655175792", + "759935217066027", + "759940486880466", + "759935244157971", + "759940220149474", + "759935033618046", + "759864542405730", + "759935171141704", + "759868317837719", + "759864639547896", + "759865545775991", + "759944301288885", + "759865235204630", + "759940553538875", + "759866265757869", + "759849827548506", + "759849856458453", + "759940431848469", + "759944876402388", + "759970096328147", + "759968303751614", + "759970009257032", + "759969922263950", + "759945236861297", + "759968390231662", + "759969313128560", + "759947353926358", + "759945663978694", + "759968565049433", + "759967359236250", + "759969182444540", + "759970659966091", + "759967315893614", + "760353370648423", + "760353371573213", + "759971792380007", + "759971171933682", + "759972626954274", + "759972684661677", + "760353369656132", + "759972063083193", + "759972656946269", + "760357963287583", + "759972051319140", + "759972432426724", + "759972545991397", + "759972270510579", + "759972107604345", + "760353358762258", + "760353370784739", + "759972005045778", + "759971951782615", + "760354238838872", + "759971848298778", + "759971899962466", + "759972695406835", + "760354201137939", + "759972378810991", + "759972586384002", + "759973067945793", + "760353372233103", + "759970895945609", + "760358123735957", + "761858291968910", + "761807542325030", + "760961254322316", + "762477170260262", + "762295918132248", + "762237672060652", + "761858211139284", + "762941637855962", + "762941584284511", + "761808255104338", + "761858011206868", + "762928154263486", + "762658275077583", + "760765586953427", + "762941373378458", + "761860307483525", + "763444820135647", + "762295986750224", + "762941691439629", + "761818941407193", + "763877250938021", + "763574531068892", + "763877196713494", + "763879425886186", + "763478961261387", + "763529207082055", + "763454275602361", + "763877347112986", + "763899542751244", + "763938664793385", + "763976238932410", + "763976127391221", + "763908632298791", + "763904947351082", + "763904856308950", + "763978572723857", + "763910715862653", + "763975977681622", + "763989323641528", + "763985961279749", + "763983475557042", + "764453314028098", + "764448533013699", + "764448523798789", + "766181126764911", + "767321251748842", + "766291456879801" + ], + "plotEnds": [ + "743356672709419", + "743361558991435", + "743715386299109", + "743357477641655", + "743361211817145", + "743723263763777", + "743474498214916", + "743722309717315", + "743724247539524", + "743360044452561", + "743720227259710", + "743655500242803", + "743718396440568", + "743850188159903", + "743360634868902", + "743511743622993", + "743600702406369", + "743850188407614", + "743358222242706", + "743850107713372", + "743758351384781", + "743358858802512", + "743575662666260", + "743719327158832", + "743683339211263", + "743721114148315", + "743684384239393", + "743717465912681", + "743724657401075", + "743724841468431", + "743828125898584", + "743715742909728", + "743539482459035", + "744275435422955", + "743970693645298", + "743716535470658", + "743850150895666", + "743850188825560", + "743724754699738", + "744149549341165", + "743584914211138", + "743359427829722", + "759846623834951", + "759845578243712", + "759821049929135", + "759848808246117", + "759849207340352", + "759846350575818", + "759845176024847", + "759847586635496", + "759847653594023", + "759849367566775", + "759846162136020", + "759849099543704", + "759849316392935", + "759849387840672", + "759848034600283", + "759846649887836", + "759820898656942", + "759849688360602", + "759849642570643", + "759847698544603", + "759844901514523", + "759848400175498", + "759846192334006", + "759845339211703", + "759793466228152", + "759849606957706", + "759845017811534", + "759845499012078", + "759849045125533", + "759846649222491", + "759849495684737", + "759793466361829", + "759845651534881", + "759847763930840", + "759849128665876", + "759845419086397", + "759845970911102", + "759822114721445", + "759849567176346", + "759761297068193", + "759849350525552", + "759775201252262", + "759847745091804", + "759849070462313", + "759821114749502", + "759849442801928", + "759849248584132", + "759845823617743", + "759821429891748", + "759848782950665", + "759773643882684", + "759845712799584", + "759846474502111", + "759849170829070", + "759848981304400", + "759846134413094", + "759845257599860", + "759845895004270", + "759849157372869", + "759849396878147", + "759849282436810", + "759846598641700", + "759845097673944", + "759868366522237", + "759849781068480", + "759935125236365", + "759865655175792", + "759864497019333", + "759935033618046", + "759866265757869", + "759940115261530", + "759864968712520", + "759866238288974", + "759865235204630", + "759864983659561", + "759868271823279", + "759864639547896", + "759866099136204", + "759868317837719", + "759849966845504", + "759865073912287", + "759864712294540", + "759944631617600", + "759865449369451", + "759849734651926", + "759849978560381", + "759868420231465", + "759940012120851", + "759864406377749", + "759865028070737", + "759865363704424", + "759849897637984", + "759940553538875", + "759940595592986", + "759940800175842", + "759849827548506", + "759865634502895", + "759866210354501", + "759940371695183", + "759865111403591", + "759865849406376", + "759864878053872", + "759864542405730", + "759865147227268", + "759868225980551", + "759865401309329", + "759864757676067", + "759940486880466", + "759864839501675", + "759864923379852", + "759940393217964", + "759944619765922", + "759940220149474", + "759865544782499", + "759864377428188", + "759849907168404", + "759868472460443", + "759865673264324", + "759935244157971", + "759940503415698", + "759935291251999", + "759940324571976", + "759935079369547", + "759864586657374", + "759935217066027", + "759868363900948", + "759864666970344", + "759865588793765", + "759944450213180", + "759865263825653", + "759940575669691", + "759868180376858", + "759849856458453", + "759849877025014", + "759940458415728", + "759944963133585", + "759970183422288", + "759968390231662", + "759970096328147", + "759970009257032", + "759945236898415", + "759968477551165", + "759969391981569", + "759967002196227", + "759945697126264", + "759968622494844", + "759967432417085", + "759969268879963", + "759970667003745", + "759967359236250", + "760353370784739", + "760353372233103", + "759971848298778", + "759971275765356", + "759972656946269", + "759972695406835", + "760353370648423", + "759972107604345", + "759972684661677", + "760358015808387", + "759972063083193", + "759972486436407", + "759972586384002", + "759972323281795", + "759972161919679", + "760353369656132", + "760353370932416", + "759972051319140", + "759972005045778", + "760357512160486", + "759971899962466", + "759971951782615", + "759972749054172", + "760354204355953", + "759972432426724", + "759972626954274", + "759973111455038", + "760353418325910", + "759970984286242", + "760470665658443", + "761860246451109", + "761808254646701", + "761807540280731", + "762658275077583", + "762295986750224", + "762295064062834", + "761858264676918", + "762941691439629", + "762941637855962", + "761818940422306", + "761858063237895", + "762940872607458", + "762839409673019", + "760961254322316", + "762941435120911", + "761861105640928", + "763454272407770", + "762477170260262", + "763444820135647", + "761857611272333", + "763877305809564", + "763613507351492", + "763877250938021", + "763898344398867", + "763529207082055", + "763574531068892", + "763478961261387", + "763877400753507", + "763903829825521", + "763939554575290", + "763976306153164", + "763976182271147", + "763910556401834", + "763908619462613", + "763904947351082", + "763981005309782", + "763914820231283", + "763976063428196", + "764056285307640", + "763989323641528", + "763985909132064", + "764454200747569", + "764451708497435", + "764448533013699", + "766291456879801", + "767502219582512", + "766434901228015" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "116127823", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "63462001011", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "3180" + ], + "plotIds": [ + "634031481420456", + "647388734023467", + "721225229970053", + "741007335527824", + "743270084189585" + ], + "plotStarts": [ + "634031481420456", + "647388734023467", + "721225229970053", + "741007335527824", + "743270084189585" + ], + "plotEnds": [ + "634034652140320", + "647398482803133", + "721280717882254", + "741056183995411", + "743314353435951" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1893551014", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "23959976085", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotStarts": [], + "plotEnds": [] + } +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/ethContractAccounts.json b/scripts/beanstalkShipments/data/ethContractAccounts.json new file mode 100644 index 00000000..512c4857 --- /dev/null +++ b/scripts/beanstalkShipments/data/ethContractAccounts.json @@ -0,0 +1,24 @@ +[ + "0x0245934a930544c7046069968eb4339b03addfcf", + "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", + "0x251fae8f687545bdd462ba4fcdd7581051740463", + "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "0x735cab9b02fd153174763958ffb4e0a971dd7f29", + "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", + "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", + "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", + "0x83a758a6a24fe27312c1f8bda7f3277993b64783", + "0x8525664820c549864982d4965a41f83a7d26af58", + "0x9008d19f58aabd9ed0d60971565aa8510560ab41", + "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "0xaa420e97534ab55637957e868b658193b112a551", + "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", + "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", + "0xf33332d233de8b6b1340039c9d5f3b2a04823d93" +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 60deb706..de9a0ed2 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -46,16 +46,40 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru console.log("āœ… ShipmentPlanner deployed to:", shipmentPlannerContract.address); //////////////////////////// Contract Payback Distributor //////////////////////////// - // console.log("\nšŸ“¦ Deploying ContractPaybackDistributor..."); - // const contractPaybackDistributorFactory = await ethers.getContractFactory("ContractPaybackDistributor", account); - // const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy(); - // await contractPaybackDistributorContract.deployed(); - // console.log("āœ… ContractPaybackDistributor deployed to:", contractPaybackDistributorContract.address); + console.log("\nšŸ“¦ Deploying ContractPaybackDistributor..."); + const contractPaybackDistributorFactory = await ethers.getContractFactory("ContractPaybackDistributor", account); + + // Load contract accounts and initialization data + const contractAccountsPath = "./scripts/beanstalkShipments/data/ethContractAccounts.json"; + const initDataPath = "./scripts/beanstalkShipments/data/ethAccountDistributorInit.json"; + + let contractAccounts = []; + let initData = []; + + try { + contractAccounts = JSON.parse(fs.readFileSync(contractAccountsPath)); + initData = JSON.parse(fs.readFileSync(initDataPath)); + console.log(`šŸ“Š Loaded ${contractAccounts.length} contract accounts for initialization`); + } catch (error) { + console.log("āš ļø No contract data found - deploying with empty initialization"); + console.log(" Run parsers with includeContracts=true to generate contract data"); + } + + const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy( + initData, // AccountData[] memory _accountsData + contractAccounts, // address[] memory _contractAccounts + PINTO, // address _pintoProtocol + siloPaybackContract.address, // address _siloPayback + barnPaybackContract.address // address _barnPayback + ); + await contractPaybackDistributorContract.deployed(); + console.log("āœ… ContractPaybackDistributor deployed to:", contractPaybackDistributorContract.address); return { siloPaybackContract, barnPaybackContract, - shipmentPlannerContract + shipmentPlannerContract, + contractPaybackDistributorContract }; } diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 6605673a..5562285b 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -1,6 +1,7 @@ const parseBarnData = require('./parseBarnData'); const parseFieldData = require('./parseFieldData'); const parseSiloData = require('./parseSiloData'); +const parseContractData = require('./parseContractData'); /** * Main parser orchestrator that runs all parsers @@ -28,11 +29,17 @@ function parseAllExportData(parseContracts = false) { console.log('-'.repeat(30)); results.silo = parseSiloData(parseContracts); + // Parse contract data for distributor initialization + console.log('šŸ—ļø CONTRACT DISTRIBUTOR DATA'); + console.log('-'.repeat(30)); + results.contracts = parseContractData(parseContracts); + console.log('šŸ“‹ PARSING SUMMARY'); console.log('-'.repeat(30)); console.log(`šŸ“Š Barn: ${results.barn.stats.fertilizerIds} fertilizer IDs, ${results.barn.stats.accountEntries} account entries`); console.log(`šŸ“Š Field: ${results.field.stats.totalAccounts} accounts, ${results.field.stats.totalPlots} plots`); console.log(`šŸ“Š Silo: ${results.silo.stats.totalAccounts} accounts with BDV`); + console.log(`šŸ“Š Contracts: ${results.contracts.stats.totalContracts} contracts for distributor`); console.log(`šŸ“Š Include contracts: ${parseContracts}`); return results; @@ -47,5 +54,6 @@ module.exports = { parseBarnData, parseFieldData, parseSiloData, + parseContractData, parseAllExportData }; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js new file mode 100644 index 00000000..7c5cf41e --- /dev/null +++ b/scripts/beanstalkShipments/parsers/parseContractData.js @@ -0,0 +1,204 @@ +const fs = require('fs'); +const path = require('path'); + +/** + * Parses contract data from all export files to generate initialization data for ContractPaybackDistributor + * + * Expected output format: + * ethAccountDistributorInit.json: Array of AccountData objects for contract initialization + * + * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + */ +function parseContractData(includeContracts = false) { + if (!includeContracts) { + console.log('āš ļø Contract parsing disabled - skipping parseContractData'); + return { + contractAccounts: [], + accountData: [], + stats: { + totalContracts: 0, + includeContracts: false + } + }; + } + + console.log('šŸ¢ Parsing contract data for ContractPaybackDistributor initialization...'); + + // Input paths for all export files + const siloInputPath = path.join(__dirname, '../data/exports/beanstalk_silo.json'); + const barnInputPath = path.join(__dirname, '../data/exports/beanstalk_barn.json'); + const fieldInputPath = path.join(__dirname, '../data/exports/beanstalk_field.json'); + + // Output paths + const outputAccountsPath = path.join(__dirname, '../data/ethContractAccounts.json'); + const outputInitPath = path.join(__dirname, '../data/ethAccountDistributorInit.json'); + + // Load all export data + console.log('šŸ“ Loading export data...'); + const siloData = JSON.parse(fs.readFileSync(siloInputPath, 'utf8')); + const barnData = JSON.parse(fs.readFileSync(barnInputPath, 'utf8')); + const fieldData = JSON.parse(fs.readFileSync(fieldInputPath, 'utf8')); + + // Extract ethContracts from each file + const siloEthContracts = siloData.ethContracts || {}; + const barnEthContracts = barnData.ethContracts || {}; + const fieldEthContracts = fieldData.ethContracts || {}; + + console.log(`šŸ“‹ Found ethContracts - Silo: ${Object.keys(siloEthContracts).length}, Barn: ${Object.keys(barnEthContracts).length}, Field: ${Object.keys(fieldEthContracts).length}`); + + // Get all unique contract addresses and normalize to lowercase + const allContractAddressesRaw = [ + ...Object.keys(siloEthContracts), + ...Object.keys(barnEthContracts), + ...Object.keys(fieldEthContracts) + ]; + + // Normalize addresses to lowercase and deduplicate + const allContractAddresses = [...new Set(allContractAddressesRaw.map(addr => addr.toLowerCase()))]; + + console.log(`šŸ“Š Total raw contract addresses: ${allContractAddressesRaw.length}`); + console.log(`šŸ“Š Total unique normalized addresses: ${allContractAddresses.length}`); + + // Build contract data for each address, merging data from different cases + const contractAccounts = []; + const accountDataArray = []; + + for (const normalizedAddress of allContractAddresses) { + console.log(`\nšŸ” Processing contract: ${normalizedAddress}`); + + // Initialize AccountData structure + const accountData = { + whitelisted: true, + claimed: false, + siloPaybackTokensOwed: "0", + fertilizerIds: [], + fertilizerAmounts: [], + plotIds: [], + plotStarts: [], + plotEnds: [] + }; + + // Helper function to find contract data by normalized address + const findContractData = (contractsObj) => { + const entries = Object.entries(contractsObj); + return entries.filter(([addr]) => addr.toLowerCase() === normalizedAddress); + }; + + // Process silo data - merge all matching addresses + const siloEntries = findContractData(siloEthContracts); + let totalSiloBdv = BigInt(0); + for (const [originalAddr, siloData] of siloEntries) { + if (siloData && siloData.bdvAtRecapitalization && siloData.bdvAtRecapitalization.total) { + totalSiloBdv += BigInt(siloData.bdvAtRecapitalization.total); + console.log(` šŸ’° Merged silo BDV from ${originalAddr}: ${siloData.bdvAtRecapitalization.total}`); + } + } + if (totalSiloBdv > 0n) { + accountData.siloPaybackTokensOwed = totalSiloBdv.toString(); + } + + // Process barn data - merge all matching addresses + const barnEntries = findContractData(barnEthContracts); + const fertilizerMap = new Map(); // fertId -> total amount + for (const [originalAddr, barnData] of barnEntries) { + if (barnData && barnData.beanFert) { + for (const [fertId, amount] of Object.entries(barnData.beanFert)) { + const currentAmount = fertilizerMap.get(fertId) || BigInt(0); + fertilizerMap.set(fertId, currentAmount + BigInt(amount)); + } + console.log(` 🌱 Merged fertilizer data from ${originalAddr}: ${Object.keys(barnData.beanFert).length} entries`); + } + } + + // Convert fertilizer map to arrays + for (const [fertId, totalAmount] of fertilizerMap) { + accountData.fertilizerIds.push(fertId); + accountData.fertilizerAmounts.push(totalAmount.toString()); + } + + // Process field data - merge all matching addresses + const fieldEntries = findContractData(fieldEthContracts); + const plotMap = new Map(); // plotIndex -> total pods + for (const [originalAddr, fieldData] of fieldEntries) { + if (fieldData) { + for (const [plotIndex, pods] of Object.entries(fieldData)) { + const currentPods = plotMap.get(plotIndex) || BigInt(0); + plotMap.set(plotIndex, currentPods + BigInt(pods)); + } + console.log(` 🌾 Merged field data from ${originalAddr}: ${Object.keys(fieldData).length} entries`); + } + } + + // Convert plot map to arrays + for (const [plotIndex, totalPods] of plotMap) { + // For ContractPaybackDistributor, we need plotIds, plotStarts, and plotEnds + // Since we have plotIndex and total pods, we set start=plotIndex and end=plotIndex+pods + const plotStart = plotIndex; + const plotEnd = (BigInt(plotIndex) + totalPods).toString(); + + accountData.plotIds.push(plotIndex); + accountData.plotStarts.push(plotStart); + accountData.plotEnds.push(plotEnd); + } + + // Only include contracts that have some assets + const hasAssets = accountData.siloPaybackTokensOwed !== "0" || + accountData.fertilizerIds.length > 0 || + accountData.plotIds.length > 0; + + if (hasAssets) { + contractAccounts.push(normalizedAddress); + accountDataArray.push(accountData); + console.log(` āœ… Contract included with merged assets`); + console.log(` - Silo BDV: ${accountData.siloPaybackTokensOwed}`); + console.log(` - Fertilizers: ${accountData.fertilizerIds.length}`); + console.log(` - Plots: ${accountData.plotIds.length}`); + } else { + console.log(` āš ļø Contract has no assets - skipping`); + } + } + + // Sort by contract address for deterministic output + const sortedData = contractAccounts + .map((address, index) => ({ address, data: accountDataArray[index] })) + .sort((a, b) => a.address.localeCompare(b.address)); + + const finalContractAccounts = sortedData.map(item => item.address); + const finalAccountData = sortedData.map(item => item.data); + + // Calculate statistics + const totalContracts = finalContractAccounts.length; + const totalSiloTokens = finalAccountData.reduce((sum, data) => sum + BigInt(data.siloPaybackTokensOwed), 0n); + const totalFertilizers = finalAccountData.reduce((sum, data) => sum + data.fertilizerIds.length, 0); + const totalPlots = finalAccountData.reduce((sum, data) => sum + data.plotIds.length, 0); + + // Write output files + console.log('\nšŸ’¾ Writing contract accounts file...'); + fs.writeFileSync(outputAccountsPath, JSON.stringify(finalContractAccounts, null, 2)); + + console.log('šŸ’¾ Writing distributor initialization file...'); + fs.writeFileSync(outputInitPath, JSON.stringify(finalAccountData, null, 2)); + + console.log('\nāœ… Contract data parsing complete!'); + console.log(` šŸ“Š Contracts with assets: ${totalContracts}`); + console.log(` šŸ“Š Total silo tokens owed: ${totalSiloTokens.toString()}`); + console.log(` šŸ“Š Total fertilizer entries: ${totalFertilizers}`); + console.log(` šŸ“Š Total plot entries: ${totalPlots}`); + console.log(` šŸ“Š Include contracts: ${includeContracts}`); + console.log(''); + + return { + contractAccounts: finalContractAccounts, + accountData: finalAccountData, + stats: { + totalContracts, + totalSiloTokens: totalSiloTokens.toString(), + totalFertilizers, + totalPlots, + includeContracts + } + }; +} + +// Export for use in other scripts +module.exports = parseContractData; \ No newline at end of file diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index ff1bb6c8..21937f23 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -24,7 +24,7 @@ async function populateBeanstalkField({ diamondAddress, account, verbose, mockDa const rawPlotData = JSON.parse(fs.readFileSync(plotsPath)); // Split into chunks for processing - const targetEntriesPerChunk = 500; + const targetEntriesPerChunk = 300; const plotChunks = splitEntriesIntoChunksOptimized(rawPlotData, targetEntriesPerChunk); console.log(`Starting to process ${plotChunks.length} chunks...`); From cd65052a2543f7c68c27eede37353f15930011b9 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 21 Aug 2025 17:44:55 +0300 Subject: [PATCH 053/270] contract distribution tests, passing shimpment tests, l1 sender deployment --- .../ContractPaybackDistributor.sol | 46 ++- hardhat.config.js | 29 +- .../BeanstalkShipments.t.sol | 93 +++-- .../ContractDistribution.t.sol | 351 ++++++++++++++++++ 4 files changed, 483 insertions(+), 36 deletions(-) create mode 100644 test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 923d7628..677b2f48 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -10,6 +10,7 @@ import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; +import {IERC1155Receiver} from "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol"; /** * @title ContractPaybackDistributor @@ -30,7 +31,7 @@ import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger. * received, calls claimFromMessage and receive their assets in an address of their choice * */ -contract ContractPaybackDistributor is ReentrancyGuard { +contract ContractPaybackDistributor is ReentrancyGuard, IERC1155Receiver { using SafeERC20 for IERC20; // Repayment field id @@ -91,9 +92,10 @@ contract ContractPaybackDistributor is ReentrancyGuard { /** * @param _accountsData Array of account data for whitelisted contracts + * @param _contractAccounts Array of contract account addresses to whitelist * @param _pintoProtocol The pinto protocol address - * @param _siloPayback The silo payback contract address - * @param _barnPayback The barn payback contract address + * @param _siloPayback The silo payback token address + * @param _barnPayback The barn payback token address */ constructor( AccountData[] memory _accountsData, @@ -183,4 +185,42 @@ contract ContractPaybackDistributor is ReentrancyGuard { ); } } + + //////////////////////////// ERC1155Receiver //////////////////////////// + + /** + * @dev For this contract to receive minted fertilizers from the barn payback contract, + * it must implement the IERC1155Receiver interface. + */ + function onERC1155Received( + address operator, + address from, + uint256 id, + uint256 value, + bytes calldata data + ) external returns (bytes4) { + return this.onERC1155Received.selector; + } + + /** + * @dev For this contract to receive minted fertilizers from the barn payback contract, + * it must implement the IERC1155Receiver interface. + */ + function onERC1155BatchReceived( + address operator, + address from, + uint256[] calldata ids, + uint256[] calldata values, + bytes calldata data + ) external returns (bytes4) { + return this.onERC1155BatchReceived.selector; + } + + /** + * @dev For this contract to receive minted fertilizers from the barn payback contract, + * it must implement the IERC1155Receiver interface. + */ + function supportsInterface(bytes4 interfaceId) external view returns (bool) { + return interfaceId == type(IERC1155Receiver).interfaceId; + } } diff --git a/hardhat.config.js b/hardhat.config.js index 32aea818..8322ffbf 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -23,6 +23,7 @@ const { PINTO_DIAMOND_DEPLOYER, BEANSTALK_SHIPMENTS_DEPLOYER, BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR, + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, L2_PCM, BASE_BLOCK_TIME, PINTO_WETH_WELL_BASE, @@ -2097,7 +2098,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi } // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field - console.log("šŸ›¤ļø STEP 2: ADDING NEW TEMPREPAYMENTFIELD FACET TO THE PINTO DIAMOND"); + console.log("šŸ›¤ļø STEP 2: ADDING NEW TEMP_REPAYMENT_FIELD_FACET TO THE PINTO DIAMOND"); console.log("-".repeat(50)); await upgradeWithNewFacets({ @@ -2194,6 +2195,32 @@ task( }); }); +// As a backup solution, ethAccounts will be able to send a message on the L1 to claim their assets on the L2 +// from the L2 ContractPaybackDistributor contract. We deploy the L1ContractMessenger contract on the L1 +// and whitelist the ethAccounts that are eligible to claim their assets. +task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction(async (taskArgs) => { + const mock = true; + let deployer; + if (mock) { + deployer = await impersonateSigner(L2_PCM); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + // read the contract accounts from the json file + const contractAccounts = JSON.parse(fs.readFileSync("./scripts/beanstalkShipments/data/ethContractAccounts.json")); + + const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); + const l1Messenger = await L1Messenger.deploy( + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, + contractAccounts + ); + await l1Messenger.deployed(); + + console.log("L1ContractMessenger deployed to:", l1Messenger.address); +}); + //////////////////////// CONFIGURATION //////////////////////// module.exports = { diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 9e6ddd96..3b2a1f03 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -94,6 +94,67 @@ contract BeanstalkShipmentsTest is TestHelper { // - make sure that at any point all users can claim their rewards pro rata function setUp() public {} + //////////////////////// SHIPMENT DISTRIBUTION //////////////////////// + + // note: test distribution normal case, well above 1billion supply + function test_shipmentDistributionKicksInAtCorrectSupply() public { + // get the total delta b before sunrise aka the expected pinto mints + int256 totalDeltaBBefore = pinto.totalDeltaB(); + // 1% of the total delta b shiped to each payback contract, totalDeltaBBefore here is positive + uint256 expectedPintoMints = uint256(totalDeltaBBefore) * 0.01e18 / 1e18; + + // supply is 1,010bil, sunrise is called and new pintos are distributed + increaseSupplyAndDistribute(); + + /////////// PAYBACK FIELD /////////// + + // assert that: 1 % of mints went to the payback field so harvestable index must have increased + assertGt( + pinto.harvestableIndex(PAYBACK_FIELD_ID), + 0, + "Harvestable index must have increased" + ); + // assert the harvestable index is within 0.1% of the expected pinto mints shiped to the payback field + assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.001e18); + + /////////// SILO PAYBACK /////////// + + // assert that: 1 % of mints went to the silo so silo payback balance of pinto must have increased + assertGt( + IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), + 0, + "Silo payback balance must have increased" + ); + // assert the silo payback balance is within 0.1% of the expected pinto mints shipped to the silo + assertApproxEqRel(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), expectedPintoMints, 0.001e18); + + /////////// BARN PAYBACK /////////// + + // assert that: 1 % of mints went to the barn so barn payback balance of pinto must have increased + assertGt( + IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), + 0, + "Barn payback balance must have increased" + ); + // assert the barn payback balance is within 0.1% of the expected pinto mints shipped to the barn + assertApproxEqRel(IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), expectedPintoMints, 0.001e18); + } + + // note: test distribution at the edge, ~1bil supply, asserts the scaling is correct + function test_shipmentDistributionScaledAtSupplyEdge() public {} + + // note: test when a payback is done, + // replace the payback contracts with mock contracts via etch to return 0 on silo and barn payback remaining calls + // or use vm.mockCall to return 0 on silo and barn payback remaining calls + function test_shipmentDistributionFinishesWhenNoRemainingPayback() public {} + + // note: test that all users can claim their rewards at any point + // iterate through the accounts array of silo and fert payback and claim the rewards for each + // silo + function test_siloPaybackClaimShipmentDistribution() public {} + // barn + function test_barnPaybackClaimShipmentDistribution() public {} + //////////////////////// STATE VERIFICATION //////////////////////// function test_beanstalkShipmentRoutes() public { @@ -368,38 +429,6 @@ contract BeanstalkShipmentsTest is TestHelper { } } - //////////////////////// SHIPMENT DISTRIBUTION //////////////////////// - - // note: test distribution normal case, well above 1billion supply - function test_shipmentDistributionKicksInAtCorrectSupply() public { - // supply is 1,010bil, sunrise is called and new pintos are distributed - increaseSupplyAndDistribute(); - - // assert that: 1 % of mints went to the payback field so harvestable index must have increased - assertGt(pinto.harvestableIndex(PAYBACK_FIELD_ID), 0, "Harvestable index must have increased"); - - // assert that: 1 % of mints went to the silo so silo payback balance of pinto must have increased - assertGt(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), 0, "Silo payback balance must have increased"); - - // assert that: 1 % of mints went to the barn so barn payback balance of pinto must have increased - assertGt(IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), 0, "Barn payback balance must have increased"); - } - - // note: test distribution at the edge, ~1bil supply, asserts the scaling is correct - function test_shipmentDistributionScaledAtSupplyEdge() public {} - - // note: test when a payback is done, - // replace the payback contracts with mock contracts via etch to return 0 on silo and barn payback remaining calls - // or use vm.mockCall to return 0 on silo and barn payback remaining calls - function test_shipmentDistributionFinishesWhenNoRemainingPayback() public {} - - // note: test that all users can claim their rewards at any point - // iterate through the accounts array of silo and fert payback and claim the rewards for each - // silo - function test_siloPaybackClaimShipmentDistribution() public {} - // barn - function test_barnPaybackClaimShipmentDistribution() public {} - //////////////////// Helper Functions //////////////////// function searchPropertyData( diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol new file mode 100644 index 00000000..9bf3d992 --- /dev/null +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -0,0 +1,351 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import "forge-std/Test.sol"; +import {TestHelper} from "test/foundry/utils/TestHelper.sol"; +import {SiloPayback} from "contracts/ecosystem/beanstalkShipments/SiloPayback.sol"; +import {BarnPayback} from "contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol"; +import {BeanstalkFertilizer} from "contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol"; +import {MockToken} from "contracts/mocks/MockToken.sol"; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; +import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {L1ContractMessenger} from "contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol"; +import {FieldFacet} from "contracts/beanstalk/facets/field/FieldFacet.sol"; +import {MockFieldFacet} from "contracts/mocks/mockFacets/MockFieldFacet.sol"; +import {ContractPaybackDistributor} from "contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol"; + +contract ContractDistributionTest is TestHelper { + // Constants + uint256 public constant INITIAL_BPF = 1e18; + + uint256 public constant FERTILIZER_ID = 10000000; + uint256 public constant REPAYMENT_FIELD_ID = 1; + + // Deployed contracts + SiloPayback public siloPayback; + BarnPayback public barnPayback; + ContractPaybackDistributor public contractPaybackDistributor; + + // Test users + address public owner = makeAddr("owner"); + address public contractAccount1 = makeAddr("contractAccount1"); // can claim direcly in L2 + address public contractAccount2 = makeAddr("contractAccount2"); // Needs to call the L1ContractMessenger contract + address public receiver1 = makeAddr("receiver1"); + address public receiver2 = makeAddr("receiver2"); + + function setUp() public { + initializeBeanstalkTestState(true, false); + + // deploy the silo and barn payback contracts + deploySiloPayback(); + deployBarnPayback(); + + // set active field to be repayment field + vm.startPrank(deployer); + bs.addField(); + bs.setActiveField(REPAYMENT_FIELD_ID, 100e6); + vm.stopPrank(); + + // Deploy the ContractPaybackDistributor contract + // get the constructor arguments + // Whitelisted contract accounts + address[] memory contractAccounts = new address[](2); + contractAccounts[0] = contractAccount1; + contractAccounts[1] = contractAccount2; + // Account data + contractPaybackDistributor = new ContractPaybackDistributor( + _createAccountData(), + contractAccounts, + address(bs), + address(siloPayback), + address(barnPayback) + ); + + // mint the actual silo payback tokens to the distributor contract: + // 500e6 for contractAccount1 + // 500e6 for contractAccount2 + _mintSiloPaybackTokensToUser(address(contractPaybackDistributor), 500e6); + _mintSiloPaybackTokensToUser(address(contractPaybackDistributor), 500e6); + + // mint the actual barn payback fertilizers to the distributor contract: + BarnPayback.Fertilizers[] memory fertilizerData = _createFertilizerAccountData( + address(contractPaybackDistributor) + ); + vm.prank(owner); + barnPayback.mintFertilizers(fertilizerData); + + // sow 2 plots for the distributor contract + sowPodsForContractPaybackDistributor(100e6); // 0 --> 101e6 place in line + sowPodsForContractPaybackDistributor(100e6); // 101e6 --> 202e6 place in line + + // assert the contract holds the silo and fertilizer tokens + assertEq( + siloPayback.balanceOf(address(contractPaybackDistributor)), + 1000e6, + "siloPayback balance" + ); + // log the fertilizer balance + assertEq( + barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), + 80, + "fertilizer balance" + ); + + // assert the contract holds the two plots + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount( + address(contractPaybackDistributor), + REPAYMENT_FIELD_ID + ); + // Plot 1 + assertEq(plots[0].index, 0, "plot 1 index"); + assertEq(plots[0].pods, 101e6, "plot 1 pods"); + // Plot 2 + assertEq(plots[1].index, 101e6, "plot 2 index"); + assertEq(plots[1].pods, 101e6, "plot 2 pods"); + } + + function test_contractDistributionDirect() public { + vm.startPrank(contractAccount1); + contractPaybackDistributor.claimDirect(receiver1); + vm.stopPrank(); + + // assert the receiver address holds all the assets for receiver1 + assertEq(siloPayback.balanceOf(receiver1), 500e6, "receiver siloPayback balance"); + assertEq(barnPayback.balanceOf(receiver1, FERTILIZER_ID), 40, "receiver fertilizer balance"); + // get the plots from the receiver1 + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(receiver1, REPAYMENT_FIELD_ID); + assertEq(plots.length, 1, "plots length"); + assertEq(plots[0].index, 0, "plot 0 index for receiver1"); + assertEq(plots[0].pods, 101e6, "plot 0 pods for receiver1"); + + // assert the rest of the assets are still in the distributor + assertEq(siloPayback.balanceOf(address(contractPaybackDistributor)), 500e6, "distributor siloPayback balance"); + assertEq(barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), 40, "distributor fertilizer balance"); + + // try to claim again from contractAccount1 + vm.startPrank(contractAccount1); + vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); + contractPaybackDistributor.claimDirect(receiver1); + vm.stopPrank(); + + // Claim for contractAccount2 + vm.startPrank(contractAccount2); + contractPaybackDistributor.claimDirect(receiver2); + vm.stopPrank(); + + // assert the receiver address holds all the assets for receiver2 + assertEq(siloPayback.balanceOf(receiver2), 500e6, "receiver siloPayback balance"); + assertEq(barnPayback.balanceOf(receiver2, FERTILIZER_ID), 40, "receiver fertilizer balance"); + // get the plots from the receiver2 + plots = bs.getPlotsFromAccount(receiver2, REPAYMENT_FIELD_ID); + assertEq(plots.length, 1, "plots length"); + assertEq(plots[0].index, 101e6, "plot 0 index for receiver2"); + assertEq(plots[0].pods, 101e6, "plot 0 pods for receiver2"); + // assert the no more assets are in the distributor + assertEq(siloPayback.balanceOf(address(contractPaybackDistributor)), 0, "distributor siloPayback balance"); + assertEq(barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), 0, "distributor fertilizer balance"); + // plots + plots = bs.getPlotsFromAccount(address(contractPaybackDistributor), REPAYMENT_FIELD_ID); + assertEq(plots.length, 0, "plots length"); + } + + //////////////////////// HELPER FUNCTIONS //////////////////////// + + function deploySiloPayback() public { + // Deploy implementation contract + SiloPayback siloPaybackImpl = new SiloPayback(); + + // Encode initialization data + vm.startPrank(owner); + bytes memory data = abi.encodeWithSelector( + SiloPayback.initialize.selector, + address(BEAN), + address(BEANSTALK) + ); + + // Deploy proxy contract + TransparentUpgradeableProxy siloPaybackProxy = new TransparentUpgradeableProxy( + address(siloPaybackImpl), // implementation + owner, // initial owner + data // initialization data + ); + + vm.stopPrank(); + + // set the silo payback proxy + siloPayback = SiloPayback(address(siloPaybackProxy)); + } + + function _mintSiloPaybackTokensToUser(address user, uint256 amount) internal { + SiloPayback.UnripeBdvTokenData[] memory receipts = new SiloPayback.UnripeBdvTokenData[](1); + receipts[0] = SiloPayback.UnripeBdvTokenData(user, amount); + vm.prank(owner); + siloPayback.batchMint(receipts); + } + + function deployBarnPayback() public { + // Deploy implementation contract + BarnPayback implementation = new BarnPayback(); + + // Prepare system fertilizer state + BeanstalkFertilizer.InitSystemFertilizer + memory initSystemFert = _createInitSystemFertilizerData(); + + // Encode initialization data + vm.startPrank(owner); + bytes memory data = abi.encodeWithSelector( + BarnPayback.initialize.selector, + address(BEAN), + address(BEANSTALK), + initSystemFert + ); + + // Deploy proxy contract + TransparentUpgradeableProxy proxy = new TransparentUpgradeableProxy( + address(implementation), // implementation + owner, // initial owner + data // initialization data + ); + + vm.stopPrank(); + + // Set the barn payback proxy + barnPayback = BarnPayback(address(proxy)); + + // mint beans to the barn payback contract + bean.mint(address(barnPayback), 1000e6); + } + + /** + * @notice Creates mock system fertilizer data for testing + */ + function _createInitSystemFertilizerData() + internal + pure + returns (BeanstalkFertilizer.InitSystemFertilizer memory) + { + uint128[] memory fertilizerIds = new uint128[](1); + fertilizerIds[0] = uint128(FERTILIZER_ID); + + uint256[] memory fertilizerAmounts = new uint256[](1); + fertilizerAmounts[0] = 100; // 100 units of FERT_ID_1 + + return + BeanstalkFertilizer.InitSystemFertilizer({ + fertilizerIds: fertilizerIds, + fertilizerAmounts: fertilizerAmounts, + activeFertilizer: 100, + fertilizedIndex: 0, + unfertilizedIndex: 100000e6, + fertilizedPaidIndex: 0, + fertFirst: uint128(FERTILIZER_ID), // Start of linked list + fertLast: uint128(FERTILIZER_ID), // End of linked list + bpf: 100000, + leftoverBeans: 0 + }); + } + + /** + * @notice Creates mock fertilizer account data for testing + */ + function _createFertilizerAccountData( + address receiver + ) internal view returns (BarnPayback.Fertilizers[] memory) { + BarnPayback.Fertilizers[] memory fertilizerData = new BarnPayback.Fertilizers[](1); + + // FERT_ID_1 holders + BarnPayback.AccountFertilizerData[] + memory accounts = new BarnPayback.AccountFertilizerData[](2); + accounts[0] = BarnPayback.AccountFertilizerData({ + account: receiver, + amount: 40, // 60 to contractAccount1 + lastBpf: 100 + }); + accounts[1] = BarnPayback.AccountFertilizerData({ + account: receiver, + amount: 40, // 40 to contractAccount2 + lastBpf: 100 + }); + + fertilizerData[0] = BarnPayback.Fertilizers({ + fertilizerId: uint128(FERTILIZER_ID), + accountData: accounts + }); + + return fertilizerData; + } + + function _createAccountData() + internal + view + returns (ContractPaybackDistributor.AccountData[] memory) + { + ContractPaybackDistributor.AccountData[] + memory accountData = new ContractPaybackDistributor.AccountData[](2); + // Fertilizer data + uint256[] memory fertilizerIds = new uint256[](1); + fertilizerIds[0] = FERTILIZER_ID; + uint256[] memory fertilizerAmounts1 = new uint256[](1); + fertilizerAmounts1[0] = 40; + uint256[] memory fertilizerAmounts2 = new uint256[](1); + fertilizerAmounts2[0] = 40; + // Plot data for contractAccount1 (plot 0) + uint256[] memory plotIds1 = new uint256[](1); + plotIds1[0] = 0; // 0 --> 101e6 place in line + uint256[] memory plotStarts1 = new uint256[](1); + plotStarts1[0] = 0; // start from the beginning of the plot + uint256[] memory plotEnds1 = new uint256[](1); + plotEnds1[0] = 101e6; // end at the end of the plot + + // Plot data for contractAccount2 (plot 1) + uint256[] memory plotIds2 = new uint256[](1); + plotIds2[0] = 101e6; // 101e6 --> 202e6 place in line + uint256[] memory plotStarts2 = new uint256[](1); + plotStarts2[0] = 0; // start from the beginning of the plot + uint256[] memory plotEnds2 = new uint256[](1); + plotEnds2[0] = 101e6; // end at the end of the plot + // contractAccount1 + accountData[0] = ContractPaybackDistributor.AccountData({ + whitelisted: true, + claimed: false, + siloPaybackTokensOwed: 500e6, + fertilizerIds: fertilizerIds, + fertilizerAmounts: fertilizerAmounts1, + plotIds: plotIds1, + plotStarts: plotStarts1, + plotEnds: plotEnds1 + }); + // contractAccount2 + accountData[1] = ContractPaybackDistributor.AccountData({ + whitelisted: true, + claimed: false, + siloPaybackTokensOwed: 500e6, + fertilizerIds: fertilizerIds, + fertilizerAmounts: fertilizerAmounts2, + plotIds: plotIds2, + plotStarts: plotStarts2, + plotEnds: plotEnds2 + }); + return accountData; + } + + function sowPodsForContractPaybackDistributor(uint256 amount) public { + // max approve bs to contractPaybackDistributor + vm.prank(address(contractPaybackDistributor)); + IERC20(BEAN).approve(address(bs), type(uint256).max); + + bs.setMaxTempE(100e6); // 1% effective temp + season.setSoilE(100e6); + // mint the beans + bean.mint(address(contractPaybackDistributor), amount); + // sow the beans + vm.prank(address(contractPaybackDistributor)); + bs.sow( + amount, // amt + 0, // min temperature + uint8(LibTransfer.From.EXTERNAL) + ); + } +} From 08b83ee981c7c57c57bdebcfd16f87258a59e41c Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 22 Aug 2025 10:45:53 +0300 Subject: [PATCH 054/270] add new export for silo, fixes for contracts, more tests --- .../beanstalkShipments/barn/BarnPayback.sol | 24 +- .../barn/BeanstalkFertilizer.sol | 2 + .../ContractPaybackDistributor.sol | 9 +- contracts/libraries/LibReceiving.sol | 2 +- .../data/ethAccountDistributorInit.json | 984 ++++++------------ .../data/exports/beanstalk_silo.json | 70 +- .../parsers/parseContractData.js | 17 +- .../BeanstalkShipments.t.sol | 71 +- .../ContractDistribution.t.sol | 3 - 9 files changed, 424 insertions(+), 758 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index 7d014a22..8e265581 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -46,6 +46,11 @@ contract BarnPayback is BeanstalkFertilizer { //////////////////////////// Initialization //////////////////////////// + /// @custom:oz-upgrades-unsafe-allow constructor + constructor() { + _disableInitializers(); + } + function initialize( address _pinto, address _pintoProtocol, @@ -56,6 +61,7 @@ contract BarnPayback is BeanstalkFertilizer { /** * @notice Batch mints fertilizers to all accounts and initializes balances. + * @dev We skip contract addresses except for the distributor address that we know implements the ERC-1155Receiver standard. * @param fertilizerIds Array of fertilizer data containing ids, accounts, amounts, and lastBpf. */ function mintFertilizers(Fertilizers[] calldata fertilizerIds) external onlyOwner { @@ -65,19 +71,21 @@ contract BarnPayback is BeanstalkFertilizer { // Mint fertilizer to each holder for (uint j; j < f.accountData.length; j++) { - if (!isContract(f.accountData[j].account)) { - _balances[fid][f.accountData[j].account].amount = f.accountData[j].amount; - _balances[fid][f.accountData[j].account].lastBpf = f.accountData[j].lastBpf; + address account = f.accountData[j].account; + // Mint to non-contract accounts and the distributor address + if (!isContract(account) || account == CONTRACT_DISTRIBUTOR_ADDRESS) { + _balances[fid][account].amount = f.accountData[j].amount; + _balances[fid][account].lastBpf = f.accountData[j].lastBpf; // This line used to call beanstalkMint but amounts and balances are set directly here // We also do not need to perform any checks since we are only minting once. // After deployment, no more beanstalk fertilizers will be distributed - _safeMint(f.accountData[j].account, fid, f.accountData[j].amount, ""); + _safeMint(account, fid, f.accountData[j].amount, ""); emit TransferSingle( msg.sender, address(0), - f.accountData[j].account, + account, fid, f.accountData[j].amount ); @@ -89,9 +97,9 @@ contract BarnPayback is BeanstalkFertilizer { //////////////////////////// Barn Payback Functions //////////////////////////// /** - * @notice Receive Beans at the Barn. Amount of Sprouts become Rinsible. + * @notice Receive Beans at the Barn. Amount of Sprouts become Rinsible. * Copied from LibReceiving.barnReceive on the beanstalk protocol. - * @dev Rounding here can cause up to fert.activeFertilizer / 1e6 Beans to be lost. + * @dev Rounding here can cause up to fert.activeFertilizer / 1e6 Beans to be lost. * Currently there are 17,217,105 activeFertilizer. So up to 17.217 Beans can be lost. * @param shipmentAmount Amount of Beans to receive. */ @@ -133,7 +141,7 @@ contract BarnPayback is BeanstalkFertilizer { // There will be up to activeFertilizer Beans leftover Beans that are not fertilized. // These leftovers will be applied on future Fertilizer receipts. fert.leftoverBeans = amountToFertilize - deltaFertilized; - emit FertilizerRewardsReceived(shipmentAmount); + emit BarnPaybackRewardsReceived(shipmentAmount); } //////////////////////////// Claiming Functions (Update) //////////////////////////// diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 2e2e6de5..709ba7fa 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -24,6 +24,8 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran using LibRedundantMath256 for uint256; using LibRedundantMath128 for uint128; + address public constant CONTRACT_DISTRIBUTOR_ADDRESS = address(0x0000000000000000000000000000000000000000); + event ClaimFertilizer(uint256[] ids, uint256 beans); event BarnPaybackRewardsReceived(uint256 amount); diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 677b2f48..e7178b98 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -51,7 +51,6 @@ contract ContractPaybackDistributor is ReentrancyGuard, IERC1155Receiver { uint256[] fertilizerIds; uint256[] fertilizerAmounts; uint256[] plotIds; - uint256[] plotStarts; uint256[] plotEnds; } @@ -170,17 +169,15 @@ contract ContractPaybackDistributor is ReentrancyGuard, IERC1155Receiver { } // transfer the plots to the receiver - // todo: very unlikely but need to test with - // 0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997 that has a ton of plots - // to make sure gas is not an issue - // todo: may require an allowance to be set on the plots of this contract + // make an empty array of plotStarts since all plot transfers start from the beginning of the plot + uint256[] memory plotStarts = new uint256[](accountData.plotIds.length); if (accountData.plotIds.length > 0) { PINTO_PROTOCOL.transferPlots( address(this), receiver, REPAYMENT_FIELD_ID, accountData.plotIds, - accountData.plotStarts, + plotStarts, accountData.plotEnds ); } diff --git a/contracts/libraries/LibReceiving.sol b/contracts/libraries/LibReceiving.sol index b7f40c8f..5488d3a0 100644 --- a/contracts/libraries/LibReceiving.sol +++ b/contracts/libraries/LibReceiving.sol @@ -89,7 +89,7 @@ library LibReceiving { * @notice Receive Bean at the Field. The next `shipmentAmount` Pods become harvestable. * @dev Amount should never exceed the number of Pods that are not yet Harvestable. * @dev In the case of a payback field, even though it cointains additional data, - * the fieldId is always the first parameter. + * the fieldId is always the first parameter to be decoded. * @param shipmentAmount Amount of Bean to receive. * @param data Encoded uint256 containing the index of the Field to receive the Bean. */ diff --git a/scripts/beanstalkShipments/data/ethAccountDistributorInit.json b/scripts/beanstalkShipments/data/ethAccountDistributorInit.json index 9c4505b5..840d1c6b 100644 --- a/scripts/beanstalkShipments/data/ethAccountDistributorInit.json +++ b/scripts/beanstalkShipments/data/ethAccountDistributorInit.json @@ -6,7 +6,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -16,7 +15,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -26,7 +24,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -58,51 +55,28 @@ "790662167913055", "845186146706783" ], - "plotStarts": [ - "28368015360976", - "38722543672289", - "33106872744841", - "61000878716919", - "72536373875278", - "75995951619880", - "75784287632794", - "217474381338301", - "220144194502828", - "333622810114113", - "378227726508635", - "574387565763701", - "575679606872092", - "626184530707078", - "634034652140320", - "680095721530457", - "767824420446983", - "767978192014986", - "792657494145217", - "790662167913055", - "845186146706783" - ], "plotEnds": [ - "28378015360976", - "38722793672289", - "33113307703346", - "61001668124646", - "72536573875278", - "76001219652173", - "75787223567174", - "217475674512777", - "220191598626128", - "333823566057414", - "378228371871768", - "574443423459533", - "575718099519476", - "626275249578875", - "634036479771284", - "680105835387283", - "767825578892582", - "767979798694986", - "792668647859111", - "790723085295878", - "845248806005547" + "10000000000", + "250000000", + "6434958505", + "789407727", + "200000000", + "5268032293", + "2935934380", + "1293174476", + "47404123300", + "200755943301", + "645363133", + "55857695832", + "38492647384", + "90718871797", + "1827630964", + "10113856826", + "1158445599", + "1606680000", + "11153713894", + "60917382823", + "62659298764" ] }, { @@ -112,7 +86,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -122,7 +95,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -132,7 +104,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -142,7 +113,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -180,43 +150,24 @@ "744819318753537", "760472183068657" ], - "plotStarts": [ - "28553316405699", - "33290510627174", - "32013293099710", - "33262951017861", - "118322555232226", - "180071240663041", - "317859517384357", - "338910099578361", - "444973868346640", - "477195175494445", - "706133899990342", - "726480740731617", - "721409921103392", - "735554122237517", - "729812277370084", - "744819318753537", - "760472183068657" - ], "plotEnds": [ - "28609519766545", - "33291076017861", - "32028293099710", - "33272326017861", - "118328447658504", - "180153233360660", - "318150712799757", - "338983012660405", - "445035429115281", - "477225033066008", - "708854489473588", - "728528152871407", - "725824924442098", - "738068338201632", - "735462721965817", - "744917643589917", - "760543583068610" + "56203360846", + "565390687", + "15000000000", + "9375000000", + "5892426278", + "81992697619", + "291195415400", + "72913082044", + "61560768641", + "29857571563", + "2720589483246", + "2047412139790", + "4415003338706", + "2514215964115", + "5650444595733", + "98324836380", + "71399999953" ] }, { @@ -232,7 +183,6 @@ "51100" ], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -250,15 +200,10 @@ "647175726076112", "720495305315880" ], - "plotStarts": [ - "462646168927", - "647175726076112", - "720495305315880" - ], "plotEnds": [ - "464312835593", - "647192437507145", - "720550874525684" + "1666666666", + "16711431033", + "55569209804" ] }, { @@ -272,7 +217,6 @@ "10" ], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -284,11 +228,8 @@ "plotIds": [ "344618618497376" ], - "plotStarts": [ - "344618618497376" - ], "plotEnds": [ - "344699619094876" + "81000597500" ] }, { @@ -300,11 +241,8 @@ "plotIds": [ "28385711672356" ], - "plotStarts": [ - "28385711672356" - ], "plotEnds": [ - "28389711672356" + "4000000000" ] }, { @@ -314,7 +252,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -324,7 +261,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -336,11 +272,8 @@ "plotIds": [ "31772724860478" ], - "plotStarts": [ - "31772724860478" - ], "plotEnds": [ - "31816265099710" + "43540239232" ] }, { @@ -620,547 +553,276 @@ "767321251748842", "766291456879801" ], - "plotStarts": [ - "743356388661755", - "743361211817145", - "743715232207665", - "743356672709419", - "743360634868902", - "743722931420691", - "743361558991435", - "743721114148315", - "743723263763777", - "743359427829722", - "743719327158832", - "743630495498696", - "743717465912681", - "743850150895666", - "743360044452561", - "743474498214916", - "743600698167087", - "743850188159903", - "743357477641655", - "743828125898584", - "743724841468431", - "743358222242706", - "743539482459035", - "743718396440568", - "743655500242803", - "743720227259710", - "743683339211263", - "743716535470658", - "743724247539524", - "743724754699738", - "743758351384781", - "743715386299109", - "743511743622993", - "744149549341165", - "743850188825560", - "743715742909728", - "743850107713372", - "743850188407614", - "743724657401075", - "743970693645298", - "743575662666260", - "743358858802512", - "759846598641700", - "759845499012078", - "759820979493945", - "759848782950665", - "759849170829070", - "759846192334006", - "759845097673944", - "759846954659102", - "759847586635496", - "759849350525552", - "759846134413094", - "759849070462313", - "759849282436810", - "759849367566775", - "759847763930840", - "759846649222491", - "759794285432848", - "759849642570643", - "759849606957706", - "759847653594023", - "759822114721445", - "759848034600283", - "759846162136020", - "759845257599860", - "759775201252262", - "759849567176346", - "759844955449185", - "759845419086397", - "759848981304400", - "759846623834951", - "759849442801928", - "759793466228152", - "759845578243712", - "759847745091804", - "759849099543704", - "759845339211703", - "759845895004270", - "759821772251897", - "759849495684737", - "759669831627157", - "759849316392935", - "759773643882684", - "759847698544603", - "759849045125533", - "759821049929135", - "759849396878147", - "759849207340352", - "759845766640518", - "759821114749502", - "759848595655012", - "759761297451604", - "759845651534881", - "759846350575818", - "759849157372869", - "759848808246117", - "759846058683685", - "759845176024847", - "759845823617743", - "759849128665876", - "759849387840672", - "759849248584132", - "759846474502111", - "759845017811534", - "759868363900948", - "759849734651926", - "759935079369547", - "759865634502895", - "759864451656441", - "759868472460443", - "759866238288974", - "759940035846319", - "759864923379852", - "759866210354501", - "759865189244823", - "759864968712520", - "759868225980551", - "759864623518170", - "759865849406376", - "759868271823279", - "759849923422103", - "759865028070737", - "759864666970344", - "759944631176184", - "759865401309329", - "759849688360602", - "759849966845504", - "759868366522237", - "759935291251999", - "759864377428188", - "759864983659561", - "759865309352063", - "759849877025014", - "759940529740783", - "759940575669691", - "759940703254106", - "759849781068480", - "759865588793765", - "759866099136204", - "759940324571976", - "759865073912287", - "759865673264324", - "759864839501675", - "759864497019333", - "759865111403591", - "759868180376858", - "759865363704424", - "759864712294540", - "759940458415728", - "759864794252615", - "759864878053872", - "759940371695183", - "759944524831820", - "759940115261530", - "759865502784387", - "759864364377919", - "759849897637984", - "759868420231465", - "759865655175792", - "759935217066027", - "759940486880466", - "759935244157971", - "759940220149474", - "759935033618046", - "759864542405730", - "759935171141704", - "759868317837719", - "759864639547896", - "759865545775991", - "759944301288885", - "759865235204630", - "759940553538875", - "759866265757869", - "759849827548506", - "759849856458453", - "759940431848469", - "759944876402388", - "759970096328147", - "759968303751614", - "759970009257032", - "759969922263950", - "759945236861297", - "759968390231662", - "759969313128560", - "759947353926358", - "759945663978694", - "759968565049433", - "759967359236250", - "759969182444540", - "759970659966091", - "759967315893614", - "760353370648423", - "760353371573213", - "759971792380007", - "759971171933682", - "759972626954274", - "759972684661677", - "760353369656132", - "759972063083193", - "759972656946269", - "760357963287583", - "759972051319140", - "759972432426724", - "759972545991397", - "759972270510579", - "759972107604345", - "760353358762258", - "760353370784739", - "759972005045778", - "759971951782615", - "760354238838872", - "759971848298778", - "759971899962466", - "759972695406835", - "760354201137939", - "759972378810991", - "759972586384002", - "759973067945793", - "760353372233103", - "759970895945609", - "760358123735957", - "761858291968910", - "761807542325030", - "760961254322316", - "762477170260262", - "762295918132248", - "762237672060652", - "761858211139284", - "762941637855962", - "762941584284511", - "761808255104338", - "761858011206868", - "762928154263486", - "762658275077583", - "760765586953427", - "762941373378458", - "761860307483525", - "763444820135647", - "762295986750224", - "762941691439629", - "761818941407193", - "763877250938021", - "763574531068892", - "763877196713494", - "763879425886186", - "763478961261387", - "763529207082055", - "763454275602361", - "763877347112986", - "763899542751244", - "763938664793385", - "763976238932410", - "763976127391221", - "763908632298791", - "763904947351082", - "763904856308950", - "763978572723857", - "763910715862653", - "763975977681622", - "763989323641528", - "763985961279749", - "763983475557042", - "764453314028098", - "764448533013699", - "764448523798789", - "766181126764911", - "767321251748842", - "766291456879801" - ], "plotEnds": [ - "743356672709419", - "743361558991435", - "743715386299109", - "743357477641655", - "743361211817145", - "743723263763777", - "743474498214916", - "743722309717315", - "743724247539524", - "743360044452561", - "743720227259710", - "743655500242803", - "743718396440568", - "743850188159903", - "743360634868902", - "743511743622993", - "743600702406369", - "743850188407614", - "743358222242706", - "743850107713372", - "743758351384781", - "743358858802512", - "743575662666260", - "743719327158832", - "743683339211263", - "743721114148315", - "743684384239393", - "743717465912681", - "743724657401075", - "743724841468431", - "743828125898584", - "743715742909728", - "743539482459035", - "744275435422955", - "743970693645298", - "743716535470658", - "743850150895666", - "743850188825560", - "743724754699738", - "744149549341165", - "743584914211138", - "743359427829722", - "759846623834951", - "759845578243712", - "759821049929135", - "759848808246117", - "759849207340352", - "759846350575818", - "759845176024847", - "759847586635496", - "759847653594023", - "759849367566775", - "759846162136020", - "759849099543704", - "759849316392935", - "759849387840672", - "759848034600283", - "759846649887836", - "759820898656942", - "759849688360602", - "759849642570643", - "759847698544603", - "759844901514523", - "759848400175498", - "759846192334006", - "759845339211703", - "759793466228152", - "759849606957706", - "759845017811534", - "759845499012078", - "759849045125533", - "759846649222491", - "759849495684737", - "759793466361829", - "759845651534881", - "759847763930840", - "759849128665876", - "759845419086397", - "759845970911102", - "759822114721445", - "759849567176346", - "759761297068193", - "759849350525552", - "759775201252262", - "759847745091804", - "759849070462313", - "759821114749502", - "759849442801928", - "759849248584132", - "759845823617743", - "759821429891748", - "759848782950665", - "759773643882684", - "759845712799584", - "759846474502111", - "759849170829070", - "759848981304400", - "759846134413094", - "759845257599860", - "759845895004270", - "759849157372869", - "759849396878147", - "759849282436810", - "759846598641700", - "759845097673944", - "759868366522237", - "759849781068480", - "759935125236365", - "759865655175792", - "759864497019333", - "759935033618046", - "759866265757869", - "759940115261530", - "759864968712520", - "759866238288974", - "759865235204630", - "759864983659561", - "759868271823279", - "759864639547896", - "759866099136204", - "759868317837719", - "759849966845504", - "759865073912287", - "759864712294540", - "759944631617600", - "759865449369451", - "759849734651926", - "759849978560381", - "759868420231465", - "759940012120851", - "759864406377749", - "759865028070737", - "759865363704424", - "759849897637984", - "759940553538875", - "759940595592986", - "759940800175842", - "759849827548506", - "759865634502895", - "759866210354501", - "759940371695183", - "759865111403591", - "759865849406376", - "759864878053872", - "759864542405730", - "759865147227268", - "759868225980551", - "759865401309329", - "759864757676067", - "759940486880466", - "759864839501675", - "759864923379852", - "759940393217964", - "759944619765922", - "759940220149474", - "759865544782499", - "759864377428188", - "759849907168404", - "759868472460443", - "759865673264324", - "759935244157971", - "759940503415698", - "759935291251999", - "759940324571976", - "759935079369547", - "759864586657374", - "759935217066027", - "759868363900948", - "759864666970344", - "759865588793765", - "759944450213180", - "759865263825653", - "759940575669691", - "759868180376858", - "759849856458453", - "759849877025014", - "759940458415728", - "759944963133585", - "759970183422288", - "759968390231662", - "759970096328147", - "759970009257032", - "759945236898415", - "759968477551165", - "759969391981569", - "759967002196227", - "759945697126264", - "759968622494844", - "759967432417085", - "759969268879963", - "759970667003745", - "759967359236250", - "760353370784739", - "760353372233103", - "759971848298778", - "759971275765356", - "759972656946269", - "759972695406835", - "760353370648423", - "759972107604345", - "759972684661677", - "760358015808387", - "759972063083193", - "759972486436407", - "759972586384002", - "759972323281795", - "759972161919679", - "760353369656132", - "760353370932416", - "759972051319140", - "759972005045778", - "760357512160486", - "759971899962466", - "759971951782615", - "759972749054172", - "760354204355953", - "759972432426724", - "759972626954274", - "759973111455038", - "760353418325910", - "759970984286242", - "760470665658443", - "761860246451109", - "761808254646701", - "761807540280731", - "762658275077583", - "762295986750224", - "762295064062834", - "761858264676918", - "762941691439629", - "762941637855962", - "761818940422306", - "761858063237895", - "762940872607458", - "762839409673019", - "760961254322316", - "762941435120911", - "761861105640928", - "763454272407770", - "762477170260262", - "763444820135647", - "761857611272333", - "763877305809564", - "763613507351492", - "763877250938021", - "763898344398867", - "763529207082055", - "763574531068892", - "763478961261387", - "763877400753507", - "763903829825521", - "763939554575290", - "763976306153164", - "763976182271147", - "763910556401834", - "763908619462613", - "763904947351082", - "763981005309782", - "763914820231283", - "763976063428196", - "764056285307640", - "763989323641528", - "763985909132064", - "764454200747569", - "764451708497435", - "764448533013699", - "766291456879801", - "767502219582512", - "766434901228015" + "284047664", + "347174290", + "154091444", + "804932236", + "576948243", + "332343086", + "112939223481", + "1195569000", + "983775747", + "616622839", + "900100878", + "25004744107", + "930527887", + "37264237", + "590416341", + "37245408077", + "4239282", + "247711", + "744601051", + "21981814788", + "33509916350", + "636559806", + "36180207225", + "930718264", + "27838968460", + "886888605", + "1045028130", + "930442023", + "409861551", + "86768693", + "69774513803", + "356610619", + "27738836042", + "125886081790", + "120504819738", + "792560930", + "43182294", + "417946", + "97298663", + "178855695867", + "9251544878", + "569027210", + "25193251", + "79231634", + "70435190", + "25295452", + "36511282", + "158241812", + "78350903", + "631976394", + "66958527", + "17041223", + "27722926", + "29081391", + "33956125", + "20273897", + "270669443", + "665345", + "26613224094", + "45789959", + "35612937", + "44950580", + "22786793078", + "365575215", + "30197986", + "81611843", + "18264975890", + "39781360", + "62362349", + "79925681", + "63821133", + "25387540", + "52882809", + "133677", + "73291169", + "18839036", + "29122172", + "79874694", + "75906832", + "342469548", + "71491609", + "91465441036", + "34132617", + "1557369578", + "46547201", + "25336780", + "64820367", + "45923781", + "41243780", + "56977225", + "315142246", + "187295653", + "12346431080", + "61264703", + "123926293", + "13456201", + "173058283", + "75729409", + "81575013", + "71386527", + "28706993", + "9037475", + "33852678", + "124139589", + "79862410", + "2621289", + "46416554", + "45866818", + "20672897", + "45362892", + "66561157603", + "27468895", + "79415211", + "45332668", + "27934473", + "45959807", + "14947041", + "45842728", + "16029726", + "249729828", + "46014440", + "43423401", + "45841550", + "45324196", + "441416", + "48060122", + "46291324", + "11714877", + "53709228", + "4720868852", + "28949561", + "44411176", + "54352361", + "20612970", + "23798092", + "19923295", + "96921736", + "46480026", + "45709130", + "111218297", + "47123207", + "37491304", + "176142052", + "38552197", + "45386397", + "35823677", + "45603693", + "37604905", + "45381527", + "28464738", + "45249060", + "45325980", + "21522781", + "94934102", + "104887944", + "41998112", + "13050269", + "9530420", + "52228978", + "18088532", + "27091944", + "16535232", + "47094028", + "104422502", + "45751501", + "44251644", + "45924323", + "46063229", + "27422448", + "43017774", + "148924295", + "28621023", + "22130816", + "1914618989", + "28909947", + "20566561", + "26567259", + "86731197", + "87094141", + "86480048", + "87071115", + "86993082", + "37118", + "87319503", + "78853009", + "19648269869", + "33147570", + "57445411", + "73180835", + "86435423", + "7037654", + "43342636", + "136316", + "659890", + "55918771", + "103831674", + "29991995", + "10745158", + "992291", + "44521152", + "27715408", + "52520804", + "11764053", + "54009683", + "40392605", + "52771216", + "54315334", + "10893874", + "147677", + "46273362", + "53263163", + "3273321614", + "51663688", + "51820149", + "53647337", + "3218014", + "53615733", + "40570272", + "43509245", + "46092807", + "88340633", + "112541922486", + "1954482199", + "712321671", + "846285958415", + "181104817321", + "68617976", + "57392002182", + "53537634", + "53583667", + "53571451", + "10685317968", + "52031027", + "12718343972", + "181134595436", + "195667368889", + "61742453", + "798157403", + "9452272123", + "181183510038", + "503128696018", + "38669865140", + "54871543", + "38976282600", + "54224527", + "18918512681", + "50245820668", + "45323986837", + "24685659026", + "53640521", + "4287074277", + "889781905", + "67220754", + "54879926", + "1924103043", + "3672111531", + "91042132", + "2432585925", + "4104368630", + "85746574", + "66961666112", + "3362361779", + "2433575022", + "886719471", + "3175483736", + "9214910", + "110330114890", + "180967833670", + "143444348214" ] }, { @@ -1170,7 +832,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -1190,19 +851,12 @@ "741007335527824", "743270084189585" ], - "plotStarts": [ - "634031481420456", - "647388734023467", - "721225229970053", - "741007335527824", - "743270084189585" - ], "plotEnds": [ - "634034652140320", - "647398482803133", - "721280717882254", - "741056183995411", - "743314353435951" + "3170719864", + "9748779666", + "55487912201", + "48848467587", + "44269246366" ] }, { @@ -1212,7 +866,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] }, { @@ -1222,7 +875,6 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotStarts": [], "plotEnds": [] } ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/exports/beanstalk_silo.json b/scripts/beanstalkShipments/data/exports/beanstalk_silo.json index b294ecb2..2ea5af38 100644 --- a/scripts/beanstalkShipments/data/exports/beanstalk_silo.json +++ b/scripts/beanstalkShipments/data/exports/beanstalk_silo.json @@ -38916,7 +38916,7 @@ } }, "ethContracts": { - "0x0245934a930544c7046069968eb4339b03addfcf": { + "0x0245934a930544C7046069968eB4339B03adDFcf": { "tokens": { "bean": "3", "lp": "0" @@ -38932,7 +38932,7 @@ "total": "3" } }, - "0x153072c11d6dffc0f1e5489bc7c996c219668c67": { + "0x153072C11d6Dffc0f1e5489bC7C996c219668c67": { "tokens": { "bean": "1210864256332", "lp": "0" @@ -38948,23 +38948,23 @@ "total": "1210864256332" } }, - "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95": { + "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95": { "tokens": { - "bean": "4094479026", + "bean": "4094487594", "lp": "38246039304" }, "bdvAtSnapshot": { - "bean": "1176081778", + "bean": "1176084239", "lp": "18005585122", - "total": "19181666900" + "total": "19181669361" }, "bdvAtRecapitalization": { - "bean": "4094479026", + "bean": "4094487594", "lp": "75507779593", - "total": "79602258619" + "total": "79602267187" } }, - "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706": { + "0x2d0BA6aF26C6738FEAaCB6D85Da29d3fADda1706": { "tokens": { "bean": "2", "lp": "971990195788" @@ -38980,7 +38980,7 @@ "total": "1918965278639" } }, - "0x3f9208f556735504e985ff1a369af2e8ff6240a3": { + "0x3F9208f556735504E985Ff1a369aF2e8FF6240A3": { "tokens": { "bean": "1129291156", "lp": "0" @@ -38996,7 +38996,7 @@ "total": "1129291156" } }, - "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e": { + "0x5eefD9C64d8c35142B7611aE3A6dECFc6d7a8a5E": { "tokens": { "bean": "62672894779", "lp": "0" @@ -39012,7 +39012,7 @@ "total": "62672894779" } }, - "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e": { + "0x5fBA3e7EeEB50A4Dc3328e2f974e0D608b38913e": { "tokens": { "bean": "5", "lp": "116528145662" @@ -39028,7 +39028,7 @@ "total": "230057326178" } }, - "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11": { + "0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11": { "tokens": { "bean": "22023088833", "lp": "1" @@ -39044,7 +39044,7 @@ "total": "22023088835" } }, - "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d": { + "0x9f15DE1a169D3073f8fBA8de79E4BA519b19C64D": { "tokens": { "bean": "2852385621954", "lp": "1" @@ -39060,7 +39060,7 @@ "total": "2852385621956" } }, - "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997": { + "0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997": { "tokens": { "bean": "4", "lp": "0" @@ -39076,7 +39076,7 @@ "total": "4" } }, - "0xf33332d233de8b6b1340039c9d5f3b2a04823d93": { + "0xF33332D233de8B6B1340039c9d5f3B2A04823D93": { "tokens": { "bean": "381866055", "lp": "11942733951" @@ -39092,7 +39092,7 @@ "total": "23959976085" } }, - "0xea3154098a58eebfa89d705f563e6c5ac924959e": { + "0xea3154098a58eEbfA89d705F563E6C5Ac924959e": { "tokens": { "bean": "20008000002", "lp": "22010227813" @@ -39108,26 +39108,10 @@ "total": "63462001011" } }, - "0x20DB9F8c46f9cD438Bfd65e09297350a8CDB0F95": { - "tokens": { - "bean": "08568", - "lp": "00" - }, - "bdvAtSnapshot": { - "bean": "2461", - "lp": "0", - "total": "2461" - }, - "bdvAtRecapitalization": { - "bean": "8568", - "lp": "0", - "total": "8568" - } - }, "0x83A758a6a24FE27312C1f8BDa7F3277993b64783": { "tokens": { - "bean": "099437500", - "lp": "00" + "bean": "99437500", + "lp": "0" }, "bdvAtSnapshot": { "bean": "28562030", @@ -39142,8 +39126,8 @@ }, "0x9008D19f58AAbD9eD0D60971565AA8510560ab41": { "tokens": { - "bean": "0291524996", - "lp": "00" + "bean": "291524996", + "lp": "0" }, "bdvAtSnapshot": { "bean": "83736474", @@ -39158,8 +39142,8 @@ }, "0xAA420e97534aB55637957e868b658193b112A551": { "tokens": { - "bean": "020754000000", - "lp": "00" + "bean": "20754000000", + "lp": "0" }, "bdvAtSnapshot": { "bean": "5961295944", @@ -39174,8 +39158,8 @@ }, "0xdD9f24EfC84D93deeF3c8745c837ab63E80Abd27": { "tokens": { - "bean": "0116127823", - "lp": "00" + "bean": "116127823", + "lp": "0" }, "bdvAtSnapshot": { "bean": "33356091", @@ -39190,8 +39174,8 @@ }, "0xf2d47e78dEA8E0F96902C85902323d2a2012b0c0": { "tokens": { - "bean": "01893551014", - "lp": "00" + "bean": "1893551014", + "lp": "0" }, "bdvAtSnapshot": { "bean": "543896019", diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js index 7c5cf41e..f6e5be6e 100644 --- a/scripts/beanstalkShipments/parsers/parseContractData.js +++ b/scripts/beanstalkShipments/parsers/parseContractData.js @@ -66,7 +66,7 @@ function parseContractData(includeContracts = false) { for (const normalizedAddress of allContractAddresses) { console.log(`\nšŸ” Processing contract: ${normalizedAddress}`); - // Initialize AccountData structure + // Initialize AccountData structure (matching contract format) const accountData = { whitelisted: true, claimed: false, @@ -74,8 +74,7 @@ function parseContractData(includeContracts = false) { fertilizerIds: [], fertilizerAmounts: [], plotIds: [], - plotStarts: [], - plotEnds: [] + plotEnds: [] // Only plotEnds needed - plotStarts is always 0 (constant in contract) }; // Helper function to find contract data by normalized address @@ -131,14 +130,10 @@ function parseContractData(includeContracts = false) { // Convert plot map to arrays for (const [plotIndex, totalPods] of plotMap) { - // For ContractPaybackDistributor, we need plotIds, plotStarts, and plotEnds - // Since we have plotIndex and total pods, we set start=plotIndex and end=plotIndex+pods - const plotStart = plotIndex; - const plotEnd = (BigInt(plotIndex) + totalPods).toString(); - + // For ContractPaybackDistributor, we only need plotIds and plotEnds + // plotStarts is always 0 (constant in contract), plotEnds contains the pod amounts accountData.plotIds.push(plotIndex); - accountData.plotStarts.push(plotStart); - accountData.plotEnds.push(plotEnd); + accountData.plotEnds.push(totalPods.toString()); // plotEnds = pod amounts, not calculated end indices } // Only include contracts that have some assets @@ -152,7 +147,7 @@ function parseContractData(includeContracts = false) { console.log(` āœ… Contract included with merged assets`); console.log(` - Silo BDV: ${accountData.siloPaybackTokensOwed}`); console.log(` - Fertilizers: ${accountData.fertilizerIds.length}`); - console.log(` - Plots: ${accountData.plotIds.length}`); + console.log(` - Plots: ${accountData.plotIds.length} (plotEnds as pod amounts)`); } else { console.log(` āš ļø Contract has no assets - skipping`); } diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 3b2a1f03..5bc044f6 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -96,12 +96,19 @@ contract BeanstalkShipmentsTest is TestHelper { //////////////////////// SHIPMENT DISTRIBUTION //////////////////////// - // note: test distribution normal case, well above 1billion supply + /** + * @notice Test distribution amount for normal case, well above 1billion supply + */ function test_shipmentDistributionKicksInAtCorrectSupply() public { // get the total delta b before sunrise aka the expected pinto mints int256 totalDeltaBBefore = pinto.totalDeltaB(); // 1% of the total delta b shiped to each payback contract, totalDeltaBBefore here is positive - uint256 expectedPintoMints = uint256(totalDeltaBBefore) * 0.01e18 / 1e18; + uint256 expectedPintoMints = (uint256(totalDeltaBBefore) * 0.01e18) / 1e18; + + // get fertilized index before + uint256 fertilizedIndexBefore = _getSystemFertilizer().fertilizedIndex; + // get fert remaining before + uint256 fertRemainingBefore = barnPayback.barnRemaining(); // supply is 1,010bil, sunrise is called and new pintos are distributed increaseSupplyAndDistribute(); @@ -109,35 +116,37 @@ contract BeanstalkShipmentsTest is TestHelper { /////////// PAYBACK FIELD /////////// // assert that: 1 % of mints went to the payback field so harvestable index must have increased - assertGt( - pinto.harvestableIndex(PAYBACK_FIELD_ID), - 0, - "Harvestable index must have increased" - ); - // assert the harvestable index is within 0.1% of the expected pinto mints shiped to the payback field + // by the expected pinto mints with a 0.1% tolerance assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.001e18); /////////// SILO PAYBACK /////////// // assert that: 1 % of mints went to the silo so silo payback balance of pinto must have increased - assertGt( - IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), - 0, - "Silo payback balance must have increased" - ); - // assert the silo payback balance is within 0.1% of the expected pinto mints shipped to the silo assertApproxEqRel(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), expectedPintoMints, 0.001e18); + // assert the silo payback balance is within 0.1% of the expected pinto mints shipped to the silo + assertApproxEqRel( + siloPayback.totalReceived(), + expectedPintoMints, + 0.001e18, + "Silo payback total distributed mismatch" + ); + // assert that remaining is correct + uint256 siloPaybackTotalSupply = siloPayback.totalSupply(); + assertApproxEqRel( + siloPayback.siloRemaining(), + siloPaybackTotalSupply - expectedPintoMints, + 0.001e18, + "Silo payback silo remaining mismatch" + ); /////////// BARN PAYBACK /////////// // assert that: 1 % of mints went to the barn so barn payback balance of pinto must have increased - assertGt( - IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), - 0, - "Barn payback balance must have increased" - ); - // assert the barn payback balance is within 0.1% of the expected pinto mints shipped to the barn assertApproxEqRel(IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), expectedPintoMints, 0.001e18); + // assert that the fertilized index has increased + assertGt(_getSystemFertilizer().fertilizedIndex, fertilizedIndexBefore); + // assert that the fert remaining has decreased + assertLt(barnPayback.barnRemaining(), fertRemainingBefore); } // note: test distribution at the edge, ~1bil supply, asserts the scaling is correct @@ -148,12 +157,30 @@ contract BeanstalkShipmentsTest is TestHelper { // or use vm.mockCall to return 0 on silo and barn payback remaining calls function test_shipmentDistributionFinishesWhenNoRemainingPayback() public {} + // note: test when the barn payback is done, the mints should be split 1.5% to silo and 1.5% to payback field + function test_shipmentDistributionWhenNoRemainingBarnPayback() public {} + + // note: test when the silo payback is done, all 3% of mints should go to the payback field + function test_shipmentDistributionWhenNoRemainingSiloPayback() public {} + + + //////////////////////// CLAIMING //////////////////////// + // note: test that all users can claim their rewards at any point // iterate through the accounts array of silo and fert payback and claim the rewards for each // silo function test_siloPaybackClaimShipmentDistribution() public {} // barn function test_barnPaybackClaimShipmentDistribution() public {} + // payback field + function test_paybackFieldClaimShipmentDistribution() public {} + + // check that all contract accounts can claim their rewards directly + function test_contractAccountsCanClaimShipmentDistribution() public {} + + // check that 0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997 can claim their rewards + // check gas usage + function test_plotContractCanClaimShipmentDistribution() public {} //////////////////////// STATE VERIFICATION //////////////////////// @@ -294,6 +321,8 @@ contract BeanstalkShipmentsTest is TestHelper { } } + //////////////////// Silo State Verification //////////////////// + function test_siloPaybackState() public { uint256 accountNumber = getAccountNumber(SILO_ADDRESSES_PATH); @@ -329,6 +358,8 @@ contract BeanstalkShipmentsTest is TestHelper { } } + //////////////////// Barn State Verification //////////////////// + function test_barnPaybackStateGlobal() public { SystemFertilizerStruct memory systemFertilizer = _getSystemFertilizer(); // get each property and compare against the json diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 9bf3d992..1e87282b 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -86,7 +86,6 @@ contract ContractDistributionTest is TestHelper { 1000e6, "siloPayback balance" ); - // log the fertilizer balance assertEq( barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), 80, @@ -314,7 +313,6 @@ contract ContractDistributionTest is TestHelper { fertilizerIds: fertilizerIds, fertilizerAmounts: fertilizerAmounts1, plotIds: plotIds1, - plotStarts: plotStarts1, plotEnds: plotEnds1 }); // contractAccount2 @@ -325,7 +323,6 @@ contract ContractDistributionTest is TestHelper { fertilizerIds: fertilizerIds, fertilizerAmounts: fertilizerAmounts2, plotIds: plotIds2, - plotStarts: plotStarts2, plotEnds: plotEnds2 }); return accountData; From fac85f15496d9cae0d60a6d87951971300d810c6 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 22 Aug 2025 11:41:22 +0300 Subject: [PATCH 055/270] split state and shipment tests, add tests for no paybacks remaining --- .../BeanstalkShipments.t.sol | 470 +++++------------- .../BeanstalkShipmentsState.t.sol | 431 ++++++++++++++++ .../ContractDistribution.t.sol | 125 ++++- 3 files changed, 663 insertions(+), 363 deletions(-) create mode 100644 test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 5bc044f6..e67c9059 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -14,11 +14,11 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; /** - * @notice Tests that the whole shipments initialization and logic works correctly. + * @notice Tests shipment distribution and claiming functionality for the beanstalk shipments system. * This tests should be ran against a local node after the deployment and initialization task is complete. * 1. Create a local anvil node at block 33349326, right before Season 5952 where the deltab was +19,281 TWAĪ”P * 2. Run the hardhat task: `npx hardhat compile && npx hardhat beanstalkShipments --network localhost` - * 3. Run the test: `forge test --match-test test_shipments --fork-url http://localhost:8545` + * 3. Run the test: `forge test --match-contract BeanstalkShipmentsTest --fork-url http://localhost:8545` */ contract BeanstalkShipmentsTest is TestHelper { // Contracts @@ -27,28 +27,6 @@ contract BeanstalkShipmentsTest is TestHelper { address constant BARN_PAYBACK = address(0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b); address constant DEV_BUDGET = address(0xb0cdb715D8122bd976a30996866Ebe5e51bb18b0); - // Wells - address constant PINTO_CBETH_WELL = address(0x3e111115A82dF6190e36ADf0d552880663A4dBF1); - address constant PINTO_CBBTC_WELL = address(0x3e11226fe3d85142B734ABCe6e58918d5828d1b4); - address constant PINTO_USDC_WELL = address(0x3e1133aC082716DDC3114bbEFEeD8B1731eA9cb1); - - // Paths - // Field - string constant FIELD_ADDRESSES_PATH = - "./scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt"; - string constant FIELD_JSON_PATH = - "./scripts/beanstalkShipments/data/exports/beanstalk_field.json"; - // Silo - string constant SILO_ADDRESSES_PATH = - "./scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt"; - string constant SILO_JSON_PATH = - "./scripts/beanstalkShipments/data/exports/beanstalk_silo.json"; - // Barn - string constant BARN_ADDRESSES_PATH = - "./scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt"; - string constant BARN_JSON_PATH = - "./scripts/beanstalkShipments/data/exports/beanstalk_barn.json"; - // Owners address constant PCM = address(0x2cf82605402912C6a79078a9BBfcCf061CbfD507); @@ -65,12 +43,6 @@ contract BeanstalkShipmentsTest is TestHelper { uint256 leftoverBeans; } - struct FertDepositData { - uint256 fertId; - uint256 amount; - uint256 lastBpf; - } - // Constants uint256 constant ACTIVE_FIELD_ID = 0; uint256 constant PAYBACK_FIELD_ID = 1; @@ -78,8 +50,6 @@ contract BeanstalkShipmentsTest is TestHelper { // Users address farmer1 = makeAddr("farmer1"); - address farmer2 = makeAddr("farmer2"); - address farmer3 = makeAddr("farmer3"); // Contracts ISiloPayback siloPayback = ISiloPayback(SILO_PAYBACK); @@ -149,20 +119,99 @@ contract BeanstalkShipmentsTest is TestHelper { assertLt(barnPayback.barnRemaining(), fertRemainingBefore); } - // note: test distribution at the edge, ~1bil supply, asserts the scaling is correct + /** + * @notice Test distribution at the edge, ~1bil supply, asserts the scaling is correct + */ function test_shipmentDistributionScaledAtSupplyEdge() public {} - // note: test when a payback is done, - // replace the payback contracts with mock contracts via etch to return 0 on silo and barn payback remaining calls - // or use vm.mockCall to return 0 on silo and barn payback remaining calls - function test_shipmentDistributionFinishesWhenNoRemainingPayback() public {} + /** + * @notice Test that the shipment distribution finishes when no remaining payback + * uses vm.mockCall to mock the silo and barn payback to return 0 + * Checks that no pintos were allocated to the silo, barn or payback field + */ + function test_shipmentDistributionFinishesWhenNoRemainingPayback() public { + _mockFinishPayback(true, true, true); + // increase supply and distribute + increaseSupplyAndDistribute(); + + // assert that the silo payback is done + assertEq(siloPayback.siloRemaining(), 0); + // assert that the barn payback is done + assertEq(barnPayback.barnRemaining(), 0); + + // assert no pintos were sent to the silo + assertEq(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), 0); + // assert no pintos were sent to the barn + assertEq(IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), 0); + // assert the unharvestable index for the payback field is 0 + assertEq(pinto.totalUnharvestable(PAYBACK_FIELD_ID), 0); + // assert the harvestable index for the payback field is 0 (no pintos were made harvestable) + assertEq(pinto.harvestableIndex(PAYBACK_FIELD_ID), 0); + } + + /** + * @notice Test when the barn payback is done, the mints should be split 1.5% to silo and 1.5% to payback field + */ + function test_shipmentDistributionWhenNoRemainingBarnPayback() public { + // silo payback is not done, barn payback is done, payback field is not done + _mockFinishPayback(false, true, false); + + // get the total delta b before sunrise aka the expected pinto mints + int256 totalDeltaBBefore = pinto.totalDeltaB(); + // 1.5% of the total delta b shiped to each payback contract, totalDeltaBBefore here is positive + uint256 expectedPintoMints = (uint256(totalDeltaBBefore) * 0.015e18) / 1e18; + + // increase supply and distribute + increaseSupplyAndDistribute(); + + /////////// BARN PAYBACK /////////// + // assert that the barn payback is done + assertEq(barnPayback.barnRemaining(), 0); + + /////////// SILO PAYBACK /////////// + // assert that the silo payback balance of pinto must have received 1.5% of the mints + assertApproxEqRel(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), expectedPintoMints, 0.001e18); + // assert the silo payback balance is within 0.1% of the expected pinto mints shipped to the silo + assertApproxEqRel( + siloPayback.totalReceived(), + expectedPintoMints, + 0.001e18, + "Silo payback total distributed mismatch" + ); + + /////////// PAYBACK FIELD /////////// + // assert that the payback field harvestable index must have increased by the expected pinto mints + assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.001e18); + } + + /** + * @notice Test when the silo payback is done and the barn payback is done, + * all 3% of mints should go to the payback field + */ + function test_shipmentDistributionWhenNoRemainingSiloPayback() public { + // silo payback is done, barn payback is done, payback field is not done + _mockFinishPayback(true, true, false); - // note: test when the barn payback is done, the mints should be split 1.5% to silo and 1.5% to payback field - function test_shipmentDistributionWhenNoRemainingBarnPayback() public {} + // get the total delta b before sunrise aka the expected pinto mints + int256 totalDeltaBBefore = pinto.totalDeltaB(); + // 3% of the total delta b shiped to the payback field, totalDeltaBBefore here is positive + uint256 expectedPintoMints = (uint256(totalDeltaBBefore) * 0.03e18) / 1e18; - // note: test when the silo payback is done, all 3% of mints should go to the payback field - function test_shipmentDistributionWhenNoRemainingSiloPayback() public {} + // increase supply and distribute + increaseSupplyAndDistribute(); + /////////// PAYBACK FIELD /////////// + // assert that the payback field harvestable index must have increased by the expected pinto mints + assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.001e18, "Payback field harvestable index mismatch"); + + /////////// SILO PAYBACK /////////// + // assert remaining is 0 + assertEq(siloPayback.siloRemaining(), 0); + + /////////// BARN PAYBACK /////////// + // assert remaining is 0 + assertEq(barnPayback.barnRemaining(), 0); + } //////////////////////// CLAIMING //////////////////////// @@ -182,323 +231,8 @@ contract BeanstalkShipmentsTest is TestHelper { // check gas usage function test_plotContractCanClaimShipmentDistribution() public {} - //////////////////////// STATE VERIFICATION //////////////////////// - - function test_beanstalkShipmentRoutes() public { - // get shipment routes - IMockFBeanstalk.ShipmentRoute[] memory routes = pinto.getShipmentRoutes(); - - // assert length is 6 - assertEq(routes.length, 6, "Shipment routes length mismatch"); - - // silo (0x01) - assertEq( - routes[0].planSelector, - ShipmentPlanner.getSiloPlan.selector, - "Silo plan selector mismatch" - ); - assertEq( - uint8(routes[0].recipient), - uint8(ShipmentRecipient.SILO), - "Silo recipient mismatch" - ); - assertEq(routes[0].data, new bytes(32), "Silo data mismatch"); - // field (0x02) - assertEq( - routes[1].planSelector, - ShipmentPlanner.getFieldPlan.selector, - "Field plan selector mismatch" - ); - assertEq( - uint8(routes[1].recipient), - uint8(ShipmentRecipient.FIELD), - "Field recipient mismatch" - ); - assertEq(routes[1].data, abi.encodePacked(uint256(0)), "Field data mismatch"); - // budget (0x03) - assertEq( - routes[2].planSelector, - ShipmentPlanner.getBudgetPlan.selector, - "Budget plan selector mismatch" - ); - assertEq( - uint8(routes[2].recipient), - uint8(ShipmentRecipient.INTERNAL_BALANCE), - "Budget recipient mismatch" - ); - assertEq(routes[2].data, abi.encode(DEV_BUDGET), "Budget data mismatch"); - // payback field (0x02) - assertEq( - routes[3].planSelector, - ShipmentPlanner.getPaybackFieldPlan.selector, - "Payback field plan selector mismatch" - ); - assertEq( - uint8(routes[3].recipient), - uint8(ShipmentRecipient.FIELD), - "Payback field recipient mismatch" - ); - assertEq( - routes[3].data, - abi.encode(PAYBACK_FIELD_ID, SILO_PAYBACK, BARN_PAYBACK), - "Payback field data mismatch" - ); - // payback silo (0x05) - assertEq( - routes[4].planSelector, - ShipmentPlanner.getPaybackSiloPlan.selector, - "Payback silo plan selector mismatch" - ); - assertEq( - uint8(routes[4].recipient), - uint8(ShipmentRecipient.SILO_PAYBACK), - "Payback silo recipient mismatch" - ); - assertEq( - routes[4].data, - abi.encode(SILO_PAYBACK, BARN_PAYBACK), - "Payback silo data mismatch" - ); - // payback barn (0x06) - assertEq( - routes[5].planSelector, - ShipmentPlanner.getPaybackBarnPlan.selector, - "Payback barn plan selector mismatch" - ); - assertEq( - uint8(routes[5].recipient), - uint8(ShipmentRecipient.BARN_PAYBACK), - "Payback barn recipient mismatch" - ); - assertEq( - routes[5].data, - abi.encode(SILO_PAYBACK, BARN_PAYBACK), - "Payback barn data mismatch" - ); - } - - //////////////////// Field State Verification //////////////////// - - function test_beanstalkRepaymentFieldState() public { - uint256 accountNumber = getAccountNumber(FIELD_ADDRESSES_PATH); - console.log("Testing repayment field state for", accountNumber, "accounts"); - - // get active field, assert its the same - uint256 activeField = pinto.activeField(); - assertEq(activeField, 0); - - // get the field count, assert a new field has been added - uint256 fieldCount = pinto.fieldCount(); - assertEq(fieldCount, 2); - - string memory account; - // For every account - for (uint256 i = 0; i < accountNumber; i++) { - account = vm.readLine(FIELD_ADDRESSES_PATH); - // get the plots in storage - IMockFBeanstalk.Plot[] memory plots = pinto.getPlotsFromAccount( - vm.parseAddress(account), - PAYBACK_FIELD_ID - ); - // compare against the plots in the json - for (uint256 j = 0; j < plots.length; j++) { - // Get the expected pod amount for this plot index from JSON - string memory plotIndexKey = vm.toString(plots[j].index); - // arbEOAs.account.plotIndex - string memory plotAmountPath = string.concat( - "arbEOAs.", - account, - ".", - plotIndexKey - ); - - bytes memory plotAmountJson = searchPropertyData(plotAmountPath, FIELD_JSON_PATH); - // Decode the plot amount from JSON - uint256 expectedPodAmount = vm.parseUint(vm.toString(plotAmountJson)); - // Compare the plot amount and index - assertEq(expectedPodAmount, plots[j].pods, "Invalid pod amount for account"); - } - } - } - - //////////////////// Silo State Verification //////////////////// - - function test_siloPaybackState() public { - uint256 accountNumber = getAccountNumber(SILO_ADDRESSES_PATH); - - console.log("Testing silo payback state for", accountNumber, "accounts"); - - string memory account; - - // For every account - for (uint256 i = 0; i < accountNumber; i++) { - account = vm.readLine(SILO_ADDRESSES_PATH); - address accountAddr = vm.parseAddress(account); - - // Get the silo payback ERC20 token balance for this account - uint256 siloPaybackBalance = siloPayback.balanceOf(accountAddr); - - // Get the expected total BDV at recapitalization from JSON - string memory totalBdvPath = string.concat( - "arbEOAs.", - account, - ".bdvAtRecapitalization.total" - ); - bytes memory expectedTotalBdvJson = searchPropertyData(totalBdvPath, SILO_JSON_PATH); - - // Decode the expected total BDV from JSON - uint256 expectedTotalBdv = vm.parseUint(vm.toString(expectedTotalBdvJson)); - - // Compare the silo payback balance against total BDV at recapitalization - assertEq( - siloPaybackBalance, - expectedTotalBdv, - string.concat("Silo payback balance mismatch for account ", account) - ); - } - } - - //////////////////// Barn State Verification //////////////////// - - function test_barnPaybackStateGlobal() public { - SystemFertilizerStruct memory systemFertilizer = _getSystemFertilizer(); - // get each property and compare against the json - // get the activeFertilizer - uint256 activeFertilizer = vm.parseUint( - vm.toString(searchPropertyData("storage.activeFertilizer", BARN_JSON_PATH)) - ); - assertEq(activeFertilizer, systemFertilizer.activeFertilizer, "activeFertilizer mismatch"); - - // get the fertilizedIndex - uint256 fertilizedIndex = vm.parseUint( - vm.toString(searchPropertyData("storage.fertilizedIndex", BARN_JSON_PATH)) - ); - assertEq(fertilizedIndex, systemFertilizer.fertilizedIndex, "fertilizedIndex mismatch"); - - // get the unfertilizedIndex - uint256 unfertilizedIndex = vm.parseUint( - vm.toString(searchPropertyData("storage.unfertilizedIndex", BARN_JSON_PATH)) - ); - assertEq( - unfertilizedIndex, - systemFertilizer.unfertilizedIndex, - "unfertilizedIndex mismatch" - ); - - // get the fertilizedPaidIndex - uint256 fertilizedPaidIndex = vm.parseUint( - vm.toString(searchPropertyData("storage.fertilizedPaidIndex", BARN_JSON_PATH)) - ); - assertEq( - fertilizedPaidIndex, - systemFertilizer.fertilizedPaidIndex, - "fertilizedPaidIndex mismatch" - ); - - // get the fertFirst - uint256 fertFirst = vm.parseUint( - vm.toString(searchPropertyData("storage.fertFirst", BARN_JSON_PATH)) - ); - assertEq(fertFirst, systemFertilizer.fertFirst, "fertFirst mismatch"); - - // get the fertLast - uint256 fertLast = vm.parseUint( - vm.toString(searchPropertyData("storage.fertLast", BARN_JSON_PATH)) - ); - assertEq(fertLast, systemFertilizer.fertLast, "fertLast mismatch"); - - // get the bpf - uint128 bpf = uint128( - vm.parseUint(vm.toString(searchPropertyData("storage.bpf", BARN_JSON_PATH))) - ); - assertEq(bpf, systemFertilizer.bpf, "bpf mismatch"); - - // get the leftoverBeans - uint256 leftoverBeans = vm.parseUint( - vm.toString(searchPropertyData("storage.leftoverBeans", BARN_JSON_PATH)) - ); - assertEq(leftoverBeans, systemFertilizer.leftoverBeans, "leftoverBeans mismatch"); - } - - function test_barnPaybackStateAccount() public { - uint256 accountNumber = getAccountNumber(BARN_ADDRESSES_PATH); - console.log("Testing barn payback state for", accountNumber, "accounts"); - - string memory account; - - // For every account - for (uint256 i = 0; i < accountNumber; i++) { - account = vm.readLine(BARN_ADDRESSES_PATH); - address accountAddr = vm.parseAddress(account); - - // Get fertilizer data for this account using the fertilizer finder - bytes memory accountFertilizerData = searchAccountFertilizer(accountAddr); - FertDepositData[] memory expectedFertilizers = abi.decode( - accountFertilizerData, - (FertDepositData[]) - ); - - // For each expected fertilizer, verify the balance matches - for (uint256 j = 0; j < expectedFertilizers.length; j++) { - FertDepositData memory expectedFert = expectedFertilizers[j]; - - // Get actual balance from barn payback contract - uint256 actualBalance = barnPayback.balanceOf(accountAddr, expectedFert.fertId); - - // Compare the balances - assertEq( - actualBalance, - expectedFert.amount, - string.concat( - "Fertilizer balance mismatch for account ", - account, - " fertilizer ID ", - vm.toString(expectedFert.fertId) - ) - ); - } - } - } - //////////////////// Helper Functions //////////////////// - function searchPropertyData( - string memory property, - string memory jsonFilePath - ) public returns (bytes memory) { - string[] memory inputs = new string[](4); - inputs[0] = "node"; - inputs[1] = "./scripts/deployment/parameters/finders/finder.js"; - inputs[2] = jsonFilePath; - inputs[3] = property; - bytes memory propertyValue = vm.ffi(inputs); - return propertyValue; - } - - function searchAccountFertilizer(address account) public returns (bytes memory) { - string[] memory inputs = new string[](4); - inputs[0] = "node"; - inputs[1] = "./scripts/beanstalkShipments/utils/fertilizerFinder.js"; - inputs[2] = BARN_JSON_PATH; - inputs[3] = vm.toString(account); - bytes memory accountFertilizer = vm.ffi(inputs); - return accountFertilizer; - } - - /// @dev returns the number of accounts in the txt account file - function getAccountNumber(string memory addressesFilePath) public returns (uint256) { - string memory content = vm.readFile(addressesFilePath); - string[] memory lines = vm.split(content, "\n"); - - uint256 count = 0; - for (uint256 i = 0; i < lines.length; i++) { - if (bytes(lines[i]).length > 0) { - count++; - } - } - return count; - } - function _getSystemFertilizer() internal view returns (SystemFertilizerStruct memory) { ( uint256 activeFertilizer, @@ -547,4 +281,28 @@ contract BeanstalkShipmentsTest is TestHelper { // skip 2 blocks and call sunrise _skipAndCallSunrise(); } + + function _mockFinishPayback(bool silo, bool barn, bool field) internal { + if (silo) { + vm.mockCall( + address(siloPayback), + abi.encodeWithSelector(siloPayback.siloRemaining.selector), + abi.encode(0) + ); + } + if (barn) { + vm.mockCall( + address(barnPayback), + abi.encodeWithSelector(barnPayback.barnRemaining.selector), + abi.encode(0) + ); + } + if (field) { + vm.mockCall( + address(pinto), + abi.encodeWithSelector(pinto.totalUnharvestable.selector, PAYBACK_FIELD_ID), + abi.encode(0) + ); + } + } } diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol new file mode 100644 index 00000000..da128503 --- /dev/null +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -0,0 +1,431 @@ +// SPDX-License-Identifier: MIT +pragma solidity >=0.6.0 <0.9.0; +pragma abicoder v2; + +import {TestHelper} from "test/foundry/utils/TestHelper.sol"; +import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; +import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; +import {console} from "forge-std/console.sol"; +import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; +import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; +import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; +import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; + +/** + * @notice Tests state verification for the beanstalk shipments system. + * This tests should be ran against a local node after the deployment and initialization task is complete. + * 1. Create a local anvil node at block 33349326, right before Season 5952 where the deltab was +19,281 TWAĪ”P + * 2. Run the hardhat task: `npx hardhat compile && npx hardhat beanstalkShipments --network localhost` + * 3. Run the test: `forge test --match-contract BeanstalkShipmentsStateTest --fork-url http://localhost:8545` + */ +contract BeanstalkShipmentsStateTest is TestHelper { + // Contracts + address constant SHIPMENT_PLANNER = address(0x1152691C30aAd82eB9baE7e32d662B19391e34Db); + address constant SILO_PAYBACK = address(0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E); + address constant BARN_PAYBACK = address(0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b); + address constant DEV_BUDGET = address(0xb0cdb715D8122bd976a30996866Ebe5e51bb18b0); + + uint256 constant REPAYMENT_FIELD_PODS = 919768387056514; + + // Paths + // Field + string constant FIELD_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt"; + string constant FIELD_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_field.json"; + // Silo + string constant SILO_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt"; + string constant SILO_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_silo.json"; + // Barn + string constant BARN_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt"; + string constant BARN_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_barn.json"; + + // Owners + address constant PCM = address(0x2cf82605402912C6a79078a9BBfcCf061CbfD507); + + ////////// State Structs ////////// + + struct SystemFertilizerStruct { + uint256 activeFertilizer; + uint256 fertilizedIndex; + uint256 unfertilizedIndex; + uint256 fertilizedPaidIndex; + uint128 fertFirst; + uint128 fertLast; + uint128 bpf; + uint256 leftoverBeans; + } + + struct FertDepositData { + uint256 fertId; + uint256 amount; + uint256 lastBpf; + } + + // Constants + uint256 constant ACTIVE_FIELD_ID = 0; + uint256 constant PAYBACK_FIELD_ID = 1; + uint256 constant SUPPLY_THRESHOLD = 1_000_000_000e6; + + // Contracts + ISiloPayback siloPayback = ISiloPayback(SILO_PAYBACK); + IBarnPayback barnPayback = IBarnPayback(BARN_PAYBACK); + IMockFBeanstalk pinto = IMockFBeanstalk(PINTO); + + function setUp() public {} + + //////////////////////// STATE VERIFICATION //////////////////////// + + function test_beanstalkShipmentRoutes() public { + // get shipment routes + IMockFBeanstalk.ShipmentRoute[] memory routes = pinto.getShipmentRoutes(); + + // assert length is 6 + assertEq(routes.length, 6, "Shipment routes length mismatch"); + + // silo (0x01) + assertEq( + routes[0].planSelector, + ShipmentPlanner.getSiloPlan.selector, + "Silo plan selector mismatch" + ); + assertEq( + uint8(routes[0].recipient), + uint8(ShipmentRecipient.SILO), + "Silo recipient mismatch" + ); + assertEq(routes[0].data, new bytes(32), "Silo data mismatch"); + // field (0x02) + assertEq( + routes[1].planSelector, + ShipmentPlanner.getFieldPlan.selector, + "Field plan selector mismatch" + ); + assertEq( + uint8(routes[1].recipient), + uint8(ShipmentRecipient.FIELD), + "Field recipient mismatch" + ); + assertEq(routes[1].data, abi.encodePacked(uint256(0)), "Field data mismatch"); + // budget (0x03) + assertEq( + routes[2].planSelector, + ShipmentPlanner.getBudgetPlan.selector, + "Budget plan selector mismatch" + ); + assertEq( + uint8(routes[2].recipient), + uint8(ShipmentRecipient.INTERNAL_BALANCE), + "Budget recipient mismatch" + ); + assertEq(routes[2].data, abi.encode(DEV_BUDGET), "Budget data mismatch"); + // payback field (0x02) + assertEq( + routes[3].planSelector, + ShipmentPlanner.getPaybackFieldPlan.selector, + "Payback field plan selector mismatch" + ); + assertEq( + uint8(routes[3].recipient), + uint8(ShipmentRecipient.FIELD), + "Payback field recipient mismatch" + ); + assertEq( + routes[3].data, + abi.encode(PAYBACK_FIELD_ID, SILO_PAYBACK, BARN_PAYBACK), + "Payback field data mismatch" + ); + // payback silo (0x05) + assertEq( + routes[4].planSelector, + ShipmentPlanner.getPaybackSiloPlan.selector, + "Payback silo plan selector mismatch" + ); + assertEq( + uint8(routes[4].recipient), + uint8(ShipmentRecipient.SILO_PAYBACK), + "Payback silo recipient mismatch" + ); + assertEq( + routes[4].data, + abi.encode(SILO_PAYBACK, BARN_PAYBACK), + "Payback silo data mismatch" + ); + // payback barn (0x06) + assertEq( + routes[5].planSelector, + ShipmentPlanner.getPaybackBarnPlan.selector, + "Payback barn plan selector mismatch" + ); + assertEq( + uint8(routes[5].recipient), + uint8(ShipmentRecipient.BARN_PAYBACK), + "Payback barn recipient mismatch" + ); + assertEq( + routes[5].data, + abi.encode(SILO_PAYBACK, BARN_PAYBACK), + "Payback barn data mismatch" + ); + } + + //////////////////// Field State Verification //////////////////// + + function test_beanstalkRepaymentFieldState() public { + uint256 accountNumber = getAccountNumber(FIELD_ADDRESSES_PATH); + console.log("Testing repayment field state for", accountNumber, "accounts"); + + // get active field, assert its the same + uint256 activeField = pinto.activeField(); + assertEq(activeField, 0); + + // get the field count, assert a new field has been added + uint256 fieldCount = pinto.fieldCount(); + assertEq(fieldCount, 2); + + // get the total pods in the field + uint256 totalPods = pinto.totalPods(PAYBACK_FIELD_ID); + assertEq(totalPods, REPAYMENT_FIELD_PODS); + + // get the harvestable index, assert it is 0 + uint256 harvestableIndex = pinto.harvestableIndex(PAYBACK_FIELD_ID); + assertEq(harvestableIndex, 0, "Harvestable index mismatch"); + + string memory account; + // For every account + for (uint256 i = 0; i < accountNumber; i++) { + account = vm.readLine(FIELD_ADDRESSES_PATH); + // get the plots in storage + IMockFBeanstalk.Plot[] memory plots = pinto.getPlotsFromAccount( + vm.parseAddress(account), + PAYBACK_FIELD_ID + ); + // compare against the plots in the json + for (uint256 j = 0; j < plots.length; j++) { + // Get the expected pod amount for this plot index from JSON + string memory plotIndexKey = vm.toString(plots[j].index); + // arbEOAs.account.plotIndex + string memory plotAmountPath = string.concat( + "arbEOAs.", + account, + ".", + plotIndexKey + ); + + bytes memory plotAmountJson = searchPropertyData(plotAmountPath, FIELD_JSON_PATH); + // Decode the plot amount from JSON + uint256 expectedPodAmount = vm.parseUint(vm.toString(plotAmountJson)); + // Compare the plot amount and index + assertEq(expectedPodAmount, plots[j].pods, "Invalid pod amount for account"); + } + } + } + + //////////////////// Silo State Verification //////////////////// + + function test_siloPaybackState() public { + uint256 accountNumber = getAccountNumber(SILO_ADDRESSES_PATH); + + console.log("Testing silo payback state for", accountNumber, "accounts"); + + string memory account; + + // For every account + for (uint256 i = 0; i < accountNumber; i++) { + account = vm.readLine(SILO_ADDRESSES_PATH); + address accountAddr = vm.parseAddress(account); + + // Get the silo payback ERC20 token balance for this account + uint256 siloPaybackBalance = siloPayback.balanceOf(accountAddr); + + // Get the expected total BDV at recapitalization from JSON + string memory totalBdvPath = string.concat( + "arbEOAs.", + account, + ".bdvAtRecapitalization.total" + ); + bytes memory expectedTotalBdvJson = searchPropertyData(totalBdvPath, SILO_JSON_PATH); + + // Decode the expected total BDV from JSON + uint256 expectedTotalBdv = vm.parseUint(vm.toString(expectedTotalBdvJson)); + + // Compare the silo payback balance against total BDV at recapitalization + assertEq( + siloPaybackBalance, + expectedTotalBdv, + string.concat("Silo payback balance mismatch for account ", account) + ); + } + } + + //////////////////// Barn State Verification //////////////////// + + function test_barnPaybackStateGlobal() public { + SystemFertilizerStruct memory systemFertilizer = _getSystemFertilizer(); + // get each property and compare against the json + // get the activeFertilizer + uint256 activeFertilizer = vm.parseUint( + vm.toString(searchPropertyData("storage.activeFertilizer", BARN_JSON_PATH)) + ); + assertEq(activeFertilizer, systemFertilizer.activeFertilizer, "activeFertilizer mismatch"); + + // get the fertilizedIndex + uint256 fertilizedIndex = vm.parseUint( + vm.toString(searchPropertyData("storage.fertilizedIndex", BARN_JSON_PATH)) + ); + assertEq(fertilizedIndex, systemFertilizer.fertilizedIndex, "fertilizedIndex mismatch"); + + // get the unfertilizedIndex + uint256 unfertilizedIndex = vm.parseUint( + vm.toString(searchPropertyData("storage.unfertilizedIndex", BARN_JSON_PATH)) + ); + assertEq( + unfertilizedIndex, + systemFertilizer.unfertilizedIndex, + "unfertilizedIndex mismatch" + ); + + // get the fertilizedPaidIndex + uint256 fertilizedPaidIndex = vm.parseUint( + vm.toString(searchPropertyData("storage.fertilizedPaidIndex", BARN_JSON_PATH)) + ); + assertEq( + fertilizedPaidIndex, + systemFertilizer.fertilizedPaidIndex, + "fertilizedPaidIndex mismatch" + ); + + // get the fertFirst + uint256 fertFirst = vm.parseUint( + vm.toString(searchPropertyData("storage.fertFirst", BARN_JSON_PATH)) + ); + assertEq(fertFirst, systemFertilizer.fertFirst, "fertFirst mismatch"); + + // get the fertLast + uint256 fertLast = vm.parseUint( + vm.toString(searchPropertyData("storage.fertLast", BARN_JSON_PATH)) + ); + assertEq(fertLast, systemFertilizer.fertLast, "fertLast mismatch"); + + // get the bpf + uint128 bpf = uint128( + vm.parseUint(vm.toString(searchPropertyData("storage.bpf", BARN_JSON_PATH))) + ); + assertEq(bpf, systemFertilizer.bpf, "bpf mismatch"); + + // get the leftoverBeans + uint256 leftoverBeans = vm.parseUint( + vm.toString(searchPropertyData("storage.leftoverBeans", BARN_JSON_PATH)) + ); + assertEq(leftoverBeans, systemFertilizer.leftoverBeans, "leftoverBeans mismatch"); + } + + function test_barnPaybackStateAccount() public { + uint256 accountNumber = getAccountNumber(BARN_ADDRESSES_PATH); + console.log("Testing barn payback state for", accountNumber, "accounts"); + + string memory account; + + // For every account + for (uint256 i = 0; i < accountNumber; i++) { + account = vm.readLine(BARN_ADDRESSES_PATH); + address accountAddr = vm.parseAddress(account); + + // Get fertilizer data for this account using the fertilizer finder + bytes memory accountFertilizerData = searchAccountFertilizer(accountAddr); + FertDepositData[] memory expectedFertilizers = abi.decode( + accountFertilizerData, + (FertDepositData[]) + ); + + // For each expected fertilizer, verify the balance matches + for (uint256 j = 0; j < expectedFertilizers.length; j++) { + FertDepositData memory expectedFert = expectedFertilizers[j]; + + // Get actual balance from barn payback contract + uint256 actualBalance = barnPayback.balanceOf(accountAddr, expectedFert.fertId); + + // Compare the balances + assertEq( + actualBalance, + expectedFert.amount, + string.concat( + "Fertilizer balance mismatch for account ", + account, + " fertilizer ID ", + vm.toString(expectedFert.fertId) + ) + ); + } + } + } + + //////////////////// Helper Functions //////////////////// + + function searchPropertyData( + string memory property, + string memory jsonFilePath + ) public returns (bytes memory) { + string[] memory inputs = new string[](4); + inputs[0] = "node"; + inputs[1] = "./scripts/deployment/parameters/finders/finder.js"; + inputs[2] = jsonFilePath; + inputs[3] = property; + bytes memory propertyValue = vm.ffi(inputs); + return propertyValue; + } + + function searchAccountFertilizer(address account) public returns (bytes memory) { + string[] memory inputs = new string[](4); + inputs[0] = "node"; + inputs[1] = "./scripts/beanstalkShipments/utils/fertilizerFinder.js"; + inputs[2] = BARN_JSON_PATH; + inputs[3] = vm.toString(account); + bytes memory accountFertilizer = vm.ffi(inputs); + return accountFertilizer; + } + + /// @dev returns the number of accounts in the txt account file + function getAccountNumber(string memory addressesFilePath) public returns (uint256) { + string memory content = vm.readFile(addressesFilePath); + string[] memory lines = vm.split(content, "\n"); + + uint256 count = 0; + for (uint256 i = 0; i < lines.length; i++) { + if (bytes(lines[i]).length > 0) { + count++; + } + } + return count; + } + + function _getSystemFertilizer() internal view returns (SystemFertilizerStruct memory) { + ( + uint256 activeFertilizer, + uint256 fertilizedIndex, + uint256 unfertilizedIndex, + uint256 fertilizedPaidIndex, + uint128 fertFirst, + uint128 fertLast, + uint128 bpf, + uint256 leftoverBeans + ) = barnPayback.fert(); + return + SystemFertilizerStruct({ + activeFertilizer: uint256(activeFertilizer), + fertilizedIndex: fertilizedIndex, + unfertilizedIndex: unfertilizedIndex, + fertilizedPaidIndex: fertilizedPaidIndex, + fertFirst: fertFirst, + fertLast: fertLast, + bpf: bpf, + leftoverBeans: leftoverBeans + }); + } +} \ No newline at end of file diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 1e87282b..730f675c 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -14,7 +14,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {L1ContractMessenger} from "contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol"; import {FieldFacet} from "contracts/beanstalk/facets/field/FieldFacet.sol"; import {MockFieldFacet} from "contracts/mocks/mockFacets/MockFieldFacet.sol"; -import {ContractPaybackDistributor} from "contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol"; +import {ContractPaybackDistributor,ICrossDomainMessenger} from "contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol"; contract ContractDistributionTest is TestHelper { // Constants @@ -23,6 +23,12 @@ contract ContractDistributionTest is TestHelper { uint256 public constant FERTILIZER_ID = 10000000; uint256 public constant REPAYMENT_FIELD_ID = 1; + // L1 messenger of the Superchain + ICrossDomainMessenger public constant L1_MESSENGER = + ICrossDomainMessenger(0x4200000000000000000000000000000000000007); + // L1 sender + address public constant L1_SENDER = 0x0000000000000000000000000000000000000000; + // Deployed contracts SiloPayback public siloPayback; BarnPayback public barnPayback; @@ -105,6 +111,9 @@ contract ContractDistributionTest is TestHelper { assertEq(plots[1].pods, 101e6, "plot 2 pods"); } + /** + * @notice Test that the contract accounts can claim their rewards directly + */ function test_contractDistributionDirect() public { vm.startPrank(contractAccount1); contractPaybackDistributor.claimDirect(receiver1); @@ -112,7 +121,11 @@ contract ContractDistributionTest is TestHelper { // assert the receiver address holds all the assets for receiver1 assertEq(siloPayback.balanceOf(receiver1), 500e6, "receiver siloPayback balance"); - assertEq(barnPayback.balanceOf(receiver1, FERTILIZER_ID), 40, "receiver fertilizer balance"); + assertEq( + barnPayback.balanceOf(receiver1, FERTILIZER_ID), + 40, + "receiver fertilizer balance" + ); // get the plots from the receiver1 IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(receiver1, REPAYMENT_FIELD_ID); assertEq(plots.length, 1, "plots length"); @@ -120,8 +133,16 @@ contract ContractDistributionTest is TestHelper { assertEq(plots[0].pods, 101e6, "plot 0 pods for receiver1"); // assert the rest of the assets are still in the distributor - assertEq(siloPayback.balanceOf(address(contractPaybackDistributor)), 500e6, "distributor siloPayback balance"); - assertEq(barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), 40, "distributor fertilizer balance"); + assertEq( + siloPayback.balanceOf(address(contractPaybackDistributor)), + 500e6, + "distributor siloPayback balance" + ); + assertEq( + barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), + 40, + "distributor fertilizer balance" + ); // try to claim again from contractAccount1 vm.startPrank(contractAccount1); @@ -136,20 +157,110 @@ contract ContractDistributionTest is TestHelper { // assert the receiver address holds all the assets for receiver2 assertEq(siloPayback.balanceOf(receiver2), 500e6, "receiver siloPayback balance"); - assertEq(barnPayback.balanceOf(receiver2, FERTILIZER_ID), 40, "receiver fertilizer balance"); + assertEq( + barnPayback.balanceOf(receiver2, FERTILIZER_ID), + 40, + "receiver fertilizer balance" + ); // get the plots from the receiver2 plots = bs.getPlotsFromAccount(receiver2, REPAYMENT_FIELD_ID); assertEq(plots.length, 1, "plots length"); assertEq(plots[0].index, 101e6, "plot 0 index for receiver2"); assertEq(plots[0].pods, 101e6, "plot 0 pods for receiver2"); // assert the no more assets are in the distributor - assertEq(siloPayback.balanceOf(address(contractPaybackDistributor)), 0, "distributor siloPayback balance"); - assertEq(barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), 0, "distributor fertilizer balance"); + assertEq( + siloPayback.balanceOf(address(contractPaybackDistributor)), + 0, + "distributor siloPayback balance" + ); + assertEq( + barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), + 0, + "distributor fertilizer balance" + ); // plots plots = bs.getPlotsFromAccount(address(contractPaybackDistributor), REPAYMENT_FIELD_ID); assertEq(plots.length, 0, "plots length"); } + /** + * @notice Test that the contract accounts can claim their rewards from sending an L1 message + * - Only the OP stack messenger at 0x42...7 can call the claimFromL1Message function + * - The call is successful only if the xDomainMessageSender is the L1 sender + */ + function test_contractDistributionFromL1Message() public { + + // try to claim from non-L1 messenger, expect revert + vm.startPrank(address(contractAccount1)); + vm.expectRevert("ContractPaybackDistributor: Caller not L1 messenger"); + contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1); + vm.stopPrank(); + + // try to claim from non-L1 sender, expect revert + vm.startPrank(address(L1_MESSENGER)); + vm.mockCall( + address(L1_MESSENGER), + abi.encodeWithSelector(L1_MESSENGER.xDomainMessageSender.selector), + abi.encode(makeAddr("nonL1Sender")) + ); + vm.expectRevert("ContractPaybackDistributor: Bad origin"); + contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1); + vm.stopPrank(); + + // claim using the L1 message. Mock that the call was initiated by the L1 sender contract + // on behalf of contractAccount1 + vm.startPrank(address(L1_MESSENGER)); + vm.mockCall( + address(L1_MESSENGER), + abi.encodeWithSelector(L1_MESSENGER.xDomainMessageSender.selector), + abi.encode(L1_SENDER) + ); + contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1); + vm.stopPrank(); + + // assert the receiver address holds all the assets for receiver1 + assertEq(siloPayback.balanceOf(receiver1), 500e6, "receiver siloPayback balance"); + assertEq( + barnPayback.balanceOf(receiver1, FERTILIZER_ID), + 40, + "receiver fertilizer balance" + ); + // get the plots from the receiver1 + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(receiver1, REPAYMENT_FIELD_ID); + assertEq(plots.length, 1, "plots length"); + assertEq(plots[0].index, 0, "plot 0 index for receiver1"); + assertEq(plots[0].pods, 101e6, "plot 0 pods for receiver1"); + + // assert the rest of the assets are still in the distributor + assertEq( + siloPayback.balanceOf(address(contractPaybackDistributor)), + 500e6, + "distributor siloPayback balance" + ); + assertEq( + barnPayback.balanceOf(address(contractPaybackDistributor), FERTILIZER_ID), + 40, + "distributor fertilizer balance" + ); + + // try to claim again from contractAccount1 + vm.startPrank(address(L1_MESSENGER)); + vm.mockCall( + address(L1_MESSENGER), + abi.encodeWithSelector(L1_MESSENGER.xDomainMessageSender.selector), + abi.encode(L1_SENDER) + ); + vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); + contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1); + vm.stopPrank(); + + // try to claim again for same account directly, expect revert + vm.startPrank(address(contractAccount1)); + vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); + contractPaybackDistributor.claimDirect(receiver1); + vm.stopPrank(); + } + //////////////////////// HELPER FUNCTIONS //////////////////////// function deploySiloPayback() public { From 963f709fb08193a6e028f7177267aa692f024a4a Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 22 Aug 2025 11:58:13 +0300 Subject: [PATCH 056/270] remove partial claims from silo payback to conform with new hook architecture --- .../beanstalkShipments/SiloPayback.sol | 44 +++-------- .../beanstalkShipments/SiloPayback.t.sol | 78 +++---------------- 2 files changed, 19 insertions(+), 103 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index cedb78e0..ce5dcea2 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -35,7 +35,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { mapping(address => uint256) public rewards; /// @dev event emitted when user claims rewards - event Claimed(address indexed user, uint256 amount, uint256 rewards); + event Claimed(address indexed user, uint256 amount, LibTransfer.To toMode); /// @dev event emitted when rewards are received from shipments event SiloPaybackRewardsReceived(uint256 amount, uint256 newIndex); /// @dev event emitted when unripe bdv tokens are minted @@ -95,47 +95,23 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /////////////////// Claiming rewards /////////////////// /** - * @notice Claims accumulated rewards for the caller, optionally for a specific token amount - * If no active tractor execution, the caller is msg.sender. - * Otherwise it is the active blueprint publisher - * By specifying the token amount to claim for, users can partially claim using tokens from their internal - * balance without actually specfifying a mode where the rewards are stored. - * @param tokenAmount The amount of tokens to claim rewards for (0 to claim for the entire balance) + * @notice Claims accumulated rewards for an account and sends them to a recipient's external or internal balance + * If no active tractor execution, the caller is msg.sender. Otherwise it is the active blueprint publisher * @param recipient The address to send the rewards to * @param toMode The mode to send the rewards in */ - function claim(uint256 tokenAmount, address recipient, LibTransfer.To toMode) external { + function claim(address recipient, LibTransfer.To toMode) external { address account = _getActiveAccount(); uint256 userCombinedBalance = getBalanceCombined(account); - // If tokenAmount is 0, claim for all tokens - if (tokenAmount == 0) tokenAmount = userCombinedBalance; - - // Validate tokenAmount and balance - require(tokenAmount > 0, "SiloPayback: tokenAmount to claim for must be greater than 0"); + // Validate balance require(userCombinedBalance > 0, "SiloPayback: token balance must be greater than 0"); - require( - tokenAmount <= userCombinedBalance, - "SiloPayback: tokenAmount to claim for exceeds balance" - ); - // update the reward state for the account + // Update the reward state for the account _updateReward(account); - uint256 totalEarned = rewards[account]; - require(totalEarned > 0, "SiloPayback: no rewards to claim"); - - uint256 rewardsToClaim; - if (tokenAmount == userCombinedBalance) { - // full balance claim, reset rewards to 0 - rewardsToClaim = totalEarned; - rewards[account] = 0; - } else { - // partial claim, rewards are proportional to the token amount specified - rewardsToClaim = (totalEarned * tokenAmount) / userCombinedBalance; - // update rewards to reflect the portion claimed - // maintains consistency since the user's checkpoint remains valid - rewards[account] = totalEarned - rewardsToClaim; - } + uint256 rewardsToClaim = rewards[account]; + require(rewardsToClaim > 0, "SiloPayback: no rewards to claim"); + rewards[account] = 0; // Transfer the rewards to the recipient pintoProtocol.transferToken( @@ -146,7 +122,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { toMode ); - emit Claimed(account, tokenAmount, rewardsToClaim); + emit Claimed(account, rewardsToClaim, toMode); } /** diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index 94af22ab..ba1f00e6 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -26,9 +26,6 @@ contract SiloPaybackTest is TestHelper { uint256 constant PRECISION = 1e18; uint256 constant INITIAL_MINT_AMOUNT = 1000e6; // 1000 tokens with 6 decimals - event Claimed(address indexed user, uint256 amount, uint256 rewards); - event RewardsReceived(uint256 amount, uint256 newIndex); - function setUp() public { initializeBeanstalkTestState(true, false); @@ -112,27 +109,6 @@ contract SiloPaybackTest is TestHelper { assertEq(siloPayback.earned(farmer1) + siloPayback.earned(farmer2), rewardAmount); } - function test_siloPaybackEarnedCalculationMultipleUsersPartialInternalBalance() public { - // Mint tokens: farmer1 40%, farmer2 60% - _mintTokensToUser(farmer1, 400e6, LibTransfer.To.INTERNAL); - _mintTokensToUser(farmer2, 600e6, LibTransfer.To.INTERNAL); - - // Get initial internal balances - uint256 farmer1InternalBefore = bs.getInternalBalance(farmer1, address(BEAN)); - uint256 farmer2InternalBefore = bs.getInternalBalance(farmer2, address(BEAN)); - - // Send rewards - uint256 rewardAmount = 150e6; - _sendRewardsToContract(rewardAmount); - - // Check proportional rewards - assertEq(siloPayback.earned(farmer1), 60e6); // 40% of 150 - assertEq(siloPayback.earned(farmer2), 90e6); // 60% of 150 - - // Total should equal reward amount - assertEq(siloPayback.earned(farmer1) + siloPayback.earned(farmer2), rewardAmount); - } - ////////////// Claim ////////////// /** @@ -157,7 +133,7 @@ contract SiloPaybackTest is TestHelper { // farmer1 claims immediately after first distribution (claiming every season) uint256 farmer1BalanceBefore = IERC20(BEAN).balanceOf(farmer1); vm.prank(farmer1); - siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all // Verify farmer1 received rewards and state is updated assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBefore + farmer1Earned1); @@ -187,7 +163,7 @@ contract SiloPaybackTest is TestHelper { // Now farmer1 claims again (claiming every season) uint256 farmer1BalanceBeforeClaim2 = IERC20(BEAN).balanceOf(farmer1); vm.prank(farmer1); - siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all // farmer1 should have received their second round rewards assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBeforeClaim2 + farmer1Earned2); @@ -196,49 +172,13 @@ contract SiloPaybackTest is TestHelper { // farmer2 finally claims all accumulated rewards uint256 farmer2BalanceBefore = IERC20(BEAN).balanceOf(farmer2); vm.prank(farmer2); - siloPayback.claim(0, farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all // farmer2 should receive all their accumulated rewards assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2BalanceBefore + farmer2Earned2); assertEq(siloPayback.earned(farmer2), 0); } - /** - * @dev test that a user can claim a partial amount of their rewards and then the remaining rewards - */ - function test_siloPayback1UserPartialClaim() public { - // Setup: farmer1 has 40% - _mintTokensToUser(farmer1, 400e6, LibTransfer.To.EXTERNAL); // farmer1 has 40% - _mintTokensToUser(farmer2, 600e6, LibTransfer.To.EXTERNAL); // farmer2 has 60% - - // First distribution: 100 BEAN rewards - _sendRewardsToContract(100e6); - - uint256 amountToClaimFor = 200e6; // 50% of farmer1's balance - - // farmer1 claims 50% of their balance - vm.prank(farmer1); - siloPayback.claim(amountToClaimFor, farmer1, LibTransfer.To.EXTERNAL); - uint256 farmer1BalanceAfter = IERC20(BEAN).balanceOf(farmer1); - - // Verify farmer1 claimed 20% of total rewards, 20e6 still remaining - assertEq(siloPayback.earned(farmer1), 20e6); - // state has synced but some rewards remain - assertEq(siloPayback.userRewardPerTokenPaid(farmer1), siloPayback.rewardPerTokenStored()); - // verify balance of bean for farmer1 is 20e6 - assertEq(IERC20(BEAN).balanceOf(farmer1), 20e6); - - // then the user claims the remaining rewards - vm.prank(farmer1); - siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all - - // verify balance of bean for farmer1 is 40e6, the full pro rata reward - assertEq(IERC20(BEAN).balanceOf(farmer1), 40e6); - // verify state is still synced but no rewards remain - assertEq(siloPayback.earned(farmer1), 0); - assertEq(siloPayback.userRewardPerTokenPaid(farmer1), siloPayback.rewardPerTokenStored()); - } - /** * @dev test that two users can claim their rewards to their internal balance */ @@ -262,10 +202,10 @@ contract SiloPaybackTest is TestHelper { // Both farmers claim to INTERNAL balance vm.prank(farmer1); - siloPayback.claim(0, farmer1, LibTransfer.To.INTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.INTERNAL); // 0 means claim all vm.prank(farmer2); - siloPayback.claim(0, farmer2, LibTransfer.To.INTERNAL); // 0 means claim all + siloPayback.claim(farmer2, LibTransfer.To.INTERNAL); // 0 means claim all // Verify both farmers' rewards went to internal balance uint256 farmer1InternalAfter = bs.getInternalBalance(farmer1, address(BEAN)); @@ -407,13 +347,13 @@ contract SiloPaybackTest is TestHelper { // Claim for all users vm.prank(farmer1); - siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all vm.prank(farmer2); - siloPayback.claim(0, farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all vm.prank(farmer3); - siloPayback.claim(0, farmer3, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer3, LibTransfer.To.EXTERNAL); // 0 means claim all // Verify all rewards were paid out correctly assertEq( @@ -469,7 +409,7 @@ contract SiloPaybackTest is TestHelper { assertEq(farmer1Earned, 50e6); // 50% of 100 // claim the rewards vm.prank(farmer1); - siloPayback.claim(0, farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all // user reward paid is synced to the global reward per token stored assertEq( siloPayback.userRewardPerTokenPaid(farmer1), From 91aa95c10b76a5ad2da6b7b5e5e99ec92aac41a5 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 22 Aug 2025 13:23:14 +0300 Subject: [PATCH 057/270] at distribution test at supply edge, add correct address for base l1 messenger --- .../L1ContractMessenger.sol | 5 +- .../BeanstalkShipments.t.sol | 114 +++++++++++++++++- 2 files changed, 111 insertions(+), 8 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index f5635312..a8feb85c 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -17,9 +17,10 @@ interface IContractPaybackDistributor { * eligible for beanstalk repayment assets but are unable to claim their assets directly on Base. */ contract L1ContractMessenger { - // Superchain messenger from Ethereum L1 + // Base Superchain messenger from Ethereum L1 + // (https://docs.base.org/base-chain/network-information/base-contracts#l1-contract-addresses) ICrossDomainMessenger public constant MESSENGER = - ICrossDomainMessenger(0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1); + ICrossDomainMessenger(0x866E82a600A1414e583f7F13623F1aC5d58b0Afa); // The address of the L2 ContractPaybackDistributor contract address public immutable L2_CONTRACT_PAYBACK_DISTRIBUTOR; diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index e67c9059..f8c4b037 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -12,6 +12,7 @@ import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; +import {LibReceiving} from "contracts/libraries/LibReceiving.sol"; /** * @notice Tests shipment distribution and claiming functionality for the beanstalk shipments system. @@ -120,9 +121,75 @@ contract BeanstalkShipmentsTest is TestHelper { } /** - * @notice Test distribution at the edge, ~1bil supply, asserts the scaling is correct + * @notice Test distribution at the edge, ~1bil supply, checks that the scaling is correct + * checks that all paybacks and budget receive pintos */ - function test_shipmentDistributionScaledAtSupplyEdge() public {} + function test_shipmentDistributionScaledAtSupplyEdge() public { + // increase supply at the edge, get the new supply to calculate the ratio + increaseSupplyAtEdge(); + + // get the total delta b before sunrise aka the expected pinto mints + uint256 totalDeltaBBefore = uint256(pinto.totalDeltaB()); + // get total supply before sunrise + uint256 beanSupplyBefore = IERC20(L2_PINTO).totalSupply(); + + // skip 2 blocks and call sunrise, distribute the pintos, expect all shipment receipts to be emitted + vm.expectEmit(true, false, true, false); + emit LibReceiving.Receipt(ShipmentRecipient.SILO, 0, abi.encode(0)); // SILO + emit LibReceiving.Receipt(ShipmentRecipient.FIELD, 0, abi.encode(0)); // FIELD + emit LibReceiving.Receipt(ShipmentRecipient.INTERNAL_BALANCE, 0, abi.encode(DEV_BUDGET)); // BUDGET + emit LibReceiving.Receipt( + ShipmentRecipient.FIELD, + 0, + abi.encode(PAYBACK_FIELD_ID, SILO_PAYBACK, BARN_PAYBACK) + ); // PAYBACK FIELD + emit LibReceiving.Receipt( + ShipmentRecipient.SILO_PAYBACK, + 0, + abi.encode(SILO_PAYBACK, BARN_PAYBACK) + ); // SILO PAYBACK + emit LibReceiving.Receipt( + ShipmentRecipient.BARN_PAYBACK, + 0, + abi.encode(SILO_PAYBACK, BARN_PAYBACK) + ); // BARN PAYBACK + _skipAndCallSunrise(); + + // total delta b before sunrise was 18224884688 + // bean supply before sunrise was 999990000000000 + // uint256 remainingBudget = SUPPLY_BUDGET_FLIP - (beanSupply - seasonalMints) + // 1_000_000_000e6 - (999990000000000 - 18224884688) = ~28_224e6 + + // ratio = (remainingBudget * PRECISION) / seasonalMints + // ratio = (28224000000 * 1e18) / 18224884688 = ~1,5486e18 aka 1,005486% + + // all paybacks are active so all points are 1% + // and scaled by the ratio (points = (points * paybackRatio) / PRECISION;) + // so the expected pinto mints should be slighly less than the 1% of the total delta b + // since a portion still goes to the budget so around ~181e6 pintos + + // get the scaled ratio + uint256 remainingBudget = SUPPLY_THRESHOLD - (beanSupplyBefore - totalDeltaBBefore); + uint256 scaledRatio = (remainingBudget * 1e18) / totalDeltaBBefore; + // 1,0054870032 => 1,005487% of the total delta b + + // get the expected pinto mints. first get the 1% + uint256 expectedPintoMints = (totalDeltaBBefore * 0.01e18) / 1e18; + // then scale it by the ratio + expectedPintoMints = (expectedPintoMints * scaledRatio) / 1e18; + + /////////// PAYBACK FIELD /////////// + // assert that the expected pinto mints are equal to the actual pinto mints with a 1.5% tolerance + assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.015e18); + + /////////// SILO PAYBACK /////////// + // assert that the silo payback balance of pinto must have increased + assertApproxEqRel(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), expectedPintoMints, 0.015e18); + + /////////// BARN PAYBACK /////////// + // assert that the barn payback balance of pinto must have increased + assertApproxEqRel(IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), expectedPintoMints, 0.015e18); + } /** * @notice Test that the shipment distribution finishes when no remaining payback @@ -185,7 +252,7 @@ contract BeanstalkShipmentsTest is TestHelper { } /** - * @notice Test when the silo payback is done and the barn payback is done, + * @notice Test when the silo payback is done and the barn payback is done, * all 3% of mints should go to the payback field */ function test_shipmentDistributionWhenNoRemainingSiloPayback() public { @@ -202,7 +269,12 @@ contract BeanstalkShipmentsTest is TestHelper { /////////// PAYBACK FIELD /////////// // assert that the payback field harvestable index must have increased by the expected pinto mints - assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.001e18, "Payback field harvestable index mismatch"); + assertApproxEqRel( + pinto.harvestableIndex(PAYBACK_FIELD_ID), + expectedPintoMints, + 0.001e18, + "Payback field harvestable index mismatch" + ); /////////// SILO PAYBACK /////////// // assert remaining is 0 @@ -213,7 +285,7 @@ contract BeanstalkShipmentsTest is TestHelper { assertEq(barnPayback.barnRemaining(), 0); } - //////////////////////// CLAIMING //////////////////////// + //////////////////////// REGULAR ACCOUNT CLAIMING //////////////////////// // note: test that all users can claim their rewards at any point // iterate through the accounts array of silo and fert payback and claim the rewards for each @@ -224,6 +296,8 @@ contract BeanstalkShipmentsTest is TestHelper { // payback field function test_paybackFieldClaimShipmentDistribution() public {} + //////////////////////// CONTRACT ACCOUNT CLAIMING //////////////////////// + // check that all contract accounts can claim their rewards directly function test_contractAccountsCanClaimShipmentDistribution() public {} @@ -274,7 +348,6 @@ contract BeanstalkShipmentsTest is TestHelper { // get the total supply of pinto uint256 totalSupplyAfter = IERC20(L2_PINTO).totalSupply(); - console.log("Total supply after minting", totalSupplyAfter); // assert the total supply is above the threshold assertGt(totalSupplyAfter, SUPPLY_THRESHOLD, "Total supply is not above the threshold"); assertGt(pinto.totalDeltaB(), 0, "System should be above the value target"); @@ -282,6 +355,32 @@ contract BeanstalkShipmentsTest is TestHelper { _skipAndCallSunrise(); } + function increaseSupplyAtEdge() internal { + // get the total supply before minting + uint256 totalSupplyBefore = IERC20(L2_PINTO).totalSupply(); + assertLt(totalSupplyBefore, SUPPLY_THRESHOLD, "Total supply is not below the threshold"); + + // mint ~990mil so that some mints should go to budget and some to payback contracts + // 10_000_000 + 1_000_000_000 - 10_000_000 - 100 = 999_999_000 pintos before sunrise + // 18_000 * 0,03 = 540 pintos should go to the budget if there were no paybacks + // now that there are paybacks, the should get 540 - 100 = 440 pintos split between silo, barn and payback field + deal(L2_PINTO, address(this), SUPPLY_THRESHOLD - totalSupplyBefore - 100e6, true); + + // assert that the minting did not exceed the payback threshold + uint256 totalSupplyAfterMinting = IERC20(L2_PINTO).totalSupply(); + assertLt( + totalSupplyAfterMinting, + SUPPLY_THRESHOLD, + "Total supply is not below the threshold" + ); + // assert that the sum of the 2 exceeeds the threshold + assertGt( + IERC20(L2_PINTO).totalSupply() + uint256(pinto.totalDeltaB()), + SUPPLY_THRESHOLD, + "Total supply and delta b before sunrise does not exceed the threshold" + ); + } + function _mockFinishPayback(bool silo, bool barn, bool field) internal { if (silo) { vm.mockCall( @@ -305,4 +404,7 @@ contract BeanstalkShipmentsTest is TestHelper { ); } } + + /// @dev, does not check the shipment amounts, only the recipients and the data + function expectPaybackShipmentReceipts() internal {} } From acc60bcd6387821d6d9d98acd860aa5b0df2e994 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 22 Aug 2025 20:18:21 +0300 Subject: [PATCH 058/270] add claim test for all paybacks, fix deployment parameter for distributor --- .../barn/BeanstalkFertilizer.sol | 3 +- contracts/interfaces/IBarnPayback.sol | 5 +- contracts/interfaces/ISiloPayback.sol | 5 +- hardhat.config.js | 5 +- .../data/beanstalkAccountFertilizer.json | 12 +- .../data/beanstalkPlots.json | 7520 ++++++++--------- .../data/unripeBdvTokens.json | 8 +- .../deployPaybackContracts.js | 2 +- .../BeanstalkShipments.t.sol | 320 +- test/hardhat/utils/constants.js | 22 +- 10 files changed, 4104 insertions(+), 3798 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 709ba7fa..2e15aaa9 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -24,7 +24,8 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran using LibRedundantMath256 for uint256; using LibRedundantMath128 for uint128; - address public constant CONTRACT_DISTRIBUTOR_ADDRESS = address(0x0000000000000000000000000000000000000000); + address public constant CONTRACT_DISTRIBUTOR_ADDRESS = + address(0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000); event ClaimFertilizer(uint256[] ids, uint256 beans); event BarnPaybackRewardsReceived(uint256 amount); diff --git a/contracts/interfaces/IBarnPayback.sol b/contracts/interfaces/IBarnPayback.sol index accae547..21ce5eff 100644 --- a/contracts/interfaces/IBarnPayback.sol +++ b/contracts/interfaces/IBarnPayback.sol @@ -2,7 +2,10 @@ pragma solidity ^0.8.20; library LibTransfer { - type To is uint8; + enum To { + EXTERNAL, + INTERNAL + } } library BeanstalkFertilizer { diff --git a/contracts/interfaces/ISiloPayback.sol b/contracts/interfaces/ISiloPayback.sol index fed24548..01f0d460 100644 --- a/contracts/interfaces/ISiloPayback.sol +++ b/contracts/interfaces/ISiloPayback.sol @@ -2,7 +2,10 @@ pragma solidity ^0.8.20; library LibTransfer { - type To is uint8; + enum To { + EXTERNAL, + INTERNAL + } } interface ISiloPayback { diff --git a/hardhat.config.js b/hardhat.config.js index 8322ffbf..4caf8b9a 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -23,6 +23,7 @@ const { PINTO_DIAMOND_DEPLOYER, BEANSTALK_SHIPMENTS_DEPLOYER, BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR, + L1_CONTRACT_MESSENGER_DEPLOYER, BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, L2_PCM, BASE_BLOCK_TIME, @@ -2025,6 +2026,8 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m console.log("-----------------------------------"); }); + //////////////////////// BEANSTALK SHIPMENTS //////////////////////// + task("beanstalkShipments", "performs all actions to initialize the beanstalk shipments").setAction( async (taskArgs) => { console.log("=".repeat(80)); @@ -2202,7 +2205,7 @@ task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").se const mock = true; let deployer; if (mock) { - deployer = await impersonateSigner(L2_PCM); + deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); await mintEth(deployer.address); } else { deployer = (await ethers.getSigners())[0]; diff --git a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json index 0589076e..f7ca450d 100644 --- a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json @@ -1688,7 +1688,7 @@ "340802" ], [ - "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", "542767", "340802" ] @@ -1723,7 +1723,7 @@ "340802" ], [ - "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", "56044", "340802" ] @@ -2568,7 +2568,7 @@ "340802" ], [ - "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", "291896", "340802" ] @@ -2773,7 +2773,7 @@ "340802" ], [ - "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", "10", "340802" ] @@ -3248,7 +3248,7 @@ "340802" ], [ - "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", "40000", "340802" ] @@ -6008,7 +6008,7 @@ "340802" ], [ - "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", "8104017", "340802" ] diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json index e57bcc73..f1877fea 100644 --- a/scripts/beanstalkShipments/data/beanstalkPlots.json +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -14922,6207 +14922,6207 @@ ] ], [ - "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", [ [ - "167759367131210", - "22900000000" + "462646168927", + "1666666666" ], [ - "167888523131210", - "55944700000" + "28368015360976", + "10000000000" ], [ - "237962196099642", - "100073216296" + "28385711672356", + "4000000000" ], [ - "310802904043371", - "14439424263" + "28553316405699", + "56203360846" ], [ - "325514674435893", - "12665494224" + "31772724860478", + "43540239232" ], [ - "326097719542277", - "39015199159" + "32013293099710", + "15000000000" ], [ - "331731353814149", - "12750000000" + "33106872744841", + "6434958505" ], [ - "394960156695542", - "13280063140" + "33262951017861", + "9375000000" ], [ - "394973436758682", - "9294571287" + "33290510627174", + "565390687" ], [ - "394982731329969", - "13275856475" + "38722543672289", + "250000000" ], [ - "587176458056494", - "95701320000" + "61000878716919", + "789407727" ], [ - "588122611316494", - "39546000000" + "72536373875278", + "200000000" ], [ - "588426431066494", - "39546000000" + "75784287632794", + "2935934380" ], [ - "588730250816494", - "39546000000" - ] - ] - ], - [ - "0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490", - [ + "75995951619880", + "5268032293" + ], [ - "344363596850037", - "262152482" + "118322555232226", + "5892426278" ], [ - "643965943463481", - "3445015742" - ] - ] - ], - [ - "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B", - [ + "180071240663041", + "81992697619" + ], [ - "236244855469125", - "38237815837" + "217474381338301", + "1293174476" ], [ - "245109370270781", - "34408580863" - ] - ] - ], - [ - "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6", - [ + "220144194502828", + "47404123300" + ], [ - "33152426109285", - "950000000" + "317859517384357", + "291195415400" ], [ - "376451535261141", - "20462887750" + "333622810114113", + "200755943301" ], [ - "402285929035461", - "12155421305" + "338910099578361", + "72913082044" ], [ - "601721714889098", - "16779875070" + "344618618497376", + "81000597500" ], [ - "634408726140467", - "5874873919" + "378227726508635", + "645363133" ], [ - "636816242727841", - "9388515625" + "444973868346640", + "61560768641" ], [ - "640269368983719", - "5646988248" + "477195175494445", + "29857571563" ], [ - "644531424959665", - "3374500000" - ] - ] - ], - [ - "0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0", - [ + "574387565763701", + "55857695832" + ], [ - "38718513657669", - "4030014620" - ] - ] - ], - [ - "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", - [ + "575679606872092", + "38492647384" + ], [ - "229131219280976", - "258558904960" + "626184530707078", + "90718871797" ], [ - "272277124488125", - "42383755833" + "634031481420456", + "3170719864" ], [ - "312882591552535", - "134100000000" + "634034652140320", + "1827630964" ], [ - "643668839963316", - "842769388" + "647175726076112", + "16711431033" ], [ - "648155192736605", - "7110933861" + "647388734023467", + "9748779666" ], [ - "650498612856813", - "471976956" - ] - ] - ], - [ - "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2", - [ + "680095721530457", + "10113856826" + ], [ - "309775525497403", - "43672091722" + "706133899990342", + "2720589483246" ], [ - "320003040403364", - "109484641436" - ] - ] - ], - [ - "0x5edd743E40c978590d987c74912b9424B7258677", - [ + "720495305315880", + "55569209804" + ], [ - "221809097720471", - "4678453384" - ] - ] - ], - [ - "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391", - [ + "721225229970053", + "55487912201" + ], [ - "266751336572658", - "87321731643" + "721409921103392", + "4415003338706" ], [ - "868135118214992", - "13312303253" - ] - ] - ], - [ - "0x5F067841319aD19eD32c432ac69DcF32AC3a773F", - [ + "726480740731617", + "2047412139790" + ], [ - "240506937851712", - "67319170048" - ] - ] - ], - [ - "0x5F0f6F695FebF386AA93126237b48c424961797B", - [ + "729812277370084", + "5650444595733" + ], [ - "402409775526018", - "30263707163" - ] - ] - ], - [ - "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", - [ + "735554122237517", + "2514215964115" + ], [ - "187149515866713", - "4230389743" - ] - ] - ], - [ - "0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD", - [ + "741007335527824", + "48848467587" + ], [ - "782528476402712", - "75051323081" - ] - ] - ], - [ - "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA", - [ - [ - "529771946401834", - "27264468841" + "743270084189585", + "44269246366" ], [ - "529812382369870", - "50596246406" - ] - ] - ], - [ - "0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a", - [ - [ - "228358236830906", - "37513251466" - ] - ] - ], - [ - "0x6040FDCa7f81540A89D39848dFC393DfE36efb92", - [ - [ - "120170158809998", - "32175706816" - ] - ] - ], - [ - "0x60A188efbC22bBC3aaB17084e2a0A26F85A640bC", - [ - [ - "27810434645322", - "249268258919" + "743356388661755", + "284047664" ], [ - "73925887383291", - "254078110756" + "743356672709419", + "804932236" ], [ - "180671778459665", - "175568451420" + "743357477641655", + "744601051" ], [ - "181897526983919", - "213880008209" + "743358222242706", + "636559806" ], [ - "185004884855656", - "175801604856" + "743358858802512", + "569027210" ], [ - "211719470709597", - "337001078730" + "743359427829722", + "616622839" ], [ - "395329957955593", - "34024756793" + "743360044452561", + "590416341" ], [ - "561850511130774", - "15695221534" + "743360634868902", + "576948243" ], [ - "562892769802308", - "32896000000" + "743361211817145", + "347174290" ], [ - "572224872945253", - "32896500000" + "743361558991435", + "112939223481" ], [ - "579114950154306", - "2638341158" + "743474498214916", + "37245408077" ], [ - "587092346756494", - "84111300000" + "743511743622993", + "27738836042" ], [ - "603776314537146", - "3284158899" + "743539482459035", + "36180207225" ], [ - "634044404773204", - "5637466721" + "743575662666260", + "9251544878" ], [ - "634338197219686", - "28471528595" + "743600698167087", + "4239282" ], [ - "634400137746283", - "8588394184" + "743630495498696", + "25004744107" ], [ - "634473649794302", - "7448178586" + "743655500242803", + "27838968460" ], [ - "637043244126036", - "72498841440" + "743683339211263", + "1045028130" ], [ - "643049601358775", - "4230557254" + "743715232207665", + "154091444" ], [ - "643081736145350", - "5554593027" + "743715386299109", + "356610619" ], [ - "643172812995983", - "131685951867" + "743715742909728", + "792560930" ], [ - "644589920367054", - "11609907184" + "743716535470658", + "930442023" ], [ - "659543492088550", - "6350979273" - ] - ] - ], - [ - "0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9", - [ - [ - "611674338974532", - "34873097638" - ] - ] - ], - [ - "0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF", - [ - [ - "31704149901004", - "64000000000" - ] - ] - ], - [ - "0x61C562283B268F982ffa1334B643118eACF54480", - [ - [ - "205756979635888", - "13720671838" - ] - ] - ], - [ - "0x61C95fe68834db2d1f323bb85F0590690002a06d", - [ - [ - "298766493215442", - "25000000000" - ] - ] - ], - [ - "0x61e193e514DE408F57A648a641d9fcD412CdeD82", - [ - [ - "316297504741935", - "1134976125606" - ] - ] - ], - [ - "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", - [ - [ - "69169795658552", - "1194000000000" + "743717465912681", + "930527887" ], [ - "350562558201369", - "1837200000000" + "743718396440568", + "930718264" ], [ - "358055253899368", - "1873200000000" + "743719327158832", + "900100878" ], [ - "367514336456086", - "1912200000000" + "743720227259710", + "886888605" ], [ - "385786821567282", - "3253000000000" - ] - ] - ], - [ - "0x6223dd77dd5ED000592d7A8C745D68B2599C640D", - [ - [ - "595098019071334", - "7805953000" - ] - ] - ], - [ - "0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A", - [ - [ - "648525331599001", - "1795068" - ] - ] - ], - [ - "0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12", - [ - [ - "763836703327895", - "897670384" - ] - ] - ], - [ - "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", - [ - [ - "199790557977382", - "20307567726" + "743721114148315", + "1195569000" ], [ - "203292613872621", - "44559574776" + "743722931420691", + "332343086" ], [ - "208496431950430", - "135909962633" + "743723263763777", + "983775747" ], [ - "222747868386967", - "432111595595" + "743724247539524", + "409861551" ], [ - "224182522802981", - "88646625543" + "743724657401075", + "97298663" ], [ - "238654491458777", - "122335228001" + "743724754699738", + "86768693" ], [ - "243345979795662", - "193838339361" + "743724841468431", + "33509916350" ], [ - "681329690104184", - "100824447648" + "743758351384781", + "69774513803" ], [ - "766650786494524", - "466125005645" + "743828125898584", + "21981814788" ], [ - "867024271662802", - "228905711977" + "743850107713372", + "43182294" ], [ - "882883404002569", - "255298540903" - ] - ] - ], - [ - "0x632f3c0548f656c8470e2882582d02602CfF821C", - [ - [ - "7390511503423", - "5321466970" - ] - ] - ], - [ - "0x6343B307C288432BB9AD9003B4230B08B56b3b82", - [ - [ - "190774347525626", - "3001979267" + "743850150895666", + "37264237" ], [ - "227899892118673", - "9098821991" + "743850188159903", + "247711" ], [ - "267222626735429", - "10019159841" + "743850188407614", + "417946" ], [ - "318350491352535", - "10004250325" + "743850188825560", + "120504819738" ], [ - "338983012660405", - "10015549677" + "743970693645298", + "178855695867" ], [ - "361229466618475", - "5009439565" + "744149549341165", + "125886081790" ], [ - "400381174841304", - "3004757667" + "744819318753537", + "98324836380" ], [ - "400384179598971", - "2922196166" + "759669831627157", + "91465441036" ], [ - "408334868608585", - "1844177360" + "759761297451604", + "12346431080" ], [ - "408336712785945", - "1693453752" + "759773643882684", + "1557369578" ], [ - "547242764896211", - "10048376141" - ] - ] - ], - [ - "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", - [ - [ - "429076381887304", - "39624686375" + "759775201252262", + "18264975890" ], [ - "841660754217816", - "4019358849" - ] - ] - ], - [ - "0x6384F5369d601992309c3102ac7670c62D33c239", - [ - [ - "86426430669928", - "93757812192" + "759793466228152", + "133677" ], [ - "120202334516814", - "76711875999" + "759794285432848", + "26613224094" ], [ - "140665414631918", - "364919687105" - ] - ] - ], - [ - "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", - [ - [ - "585447600884457", - "2534228224" + "759820979493945", + "70435190" ], [ - "586646633174881", - "5673597364" - ] - ] - ], - [ - "0x647bC16DCC2A3092A59a6b9F7944928d94301042", - [ - [ - "234363994367301", - "101810011675" + "759821049929135", + "64820367" ], [ - "595338144020334", - "47102200000" - ] - ] - ], - [ - "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", - [ - [ - "201178239618701", - "68900140210" + "759821114749502", + "315142246" ], [ - "250715780766453", - "25000000000" + "759821772251897", + "342469548" ], [ - "258249957689022", - "200370650949" + "759822114721445", + "22786793078" ], [ - "258565835620739", - "183219147770" + "759844955449185", + "62362349" ], [ - "258845609042904", - "3445725605" + "759845017811534", + "79862410" ], [ - "637141029774703", - "5486788601" + "759845097673944", + "78350903" ], [ - "646951101223564", - "1957663487" + "759845176024847", + "81575013" ], [ - "647219853688450", - "4812444606" + "759845257599860", + "81611843" ], [ - "648341533215584", - "11578312077" + "759845339211703", + "79874694" ], [ - "650128399980624", - "3108966478" - ] - ] - ], - [ - "0x64e149a229fa88AaA2A2107359390F3b76E518AD", - [ - [ - "250672958372559", - "42822393894" - ] - ] - ], - [ - "0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287", - [ - [ - "219577491138396", - "76644307685" - ] - ] - ], - [ - "0x6525e122975C19CE287997E9BBA41AD0738cFcE4", - [ - [ - "408056818038549", - "78748758703" - ] - ] - ], - [ - "0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E", - [ - [ - "28060962539990", - "233215974" - ] - ] - ], - [ - "0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8", - [ - [ - "408040736449697", - "6081271018" - ] - ] - ], - [ - "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a", - [ - [ - "649773468164491", - "623800000" + "759845419086397", + "79925681" ], [ - "650496758556813", - "1854300000" + "759845499012078", + "79231634" ], [ - "650650384373882", - "1110960000" + "759845578243712", + "73291169" ], [ - "650881433728485", - "3081500000" + "759845651534881", + "61264703" ], [ - "651225562512104", - "675422900" + "759845766640518", + "56977225" ], [ - "651616768941819", - "3827342044" + "759845823617743", + "71386527" ], [ - "651857559559538", - "1653185142" + "759845895004270", + "75906832" ], [ - "653859484421522", - "1610442418" + "759846058683685", + "75729409" ], [ - "654202995304304", - "1550473112" + "759846134413094", + "27722926" ], [ - "811198403550001", - "12682309008" - ] - ] - ], - [ - "0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3", - [ + "759846162136020", + "30197986" + ], [ - "767642883227856", - "39768883344" - ] - ] - ], - [ - "0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22", - [ + "759846192334006", + "158241812" + ], [ - "326213533536434", - "11833992957" - ] - ] - ], - [ - "0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD", - [ + "759846350575818", + "123926293" + ], [ - "33204784130073", - "10666666666" - ] - ] - ], - [ - "0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60", - [ + "759846474502111", + "124139589" + ], [ - "245060804994381", - "1401270600" - ] - ] - ], - [ - "0x66B0115e839B954A6f6d8371DEe89dE90111C232", - [ + "759846598641700", + "25193251" + ], [ - "174758503486179", - "45" + "759846623834951", + "25387540" ], [ - "190554003270326", - "5514286863" + "759846649222491", + "665345" ], [ - "190559517557189", - "891296390" + "759846954659102", + "631976394" ], [ - "190578231407162", - "26273598464" + "759847586635496", + "66958527" ], [ - "194817411438496", - "85437509504" + "759847653594023", + "44950580" ], [ - "201412155317743", - "29101504817" + "759847698544603", + "46547201" ], [ - "216687848171321", - "83474118399" + "759847745091804", + "18839036" ], [ - "237529097661776", - "81104453323" + "759847763930840", + "270669443" ], [ - "342905708461958", - "33242114013" + "759848034600283", + "365575215" ], [ - "342948003842023", - "29159870308" + "759848595655012", + "187295653" ], [ - "355390284502004", - "62595004655" + "759848782950665", + "25295452" ], [ - "525442674564630", - "41624181591" + "759848808246117", + "173058283" ], [ - "562634470802308", - "120603000000" + "759848981304400", + "63821133" ], [ - "564800852312708", - "120603630000" + "759849045125533", + "25336780" ], [ - "566205620733477", - "120603630000" + "759849070462313", + "29081391" ], [ - "568866721950815", - "120603630000" + "759849099543704", + "29122172" ], [ - "570126495171215", - "120603630000" + "759849128665876", + "28706993" ], [ - "571966572157753", - "120603630000" - ] - ] - ], - [ - "0x66D8293781eF24184aa9164878dfC0486cfa9Aac", - [ + "759849157372869", + "13456201" + ], [ - "343136977526193", - "2215279737" - ] - ] - ], - [ - "0x66F1089eD7D915bC7c7055d2d226487362347d39", - [ + "759849170829070", + "36511282" + ], [ - "323154203825866", - "1110069378" - ] - ] - ], - [ - "0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E", - [ + "759849207340352", + "41243780" + ], [ - "84457530104959", - "209844262" - ] - ] - ], - [ - "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD", - [ + "759849248584132", + "33852678" + ], [ - "267825369582182", - "436592457" + "759849282436810", + "33956125" ], [ - "273716745936018", - "6205732675" + "759849316392935", + "34132617" ], [ - "315755940953422", - "929512985" - ] - ] - ], - [ - "0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631", - [ + "759849350525552", + "17041223" + ], [ - "627581126030410", - "272397265638" + "759849367566775", + "20273897" ], [ - "779831387208671", - "1602671680567" + "759849387840672", + "9037475" ], [ - "784127342017442", - "1392774986727" + "759849396878147", + "45923781" ], [ - "790449527867009", - "141565176499" + "759849442801928", + "52882809" ], [ - "869613014234285", - "58474432063" - ] - ] - ], - [ - "0x676B0Add3De8d340201F3F58F486beFEDCD609cD", - [ + "759849495684737", + "71491609" + ], [ - "506941790964613", - "36337517023" - ] - ] - ], - [ - "0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6", - [ + "759849567176346", + "39781360" + ], [ - "866505232600864", - "362107628548" - ] - ] - ], - [ - "0x679AeE8b2fA079B23934A1afB2d7d48DD7244560", - [ + "759849606957706", + "35612937" + ], [ - "648088003454438", - "6967239311" - ] - ] - ], - [ - "0x679B4172E1698579d562D1d8b4774968305b80b2", - [ + "759849642570643", + "45789959" + ], [ - "395530746048580", - "6726740160" - ] - ] - ], - [ - "0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408", - [ - [ - "631039934526101", - "11565611800" - ] - ] - ], - [ - "0x6820572d10F8eC5B48694294F3FCFa1A640CFf40", - [ - [ - "229953796446901", - "10214275276" + "759849688360602", + "46291324" ], [ - "278918417135852", - "150000000000" + "759849734651926", + "46416554" ], [ - "279078204011052", - "40213124800" - ] - ] - ], - [ - "0x682864C9Bc8747c804A6137d6f0E8e087f49089e", - [ - [ - "764116409712760", - "376300000" + "759849781068480", + "46480026" ], [ - "766112231428357", - "103950567" + "759849827548506", + "28909947" ], [ - "767877082644924", - "4494000" + "759849856458453", + "20566561" ], [ - "768720341081119", - "10972000" + "759849877025014", + "20612970" ], [ - "768720352053119", - "54860000" - ] - ] - ], - [ - "0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21", - [ - [ - "237297173028709", - "34185829440" + "759849897637984", + "9530420" ], [ - "237610202115099", - "190472618512" + "759849923422103", + "43423401" ], [ - "257002346228995", - "490552229489" + "759849966845504", + "11714877" ], [ - "257720381137420", - "195286958683" - ] - ] - ], - [ - "0x686381d3D0162De16414A274ED5FbA9929d4B830", - [ + "759864364377919", + "13050269" + ], [ - "344768619702251", - "55026606400" - ] - ] - ], - [ - "0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3", - [ + "759864377428188", + "28949561" + ], [ - "720451623201018", - "43682114862" - ] - ] - ], - [ - "0x688b3a3771011145519bd8db845d0D0739351C5D", - [ + "759864451656441", + "45362892" + ], [ - "598166530577023", - "297938099" - ] - ] - ], - [ - "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07", - [ + "759864497019333", + "45386397" + ], [ - "637348332706520", - "3665297857" + "759864542405730", + "44251644" ], [ - "641239727537305", - "3801049629" - ] - ] - ], - [ - "0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe", - [ + "759864623518170", + "16029726" + ], [ - "338993028210082", - "30086002693" - ] - ] - ], - [ - "0x68ca44eD5d5Df216D10B14c13D18395a9151224a", - [ + "759864639547896", + "27422448" + ], [ - "327022674019051", - "298522321813" - ] - ] - ], - [ - "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3", - [ + "759864666970344", + "45324196" + ], [ - "59447104921333", - "48580563120" + "759864712294540", + "45381527" ], [ - "59495685484453", - "10000000" + "759864794252615", + "45249060" ], [ - "175839043720271", - "639000700700" + "759864839501675", + "38552197" ], [ - "326260465529391", - "17549000000" + "759864878053872", + "45325980" ], [ - "327866927799830", - "200000000000" + "759864923379852", + "45332668" ], [ - "458946849997346", - "1509444773173" + "759864968712520", + "14947041" ], [ - "487104864611440", - "8118000000000" + "759864983659561", + "44411176" ], [ - "529948130178467", - "60353499994" + "759865028070737", + "45841550" ], [ - "540025578631290", - "1050580350517" + "759865073912287", + "37491304" ], [ - "541230880735707", - "1053414238201" + "759865111403591", + "35823677" ], [ - "676535948745205", - "2281535426" + "759865189244823", + "45959807" ], [ - "788056651665705", - "1423950000000" - ] - ] - ], - [ - "0x6974611c9e1437D74c07b5F031779Fb88f19923E", - [ + "759865235204630", + "28621023" + ], [ - "808563031359360", - "138799301180" - ] - ] - ], - [ - "0x699095648BBc658450a22E90DF34BD7e168FCedB", - [ + "759865309352063", + "54352361" + ], [ - "350526188741041", - "1867890780" - ] - ] - ], - [ - "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2", - [ + "759865363704424", + "37604905" + ], [ - "205856377916701", - "23473305765" + "759865401309329", + "48060122" ], [ - "228443474467376", - "26144594910" + "759865502784387", + "41998112" ], [ - "229742216600874", - "196893643061" - ] - ] - ], - [ - "0x69e02D001146A86d4E2995F9eCf906265aA77d85", - [ + "759865545775991", + "43017774" + ], [ - "662653511432800", - "41531785" + "759865588793765", + "45709130" ], [ - "740688026571943", - "293208703330" + "759865634502895", + "20672897" ], [ - "831131397455690", - "19412572061" + "759865655175792", + "18088532" ], [ - "849564839333111", - "16363837424" - ] - ] - ], - [ - "0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B", - [ - [ - "156811622805224", - "6930000000" + "759865673264324", + "176142052" ], [ - "156818552805224", - "462200000000" + "759865849406376", + "249729828" ], [ - "430072033491709", - "1719000000" + "759866099136204", + "111218297" ], [ - "430073752491709", - "1032300000" - ] - ] - ], - [ - "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4", - [ - [ - "639689672916916", - "22501064889" + "759866210354501", + "27934473" ], [ - "643650251457626", - "3358027804" + "759866238288974", + "27468895" ], [ - "643834369008756", - "4844561817" + "759866265757869", + "1914618989" ], [ - "643839213570573", - "10208237564" + "759868180376858", + "45603693" ], [ - "643944290955121", - "1478254943" + "759868225980551", + "45842728" ], [ - "643953518951321", - "8390490226" + "759868271823279", + "46014440" ], [ - "644024944088567", - "4012581233" + "759868317837719", + "46063229" ], [ - "644160211053924", - "6031653730" - ] - ] - ], - [ - "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", - [ - [ - "767548494200642", - "1261346400" - ] - ] - ], - [ - "0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b", - [ - [ - "650252699558669", - "893481478" - ] - ] - ], - [ - "0x6A7E0712838A0b257C20e042cf9b6C5E910F221F", - [ - [ - "50390109547988", - "13275316430" - ] - ] - ], - [ - "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", - [ - [ - "32060163672752", - "28148676958" + "759868363900948", + "2621289" ], [ - "150360950060615", - "242948254181" + "759868366522237", + "53709228" ], [ - "160053122684606", - "20023987333" + "759868420231465", + "52228978" ], [ - "161068340667787", - "20000000000" + "759868472460443", + "66561157603" ], [ - "342560304255977", - "333305645984" + "759935033618046", + "45751501" ], [ - "344389113234876", - "51504000000" + "759935079369547", + "45866818" ], [ - "344551768397376", - "66850100000" + "759935171141704", + "45924323" ], [ - "361685681657312", - "62680000000" + "759935217066027", + "27091944" ], [ - "363769394312766", - "102337151992" + "759935244157971", + "47094028" ], [ - "369426536456086", - "127987579783" + "759935291251999", + "4720868852" ], [ - "378552709136790", - "38488554613" + "759940035846319", + "79415211" ], [ - "395493517902828", - "6712331491" + "759940115261530", + "104887944" ], [ - "396929743473580", - "66231437063" + "759940220149474", + "104422502" ], [ - "402346745493273", - "26916949971" + "759940324571976", + "47123207" ], [ - "530133483678461", - "281553523845" + "759940371695183", + "21522781" ], [ - "576749818528380", - "128350847807" + "759940431848469", + "26567259" ], [ - "595690093032834", - "42417259406" + "759940458415728", + "28464738" ], [ - "624313265610454", - "235481948284" + "759940486880466", + "16535232" ], [ - "630539882897389", - "5506646911" + "759940529740783", + "23798092" ], [ - "630883526816254", - "5243434934" + "759940553538875", + "22130816" ], [ - "634139460032971", - "3421517319" + "759940575669691", + "19923295" ], [ - "634468058178676", - "2971508955" + "759940703254106", + "96921736" ], [ - "634935371920999", - "4637078134" + "759944301288885", + "148924295" ], [ - "639717387300187", - "77913000000" + "759944524831820", + "94934102" ], [ - "640555043042177", - "126770247812" + "759944631176184", + "441416" ], [ - "643639272958859", - "7174635902" + "759944876402388", + "86731197" ], [ - "646904567079253", - "9652153237" + "759945236861297", + "37118" ], [ - "680821347452730", - "115002187754" + "759945663978694", + "33147570" ], [ - "681087658581778", - "242031522406" + "759947353926358", + "19648269869" ], [ - "792702109000794", - "102830000000" + "759967315893614", + "43342636" ], [ - "828751559244596", - "110931518877" + "759967359236250", + "73180835" ], [ - "846523170952449", - "523488988207" - ] - ] - ], - [ - "0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3", - [ - [ - "78446810994423", - "97830465871" - ] - ] - ], - [ - "0x6AB3E708231eBc450549B37f8DDF269E789ed322", - [ - [ - "139738901832021", - "217662351018" + "759968303751614", + "86480048" ], [ - "173645978954771", - "364480000000" + "759968390231662", + "87319503" ], [ - "177963922699291", - "567750000000" + "759968565049433", + "57445411" ], [ - "193365582223281", - "558500000000" + "759969182444540", + "86435423" ], [ - "198989464385361", - "323387400000" + "759969313128560", + "78853009" ], [ - "385686708784542", - "8120000000" + "759969922263950", + "86993082" ], [ - "385698306894276", - "11608985252" + "759970009257032", + "87071115" ], [ - "402298084456766", - "29146976013" + "759970096328147", + "87094141" ], [ - "403324142505816", - "17337534783" + "759970659966091", + "7037654" ], [ - "525484298746221", - "68490328982" + "759970895945609", + "88340633" ], [ - "573159215088219", - "7613761316" + "759971171933682", + "103831674" ], [ - "588069376316494", - "53235000000" + "759971792380007", + "55918771" ], [ - "588373196066494", - "53235000000" + "759971848298778", + "51663688" ], [ - "588677015816494", - "53235000000" + "759971899962466", + "51820149" ], [ - "635125146283365", - "5443675000" + "759971951782615", + "53263163" ], [ - "635372490238881", - "53837773087" + "759972005045778", + "46273362" ], [ - "637610400582193", - "150901692840" + "759972051319140", + "11764053" ], [ - "655777079955872", - "34680190734" + "759972063083193", + "44521152" ], [ - "657007246656249", - "26448621220" + "759972107604345", + "54315334" ], [ - "659046307218408", - "140966208215" + "759972270510579", + "52771216" ], [ - "675881740999403", - "58060000000" + "759972378810991", + "53615733" ], [ - "676880184584605", - "81212739087" + "759972432426724", + "54009683" ], [ - "682023052979739", - "49057997400" + "759972545991397", + "40392605" ], [ - "744289021047316", - "8009578710" - ] - ] - ], - [ - "0x6ab4566Df630Be242D3CD48777aa4CA19C635f56", - [ - [ - "339523096579827", - "66070456308" - ] - ] - ], - [ - "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43", - [ - [ - "67339711337633", - "38964529411" + "759972586384002", + "40570272" ], [ - "826344351400868", - "285187152872" - ] - ] - ], - [ - "0x6B7F8019390Aa85b4A8679f963295D568098Cf51", - [ - [ - "4970156360204", - "42435663718" - ] - ] - ], - [ - "0x6b87460Ce18951D31A7175cAbE2f3fc449E54256", - [ + "759972626954274", + "29991995" + ], [ - "298986493215464", - "38084213662" + "759972656946269", + "27715408" ], [ - "341689788844501", - "46789171777" - ] - ] - ], - [ - "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", - [ + "759972684661677", + "10745158" + ], [ - "33151317189285", - "64286521" + "759972695406835", + "53647337" ], [ - "576748931831644", - "886696736" + "759973067945793", + "43509245" ], [ - "585450135112681", - "2349268241" + "760353358762258", + "10893874" ], [ - "634472174530302", - "1475264000" - ] - ] - ], - [ - "0x6bDd8c55a23D432D34c276A87584b8A96C03717F", - [ + "760353369656132", + "992291" + ], [ - "52187916983200", - "19763851047" + "760353370648423", + "136316" ], [ - "52207680834247", - "19747984525" - ] - ] - ], - [ - "0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d", - [ + "760353370784739", + "147677" + ], [ - "861503972645416", - "15704000000" - ] - ] - ], - [ - "0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F", - [ + "760353371573213", + "659890" + ], [ - "273007832358728", - "21" - ] - ] - ], - [ - "0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd", - [ + "760353372233103", + "46092807" + ], [ - "631710479555794", - "27065136362" - ] - ] - ], - [ - "0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09", - [ + "760354201137939", + "3218014" + ], [ - "187326232141980", - "250596023597" - ] - ] - ], - [ - "0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB", - [ + "760354238838872", + "3273321614" + ], [ - "326049910381783", - "22789160494" + "760357963287583", + "52520804" ], [ - "340180819742396", - "88167423404" + "760358123735957", + "112541922486" ], [ - "635083372725365", - "41773558000" + "760472183068657", + "71399999953" ], [ - "635350828552881", - "21661686000" - ] - ] - ], - [ - "0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3", - [ + "760765586953427", + "195667368889" + ], [ - "195647572282194", - "827187570265" - ] - ] - ], - [ - "0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27", - [ + "760961254322316", + "846285958415" + ], [ - "535108406138660", - "1084177233275" + "761807542325030", + "712321671" ], [ - "536192583371935", - "1688110786406" + "761808255104338", + "10685317968" ], [ - "537880694158341", - "1727536772397" + "761818941407193", + "38669865140" ], [ - "542568043607639", - "1438806398621" - ] - ] - ], - [ - "0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190", - [ + "761858011206868", + "52031027" + ], [ - "228441190352276", - "2284115100" + "761858211139284", + "53537634" ], [ - "264360680476760", - "16145852467" - ] - ] - ], - [ - "0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674", - [ + "761858291968910", + "1954482199" + ], [ - "769310460222539", - "1300464490557" + "761860307483525", + "798157403" ], [ - "771140309190191", - "3056591031171" + "762237672060652", + "57392002182" ], [ - "774579618067014", - "4504970931573" - ] - ] - ], - [ - "0x6D4ed8a1599DEe2655D51B245f786293E03d58f7", - [ + "762295918132248", + "68617976" + ], [ - "768780574044414", - "4739952359" - ] - ] - ], - [ - "0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968", - [ + "762295986750224", + "181183510038" + ], [ - "273349081469206", - "22041535128" - ] - ] - ], - [ - "0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06", - [ + "762477170260262", + "181104817321" + ], [ - "837305979426084", - "1501381879417" - ] - ] - ], - [ - "0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B", - [ + "762658275077583", + "181134595436" + ], [ - "770929992347971", - "34510450293" - ] - ] - ], - [ - "0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10", - [ + "762928154263486", + "12718343972" + ], [ - "397022450164102", - "50261655503" - ] - ] - ], - [ - "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D", - [ + "762941373378458", + "61742453" + ], [ - "805211526908643", - "72305318668" + "762941584284511", + "53571451" ], [ - "883628500845473", - "82518671123" + "762941637855962", + "53583667" ], [ - "911959750190927", - "55938224595" + "762941691439629", + "503128696018" ], [ - "919283383995914", - "76438100488" - ] - ] - ], - [ - "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E", - [ + "763444820135647", + "9452272123" + ], [ - "565689461995977", - "151830000000" + "763454275602361", + "24685659026" ], [ - "567495253157146", - "101220000000" + "763478961261387", + "50245820668" ], [ - "567596473157146", - "101220000000" + "763529207082055", + "45323986837" ], [ - "571005615479484", - "101220000000" + "763574531068892", + "38976282600" ], [ - "571106835479484", - "101220000000" - ] - ] - ], - [ - "0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4", - [ + "763877196713494", + "54224527" + ], [ - "324867132703136", - "44584623736" - ] - ] - ], - [ - "0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C", - [ + "763877250938021", + "54871543" + ], [ - "636757155365094", - "22691440968" - ] - ] - ], - [ - "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9", - [ + "763877347112986", + "53640521" + ], [ - "199564902491192", - "4" + "763879425886186", + "18918512681" ], [ - "344839373651771", - "479115910" + "763899542751244", + "4287074277" ], [ - "641506736028021", - "2916178314" + "763904856308950", + "91042132" ], [ - "641509652206335", - "2749595885" + "763904947351082", + "3672111531" ], [ - "643096514658419", - "5194777863" + "763908632298791", + "1924103043" ], [ - "643101709436282", - "4222978151" + "763910715862653", + "4104368630" ], [ - "643633701423724", - "5571535135" + "763938664793385", + "889781905" ], [ - "643798096101417", - "3171247947" + "763975977681622", + "85746574" ], [ - "643890241268202", - "4934195535" + "763976127391221", + "54879926" ], [ - "643895175463737", - "4471591756" + "763976238932410", + "67220754" ], [ - "644123990666901", - "8655423354" + "763978572723857", + "2432585925" ], [ - "644290308134813", - "6411168248" + "763983475557042", + "2433575022" ], [ - "644388265508089", - "8012158467" + "763985961279749", + "3362361779" ], [ - "644422095342082", - "5047673478" + "763989323641528", + "66961666112" ], [ - "644442516225274", - "5546831538" + "764448523798789", + "9214910" ], [ - "646729515149835", - "2514524429" + "764448533013699", + "3175483736" ], [ - "648197602149037", - "2827660397" + "764453314028098", + "886719471" ], [ - "648807271975686", - "17620350" - ] - ] - ], - [ - "0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4", - [ + "766181126764911", + "110330114890" + ], [ - "376299347730245", - "25727586841" - ] - ] - ], + "766291456879801", + "143444348214" + ], + [ + "767321251748842", + "180967833670" + ], + [ + "767824420446983", + "1158445599" + ], + [ + "767978192014986", + "1606680000" + ], + [ + "790662167913055", + "60917382823" + ], + [ + "792657494145217", + "11153713894" + ], + [ + "845186146706783", + "62659298764" + ] + ] + ], [ - "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", + "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", [ [ - "635536095356615", - "1027219504" + "167759367131210", + "22900000000" ], [ - "635987453662106", - "880116472" + "167888523131210", + "55944700000" ], [ - "641512401802220", - "5493342645" + "237962196099642", + "100073216296" ], [ - "644555830955508", - "2808417895" + "310802904043371", + "14439424263" ], [ - "646749582249400", - "903060349" + "325514674435893", + "12665494224" ], [ - "646766913990107", - "1939941186" + "326097719542277", + "39015199159" ], [ - "646945916373621", - "3045363522" + "331731353814149", + "12750000000" ], [ - "767125477756875", - "1001496834" + "394960156695542", + "13280063140" ], [ - "767300591235981", - "1890000000" + "394973436758682", + "9294571287" ], [ - "767972799745643", - "4444320090" - ] - ] - ], - [ - "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", - [ + "394982731329969", + "13275856475" + ], [ - "403467977485669", - "4265691158" - ] - ] - ], - [ - "0x6fBDc235B6f55755BE1c0B554469633108E60608", - [ + "587176458056494", + "95701320000" + ], [ - "191901677757094", - "262000796007" + "588122611316494", + "39546000000" + ], + [ + "588426431066494", + "39546000000" + ], + [ + "588730250816494", + "39546000000" ] ] ], [ - "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54", + "0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490", [ [ - "331756528135803", - "61934486285" + "344363596850037", + "262152482" ], [ - "408321036814023", - "6779928792" + "643965943463481", + "3445015742" ] ] ], [ - "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B", + "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B", [ [ - "420441198802", - "387146704" + "236244855469125", + "38237815837" ], [ - "767889723281779", - "68608459317" + "245109370270781", + "34408580863" ] ] ], [ - "0x702aA86601aBc776bEA3A8241688085125D75AE2", + "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6", [ [ - "109497928877661", - "23439331676" + "33152426109285", + "950000000" ], [ - "205879851222466", - "33943660000" + "376451535261141", + "20462887750" ], [ - "506165499383895", - "3604981492" + "402285929035461", + "12155421305" ], [ - "506169104365387", - "7211374244" + "601721714889098", + "16779875070" ], [ - "542284294973908", - "10000615500" + "634408726140467", + "5874873919" + ], + [ + "636816242727841", + "9388515625" + ], + [ + "640269368983719", + "5646988248" + ], + [ + "644531424959665", + "3374500000" ] ] ], [ - "0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b", + "0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0", [ [ - "385225630461615", - "15974580090" + "38718513657669", + "4030014620" ] ] ], [ - "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", [ [ - "157553403132001", - "19294351466" + "229131219280976", + "258558904960" ], [ - "644387467914405", - "797593684" + "272277124488125", + "42383755833" ], [ - "648282232925391", - "5285515919" + "312882591552535", + "134100000000" ], [ - "649313442399124", - "18516226556" + "643668839963316", + "842769388" ], [ - "672632693625732", - "17500007580" + "648155192736605", + "7110933861" + ], + [ + "650498612856813", + "471976956" ] ] ], [ - "0x70a9c497536E98F2DbB7C66911700fe2b2550900", + "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2", [ [ - "643856074680084", - "518323846" - ], - [ - "644234859479000", - "279246690" - ], - [ - "644246226623579", - "197641438" - ], - [ - "644255862272829", - "274579086" - ], - [ - "644318860467072", - "289371263" - ], - [ - "644344232569703", - "1080267604" - ], - [ - "644350860239846", - "2255393372" + "309775525497403", + "43672091722" ], [ - "644353115633218", - "4452414623" - ], + "320003040403364", + "109484641436" + ] + ] + ], + [ + "0x5edd743E40c978590d987c74912b9424B7258677", + [ [ - "677491281789418", - "2857142857" - ], + "221809097720471", + "4678453384" + ] + ] + ], + [ + "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391", + [ [ - "681685922435654", - "25111379095" + "266751336572658", + "87321731643" ], [ - "917061939949695", - "32052786097" + "868135118214992", + "13312303253" ] ] ], [ - "0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793", + "0x5F067841319aD19eD32c432ac69DcF32AC3a773F", [ [ - "340164692018203", - "16127724193" + "240506937851712", + "67319170048" ] ] ], [ - "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", + "0x5F0f6F695FebF386AA93126237b48c424961797B", [ [ - "33152426109281", - "4" - ], - [ - "41333271497978", - "668874033" - ], - [ - "41370284961658", - "2693066940" - ], - [ - "88857695552777", - "1354378846" - ], - [ - "647760366592966", - "25920905560" - ], - [ - "648612566573043", - "33" - ], - [ - "648651086279479", - "22959268" - ], - [ - "649184309005289", - "2278449" - ], - [ - "649236453132845", - "19324702" - ], - [ - "649284881951220", - "48009418" - ], - [ - "649682081565764", - "649539942" - ], - [ - "649693481105706", - "448369312" - ], - [ - "649874764673718", - "2584832868" - ], - [ - "739098370599205", - "19781032784" - ], - [ - "741941794536593", - "7498568832" - ], - [ - "760171881624417", - "11891246578" + "402409775526018", + "30263707163" ] ] ], [ - "0x70c65accB3806917e0965C08A4a7D6c72F17651A", + "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", [ [ - "767503070574842", - "4117776465" + "187149515866713", + "4230389743" ] ] ], [ - "0x70C8eE0223D10c150b0db98A0423EC18Ec5aCa89", + "0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD", [ [ - "317764819055205", - "94698329152" + "782528476402712", + "75051323081" ] ] ], [ - "0x70F11dbD21809EbCd4C6604581103506A6a8443A", + "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA", [ [ - "324855687987034", - "11444716102" - ] - ] - ], - [ - "0x7125B7C60Ec85F9aD33742D9362f6161d403EC92", - [ + "529771946401834", + "27264468841" + ], [ - "185793383994705", - "206785636228" + "529812382369870", + "50596246406" ] ] ], [ - "0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22", + "0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a", [ [ - "324806023022229", - "28234479163" - ], - [ - "397009213772846", - "13236391256" + "228358236830906", + "37513251466" ] ] ], [ - "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", + "0x6040FDCa7f81540A89D39848dFC393DfE36efb92", [ [ - "59495695484453", - "504171940643" - ], - [ - "124490727082220", - "3038100000000" - ], - [ - "129427950156525", - "467400000000" - ], - [ - "202960513872621", - "332100000000" + "120170158809998", + "32175706816" ] ] ], [ - "0x7193b82899461a6aC45B528d48d74355F54E7F56", + "0x60A188efbC22bBC3aaB17084e2a0A26F85A640bC", [ [ - "409573727889316", - "100323000000" + "27810434645322", + "249268258919" ], [ - "655166761861127", - "1629422984" + "73925887383291", + "254078110756" ], [ - "679990486184882", - "101083948638" - ] - ] - ], - [ - "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8", - [ - [ - "43977781538372", - "960392727042" + "180671778459665", + "175568451420" ], [ - "53415449139505", - "560000421094" + "181897526983919", + "213880008209" ], [ - "84043081856785", - "88783500000" + "185004884855656", + "175801604856" ], [ - "87737275673292", - "29174580000" + "211719470709597", + "337001078730" ], [ - "121055292369428", - "595350750000" + "395329957955593", + "34024756793" ], [ - "153930334477670", - "722113163135" + "561850511130774", + "15695221534" ], [ - "337103989850712", - "208640000000" + "562892769802308", + "32896000000" ], [ - "390858944448074", - "1732376340000" + "572224872945253", + "32896500000" ], [ - "425808292285395", - "1709471220000" + "579114950154306", + "2638341158" ], [ - "747250339620613", - "1065835841221" - ] - ] - ], - [ - "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", - [ - [ - "312728908697529", - "60865019612" + "587092346756494", + "84111300000" ], [ - "396254532333032", - "26041274600" + "603776314537146", + "3284158899" ], [ - "517161961415705", - "28582806091" + "634044404773204", + "5637466721" ], [ - "525552789075203", - "119322721243" + "634338197219686", + "28471528595" ], [ - "547526923635099", - "70107880058" + "634400137746283", + "8588394184" ], [ - "561477850643778", - "198991954538" + "634473649794302", + "7448178586" ], [ - "562816854802308", - "75915000000" + "637043244126036", + "72498841440" ], [ - "564663155155208", - "75915000000" + "643049601358775", + "4230557254" ], [ - "566032344745977", - "75915000000" + "643081736145350", + "5554593027" ], [ - "569084686568315", - "75915000000" + "643172812995983", + "131685951867" ], [ - "572148957945253", - "75915000000" + "644589920367054", + "11609907184" ], [ - "672617693625732", - "15000000000" + "659543492088550", + "6350979273" ] ] ], [ - "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", + "0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9", [ [ - "670969471210715", - "112808577" + "611674338974532", + "34873097638" ] ] ], [ - "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", + "0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF", [ [ - "258749054768509", - "81750376187" - ], - [ - "767116911500169", - "5542244064" + "31704149901004", + "64000000000" ] ] ], [ - "0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246", + "0x61C562283B268F982ffa1334B643118eACF54480", [ [ - "495339332225603", - "10275174620" + "205756979635888", + "13720671838" ] ] ], [ - "0x726C46B3E0d605ea8821712bD09686354175D448", + "0x61C95fe68834db2d1f323bb85F0590690002a06d", [ [ - "42578680325272", - "921515463464" - ], - [ - "308307791521525", - "1085880660191" + "298766493215442", + "25000000000" ] ] ], [ - "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2", + "0x61e193e514DE408F57A648a641d9fcD412CdeD82", [ [ - "90975474968757", - "37830812302" - ], - [ - "185768300642827", - "25083351878" - ], - [ - "189669106071687", - "31883191886" - ], - [ - "199587559564998", - "35132497379" - ], - [ - "274439437731803", - "42917709597" - ], - [ - "331649739813903", - "61822486683" + "316297504741935", + "1134976125606" ] ] ], [ - "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4", + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", [ [ - "311021852055993", - "57433012261" + "69169795658552", + "1194000000000" ], [ - "311424446177396", - "1090720348401" + "350562558201369", + "1837200000000" ], [ - "315467930213071", - "136678730685" + "358055253899368", + "1873200000000" ], [ - "315662245991020", - "93694962402" + "367514336456086", + "1912200000000" ], [ - "393653690433948", - "40057990877" + "385786821567282", + "3253000000000" ] ] ], [ - "0x72e864CF239cD6ce0116b78F9e1299A5948beD9A", + "0x6223dd77dd5ED000592d7A8C745D68B2599C640D", [ [ - "27196243734508", - "362696248309" + "595098019071334", + "7805953000" ] ] ], [ - "0x7310E238f2260ff111a941059B023B3eBCF2D54e", + "0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A", [ [ - "174098989199832", - "54763564665" - ], - [ - "190777349504893", - "37329428702" + "648525331599001", + "1795068" ] ] ], [ - "0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14", + "0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12", [ [ - "340591459615016", - "116979885122" + "763836703327895", + "897670384" ] ] ], [ - "0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3", + "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", [ [ - "324758511737508", - "15676768579" - ] - ] - ], - [ - "0x73c09f642C4252f02a7a22801b5555f4f2b7B955", - [ + "199790557977382", + "20307567726" + ], [ - "595188836707834", - "12745012500" - ] - ] - ], - [ - "0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C", - [ + "203292613872621", + "44559574776" + ], [ - "157548809336026", - "4593795975" - ] - ] - ], - [ - "0x74231623D8058Afc0a62f919742e15Af0fb299e5", - [ + "208496431950430", + "135909962633" + ], [ - "31883651774507", - "11659706427" + "222747868386967", + "432111595595" ], [ - "90940749954930", - "34725013824" + "224182522802981", + "88646625543" ], [ - "235813231354853", - "30400392115" - ] - ] - ], - [ - "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347", - [ + "238654491458777", + "122335228001" + ], [ - "272818189064955", - "165298148930" + "243345979795662", + "193838339361" ], [ - "278416305316531", - "240278890901" + "681329690104184", + "100824447648" ], [ - "299226867063944", - "69420000075" - ] - ] - ], - [ - "0x74382a61e2e053353BECBC71a45adD91c0C21347", - [ + "766650786494524", + "466125005645" + ], [ - "401546143727842", - "693694620220" + "867024271662802", + "228905711977" + ], + [ + "882883404002569", + "255298540903" ] ] ], [ - "0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6", + "0x632f3c0548f656c8470e2882582d02602CfF821C", [ [ - "601970356868999", - "4000480096" + "7390511503423", + "5321466970" ] ] ], [ - "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", + "0x6343B307C288432BB9AD9003B4230B08B56b3b82", [ [ - "664669553141209", - "31586150" + "190774347525626", + "3001979267" ], [ - "669913003351653", - "173562047" + "227899892118673", + "9098821991" ], [ - "677766736232113", - "15476640" + "267222626735429", + "10019159841" ], [ - "677766751708753", - "56970000" - ] - ] - ], - [ - "0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E", - [ + "318350491352535", + "10004250325" + ], [ - "234344282043144", - "19712324157" + "338983012660405", + "10015549677" ], [ - "235154344754292", - "94410708993" + "361229466618475", + "5009439565" ], [ - "236283093284962", - "59063283900" + "400381174841304", + "3004757667" ], [ - "239409804111193", - "19030292542" + "400384179598971", + "2922196166" + ], + [ + "408334868608585", + "1844177360" + ], + [ + "408336712785945", + "1693453752" + ], + [ + "547242764896211", + "10048376141" ] ] ], [ - "0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362", + "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", [ [ - "402899271425864", - "33691850736" + "429076381887304", + "39624686375" + ], + [ + "841660754217816", + "4019358849" ] ] ], [ - "0x74E096E78789F31061Fc47F6950279A55C03288c", + "0x6384F5369d601992309c3102ac7670c62D33c239", [ [ - "680559945017520", - "366462731" + "86426430669928", + "93757812192" ], [ - "680818684025145", - "2663427585" + "120202334516814", + "76711875999" + ], + [ + "140665414631918", + "364919687105" ] ] ], [ - "0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81", + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", [ [ - "227523128809396", - "273973101221" + "585447600884457", + "2534228224" + ], + [ + "586646633174881", + "5673597364" ] ] ], [ - "0x7568614a27117EeEB6E06022D74540c3C5749B84", + "0x647bC16DCC2A3092A59a6b9F7944928d94301042", [ [ - "209623483887840", - "1224386800" - ], - [ - "312789773717141", - "7267067960" - ], - [ - "344841846701641", - "2000000000" - ], - [ - "646984807026252", - "6479854471" + "234363994367301", + "101810011675" ], [ - "652726940100667", - "16139084611" + "595338144020334", + "47102200000" ] ] ], [ - "0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3", + "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", [ [ - "362938922277631", - "76367829600" - ] - ] - ], - [ - "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515", - [ + "201178239618701", + "68900140210" + ], [ - "75760702250033", - "8000000000" + "250715780766453", + "25000000000" ], [ - "143366130662199", - "10948490796" - ] - ] - ], - [ - "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", - [ + "258249957689022", + "200370650949" + ], [ - "175146200354223", - "75138116495" + "258565835620739", + "183219147770" ], [ - "187621160594244", - "16717595903" - ] - ] - ], - [ - "0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000", - [ + "258845609042904", + "3445725605" + ], [ - "12684514908217", - "106416284126" - ] - ] - ], - [ - "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921", - [ + "637141029774703", + "5486788601" + ], [ - "31614934747614", - "6046055693" + "646951101223564", + "1957663487" ], [ - "573520471044196", - "83338470769" - ] - ] - ], - [ - "0x76A63B4ffb5E4d342371e312eBe62078760E8589", - [ + "647219853688450", + "4812444606" + ], [ - "582285563910121", - "4410560000" - ] - ] - ], - [ - "0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc", - [ + "648341533215584", + "11578312077" + ], [ - "640275952429877", - "258412979" + "650128399980624", + "3108966478" ] ] ], [ - "0x76ce7A233804C5f662897bBfc469212d28D11613", + "0x64e149a229fa88AaA2A2107359390F3b76E518AD", [ [ - "432591748956398", - "124843530190" + "250672958372559", + "42822393894" ] ] ], [ - "0x775B04CC1495447048313ddf868075f41F3bf3bB", + "0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287", [ [ - "323031012826145", - "49257554759" + "219577491138396", + "76644307685" ] ] ], [ - "0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B", + "0x6525e122975C19CE287997E9BBA41AD0738cFcE4", [ [ - "274388266066105", - "11429408683" + "408056818038549", + "78748758703" ] ] ], [ - "0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D", + "0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E", [ [ - "487068024611440", - "36840000000" + "28060962539990", + "233215974" ] ] ], [ - "0x77f2cC48fD7dD11211A64650938a0B4004eBe72b", + "0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8", [ [ - "792668647859111", - "33461141683" + "408040736449697", + "6081271018" ] ] ], [ - "0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5", + "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a", [ [ - "603779598696045", - "571460608752" + "649773468164491", + "623800000" ], [ - "604351059304797", - "342600000000" + "650496758556813", + "1854300000" ], [ - "606755813351268", - "201835314760" + "650650384373882", + "1110960000" ], [ - "606957648666028", - "690100000000" + "650881433728485", + "3081500000" ], [ - "626836023224058", - "72923998967" + "651225562512104", + "675422900" ], [ - "626908947223025", - "318351804364" + "651616768941819", + "3827342044" ], [ - "627227299027389", - "320953676893" + "651857559559538", + "1653185142" + ], + [ + "653859484421522", + "1610442418" + ], + [ + "654202995304304", + "1550473112" + ], + [ + "811198403550001", + "12682309008" ] ] ], [ - "0x78320e6082f9E831DD3057272F553e143dFe5b9c", + "0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3", [ [ - "490546315924", - "61632407" + "767642883227856", + "39768883344" ] ] ], [ - "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e", + "0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22", [ [ - "496345360673944", - "488241871617" - ], - [ - "523278607555107", - "149423611243" - ], + "326213533536434", + "11833992957" + ] + ] + ], + [ + "0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD", + [ [ - "531225747951270", - "311109277563" + "33204784130073", + "10666666666" ] ] ], [ - "0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E", + "0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60", [ [ - "87063919996383", - "31956558401" + "245060804994381", + "1401270600" ] ] ], [ - "0x7893b13e58310cDAC183E5bA95774405CE373f83", + "0x66B0115e839B954A6f6d8371DEe89dE90111C232", [ [ - "648503987692687", - "6104653206" + "174758503486179", + "45" ], [ - "648537251303200", - "11543" + "190554003270326", + "5514286863" ], [ - "648537251314743", - "322894" + "190559517557189", + "891296390" ], [ - "648651109238747", - "6969544474" + "190578231407162", + "26273598464" ], [ - "648658078783221", - "1319829324" + "194817411438496", + "85437509504" ], [ - "648687783119944", - "8278400000" + "201412155317743", + "29101504817" ], [ - "648696061519944", - "7004800000" + "216687848171321", + "83474118399" ], [ - "648716573711036", - "5089600000" + "237529097661776", + "81104453323" ], [ - "648722171346064", - "9538500000" + "342905708461958", + "33242114013" ], [ - "648931504537814", - "23555040000" + "342948003842023", + "29159870308" ], [ - "648955059577814", - "4875640000" + "355390284502004", + "62595004655" ], [ - "648959935217814", - "15070160000" - ], - [ - "649010795462125", - "16447600000" - ], - [ - "649027726170457", - "17894090000" - ], - [ - "649046499968065", - "22636340000" - ], - [ - "649069136308065", - "18328000000" - ], - [ - "649100844933065", - "18319300000" - ], - [ - "649119164233065", - "11365200000" - ], - [ - "649143422600101", - "11990900000" - ], - [ - "649284929960638", - "2827800000" - ], - [ - "649287827400680", - "15081600000" + "525442674564630", + "41624181591" ], [ - "649398940602242", - "32614400000" + "562634470802308", + "120603000000" ], [ - "649431555002242", - "33988820000" + "564800852312708", + "120603630000" ], [ - "649573935073567", - "26412980000" + "566205620733477", + "120603630000" ], [ - "649600986009465", - "17274840000" + "568866721950815", + "120603630000" ], [ - "649618260849465", - "20654700000" + "570126495171215", + "120603630000" ], [ - "649668950265764", - "13131300000" - ], + "571966572157753", + "120603630000" + ] + ] + ], + [ + "0x66D8293781eF24184aa9164878dfC0486cfa9Aac", + [ [ - "649832683807170", - "20804860000" - ], + "343136977526193", + "2215279737" + ] + ] + ], + [ + "0x66F1089eD7D915bC7c7055d2d226487362347d39", + [ [ - "649915798444588", - "18046700000" - ], + "323154203825866", + "1110069378" + ] + ] + ], + [ + "0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E", + [ [ - "649933845144588", - "6658610000" - ], + "84457530104959", + "209844262" + ] + ] + ], + [ + "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD", + [ [ - "649940503754588", - "4642174919" + "267825369582182", + "436592457" ], [ - "649962462383072", - "34628690000" + "273716745936018", + "6205732675" ], [ - "651485759158523", - "135322" - ], + "315755940953422", + "929512985" + ] + ] + ], + [ + "0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631", + [ [ - "661338230306152", - "218560408342" + "627581126030410", + "272397265638" ], [ - "808845120725088", - "163839873562" + "779831387208671", + "1602671680567" ], [ - "811211085859009", - "1285117945279" + "784127342017442", + "1392774986727" ], [ - "812496203804288", - "1246029256854" + "790449527867009", + "141565176499" ], [ - "857581197479570", - "1634493779706" + "869613014234285", + "58474432063" ] ] ], [ - "0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50", + "0x676B0Add3De8d340201F3F58F486beFEDCD609cD", [ [ - "20360646192758", - "4967300995" - ], - [ - "859890207337852", - "11474760241" + "506941790964613", + "36337517023" ] ] ], [ - "0x78A0A1F1E055c4ceeBb658AdF0c4954ae925e944", + "0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6", [ [ - "892341437280727", - "145860654491" - ], - [ - "892487297935218", - "3029212937100" + "866505232600864", + "362107628548" ] ] ], [ - "0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21", + "0x679AeE8b2fA079B23934A1afB2d7d48DD7244560", [ [ - "409808938067549", - "84226188785" + "648088003454438", + "6967239311" ] ] ], [ - "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54", + "0x679B4172E1698579d562D1d8b4774968305b80b2", [ [ - "227908990940664", - "435600000000" - ], - [ - "228474367102286", - "221452178690" + "395530746048580", + "6726740160" ] ] ], [ - "0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c", + "0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408", [ [ - "385257800041705", - "316578014158" + "631039934526101", + "11565611800" ] ] ], [ - "0x7A1184786066077022F671957299A685b2850BD6", + "0x6820572d10F8eC5B48694294F3FCFa1A640CFf40", [ [ - "635943922934682", - "525079813" + "229953796446901", + "10214275276" ], [ - "635988333778578", - "8627689764" + "278918417135852", + "150000000000" + ], + [ + "279078204011052", + "40213124800" ] ] ], [ - "0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b", + "0x682864C9Bc8747c804A6137d6f0E8e087f49089e", [ [ - "631796137362390", - "1440836515" + "764116409712760", + "376300000" + ], + [ + "766112231428357", + "103950567" + ], + [ + "767877082644924", + "4494000" + ], + [ + "768720341081119", + "10972000" + ], + [ + "768720352053119", + "54860000" ] ] ], [ - "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E", + "0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21", [ [ - "322952053290841", - "24675798977" + "237297173028709", + "34185829440" ], [ - "340056236725906", - "53380000000" + "237610202115099", + "190472618512" ], [ - "340109616725906", - "53380000000" + "257002346228995", + "490552229489" + ], + [ + "257720381137420", + "195286958683" ] ] ], [ - "0x7A63D7813039000e52Be63299D1302F1e03C7a6A", + "0x686381d3D0162De16414A274ED5FbA9929d4B830", [ [ - "340313280922433", - "9750291736" + "344768619702251", + "55026606400" ] ] ], [ - "0x7A6530B0970397414192A8F86c91d1e1f870a5A6", + "0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3", [ [ - "109585986971037", - "15454078646" - ], - [ - "644132646090255", - "8161384731" + "720451623201018", + "43682114862" ] ] ], [ - "0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2", + "0x688b3a3771011145519bd8db845d0D0739351C5D", [ [ - "681870613397796", - "211456338" - ], - [ - "681870824854134", - "205872420" - ], - [ - "681991801335911", - "19315015127" - ], - [ - "683756565573835", - "8759919160" + "598166530577023", + "297938099" ] ] ], [ - "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", + "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07", [ [ - "624665309966700", - "41439894685" - ] - ] - ], - [ - "0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48", - [ + "637348332706520", + "3665297857" + ], [ - "319694369767515", - "36673342106" + "641239727537305", + "3801049629" ] ] ], [ - "0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD", + "0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe", [ [ - "264752557419462", - "8605989205" + "338993028210082", + "30086002693" ] ] ], [ - "0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E", + "0x68ca44eD5d5Df216D10B14c13D18395a9151224a", [ [ - "644746452171666", - "213353964" + "327022674019051", + "298522321813" ] ] ], [ - "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3", [ [ - "738175767886792", - "725867793824" + "59447104921333", + "48580563120" ], [ - "739166585934609", - "997011405679" + "59495685484453", + "10000000" ], [ - "740163597340288", - "280746545970" - ] - ] - ], - [ - "0x7B2d2934868077d5E938EfE238De65E0830Cf186", - [ - [ - "53975449560599", - "629903012456" - ] - ] - ], - [ - "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4", - [ + "175839043720271", + "639000700700" + ], [ - "174459809952308", - "281091996530" + "326260465529391", + "17549000000" ], [ - "311079285068254", - "225639161016" - ] - ] - ], - [ - "0x7bB955249d6f57345726569EA7131E2910CA9C0D", - [ + "327866927799830", + "200000000000" + ], [ - "277940142360555", - "98218175816" + "458946849997346", + "1509444773173" ], [ - "603576947611080", - "199366926066" + "487104864611440", + "8118000000000" ], [ - "604978961867797", - "45804202500" + "529948130178467", + "60353499994" ], [ - "605358509270297", - "85487500000" + "540025578631290", + "1050580350517" ], [ - "605777739970297", - "85487500000" - ] - ] - ], - [ - "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc", - [ + "541230880735707", + "1053414238201" + ], [ - "672373244407056", - "22359930276" + "676535948745205", + "2281535426" ], [ - "673932629258168", - "57490196078" + "788056651665705", + "1423950000000" ] ] ], [ - "0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0", + "0x6974611c9e1437D74c07b5F031779Fb88f19923E", [ [ - "175144400293594", - "1800060629" + "808563031359360", + "138799301180" ] ] ], [ - "0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F", + "0x699095648BBc658450a22E90DF34BD7e168FCedB", [ [ - "337947415831374", - "1256098598" + "350526188741041", + "1867890780" ] ] ], [ - "0x7c12222e79e1a2552CaF92ce8dA063e188a7234F", + "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2", [ [ - "327333371992545", - "151078425653" + "205856377916701", + "23473305765" + ], + [ + "228443474467376", + "26144594910" + ], + [ + "229742216600874", + "196893643061" ] ] ], [ - "0x7C28205352AD687348578f9cB2AB04DE1DcaA040", + "0x69e02D001146A86d4E2995F9eCf906265aA77d85", [ [ - "107456319203211", - "248840212420" + "662653511432800", + "41531785" + ], + [ + "740688026571943", + "293208703330" + ], + [ + "831131397455690", + "19412572061" + ], + [ + "849564839333111", + "16363837424" ] ] ], [ - "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F", + "0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B", [ [ - "148739166418696", - "42976910603" + "156811622805224", + "6930000000" ], [ - "149458771642101", - "17768345687" + "156818552805224", + "462200000000" ], [ - "150072245775067", - "101280926262" + "430072033491709", + "1719000000" ], [ - "199700241341159", - "90316636223" + "430073752491709", + "1032300000" ] ] ], [ - "0x7c9551322a2e259830A7357e436107565EA79205", + "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4", [ [ - "209578881176990", - "44602710850" + "639689672916916", + "22501064889" ], [ - "273679685585512", - "20502770382" + "643650251457626", + "3358027804" ], [ - "430048399348994", - "21915642715" + "643834369008756", + "4844561817" ], [ - "564169770917708", - "253050000000" + "643839213570573", + "10208237564" ], [ - "581983286394610", - "114580000000" + "643944290955121", + "1478254943" ], [ - "650979810428062", - "126027343719" - ] - ] - ], - [ - "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3", - [ + "643953518951321", + "8390490226" + ], [ - "227166312100795", - "90992725291" + "644024944088567", + "4012581233" ], [ - "229554049269178", - "188167331696" + "644160211053924", + "6031653730" ] ] ], [ - "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16", + "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", [ [ - "33126339744841", - "2542932710" - ], - [ - "647796025649944", - "2276035252" + "767548494200642", + "1261346400" ] ] ], [ - "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", + "0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b", [ [ - "551487055682601", - "1270108409" + "650252699558669", + "893481478" ] ] ], [ - "0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0", + "0x6A7E0712838A0b257C20e042cf9b6C5E910F221F", [ [ - "517136234273749", - "25727141956" - ], - [ - "575297036565480", - "37469832650" + "50390109547988", + "13275316430" ] ] ], [ - "0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb", + "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", [ [ - "264289719394296", - "13882808319" - ] - ] - ], - [ - "0x7D6261b4F9e117964210A8EE3a741499679438a0", - [ - [ - "193924082223281", - "212363516752" - ] - ] - ], - [ - "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", - [ - [ - "41331690648396", - "1580849582" + "32060163672752", + "28148676958" ], [ - "41333940372011", - "1537628217" + "150360950060615", + "242948254181" ], [ - "647755311699262", - "5054893704" + "160053122684606", + "20023987333" ], [ - "648155116928042", - "75808563" + "161068340667787", + "20000000000" ], [ - "656120433075312", - "50144887945" + "342560304255977", + "333305645984" ], [ - "656895275442629", - "48622222222" + "344389113234876", + "51504000000" ], [ - "660026375198031", - "42190522575" - ] - ] - ], - [ - "0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af", - [ + "344551768397376", + "66850100000" + ], [ - "320112525044800", - "79896782500" - ] - ] - ], - [ - "0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20", - [ + "361685681657312", + "62680000000" + ], [ - "219573347561330", - "3194476000" - ] - ] - ], - [ - "0x7eaF877B409740afa24226D4A448c980896Be795", - [ + "363769394312766", + "102337151992" + ], [ - "609292089920626", - "20074904153" - ] - ] - ], - [ - "0x7eFaC69750cc933e7830829474F86149A7DD8e35", - [ + "369426536456086", + "127987579783" + ], [ - "200844770244188", - "1000000" + "378552709136790", + "38488554613" ], [ - "200844771244188", - "179562380519" + "395493517902828", + "6712331491" ], [ - "210870560056118", - "293011632289" - ] - ] - ], - [ - "0x7F82e84C2021a311131e894ceFf475047deD4673", - [ + "396929743473580", + "66231437063" + ], [ - "623581806243753", - "62496053737" - ] - ] - ], - [ - "0x7Fe78b37A3F8168Cd60C6860d176D22b81181555", - [ + "402346745493273", + "26916949971" + ], [ - "783115581867489", - "232497931186" - ] - ] - ], - [ - "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70", - [ + "530133483678461", + "281553523845" + ], [ - "20300839138392", - "1" + "576749818528380", + "128350847807" ], [ - "141104093757416", - "2326237721" + "595690093032834", + "42417259406" ], [ - "141106419995137", - "1466439378" + "624313265610454", + "235481948284" ], [ - "157543059307151", - "3855741975" + "630539882897389", + "5506646911" ], [ - "633362764561998", - "8976176800" - ] - ] - ], - [ - "0x80077CB3B35A6c30DC354469f63e0743eeff32D4", - [ + "630883526816254", + "5243434934" + ], [ - "417435849352728", - "4099200000000" - ] - ] - ], - [ - "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5", - [ + "634139460032971", + "3421517319" + ], [ - "41340350884137", - "5263157894" + "634468058178676", + "2971508955" ], [ - "213307234626330", - "12500000000" + "634935371920999", + "4637078134" ], [ - "380613889185508", - "10461930383" + "639717387300187", + "77913000000" ], [ - "385650953907930", - "16235000000" + "640555043042177", + "126770247812" ], [ - "646795333940977", - "6300493418" + "643639272958859", + "7174635902" ], [ - "646842090324499", - "6350838475" + "646904567079253", + "9652153237" ], [ - "648299147129728", - "14576284733" + "680821347452730", + "115002187754" ], [ - "648377421210050", - "13030510108" + "681087658581778", + "242031522406" ], [ - "653297909699401", - "24458875511" + "792702109000794", + "102830000000" ], [ - "653479984577629", - "119019649033" + "828751559244596", + "110931518877" ], [ - "662024206613204", - "79777206742" + "846523170952449", + "523488988207" ] ] ], [ - "0x804Be57907807794D4982Bf60F8b86e9010A1639", + "0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3", [ [ - "76424701653538", - "94753388776" - ], - [ - "84731726100795", - "91448859303" + "78446810994423", + "97830465871" ] ] ], [ - "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81", + "0x6AB3E708231eBc450549B37f8DDF269E789ed322", [ [ - "74179965494047", - "25544672634" + "139738901832021", + "217662351018" ], [ - "166225090295346", - "87221043559" - ] - ] - ], - [ - "0x80771B6DC16d2c8C291e84C8f6D820150567534C", - [ + "173645978954771", + "364480000000" + ], [ - "213457800486791", - "14257446361" + "177963922699291", + "567750000000" ], [ - "213472057933152", - "186730161037" - ] - ] - ], - [ - "0x80915E89Ffe836216866d16Ec4F693053f205179", - [ + "193365582223281", + "558500000000" + ], [ - "599110873255821", - "6253532657" - ] - ] - ], - [ - "0x80a2527A444C4f2b57a247191cDF1308c9EB210D", - [ + "198989464385361", + "323387400000" + ], [ - "767511386944346", - "37106473488" - ] - ] - ], - [ - "0x81696d556eeCDc42bED7C3b53b027de923cC5038", - [ + "385686708784542", + "8120000000" + ], [ - "319731043109621", - "14925453141" + "385698306894276", + "11608985252" ], [ - "402373662443244", - "36113082774" - ] - ] - ], - [ - "0x81704Bce89289F64a4295134791848AaCd975311", - [ + "402298084456766", + "29146976013" + ], [ - "644073460766211", - "46712134" + "403324142505816", + "17337534783" ], [ - "644187073578836", - "33" + "525484298746221", + "68490328982" + ], + [ + "573159215088219", + "7613761316" + ], + [ + "588069376316494", + "53235000000" + ], + [ + "588373196066494", + "53235000000" + ], + [ + "588677015816494", + "53235000000" + ], + [ + "635125146283365", + "5443675000" + ], + [ + "635372490238881", + "53837773087" + ], + [ + "637610400582193", + "150901692840" + ], + [ + "655777079955872", + "34680190734" + ], + [ + "657007246656249", + "26448621220" + ], + [ + "659046307218408", + "140966208215" + ], + [ + "675881740999403", + "58060000000" + ], + [ + "676880184584605", + "81212739087" + ], + [ + "682023052979739", + "49057997400" + ], + [ + "744289021047316", + "8009578710" ] ] ], [ - "0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19", + "0x6ab4566Df630Be242D3CD48777aa4CA19C635f56", [ [ - "237009419020035", - "24112008674" + "339523096579827", + "66070456308" ] ] ], [ - "0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b", + "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43", [ [ - "591001814503012", - "551376150000" + "67339711337633", + "38964529411" + ], + [ + "826344351400868", + "285187152872" ] ] ], [ - "0x81d8363845F96f94858Fac44A521117DADBfD837", + "0x6B7F8019390Aa85b4A8679f963295D568098Cf51", [ [ - "332432233728809", - "324629738694" + "4970156360204", + "42435663718" ] ] ], [ - "0x81eee01e854EC8b498543d9C2586e6aDCa3E2006", + "0x6b87460Ce18951D31A7175cAbE2f3fc449E54256", [ [ - "267836734902245", - "198456386297" + "298986493215464", + "38084213662" ], [ - "273007832358749", - "292267679049" + "341689788844501", + "46789171777" ] ] ], [ - "0x81F3C0A3115e4F115075eE079A48717c7dfdA800", + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", [ [ - "85005128802664", - "17746542257" + "33151317189285", + "64286521" ], [ - "138205055379551", - "21229490022" + "576748931831644", + "886696736" + ], + [ + "585450135112681", + "2349268241" + ], + [ + "634472174530302", + "1475264000" ] ] ], [ - "0x821bb6973FdA779183d22C9891f566B2e59C8230", + "0x6bDd8c55a23D432D34c276A87584b8A96C03717F", [ [ - "218770430128287", - "11235751123" + "52187916983200", + "19763851047" + ], + [ + "52207680834247", + "19747984525" ] ] ], [ - "0x8264EA7b0b15a7AD9339F06666D7E339129C9482", + "0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d", [ [ - "321485895691147", - "32021232234" + "861503972645416", + "15704000000" ] ] ], [ - "0x829Ceb00fC74bD087b1e50d31ec628a90894cD52", + "0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F", [ [ - "323285415668114", - "50596304590" - ], - [ - "355313179311575", - "62470363029" - ], - [ - "367287703769008", - "64080321723" + "273007832358728", + "21" ] ] ], [ - "0x82a8409a264ea933405f5Fe0c4011c3327626D9B", + "0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd", [ [ - "870103302085771", - "48730138326" + "631710479555794", + "27065136362" ] ] ], [ - "0x82CFf592c2D9238f05E0007F240c81990f17F764", + "0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09", [ [ - "273671446460892", - "8239124620" + "187326232141980", + "250596023597" ] ] ], [ - "0x82F402847051BDdAAb0f5D4b481417281837c424", + "0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB", [ [ - "33153376109285", - "2512740605" + "326049910381783", + "22789160494" ], [ - "215241439378309", - "5150327530" + "340180819742396", + "88167423404" ], [ - "326072699542277", - "25020000000" + "635083372725365", + "41773558000" ], [ - "335847619702697", - "10121780000" + "635350828552881", + "21661686000" ] ] ], [ - "0x82Ff15f5de70250a96FC07a0E831D3e391e47c48", + "0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3", [ [ - "767984775426960", - "4440000000" + "195647572282194", + "827187570265" ] ] ], [ - "0x8325D26d08DaBf644582D2a8da311D94DBD02A97", + "0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27", [ [ - "153701253487878", - "11008858783" + "535108406138660", + "1084177233275" ], [ - "232621964312561", - "2641422510" + "536192583371935", + "1688110786406" + ], + [ + "537880694158341", + "1727536772397" + ], + [ + "542568043607639", + "1438806398621" ] ] ], [ - "0x832fBA673d712fd5bC698a3326073D6674e57DF5", + "0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190", [ [ - "217540873751726", - "22996141953" + "228441190352276", + "2284115100" ], [ - "265592792884462", - "23842558596" + "264360680476760", + "16145852467" ] ] ], [ - "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751", + "0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674", [ [ - "581907954037154", - "1000000" - ], - [ - "581907955037154", - "9999000000" - ], - [ - "665701343812558", - "272195102173" + "769310460222539", + "1300464490557" ], [ - "669333969414822", - "215834194074" + "771140309190191", + "3056591031171" ], [ - "677431627790689", - "31545276943" - ], + "774579618067014", + "4504970931573" + ] + ] + ], + [ + "0x6D4ed8a1599DEe2655D51B245f786293E03d58f7", + [ [ - "678914917868431", - "570100000000" - ], + "768780574044414", + "4739952359" + ] + ] + ], + [ + "0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968", + [ [ - "759972802735125", - "63916929" - ], + "273349081469206", + "22041535128" + ] + ] + ], + [ + "0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06", + [ [ - "759972866652054", - "34919933" - ], + "837305979426084", + "1501381879417" + ] + ] + ], + [ + "0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B", + [ [ - "759972901571987", - "44762503" - ], + "770929992347971", + "34510450293" + ] + ] + ], + [ + "0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10", + [ [ - "759972946334490", - "26506" - ], + "397022450164102", + "50261655503" + ] + ] + ], + [ + "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D", + [ [ - "759972946360996", - "54603" + "805211526908643", + "72305318668" ], [ - "759972946415599", - "45639837" + "883628500845473", + "82518671123" ], [ - "759972992055436", - "36372829" + "911959750190927", + "55938224595" ], [ - "759973028428265", - "212331" - ], + "919283383995914", + "76438100488" + ] + ] + ], + [ + "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E", + [ [ - "760183772870995", - "237950000" + "565689461995977", + "151830000000" ], [ - "760353370932416", - "640797" + "567495253157146", + "101220000000" ], [ - "761858118071390", - "18166203" + "567596473157146", + "101220000000" ], [ - "761858136237593", - "33655130" + "571005615479484", + "101220000000" ], [ - "761858169892723", - "41246561" - ], + "571106835479484", + "101220000000" + ] + ] + ], + [ + "0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4", + [ [ - "761858264676918", - "27291992" - ], + "324867132703136", + "44584623736" + ] + ] + ], + [ + "0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C", + [ [ - "761860246451109", - "40407888" - ], + "636757155365094", + "22691440968" + ] + ] + ], + [ + "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9", + [ [ - "761860286858997", - "20624528" + "199564902491192", + "4" ], [ - "761861105640928", - "38655387" + "344839373651771", + "479115910" ], [ - "761861144296315", - "8965138" + "641506736028021", + "2916178314" ], [ - "762295499061705", - "29510736" + "641509652206335", + "2749595885" ], [ - "762295528572441", - "31584894" + "643096514658419", + "5194777863" ], [ - "762295560157335", - "35342" + "643101709436282", + "4222978151" ], [ - "762295560192677", - "19821585" + "643633701423724", + "5571535135" ], [ - "762940981941034", - "21214050" + "643798096101417", + "3171247947" ], [ - "763876944550921", - "126220" + "643890241268202", + "4934195535" ], [ - "763876944677141", - "2145664" + "643895175463737", + "4471591756" ], [ - "763877071172496", - "18553917" + "644123990666901", + "8655423354" ], [ - "763877559163775", - "2178159" + "644290308134813", + "6411168248" ], [ - "763898472187152", - "34733796" + "644388265508089", + "8012158467" ], [ - "763898517945378", - "2604448" + "644422095342082", + "5047673478" ], [ - "763904514777740", - "12880451" + "644442516225274", + "5546831538" ], [ - "763904527658191", - "8645673" + "646729515149835", + "2514524429" ], [ - "763904536303864", - "5775330" + "648197602149037", + "2827660397" ], [ - "763904542079194", - "8086438" - ], + "648807271975686", + "17620350" + ] + ] + ], + [ + "0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4", + [ [ - "763904550165632", - "8189602" - ], + "376299347730245", + "25727586841" + ] + ] + ], + [ + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", + [ [ - "763904558355234", - "9042724" + "635536095356615", + "1027219504" ], [ - "763904567397958", - "9831655" + "635987453662106", + "880116472" ], [ - "763904577229613", - "27363324" + "641512401802220", + "5493342645" ], [ - "763908619462613", - "12836178" + "644555830955508", + "2808417895" ], [ - "763910556401834", - "11888964" + "646749582249400", + "903060349" ], [ - "763910568290798", - "12803633" + "646766913990107", + "1939941186" ], [ - "763910581094431", - "5385691" + "646945916373621", + "3045363522" ], [ - "763910586480122", - "8796762" + "767125477756875", + "1001496834" ], [ - "763976063428196", - "9117332" + "767300591235981", + "1890000000" ], [ - "763976234474836", - "4457574" - ], + "767972799745643", + "4444320090" + ] + ] + ], + [ + "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", + [ [ - "763976357160622", - "7294661" - ], + "403467977485669", + "4265691158" + ] + ] + ], + [ + "0x6fBDc235B6f55755BE1c0B554469633108E60608", + [ [ - "763976364455283", - "7550783" - ], + "191901677757094", + "262000796007" + ] + ] + ], + [ + "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54", + [ [ - "763976372006066", - "7917327" + "331756528135803", + "61934486285" ], [ - "763976379923393", - "8299132" - ], + "408321036814023", + "6779928792" + ] + ] + ], + [ + "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B", + [ [ - "763977688578348", - "7313583" + "420441198802", + "387146704" ], [ - "763977695891931", - "8256505" - ], + "767889723281779", + "68608459317" + ] + ] + ], + [ + "0x702aA86601aBc776bEA3A8241688085125D75AE2", + [ [ - "763977704148436", - "8272223" + "109497928877661", + "23439331676" ], [ - "763977712420659", - "8438801" + "205879851222466", + "33943660000" ], [ - "763977720859460", - "1226665" + "506165499383895", + "3604981492" ], [ - "763977722086125", - "8329771" + "506169104365387", + "7211374244" ], [ - "763977730415896", - "9430332" - ], + "542284294973908", + "10000615500" + ] + ] + ], + [ + "0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b", + [ [ - "763977739846228", - "9446755" - ], + "385225630461615", + "15974580090" + ] + ] + ], + [ + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", + [ [ - "763977749292983", - "9551578" + "157553403132001", + "19294351466" ], [ - "763977758844561", - "12158603" + "644387467914405", + "797593684" ], [ - "763977771003164", - "17003737" + "648282232925391", + "5285515919" ], [ - "763977788006901", - "20306613" + "649313442399124", + "18516226556" ], [ - "763977808313514", - "8074766" - ], + "672632693625732", + "17500007580" + ] + ] + ], + [ + "0x70a9c497536E98F2DbB7C66911700fe2b2550900", + [ [ - "763977816388280", - "6279090" + "643856074680084", + "518323846" ], [ - "763978505738531", - "8847815" + "644234859479000", + "279246690" ], [ - "763983196643288", - "10869074" + "644246226623579", + "197641438" ], [ - "763983434298148", - "9849175" + "644255862272829", + "274579086" ], [ - "763985909132064", - "9752450" + "644318860467072", + "289371263" ], [ - "763985918884514", - "9787526" + "644344232569703", + "1080267604" ], [ - "764056294370732", - "9351239" + "644350860239846", + "2255393372" ], [ - "764056303721971", - "9560632" + "644353115633218", + "4452414623" ], [ - "764058355999201", - "11112309" + "677491281789418", + "2857142857" ], [ - "764059201744095", - "12584379" + "681685922435654", + "25111379095" ], [ - "764059214328474", - "15014610" - ], + "917061939949695", + "32052786097" + ] + ] + ], + [ + "0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793", + [ [ - "764059229343084", - "48861891" + "340164692018203", + "16127724193" + ] + ] + ], + [ + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", + [ + [ + "33152426109281", + "4" ], [ - "764059278204975", - "75874729" + "41333271497978", + "668874033" ], [ - "764059944324704", - "7505667" + "41370284961658", + "2693066940" ], [ - "764059951830371", - "7635979" + "88857695552777", + "1354378846" ], [ - "764059959466350", - "7814413" + "647760366592966", + "25920905560" ], [ - "764059967280763", - "7718713" + "648612566573043", + "33" ], [ - "764059974999476", - "6432651" + "648651086279479", + "22959268" ], [ - "764059981432127", - "6505670" + "649184309005289", + "2278449" ], [ - "764059987937797", - "5540593" + "649236453132845", + "19324702" ], [ - "764059993478390", - "9367181" + "649284881951220", + "48009418" ], [ - "764060002845571", - "11137793" + "649682081565764", + "649539942" ], [ - "764060013983364", - "12401916" + "649693481105706", + "448369312" ], [ - "764060026385280", - "9288929" + "649874764673718", + "2584832868" ], [ - "764060035674209", - "9390137" + "739098370599205", + "19781032784" ], [ - "764060045064346", - "1450847" + "741941794536593", + "7498568832" ], [ - "764060046515193", - "1501728" - ], + "760171881624417", + "11891246578" + ] + ] + ], + [ + "0x70c65accB3806917e0965C08A4a7D6c72F17651A", + [ [ - "764060048016921", - "2894840" - ], + "767503070574842", + "4117776465" + ] + ] + ], + [ + "0x70C8eE0223D10c150b0db98A0423EC18Ec5aCa89", + [ [ - "764060050911761", - "4941150" - ], + "317764819055205", + "94698329152" + ] + ] + ], + [ + "0x70F11dbD21809EbCd4C6604581103506A6a8443A", + [ [ - "764060055852911", - "1301076" + "324855687987034", + "11444716102" + ] + ] + ], + [ + "0x7125B7C60Ec85F9aD33742D9362f6161d403EC92", + [ + [ + "185793383994705", + "206785636228" + ] + ] + ], + [ + "0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22", + [ + [ + "324806023022229", + "28234479163" ], [ - "764060057153987", - "1700111" + "397009213772846", + "13236391256" + ] + ] + ], + [ + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", + [ + [ + "59495695484453", + "504171940643" ], [ - "764060058854098", - "1809338" + "124490727082220", + "3038100000000" ], [ - "764060060663436", - "2557221" + "129427950156525", + "467400000000" ], [ - "764060063220657", - "3319612" + "202960513872621", + "332100000000" + ] + ] + ], + [ + "0x7193b82899461a6aC45B528d48d74355F54E7F56", + [ + [ + "409573727889316", + "100323000000" ], [ - "764060066540269", - "7533814" + "655166761861127", + "1629422984" ], [ - "764060074074083", - "7779768" + "679990486184882", + "101083948638" + ] + ] + ], + [ + "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8", + [ + [ + "43977781538372", + "960392727042" ], [ - "764452648625420", - "8106249" + "53415449139505", + "560000421094" ], [ - "764452728661398", - "6424123" + "84043081856785", + "88783500000" ], [ - "764454212950366", - "971045" + "87737275673292", + "29174580000" ], [ - "767132400796221", - "371800" + "121055292369428", + "595350750000" ], [ - "767132401168021", - "37" + "153930334477670", + "722113163135" ], [ - "767132401168058", - "37" + "337103989850712", + "208640000000" ], [ - "767825578930453", - "409264" + "390858944448074", + "1732376340000" ], [ - "767825579339717", - "6540080" + "425808292285395", + "1709471220000" ], [ - "767852884974560", - "16635629" + "747250339620613", + "1065835841221" ] ] ], [ - "0x8366bc75C14C481c93AaC21a11183807E1DE0630", + "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", [ [ - "76001221652173", - "5352834315" + "312728908697529", + "60865019612" ], [ - "153738842061438", - "31920948003" + "396254532333032", + "26041274600" ], [ - "648175958870466", - "11538942187" + "517161961415705", + "28582806091" ], [ - "657207189000929", - "22663915925" - ] - ] - ], - [ - "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17", - [ + "525552789075203", + "119322721243" + ], [ - "218815689873725", - "90674071972" + "547526923635099", + "70107880058" ], [ - "511059734567237", - "208510236741" - ] - ] - ], - [ - "0x83C9EC651027e061BcC39485c1Fb369297bD428c", - [ + "561477850643778", + "198991954538" + ], [ - "41616804521094", - "961875804178" + "562816854802308", + "75915000000" ], [ - "43500195788736", - "477585749636" + "564663155155208", + "75915000000" ], [ - "45436352397595", - "303350065235" + "566032344745977", + "75915000000" ], [ - "75054132455628", - "463749167922" + "569084686568315", + "75915000000" ], [ - "75556189962930", - "129981759017" + "572148957945253", + "75915000000" + ], + [ + "672617693625732", + "15000000000" ] ] ], [ - "0x843F293423895a837DBe3Dca561604e49410576C", + "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", [ [ - "325979734145362", - "11660550051" + "670969471210715", + "112808577" ] ] ], [ - "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", [ [ - "635972973747079", - "594161902" - ], - [ - "638302750599290", - "1659683909" + "258749054768509", + "81750376187" ], [ - "649155413500101", - "12127559908" - ] - ] - ], - [ - "0x8456f07Bed6156863C2020816063Be79E3bDAB88", - [ - [ - "312515166525797", - "27881195737" + "767116911500169", + "5542244064" ] ] ], [ - "0x84649973923f8d3565E8520171618588508983aF", + "0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246", [ [ - "76120188262565", - "6666000000" + "495339332225603", + "10275174620" ] ] ], [ - "0x848aB321B59da42521D10c07c2453870b9850c8A", + "0x726C46B3E0d605ea8821712bD09686354175D448", [ [ - "676683082878726", - "419955" + "42578680325272", + "921515463464" ], [ - "676686201559550", - "785945" + "308307791521525", + "1085880660191" ] ] ], [ - "0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849", + "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2", [ [ - "84451783274191", - "5746830768" - ], + "90975474968757", + "37830812302" + ], [ - "644558639373403", - "6740000000" + "185768300642827", + "25083351878" ], [ - "644583603532321", - "6316834733" + "189669106071687", + "31883191886" + ], + [ + "199587559564998", + "35132497379" + ], + [ + "274439437731803", + "42917709597" + ], + [ + "331649739813903", + "61822486683" ] ] ], [ - "0x849eA9003Ba70e64D0de047730d47907762174C3", + "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4", [ [ - "646770632841517", - "1588254225" + "311021852055993", + "57433012261" + ], + [ + "311424446177396", + "1090720348401" + ], + [ + "315467930213071", + "136678730685" + ], + [ + "315662245991020", + "93694962402" + ], + [ + "393653690433948", + "40057990877" ] ] ], [ - "0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b", + "0x72e864CF239cD6ce0116b78F9e1299A5948beD9A", [ [ - "408274916734309", - "46120079714" + "27196243734508", + "362696248309" ] ] ], [ - "0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C", + "0x7310E238f2260ff111a941059B023B3eBCF2D54e", [ [ - "553461057474487", - "87874946085" + "174098989199832", + "54763564665" + ], + [ + "190777349504893", + "37329428702" ] ] ], [ - "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e", + "0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14", [ [ - "319387499836221", - "99947794980" - ], - [ - "319487447631201", - "99825855937" + "340591459615016", + "116979885122" ] ] ], [ - "0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371", + "0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3", [ [ - "4952867558328", - "11407582" + "324758511737508", + "15676768579" ] ] ], [ - "0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2", + "0x73c09f642C4252f02a7a22801b5555f4f2b7B955", [ [ - "641528528201681", - "103236008" + "595188836707834", + "12745012500" ] ] ], [ - "0x85971eb6073d28edF8f013221071bDBB9DEdA1af", + "0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C", [ [ - "195612355274761", - "16839687137" + "157548809336026", + "4593795975" ] ] ], [ - "0x85bBE859d13c5311520167AAD51482672EEa654b", + "0x74231623D8058Afc0a62f919742e15Af0fb299e5", [ [ - "52088858820053", - "99058163147" - ], - [ - "96762775283557", - "102770386747" - ], - [ - "173386909282298", - "93706942656" - ], - [ - "361560759321922", - "124922335390" - ], - [ - "395500230234319", - "3355929998" - ], - [ - "395507210053015", - "1342546167" - ], - [ - "400387101795137", - "13305220778" - ], - [ - "408338406239697", - "2037424295" + "31883651774507", + "11659706427" ], [ - "415550617895723", - "2006847559" + "90940749954930", + "34725013824" ], [ - "443883816299985", - "132685663226" - ], + "235813231354853", + "30400392115" + ] + ] + ], + [ + "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347", + [ [ - "577904956448694", - "30085412412" + "272818189064955", + "165298148930" ], [ - "836265440249827", - "101381274964" + "278416305316531", + "240278890901" ], [ - "916958051049107", - "103888892461" + "299226867063944", + "69420000075" ] ] ], [ - "0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a", + "0x74382a61e2e053353BECBC71a45adD91c0C21347", [ [ - "676879061041574", - "401082333" + "401546143727842", + "693694620220" ] ] ], [ - "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008", + "0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6", [ [ - "16396578434940", - "1386508934563" - ], - [ - "452122462229722", - "3565000000000" + "601970356868999", + "4000480096" ] ] ], [ - "0x85Eada0D605d905262687Ad74314bc95837dB4F9", + "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", [ [ - "680106747582914", - "8091023787" + "664669553141209", + "31586150" ], [ - "681632124128030", - "7857742444" - ] - ] - ], - [ - "0x86642f87887c1313f284DBEc47E79Dc06593b82e", - [ + "669913003351653", + "173562047" + ], [ - "768785503361939", - "2853000000" + "677766736232113", + "15476640" + ], + [ + "677766751708753", + "56970000" ] ] ], [ - "0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5", + "0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E", [ [ - "265691646124302", - "52475804769" + "234344282043144", + "19712324157" ], [ - "266029676145669", - "95013616645" + "235154344754292", + "94410708993" ], [ - "428383641973567", - "133886156698" + "236283093284962", + "59063283900" + ], + [ + "239409804111193", + "19030292542" ] ] ], [ - "0x8675C7bc738b4771D29bd0d984c6f397326c9eC2", + "0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362", [ [ - "271861293951059", - "198152825" + "402899271425864", + "33691850736" ] ] ], [ - "0x8687c54f8A431134cDE94Ae3782cB7cba9963D12", + "0x74E096E78789F31061Fc47F6950279A55C03288c", [ [ - "646497940474546", - "84596400000" + "680559945017520", + "366462731" + ], + [ + "680818684025145", + "2663427585" ] ] ], [ - "0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c", + "0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81", [ [ - "760184740654334", - "11932612568" + "227523128809396", + "273973101221" ] ] ], [ - "0x8709DD5FE0F07219D8d4cd60735B58E2C3009073", + "0x7568614a27117EeEB6E06022D74540c3C5749B84", [ [ - "173486508329974", - "159470624797" + "209623483887840", + "1224386800" ], [ - "190814678933595", - "29696822758" + "312789773717141", + "7267067960" + ], + [ + "344841846701641", + "2000000000" + ], + [ + "646984807026252", + "6479854471" + ], + [ + "652726940100667", + "16139084611" ] ] ], [ - "0x87104977d80256B00465d3411c6D93A63818723c", + "0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3", [ [ - "886456591570583", - "134558229863" + "362938922277631", + "76367829600" ] ] ], [ - "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", + "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515", [ [ - "740625640590276", - "3880736646" + "75760702250033", + "8000000000" ], [ - "769309859020325", - "543636737" + "143366130662199", + "10948490796" ] ] ], [ - "0x87316f7261E140273F5fC4162da578389070879F", + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", [ [ - "33300451017861", - "86512840254" + "175146200354223", + "75138116495" ], [ - "61109178571450", - "122328394500" - ], + "187621160594244", + "16717595903" + ] + ] + ], + [ + "0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000", + [ [ - "634752629673424", - "177195" - ], + "12684514908217", + "106416284126" + ] + ] + ], + [ + "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921", + [ [ - "650887494287222", - "91918750000" + "31614934747614", + "6046055693" ], [ - "662291967520724", - "358440000000" - ], + "573520471044196", + "83338470769" + ] + ] + ], + [ + "0x76A63B4ffb5E4d342371e312eBe62078760E8589", + [ [ - "665973538914731", - "277554381613" - ], + "582285563910121", + "4410560000" + ] + ] + ], + [ + "0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc", + [ [ - "666823186189970", - "262793215966" - ], + "640275952429877", + "258412979" + ] + ] + ], + [ + "0x76ce7A233804C5f662897bBfc469212d28D11613", + [ [ - "667093311031404", - "218769177704" + "432591748956398", + "124843530190" ] ] ], [ - "0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D", + "0x775B04CC1495447048313ddf868075f41F3bf3bB", [ [ - "318879364223287", - "100013282422" - ], + "323031012826145", + "49257554759" + ] + ] + ], + [ + "0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B", + [ [ - "325544608143106", - "116174772099" + "274388266066105", + "11429408683" ] ] ], [ - "0x876133657F5356e376B7ae27d251444727cE9488", + "0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D", [ [ - "768637502130744", - "6878063205" + "487068024611440", + "36840000000" ] ] ], [ - "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", + "0x77f2cC48fD7dD11211A64650938a0B4004eBe72b", [ [ - "29414505086527", - "2152396670739" - ], + "792668647859111", + "33461141683" + ] + ] + ], + [ + "0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5", + [ [ - "32181015349710", - "480290414" + "603779598696045", + "571460608752" ], [ - "67097307242526", - "33653558763" + "604351059304797", + "342600000000" ], [ - "70363795658552", - "66346441237" + "606755813351268", + "201835314760" ], [ - "87581469817175", - "155805856117" + "606957648666028", + "690100000000" ], [ - "98500494455758", - "312782775000" + "626836023224058", + "72923998967" ], [ - "221217178954962", - "79784359766" + "626908947223025", + "318351804364" ], [ - "291950100636275", - "188949798464" - ], + "627227299027389", + "320953676893" + ] + ] + ], + [ + "0x78320e6082f9E831DD3057272F553e143dFe5b9c", + [ [ - "353439836528037", - "30660000000" - ], + "490546315924", + "61632407" + ] + ] + ], + [ + "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e", + [ [ - "353470496528037", - "24576000000" + "496345360673944", + "488241871617" ], [ - "362146672277631", - "792250000000" + "523278607555107", + "149423611243" ], [ - "376516374904000", - "1617000000000" - ], + "531225747951270", + "311109277563" + ] + ] + ], + [ + "0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E", + [ [ - "390771216202303", - "27097995630" + "87063919996383", + "31956558401" + ] + ] + ], + [ + "0x7893b13e58310cDAC183E5bA95774405CE373f83", + [ + [ + "648503987692687", + "6104653206" ], [ - "390832166082933", - "26778365141" + "648537251303200", + "11543" ], [ - "394108244766547", - "716760000000" + "648537251314743", + "322894" ], [ - "396298286064032", - "26723534157" + "648651109238747", + "6969544474" ], [ - "396325009598189", - "26805960384" + "648658078783221", + "1319829324" ], [ - "396351815558573", - "19925216963" + "648687783119944", + "8278400000" ], [ - "396876559988498", - "6636959689" + "648696061519944", + "7004800000" ], [ - "403252895632721", - "26771365896" + "648716573711036", + "5089600000" ], [ - "507117056987690", - "1891500000" + "648722171346064", + "9538500000" ], [ - "551501858791010", - "4512000000" + "648931504537814", + "23555040000" ], [ - "573655832985345", - "106500000000" + "648955059577814", + "4875640000" ], [ - "588878841916038", - "131652538887" + "648959935217814", + "15070160000" ], [ - "600406655075849", - "2363527378" + "649010795462125", + "16447600000" ], [ - "639715198069573", - "2189230614" + "649027726170457", + "17894090000" ], [ - "705891223608807", - "144595850533" + "649046499968065", + "22636340000" ], [ - "741729751228268", - "1456044898" + "649069136308065", + "18328000000" ], [ - "741749288606424", - "32651685550" - ], - [ - "741781940291974", - "61004241338" - ], - [ - "742560662343081", - "273256402439" + "649100844933065", + "18319300000" ], [ - "743175173822909", - "94910366676" + "649119164233065", + "11365200000" ], [ - "743314353435951", - "26369949937" + "649143422600101", + "11990900000" ], [ - "743600702406369", - "29793092327" + "649284929960638", + "2827800000" ], [ - "743684384239393", - "29401573282" + "649287827400680", + "15081600000" ], [ - "744417709046481", - "288732279695" - ] - ] - ], - [ - "0x87834847477c82d340FCD37BE6b5524b4dF5e7c5", - [ - [ - "341736578016278", - "6454277235" - ] - ] - ], - [ - "0x87A774178D49C919be273f1022de2ae106E2581e", - [ - [ - "634773067987253", - "17354145" - ] - ] - ], - [ - "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", - [ - [ - "462646168927", - "1666666666" + "649398940602242", + "32614400000" ], [ - "28368015360976", - "10000000000" + "649431555002242", + "33988820000" ], [ - "28385711672356", - "4000000000" + "649573935073567", + "26412980000" ], [ - "28553316405699", - "56203360846" + "649600986009465", + "17274840000" ], [ - "31772724860478", - "43540239232" + "649618260849465", + "20654700000" ], [ - "32013293099710", - "15000000000" + "649668950265764", + "13131300000" ], [ - "33106872744841", - "6434958505" + "649832683807170", + "20804860000" ], [ - "33262951017861", - "9375000000" + "649915798444588", + "18046700000" ], [ - "33290510627174", - "565390687" + "649933845144588", + "6658610000" ], [ - "38722543672289", - "250000000" + "649940503754588", + "4642174919" ], [ - "61000878716919", - "789407727" + "649962462383072", + "34628690000" ], [ - "72536373875278", - "200000000" + "651485759158523", + "135322" ], [ - "75784287632794", - "2935934380" + "661338230306152", + "218560408342" ], [ - "75995951619880", - "5268032293" + "808845120725088", + "163839873562" ], [ - "118322555232226", - "5892426278" + "811211085859009", + "1285117945279" ], [ - "180071240663041", - "81992697619" + "812496203804288", + "1246029256854" ], [ - "217474381338301", - "1293174476" - ], + "857581197479570", + "1634493779706" + ] + ] + ], + [ + "0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50", + [ [ - "220144194502828", - "47404123300" + "20360646192758", + "4967300995" ], [ - "317859517384357", - "291195415400" - ], + "859890207337852", + "11474760241" + ] + ] + ], + [ + "0x78A0A1F1E055c4ceeBb658AdF0c4954ae925e944", + [ [ - "333622810114113", - "200755943301" + "892341437280727", + "145860654491" ], [ - "338910099578361", - "72913082044" - ], + "892487297935218", + "3029212937100" + ] + ] + ], + [ + "0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21", + [ [ - "344618618497376", - "81000597500" - ], + "409808938067549", + "84226188785" + ] + ] + ], + [ + "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54", + [ [ - "378227726508635", - "645363133" + "227908990940664", + "435600000000" ], [ - "444973868346640", - "61560768641" - ], + "228474367102286", + "221452178690" + ] + ] + ], + [ + "0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c", + [ [ - "477195175494445", - "29857571563" - ], + "385257800041705", + "316578014158" + ] + ] + ], + [ + "0x7A1184786066077022F671957299A685b2850BD6", + [ [ - "574387565763701", - "55857695832" + "635943922934682", + "525079813" ], [ - "575679606872092", - "38492647384" - ], + "635988333778578", + "8627689764" + ] + ] + ], + [ + "0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b", + [ [ - "626184530707078", - "90718871797" - ], + "631796137362390", + "1440836515" + ] + ] + ], + [ + "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E", + [ [ - "634031481420456", - "3170719864" + "322952053290841", + "24675798977" ], [ - "634034652140320", - "1827630964" + "340056236725906", + "53380000000" ], [ - "647175726076112", - "16711431033" - ], + "340109616725906", + "53380000000" + ] + ] + ], + [ + "0x7A63D7813039000e52Be63299D1302F1e03C7a6A", + [ [ - "647388734023467", - "9748779666" - ], + "340313280922433", + "9750291736" + ] + ] + ], + [ + "0x7A6530B0970397414192A8F86c91d1e1f870a5A6", + [ [ - "680095721530457", - "10113856826" + "109585986971037", + "15454078646" ], [ - "706133899990342", - "2720589483246" - ], - [ - "720495305315880", - "55569209804" - ], + "644132646090255", + "8161384731" + ] + ] + ], + [ + "0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2", + [ [ - "721225229970053", - "55487912201" + "681870613397796", + "211456338" ], [ - "721409921103392", - "4415003338706" + "681870824854134", + "205872420" ], [ - "726480740731617", - "2047412139790" + "681991801335911", + "19315015127" ], [ - "729812277370084", - "5650444595733" - ], + "683756565573835", + "8759919160" + ] + ] + ], + [ + "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", + [ [ - "735554122237517", - "2514215964115" - ], + "624665309966700", + "41439894685" + ] + ] + ], + [ + "0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48", + [ [ - "741007335527824", - "48848467587" - ], + "319694369767515", + "36673342106" + ] + ] + ], + [ + "0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD", + [ [ - "743270084189585", - "44269246366" - ], + "264752557419462", + "8605989205" + ] + ] + ], + [ + "0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E", + [ [ - "743356388661755", - "284047664" - ], + "644746452171666", + "213353964" + ] + ] + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + [ [ - "743356672709419", - "804932236" + "738175767886792", + "725867793824" ], [ - "743357477641655", - "744601051" + "739166585934609", + "997011405679" ], [ - "743358222242706", - "636559806" - ], + "740163597340288", + "280746545970" + ] + ] + ], + [ + "0x7B2d2934868077d5E938EfE238De65E0830Cf186", + [ [ - "743358858802512", - "569027210" - ], + "53975449560599", + "629903012456" + ] + ] + ], + [ + "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4", + [ [ - "743359427829722", - "616622839" + "174459809952308", + "281091996530" ], [ - "743360044452561", - "590416341" - ], + "311079285068254", + "225639161016" + ] + ] + ], + [ + "0x7bB955249d6f57345726569EA7131E2910CA9C0D", + [ [ - "743360634868902", - "576948243" + "277940142360555", + "98218175816" ], [ - "743361211817145", - "347174290" + "603576947611080", + "199366926066" ], [ - "743361558991435", - "112939223481" + "604978961867797", + "45804202500" ], [ - "743474498214916", - "37245408077" + "605358509270297", + "85487500000" ], [ - "743511743622993", - "27738836042" - ], + "605777739970297", + "85487500000" + ] + ] + ], + [ + "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc", + [ [ - "743539482459035", - "36180207225" + "672373244407056", + "22359930276" ], [ - "743575662666260", - "9251544878" - ], + "673932629258168", + "57490196078" + ] + ] + ], + [ + "0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0", + [ [ - "743600698167087", - "4239282" - ], + "175144400293594", + "1800060629" + ] + ] + ], + [ + "0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F", + [ [ - "743630495498696", - "25004744107" - ], + "337947415831374", + "1256098598" + ] + ] + ], + [ + "0x7c12222e79e1a2552CaF92ce8dA063e188a7234F", + [ [ - "743655500242803", - "27838968460" - ], + "327333371992545", + "151078425653" + ] + ] + ], + [ + "0x7C28205352AD687348578f9cB2AB04DE1DcaA040", + [ [ - "743683339211263", - "1045028130" - ], + "107456319203211", + "248840212420" + ] + ] + ], + [ + "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F", + [ [ - "743715232207665", - "154091444" + "148739166418696", + "42976910603" ], [ - "743715386299109", - "356610619" + "149458771642101", + "17768345687" ], [ - "743715742909728", - "792560930" + "150072245775067", + "101280926262" ], [ - "743716535470658", - "930442023" - ], + "199700241341159", + "90316636223" + ] + ] + ], + [ + "0x7c9551322a2e259830A7357e436107565EA79205", + [ [ - "743717465912681", - "930527887" + "209578881176990", + "44602710850" ], [ - "743718396440568", - "930718264" + "273679685585512", + "20502770382" ], [ - "743719327158832", - "900100878" + "430048399348994", + "21915642715" ], [ - "743720227259710", - "886888605" + "564169770917708", + "253050000000" ], [ - "743721114148315", - "1195569000" + "581983286394610", + "114580000000" ], [ - "743722931420691", - "332343086" - ], + "650979810428062", + "126027343719" + ] + ] + ], + [ + "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3", + [ [ - "743723263763777", - "983775747" + "227166312100795", + "90992725291" ], [ - "743724247539524", - "409861551" - ], + "229554049269178", + "188167331696" + ] + ] + ], + [ + "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16", + [ [ - "743724657401075", - "97298663" + "33126339744841", + "2542932710" ], [ - "743724754699738", - "86768693" - ], + "647796025649944", + "2276035252" + ] + ] + ], + [ + "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", + [ [ - "743724841468431", - "33509916350" - ], + "551487055682601", + "1270108409" + ] + ] + ], + [ + "0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0", + [ [ - "743758351384781", - "69774513803" + "517136234273749", + "25727141956" ], [ - "743828125898584", - "21981814788" - ], + "575297036565480", + "37469832650" + ] + ] + ], + [ + "0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb", + [ [ - "743850107713372", - "43182294" - ], + "264289719394296", + "13882808319" + ] + ] + ], + [ + "0x7D6261b4F9e117964210A8EE3a741499679438a0", + [ [ - "743850150895666", - "37264237" - ], + "193924082223281", + "212363516752" + ] + ] + ], + [ + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + [ [ - "743850188159903", - "247711" + "41331690648396", + "1580849582" ], [ - "743850188407614", - "417946" + "41333940372011", + "1537628217" ], [ - "743850188825560", - "120504819738" + "647755311699262", + "5054893704" ], [ - "743970693645298", - "178855695867" + "648155116928042", + "75808563" ], [ - "744149549341165", - "125886081790" + "656120433075312", + "50144887945" ], [ - "744819318753537", - "98324836380" + "656895275442629", + "48622222222" ], [ - "759669831627157", - "91465441036" - ], + "660026375198031", + "42190522575" + ] + ] + ], + [ + "0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af", + [ [ - "759761297451604", - "12346431080" - ], + "320112525044800", + "79896782500" + ] + ] + ], + [ + "0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20", + [ [ - "759773643882684", - "1557369578" - ], + "219573347561330", + "3194476000" + ] + ] + ], + [ + "0x7eaF877B409740afa24226D4A448c980896Be795", + [ [ - "759775201252262", - "18264975890" - ], + "609292089920626", + "20074904153" + ] + ] + ], + [ + "0x7eFaC69750cc933e7830829474F86149A7DD8e35", + [ [ - "759793466228152", - "133677" + "200844770244188", + "1000000" ], [ - "759794285432848", - "26613224094" + "200844771244188", + "179562380519" ], [ - "759820979493945", - "70435190" - ], + "210870560056118", + "293011632289" + ] + ] + ], + [ + "0x7F82e84C2021a311131e894ceFf475047deD4673", + [ [ - "759821049929135", - "64820367" - ], + "623581806243753", + "62496053737" + ] + ] + ], + [ + "0x7Fe78b37A3F8168Cd60C6860d176D22b81181555", + [ [ - "759821114749502", - "315142246" - ], + "783115581867489", + "232497931186" + ] + ] + ], + [ + "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70", + [ [ - "759821772251897", - "342469548" + "20300839138392", + "1" ], [ - "759822114721445", - "22786793078" + "141104093757416", + "2326237721" ], [ - "759844955449185", - "62362349" + "141106419995137", + "1466439378" ], [ - "759845017811534", - "79862410" + "157543059307151", + "3855741975" ], [ - "759845097673944", - "78350903" - ], + "633362764561998", + "8976176800" + ] + ] + ], + [ + "0x80077CB3B35A6c30DC354469f63e0743eeff32D4", + [ [ - "759845176024847", - "81575013" - ], + "417435849352728", + "4099200000000" + ] + ] + ], + [ + "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5", + [ [ - "759845257599860", - "81611843" + "41340350884137", + "5263157894" ], [ - "759845339211703", - "79874694" + "213307234626330", + "12500000000" ], [ - "759845419086397", - "79925681" + "380613889185508", + "10461930383" ], [ - "759845499012078", - "79231634" + "385650953907930", + "16235000000" ], [ - "759845578243712", - "73291169" + "646795333940977", + "6300493418" ], [ - "759845651534881", - "61264703" + "646842090324499", + "6350838475" ], [ - "759845766640518", - "56977225" + "648299147129728", + "14576284733" ], [ - "759845823617743", - "71386527" + "648377421210050", + "13030510108" ], [ - "759845895004270", - "75906832" + "653297909699401", + "24458875511" ], [ - "759846058683685", - "75729409" + "653479984577629", + "119019649033" ], [ - "759846134413094", - "27722926" + "662024206613204", + "79777206742" + ] + ] + ], + [ + "0x804Be57907807794D4982Bf60F8b86e9010A1639", + [ + [ + "76424701653538", + "94753388776" ], [ - "759846162136020", - "30197986" + "84731726100795", + "91448859303" + ] + ] + ], + [ + "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81", + [ + [ + "74179965494047", + "25544672634" ], [ - "759846192334006", - "158241812" + "166225090295346", + "87221043559" + ] + ] + ], + [ + "0x80771B6DC16d2c8C291e84C8f6D820150567534C", + [ + [ + "213457800486791", + "14257446361" ], [ - "759846350575818", - "123926293" + "213472057933152", + "186730161037" + ] + ] + ], + [ + "0x80915E89Ffe836216866d16Ec4F693053f205179", + [ + [ + "599110873255821", + "6253532657" + ] + ] + ], + [ + "0x80a2527A444C4f2b57a247191cDF1308c9EB210D", + [ + [ + "767511386944346", + "37106473488" + ] + ] + ], + [ + "0x81696d556eeCDc42bED7C3b53b027de923cC5038", + [ + [ + "319731043109621", + "14925453141" ], [ - "759846474502111", - "124139589" + "402373662443244", + "36113082774" + ] + ] + ], + [ + "0x81704Bce89289F64a4295134791848AaCd975311", + [ + [ + "644073460766211", + "46712134" ], [ - "759846598641700", - "25193251" + "644187073578836", + "33" + ] + ] + ], + [ + "0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19", + [ + [ + "237009419020035", + "24112008674" + ] + ] + ], + [ + "0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b", + [ + [ + "591001814503012", + "551376150000" + ] + ] + ], + [ + "0x81d8363845F96f94858Fac44A521117DADBfD837", + [ + [ + "332432233728809", + "324629738694" + ] + ] + ], + [ + "0x81eee01e854EC8b498543d9C2586e6aDCa3E2006", + [ + [ + "267836734902245", + "198456386297" ], [ - "759846623834951", - "25387540" + "273007832358749", + "292267679049" + ] + ] + ], + [ + "0x81F3C0A3115e4F115075eE079A48717c7dfdA800", + [ + [ + "85005128802664", + "17746542257" ], [ - "759846649222491", - "665345" + "138205055379551", + "21229490022" + ] + ] + ], + [ + "0x821bb6973FdA779183d22C9891f566B2e59C8230", + [ + [ + "218770430128287", + "11235751123" + ] + ] + ], + [ + "0x8264EA7b0b15a7AD9339F06666D7E339129C9482", + [ + [ + "321485895691147", + "32021232234" + ] + ] + ], + [ + "0x829Ceb00fC74bD087b1e50d31ec628a90894cD52", + [ + [ + "323285415668114", + "50596304590" ], [ - "759846954659102", - "631976394" + "355313179311575", + "62470363029" ], [ - "759847586635496", - "66958527" + "367287703769008", + "64080321723" + ] + ] + ], + [ + "0x82a8409a264ea933405f5Fe0c4011c3327626D9B", + [ + [ + "870103302085771", + "48730138326" + ] + ] + ], + [ + "0x82CFf592c2D9238f05E0007F240c81990f17F764", + [ + [ + "273671446460892", + "8239124620" + ] + ] + ], + [ + "0x82F402847051BDdAAb0f5D4b481417281837c424", + [ + [ + "33153376109285", + "2512740605" ], [ - "759847653594023", - "44950580" + "215241439378309", + "5150327530" ], [ - "759847698544603", - "46547201" + "326072699542277", + "25020000000" ], [ - "759847745091804", - "18839036" + "335847619702697", + "10121780000" + ] + ] + ], + [ + "0x82Ff15f5de70250a96FC07a0E831D3e391e47c48", + [ + [ + "767984775426960", + "4440000000" + ] + ] + ], + [ + "0x8325D26d08DaBf644582D2a8da311D94DBD02A97", + [ + [ + "153701253487878", + "11008858783" ], [ - "759847763930840", - "270669443" + "232621964312561", + "2641422510" + ] + ] + ], + [ + "0x832fBA673d712fd5bC698a3326073D6674e57DF5", + [ + [ + "217540873751726", + "22996141953" ], [ - "759848034600283", - "365575215" + "265592792884462", + "23842558596" + ] + ] + ], + [ + "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751", + [ + [ + "581907954037154", + "1000000" ], [ - "759848595655012", - "187295653" + "581907955037154", + "9999000000" ], [ - "759848782950665", - "25295452" + "665701343812558", + "272195102173" + ], + [ + "669333969414822", + "215834194074" + ], + [ + "677431627790689", + "31545276943" + ], + [ + "678914917868431", + "570100000000" + ], + [ + "759972802735125", + "63916929" + ], + [ + "759972866652054", + "34919933" + ], + [ + "759972901571987", + "44762503" + ], + [ + "759972946334490", + "26506" + ], + [ + "759972946360996", + "54603" + ], + [ + "759972946415599", + "45639837" + ], + [ + "759972992055436", + "36372829" + ], + [ + "759973028428265", + "212331" + ], + [ + "760183772870995", + "237950000" + ], + [ + "760353370932416", + "640797" + ], + [ + "761858118071390", + "18166203" + ], + [ + "761858136237593", + "33655130" + ], + [ + "761858169892723", + "41246561" ], [ - "759848808246117", - "173058283" + "761858264676918", + "27291992" ], [ - "759848981304400", - "63821133" + "761860246451109", + "40407888" ], [ - "759849045125533", - "25336780" + "761860286858997", + "20624528" ], [ - "759849070462313", - "29081391" + "761861105640928", + "38655387" ], [ - "759849099543704", - "29122172" + "761861144296315", + "8965138" ], [ - "759849128665876", - "28706993" + "762295499061705", + "29510736" ], [ - "759849157372869", - "13456201" + "762295528572441", + "31584894" ], [ - "759849170829070", - "36511282" + "762295560157335", + "35342" ], [ - "759849207340352", - "41243780" + "762295560192677", + "19821585" ], [ - "759849248584132", - "33852678" + "762940981941034", + "21214050" ], [ - "759849282436810", - "33956125" + "763876944550921", + "126220" ], [ - "759849316392935", - "34132617" + "763876944677141", + "2145664" ], [ - "759849350525552", - "17041223" + "763877071172496", + "18553917" ], [ - "759849367566775", - "20273897" + "763877559163775", + "2178159" ], [ - "759849387840672", - "9037475" + "763898472187152", + "34733796" ], [ - "759849396878147", - "45923781" + "763898517945378", + "2604448" ], [ - "759849442801928", - "52882809" + "763904514777740", + "12880451" ], [ - "759849495684737", - "71491609" + "763904527658191", + "8645673" ], [ - "759849567176346", - "39781360" + "763904536303864", + "5775330" ], [ - "759849606957706", - "35612937" + "763904542079194", + "8086438" ], [ - "759849642570643", - "45789959" + "763904550165632", + "8189602" ], [ - "759849688360602", - "46291324" + "763904558355234", + "9042724" ], [ - "759849734651926", - "46416554" + "763904567397958", + "9831655" ], [ - "759849781068480", - "46480026" + "763904577229613", + "27363324" ], [ - "759849827548506", - "28909947" + "763908619462613", + "12836178" ], [ - "759849856458453", - "20566561" + "763910556401834", + "11888964" ], [ - "759849877025014", - "20612970" + "763910568290798", + "12803633" ], [ - "759849897637984", - "9530420" + "763910581094431", + "5385691" ], [ - "759849923422103", - "43423401" + "763910586480122", + "8796762" ], [ - "759849966845504", - "11714877" + "763976063428196", + "9117332" ], [ - "759864364377919", - "13050269" + "763976234474836", + "4457574" ], [ - "759864377428188", - "28949561" + "763976357160622", + "7294661" ], [ - "759864451656441", - "45362892" + "763976364455283", + "7550783" ], [ - "759864497019333", - "45386397" + "763976372006066", + "7917327" ], [ - "759864542405730", - "44251644" + "763976379923393", + "8299132" ], [ - "759864623518170", - "16029726" + "763977688578348", + "7313583" ], [ - "759864639547896", - "27422448" + "763977695891931", + "8256505" ], [ - "759864666970344", - "45324196" + "763977704148436", + "8272223" ], [ - "759864712294540", - "45381527" + "763977712420659", + "8438801" ], [ - "759864794252615", - "45249060" + "763977720859460", + "1226665" ], [ - "759864839501675", - "38552197" + "763977722086125", + "8329771" ], [ - "759864878053872", - "45325980" + "763977730415896", + "9430332" ], [ - "759864923379852", - "45332668" + "763977739846228", + "9446755" ], [ - "759864968712520", - "14947041" + "763977749292983", + "9551578" ], [ - "759864983659561", - "44411176" + "763977758844561", + "12158603" ], [ - "759865028070737", - "45841550" + "763977771003164", + "17003737" ], [ - "759865073912287", - "37491304" + "763977788006901", + "20306613" ], [ - "759865111403591", - "35823677" + "763977808313514", + "8074766" ], [ - "759865189244823", - "45959807" + "763977816388280", + "6279090" ], [ - "759865235204630", - "28621023" + "763978505738531", + "8847815" ], [ - "759865309352063", - "54352361" + "763983196643288", + "10869074" ], [ - "759865363704424", - "37604905" + "763983434298148", + "9849175" ], [ - "759865401309329", - "48060122" + "763985909132064", + "9752450" ], [ - "759865502784387", - "41998112" + "763985918884514", + "9787526" ], [ - "759865545775991", - "43017774" + "764056294370732", + "9351239" ], [ - "759865588793765", - "45709130" + "764056303721971", + "9560632" ], [ - "759865634502895", - "20672897" + "764058355999201", + "11112309" ], [ - "759865655175792", - "18088532" + "764059201744095", + "12584379" ], [ - "759865673264324", - "176142052" + "764059214328474", + "15014610" ], [ - "759865849406376", - "249729828" + "764059229343084", + "48861891" ], [ - "759866099136204", - "111218297" + "764059278204975", + "75874729" ], [ - "759866210354501", - "27934473" + "764059944324704", + "7505667" ], [ - "759866238288974", - "27468895" + "764059951830371", + "7635979" ], [ - "759866265757869", - "1914618989" + "764059959466350", + "7814413" ], [ - "759868180376858", - "45603693" + "764059967280763", + "7718713" ], [ - "759868225980551", - "45842728" + "764059974999476", + "6432651" ], [ - "759868271823279", - "46014440" + "764059981432127", + "6505670" ], [ - "759868317837719", - "46063229" + "764059987937797", + "5540593" ], [ - "759868363900948", - "2621289" + "764059993478390", + "9367181" ], [ - "759868366522237", - "53709228" + "764060002845571", + "11137793" ], [ - "759868420231465", - "52228978" + "764060013983364", + "12401916" ], [ - "759868472460443", - "66561157603" + "764060026385280", + "9288929" ], [ - "759935033618046", - "45751501" + "764060035674209", + "9390137" ], [ - "759935079369547", - "45866818" + "764060045064346", + "1450847" ], [ - "759935171141704", - "45924323" + "764060046515193", + "1501728" ], [ - "759935217066027", - "27091944" + "764060048016921", + "2894840" ], [ - "759935244157971", - "47094028" + "764060050911761", + "4941150" ], [ - "759935291251999", - "4720868852" + "764060055852911", + "1301076" ], [ - "759940035846319", - "79415211" + "764060057153987", + "1700111" ], [ - "759940115261530", - "104887944" + "764060058854098", + "1809338" ], [ - "759940220149474", - "104422502" + "764060060663436", + "2557221" ], [ - "759940324571976", - "47123207" + "764060063220657", + "3319612" ], [ - "759940371695183", - "21522781" + "764060066540269", + "7533814" ], [ - "759940431848469", - "26567259" + "764060074074083", + "7779768" ], [ - "759940458415728", - "28464738" + "764452648625420", + "8106249" ], [ - "759940486880466", - "16535232" + "764452728661398", + "6424123" ], [ - "759940529740783", - "23798092" + "764454212950366", + "971045" ], [ - "759940553538875", - "22130816" + "767132400796221", + "371800" ], [ - "759940575669691", - "19923295" + "767132401168021", + "37" ], [ - "759940703254106", - "96921736" + "767132401168058", + "37" ], [ - "759944301288885", - "148924295" + "767825578930453", + "409264" ], [ - "759944524831820", - "94934102" + "767825579339717", + "6540080" ], [ - "759944631176184", - "441416" - ], + "767852884974560", + "16635629" + ] + ] + ], + [ + "0x8366bc75C14C481c93AaC21a11183807E1DE0630", + [ [ - "759944876402388", - "86731197" + "76001221652173", + "5352834315" ], [ - "759945236861297", - "37118" + "153738842061438", + "31920948003" ], [ - "759945663978694", - "33147570" + "648175958870466", + "11538942187" ], [ - "759947353926358", - "19648269869" + "657207189000929", + "22663915925" + ] + ] + ], + [ + "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17", + [ + [ + "218815689873725", + "90674071972" ], [ - "759967315893614", - "43342636" + "511059734567237", + "208510236741" + ] + ] + ], + [ + "0x83C9EC651027e061BcC39485c1Fb369297bD428c", + [ + [ + "41616804521094", + "961875804178" ], [ - "759967359236250", - "73180835" + "43500195788736", + "477585749636" ], [ - "759968303751614", - "86480048" + "45436352397595", + "303350065235" ], [ - "759968390231662", - "87319503" + "75054132455628", + "463749167922" ], [ - "759968565049433", - "57445411" + "75556189962930", + "129981759017" + ] + ] + ], + [ + "0x843F293423895a837DBe3Dca561604e49410576C", + [ + [ + "325979734145362", + "11660550051" + ] + ] + ], + [ + "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", + [ + [ + "635972973747079", + "594161902" ], [ - "759969182444540", - "86435423" + "638302750599290", + "1659683909" ], [ - "759969313128560", - "78853009" + "649155413500101", + "12127559908" + ] + ] + ], + [ + "0x8456f07Bed6156863C2020816063Be79E3bDAB88", + [ + [ + "312515166525797", + "27881195737" + ] + ] + ], + [ + "0x84649973923f8d3565E8520171618588508983aF", + [ + [ + "76120188262565", + "6666000000" + ] + ] + ], + [ + "0x848aB321B59da42521D10c07c2453870b9850c8A", + [ + [ + "676683082878726", + "419955" ], [ - "759969922263950", - "86993082" + "676686201559550", + "785945" + ] + ] + ], + [ + "0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849", + [ + [ + "84451783274191", + "5746830768" ], [ - "759970009257032", - "87071115" + "644558639373403", + "6740000000" ], [ - "759970096328147", - "87094141" - ], + "644583603532321", + "6316834733" + ] + ] + ], + [ + "0x849eA9003Ba70e64D0de047730d47907762174C3", + [ + [ + "646770632841517", + "1588254225" + ] + ] + ], + [ + "0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b", + [ [ - "759970659966091", - "7037654" - ], + "408274916734309", + "46120079714" + ] + ] + ], + [ + "0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C", + [ [ - "759970895945609", - "88340633" - ], + "553461057474487", + "87874946085" + ] + ] + ], + [ + "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e", + [ [ - "759971171933682", - "103831674" + "319387499836221", + "99947794980" ], [ - "759971792380007", - "55918771" - ], + "319487447631201", + "99825855937" + ] + ] + ], + [ + "0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371", + [ [ - "759971848298778", - "51663688" - ], + "4952867558328", + "11407582" + ] + ] + ], + [ + "0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2", + [ [ - "759971899962466", - "51820149" - ], + "641528528201681", + "103236008" + ] + ] + ], + [ + "0x85971eb6073d28edF8f013221071bDBB9DEdA1af", + [ [ - "759971951782615", - "53263163" - ], + "195612355274761", + "16839687137" + ] + ] + ], + [ + "0x85bBE859d13c5311520167AAD51482672EEa654b", + [ [ - "759972005045778", - "46273362" + "52088858820053", + "99058163147" ], [ - "759972051319140", - "11764053" + "96762775283557", + "102770386747" ], [ - "759972063083193", - "44521152" + "173386909282298", + "93706942656" ], [ - "759972107604345", - "54315334" + "361560759321922", + "124922335390" ], [ - "759972270510579", - "52771216" + "395500230234319", + "3355929998" ], [ - "759972378810991", - "53615733" + "395507210053015", + "1342546167" ], [ - "759972432426724", - "54009683" + "400387101795137", + "13305220778" ], [ - "759972545991397", - "40392605" + "408338406239697", + "2037424295" ], [ - "759972586384002", - "40570272" + "415550617895723", + "2006847559" ], [ - "759972626954274", - "29991995" + "443883816299985", + "132685663226" ], [ - "759972656946269", - "27715408" + "577904956448694", + "30085412412" ], [ - "759972684661677", - "10745158" + "836265440249827", + "101381274964" ], [ - "759972695406835", - "53647337" - ], + "916958051049107", + "103888892461" + ] + ] + ], + [ + "0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a", + [ [ - "759973067945793", - "43509245" - ], + "676879061041574", + "401082333" + ] + ] + ], + [ + "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008", + [ [ - "760353358762258", - "10893874" + "16396578434940", + "1386508934563" ], [ - "760353369656132", - "992291" - ], + "452122462229722", + "3565000000000" + ] + ] + ], + [ + "0x85Eada0D605d905262687Ad74314bc95837dB4F9", + [ [ - "760353370648423", - "136316" + "680106747582914", + "8091023787" ], [ - "760353370784739", - "147677" - ], + "681632124128030", + "7857742444" + ] + ] + ], + [ + "0x86642f87887c1313f284DBEc47E79Dc06593b82e", + [ [ - "760353371573213", - "659890" - ], + "768785503361939", + "2853000000" + ] + ] + ], + [ + "0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5", + [ [ - "760353372233103", - "46092807" + "265691646124302", + "52475804769" ], [ - "760354201137939", - "3218014" + "266029676145669", + "95013616645" ], [ - "760354238838872", - "3273321614" - ], + "428383641973567", + "133886156698" + ] + ] + ], + [ + "0x8675C7bc738b4771D29bd0d984c6f397326c9eC2", + [ [ - "760357963287583", - "52520804" - ], + "271861293951059", + "198152825" + ] + ] + ], + [ + "0x8687c54f8A431134cDE94Ae3782cB7cba9963D12", + [ [ - "760358123735957", - "112541922486" - ], + "646497940474546", + "84596400000" + ] + ] + ], + [ + "0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c", + [ [ - "760472183068657", - "71399999953" - ], + "760184740654334", + "11932612568" + ] + ] + ], + [ + "0x8709DD5FE0F07219D8d4cd60735B58E2C3009073", + [ [ - "760765586953427", - "195667368889" + "173486508329974", + "159470624797" ], [ - "760961254322316", - "846285958415" - ], + "190814678933595", + "29696822758" + ] + ] + ], + [ + "0x87104977d80256B00465d3411c6D93A63818723c", + [ + [ + "886456591570583", + "134558229863" + ] + ] + ], + [ + "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", + [ [ - "761807542325030", - "712321671" + "740625640590276", + "3880736646" ], [ - "761808255104338", - "10685317968" - ], + "769309859020325", + "543636737" + ] + ] + ], + [ + "0x87316f7261E140273F5fC4162da578389070879F", + [ [ - "761818941407193", - "38669865140" + "33300451017861", + "86512840254" ], [ - "761858011206868", - "52031027" + "61109178571450", + "122328394500" ], [ - "761858211139284", - "53537634" + "634752629673424", + "177195" ], [ - "761858291968910", - "1954482199" + "650887494287222", + "91918750000" ], [ - "761860307483525", - "798157403" + "662291967520724", + "358440000000" ], [ - "762237672060652", - "57392002182" + "665973538914731", + "277554381613" ], [ - "762295918132248", - "68617976" + "666823186189970", + "262793215966" ], [ - "762295986750224", - "181183510038" - ], + "667093311031404", + "218769177704" + ] + ] + ], + [ + "0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D", + [ [ - "762477170260262", - "181104817321" + "318879364223287", + "100013282422" ], [ - "762658275077583", - "181134595436" - ], + "325544608143106", + "116174772099" + ] + ] + ], + [ + "0x876133657F5356e376B7ae27d251444727cE9488", + [ [ - "762928154263486", - "12718343972" - ], + "768637502130744", + "6878063205" + ] + ] + ], + [ + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", + [ [ - "762941373378458", - "61742453" + "29414505086527", + "2152396670739" ], [ - "762941584284511", - "53571451" + "32181015349710", + "480290414" ], [ - "762941637855962", - "53583667" + "67097307242526", + "33653558763" ], [ - "762941691439629", - "503128696018" + "70363795658552", + "66346441237" ], [ - "763444820135647", - "9452272123" + "87581469817175", + "155805856117" ], [ - "763454275602361", - "24685659026" + "98500494455758", + "312782775000" ], [ - "763478961261387", - "50245820668" + "221217178954962", + "79784359766" ], [ - "763529207082055", - "45323986837" + "291950100636275", + "188949798464" ], [ - "763574531068892", - "38976282600" + "353439836528037", + "30660000000" ], [ - "763877196713494", - "54224527" + "353470496528037", + "24576000000" ], [ - "763877250938021", - "54871543" + "362146672277631", + "792250000000" ], [ - "763877347112986", - "53640521" + "376516374904000", + "1617000000000" ], [ - "763879425886186", - "18918512681" + "390771216202303", + "27097995630" ], [ - "763899542751244", - "4287074277" + "390832166082933", + "26778365141" ], [ - "763904856308950", - "91042132" + "394108244766547", + "716760000000" ], [ - "763904947351082", - "3672111531" + "396298286064032", + "26723534157" ], [ - "763908632298791", - "1924103043" + "396325009598189", + "26805960384" ], [ - "763910715862653", - "4104368630" + "396351815558573", + "19925216963" ], [ - "763938664793385", - "889781905" + "396876559988498", + "6636959689" ], [ - "763975977681622", - "85746574" + "403252895632721", + "26771365896" ], [ - "763976127391221", - "54879926" + "507117056987690", + "1891500000" ], [ - "763976238932410", - "67220754" + "551501858791010", + "4512000000" ], [ - "763978572723857", - "2432585925" + "573655832985345", + "106500000000" ], [ - "763983475557042", - "2433575022" + "588878841916038", + "131652538887" ], [ - "763985961279749", - "3362361779" + "600406655075849", + "2363527378" ], [ - "763989323641528", - "66961666112" + "639715198069573", + "2189230614" ], [ - "764448523798789", - "9214910" + "705891223608807", + "144595850533" ], [ - "764448533013699", - "3175483736" + "741729751228268", + "1456044898" ], [ - "764453314028098", - "886719471" + "741749288606424", + "32651685550" ], [ - "766181126764911", - "110330114890" + "741781940291974", + "61004241338" ], [ - "766291456879801", - "143444348214" + "742560662343081", + "273256402439" ], [ - "767321251748842", - "180967833670" + "743175173822909", + "94910366676" ], [ - "767824420446983", - "1158445599" + "743314353435951", + "26369949937" ], [ - "767978192014986", - "1606680000" + "743600702406369", + "29793092327" ], [ - "790662167913055", - "60917382823" + "743684384239393", + "29401573282" ], [ - "792657494145217", - "11153713894" - ], + "744417709046481", + "288732279695" + ] + ] + ], + [ + "0x87834847477c82d340FCD37BE6b5524b4dF5e7c5", + [ [ - "845186146706783", - "62659298764" + "341736578016278", + "6454277235" + ] + ] + ], + [ + "0x87A774178D49C919be273f1022de2ae106E2581e", + [ + [ + "634773067987253", + "17354145" ] ] ], diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json index 782ea75e..ec524cb2 100644 --- a/scripts/beanstalkShipments/data/unripeBdvTokens.json +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -3491,6 +3491,10 @@ "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", "10156821650" ], + [ + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "6488276643498" + ], [ "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", "84850273565" @@ -5075,10 +5079,6 @@ "0x87A774178D49C919be273f1022de2ae106E2581e", "1151920" ], - [ - "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", - "6488276643498" - ], [ "0x87b6c8734180d89A7c5497AB91854165d71fAD60", "7873358244" diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index de9a0ed2..9ffd7f0d 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -68,7 +68,7 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy( initData, // AccountData[] memory _accountsData contractAccounts, // address[] memory _contractAccounts - PINTO, // address _pintoProtocol + L2_PINTO, // address _pintoProtocol siloPaybackContract.address, // address _siloPayback barnPaybackContract.address // address _barnPayback ); diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index f8c4b037..c9c26091 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -6,13 +6,14 @@ import {TestHelper} from "test/foundry/utils/TestHelper.sol"; import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; import {console} from "forge-std/console.sol"; -import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; -import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; +import {IBarnPayback, LibTransfer as BarnLibTransfer, BeanstalkFertilizer} from "contracts/interfaces/IBarnPayback.sol"; +import {ISiloPayback, LibTransfer as SiloLibTransfer} from "contracts/interfaces/ISiloPayback.sol"; import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; import {LibReceiving} from "contracts/libraries/LibReceiving.sol"; +import {ContractPaybackDistributor} from "contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol"; /** * @notice Tests shipment distribution and claiming functionality for the beanstalk shipments system. @@ -27,10 +28,28 @@ contract BeanstalkShipmentsTest is TestHelper { address constant SILO_PAYBACK = address(0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E); address constant BARN_PAYBACK = address(0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b); address constant DEV_BUDGET = address(0xb0cdb715D8122bd976a30996866Ebe5e51bb18b0); - + address constant CONTRACT_PAYBACK_DISTRIBUTOR = + address(0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000); // Owners address constant PCM = address(0x2cf82605402912C6a79078a9BBfcCf061CbfD507); + // Paths + // Field + string constant FIELD_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt"; + string constant FIELD_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_field.json"; + // Silo + string constant SILO_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt"; + string constant SILO_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_silo.json"; + // Barn + string constant BARN_ADDRESSES_PATH = + "./scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt"; + string constant BARN_JSON_PATH = + "./scripts/beanstalkShipments/data/exports/beanstalk_barn.json"; + ////////// State Structs ////////// struct SystemFertilizerStruct { @@ -56,6 +75,11 @@ contract BeanstalkShipmentsTest is TestHelper { ISiloPayback siloPayback = ISiloPayback(SILO_PAYBACK); IBarnPayback barnPayback = IBarnPayback(BARN_PAYBACK); IMockFBeanstalk pinto = IMockFBeanstalk(PINTO); + ContractPaybackDistributor contractDistributor = + ContractPaybackDistributor(CONTRACT_PAYBACK_DISTRIBUTOR); + + // Contract accounts loaded from JSON file + address[] contractAccounts; // we need to: // - Verify that all state matches the one in the json files for shipments, silo and barn payback @@ -63,7 +87,9 @@ contract BeanstalkShipmentsTest is TestHelper { // - make the system print, check distribution in each contract // - for each component, make sure everything is distributed correctly // - make sure that at any point all users can claim their rewards pro rata - function setUp() public {} + function setUp() public { + _loadContractAccountsFromJson(); + } //////////////////////// SHIPMENT DISTRIBUTION //////////////////////// @@ -287,23 +313,206 @@ contract BeanstalkShipmentsTest is TestHelper { //////////////////////// REGULAR ACCOUNT CLAIMING //////////////////////// - // note: test that all users can claim their rewards at any point - // iterate through the accounts array of silo and fert payback and claim the rewards for each - // silo - function test_siloPaybackClaimShipmentDistribution() public {} - // barn - function test_barnPaybackClaimShipmentDistribution() public {} - // payback field - function test_paybackFieldClaimShipmentDistribution() public {} + /** + * @notice Test that all silo payback holders are able to claim their rewards + * after a distribution has occured. + */ + function test_siloPaybackClaimShipmentDistribution() public { + // assert no rewards before distribution + assertEq(siloPayback.rewardPerTokenStored(), 0); + + // distribute 3 times to get rewards per token stored + increaseSupplyAndDistribute(); + _skipSeasonAndCallSunrise(); + _skipSeasonAndCallSunrise(); + uint256 rewardsPerTokenStored = siloPayback.rewardPerTokenStored(); + + // claim for the first 50 accounts + uint256 accountNumber = 50; + string memory account; + for (uint256 i = 0; i < accountNumber; i++) { + account = vm.readLine(SILO_ADDRESSES_PATH); + address accountAddr = vm.parseAddress(account); + // assert the user has claimable rewards + // if the account has less than 1e6 silo payback, skip it since it may cause rounding errors in earned() + if (siloPayback.balanceOf(accountAddr) < 1e6) continue; + assertGt(siloPayback.earned(accountAddr), 0, "Account should have rewards"); + assertEq( + siloPayback.userRewardPerTokenPaid(accountAddr), + 0, + "User should have no rewards paid yet" + ); + + // claim the pinto rewards + vm.prank(accountAddr); // prank as the account + siloPayback.claim(accountAddr, SiloLibTransfer.To.EXTERNAL); // claim the rewards + + // check that the user and global indexes are synced + assertEq(siloPayback.userRewardPerTokenPaid(accountAddr), rewardsPerTokenStored); + // check that the balance of pinto of the account is greater than 0 + assertGt(IERC20(L2_PINTO).balanceOf(accountAddr), 0); + } + } + + /** + * @notice Test the payback field holder with the plot at the front of the line can harvest + * their plot for pinto after a distribution has occured. + */ + function test_paybackFieldHarvestFromShipmentDistribution() public { + // distribute and increment harvestable index + increaseSupplyAndDistribute(); + address firstHarvester = address(0xe3cd19FAbC17bA4b3D11341Aa06b6f245DE3f9A6); + assertGt( + pinto.harvestableIndex(PAYBACK_FIELD_ID), + 0, + "Harvestable index of payback field should have increased" + ); + // 164866037 harvestable index ( around 1% of total delta b) + + uint256 plotId = 0; // first plot + uint256[] memory plots = new uint256[](1); + plots[0] = plotId; + + // prank and call harvest + vm.prank(firstHarvester); + pinto.harvest(PAYBACK_FIELD_ID, plots, uint8(BarnLibTransfer.To.EXTERNAL)); + + // assert the balance of pinto of the first harvester is greater than 0 + assertGt(IERC20(L2_PINTO).balanceOf(firstHarvester), 0); + } + + /** + * @notice Test that all active fertilizer holders are able to claim their * rinsable sprouts after a distribution has occured. + */ + function test_barnPaybackClaimShipmentDistribution() public { + // Capture initial barn payback state before distribution + SystemFertilizerStruct memory initialFertState = _getSystemFertilizer(); + + // Ensure shipments have been distributed to advance BPF + increaseSupplyAndDistribute(); + + // Calculate expected BPF and fertilizedIndex increases based on shipment amount + // From BarnPayback.barnPaybackReceive(): remainingBpf = amountToFertilize / fert.activeFertilizer + uint256 shipmentAmount = 164866037; // 1% of total deltaB + uint256 amountToFertilize = shipmentAmount + initialFertState.leftoverBeans; + uint256 expectedBpfIncrease = amountToFertilize / initialFertState.activeFertilizer; + uint256 expectedFertilizedIndexIncrease = expectedBpfIncrease * + initialFertState.activeFertilizer; + + // Verify distribution state changes + SystemFertilizerStruct memory postDistributionState = _getSystemFertilizer(); + + assertEq( + postDistributionState.bpf, + initialFertState.bpf + expectedBpfIncrease, + "BPF should increase by shipment amount divided by active fertilizer" + ); + assertEq( + postDistributionState.fertilizedIndex, + initialFertState.fertilizedIndex + expectedFertilizedIndexIncrease, + "FertilizedIndex should increase by BPF increase times active fertilizer" + ); + + // Load fertilizer data and get first 10 active fertilizer IDs + ( + uint256[] memory fertilizerIds, + address[] memory claimAccounts + ) = _getFirst10FertilizerClaims(); + + uint256 totalClaimedAmount = 0; + + for (uint256 i = 0; i < fertilizerIds.length && i < 10; i++) { + uint256[] memory singleId = new uint256[](1); + singleId[0] = fertilizerIds[i]; + + uint256 claimableAmount = barnPayback.balanceOfFertilized(claimAccounts[i], singleId); + + if (claimableAmount > 0) { + uint256 userBalanceBefore = IERC20(L2_PINTO).balanceOf(claimAccounts[i]); + uint256 paidIndexBefore = _getSystemFertilizer().fertilizedPaidIndex; + + vm.prank(claimAccounts[i]); + barnPayback.claimFertilized(singleId, BarnLibTransfer.To.EXTERNAL); + + // User should receive exactly the claimed pinto amount + assertEq( + IERC20(L2_PINTO).balanceOf(claimAccounts[i]), + userBalanceBefore + claimableAmount, + "User should receive exactly claimed pinto amount" + ); + + assertEq( + _getSystemFertilizer().fertilizedPaidIndex, + paidIndexBefore + claimableAmount, + "FertilizedPaidIndex should increase by exactly claimed amount" + ); + + assertEq( + barnPayback.balanceOfFertilized(claimAccounts[i], singleId), + 0, + "User should have exactly zero claimable beans after claim" + ); + + assertEq( + barnPayback.lastBalanceOf(claimAccounts[i], fertilizerIds[i]).lastBpf, + postDistributionState.bpf < fertilizerIds[i] + ? postDistributionState.bpf + : fertilizerIds[i], + "User's lastBpf should be updated to min(currentBpf, fertilizerId)" + ); + + totalClaimedAmount += claimableAmount; + } + } + + // final state + SystemFertilizerStruct memory finalState = _getSystemFertilizer(); + + assertEq( + finalState.fertilizedPaidIndex, + postDistributionState.fertilizedPaidIndex + totalClaimedAmount, + "FertilizedPaidIndex should increase by exactly total claimed amount" + ); + } //////////////////////// CONTRACT ACCOUNT CLAIMING //////////////////////// - // check that all contract accounts can claim their rewards directly - function test_contractAccountsCanClaimShipmentDistribution() public {} + /** + * @notice Check that all contract accounts can claim their rewards directly + * By measuring the gas usage for each claim, we also get the necessary gas limit for the L1 contract messenger + * See L1ContractMessenger.{claimL2BeanstalkAssets} for details on the gas limit + */ + function test_contractAccountsCanClaimShipmentDistribution() public { + uint256 maxGasUsed; + + for (uint256 i = 0; i < contractAccounts.length; i++) { + vm.startSnapshotGas("contractClaimWithPlots"); + + // Prank as the contract account to call claimDirect + vm.prank(contractAccounts[i]); + contractDistributor.claimDirect(farmer1); + + uint256 gasUsed = vm.stopSnapshotGas(); + if (gasUsed > maxGasUsed) { + maxGasUsed = gasUsed; + } + } + console.log("Max gas used for claims from all contracts", maxGasUsed); + } - // check that 0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997 can claim their rewards - // check gas usage - function test_plotContractCanClaimShipmentDistribution() public {} + /** + * @notice Check that 0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997 can claim their rewards + * check gas usage + */ + function test_plotContractCanClaimShipmentDistribution() public { + address plotContract = address(0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997); + vm.startSnapshotGas("contractClaimWithPlots"); + // prank and call claimDirect + vm.prank(plotContract); + contractDistributor.claimDirect(farmer1); + uint256 gasUsed = vm.stopSnapshotGas(); + console.log("Gas used by contract claim with plots", gasUsed); + } //////////////////// Helper Functions //////////////////// @@ -338,6 +547,13 @@ contract BeanstalkShipmentsTest is TestHelper { pinto.sunrise(); } + function _skipSeasonAndCallSunrise() internal { + // skip 2 blocks and call sunrise + vm.roll(block.number + 10); + vm.warp(block.timestamp + 2 hours); + pinto.sunrise(); + } + function increaseSupplyAndDistribute() internal { // get the total supply before minting uint256 totalSupplyBefore = IERC20(L2_PINTO).totalSupply(); @@ -352,9 +568,29 @@ contract BeanstalkShipmentsTest is TestHelper { assertGt(totalSupplyAfter, SUPPLY_THRESHOLD, "Total supply is not above the threshold"); assertGt(pinto.totalDeltaB(), 0, "System should be above the value target"); // skip 2 blocks and call sunrise + expectPaybackShipmentReceipts(); _skipAndCallSunrise(); } + function expectPaybackShipmentReceipts() internal { + vm.expectEmit(true, false, true, false); + emit LibReceiving.Receipt( + ShipmentRecipient.FIELD, + 0, + abi.encode(PAYBACK_FIELD_ID, SILO_PAYBACK, BARN_PAYBACK) + ); // PAYBACK FIELD + emit LibReceiving.Receipt( + ShipmentRecipient.SILO_PAYBACK, + 0, + abi.encode(SILO_PAYBACK, BARN_PAYBACK) + ); // SILO PAYBACK + emit LibReceiving.Receipt( + ShipmentRecipient.BARN_PAYBACK, + 0, + abi.encode(SILO_PAYBACK, BARN_PAYBACK) + ); // BARN PAYBACK + } + function increaseSupplyAtEdge() internal { // get the total supply before minting uint256 totalSupplyBefore = IERC20(L2_PINTO).totalSupply(); @@ -405,6 +641,52 @@ contract BeanstalkShipmentsTest is TestHelper { } } - /// @dev, does not check the shipment amounts, only the recipients and the data - function expectPaybackShipmentReceipts() internal {} + /** + * @notice Load contract accounts from JSON file + */ + function _loadContractAccountsFromJson() internal { + string memory jsonPath = "scripts/beanstalkShipments/data/ethContractAccounts.json"; + string memory json = vm.readFile(jsonPath); + contractAccounts = vm.parseJsonAddressArray(json, ""); + } + + /** + * @notice Get the first 10 active fertilizer IDs and corresponding account holders + * @return fertilizerIds Array of the first 10 fertilizer IDs + * @return claimAccounts Array of accounts that hold each fertilizer ID + */ + function _getFirst10FertilizerClaims() + internal + view + returns (uint256[] memory fertilizerIds, address[] memory claimAccounts) + { + // Based on the JSON data, the first 10 fertilizer IDs are the earliest ones + // From beanstalkAccountFertilizer.json, the first entries have the lowest IDs + fertilizerIds = new uint256[](10); + claimAccounts = new address[](10); + + // First 10 fertilizer IDs from the data (sorted chronologically) + fertilizerIds[0] = 1334303; // First fertilizer ID + fertilizerIds[1] = 1334880; + fertilizerIds[2] = 1334901; + fertilizerIds[3] = 1334925; + fertilizerIds[4] = 1335008; + fertilizerIds[5] = 1335068; + fertilizerIds[6] = 1335304; + fertilizerIds[7] = 1336323; + fertilizerIds[8] = 1337953; + fertilizerIds[9] = 1338731; + + // Corresponding account holders for each fertilizer ID (first holder from each ID) + claimAccounts[0] = 0xBd120e919eb05343DbA68863f2f8468bd7010163; // Holds fertilizer ID 1334303 + claimAccounts[1] = 0x97b60488997482C29748d6f4EdC8665AF4A131B5; // Holds fertilizer ID 1334880 + claimAccounts[2] = 0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73; // Holds fertilizer ID 1334901 + claimAccounts[3] = 0x5f5ad340348Cd7B1d8FABE62c7afE2E32d2dE359; // Holds fertilizer ID 1334925 + claimAccounts[4] = 0xa5D0084A766203b463b3164DFc49D91509C12daB; // Holds fertilizer ID 1335008 + claimAccounts[5] = 0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B; // Holds fertilizer ID 1335068 + claimAccounts[6] = 0x82Ff15f5de70250a96FC07a0E831D3e391e47c48; // Holds fertilizer ID 1335304 + claimAccounts[7] = 0x710B5BB4552f20524232ae3e2467a6dC74b21982; // Holds fertilizer ID 1336323 + claimAccounts[8] = 0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b; // Holds fertilizer ID 1337953 + claimAccounts[9] = 0xCF0dCc80F6e15604E258138cca455A040ecb4605; // Holds fertilizer ID 1338731 + } } diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index fa757cec..61ef3fa6 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -120,14 +120,28 @@ module.exports = { DEV_BUDGET_PROXY: "0xb0cdb715D8122bd976a30996866Ebe5e51bb18b0", RESERVES_5_PERCENT_MULTISIG: "0x4FAE5420F64c282FD908fdf05930B04E8e079770", - // Beanstalk Shipments + //////////////////////// BEANSTALK SHIPMENTS //////////////////////// + // EOA That will deploy the beanstlak shipment contracts BEANSTALK_SHIPMENTS_DEPLOYER: "0x47c365cc9ef51052651c2be22f274470ad6afc53", - BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR: "0xc4c66c8b199443a8dea5939ce175c3592e349791", + // Expected proxt address of the silo payback contract BEANSTALK_SILO_PAYBACK: "0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E", + BEANSTALK_SILO_PAYBACK_IMPLEMENTATION: "0x3E0635B980714303351DAeE305dB1A380C56ed38", + // Expected proxt address of the barn payback contract BEANSTALK_BARN_PAYBACK: "0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b", + BEANSTALK_BARN_PAYBACK_IMPLEMENTATION: "0xeB447cE47107f0c7406716d60Ede2107CE73e5f2", + // Expected proxt address of the shipment planner contract BEANSTALK_SHIPMENT_PLANNER: "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - // todo figure out address of this based on nonce of deployer - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR: "0x87b06da4be8a4a4d6b2509038532b2f8b2590dcb", + // Expected proxt address of the contract payback distributor contract + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR: "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + + // EOA that will populate the repayment field + BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR: "0xc4c66c8b199443a8dea5939ce175c3592e349791", + + // Contract Messenger + // L1 Contract Messenger deployer + L1_CONTRACT_MESSENGER_DEPLOYER: "0xbfb5d09ffcbe67fbed9970b893293f21778be0a6", + // L1 Contract Messenger + L1_CONTRACT_MESSENGER: "0x4200000000000000000000000000000000000007", // Wells PINTO_WETH_WELL_BASE, From b2fdc03771a0bb6336f2c386fd2b14f01647d360 Mon Sep 17 00:00:00 2001 From: default-juice Date: Sat, 23 Aug 2025 18:34:32 +0300 Subject: [PATCH 059/270] fix fertilizer double amount bug, remove unused imports, all tests passing --- .../init/shipments/InitBeanstalkShipments.sol | 6 +- .../beanstalkShipments/barn/BarnPayback.sol | 5 - .../ContractPaybackDistributor.sol | 7 +- .../L1ContractMessenger.sol | 9 +- hardhat.config.js | 11 +- .../deployPaybackContracts.js | 2 + scripts/beanstalkShipments/parsers/index.js | 65 ++++++++++- .../utils/extractAddresses.js | 106 ------------------ .../BeanstalkShipments.t.sol | 17 +-- .../BeanstalkShipmentsState.t.sol | 12 ++ test/hardhat/utils/constants.js | 6 +- 11 files changed, 106 insertions(+), 140 deletions(-) delete mode 100644 scripts/beanstalkShipments/utils/extractAddresses.js diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index 9a694359..11499869 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -43,16 +43,14 @@ contract InitBeanstalkShipments { /** * @notice Create new field, mimics the addField function in FieldFacet.sol - * @dev Harvesting is handled in LibReceiving.sol */ function _initReplaymentField() internal { AppStorage storage s = LibAppStorage.diamondStorage(); - if (s.sys.fieldCount == 2) return; - // require(s.sys.fieldCount == 1, "Repayment field already exists"); + require(s.sys.fieldCount == 1, "Repayment field already exists"); uint256 fieldId = s.sys.fieldCount; s.sys.fieldCount++; // init global state for new field, - // harvestable and harvested vars are 0 + // harvestable and harvested vars are 0 since we shifted all plots in the data to start from 0 s.sys.fields[REPAYMENT_FIELD_ID].pods = REPAYMENT_FIELD_PODS; emit FieldAdded(fieldId); } diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index 8e265581..8b8e014f 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -4,11 +4,7 @@ pragma solidity ^0.8.20; -import {LibRedundantMath128} from "contracts/libraries/Math/LibRedundantMath128.sol"; -import {LibRedundantMath256} from "contracts/libraries/Math/LibRedundantMath256.sol"; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; -import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {BeanstalkFertilizer} from "./BeanstalkFertilizer.sol"; /** @@ -74,7 +70,6 @@ contract BarnPayback is BeanstalkFertilizer { address account = f.accountData[j].account; // Mint to non-contract accounts and the distributor address if (!isContract(account) || account == CONTRACT_DISTRIBUTOR_ADDRESS) { - _balances[fid][account].amount = f.accountData[j].amount; _balances[fid][account].lastBpf = f.accountData[j].lastBpf; // This line used to call beanstalkMint but amounts and balances are set directly here diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index e7178b98..cc73b9cf 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -3,9 +3,6 @@ pragma solidity ^0.8.20; import {ReentrancyGuard} from "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; -import {Season} from "contracts/beanstalk/storage/System.sol"; -import {IBudget} from "contracts/interfaces/IBudget.sol"; -import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; @@ -42,7 +39,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, IERC1155Receiver { ICrossDomainMessenger(0x4200000000000000000000000000000000000007); // L1 sender: the contract address that sent the claim message from the L1 - address public constant L1_SENDER = 0x0000000000000000000000000000000000000000; + address public constant L1_SENDER = 0x51f472874a303D5262d7668f5a3d17e3317f8E51; struct AccountData { bool whitelisted; @@ -145,7 +142,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, IERC1155Receiver { /** * @notice Transfers all assets for a whitelisted contract account to a receiver - * @dev note: if the receiver is a contract it must implement the IERC1155Receiver interface + * note: if the receiver is a contract it must implement the IERC1155Receiver interface * @param account The address of the account to claim from * @param receiver The address to transfer the assets to */ diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index a8feb85c..4bfc64e3 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -3,7 +3,7 @@ pragma solidity ^0.8.20; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; -/// @dev the interface of the L2 ContractPaybackDistributor contract + interface IContractPaybackDistributor { function claimFromL1Message( address caller, @@ -24,6 +24,8 @@ contract L1ContractMessenger { // The address of the L2 ContractPaybackDistributor contract address public immutable L2_CONTRACT_PAYBACK_DISTRIBUTOR; + uint32 public constant MAX_GAS_LIMIT = 32_000_000; + // Contract addresses allowed to call the claimL2BeanstalkAssets function // To release their funds on the L2 from the L2 ContractPaybackDistributor contract mapping(address => bool) public isWhitelistedL1Caller; @@ -48,14 +50,15 @@ contract L1ContractMessenger { * @notice Sends a message from the L1 to the L2 ContractPaybackDistributor contract * to claim the assets for a given L2 receiver address * @param l2Receiver The address to transfer the assets to on the L2 - * Todo: check the max gas limit needed on the l2 and add 20% on top of that as buffer + * The gas limit is the max gas limit needed on the l2 with a 20% on top of that as buffer + * From fork testing, all contract accounts claimed with a maximum of 26mil gas. * (https://docs.optimism.io/app-developers/bridging/messaging#basics-of-communication-between-layers) */ function claimL2BeanstalkAssets(address l2Receiver) public onlyWhitelistedL1Caller { MESSENGER.sendMessage( L2_CONTRACT_PAYBACK_DISTRIBUTOR, // target abi.encodeCall(IContractPaybackDistributor.claimFromL1Message, (msg.sender, l2Receiver)), // message - 200000 // gas limit + MAX_GAS_LIMIT // gas limit ); } } diff --git a/hardhat.config.js b/hardhat.config.js index 4caf8b9a..ac21141b 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -46,7 +46,7 @@ const { const { deployAndSetupContracts } = require("./scripts/beanstalkShipments/deployPaybackContracts.js"); -const { parseAllExportData } = require("./scripts/beanstalkShipments/parsers"); +const { parseAllExportData, generateAddressFiles } = require("./scripts/beanstalkShipments/parsers"); //////////////////////// TASKS //////////////////////// @@ -2047,7 +2047,11 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi console.log("-".repeat(50)); try { parseAllExportData(parseContracts); - console.log("āœ… Export data parsing completed\n"); + console.log("āœ… Export data parsing completed"); + + // Generate address files from parsed data + generateAddressFiles(); + console.log("āœ… Address files generation completed\n"); } catch (error) { console.error("āŒ Failed to parse export data:", error); throw error; @@ -2211,6 +2215,9 @@ task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").se deployer = (await ethers.getSigners())[0]; } + // log deployer address + console.log("Deployer address:", deployer.address); + // read the contract accounts from the json file const contractAccounts = JSON.parse(fs.readFileSync("./scripts/beanstalkShipments/data/ethContractAccounts.json")); diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 9ffd7f0d..7101c70f 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -65,6 +65,8 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru console.log(" Run parsers with includeContracts=true to generate contract data"); } + // Even if a contract tries to claim before the initialization of the field is complete, + // The call will revert with a "Field: Plot not owned by user." error. const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy( initData, // AccountData[] memory _accountsData contractAccounts, // address[] memory _contractAccounts diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 5562285b..437ae1dd 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -2,6 +2,8 @@ const parseBarnData = require('./parseBarnData'); const parseFieldData = require('./parseFieldData'); const parseSiloData = require('./parseSiloData'); const parseContractData = require('./parseContractData'); +const fs = require('fs'); +const path = require('path'); /** * Main parser orchestrator that runs all parsers @@ -49,11 +51,72 @@ function parseAllExportData(parseContracts = false) { } } +/** + * Generates address files from the parsed JSON export data + * Reads the JSON files and extracts addresses to text files + */ +function generateAddressFiles() { + console.log('šŸ“ Generating address files from export data...'); + + try { + // Define excluded addresses + const excludedAddresses = [ + '0x0245934a930544c7046069968eb4339b03addfcf', + '0x4df59c31a3008509B3C1FeE7A808C9a28F701719' + ]; + + // Define file paths + const dataDir = path.join(__dirname, '../data/exports'); + const accountsDir = path.join(dataDir, 'accounts'); + + // Create accounts directory if it doesn't exist + if (!fs.existsSync(accountsDir)) { + fs.mkdirSync(accountsDir, { recursive: true }); + } + + // Read the parsed JSON files + const siloData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_silo.json'))); + const barnData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_barn.json'))); + const fieldData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_field.json'))); + + // Extract and filter addresses from each JSON file + const siloAddresses = Object.keys(siloData.arbEOAs || {}).filter(addr => + !excludedAddresses.includes(addr.toLowerCase()) && !excludedAddresses.includes(addr) + ); + const barnAddresses = Object.keys(barnData.arbEOAs || {}).filter(addr => + !excludedAddresses.includes(addr.toLowerCase()) && !excludedAddresses.includes(addr) + ); + const fieldAddresses = Object.keys(fieldData.arbEOAs || {}).filter(addr => + !excludedAddresses.includes(addr.toLowerCase()) && !excludedAddresses.includes(addr) + ); + + // Write addresses to text files + fs.writeFileSync(path.join(accountsDir, 'silo_addresses.txt'), siloAddresses.join('\n')); + fs.writeFileSync(path.join(accountsDir, 'barn_addresses.txt'), barnAddresses.join('\n')); + fs.writeFileSync(path.join(accountsDir, 'field_addresses.txt'), fieldAddresses.join('\n')); + + console.log(`āœ… Generated address files:`); + console.log(` - silo_addresses.txt (${siloAddresses.length} addresses)`); + console.log(` - barn_addresses.txt (${barnAddresses.length} addresses)`); + console.log(` - field_addresses.txt (${fieldAddresses.length} addresses)`); + + return { + siloAddresses: siloAddresses.length, + barnAddresses: barnAddresses.length, + fieldAddresses: fieldAddresses.length + }; + } catch (error) { + console.error('āŒ Failed to generate address files:', error); + throw error; + } +} + // Export individual parsers and main function module.exports = { parseBarnData, parseFieldData, parseSiloData, parseContractData, - parseAllExportData + parseAllExportData, + generateAddressFiles }; \ No newline at end of file diff --git a/scripts/beanstalkShipments/utils/extractAddresses.js b/scripts/beanstalkShipments/utils/extractAddresses.js deleted file mode 100644 index 2af5d359..00000000 --- a/scripts/beanstalkShipments/utils/extractAddresses.js +++ /dev/null @@ -1,106 +0,0 @@ -const fs = require('fs'); - -/** - * Extracts addresses from beanstalk field JSON and writes them to a file - * @param {string} inputPath - Path to the beanstalk field JSON file - * @param {string} outputPath - Path where to write the addresses file - */ -function extractAddressesFromFieldJson(inputPath, outputPath) { - try { - const fieldData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); - const addresses = Object.keys(fieldData.arbEOAs); - - // Write addresses to file, one per line - fs.writeFileSync(outputPath, addresses.join('\n') + '\n'); - - console.log(`āœ… Extracted ${addresses.length} addresses from field to ${outputPath}`); - return addresses; - } catch (error) { - console.error('Error extracting addresses from field:', error); - throw error; - } -} - -/** - * Extracts addresses from silo JSON - */ -function extractAddressesFromSiloJson(inputPath, outputPath) { - try { - const siloData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); - const addresses = Object.keys(siloData.arbEOAs); - - // Write addresses to file, one per line - fs.writeFileSync(outputPath, addresses.join('\n') + '\n'); - - console.log(`āœ… Extracted ${addresses.length} addresses from silo to ${outputPath}`); - return addresses; - } catch (error) { - console.error('Error extracting addresses from silo:', error); - throw error; - } -} - -/** - * Extracts addresses from fertilizer JSON - * Format: [[fertilizerIndex, [[account, balance, supply], ...]], ...] - */ -function extractAddressesFromFertilizerJson(inputPath, outputPath) { - try { - const fertilizerData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); - const addressesSet = new Set(); - - // Each entry is [fertilizerIndex, accountData[]] - fertilizerData.forEach(([fertilizerIndex, accountDataArray]) => { - // Each accountData is [account, balance, supply] - accountDataArray.forEach(([account, balance, supply]) => { - addressesSet.add(account); - }); - }); - - const addresses = Array.from(addressesSet); - - // Write addresses to file, one per line - fs.writeFileSync(outputPath, addresses.join('\n') + '\n'); - - console.log(`āœ… Extracted ${addresses.length} unique addresses from fertilizer to ${outputPath}`); - return addresses; - } catch (error) { - console.error('Error extracting addresses from fertilizer:', error); - throw error; - } -} - -// If called directly, extract from all sources -if (require.main === module) { - const baseDir = './scripts/beanstalkShipments/data'; - const exportsDir = `${baseDir}/exports`; - - // Create exports directory if it doesn't exist - if (!fs.existsSync(exportsDir)) { - fs.mkdirSync(exportsDir, { recursive: true }); - } - - // Extract field addresses - extractAddressesFromFieldJson( - `${exportsDir}/beanstalk_field.json`, - `${exportsDir}/field_addresses.txt` - ); - - // Extract silo addresses - extractAddressesFromSiloJson( - `${exportsDir}/beanstalk_silo.json`, - `${exportsDir}/silo_addresses.txt` - ); - - // Extract fertilizer addresses - extractAddressesFromFertilizerJson( - `${baseDir}/beanstalkAccountFertilizer.json`, - `${exportsDir}/barn_addresses.txt` - ); -} - -module.exports = { - extractAddressesFromFieldJson, - extractAddressesFromSiloJson, - extractAddressesFromFertilizerJson -}; \ No newline at end of file diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index c9c26091..afbb403a 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -396,22 +396,16 @@ contract BeanstalkShipmentsTest is TestHelper { uint256 shipmentAmount = 164866037; // 1% of total deltaB uint256 amountToFertilize = shipmentAmount + initialFertState.leftoverBeans; uint256 expectedBpfIncrease = amountToFertilize / initialFertState.activeFertilizer; - uint256 expectedFertilizedIndexIncrease = expectedBpfIncrease * - initialFertState.activeFertilizer; // Verify distribution state changes SystemFertilizerStruct memory postDistributionState = _getSystemFertilizer(); - assertEq( + assertApproxEqAbs( postDistributionState.bpf, initialFertState.bpf + expectedBpfIncrease, + 1, // max error of 1 "BPF should increase by shipment amount divided by active fertilizer" ); - assertEq( - postDistributionState.fertilizedIndex, - initialFertState.fertilizedIndex + expectedFertilizedIndexIncrease, - "FertilizedIndex should increase by BPF increase times active fertilizer" - ); // Load fertilizer data and get first 10 active fertilizer IDs ( @@ -481,6 +475,7 @@ contract BeanstalkShipmentsTest is TestHelper { * @notice Check that all contract accounts can claim their rewards directly * By measuring the gas usage for each claim, we also get the necessary gas limit for the L1 contract messenger * See L1ContractMessenger.{claimL2BeanstalkAssets} for details on the gas limit + * - Max gas used was 26mil */ function test_contractAccountsCanClaimShipmentDistribution() public { uint256 maxGasUsed; @@ -502,16 +497,16 @@ contract BeanstalkShipmentsTest is TestHelper { /** * @notice Check that 0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997 can claim their rewards - * check gas usage + * - Max gas used was 26mil */ function test_plotContractCanClaimShipmentDistribution() public { address plotContract = address(0xBc7c5f21C632c5C7CA1Bfde7CBFf96254847d997); - vm.startSnapshotGas("contractClaimWithPlots"); + vm.startSnapshotGas("contractClaimWithMaxPlots"); // prank and call claimDirect vm.prank(plotContract); contractDistributor.claimDirect(farmer1); uint256 gasUsed = vm.stopSnapshotGas(); - console.log("Gas used by contract claim with plots", gasUsed); + console.log("Gas used by contract claim with max plots", gasUsed); } //////////////////// Helper Functions //////////////////// diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index da128503..46683d4e 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -234,6 +234,13 @@ contract BeanstalkShipmentsStateTest is TestHelper { console.log("Testing silo payback state for", accountNumber, "accounts"); + assertEq( + siloPayback.totalDistributed(), + siloPayback.totalSupply(), + "Total distributed should be equal to total supply" + ); + assertEq(siloPayback.totalReceived(), 0, "Total shipments received should be 0"); + string memory account; // For every account @@ -344,6 +351,11 @@ contract BeanstalkShipmentsStateTest is TestHelper { (FertDepositData[]) ); + for (uint256 k = 0; k < expectedFertilizers.length; k++) { + console.log("fertId", expectedFertilizers[k].fertId); + console.log("expectedFertilizers amount", expectedFertilizers[k].amount); + } + // For each expected fertilizer, verify the balance matches for (uint256 j = 0; j < expectedFertilizers.length; j++) { FertDepositData memory expectedFert = expectedFertilizers[j]; diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index 61ef3fa6..0212879a 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -131,7 +131,7 @@ module.exports = { BEANSTALK_BARN_PAYBACK_IMPLEMENTATION: "0xeB447cE47107f0c7406716d60Ede2107CE73e5f2", // Expected proxt address of the shipment planner contract BEANSTALK_SHIPMENT_PLANNER: "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - // Expected proxt address of the contract payback distributor contract + // Expected address of the contract payback distributor contract BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR: "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", // EOA that will populate the repayment field @@ -140,8 +140,8 @@ module.exports = { // Contract Messenger // L1 Contract Messenger deployer L1_CONTRACT_MESSENGER_DEPLOYER: "0xbfb5d09ffcbe67fbed9970b893293f21778be0a6", - // L1 Contract Messenger - L1_CONTRACT_MESSENGER: "0x4200000000000000000000000000000000000007", + // L1 Contract Messenger, deployed by the deployer at nonce 0 + L1_CONTRACT_MESSENGER: "0x51f472874a303D5262d7668f5a3d17e3317f8E51", // Wells PINTO_WETH_WELL_BASE, From e5a4ce472155064c8dfc3eb9016b03be9a341e5f Mon Sep 17 00:00:00 2001 From: default-juice Date: Sun, 24 Aug 2025 14:22:50 +0300 Subject: [PATCH 060/270] modify account abstraction delegated accounts to claim via the distributor contract --- .../data/ethAccountDistributorInit.json | 148 ++++++++++++++ .../data/ethContractAccounts.json | 10 + .../data/exports/accounts/barn_addresses.txt | 191 ++++++++---------- .../data/exports/accounts/field_addresses.txt | 4 +- .../data/exports/accounts/silo_addresses.txt | 7 +- scripts/beanstalkShipments/parsers/index.js | 24 ++- .../parsers/parseContractData.js | 51 ++++- .../BeanstalkShipmentsState.t.sol | 31 ++- 8 files changed, 338 insertions(+), 128 deletions(-) diff --git a/scripts/beanstalkShipments/data/ethAccountDistributorInit.json b/scripts/beanstalkShipments/data/ethAccountDistributorInit.json index 840d1c6b..28f1a055 100644 --- a/scripts/beanstalkShipments/data/ethAccountDistributorInit.json +++ b/scripts/beanstalkShipments/data/ethAccountDistributorInit.json @@ -88,6 +88,19 @@ "plotIds": [], "plotEnds": [] }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3458512" + ], + "fertilizerAmounts": [ + "130" + ], + "plotIds": [], + "plotEnds": [] + }, { "whitelisted": true, "claimed": false, @@ -97,6 +110,66 @@ "plotIds": [], "plotEnds": [] }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3495000" + ], + "fertilizerAmounts": [ + "964" + ], + "plotIds": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3597838114", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "444" + ], + "plotIds": [ + "643938854351013", + "644373889298847", + "768072180047322" + ], + "plotEnds": [ + "228851828", + "3084780492", + "2519675802" + ] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "10646036906", + "fertilizerIds": [ + "3500000" + ], + "fertilizerAmounts": [ + "249" + ], + "plotIds": [], + "plotEnds": [] + }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1351212", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "53" + ], + "plotIds": [], + "plotEnds": [] + }, { "whitelisted": true, "claimed": false, @@ -115,6 +188,19 @@ "plotIds": [], "plotEnds": [] }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3268426" + ], + "fertilizerAmounts": [ + "500" + ], + "plotIds": [], + "plotEnds": [] + }, { "whitelisted": true, "claimed": false, @@ -245,6 +331,25 @@ "4000000000" ] }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3500000", + "6000000" + ], + "fertilizerAmounts": [ + "500", + "500" + ], + "plotIds": [ + "764117220398714" + ], + "plotEnds": [ + "5082059700" + ] + }, { "whitelisted": true, "claimed": false, @@ -276,6 +381,19 @@ "43540239232" ] }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "95" + ], + "plotIds": [], + "plotEnds": [] + }, { "whitelisted": true, "claimed": false, @@ -825,6 +943,19 @@ "143444348214" ] }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "6922721398", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "500" + ], + "plotIds": [], + "plotEnds": [] + }, { "whitelisted": true, "claimed": false, @@ -834,6 +965,23 @@ "plotIds": [], "plotEnds": [] }, + { + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "78016072001", + "fertilizerIds": [ + "3452316", + "3458512", + "3472026" + ], + "fertilizerAmounts": [ + "1031", + "2213", + "416" + ], + "plotIds": [], + "plotEnds": [] + }, { "whitelisted": true, "claimed": false, diff --git a/scripts/beanstalkShipments/data/ethContractAccounts.json b/scripts/beanstalkShipments/data/ethContractAccounts.json index 512c4857..6edd506d 100644 --- a/scripts/beanstalkShipments/data/ethContractAccounts.json +++ b/scripts/beanstalkShipments/data/ethContractAccounts.json @@ -4,20 +4,30 @@ "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", "0x251fae8f687545bdd462ba4fcdd7581051740463", "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "0x36def8a94e727a0ff7b01d2f50780f0a28fb74b6", "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "0x4088e870e785320413288c605fd1bd6bd9d5bdae", + "0x44db0002349036164dd46a04327201eb7698a53e", + "0x49072cd3bf4153da87d5eb30719bb32bda60884b", + "0x542a94e6f4d9d15aae550f7097d089f273e38f85", "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "0x63a7255c515041fd243440e3db0d10f62f9936ae", "0x735cab9b02fd153174763958ffb4e0a971dd7f29", "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", "0x83a758a6a24fe27312c1f8bda7f3277993b64783", "0x8525664820c549864982d4965a41f83a7d26af58", + "0x8a6eeb9b64eeba8d3b4404bf67a7c262c555e25b", "0x9008d19f58aabd9ed0d60971565aa8510560ab41", "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", "0xaa420e97534ab55637957e868b658193b112a551", + "0xb423a1e013812fcc9ab47523297e6be42fb6157e", "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", + "0xdff24806405f62637e0b44cc2903f1dfc7c111cd", "0xea3154098a58eebfa89d705f563e6c5ac924959e", "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", "0xf33332d233de8b6b1340039c9d5f3b2a04823d93" diff --git a/scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt b/scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt index 5ad1cf42..506cbb3c 100644 --- a/scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt +++ b/scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt @@ -1,153 +1,151 @@ 0xBd120e919eb05343DbA68863f2f8468bd7010163 -0x97b60488997482C29748d6f4EdC8665AF4A131B5 -0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73 0x5f5ad340348Cd7B1d8FABE62c7afE2E32d2dE359 +0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73 0x3fc4310bf2eBae51BaC956dd60A81803A3f89188 -0x87263a1AC2C342a516989124D0dBA63DF6D0E790 -0x5090FeC124C090ca25179A996878A4Cd90147A1d -0x3c5Aac016EF2F178e8699D6208796A2D67557fe2 0xa5D0084A766203b463b3164DFc49D91509C12daB 0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B +0x87263a1AC2C342a516989124D0dBA63DF6D0E790 0x82Ff15f5de70250a96FC07a0E831D3e391e47c48 -0x710B5BB4552f20524232ae3e2467a6dC74b21982 -0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b +0x5090FeC124C090ca25179A996878A4Cd90147A1d +0x97b60488997482C29748d6f4EdC8665AF4A131B5 +0x3c5Aac016EF2F178e8699D6208796A2D67557fe2 0xCF0dCc80F6e15604E258138cca455A040ecb4605 +0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA +0xa5b200B10fd9897142dC2dd14708EFdF090A1b4d +0x68e41BDD608fC5eE054615CF2D9d079f9e99c483 +0x6343B307C288432BB9AD9003B4230B08B56b3b82 +0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254 +0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B +0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c +0x87546FA086F625961A900Dbfa953662449644492 +0x48e39dfd0450601Cb29F74cb43FC913A57FCA813 +0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56 +0x710B5BB4552f20524232ae3e2467a6dC74b21982 0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B 0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f +0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49 +0x971b4a65048319cc9843DfdBDC8Aa97AD47Ef19d +0xF7d48932f456e98d2FF824E38830E8F59De13f4A +0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458 +0x597D01CdfDC7ad72c19B562A18b2e31E41B67991 0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85 -0x46387563927595f5ef11952f74DcC2Ce2E871E73 -0x5c0ed0a799c7025D3C9F10c561249A996502a62F -0xC5581F1aE61E34391824779D505Ca127a4566737 -0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40 0xe4b420F15d6d878dCD0Df7120Ac0fc1509ee9Cab -0x6D4ed8a1599DEe2655D51B245f786293E03d58f7 0xC9F817EA7aABE604F5677bf9C1339e32Ef1B90F0 -0x971b4a65048319cc9843DfdBDC8Aa97AD47Ef19d -0x48e39dfd0450601Cb29F74cb43FC913A57FCA813 -0xF7d48932f456e98d2FF824E38830E8F59De13f4A +0x46387563927595f5ef11952f74DcC2Ce2E871E73 +0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1 +0x5c0ed0a799c7025D3C9F10c561249A996502a62F +0x5a57711B103c6039eaddC160B94c932d499c6736 0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1 +0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40 0x4A337d1dF22d0D3077CaEFd083A1b70AA168d087 -0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c -0x597D01CdfDC7ad72c19B562A18b2e31E41B67991 -0x5a57711B103c6039eaddC160B94c932d499c6736 -0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B -0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56 -0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA -0xa5b200B10fd9897142dC2dd14708EFdF090A1b4d -0x87546FA086F625961A900Dbfa953662449644492 -0x68e41BDD608fC5eE054615CF2D9d079f9e99c483 -0x6343B307C288432BB9AD9003B4230B08B56b3b82 -0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254 -0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49 0x44E836EbFEF431e57442037b819B23fd29bc3B69 -0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1 -0xe27bdF8c099934f425a1C604DFc9A82C3b3DD458 -0x3800645f556ee583E20D6491c3a60E9c32744376 +0xC5581F1aE61E34391824779D505Ca127a4566737 +0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b +0x6D4ed8a1599DEe2655D51B245f786293E03d58f7 0x507165FF0417126930D7F79163961DE8Ff19c8b8 -0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c 0x995D1e4e2807Ef2A8d7614B607A89be096313916 +0x3800645f556ee583E20D6491c3a60E9c32744376 +0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c 0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507 -0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45 0x7b2366996A64effE1aF089fA64e9cf4361FddC6e +0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45 0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe 0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F 0x394c357DB3177E33Bde63F259F0EB2c04A46827c -0x63a7255C515041fD243440e3db0D10f62f9936ae -0x02aA96e8d266Cee1411bB2ADB4D09066f2e94489 0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb 0x679B4172E1698579d562D1d8b4774968305b80b2 +0x02aA96e8d266Cee1411bB2ADB4D09066f2e94489 0xaf28E2A58Ef2D6d88fb4cDC28F380908BaDE162b -0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732 -0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6 0xD6626eA482D804DDd83C6824284766f73A45D734 +0xBbD2f625F2ecf6B55dc9de8EC7B538e30C799Ac6 0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655 0xDf29Ee8F6D1b407808Eb0270f5b128DC28303684 -0x5656cB4721C21E1F5DCbe03Db9026ac0203d6e4f -0xa3d63491abf28803116569058A263B1A407e66Fb +0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732 0x52d3aBa582A24eeB9c1210D83EC312487815f405 -0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3 +0xa3d63491abf28803116569058A263B1A407e66Fb +0x5656cB4721C21E1F5DCbe03Db9026ac0203d6e4f 0x1dd6Ac8E77d4C4A959bed5d2Ae624d274C46E8Bd 0xb78003FCB54444E289969154A27Ca3106B3f41f6 0xDc4F9f1986379979053E023E6aFA49a65A5E5584 0xC38f042ae8C77f110c33eabfAA5Ed28861760Ac6 0x58e4e9D30Da309624c785069A99709b16276B196 +0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3 0x1B91e045e59c18AeFb02A29b38bCCD46323632EF -0x43b79f1E529330F1568e8741F1C04107db25EB28 0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1 -0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb -0x4a52078E4706884fc899b2Df902c4D2d852BF527 0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e +0x4135DEb17102AeeDa09F5748186a1aa5060b3bbb 0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5 -0x4330C25C858040aDbda9e05744Fa3ADF9A35664F +0x4a52078E4706884fc899b2Df902c4D2d852BF527 0x1C4E440e9f9069427d11bB1bD73e57458eeA9577 +0x43b79f1E529330F1568e8741F1C04107db25EB28 0xb7AdcE9Fa8bc98137247f9b606D89De76eA8aACc +0x4330C25C858040aDbda9e05744Fa3ADF9A35664F 0x487175f921A713d8E67a95BCDD75139C35a7d838 0x3C43674dfa916d791614827a50353fe65227B7f3 0xC89A6f24b352d35e783ae7C330462A3f44242E89 0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430 0x08Bf22fB93892583a815C598502b9B0a88124DAD +0x4c180462A051ab67D8237EdE2c987590DF2FbbE6 0x51AAD11e5A5Bd05B3409358853D0D6A66aa60c40 +0xd2D533b30Af2c22c5Af822035046d951B2D0bd57 0xb47959506850b9b34A8f345179eD1C932aaA8bFa 0x4438767155537c3eD7696aeea2C758f9cF1DA82d -0x4c180462A051ab67D8237EdE2c987590DF2FbbE6 -0xd2D533b30Af2c22c5Af822035046d951B2D0bd57 0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2 0x96D48b045C9F825f2999C533Ad56B6B0fCa91F92 0x840fe9Ce619cfAA1BE9e99C73F2A0eCbAb99f688 -0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333 0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7 0xD6ff57479699e3F93fFd68295F3257f7C07E983e +0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333 0xE84c01208c4868d5615FCCf0b98f8c90f460d2b6 0xC1A9BC22CC31AB64A78421bEFa10c359A1417ce3 0x3822bBBd588fE86964c7751d6c6a6Bd010927307 0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E 0xcb89e2300E22Ec273F39e69E79E468723ad65158 0x030ae585DB6d5169B3594eC37c008662f2494a1D -0x264c1cBEC44F201d0eBe67b269D16B3edc909C61 -0xDFe18DE4852AB020FC82502dcE862B1F4206C587 -0x15884aBb6c5a8908294f25eDf22B723bAB36934F 0xd6F2bEA66FCba0B9F426E185f3c98F6585c746D3 0x14F78BdCcCD12c4f963bd0457212B3517f974b2b 0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0 +0x264c1cBEC44F201d0eBe67b269D16B3edc909C61 +0xDFe18DE4852AB020FC82502dcE862B1F4206C587 0x17757B0252c84341E243Ff49EEf8729eFa32f5De 0x85806019a442224D6345a1c2eD597d8a5DCE1F2B +0x15884aBb6c5a8908294f25eDf22B723bAB36934F 0xF73FE15cFB88ea3C7f301F16adE3c02564ACa407 -0x69b03bFC650B8174f5887B2320338b6c29150bCE 0x80b9Aa22ccDA52f40be998EEb19db4D08fafEC3e 0x55179ffEFc2d49daB14BA15D25fb023408450409 +0x69b03bFC650B8174f5887B2320338b6c29150bCE 0xC56725DE9274E17847db0E45c1DA36E46A7e197F 0x297751960DAD09c6d38b73538C1cce45457d796d 0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D 0x88F667664E61221160ddc0414868eF2f40e83324 +0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7 0x66C19e3612efa7b18C18ee4D75A8aaE1d7902225 0xb871eE8C6b280463068627502c36b33CC79cc8d3 0xf6F46f437691b6C42cd92c91b1b7c251D6793222 0x09C88F29A308646204D11383c6139d9C93eFb6b8 0x4DDE0C41511d49E83ACE51c94E668828214D9C51 -0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408 -0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7 0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27 0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8 0xc6302894cd030601D5E1F65c8F504C83D5361279 0xe6c62Ce374b7918bc9355D13385a1FB8a47Cf3e0 0x4Ab209010345978254F1757a88cAc93CD19987a8 0xfA60a22626D1DcE794514afb9B90e1cD3626cd8d +0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408 +0xFc748762F301229bCeA219B584Fdf8423D8060A1 0xF869B8e5a54e7D93D98fc7C5c9D48fe972C330CA 0xe249d1bE97f4A716CDE0D7C5B6b682F491621C41 0x5ea7ea516720a8F59C9d245E2E98bCA0B6DF7441 -0xFc748762F301229bCeA219B584Fdf8423D8060A1 -0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e 0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1 0xbaeC6eD4A9c3b333E1cB20C3e729D7100c85D8F1 0x820A2943762236e27A3a2C6ea1024117518895a5 0xC83414aBB6655320232fAA65eA72663dfD7198eC +0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e 0xe4BF6E1967D7bc0Bd5E2C767c3A2CCAdf23446df 0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D 0x8D7ee51Ec16a0F95C7f241582De8cffB9A4c2293 0xBB2E54038196A51f6a42A9BB5aD6BD0EB2CF6C01 0x2c820271ADE646fDb3D6D0002712Ee6bdc7DC173 0xEC5a0Dff55be882FAFe863895ef144b78aaEF097 -0xdff24806405f62637E0b44cc2903F1DfC7c111Cd 0x17372637a937f7427871573a85e6FaC2400D147f 0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A 0xc9bB1DCDBF9Ed97298301569AB648e26d51Ce09b @@ -161,84 +159,82 @@ 0xf96A5d6c20872a7DdCacdDE4e825249040250d66 0x0a53D9586Dd052a06FCA7649A02b973Cc164c1B4 0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709 -0x876133657F5356e376B7ae27d251444727cE9488 0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3 +0x876133657F5356e376B7ae27d251444727cE9488 0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F 0x48A2bC5DC9e3c5c0421E0483bF0648AaEE87daca 0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677 0x5f37479c76F16d94Afcc394b18Cf0727631d8F91 0xDf406B91b4F27c942c4B42eB04fAC9323EEE8Aa1 0x79bD65C17537daA78152E6018EC6dB63C6bE57F5 -0xcdea6A23B9383a88E246975aD3f38778ee0E81fc 0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C 0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9 +0xcdea6A23B9383a88E246975aD3f38778ee0E81fc 0xfF961eD9c48FBEbDEf48542432D21efA546ddb89 0xDe975401d53178cdF36E1301Da633A8f82C33ceF 0x0E38A4b9B58AbD2f4c9B2D5486ba047a47606781 0x15D6D330f374A796210EFc1445F1F3eA07A0b1EF 0x4319fBf2c6B823e20EdAA4002F5eac872CcAd3BD 0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2 -0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6 0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C +0x46Fb59229922d98DCc95bB501EFC3b10FA83D938 0xe6cF807E4B2A640DfE03ff06FA6Ab32C334c7dF4 0xA7194f754b5befC3277D6Bfa258028450dA654BA 0xe495d8c21Bb0C4ab9a627627A4016DF40C6Daa74 0x7e1CA6D381e2784Db210442bFC3e2B1451f773FD -0xeE55F7F410487965aCDC4543DDcE241E299032A4 -0x735CAB9B02Fd153174763958FFb4E0a971DD7f29 -0x46Fb59229922d98DCc95bB501EFC3b10FA83D938 0x8d4122ffE442De3574871b9648868c1C3396A0AF -0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176 +0xeE55F7F410487965aCDC4543DDcE241E299032A4 0xE203096D7583E30888902b2608652c720D6C38da -0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df 0xdEb5b508847C9AB1295E83806855AbC3c9859B38 +0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df +0xf13D8d9E5Ff8b123ffa5F5e981DA1685275cE176 0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2 0xBAd4b03A764fb27Cdf65D23E2E59b76172526867 0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF 0x515755b2c5A209976CF0de869c30f45aC7495a60 0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5 -0x41922873B405216bb5a7751c5289f9DF853D9a9E -0x90030396F05AA263776c15e418a908Da4B018157 0x2908A0379cBaFe2E8e523F735717447579Fc3c37 +0x41922873B405216bb5a7751c5289f9DF853D9a9E 0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17 0x70Ce4bBa5076fa59E4fBDEe382663dF78402F2E0 +0x90030396F05AA263776c15e418a908Da4B018157 0x525Fbe4bC0607933F4BE05cEB22F8a4b6B01800A 0x3c5a438a2c19D024a3E53c27d45FAfAC9A45B4f7 0x3Df83869B8367602E762FC42Baae3E81aA1f2a20 +0x0017dFe08BCc0dc9a323ca5d4831E371534E9320 0xf3e9848D5accE2f83b8078ee21f458e59ec4289A 0x48A5A6a01bA89cDdF97D2D552923d5a11401Ed19 -0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4 -0xb8EEa697890dceFe14Be1c1C457Db0f436DCcF7a -0x0017dFe08BCc0dc9a323ca5d4831E371534E9320 0x69e02D001146A86d4E2995F9eCf906265aA77d85 0x5F074e4Afb3547407614BC55a103d76A4E05BA04 +0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4 +0xb8EEa697890dceFe14Be1c1C457Db0f436DCcF7a 0x0519425dD15902466e7F7FA332F7b664c5c03503 -0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04 -0x2E34723A04B9bb5938373DCFdD61410F43189246 -0x4626751B194018B6848797EA3eA40a9252eE86EE 0xe90AFc1904E9A33499D8A708C01658A6d1899C6B 0x42005e1156ea20EA50E7845E8CaC975C49774df0 0x41e2965406330A130e61B39d867c91fa86aA3bB8 0x40E652fE0EC7329DC80282a6dB8f03253046eFde +0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04 0xCfff6932D4ada56F6f1AEdAa61F6947cec95D90a +0x2E34723A04B9bb5938373DCFdD61410F43189246 +0x4626751B194018B6848797EA3eA40a9252eE86EE 0x6872A46F83af5Cc03A704B2fE250F0b371Caf7d0 0x25F69051858D6a8f9a6E54dAfb073e8eF3a94C1E 0xCCF00d42bdEA5Fff0b46DD18a5e23FC8ac85a4AA -0x4fCD42eb2557E49C0201Fb3283CfF62c1BaF0Fb4 -0x5338035c008EA8c4b850052bc8Dad6A33dc2206c -0xa3F90e801CBa1f94Eb6501146e4E0e791444E4d3 -0x5ab404ab63831bFcf824F53B4ac3737b9d155d90 0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F +0x4fCD42eb2557E49C0201Fb3283CfF62c1BaF0Fb4 0xc1F80163cC753f460A190643d8FCbb7755a48409 +0x5338035c008EA8c4b850052bc8Dad6A33dc2206c 0x5b9A2267a9e9B81FbF01ba10026fCB7B2F7304d3 0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA +0xa3F90e801CBa1f94Eb6501146e4E0e791444E4d3 +0x5ab404ab63831bFcf824F53B4ac3737b9d155d90 0x3C58492Ad9cAd0D9f8570a80b6A1f02C0C1dA2c5 0xAb282590375f4ce7d3FfeD3A0D0e36cc5f9FF124 0x6Afbf03Fe3Bea05640da67Ae9F0B136c783e315d 0x60fC79EC08C5386f030912f056dCA91dAEC3A488 0x4432e64624F4c64633466655de3D5132ad407343 -0x8623b240830fD2c33B1b5C8449f98fd606de88A8 0x9dC4D973F76c0051bba8900F8ffB4652110f1591 +0x8623b240830fD2c33B1b5C8449f98fd606de88A8 0x734A6263fE23c1d68Ec9042e03082575C34c968C 0x6Cb50febbC4E796635963c1Ea9916099C69B4Bd9 0x8eB354f1CBb0AB7ef0D038883b4c1065e008453F @@ -254,30 +250,29 @@ 0x91443aF8B0B551Ba45208f03D32B22029969576c 0x69EE985456C52c85BA2035d8fD8bFe0A51f0E0D2 0x94d29Be06f423738f96A5E67A2627B4876098Cdc -0xfB464Fcd5342D2997A43C6B7bcA7615d0fbDEeD9 -0xF501c1084d8473399fa01c4F102FA72d0465192C -0x19831b174e9deAbF9E4B355AadFD157F09E2af1F -0xde40AaD5E8154C6F8C31D1e2043E4B1cB1745761 0xAf812E8BABab3173EdCE179fE6Fc6c2B1c482E39 0xd43324eB6f31F86e361B48185797b339242f95f4 +0xfB464Fcd5342D2997A43C6B7bcA7615d0fbDEeD9 +0xF501c1084d8473399fa01c4F102FA72d0465192C 0xE45D85B382EFd7833Da1B8CAB53B203D22340b1a +0x19831b174e9deAbF9E4B355AadFD157F09E2af1F 0x4Af7c12c7e210f4Cb8f2D8e340AaAdaE05A9f655 0xD6e91233068c81b0eB6aAc77620641F72d27a039 0x30CB1E845f6C03B988eC677A75700E70A019e2E4 0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803 0xa5C9a58776682701Cfd014F68ED73D1895d9b372 -0x11D86e9F9C2a1cF597b974E50C660316c92215AA +0xde40AaD5E8154C6F8C31D1e2043E4B1cB1745761 0xC7C1b169a8d3c5F2D6b25642c4d10DA94fFCd3c9 0x330BAb385492b88CE5BBa93b581ed808b00e6189 0x66B0115e839B954A6f6d8371DEe89dE90111C232 0xD6278E5EeA2981B1D4Ad89f3d6C44670caD6E427 +0x11D86e9F9C2a1cF597b974E50C660316c92215AA 0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719 0x144E8fe2e2052b7b6556790a06f001B56Ba033b3 0x8e75ba859f299b66693388b925Bdb1af6EEc60d6 +0x404a75f728D7e89197C61c284d782EC246425aa6 0xf9563a8DaB33f6BEab2aBC34631c4eAF9EcC8b99 0x7D6A2f6D7C2F7Dd51C47b5EA9faA3ae208185eC7 -0x81b9cFcb1Dc180aCAF7c187db5FE2c961F74d67E -0x404a75f728D7e89197C61c284d782EC246425aa6 0xD15B5fA5370f0c3Cc068F107B7691e6dab678799 0xe63E2CDd24695464C015b2f5ef723Ce17e96886B 0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043 @@ -285,23 +280,22 @@ 0xE3b2fC5a80B80C8F668484171D7395e3fDE76670 0x2d96dAA63b1719DA208a72264e15b32ff818e79F 0x4bCbB32e470627AB0D767AC56bBCB2c33c181BCE +0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39 0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E 0x31DEae0DDc9f0D0207D13fc56927f067F493d324 0xC3253E06fA7A2e4a3cd26cb561af4af83466902d +0xA5F158e596D0e4051e70631D5d72a8Ee9d5A3B8A +0x25CFB95e1D64e271c1EdACc12B4C9032E2824905 0xaF7ED02dE4B8A8967b996DF3b8bf28917B92EDcd 0x7e7408fdD6315e965138509d9310b384C4FD1163 -0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39 0x4b10DA491b54ffe167Ec5AAf7046804fADA027d2 -0xA5F158e596D0e4051e70631D5d72a8Ee9d5A3B8A -0x25CFB95e1D64e271c1EdACc12B4C9032E2824905 -0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB -0x9241089cf848cB30c6020EE25Cd6a2b28c626744 0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758 +0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1 +0xcd805F0A5F1A26e3B344b31539AAF84f527Bf2DB 0xDdFE74f671F6546F49A6D20909999cFE5F09Ad78 0x19A4FE7D0C76490ccA77b45580846CDB38B9A406 -0x4088E870e785320413288C605FD1BD6bD9D5BDAe -0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1 0xaD63E4d4Be2229B080d20311c1402A2e45Cf7E75 +0x9241089cf848cB30c6020EE25Cd6a2b28c626744 0xE2bDaE527f99a68724B9D5C271438437FC2A4695 0x7Ac54882c1A9df477d583aDd40D1a47480F8a919 0xd44dfDFDE075184e0f216C860e65913579F103Aa @@ -310,11 +304,9 @@ 0xAa4f23a13f25E88bA710243dD59305f382376252 0x8110331DBad6e7907F60B8BBb0E1A3af3dDb4BBd 0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0 -0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B 0x31b6020CeF40b72D1e53562229c1F9200d00CC12 0xa1a234791392c42bD0c95e37e6908AE704D595BD 0x74E096E78789F31061Fc47F6950279A55C03288c -0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B 0xd7bF571d4F19F63e3091Ca37E13ED395ca8e9969 0x97A5370695c5A64004359f43889F398fb4D07fb1 0xE9B05bC1FA8684EE3e01460aac2e64C678b9dA5d @@ -323,12 +315,11 @@ 0x74F9fadb40Bee2574BCDd7C1eD73270373Af0D21 0xA09DEa781E503b6717BC28fA1254de768c6e1C4e 0x184CbD89E91039E6B1EF94753B3fD41c55e40888 -0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8 -0xDD11460317C683e4057E115eB14e1C9F7Ca41E12 -0x7bF4B9D4ec3b9aAb1F00DAd63Ea58389b9F68909 0x56A201b872B50bBdEe0021ed4D1bb36359D291ED +0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8 0xB84e1E86eB2420887b10301cdCDFB729C4B9038b 0xC95186f04B68cfec0D9F585D08C3b5697C858fe0 +0xDD11460317C683e4057E115eB14e1C9F7Ca41E12 0x02009370Ff755704E9acbD96042C1ab832D6067e 0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF 0xB81D739df194fA589e244C7FF5a15E5C04978D0D @@ -610,10 +601,8 @@ 0x92470BDC0CB1FC2eD3De81c1b5e8668371C12A83 0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F 0xA1ae22c9744baceC7f321bE8F29B3eE6eF075205 -0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2 0x4d498b930eD0dcBdeE385D7CBDBB292DAc0d1c91 0x066E9372fF4D618ba8f9b1E366463A18DD711e5E -0x44db0002349036164dD46A04327201Eb7698A53e 0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7 0xE381CEb106717c176013AdFCE95F9957B5ea3dA9 0xAa24a2AB55b4F1B6af343261d71c98376084BA73 @@ -723,7 +712,6 @@ 0x177f44eCDEa293f7124C3071D9C54E59fcfD16f9 0x793846163F80233F50d24eF06C44A8b2ba98f1Aa 0x01529E0d0C38AdF57Db199AE1cCcd8F8694d8B74 -0x542A94e6f4D9D15AaE550F7097d089f273E38f85 0x3021D79Bfb91cf97B525Df72108b745Bf1071fE7 0x8bCE57b7B84218397FFB6ceFaE99F4792Ee8161d 0xC00B46fC0B2673F561811580b0fBf41d56EdCf83 @@ -731,14 +719,9 @@ 0x4C3A97DB74D60410Bf17Ee64Edd98D09997f3929 0x83397cD5C698488176F8aB8Ce19580b75255b977 0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE -0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e 0x1584B668643617D18321a0BEc6EF3786F4b8Eb7B 0x1397c24478cBe0a54572ADec2A333f87Ad75Ac02 0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D 0xdC369e387b1906582FdC9e1CF75aD85774FaC894 0xd0D628acf9E985c94a4542CaE88E0Af7B2378c81 -0x4e7ceb231714E80f90E895D13723a2c322F78127 -0xd39A31e5f23D90371D61A976cACb728842e04ca9 -0xeCdc4DD795D79F668Ff09961b2A2f47FE8e4f170 -0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11 -0xea3154098a58eEbfA89d705F563E6C5Ac924959e +0x4e7ceb231714E80f90E895D13723a2c322F78127 \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt b/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt index 99d45d36..bd7415b8 100644 --- a/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt +++ b/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt @@ -194,7 +194,6 @@ 0x4438767155537c3eD7696aeea2C758f9cF1DA82d 0x4432e64624F4c64633466655de3D5132ad407343 0x448a549593020696455D9b5e25e0b0fB7a71201E -0x44db0002349036164dD46A04327201Eb7698A53e 0x44E836EbFEF431e57442037b819B23fd29bc3B69 0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975 0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4 @@ -1454,7 +1453,6 @@ 0x18D467c40568dE5D1Ca2177f576d589c2504dE73 0x4888c0030b743c17C89A8AF875155cf75dCfd1E1 0x5D02957cF469342084e42F9f4132403Ea4c5fE01 -0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B 0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7 0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3 0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49 @@ -1514,4 +1512,4 @@ 0xbF133C1763c0751494CE440300fCd6b8c4e80D83 0xA5124bD6d445e23642F8D41c1ebf3Cd20FCe3056 0x2BEe2D53261B16892733B448351a8Fd8c0f743e7 -0x1B91e045e59c18AeFb02A29b38bCCD46323632EF +0x1B91e045e59c18AeFb02A29b38bCCD46323632EF \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt b/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt index 030fc27f..9bbe835c 100644 --- a/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt +++ b/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt @@ -536,7 +536,6 @@ 0x45577FfEc3C72075AF3E655Ea474E5c1585d9d14 0x44EE78D43529823D96Bf1435Fb00b9064522bD36 0x44E836EbFEF431e57442037b819B23fd29bc3B69 -0x44db0002349036164dD46A04327201Eb7698A53e 0x448a549593020696455D9b5e25e0b0fB7a71201E 0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975 0x44871f074E0bd158BbA0c0f5aE701C497edDBdDE @@ -560,7 +559,6 @@ 0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0 0x4936c26B396858597094719A44De2deaE3b8a3c9 0x48Dd5a438AaE27B27eCe5B8A3f23ba3E1Fb052F2 -0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B 0x4A24E54A090b0Fa060f7faAF561510775d314e84 0x483CDC51a29Df38adeC82e1bb3f0AE197142a351 0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9 @@ -649,7 +647,6 @@ 0x533af56B4E0F3B278841748E48F61566E6C763D6 0x531516CA59544Bf8AB2451A072b6fA94AdF5a88c 0x54bec524eC3F945D8945BC344B6aEC72B532B8fb -0x542A94e6f4D9D15AaE550F7097d089f273E38f85 0x53dC93b33d63094770A623406277f3B83a265588 0x55038f72943144983BAab03a0107C9a237bD0da9 0x550586FC064315b54af25024415786843131c8c1 @@ -1522,7 +1519,6 @@ 0xBFc87CaD2f664d4EecAbCCA45cF1407201353978 0xbfF54b44f72f9B722CD05e2e6E49202BA98FE244 0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e -0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2 0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb 0xc06320d9028F851c6cE46e43F04aFF0A426F446c 0xc08F967ED52dCFfD5687b56485eE6497502ef91d @@ -1806,7 +1802,6 @@ 0xdedDEC0472852b71E7E0bD9A86D9a09d798094D0 0xe031B10E874FaE6989359cdE6f55fcBCF2bA2ffd 0xE02A25580b96BE0B9986181Fd0b4CF2b9FD75Ec2 -0xdff24806405f62637E0b44cc2903F1DfC7c111Cd 0xe0842049837F79732d688d0d080aCee30b93578B 0xe105EaC05168E75657fb7048B481A17A53AF91E8 0xE0f61822B45bb03cdC581283287941517810D7bA @@ -2427,4 +2422,4 @@ 0x5E4fa37a2308FE6152c0B0EbD29fb538A06332b8 0xD717E96bC764E9644e2f09bed46C71E53240748E 0xF6aF57C78B8635f7a3413fBB477DE47cAd01DcCf -0xf55F7118fa68ae5a52e0B2d519BfFcbDb7387AFA +0xf55F7118fa68ae5a52e0B2d519BfFcbDb7387AFA \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 437ae1dd..9a394f08 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -65,6 +65,21 @@ function generateAddressFiles() { '0x4df59c31a3008509B3C1FeE7A808C9a28F701719' ]; + // Define fertilizer contract accounts (delegated contracts that need special handling) + const fertilizerContractAccounts = [ + '0x63a7255C515041fD243440e3db0D10f62f9936ae', + '0xdff24806405f62637E0b44cc2903F1DfC7c111Cd', + '0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6', + '0x4088E870e785320413288C605FD1BD6bD9D5BDAe', + '0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B', + '0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B', + '0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2', + '0x44db0002349036164dD46A04327201Eb7698A53e', + '0x542A94e6f4D9D15AaE550F7097d089f273E38f85', + '0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e', + '0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11' + ]; + // Define file paths const dataDir = path.join(__dirname, '../data/exports'); const accountsDir = path.join(dataDir, 'accounts'); @@ -79,15 +94,18 @@ function generateAddressFiles() { const barnData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_barn.json'))); const fieldData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_field.json'))); + // Combine all addresses to exclude + const allExcludedAddresses = [...excludedAddresses, ...fertilizerContractAccounts]; + // Extract and filter addresses from each JSON file const siloAddresses = Object.keys(siloData.arbEOAs || {}).filter(addr => - !excludedAddresses.includes(addr.toLowerCase()) && !excludedAddresses.includes(addr) + !allExcludedAddresses.includes(addr.toLowerCase()) && !allExcludedAddresses.includes(addr) ); const barnAddresses = Object.keys(barnData.arbEOAs || {}).filter(addr => - !excludedAddresses.includes(addr.toLowerCase()) && !excludedAddresses.includes(addr) + !allExcludedAddresses.includes(addr.toLowerCase()) && !allExcludedAddresses.includes(addr) ); const fieldAddresses = Object.keys(fieldData.arbEOAs || {}).filter(addr => - !excludedAddresses.includes(addr.toLowerCase()) && !excludedAddresses.includes(addr) + !allExcludedAddresses.includes(addr.toLowerCase()) && !allExcludedAddresses.includes(addr) ); // Write addresses to text files diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js index f6e5be6e..3d6b4544 100644 --- a/scripts/beanstalkShipments/parsers/parseContractData.js +++ b/scripts/beanstalkShipments/parsers/parseContractData.js @@ -46,11 +46,27 @@ function parseContractData(includeContracts = false) { console.log(`šŸ“‹ Found ethContracts - Silo: ${Object.keys(siloEthContracts).length}, Barn: ${Object.keys(barnEthContracts).length}, Field: ${Object.keys(fieldEthContracts).length}`); + // Define fertilizer contract accounts (delegated contracts on Base that need special handling) + const fertilizerContractAccounts = [ + '0x63a7255C515041fD243440e3db0D10f62f9936ae', + '0xdff24806405f62637E0b44cc2903F1DfC7c111Cd', + '0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6', + '0x4088E870e785320413288C605FD1BD6bD9D5BDAe', + '0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B', + '0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B', + '0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2', + '0x44db0002349036164dD46A04327201Eb7698A53e', + '0x542A94e6f4D9D15AaE550F7097d089f273E38f85', + '0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e', + '0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11' + ]; + // Get all unique contract addresses and normalize to lowercase const allContractAddressesRaw = [ ...Object.keys(siloEthContracts), ...Object.keys(barnEthContracts), - ...Object.keys(fieldEthContracts) + ...Object.keys(fieldEthContracts), + ...fertilizerContractAccounts // Include the delegated contract accounts ]; // Normalize addresses to lowercase and deduplicate @@ -83,10 +99,25 @@ function parseContractData(includeContracts = false) { return entries.filter(([addr]) => addr.toLowerCase() === normalizedAddress); }; - // Process silo data - merge all matching addresses + // Helper function to check if this is a fertilizer contract account that needs special handling + const isFertilizerContract = fertilizerContractAccounts + .map(addr => addr.toLowerCase()) + .includes(normalizedAddress); + + // For fertilizer contracts, also check arbEOAs data + const findArbEOAData = (arbEOAsObj) => { + if (!isFertilizerContract) return []; + const entries = Object.entries(arbEOAsObj); + return entries.filter(([addr]) => addr.toLowerCase() === normalizedAddress); + }; + + // Process silo data - merge all matching addresses (check both ethContracts and arbEOAs for fertilizer contracts) const siloEntries = findContractData(siloEthContracts); + const siloArbEntries = findArbEOAData(siloData.arbEOAs || {}); + const allSiloEntries = [...siloEntries, ...siloArbEntries]; + let totalSiloBdv = BigInt(0); - for (const [originalAddr, siloData] of siloEntries) { + for (const [originalAddr, siloData] of allSiloEntries) { if (siloData && siloData.bdvAtRecapitalization && siloData.bdvAtRecapitalization.total) { totalSiloBdv += BigInt(siloData.bdvAtRecapitalization.total); console.log(` šŸ’° Merged silo BDV from ${originalAddr}: ${siloData.bdvAtRecapitalization.total}`); @@ -96,10 +127,13 @@ function parseContractData(includeContracts = false) { accountData.siloPaybackTokensOwed = totalSiloBdv.toString(); } - // Process barn data - merge all matching addresses + // Process barn data - merge all matching addresses (check both ethContracts and arbEOAs for fertilizer contracts) const barnEntries = findContractData(barnEthContracts); + const barnArbEntries = findArbEOAData(barnData.arbEOAs || {}); + const allBarnEntries = [...barnEntries, ...barnArbEntries]; + const fertilizerMap = new Map(); // fertId -> total amount - for (const [originalAddr, barnData] of barnEntries) { + for (const [originalAddr, barnData] of allBarnEntries) { if (barnData && barnData.beanFert) { for (const [fertId, amount] of Object.entries(barnData.beanFert)) { const currentAmount = fertilizerMap.get(fertId) || BigInt(0); @@ -115,10 +149,13 @@ function parseContractData(includeContracts = false) { accountData.fertilizerAmounts.push(totalAmount.toString()); } - // Process field data - merge all matching addresses + // Process field data - merge all matching addresses (check both ethContracts and arbEOAs for fertilizer contracts) const fieldEntries = findContractData(fieldEthContracts); + const fieldArbEntries = findArbEOAData(fieldData.arbEOAs || {}); + const allFieldEntries = [...fieldEntries, ...fieldArbEntries]; + const plotMap = new Map(); // plotIndex -> total pods - for (const [originalAddr, fieldData] of fieldEntries) { + for (const [originalAddr, fieldData] of allFieldEntries) { if (fieldData) { for (const [plotIndex, pods] of Object.entries(fieldData)) { const currentPods = plotMap.get(plotIndex) || BigInt(0); diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index 46683d4e..cb79fde2 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -49,6 +49,8 @@ contract BeanstalkShipmentsStateTest is TestHelper { // Owners address constant PCM = address(0x2cf82605402912C6a79078a9BBfcCf061CbfD507); + address[] public fertilizedContractAccounts; + ////////// State Structs ////////// struct SystemFertilizerStruct { @@ -338,11 +340,19 @@ contract BeanstalkShipmentsStateTest is TestHelper { console.log("Testing barn payback state for", accountNumber, "accounts"); string memory account; + uint256 totalContractAccounts = 0; // For every account for (uint256 i = 0; i < accountNumber; i++) { account = vm.readLine(BARN_ADDRESSES_PATH); address accountAddr = vm.parseAddress(account); + + // skip contract accounts + if (isContract(accountAddr)) { + totalContractAccounts++; + fertilizedContractAccounts.push(accountAddr); + continue; + } // Get fertilizer data for this account using the fertilizer finder bytes memory accountFertilizerData = searchAccountFertilizer(accountAddr); @@ -351,11 +361,6 @@ contract BeanstalkShipmentsStateTest is TestHelper { (FertDepositData[]) ); - for (uint256 k = 0; k < expectedFertilizers.length; k++) { - console.log("fertId", expectedFertilizers[k].fertId); - console.log("expectedFertilizers amount", expectedFertilizers[k].amount); - } - // For each expected fertilizer, verify the balance matches for (uint256 j = 0; j < expectedFertilizers.length; j++) { FertDepositData memory expectedFert = expectedFertilizers[j]; @@ -376,6 +381,11 @@ contract BeanstalkShipmentsStateTest is TestHelper { ); } } + console.log("Total contract accounts", totalContractAccounts); + // log the contract accounts + for (uint256 i = 0; i < fertilizedContractAccounts.length; i++) { + console.log("fertilizedContractAccounts index", i, fertilizedContractAccounts[i]); + } } //////////////////// Helper Functions //////////////////// @@ -440,4 +450,15 @@ contract BeanstalkShipmentsStateTest is TestHelper { leftoverBeans: leftoverBeans }); } + + /** + * @notice Checks if an account is a contract. + */ + function isContract(address account) internal view returns (bool) { + uint size; + assembly { + size := extcodesize(account) + } + return size > 0; + } } \ No newline at end of file From cf6d8cfa2713e03898e210df9751439ba0e5437a Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 25 Aug 2025 12:17:57 +0300 Subject: [PATCH 061/270] generalized internal transfer hook system --- .../beanstalk/facets/farm/TokenHookFacet.sol | 72 +++++ .../init/shipments/InitBeanstalkShipments.sol | 23 +- contracts/beanstalk/storage/System.sol | 18 ++ .../beanstalkShipments/SiloPayback.sol | 62 +++-- contracts/interfaces/IMockFBeanstalk.sol | 23 ++ contracts/interfaces/ISiloPayback.sol | 1 + contracts/libraries/Token/LibTokenHook.sol | 175 ++++++++++++ contracts/libraries/Token/LibTransfer.sol | 30 +++ contracts/mocks/MockTokenWithHook.sol | 68 +++++ hardhat.config.js | 3 +- .../BeanstalkShipmentsState.t.sol | 10 + .../beanstalkShipments/SiloPayback.t.sol | 73 ++--- test/foundry/token/TokenHook.t.sol | 249 ++++++++++++++++++ test/foundry/utils/BeanstalkDeployer.sol | 3 +- 14 files changed, 741 insertions(+), 69 deletions(-) create mode 100644 contracts/beanstalk/facets/farm/TokenHookFacet.sol create mode 100644 contracts/libraries/Token/LibTokenHook.sol create mode 100644 contracts/mocks/MockTokenWithHook.sol create mode 100644 test/foundry/token/TokenHook.t.sol diff --git a/contracts/beanstalk/facets/farm/TokenHookFacet.sol b/contracts/beanstalk/facets/farm/TokenHookFacet.sol new file mode 100644 index 00000000..623663e4 --- /dev/null +++ b/contracts/beanstalk/facets/farm/TokenHookFacet.sol @@ -0,0 +1,72 @@ +/* + * SPDX-License-Identifier: MIT + */ + +pragma solidity ^0.8.20; + +import {ReentrancyGuard} from "contracts/beanstalk/ReentrancyGuard.sol"; +import {Invariable} from "contracts/beanstalk/Invariable.sol"; +import {LibDiamond} from "contracts/libraries/LibDiamond.sol"; +import {LibTokenHook} from "contracts/libraries/Token/LibTokenHook.sol"; +import {TokenHook} from "contracts/beanstalk/storage/System.sol"; + +/** + * @title TokenHookFacet + * @notice Manages the pre-transfer hook whitelist for internal token transfers. + */ +contract TokenHookFacet is Invariable, ReentrancyGuard { + + /** + * @notice Registers a pre-transfer hook for a specific token. + * @param token The token address to register the hook for. + * @param hook The TokenHook struct. (See System.{TokenHook}) + */ + function whitelistTokenHook( + address token, + TokenHook memory hook + ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + LibDiamond.enforceIsOwnerOrContract(); + LibTokenHook.whitelistHook(token, hook); + } + + /** + * @notice Removes a pre-transfer hook for a specific token. + * @param token The token address to remove the hook for. + */ + function dewhitelistTokenHook( + address token + ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + LibDiamond.enforceIsOwnerOrContract(); + LibTokenHook.removeWhitelistedHook(token); + } + + /** + * @notice Updates a pre-transfer hook for a specific token. + * @param token The token address to update the hook for. + * @param hook The new TokenHook struct. + */ + function updateTokenHook( + address token, + TokenHook memory hook + ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + LibDiamond.enforceIsOwnerOrContract(); + LibTokenHook.updateWhitelistedHook(token, hook); + } + + /** + * @notice Checks if token has a pre-transfer hook associated with it. + * @param token The token address to check. + */ + function hasTokenHook(address token) external view returns (bool) { + return LibTokenHook.hasTokenHook(token); + } + + /** + * @notice Gets the pre-transfer hook struct for a specific token. + * @param token The token address. + * @return TokenHook struct for the token. (See System.{TokenHook}) + */ + function getTokenHook(address token) external view returns (TokenHook memory) { + return LibTokenHook.getTokenHook(token); + } +} \ No newline at end of file diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index 11499869..23b4270a 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -7,6 +7,9 @@ pragma solidity ^0.8.20; import "contracts/libraries/LibAppStorage.sol"; import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; +import {TokenHook} from "contracts/beanstalk/storage/System.sol"; +import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; +import {LibTokenHook} from "contracts/libraries/Token/LibTokenHook.sol"; /** * @title InitBeanstalkShipments modifies the existing routes to split the payback shipments into 2 routes. @@ -15,17 +18,21 @@ import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; contract InitBeanstalkShipments { uint256 constant REPAYMENT_FIELD_ID = 1; - /// @dev total length of the podline. The largest index in beanstalk_field.json incremented by the amount. + + /// @dev total length of the podline. + // The largest index in beanstalk_field.json incremented by the corresponding amount. uint256 constant REPAYMENT_FIELD_PODS = 919768387056514; event ShipmentRoutesSet(ShipmentRoute[] newRoutes); event FieldAdded(uint256 fieldId); - function init(ShipmentRoute[] calldata newRoutes) external { + function init(ShipmentRoute[] calldata newRoutes, address siloPayback) external { // set the shipment routes, replaces the entire set of routes _setShipmentRoutes(newRoutes); // create the repayment field _initReplaymentField(); + // add the pre-transfer hook for silo payback + _addSiloPaybackHook(siloPayback); } /** @@ -54,4 +61,16 @@ contract InitBeanstalkShipments { s.sys.fields[REPAYMENT_FIELD_ID].pods = REPAYMENT_FIELD_PODS; emit FieldAdded(fieldId); } + + /** + * @notice Adds the internal pre-transfer hook to sync state on the silo payback contract between internal transfers. + */ + function _addSiloPaybackHook(address siloPayback) internal { + AppStorage storage s = LibAppStorage.diamondStorage(); + LibTokenHook.whitelistHook(siloPayback, TokenHook({ + target: address(siloPayback), + selector: ISiloPayback.protocolUpdate.selector, + encodeType: 0x00 + })); + } } diff --git a/contracts/beanstalk/storage/System.sol b/contracts/beanstalk/storage/System.sol index b1a8c344..676f4e45 100644 --- a/contracts/beanstalk/storage/System.sol +++ b/contracts/beanstalk/storage/System.sol @@ -40,6 +40,7 @@ import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; * @param evaluationParameters See {EvaluationParameters}. * @param sop See {SeasonOfPlenty}. * @param gauges See {Gauge}. + * @param tokenHook A mapping from token address to the pre-transfer hook to be called before a token is transferred from a user's internal balance. */ struct System { address bean; @@ -76,6 +77,7 @@ struct System { SeasonOfPlenty sop; ExtEvaluationParameters extEvaluationParameters; GaugeData gaugeData; + mapping(address => TokenHook) tokenHook; // A buffer is not included here, bc current layout of AppStorage makes it unnecessary. } @@ -468,6 +470,22 @@ struct SeasonOfPlenty { mapping(uint32 => mapping(address => uint256)) sops; } +/** + * @notice TokenHook specifies the pre-transfer hook to be called before a token is transferred from a user's internal balance. + * A hook should generally be an external protected function that updates the state of an ERC20 token, callable only by the protocol. + * @param target The target contract address in which `selector` is called at (e.g the token address). + * @param selector The function selector that is used to call on the target contract. + * @param encodeType The encode type that should be used to encode the function call. + * - Encode type 0x00 indicates that the hook receives (address from, address to, uint256 amount) as arguments. + * This is in line with the default OpenZeppelin ERC20 _update pre-transfer function. + * @dev Data here is ommited since call parameters are dynamic based on every transfer. + */ +struct TokenHook { + address target; + bytes4 selector; + bytes1 encodeType; +} + /** * @notice Germinate determines what germination struct to use. * @dev "odd" and "even" refers to the value of the season counter. diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index ce5dcea2..96bf86f6 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -12,13 +12,12 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev precision used for reward calculations uint256 public constant PRECISION = 1e18; - /// @dev struct to store the unripe bdv token data for batch minting struct UnripeBdvTokenData { address receipient; uint256 bdv; } - /// @dev External contracts for interactions with the Pinto protocol + // Contracts IBeanstalk public pintoProtocol; IERC20 public pinto; @@ -27,6 +26,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev Tracks total received pinto from shipments. uint256 public totalReceived; + // Rewards /// @dev Global accumulator tracking total rewards per token since contract inception (scaled by 1e18) uint256 public rewardPerTokenStored; /// @dev Per-user checkpoint of rewardPerTokenStored at their last reward update to prevent double claiming @@ -34,14 +34,12 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { /// @dev Per-user accumulated rewards ready to claim (updated on transfers/claims) mapping(address => uint256) public rewards; - /// @dev event emitted when user claims rewards + // Events event Claimed(address indexed user, uint256 amount, LibTransfer.To toMode); - /// @dev event emitted when rewards are received from shipments event SiloPaybackRewardsReceived(uint256 amount, uint256 newIndex); - /// @dev event emitted when unripe bdv tokens are minted event UnripeBdvTokenMinted(address indexed user, uint256 amount); - /// @dev modifier to ensure only the Pinto protocol can call the function + // Modifiers modifier onlyPintoProtocol() { require(msg.sender == address(pintoProtocol), "SiloPayback: only pinto protocol"); _; @@ -193,49 +191,49 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { rewards[account]; } - /// @dev get the remaining amount of silo payback tokens to be distributed, called by the planner + /** + * @notice Returns the remaining amount of pinto required to pay off the unripe bdv tokens + * Called by the shipment planner to calculate the amount of pinto to ship as underlying rewards. + * When rewards per token reach 1 then all unripe bdv tokens will be paid off. + */ function siloRemaining() public view returns (uint256) { return totalDistributed - totalReceived; } - /////////////////// Transfer Hook and ERC20 overrides /////////////////// + /////////////////// Transfer Hook /////////////////// /** - * @notice pre transfer hook to update rewards for both sender and receiver + * @notice Pre-transfer hook to update rewards for both sender and receiver * The result is that token balances change, but both parties have been * "checkpointed" to prevent any reward manipulation through transfers. * Claims happen only when the user decides to claim. * This way all claims can also happen in the internal balance. * @param from The address of the sender * @param to The address of the receiver + * @param amount The amount of tokens being transferred. (Unused here but required by openzeppelin) */ - function _beforeTokenTransfer(address from, address to) internal { - if (from != address(0)) { - // capture any existing rewards for the sender, update their checkpoint to current global state - rewards[from] = earned(from); - userRewardPerTokenPaid[from] = rewardPerTokenStored; - } - - if (to != address(0)) { - // capture any existing rewards for the receiver, update their checkpoint to current global state - rewards[to] = earned(to); - userRewardPerTokenPaid[to] = rewardPerTokenStored; - } - } - - /// @dev override the standard transfer function to update rewards - function transfer(address to, uint256 amount) public override returns (bool) { - _beforeTokenTransfer(msg.sender, to); - return super.transfer(to, amount); + function _update(address from, address to, uint256 amount) internal override { + _updateReward(from); + _updateReward(to); + super._update(from, to, amount); } - /// @dev override the standard transferFrom function to update rewards - function transferFrom(address from, address to, uint256 amount) public override returns (bool) { - _beforeTokenTransfer(from, to); - return super.transferFrom(from, to, amount); + /** + * @notice External variant of the pre-transfer hook. + * Updates reward state when transferring between internal balances from inside the protocol. + * We don't need to call super._update here since we don't update the token balance mappings in internal transfers. + * @param from The address of the sender + * @param to The address of the receiver + * @param amount The amount of tokens being transferred + */ + function protocolUpdate(address from, address to, uint256 amount) external onlyPintoProtocol { + _updateReward(from); + _updateReward(to); } - /// @dev override the decimals to 6 decimal places, BDV has 6 decimals + /** + * @dev override the decimals to 6 decimal places, BDV has 6 decimals + */ function decimals() public view override returns (uint8) { return 6; } diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 8f724b9c..0eb99ea8 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -285,6 +285,12 @@ interface IMockFBeanstalk { bool oracleFailure; } + struct TokenHook { + address target; + bytes4 selector; + bytes1 encodeType; + } + error AddressEmptyCode(address target); error AddressInsufficientBalance(address account); error ECDSAInvalidSignature(); @@ -548,6 +554,10 @@ interface IMockFBeanstalk { Implementation lwImplementation ); + event TokenHookRegistered(address indexed token, address target, bytes4 selector); + event TokenHookRemoved(address indexed token); + event TokenHookUpdated(address indexed token, address target, bytes4 selector); + function abovePeg() external view returns (bool); function activeField() external view returns (uint256); @@ -1915,4 +1925,17 @@ interface IMockFBeanstalk { ) external view returns (uint256 amountIn); function setPenaltyRatio(uint256 penaltyRatio) external; + + function whitelistTokenHook( + address token, + TokenHook memory hook + ) external payable; + + function dewhitelistTokenHook(address token) external payable; + + function updateTokenHook(address token, TokenHook memory hook) external payable; + + function hasTokenHook(address token) external view returns (bool); + + function getTokenHook(address token) external view returns (TokenHook memory); } diff --git a/contracts/interfaces/ISiloPayback.sol b/contracts/interfaces/ISiloPayback.sol index 01f0d460..2dd58eca 100644 --- a/contracts/interfaces/ISiloPayback.sol +++ b/contracts/interfaces/ISiloPayback.sol @@ -58,4 +58,5 @@ interface ISiloPayback { function transferFrom(address from, address to, uint256 amount) external returns (bool); function transferOwnership(address newOwner) external; function userRewardPerTokenPaid(address) external view returns (uint256); + function protocolUpdate(address from, address to, uint256 amount) external; } diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol new file mode 100644 index 00000000..94ef590f --- /dev/null +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -0,0 +1,175 @@ +/* + SPDX-License-Identifier: MIT +*/ + +pragma solidity ^0.8.20; + +import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; +import {TokenHook} from "contracts/beanstalk/storage/System.sol"; +import {LibAppStorage} from "../LibAppStorage.sol"; +import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; + +/** + * @title LibTokenHook + * @notice Handles token hook management and execution for internal transfers. + */ +library LibTokenHook { + using SafeERC20 for IERC20; + + /** + * @notice Emitted when a pre-transfer token hook is registered. + */ + event TokenHookRegistered(address indexed token, address indexed target, bytes4 selector); + + /** + * @notice Emitted when a whitelisted pre-transfer token hook is removed. + */ + event TokenHookRemoved(address indexed token); + + /** + * @notice Emitted when a whitelisted pre-transfer token hook is called. + */ + event TokenHookCalled(address indexed token, address indexed target, bytes4 selector); + + /** + * @notice Registers and verifies a token hook for a specific token. + * @param token The token address to register the hook for. + * @param hook The TokenHook struct containing target, selector, and data. + */ + function whitelistHook(address token, TokenHook memory hook) internal { + require(token != address(0), "LibTokenHook: Invalid token address"); + require(hook.target != address(0), "LibTokenHook: Invalid target address"); + require(hook.selector != bytes4(0), "LibTokenHook: Invalid selector"); + + // Verify the hook implementation is callable + verifyPreTransferHook(token, hook); + + AppStorage storage s = LibAppStorage.diamondStorage(); + s.sys.tokenHook[token] = hook; + + emit TokenHookRegistered(token, hook.target, hook.selector); + } + + /** + * @notice Removes a pre-transfer hook for a specific token. + * @param token The token address to remove the hook for. + */ + function removeWhitelistedHook(address token) internal { + AppStorage storage s = LibAppStorage.diamondStorage(); + require(s.sys.tokenHook[token].target != address(0), "LibTokenHook: Hook not whitelisted"); + + delete s.sys.tokenHook[token]; + + emit TokenHookRemoved(token); + } + + /** + * @notice Updates a pre-transfer hook for a specific token. + * @param token The token address to update the hook for. + * @param hook The new TokenHook struct. + */ + function updateWhitelistedHook(address token, TokenHook memory hook) internal { + AppStorage storage s = LibAppStorage.diamondStorage(); + require(s.sys.tokenHook[token].target != address(0), "LibTokenHook: Hook not whitelisted"); + + // remove old hook + removeWhitelistedHook(token); + // add new hook + whitelistHook(token, hook); + } + + /** + * @notice Checks if a token has a registered pre-transfer hook. + * @param token The token address to check. + * @return True if the token has a hook, false otherwise. + */ + function hasTokenHook(address token) internal view returns (bool) { + AppStorage storage s = LibAppStorage.diamondStorage(); + return s.sys.tokenHook[token].target != address(0); + } + + /** + * @notice Gets the pre-transfer hook for a specific token. + * @param token The token address. + * @return The TokenHook struct for the token. + */ + function getTokenHook(address token) internal view returns (TokenHook memory) { + AppStorage storage s = LibAppStorage.diamondStorage(); + return s.sys.tokenHook[token]; + } + + /// Call /// + + /** + * @notice Calls the pre-transfer hook for a token before an internal transfer. + * - We revert in case of failure since internal transfers are non-critical protocol operations. + * - We assume that the hook returns no data + * @param token The token being transferred. + * @param from The sender address. + * @param to The recipient address. + * @param amount The transfer amount. + */ + function callPreTransferHook(address token, address from, address to, uint256 amount) internal { + TokenHook memory hook = getTokenHook(token); + + // call the hook. If it reverts, revert the entire transfer. + (bool success, ) = hook.target.call( + encodeHookCall(hook.encodeType, hook.selector, from, to, amount) + ); + require(success, "LibTokenHook: Hook execution failed"); + + emit TokenHookCalled(token, hook.target, hook.selector); + } + + /** + * @notice Verifies that a pre-transfer hook function is valid and callable. + * @dev Unlike view functions like the bdv selector, we can't staticcall pre-transfer hooks + * since they might potentially modify state or emit events so we perform a regular call with + * default parameters and assume the hook does not revert for 0 values. + * @dev We assume that pre-transfer hooks do not return any data here. + * @param token The token address. + * @param hook The TokenHook to verify. + */ + function verifyPreTransferHook(address token, TokenHook memory hook) internal { + // verify the target is a contract, regular calls don't revert for non-contracts + require(isContract(hook.target), "LibTokenHook: Target is not a contract"); + // verify the target is callable + (bool success, ) = hook.target.call( + encodeHookCall(hook.encodeType, hook.selector, address(0), address(0), uint256(0)) + ); + require(success, "LibTokenHook: Invalid TokenHook implementation"); + } + + /** + * @notice Encodes a hook call for a token before an internal transfer. + * @param encodeType The encode type byte, indicating the parameters to be passed to the hook. + * @param selector The selector to call on the target contract. + * @param from The sender address from the transfer. + * @param to The recipient address from the transfer. + * @param amount The transfer amount. + */ + function encodeHookCall( + bytes1 encodeType, + bytes4 selector, + address from, + address to, + uint256 amount + ) internal pure returns (bytes memory) { + if (encodeType == 0x00) { + return abi.encodeWithSelector(selector, from, to, amount); + } else { + revert("LibTokenHook: Invalid encodeType"); + } + } + + /** + * @notice Checks if an account is a contract. + */ + function isContract(address account) internal view returns (bool) { + uint size; + assembly { + size := extcodesize(account) + } + return size > 0; + } +} diff --git a/contracts/libraries/Token/LibTransfer.sol b/contracts/libraries/Token/LibTransfer.sol index 6b3f2801..cc84df0d 100644 --- a/contracts/libraries/Token/LibTransfer.sol +++ b/contracts/libraries/Token/LibTransfer.sol @@ -5,6 +5,8 @@ pragma solidity ^0.8.20; import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; import "../../interfaces/IBean.sol"; import "./LibBalance.sol"; +import {LibTokenHook} from "./LibTokenHook.sol"; +import {LibRedundantMath256} from "../Math/LibRedundantMath256.sol"; /** * @title LibTransfer @@ -42,6 +44,8 @@ library LibTransfer { From fromMode, To toMode ) internal returns (uint256 transferredAmount) { + checkForInternalTransferHook(token, sender, recipient, amount, fromMode, toMode); + if (fromMode == From.EXTERNAL && toMode == To.EXTERNAL) { uint256 beforeBalance = token.balanceOf(recipient); token.safeTransferFrom(sender, recipient, amount); @@ -106,4 +110,30 @@ library LibTransfer { LibTransfer.sendToken(token, amount, recipient, mode); } } + + /** + * @notice Checks if a token has a pre-transfer hook for internal transfers and calls it if it does. + * @param token The token being transferred. + * @param sender The sender of the transfer. + * @param recipient The recipient of the transfer. + * @param amount The amount of tokens being transferred. + * @param fromMode The mode of the transfer. + * @param toMode The mode of the transfer. + */ + function checkForInternalTransferHook( + IERC20 token, + address sender, + address recipient, + uint256 amount, + From fromMode, + To toMode + ) internal { + if ( + LibTokenHook.hasTokenHook(address(token)) && + fromMode == From.INTERNAL && + toMode == To.INTERNAL + ) { + LibTokenHook.callPreTransferHook(address(token), sender, recipient, amount); + } + } } diff --git a/contracts/mocks/MockTokenWithHook.sol b/contracts/mocks/MockTokenWithHook.sol new file mode 100644 index 00000000..a28b73fe --- /dev/null +++ b/contracts/mocks/MockTokenWithHook.sol @@ -0,0 +1,68 @@ +/* + SPDX-License-Identifier: MIT +*/ + +pragma solidity ^0.8.20; + +import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol"; + +/** + * @title Mock Token with a pre-transfer hook to test token hooks in internal transfers. + **/ +contract MockTokenWithHook is ERC20, ERC20Burnable { + event InternalTransferTokenHookCalled(address indexed from, address indexed to, uint256 amount); + event RegularTransferTokenHookCalled(address indexed from, address indexed to, uint256 amount); + + address public protocol; + uint8 private _decimals = 18; + string private _symbol = "MOCK"; + string private _name = "MockToken"; + + constructor(string memory name, string memory __symbol, address _protocol) ERC20(name, __symbol) { + protocol = _protocol; + } + + function _update(address from, address to, uint256 amount) internal override { + emit RegularTransferTokenHookCalled(from, to, amount); + super._update(from, to, amount); + } + + function internalTransferUpdate(address from, address to, uint256 amount) external { + require(msg.sender == protocol, "MockTokenWithHook: only protocol can call this function"); + emit InternalTransferTokenHookCalled(from, to, amount); + } + + function mint(address account, uint256 amount) external returns (bool) { + _mint(account, amount); + return true; + } + + function burnFrom(address account, uint256 amount) public override(ERC20Burnable) { + ERC20Burnable.burnFrom(account, amount); + } + + function burn(uint256 amount) public override { + ERC20Burnable.burn(amount); + } + + function setDecimals(uint256 dec) public { + _decimals = uint8(dec); + } + + function decimals() public view virtual override returns (uint8) { + return _decimals; + } + + function setSymbol(string memory sym) public { + _symbol = sym; + } + + function symbol() public view virtual override returns (string memory) { + return _symbol; + } + + function setName(string memory name_) public { + _name = name_; + } +} diff --git a/hardhat.config.js b/hardhat.config.js index ac21141b..84412530 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -25,6 +25,7 @@ const { BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR, L1_CONTRACT_MESSENGER_DEPLOYER, BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, + BEANSTALK_SILO_PAYBACK, L2_PCM, BASE_BLOCK_TIME, PINTO_WETH_WELL_BASE, @@ -2163,7 +2164,7 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi ] }, initFacetName: "InitBeanstalkShipments", - initArgs: [routes], + initArgs: [routes, BEANSTALK_SILO_PAYBACK], verbose: true, account: owner }); diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index cb79fde2..e09df679 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -388,6 +388,16 @@ contract BeanstalkShipmentsStateTest is TestHelper { } } + /** + * @notice Tests that the silo payback hook is whitelisted and has the correct parameters. + */ + function test_siloPaybackHook() public { + assertEq(pinto.hasTokenHook(SILO_PAYBACK), true, "Silo payback hook not whitelisted"); + assertEq(pinto.getTokenHook(SILO_PAYBACK).target, SILO_PAYBACK, "Silo payback hook target mismatch"); + assertEq(pinto.getTokenHook(SILO_PAYBACK).selector, ISiloPayback.protocolUpdate.selector, "Silo payback hook selector mismatch"); + assertEq(pinto.getTokenHook(SILO_PAYBACK).encodeType, 0x00, "Silo payback hook encode type mismatch"); + } + //////////////////// Helper Functions //////////////////// function searchPropertyData( diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index ba1f00e6..fd695d9f 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -11,6 +11,10 @@ import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transpa import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; contract SiloPaybackTest is TestHelper { + + // Events + event TokenHookCalled(address indexed token, address indexed target, bytes4 selector); + SiloPayback public siloPayback; MockToken public pintoToken; @@ -52,6 +56,17 @@ contract SiloPaybackTest is TestHelper { // set the silo payback proxy siloPayback = SiloPayback(address(siloPaybackProxy)); + // whitelist the pre-transfer token hook + vm.prank(deployer); + bs.whitelistTokenHook( + address(siloPayback), + IMockFBeanstalk.TokenHook({ + target: address(siloPayback), + selector: siloPayback.protocolUpdate.selector, + encodeType: 0x00 + }) + ); + vm.label(farmer1, "farmer1"); vm.label(farmer2, "farmer2"); vm.label(farmer3, "farmer3"); @@ -385,23 +400,26 @@ contract SiloPaybackTest is TestHelper { assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned reset after claim"); } - // test case for sure - // user puts the tokens in their internal balance, we claim from the ui via a farm call. - // rewardPertoken paid for user is updated. - - // rewards keep accumulating as pinto distribution happens - - // user transfers the tokens to another address via internal balance - // no state variables get updated BUT - // earned now updates to reflect the new internal balance + /////////////////// Internal Transfer /////////////////// + /** + * @dev test that state is synced are no double claiming is allowed due to execution of the pre transfer hook + * between internal to internal transfers. + * - farmer1 has 100 external, 100 internal + * - farmer2 has 200 external + * - farmer3 has 0 external, 0 internal + * -------------------------------------- + * farmer 1 claims, sends tokens to interal balance of farmer3 + * farmer 2 does not claim + * farmer 3 should have 0 earned rewards, even though his combined balance is 100e6 and he never claimed + */ function test_siloPaybackDoubleClaimInternalTransfer() public { // Setup: farmer1 has 40% _mintTokensToUser(farmer1, 100e6, LibTransfer.To.EXTERNAL); // farmer1 has 50% of total, half in internal _mintTokensToUser(farmer1, 100e6, LibTransfer.To.INTERNAL); _mintTokensToUser(farmer2, 200e6, LibTransfer.To.EXTERNAL); // farmer2 has 50% of total all in external - // First distribution: 100 BEAN rewards + /////////////// First distribution: 100 BEAN rewards /////////////// _sendRewardsToContract(100e6); // get the state of rewards pre-internal transfer @@ -431,11 +449,11 @@ contract SiloPaybackTest is TestHelper { assertEq(siloPayback.balanceOf(farmer1), 100e6, "farmer1 balance not updated"); assertEq(siloPayback.earned(farmer1), 0, "farmer1 earned not updated"); - // farmer2: 200 external, 0 internal, 50 rewards + // farmer2: 200 external, 0 internal, 50 unclaimed rewards assertEq(siloPayback.balanceOf(farmer2), 200e6, "farmer2 balance not updated"); assertEq(siloPayback.earned(farmer2), 50e6, "farmer2 earned not updated"); - // farmer3: 100 internal, 0 external, 0 rewards + // farmer3: 100 internal, 0 external, 0 unclaimed rewards assertEq(siloPayback.getBalanceCombined(farmer3), 100e6, "farmer3 balance not updated"); assertEq( siloPayback.getBalanceInMode(farmer3, LibTransfer.From.INTERNAL), @@ -447,30 +465,14 @@ contract SiloPaybackTest is TestHelper { 0, "farmer3 external balance not updated" ); - // assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned should be 0 before second reward distribution"); - - // log reward per token stored - console.log("reward per token stored", siloPayback.rewardPerTokenStored()); - // log user reward per token paid - console.log( - "user reward per token paid for farmer3", - siloPayback.userRewardPerTokenPaid(farmer3) + assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned should be 0 after internal transfer"); + assertEq( + siloPayback.userRewardPerTokenPaid(farmer3), + siloPayback.rewardPerTokenStored(), + "farmer3 user reward should be synced using the pre transfer hook" ); - - // Second distribution: 100 BEAN rewards - // _sendRewardsToContract(100e6); } - // Scenario: - // - User has 100 external + 50 internal tokens (150 - // total) - // - Earns rewards for 150 tokens - // - Internal balance changes to 25 via direct Pinto - // protocol calls - // - User still has checkpoint for 150 tokens but only 125 - // total balance - // - Could claim excess rewards or have calculation errors - ////////////// HELPER FUNCTIONS ////////////// function _mintTokensToUsers(address[] memory recipients, uint256[] memory amounts) internal { @@ -503,6 +505,11 @@ contract SiloPaybackTest is TestHelper { ) internal { vm.startPrank(sender); IERC20(address(siloPayback)).approve(address(bs), amount); + // if from internal and to internal, expect pre transfer hook event to be emitted + if (fromMode == LibTransfer.From.INTERNAL && toMode == LibTransfer.To.INTERNAL) { + vm.expectEmit(true, true, true, true); + emit TokenHookCalled(address(siloPayback), address(siloPayback), siloPayback.protocolUpdate.selector); + } bs.transferToken(address(siloPayback), receipient, amount, uint8(fromMode), uint8(toMode)); vm.stopPrank(); } diff --git a/test/foundry/token/TokenHook.t.sol b/test/foundry/token/TokenHook.t.sol new file mode 100644 index 00000000..a1972847 --- /dev/null +++ b/test/foundry/token/TokenHook.t.sol @@ -0,0 +1,249 @@ +// SPDX-License-Identifier: MIT +pragma solidity >=0.6.0 <0.9.0; +pragma abicoder v2; + +import {TestHelper, LibTransfer, IMockFBeanstalk, C} from "test/foundry/utils/TestHelper.sol"; +import {MockToken} from "contracts/mocks/MockToken.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {MockTokenWithHook} from "contracts/mocks/MockTokenWithHook.sol"; + +contract TokenHookTest is TestHelper { + // Mock token hooks + event InternalTransferTokenHookCalled(address indexed from, address indexed to, uint256 amount); + event RegularTransferTokenHookCalled(address indexed from, address indexed to, uint256 amount); + + // Protocol events + event TokenHookCalled(address indexed token, address indexed target, bytes4 selector); + event TokenHookRegistered(address indexed token, address indexed target, bytes4 selector); + + // test accounts + address[] farmers; + + // test tokens + address randomMockTokenAddress = makeAddr("randomMockToken"); + + MockTokenWithHook mockToken; + + function setUp() public { + initializeBeanstalkTestState(true, false); + + // deploy mock token with hook, set protocol to beanstalk + // the hooks only emit events: + // - RegularTransferTokenHookCalled for regular transfers + // - InternalTransferTokenHookCalled for internal transfers. + mockToken = new MockTokenWithHook("MockHookToken", "MOCKHT", address(bs)); + + // Whitelist token hook for internal transfers, expect whitelist event to be emitted + vm.prank(deployer); + vm.expectEmit(true, true, true, true); + emit TokenHookRegistered( + address(mockToken), + address(mockToken), + mockToken.internalTransferUpdate.selector + ); + bs.whitelistTokenHook( + address(mockToken), + IMockFBeanstalk.TokenHook({ + target: address(mockToken), + selector: mockToken.internalTransferUpdate.selector, + encodeType: 0x00 + }) + ); + + // init users + farmers.push(users[1]); + farmers.push(users[2]); + + // mint tokens to farmers + mockToken.mint(farmers[0], 1000e18); + mockToken.mint(farmers[1], 1000e18); + + // Approve Beanstalk to spend tokens + vm.prank(farmers[0]); + IERC20(address(mockToken)).approve(address(bs), 1000e18); + vm.prank(farmers[1]); + IERC20(address(mockToken)).approve(address(bs), 1000e18); + } + + /** + * @notice Tests that a token hook is called for internal <> internal transfers. + */ + function test_mockTokenInternalTransferTokenHook() public { + uint256 transferAmount = 100e18; // 100 tokens + + // Initial balances + uint256 initialFarmer0Balance = IERC20(address(mockToken)).balanceOf(farmers[0]); + uint256 initialFarmer1Balance = IERC20(address(mockToken)).balanceOf(farmers[1]); + + // Transfer tokens from external balance to internal balance for farmer[0] + // Assert that the regular transfer token hook is called + vm.prank(farmers[0]); + vm.expectEmit(true, true, true, true); + emit RegularTransferTokenHookCalled(farmers[0], address(bs), transferAmount); + bs.sendTokenToInternalBalance(address(mockToken), farmers[0], transferAmount); + + // Transfer tokens from internal balance to external balance for farmer[1] + // Assert that the regular transfer token hook is called + vm.prank(farmers[1]); + vm.expectEmit(true, true, true, true); + emit RegularTransferTokenHookCalled(farmers[1], address(bs), transferAmount); + bs.sendTokenToInternalBalance(address(mockToken), farmers[1], transferAmount); + + // send tokens from internal to internal between farmer[0] and farmer[1] + // Assert that the internal transfer token hook is called + vm.prank(farmers[0]); + vm.expectEmit(true, true, true, true); + emit InternalTransferTokenHookCalled(farmers[0], farmers[1], transferAmount); + emit TokenHookCalled( + address(mockToken), // token + address(mockToken), // target + mockToken.internalTransferUpdate.selector // selector + ); + bs.transferInternalTokenFrom( + address(mockToken), + farmers[0], + farmers[1], + transferAmount, + uint8(LibTransfer.To.INTERNAL) + ); + + // check balances after transfers, make sure the internal balance is updated + assertEq( + IERC20(address(mockToken)).balanceOf(farmers[0]), + initialFarmer0Balance - transferAmount + ); + assertEq( + IERC20(address(mockToken)).balanceOf(farmers[1]), + initialFarmer1Balance - transferAmount + ); + assertEq(bs.getInternalBalance(farmers[0], address(mockToken)), 0); + assertEq(bs.getInternalBalance(farmers[1], address(mockToken)), 200e18); + } + + /** + * @notice Tests that the token hook admin functions revert for non-owners. + */ + function test_onlyOwnerTokenHookAdminFunctions() public { + // try to whitelist token hook as non-owner + vm.expectRevert("LibDiamond: Must be contract or owner"); + vm.prank(farmers[0]); + bs.whitelistTokenHook( + address(mockToken), + IMockFBeanstalk.TokenHook({ + target: address(mockToken), + selector: mockToken.internalTransferUpdate.selector, + encodeType: 0x00 + }) + ); + + // try to dewhitelist token hook as non-owner + vm.expectRevert("LibDiamond: Must be contract or owner"); + vm.prank(farmers[0]); + bs.dewhitelistTokenHook(address(mockToken)); + + // try to update token hook as non-owner + vm.expectRevert("LibDiamond: Must be contract or owner"); + vm.prank(farmers[0]); + bs.updateTokenHook( + address(mockToken), + IMockFBeanstalk.TokenHook({ + target: address(mockToken), + selector: mockToken.internalTransferUpdate.selector, + encodeType: 0x00 + }) + ); + + // try to dewhitelist a non existent token hook as owner + vm.expectRevert("LibTokenHook: Hook not whitelisted"); + vm.prank(deployer); + bs.dewhitelistTokenHook(address(1)); + + // try to update a non existent token hook as owner + vm.expectRevert("LibTokenHook: Hook not whitelisted"); + vm.prank(deployer); + bs.updateTokenHook( + address(1), + IMockFBeanstalk.TokenHook({ + target: address(mockToken), + selector: mockToken.internalTransferUpdate.selector, + encodeType: 0x00 + }) + ); + } + + /** + * @notice Tests that the token hook verification fails for invalid targets, non-contracts, and selectors. + */ + function test_failedHookVerification() public { + // try to whitelist a token hook with a non-contract target + vm.prank(deployer); + vm.expectRevert("LibTokenHook: Target is not a contract"); + bs.whitelistTokenHook( + address(randomMockTokenAddress), + IMockFBeanstalk.TokenHook({ + target: randomMockTokenAddress, // invalid target + selector: mockToken.internalTransferUpdate.selector, + encodeType: 0x00 + }) + ); + + // try to whitelist a token hook on a contract with an invalid selector + vm.prank(deployer); + vm.expectRevert("LibTokenHook: Invalid TokenHook implementation"); + bs.whitelistTokenHook( + address(mockToken), + IMockFBeanstalk.TokenHook({ + target: address(mockToken), + selector: bytes4(0x12345678), // invalid selector + encodeType: 0x00 + }) + ); + } + + /** + * @notice Tests that the token hook whitelisting fails for invalid encode types. + */ + function test_failedHookWhitelistingInvalidEncodeType() public { + // try to whitelist a token hook on a contract with an invalid encode type, expect early revert + vm.prank(deployer); + vm.expectRevert("LibTokenHook: Invalid encodeType"); + bs.whitelistTokenHook( + address(mockToken), + IMockFBeanstalk.TokenHook({ + target: address(mockToken), + selector: mockToken.internalTransferUpdate.selector, + encodeType: 0x01 // invalid encode type + }) + ); + } + + /** + * @notice Tests that if a token hook execution fails, no internal state gets updated. + */ + function test_failedHookExecutionRevertsTransfer() public { + vm.prank(farmers[0]); + bs.sendTokenToInternalBalance(address(mockToken), farmers[0], 100e18); + + // get initial internal balance of farmer[0] + uint256 initialInternalBalance = bs.getInternalBalance(farmers[0], address(mockToken)); + + // etch the target address to another token that does not have a hook + MockToken mockToken2 = new MockToken("MockToken2", "MT2"); + vm.etch(address(mockToken), address(mockToken2).code); + + // try to transfer tokens from internal to internal, expect execution failure + vm.prank(farmers[0]); + vm.expectRevert("LibTokenHook: Hook execution failed"); + bs.transferInternalTokenFrom( + address(mockToken), + farmers[0], + farmers[1], + 100e18, + uint8(LibTransfer.To.INTERNAL) + ); + + // check that the internal balance of farmer[0] is the same as before the transfer, + // no state should have been updated + assertEq(bs.getInternalBalance(farmers[0], address(mockToken)), initialInternalBalance); + } +} diff --git a/test/foundry/utils/BeanstalkDeployer.sol b/test/foundry/utils/BeanstalkDeployer.sol index 16d1713c..0fac7d04 100644 --- a/test/foundry/utils/BeanstalkDeployer.sol +++ b/test/foundry/utils/BeanstalkDeployer.sol @@ -51,7 +51,8 @@ contract BeanstalkDeployer is Utils { "ClaimFacet", "OracleFacet", "GaugeGettersFacet", - "TractorFacet" + "TractorFacet", + "TokenHookFacet" ]; // Facets that have a mock counter part should be appended here. From 67f5c79fb33d7b553d87b41e3aec2ba22444cac8 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 25 Aug 2025 17:10:14 +0300 Subject: [PATCH 062/270] separate tasks according to timeline --- .../L1ContractMessenger.sol | 2 +- hardhat.config.js | 280 +++++++++--------- .../deployPaybackContracts.js | 3 + .../populateBeanstalkField.js | 11 +- test/hardhat/utils/constants.js | 8 +- 5 files changed, 154 insertions(+), 150 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index 4bfc64e3..92b26062 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -51,7 +51,7 @@ contract L1ContractMessenger { * to claim the assets for a given L2 receiver address * @param l2Receiver The address to transfer the assets to on the L2 * The gas limit is the max gas limit needed on the l2 with a 20% on top of that as buffer - * From fork testing, all contract accounts claimed with a maximum of 26mil gas. + * From fork testing, all contract accounts claimed their assets with a maximum of 26million gas. * (https://docs.optimism.io/app-developers/bridging/messaging#basics-of-communication-between-layers) */ function claimL2BeanstalkAssets(address l2Receiver) public onlyWhitelistedL1Caller { diff --git a/hardhat.config.js b/hardhat.config.js index ac21141b..eb9d83cf 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -46,7 +46,10 @@ const { const { deployAndSetupContracts } = require("./scripts/beanstalkShipments/deployPaybackContracts.js"); -const { parseAllExportData, generateAddressFiles } = require("./scripts/beanstalkShipments/parsers"); +const { + parseAllExportData, + generateAddressFiles +} = require("./scripts/beanstalkShipments/parsers"); //////////////////////// TASKS //////////////////////// @@ -2026,57 +2029,96 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m console.log("-----------------------------------"); }); - //////////////////////// BEANSTALK SHIPMENTS //////////////////////// +//////////////////////// BEANSTALK SHIPMENTS //////////////////////// -task("beanstalkShipments", "performs all actions to initialize the beanstalk shipments").setAction( - async (taskArgs) => { - console.log("=".repeat(80)); - console.log("🌱 BEANSTALK SHIPMENTS INITIALIZATION"); - console.log("=".repeat(80)); +////// STEP 1: DEPLOY PAYBACK CONTRACTS ////// +task( + "deployPaybackContracts", + "performs all actions to initialize the beanstalk shipments" +).setAction(async (taskArgs) => { + console.log("=".repeat(80)); + console.log("🌱 BEANSTALK SHIPMENTS INITIALIZATION"); + console.log("=".repeat(80)); + + // params + const verbose = true; + const populateData = true; + const parseContracts = true; + const mock = true; - // params - const verbose = true; - const deploy = true; - const populateData = true; - const populateField = true; - const parseContracts = true; - const mockFieldData = false; - - // Step 0: Parse export data into required format - console.log("\nšŸ“Š STEP 0: PARSING EXPORT DATA"); - console.log("-".repeat(50)); - try { - parseAllExportData(parseContracts); - console.log("āœ… Export data parsing completed"); - - // Generate address files from parsed data - generateAddressFiles(); - console.log("āœ… Address files generation completed\n"); - } catch (error) { - console.error("āŒ Failed to parse export data:", error); - throw error; - } + // Step 0: Parse export data into required format + console.log("\nšŸ“Š STEP 0: PARSING EXPORT DATA"); + console.log("-".repeat(50)); + try { + parseAllExportData(parseContracts); + console.log("āœ… Export data parsing completed"); - // Use the diamond deployer for dimond cuts - const mock = true; - let owner; - if (mock) { - owner = await impersonateSigner(L2_PCM); - await mintEth(owner.address); - } else { - owner = (await ethers.getSigners())[0]; - } + // Generate address files from parsed data + generateAddressFiles(); + console.log("āœ… Address files generation completed\n"); + } catch (error) { + console.error("āŒ Failed to parse export data:", error); + throw error; + } - // Use the diamond deployer for dimond cuts - let deployer; - if (mock) { - deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[1]; - } + // Use the diamond deployer for dimond cuts + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[1]; + } + + // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract + console.log("STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); + console.log("-".repeat(50)); + await deployAndSetupContracts({ + PINTO, + L2_PINTO, + L2_PCM, + account: deployer, + verbose, + populateData: populateData, + useChunking: true + }); + console.log("āœ… Payback contracts deployed and configured\n"); +}); + +////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// +task( + "deployTempFieldFacetAndTokenHookFacet", + "deploys the TempFieldFacet and TokenHookFacet contracts" +).setAction(async (taskArgs) => { + // params + const mock = true; + + // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field + console.log( + "STEP 2: ADDING NEW TEMP_REPAYMENT_FIELD_FACET AND THE TOKEN_HOOK_FACET TO THE PINTO DIAMOND" + ); + console.log("-".repeat(50)); + + // Todo: add the TokenHookFacet here with init script to whitelist the silo payback hook + await upgradeWithNewFacets({ + diamondAddress: L2_PINTO, + facetNames: ["TempRepaymentFieldFacet"], + initArgs: [], + verbose: true, + object: !mock, + account: deployer + }); +}); + +////// STEP 3: POPULATE THE BEANSTALK FIELD WITH DATA ////// +// After the initialization of the repayment field is done and the shipments have been deployed +// The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed +task("populateRepaymentField", "populates the repayment field with data").setAction( + async (taskArgs) => { + // params + const mock = true; + const verbose = true; - // Use the repayment field populator for the beanstalk field initialization let repaymentFieldPopulator; if (mock) { repaymentFieldPopulator = await impersonateSigner( @@ -2087,53 +2129,40 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi repaymentFieldPopulator = (await ethers.getSigners())[2]; } - // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract - console.log("šŸš€ STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); - console.log("-".repeat(50)); - let contracts = {}; - if (deploy) { - contracts = await deployAndSetupContracts({ - PINTO, - L2_PINTO, - L2_PCM, - account: deployer, - verbose, - populateData: populateData, - useChunking: true - }); - console.log("āœ… Payback contracts deployed and configured\n"); - } - - // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field - console.log("šŸ›¤ļø STEP 2: ADDING NEW TEMP_REPAYMENT_FIELD_FACET TO THE PINTO DIAMOND"); + // Populate the repayment field with data + console.log("STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); console.log("-".repeat(50)); - - await upgradeWithNewFacets({ + await populateBeanstalkField({ diamondAddress: L2_PINTO, - facetNames: ["TempRepaymentFieldFacet"], - initArgs: [], - verbose: true, - account: owner + account: repaymentFieldPopulator, + verbose: verbose }); + console.log("āœ… Beanstalk field initialized\n"); + } +); - // Step 3: Populate the repayment field with data - console.log("šŸ“ˆ STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); - console.log("-".repeat(50)); - if (populateField) { - await populateBeanstalkField({ - diamondAddress: L2_PINTO, - account: repaymentFieldPopulator, - verbose: verbose, - mockData: mockFieldData - }); +////// STEP 4: FINALIZE THE BEANSTALK SHIPMENTS ////// +task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setAction( + async (taskArgs) => { + // params + const mock = true; + + // Use any account for diamond cuts + let owner; + if (mock) { + owner = await impersonateSigner(L2_PCM); + await mintEth(owner.address); + } else { + owner = (await ethers.getSigners())[0]; } - // Step 4: Update shipment routes and create new field - // The SeasonFacet will also need to be updated to support the new receipients in the - // ShipmentRecipient enum in System.sol since the facet inherits from Distribution.sol - // That contains the function getShipmentRoutes() which reads the shipment routes from storage - // and imports the ShipmentRoute struct. LibReceiving was also updated. - console.log("\nšŸ›¤ļø STEP 4: UPDATING SHIPMENT ROUTES AND CREATING NEW FIELD"); + // Step 4: Update shipment routes, create new field and remove the TempRepaymentFieldFacet + // The SeasonFacet will also need to be updated since LibReceiving was modified. + // Selectors removed: + // 0x31f2cd56: REPAYMENT_FIELD_ID() + // 0x49e40d6c: REPAYMENT_FIELD_POPULATOR() + // 0x0b678c09: initializeReplaymentPlots() + console.log("\nSTEP 4: UPDATING SHIPMENT ROUTES, CREATING NEW FIELD AND REMOVING TEMP FACET"); const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; const routes = JSON.parse(fs.readFileSync(routesPath)); @@ -2163,8 +2192,10 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi ] }, initFacetName: "InitBeanstalkShipments", + selectorsToRemove: ["0x31f2cd56", "0x49e40d6c", "0x0b678c09"], initArgs: [routes], verbose: true, + object: !mock, account: owner }); console.log("āœ… Shipment routes updated and new field created\n"); @@ -2175,61 +2206,38 @@ task("beanstalkShipments", "performs all actions to initialize the beanstalk shi } ); -// After the initialization of the repayment field is done and the shipments have been deployed -// The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed -task( - "removeTempRepaymentFieldFacet", - "removes the TempRepaymentFieldFacet from the diamond" -).setAction(async (taskArgs) => { - const mock = true; - let owner; - if (mock) { - owner = await impersonateSigner(L2_PCM); - await mintEth(owner.address); - } else { - owner = (await ethers.getSigners())[0]; - } - - // 0x31f2cd56: REPAYMENT_FIELD_ID() - // 0x49e40d6c: REPAYMENT_FIELD_POPULATOR() - // 0x0b678c09: initializeReplaymentPlots() - await upgradeWithNewFacets({ - diamondAddress: L2_PINTO, - facetNames: [], - selectorsToRemove: ["0x31f2cd56", "0x49e40d6c", "0x0b678c09"], - verbose: true, - account: owner - }); -}); - // As a backup solution, ethAccounts will be able to send a message on the L1 to claim their assets on the L2 // from the L2 ContractPaybackDistributor contract. We deploy the L1ContractMessenger contract on the L1 // and whitelist the ethAccounts that are eligible to claim their assets. -task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction(async (taskArgs) => { - const mock = true; - let deployer; - if (mock) { - deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[0]; - } +task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction( + async (taskArgs) => { + const mock = true; + let deployer; + if (mock) { + deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } - // log deployer address - console.log("Deployer address:", deployer.address); + // log deployer address + console.log("Deployer address:", deployer.address); - // read the contract accounts from the json file - const contractAccounts = JSON.parse(fs.readFileSync("./scripts/beanstalkShipments/data/ethContractAccounts.json")); + // read the contract accounts from the json file + const contractAccounts = JSON.parse( + fs.readFileSync("./scripts/beanstalkShipments/data/ethContractAccounts.json") + ); - const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); - const l1Messenger = await L1Messenger.deploy( - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, - contractAccounts - ); - await l1Messenger.deployed(); + const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); + const l1Messenger = await L1Messenger.deploy( + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, + contractAccounts + ); + await l1Messenger.deployed(); - console.log("L1ContractMessenger deployed to:", l1Messenger.address); -}); + console.log("L1ContractMessenger deployed to:", l1Messenger.address); + } +); //////////////////////// CONFIGURATION //////////////////////// diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 7101c70f..939582c6 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -75,7 +75,10 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru barnPaybackContract.address // address _barnPayback ); await contractPaybackDistributorContract.deployed(); + const receipt = await contractPaybackDistributorContract.deploymentTransaction().wait(); console.log("āœ… ContractPaybackDistributor deployed to:", contractPaybackDistributorContract.address); + // log gas used + console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); return { siloPaybackContract, diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 21937f23..810cf17f 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -8,19 +8,12 @@ const { /** * Populates the beanstalk field by reading data from beanstalkPlots.json * and calling initializeReplaymentPlots directly on the L2_PINTO contract - * @param {Object} params - The parameters object - * @param {string} params.diamondAddress - The address of the diamond contract - * @param {Object} params.account - The account to use for the transaction - * @param {boolean} params.verbose - Whether to log verbose output - * @param {boolean} params.mockData - Whether to use mock data */ -async function populateBeanstalkField({ diamondAddress, account, verbose, mockData }) { +async function populateBeanstalkField({ diamondAddress, account, verbose }) { console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots."); // Read and parse the JSON file - const plotsPath = mockData - ? "./scripts/beanstalkShipments/data/mocks/mockBeanstalkPlots.json" - : "./scripts/beanstalkShipments/data/beanstalkPlots.json"; + const plotsPath = "./scripts/beanstalkShipments/data/beanstalkPlots.json"; const rawPlotData = JSON.parse(fs.readFileSync(plotsPath)); // Split into chunks for processing diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index 0212879a..7c24e319 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -123,15 +123,15 @@ module.exports = { //////////////////////// BEANSTALK SHIPMENTS //////////////////////// // EOA That will deploy the beanstlak shipment contracts BEANSTALK_SHIPMENTS_DEPLOYER: "0x47c365cc9ef51052651c2be22f274470ad6afc53", - // Expected proxt address of the silo payback contract + // Expected proxy address of the silo payback contract from deployer at nonce 1 BEANSTALK_SILO_PAYBACK: "0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E", BEANSTALK_SILO_PAYBACK_IMPLEMENTATION: "0x3E0635B980714303351DAeE305dB1A380C56ed38", - // Expected proxt address of the barn payback contract + // Expected proxy address of the barn payback contract from deployer at nonce 3 BEANSTALK_BARN_PAYBACK: "0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b", BEANSTALK_BARN_PAYBACK_IMPLEMENTATION: "0xeB447cE47107f0c7406716d60Ede2107CE73e5f2", - // Expected proxt address of the shipment planner contract + // Expected proxy address of the shipment planner contract from deployer at nonce 4 BEANSTALK_SHIPMENT_PLANNER: "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - // Expected address of the contract payback distributor contract + // Expected address of the contract payback distributor contract from deployer at nonce 5 BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR: "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", // EOA that will populate the repayment field From c5e70b5efa4b064fc2f1ee8424c1e4e325198c75 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 25 Aug 2025 18:00:13 +0300 Subject: [PATCH 063/270] dynamically filter out delegated contract accounts, clean up parsing --- hardhat.config.js | 2 +- .../deployPaybackContracts.js | 4 +- scripts/beanstalkShipments/parsers/index.js | 106 ++++++++++-------- .../parsers/parseBarnData.js | 21 ++-- .../parsers/parseContractData.js | 92 +++++++-------- .../parsers/parseFieldData.js | 17 +-- .../parsers/parseSiloData.js | 17 +-- .../BeanstalkShipments.t.sol | 2 +- 8 files changed, 120 insertions(+), 141 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index eb9d83cf..840acce9 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2225,7 +2225,7 @@ task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").se // read the contract accounts from the json file const contractAccounts = JSON.parse( - fs.readFileSync("./scripts/beanstalkShipments/data/ethContractAccounts.json") + fs.readFileSync("./scripts/beanstalkShipments/data/contractAccounts.json") ); const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 939582c6..f80c969f 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -50,8 +50,8 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru const contractPaybackDistributorFactory = await ethers.getContractFactory("ContractPaybackDistributor", account); // Load contract accounts and initialization data - const contractAccountsPath = "./scripts/beanstalkShipments/data/ethContractAccounts.json"; - const initDataPath = "./scripts/beanstalkShipments/data/ethAccountDistributorInit.json"; + const contractAccountsPath = "./scripts/beanstalkShipments/data/contractAccounts.json"; + const initDataPath = "./scripts/beanstalkShipments/data/contractAccountDistributorInit.json"; let contractAccounts = []; let initData = []; diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 9a394f08..01439927 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -4,45 +4,58 @@ const parseSiloData = require('./parseSiloData'); const parseContractData = require('./parseContractData'); const fs = require('fs'); const path = require('path'); +const { ethers } = require("hardhat"); + +/** + * Detects which addresses have associated contract code on the active hardhat network + */ +async function detectContractAddresses(addresses) { + console.log(`Checking ${addresses.length} addresses for contract code...`); + const contractAddresses = []; + + for (const address of addresses) { + try { + const code = await ethers.provider.getCode(address); + if (code.length > 2) { + contractAddresses.push(address.toLowerCase()); + } + } catch (error) { + console.error(`Error checking address ${address}:`, error.message); + } + } + + console.log(`Found ${contractAddresses.length} addresses with contract code`); + return contractAddresses; +} /** * Main parser orchestrator that runs all parsers * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs */ -function parseAllExportData(parseContracts = false) { - console.log('āš™ļø Starting export data parsing...'); - console.log(`šŸ“„ Include contracts: ${parseContracts}`); +async function parseAllExportData(parseContracts = false) { + console.log('Starting export data parsing...'); + console.log(`Include contracts: ${parseContracts}`); const results = {}; try { - // Parse barn data - console.log('\nšŸ›ļø BARN DATA'); - console.log('-'.repeat(30)); + console.log('\nProcessing barn data...'); results.barn = parseBarnData(parseContracts); - // Parse field data - console.log('🌾 FIELD DATA'); - console.log('-'.repeat(30)); + console.log('Processing field data...'); results.field = parseFieldData(parseContracts); - // Parse silo data - console.log('šŸ¢ SILO DATA'); - console.log('-'.repeat(30)); + console.log('Processing silo data...'); results.silo = parseSiloData(parseContracts); - // Parse contract data for distributor initialization - console.log('šŸ—ļø CONTRACT DISTRIBUTOR DATA'); - console.log('-'.repeat(30)); - results.contracts = parseContractData(parseContracts); + console.log('Processing contract data...'); + results.contracts = await parseContractData(parseContracts, detectContractAddresses); - console.log('šŸ“‹ PARSING SUMMARY'); - console.log('-'.repeat(30)); - console.log(`šŸ“Š Barn: ${results.barn.stats.fertilizerIds} fertilizer IDs, ${results.barn.stats.accountEntries} account entries`); - console.log(`šŸ“Š Field: ${results.field.stats.totalAccounts} accounts, ${results.field.stats.totalPlots} plots`); - console.log(`šŸ“Š Silo: ${results.silo.stats.totalAccounts} accounts with BDV`); - console.log(`šŸ“Š Contracts: ${results.contracts.stats.totalContracts} contracts for distributor`); - console.log(`šŸ“Š Include contracts: ${parseContracts}`); + console.log('\nParsing complete'); + console.log(`Barn: ${results.barn.stats.fertilizerIds} fertilizer IDs, ${results.barn.stats.accountEntries} account entries`); + console.log(`Field: ${results.field.stats.totalAccounts} accounts, ${results.field.stats.totalPlots} plots`); + console.log(`Silo: ${results.silo.stats.totalAccounts} accounts with BDV`); + console.log(`Contracts: ${results.contracts.stats.totalContracts} contracts for distributor`); return results; } catch (error) { @@ -55,8 +68,8 @@ function parseAllExportData(parseContracts = false) { * Generates address files from the parsed JSON export data * Reads the JSON files and extracts addresses to text files */ -function generateAddressFiles() { - console.log('šŸ“ Generating address files from export data...'); +async function generateAddressFiles() { + console.log('Generating address files from export data...'); try { // Define excluded addresses @@ -65,21 +78,6 @@ function generateAddressFiles() { '0x4df59c31a3008509B3C1FeE7A808C9a28F701719' ]; - // Define fertilizer contract accounts (delegated contracts that need special handling) - const fertilizerContractAccounts = [ - '0x63a7255C515041fD243440e3db0D10f62f9936ae', - '0xdff24806405f62637E0b44cc2903F1DfC7c111Cd', - '0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6', - '0x4088E870e785320413288C605FD1BD6bD9D5BDAe', - '0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B', - '0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B', - '0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2', - '0x44db0002349036164dD46A04327201Eb7698A53e', - '0x542A94e6f4D9D15AaE550F7097d089f273E38f85', - '0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e', - '0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11' - ]; - // Define file paths const dataDir = path.join(__dirname, '../data/exports'); const accountsDir = path.join(dataDir, 'accounts'); @@ -94,8 +92,21 @@ function generateAddressFiles() { const barnData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_barn.json'))); const fieldData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_field.json'))); + // Get all arbEOAs addresses to check for contract code + const allArbEOAAddresses = [ + ...Object.keys(siloData.arbEOAs || {}), + ...Object.keys(barnData.arbEOAs || {}), + ...Object.keys(fieldData.arbEOAs || {}) + ]; + + // Deduplicate addresses + const uniqueArbEOAAddresses = [...new Set(allArbEOAAddresses)]; + + // Dynamically detect which arbEOAs have contract code + const detectedContractAccounts = await detectContractAddresses(uniqueArbEOAAddresses); + // Combine all addresses to exclude - const allExcludedAddresses = [...excludedAddresses, ...fertilizerContractAccounts]; + const allExcludedAddresses = [...excludedAddresses, ...detectedContractAccounts]; // Extract and filter addresses from each JSON file const siloAddresses = Object.keys(siloData.arbEOAs || {}).filter(addr => @@ -113,10 +124,10 @@ function generateAddressFiles() { fs.writeFileSync(path.join(accountsDir, 'barn_addresses.txt'), barnAddresses.join('\n')); fs.writeFileSync(path.join(accountsDir, 'field_addresses.txt'), fieldAddresses.join('\n')); - console.log(`āœ… Generated address files:`); - console.log(` - silo_addresses.txt (${siloAddresses.length} addresses)`); - console.log(` - barn_addresses.txt (${barnAddresses.length} addresses)`); - console.log(` - field_addresses.txt (${fieldAddresses.length} addresses)`); + console.log(`Generated address files:`); + console.log(`- silo_addresses.txt (${siloAddresses.length} addresses)`); + console.log(`- barn_addresses.txt (${barnAddresses.length} addresses)`); + console.log(`- field_addresses.txt (${fieldAddresses.length} addresses)`); return { siloAddresses: siloAddresses.length, @@ -124,7 +135,7 @@ function generateAddressFiles() { fieldAddresses: fieldAddresses.length }; } catch (error) { - console.error('āŒ Failed to generate address files:', error); + console.error('Failed to generate address files:', error); throw error; } } @@ -136,5 +147,6 @@ module.exports = { parseSiloData, parseContractData, parseAllExportData, - generateAddressFiles + generateAddressFiles, + detectContractAddresses }; \ No newline at end of file diff --git a/scripts/beanstalkShipments/parsers/parseBarnData.js b/scripts/beanstalkShipments/parsers/parseBarnData.js index ef985167..b0f720c8 100644 --- a/scripts/beanstalkShipments/parsers/parseBarnData.js +++ b/scripts/beanstalkShipments/parsers/parseBarnData.js @@ -15,7 +15,6 @@ function parseBarnData(includeContracts = false) { const outputAccountPath = path.join(__dirname, '../data/beanstalkAccountFertilizer.json'); const outputGlobalPath = path.join(__dirname, '../data/beanstalkGlobalFertilizer.json'); - console.log('Reading barn export data...'); const barnData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); const { @@ -38,11 +37,11 @@ function parseBarnData(includeContracts = false) { leftoverBeans } = storage || {}; - console.log(`🌱 Using beanBpf: ${beanBpf}`); - console.log(`šŸ“‹ Processing ${Object.keys(arbEOAs).length} arbEOAs`); + console.log(`Using beanBpf: ${beanBpf}`); + console.log(`Processing ${Object.keys(arbEOAs).length} arbEOAs`); if (includeContracts) { - console.log(`šŸ“‹ Processing ${Object.keys(arbContracts).length} arbContracts`); - console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); + console.log(`Processing ${Object.keys(arbContracts).length} arbContracts`); + console.log(`Processing ${Object.keys(ethContracts).length} ethContracts`); } // Load constants for distributor address @@ -130,18 +129,12 @@ function parseBarnData(includeContracts = false) { ]; // Write output files - console.log('šŸ’¾ Writing beanstalkAccountFertilizer.json...'); fs.writeFileSync(outputAccountPath, JSON.stringify(accountFertilizer, null, 2)); - - console.log('šŸ’¾ Writing beanstalkGlobalFertilizer.json...'); fs.writeFileSync(outputGlobalPath, JSON.stringify(globalFertilizer, null, 2)); - console.log('āœ… Barn data parsing complete!'); - console.log(` šŸ“Š Account fertilizer entries: ${accountFertilizer.length}`); - console.log(` šŸ“Š Global fertilizer IDs: ${sortedFertIds.length}`); - console.log(` šŸ“Š Active fertilizer: ${activeFertilizer}`); - console.log(` šŸ“Š Include contracts: ${includeContracts}`); - console.log(''); + console.log(`Account fertilizer entries: ${accountFertilizer.length}`); + console.log(`Global fertilizer IDs: ${sortedFertIds.length}`); + console.log(`Active fertilizer: ${activeFertilizer}`); return { accountFertilizer, diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js index 3d6b4544..dc8ad07a 100644 --- a/scripts/beanstalkShipments/parsers/parseContractData.js +++ b/scripts/beanstalkShipments/parsers/parseContractData.js @@ -5,13 +5,13 @@ const path = require('path'); * Parses contract data from all export files to generate initialization data for ContractPaybackDistributor * * Expected output format: - * ethAccountDistributorInit.json: Array of AccountData objects for contract initialization + * contractAccountDistributorInit.json: Array of AccountData objects for contract initialization * * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + * @param {Function} detectContractAddresses - Function to detect contract addresses */ -function parseContractData(includeContracts = false) { +async function parseContractData(includeContracts = false, detectContractAddresses = null) { if (!includeContracts) { - console.log('āš ļø Contract parsing disabled - skipping parseContractData'); return { contractAccounts: [], accountData: [], @@ -21,8 +21,6 @@ function parseContractData(includeContracts = false) { } }; } - - console.log('šŸ¢ Parsing contract data for ContractPaybackDistributor initialization...'); // Input paths for all export files const siloInputPath = path.join(__dirname, '../data/exports/beanstalk_silo.json'); @@ -30,11 +28,10 @@ function parseContractData(includeContracts = false) { const fieldInputPath = path.join(__dirname, '../data/exports/beanstalk_field.json'); // Output paths - const outputAccountsPath = path.join(__dirname, '../data/ethContractAccounts.json'); - const outputInitPath = path.join(__dirname, '../data/ethAccountDistributorInit.json'); + const outputAccountsPath = path.join(__dirname, '../data/contractAccounts.json'); + const outputInitPath = path.join(__dirname, '../data/contractAccountDistributorInit.json'); // Load all export data - console.log('šŸ“ Loading export data...'); const siloData = JSON.parse(fs.readFileSync(siloInputPath, 'utf8')); const barnData = JSON.parse(fs.readFileSync(barnInputPath, 'utf8')); const fieldData = JSON.parse(fs.readFileSync(fieldInputPath, 'utf8')); @@ -44,43 +41,45 @@ function parseContractData(includeContracts = false) { const barnEthContracts = barnData.ethContracts || {}; const fieldEthContracts = fieldData.ethContracts || {}; - console.log(`šŸ“‹ Found ethContracts - Silo: ${Object.keys(siloEthContracts).length}, Barn: ${Object.keys(barnEthContracts).length}, Field: ${Object.keys(fieldEthContracts).length}`); - - // Define fertilizer contract accounts (delegated contracts on Base that need special handling) - const fertilizerContractAccounts = [ - '0x63a7255C515041fD243440e3db0D10f62f9936ae', - '0xdff24806405f62637E0b44cc2903F1DfC7c111Cd', - '0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6', - '0x4088E870e785320413288C605FD1BD6bD9D5BDAe', - '0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B', - '0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B', - '0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2', - '0x44db0002349036164dD46A04327201Eb7698A53e', - '0x542A94e6f4D9D15AaE550F7097d089f273E38f85', - '0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e', - '0x7e04231a59C9589D17bcF2B0614bC86aD5Df7C11' - ]; + console.log(`Found ethContracts - Silo: ${Object.keys(siloEthContracts).length}, Barn: ${Object.keys(barnEthContracts).length}, Field: ${Object.keys(fieldEthContracts).length}`); + + // Get detected contract accounts from external function + let detectedContractAccounts = []; + + if (detectContractAddresses) { + // Get all arbEOAs addresses to check for contract code + const allArbEOAAddresses = [ + ...Object.keys(siloData.arbEOAs || {}), + ...Object.keys(barnData.arbEOAs || {}), + ...Object.keys(fieldData.arbEOAs || {}) + ]; + + // Deduplicate addresses + const uniqueArbEOAAddresses = [...new Set(allArbEOAAddresses)]; + + // Dynamically detect which arbEOAs have contract code + detectedContractAccounts = await detectContractAddresses(uniqueArbEOAAddresses); + } // Get all unique contract addresses and normalize to lowercase const allContractAddressesRaw = [ ...Object.keys(siloEthContracts), ...Object.keys(barnEthContracts), ...Object.keys(fieldEthContracts), - ...fertilizerContractAccounts // Include the delegated contract accounts + ...detectedContractAccounts // Include dynamically detected contract accounts ]; // Normalize addresses to lowercase and deduplicate const allContractAddresses = [...new Set(allContractAddressesRaw.map(addr => addr.toLowerCase()))]; - console.log(`šŸ“Š Total raw contract addresses: ${allContractAddressesRaw.length}`); - console.log(`šŸ“Š Total unique normalized addresses: ${allContractAddresses.length}`); + console.log(`Total contract addresses to process: ${allContractAddresses.length}`); + // Build contract data for each address, merging data from different cases const contractAccounts = []; const accountDataArray = []; for (const normalizedAddress of allContractAddresses) { - console.log(`\nšŸ” Processing contract: ${normalizedAddress}`); // Initialize AccountData structure (matching contract format) const accountData = { @@ -99,19 +98,19 @@ function parseContractData(includeContracts = false) { return entries.filter(([addr]) => addr.toLowerCase() === normalizedAddress); }; - // Helper function to check if this is a fertilizer contract account that needs special handling - const isFertilizerContract = fertilizerContractAccounts + // Helper function to check if this is a detected contract account that needs special handling + const isDetectedContract = detectedContractAccounts .map(addr => addr.toLowerCase()) .includes(normalizedAddress); - // For fertilizer contracts, also check arbEOAs data + // For detected contracts, also check arbEOAs data const findArbEOAData = (arbEOAsObj) => { - if (!isFertilizerContract) return []; + if (!isDetectedContract) return []; const entries = Object.entries(arbEOAsObj); return entries.filter(([addr]) => addr.toLowerCase() === normalizedAddress); }; - // Process silo data - merge all matching addresses (check both ethContracts and arbEOAs for fertilizer contracts) + // Process silo data - merge all matching addresses (check both ethContracts and arbEOAs for detected contracts) const siloEntries = findContractData(siloEthContracts); const siloArbEntries = findArbEOAData(siloData.arbEOAs || {}); const allSiloEntries = [...siloEntries, ...siloArbEntries]; @@ -120,14 +119,13 @@ function parseContractData(includeContracts = false) { for (const [originalAddr, siloData] of allSiloEntries) { if (siloData && siloData.bdvAtRecapitalization && siloData.bdvAtRecapitalization.total) { totalSiloBdv += BigInt(siloData.bdvAtRecapitalization.total); - console.log(` šŸ’° Merged silo BDV from ${originalAddr}: ${siloData.bdvAtRecapitalization.total}`); } } if (totalSiloBdv > 0n) { accountData.siloPaybackTokensOwed = totalSiloBdv.toString(); } - // Process barn data - merge all matching addresses (check both ethContracts and arbEOAs for fertilizer contracts) + // Process barn data - merge all matching addresses (check both ethContracts and arbEOAs for detected contracts) const barnEntries = findContractData(barnEthContracts); const barnArbEntries = findArbEOAData(barnData.arbEOAs || {}); const allBarnEntries = [...barnEntries, ...barnArbEntries]; @@ -139,7 +137,6 @@ function parseContractData(includeContracts = false) { const currentAmount = fertilizerMap.get(fertId) || BigInt(0); fertilizerMap.set(fertId, currentAmount + BigInt(amount)); } - console.log(` 🌱 Merged fertilizer data from ${originalAddr}: ${Object.keys(barnData.beanFert).length} entries`); } } @@ -149,7 +146,7 @@ function parseContractData(includeContracts = false) { accountData.fertilizerAmounts.push(totalAmount.toString()); } - // Process field data - merge all matching addresses (check both ethContracts and arbEOAs for fertilizer contracts) + // Process field data - merge all matching addresses (check both ethContracts and arbEOAs for detected contracts) const fieldEntries = findContractData(fieldEthContracts); const fieldArbEntries = findArbEOAData(fieldData.arbEOAs || {}); const allFieldEntries = [...fieldEntries, ...fieldArbEntries]; @@ -161,7 +158,6 @@ function parseContractData(includeContracts = false) { const currentPods = plotMap.get(plotIndex) || BigInt(0); plotMap.set(plotIndex, currentPods + BigInt(pods)); } - console.log(` 🌾 Merged field data from ${originalAddr}: ${Object.keys(fieldData).length} entries`); } } @@ -181,12 +177,6 @@ function parseContractData(includeContracts = false) { if (hasAssets) { contractAccounts.push(normalizedAddress); accountDataArray.push(accountData); - console.log(` āœ… Contract included with merged assets`); - console.log(` - Silo BDV: ${accountData.siloPaybackTokensOwed}`); - console.log(` - Fertilizers: ${accountData.fertilizerIds.length}`); - console.log(` - Plots: ${accountData.plotIds.length} (plotEnds as pod amounts)`); - } else { - console.log(` āš ļø Contract has no assets - skipping`); } } @@ -205,19 +195,13 @@ function parseContractData(includeContracts = false) { const totalPlots = finalAccountData.reduce((sum, data) => sum + data.plotIds.length, 0); // Write output files - console.log('\nšŸ’¾ Writing contract accounts file...'); fs.writeFileSync(outputAccountsPath, JSON.stringify(finalContractAccounts, null, 2)); - - console.log('šŸ’¾ Writing distributor initialization file...'); fs.writeFileSync(outputInitPath, JSON.stringify(finalAccountData, null, 2)); - console.log('\nāœ… Contract data parsing complete!'); - console.log(` šŸ“Š Contracts with assets: ${totalContracts}`); - console.log(` šŸ“Š Total silo tokens owed: ${totalSiloTokens.toString()}`); - console.log(` šŸ“Š Total fertilizer entries: ${totalFertilizers}`); - console.log(` šŸ“Š Total plot entries: ${totalPlots}`); - console.log(` šŸ“Š Include contracts: ${includeContracts}`); - console.log(''); + console.log(`Contracts with assets: ${totalContracts}`); + console.log(`Total silo tokens owed: ${totalSiloTokens.toString()}`); + console.log(`Total fertilizer entries: ${totalFertilizers}`); + console.log(`Total plot entries: ${totalPlots}`); return { contractAccounts: finalContractAccounts, diff --git a/scripts/beanstalkShipments/parsers/parseFieldData.js b/scripts/beanstalkShipments/parsers/parseFieldData.js index aa3d4e0c..03f3bd4c 100644 --- a/scripts/beanstalkShipments/parsers/parseFieldData.js +++ b/scripts/beanstalkShipments/parsers/parseFieldData.js @@ -13,15 +13,14 @@ function parseFieldData(includeContracts = false) { const inputPath = path.join(__dirname, '../data/exports/beanstalk_field.json'); const outputPath = path.join(__dirname, '../data/beanstalkPlots.json'); - console.log('Reading field export data...'); const fieldData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); const { arbEOAs, arbContracts = {}, ethContracts = {} } = fieldData; - console.log(`šŸ“‹ Processing ${Object.keys(arbEOAs).length} arbEOAs`); + console.log(`Processing ${Object.keys(arbEOAs).length} arbEOAs`); if (includeContracts) { - console.log(`šŸ“‹ Processing ${Object.keys(arbContracts).length} arbContracts`); - console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); + console.log(`Processing ${Object.keys(arbContracts).length} arbContracts`); + console.log(`Processing ${Object.keys(ethContracts).length} ethContracts`); } // Load constants for distributor address @@ -93,15 +92,11 @@ function parseFieldData(includeContracts = false) { }, 0); // Write output file - console.log('šŸ’¾ Writing beanstalkPlots.json...'); fs.writeFileSync(outputPath, JSON.stringify(plotsData, null, 2)); - console.log('āœ… Field data parsing complete!'); - console.log(` šŸ“Š Accounts with plots: ${totalAccounts}`); - console.log(` šŸ“Š Total plots: ${totalPlots}`); - console.log(` šŸ“Š Total pods: ${totalPods.toLocaleString()}`); - console.log(` šŸ“Š Include contracts: ${includeContracts}`); - console.log(''); // Add spacing + console.log(`Accounts with plots: ${totalAccounts}`); + console.log(`Total plots: ${totalPlots}`); + console.log(`Total pods: ${totalPods.toLocaleString()}`); return { plotsData, diff --git a/scripts/beanstalkShipments/parsers/parseSiloData.js b/scripts/beanstalkShipments/parsers/parseSiloData.js index 182886f2..5830612e 100644 --- a/scripts/beanstalkShipments/parsers/parseSiloData.js +++ b/scripts/beanstalkShipments/parsers/parseSiloData.js @@ -13,15 +13,14 @@ function parseSiloData(includeContracts = false) { const inputPath = path.join(__dirname, '../data/exports/beanstalk_silo.json'); const outputPath = path.join(__dirname, '../data/unripeBdvTokens.json'); - console.log('Reading silo export data...'); const siloData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); const { arbEOAs, arbContracts = {}, ethContracts = {} } = siloData; - console.log(`šŸ“‹ Processing ${Object.keys(arbEOAs).length} arbEOAs`); + console.log(`Processing ${Object.keys(arbEOAs).length} arbEOAs`); if (includeContracts) { - console.log(`šŸ“‹ Processing ${Object.keys(arbContracts).length} arbContracts`); - console.log(`šŸ“‹ Processing ${Object.keys(ethContracts).length} ethContracts`); + console.log(`Processing ${Object.keys(arbContracts).length} arbContracts`); + console.log(`Processing ${Object.keys(ethContracts).length} ethContracts`); } // Load constants for distributor address @@ -78,15 +77,11 @@ function parseSiloData(includeContracts = false) { const averageBdv = totalAccounts > 0 ? Math.floor(totalBdv / totalAccounts) : 0; // Write output file - console.log('šŸ’¾ Writing unripeBdvTokens.json...'); fs.writeFileSync(outputPath, JSON.stringify(unripeBdvData, null, 2)); - console.log('āœ… Silo data parsing complete!'); - console.log(` šŸ“Š Accounts with BDV: ${totalAccounts}`); - console.log(` šŸ“Š Total BDV: ${totalBdv.toLocaleString()}`); - console.log(` šŸ“Š Average BDV per account: ${averageBdv.toLocaleString()}`); - console.log(` šŸ“Š Include contracts: ${includeContracts}`); - console.log(''); // Add spacing + console.log(`Accounts with BDV: ${totalAccounts}`); + console.log(`Total BDV: ${totalBdv.toLocaleString()}`); + console.log(`Average BDV per account: ${averageBdv.toLocaleString()}`); return { unripeBdvData, diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index afbb403a..33214253 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -640,7 +640,7 @@ contract BeanstalkShipmentsTest is TestHelper { * @notice Load contract accounts from JSON file */ function _loadContractAccountsFromJson() internal { - string memory jsonPath = "scripts/beanstalkShipments/data/ethContractAccounts.json"; + string memory jsonPath = "scripts/beanstalkShipments/data/contractAccounts.json"; string memory json = vm.readFile(jsonPath); contractAccounts = vm.parseJsonAddressArray(json, ""); } From 007cfd371d315df08c271a4e9de35544708abd90 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 26 Aug 2025 19:18:24 +0300 Subject: [PATCH 064/270] add hook support and tests for internal to external and vice versa --- contracts/libraries/Token/LibTokenHook.sol | 1 - contracts/libraries/Token/LibTransfer.sol | 3 +- .../beanstalkShipments/SiloPayback.t.sol | 175 ++++++++++++------ test/foundry/token/TokenHook.t.sol | 70 ++++++- 4 files changed, 187 insertions(+), 62 deletions(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 94ef590f..7ad33f83 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -126,7 +126,6 @@ library LibTokenHook { * @dev Unlike view functions like the bdv selector, we can't staticcall pre-transfer hooks * since they might potentially modify state or emit events so we perform a regular call with * default parameters and assume the hook does not revert for 0 values. - * @dev We assume that pre-transfer hooks do not return any data here. * @param token The token address. * @param hook The TokenHook to verify. */ diff --git a/contracts/libraries/Token/LibTransfer.sol b/contracts/libraries/Token/LibTransfer.sol index cc84df0d..c9b7944a 100644 --- a/contracts/libraries/Token/LibTransfer.sol +++ b/contracts/libraries/Token/LibTransfer.sol @@ -130,8 +130,7 @@ library LibTransfer { ) internal { if ( LibTokenHook.hasTokenHook(address(token)) && - fromMode == From.INTERNAL && - toMode == To.INTERNAL + (fromMode == From.INTERNAL || toMode == To.INTERNAL) ) { LibTokenHook.callPreTransferHook(address(token), sender, recipient, amount); } diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index fd695d9f..161661a7 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -11,7 +11,6 @@ import {TransparentUpgradeableProxy} from "@openzeppelin/contracts/proxy/transpa import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; contract SiloPaybackTest is TestHelper { - // Events event TokenHookCalled(address indexed token, address indexed target, bytes4 selector); @@ -148,7 +147,7 @@ contract SiloPaybackTest is TestHelper { // farmer1 claims immediately after first distribution (claiming every season) uint256 farmer1BalanceBefore = IERC20(BEAN).balanceOf(farmer1); vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // Verify farmer1 received rewards and state is updated assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBefore + farmer1Earned1); @@ -178,7 +177,7 @@ contract SiloPaybackTest is TestHelper { // Now farmer1 claims again (claiming every season) uint256 farmer1BalanceBeforeClaim2 = IERC20(BEAN).balanceOf(farmer1); vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // farmer1 should have received their second round rewards assertEq(IERC20(BEAN).balanceOf(farmer1), farmer1BalanceBeforeClaim2 + farmer1Earned2); @@ -187,7 +186,7 @@ contract SiloPaybackTest is TestHelper { // farmer2 finally claims all accumulated rewards uint256 farmer2BalanceBefore = IERC20(BEAN).balanceOf(farmer2); vm.prank(farmer2); - siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); // farmer2 should receive all their accumulated rewards assertEq(IERC20(BEAN).balanceOf(farmer2), farmer2BalanceBefore + farmer2Earned2); @@ -217,10 +216,10 @@ contract SiloPaybackTest is TestHelper { // Both farmers claim to INTERNAL balance vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.INTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.INTERNAL); vm.prank(farmer2); - siloPayback.claim(farmer2, LibTransfer.To.INTERNAL); // 0 means claim all + siloPayback.claim(farmer2, LibTransfer.To.INTERNAL); // Verify both farmers' rewards went to internal balance uint256 farmer1InternalAfter = bs.getInternalBalance(farmer1, address(BEAN)); @@ -362,13 +361,13 @@ contract SiloPaybackTest is TestHelper { // Claim for all users vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); vm.prank(farmer2); - siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer2, LibTransfer.To.EXTERNAL); vm.prank(farmer3); - siloPayback.claim(farmer3, LibTransfer.To.EXTERNAL); // 0 means claim all + siloPayback.claim(farmer3, LibTransfer.To.EXTERNAL); // Verify all rewards were paid out correctly assertEq( @@ -400,77 +399,133 @@ contract SiloPaybackTest is TestHelper { assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned reset after claim"); } - /////////////////// Internal Transfer /////////////////// + /////////////////// Internal Transfer Support With Hook /////////////////// /** - * @dev test that state is synced are no double claiming is allowed due to execution of the pre transfer hook - * between internal to internal transfers. - * - farmer1 has 100 external, 100 internal - * - farmer2 has 200 external - * - farmer3 has 0 external, 0 internal - * -------------------------------------- - * farmer 1 claims, sends tokens to interal balance of farmer3 - * farmer 2 does not claim - * farmer 3 should have 0 earned rewards, even though his combined balance is 100e6 and he never claimed + * @dev Internal --> Internal + * Before the hook: Neither the sender nor the recipient rewards are checkpointed. + * After the hook: Both the sender and the recipient rewards are checkpointed. */ - function test_siloPaybackDoubleClaimInternalTransfer() public { - // Setup: farmer1 has 40% - _mintTokensToUser(farmer1, 100e6, LibTransfer.To.EXTERNAL); // farmer1 has 50% of total, half in internal - _mintTokensToUser(farmer1, 100e6, LibTransfer.To.INTERNAL); - _mintTokensToUser(farmer2, 200e6, LibTransfer.To.EXTERNAL); // farmer2 has 50% of total all in external + function test_siloPaybackDoubleClaimInternalToInternalTransfer() public { + _mintTokensToUser(farmer1, 100e6, LibTransfer.To.INTERNAL); // farmer1 has 50% of total in internal + _mintTokensToUser(farmer2, 100e6, LibTransfer.To.INTERNAL); // farmer2 has 50% of total in internal - /////////////// First distribution: 100 BEAN rewards /////////////// + // distribution _sendRewardsToContract(100e6); // get the state of rewards pre-internal transfer + // farmer1 uint256 farmer1Earned = siloPayback.earned(farmer1); assertEq(farmer1Earned, 50e6); // 50% of 100 - // claim the rewards - vm.prank(farmer1); - siloPayback.claim(farmer1, LibTransfer.To.EXTERNAL); // 0 means claim all - // user reward paid is synced to the global reward per token stored - assertEq( - siloPayback.userRewardPerTokenPaid(farmer1), - siloPayback.rewardPerTokenStored(), - "farmer1 rewards not synced" - ); + // farmer2 + uint256 farmer2Earned = siloPayback.earned(farmer2); + assertEq(farmer2Earned, 50e6); // 50% of 100 // farmer1 transfers 100 tokens to farmer3 in internal balance + // internal --> internal transfer _transferTokensToUser( farmer1, - farmer3, + farmer2, 100e6, LibTransfer.From.INTERNAL, LibTransfer.To.INTERNAL ); - // new ownership of tokens: - // farmer1: 100 external, 0 internal, 0 rewards - assertEq(siloPayback.balanceOf(farmer1), 100e6, "farmer1 balance not updated"); - assertEq(siloPayback.earned(farmer1), 0, "farmer1 earned not updated"); + // farmer1: 0 external, 0 internal, 50 rewards + assertEq(siloPayback.getBalanceCombined(farmer1), 0, "farmer1 balance not updated"); + assertEq(siloPayback.earned(farmer1), 50e6, "farmer1 earned should remain the same"); - // farmer2: 200 external, 0 internal, 50 unclaimed rewards - assertEq(siloPayback.balanceOf(farmer2), 200e6, "farmer2 balance not updated"); - assertEq(siloPayback.earned(farmer2), 50e6, "farmer2 earned not updated"); + // farmer2: 0 external, 200 internal, 50 rewards + // Even though getBalanceCombined is 200e6, and no claims have occured + // The reward indexes are synced because of the pre transfer hook + assertEq(siloPayback.getBalanceCombined(farmer2), 200e6, "farmer2 balance not updated"); + assertEq(siloPayback.balanceOf(farmer2), 0, "farmer2 external balance not updated"); + assertEq(siloPayback.earned(farmer2), 50e6, "farmer2 earned should stay the same"); + } - // farmer3: 100 internal, 0 external, 0 unclaimed rewards - assertEq(siloPayback.getBalanceCombined(farmer3), 100e6, "farmer3 balance not updated"); - assertEq( - siloPayback.getBalanceInMode(farmer3, LibTransfer.From.INTERNAL), + /** + * @dev External --> Internal + * SiloPayback knows the following when doing the ERC20 transfer: + * - sender = farmer1 | recipient = Pinto Diamond + * - Without the hook: Sender rewards do get checkpointed but the recipient rewards are not since it is the address of the diamond. + * - With the hook: Sender rewards do get checkpointed and the recipient rewards are also checkpointed. + */ + function test_siloPaybackDoubleClaimExternalToInternalTransfer() public { + _mintTokensToUser(farmer1, 100e6, LibTransfer.To.EXTERNAL); // farmer1 has 50% of total, half in external + _mintTokensToUser(farmer2, 100e6, LibTransfer.To.EXTERNAL); // farmer2 has 50% of total all in external + + // distribution + _sendRewardsToContract(100e6); + + // get the state of rewards pre-internal transfer + // farmer1 + uint256 farmer1Earned = siloPayback.earned(farmer1); + assertEq(farmer1Earned, 50e6); // 50% of 100 + // farmer2 + uint256 farmer2Earned = siloPayback.earned(farmer2); + assertEq(farmer2Earned, 50e6); // 50% of 100 + + // farmer1 transfers 100 tokens to farmer2 in internal balance + // external --> internal transfer + _transferTokensToUser( + farmer1, + farmer2, 100e6, - "farmer3 internal balance not updated" - ); - assertEq( - siloPayback.getBalanceInMode(farmer3, LibTransfer.From.EXTERNAL), - 0, - "farmer3 external balance not updated" + LibTransfer.From.EXTERNAL, + LibTransfer.To.INTERNAL ); - assertEq(siloPayback.earned(farmer3), 0, "farmer3 earned should be 0 after internal transfer"); - assertEq( - siloPayback.userRewardPerTokenPaid(farmer3), - siloPayback.rewardPerTokenStored(), - "farmer3 user reward should be synced using the pre transfer hook" + + // farmer1: 0 external, 0 internal, 0 rewards + assertEq(siloPayback.getBalanceCombined(farmer1), 0, "farmer1 balance not updated"); + assertEq(siloPayback.earned(farmer1), 50e6, "farmer1 earned should remain the same"); + + // farmer2: 100 external, 100 internal, 50 unclaimed rewards + assertEq(siloPayback.getBalanceCombined(farmer2), 200e6, "farmer2 balance not updated"); + assertEq(siloPayback.balanceOf(farmer2), 100e6, "farmer2 external balance not updated"); + assertEq(siloPayback.earned(farmer2), 50e6, "farmer2 earned should remain the same"); + } + + /** + * @dev Internal --> External + * SiloPayback knows the following when doing the ERC20 transfer: + * - sender = Pinto Diamond | recipient = farmer2 + * - Without the hook: Sender rewards do not get checkpointed since sender is the diamond. Recipient rewards do get checkpointed. + * - With the hook: Both sender and recipient rewards are checkpointed. + */ + function test_siloPaybackDoubleClaimInternalToExternalTransfer() public { + _mintTokensToUser(farmer1, 100e6, LibTransfer.To.INTERNAL); // farmer1 has 50% of total, half in internal + _mintTokensToUser(farmer2, 100e6, LibTransfer.To.EXTERNAL); // farmer2 has 50% of total all in external + + // distribution + _sendRewardsToContract(100e6); + + // get the state of rewards pre-internal transfer + // farmer1 + uint256 farmer1Earned = siloPayback.earned(farmer1); + assertEq(farmer1Earned, 50e6); // 50% of 100 + // farmer2 + uint256 farmer2Earned = siloPayback.earned(farmer2); + assertEq(farmer2Earned, 50e6); // 50% of 100 + + // farmer1 transfers 100 tokens to farmer2 in external balance + // internal --> external transfer + _transferTokensToUser( + farmer1, + farmer2, + 100e6, + LibTransfer.From.INTERNAL, + LibTransfer.To.EXTERNAL ); + + // farmer1: 0 external, 0 internal, 50 rewards still unclaimed + assertEq(siloPayback.getBalanceCombined(farmer1), 0, "farmer1 balance not updated"); + assertEq(siloPayback.earned(farmer1), 50e6, "farmer1 earned should remain the same"); + + // farmer2: 200 external, 0 internal, 50 rewards still unclaimed + // Even though getBalanceCombined is 200e6, and no claims have occured + // The reward indexes are synced because of the pre transfer hook + assertEq(siloPayback.balanceOf(farmer2), 200e6, "farmer2 balance not updated"); + assertEq(siloPayback.earned(farmer2), 50e6, "farmer2 earned should remain the same"); } ////////////// HELPER FUNCTIONS ////////////// @@ -508,7 +563,11 @@ contract SiloPaybackTest is TestHelper { // if from internal and to internal, expect pre transfer hook event to be emitted if (fromMode == LibTransfer.From.INTERNAL && toMode == LibTransfer.To.INTERNAL) { vm.expectEmit(true, true, true, true); - emit TokenHookCalled(address(siloPayback), address(siloPayback), siloPayback.protocolUpdate.selector); + emit TokenHookCalled( + address(siloPayback), + address(siloPayback), + siloPayback.protocolUpdate.selector + ); } bs.transferToken(address(siloPayback), receipient, amount, uint8(fromMode), uint8(toMode)); vm.stopPrank(); diff --git a/test/foundry/token/TokenHook.t.sol b/test/foundry/token/TokenHook.t.sol index a1972847..cb41d400 100644 --- a/test/foundry/token/TokenHook.t.sol +++ b/test/foundry/token/TokenHook.t.sol @@ -68,7 +68,7 @@ contract TokenHookTest is TestHelper { /** * @notice Tests that a token hook is called for internal <> internal transfers. */ - function test_mockTokenInternalTransferTokenHook() public { + function test_mockTokenInternalToInternalTransferTokenHook() public { uint256 transferAmount = 100e18; // 100 tokens // Initial balances @@ -120,6 +120,74 @@ contract TokenHookTest is TestHelper { assertEq(bs.getInternalBalance(farmers[1], address(mockToken)), 200e18); } + /** + * @notice Tests that a token hook is called for external <> internal transfers. + */ + function test_mockTokenExternalToInternalTransferTokenHook() public { + uint256 transferAmount = 100e18; // 100 tokens + + // Initial balances + uint256 initialFarmer0Balance = IERC20(address(mockToken)).balanceOf(farmers[0]); + + // Transfer tokens from external balance to internal balance for farmer[0] + // Assert that the internal transfer token hook is called (since this goes through internal transfer logic) + vm.prank(farmers[0]); + vm.expectEmit(true, true, true, true); + emit InternalTransferTokenHookCalled(farmers[0], farmers[0], transferAmount); + emit TokenHookCalled( + address(mockToken), // token + address(mockToken), // target + mockToken.internalTransferUpdate.selector // selector + ); + bs.sendTokenToInternalBalance(address(mockToken), farmers[0], transferAmount); + + // Verify balances after transfer + assertEq( + IERC20(address(mockToken)).balanceOf(farmers[0]), + initialFarmer0Balance - transferAmount + ); + assertEq(bs.getInternalBalance(farmers[0], address(mockToken)), transferAmount); + } + + /** + * @notice Tests that a token hook is called for internal <> external transfers. + */ + function test_mockTokenInternalToExternalTransferTokenHook() public { + uint256 transferAmount = 100e18; // 100 tokens + + // First transfer tokens to internal balance + vm.prank(farmers[0]); + bs.sendTokenToInternalBalance(address(mockToken), farmers[0], transferAmount); + + // Initial balances after internal transfer + uint256 initialFarmer0Balance = IERC20(address(mockToken)).balanceOf(farmers[0]); + + // Transfer tokens from internal balance to external balance for farmer[0] + // Assert that the internal transfer token hook is called + vm.prank(farmers[0]); + vm.expectEmit(true, true, true, true); + emit InternalTransferTokenHookCalled(farmers[0], farmers[0], transferAmount); + emit TokenHookCalled( + address(mockToken), // token + address(mockToken), // target + mockToken.internalTransferUpdate.selector // selector + ); + bs.transferInternalTokenFrom( + address(mockToken), + farmers[0], + farmers[0], + transferAmount, + uint8(LibTransfer.To.EXTERNAL) + ); + + // Verify balances after transfer + assertEq( + IERC20(address(mockToken)).balanceOf(farmers[0]), + initialFarmer0Balance + transferAmount + ); + assertEq(bs.getInternalBalance(farmers[0], address(mockToken)), 0); + } + /** * @notice Tests that the token hook admin functions revert for non-owners. */ From e7a55edacf0306596a32e4d03860565e1dbe5e7f Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 27 Aug 2025 07:57:24 +0000 Subject: [PATCH 065/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../beanstalk/facets/farm/TokenHookFacet.sol | 3 +-- .../init/shipments/InitBeanstalkShipments.sol | 18 ++++++++------- contracts/interfaces/IMockFBeanstalk.sol | 5 +---- contracts/mocks/MockTokenWithHook.sol | 6 ++++- .../BeanstalkShipmentsState.t.sol | 22 ++++++++++++++----- test/foundry/token/TokenHook.t.sol | 2 +- 6 files changed, 35 insertions(+), 21 deletions(-) diff --git a/contracts/beanstalk/facets/farm/TokenHookFacet.sol b/contracts/beanstalk/facets/farm/TokenHookFacet.sol index 623663e4..79e84ca7 100644 --- a/contracts/beanstalk/facets/farm/TokenHookFacet.sol +++ b/contracts/beanstalk/facets/farm/TokenHookFacet.sol @@ -15,7 +15,6 @@ import {TokenHook} from "contracts/beanstalk/storage/System.sol"; * @notice Manages the pre-transfer hook whitelist for internal token transfers. */ contract TokenHookFacet is Invariable, ReentrancyGuard { - /** * @notice Registers a pre-transfer hook for a specific token. * @param token The token address to register the hook for. @@ -69,4 +68,4 @@ contract TokenHookFacet is Invariable, ReentrancyGuard { function getTokenHook(address token) external view returns (TokenHook memory) { return LibTokenHook.getTokenHook(token); } -} \ No newline at end of file +} diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index 23b4270a..f13ffce8 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -16,10 +16,9 @@ import {LibTokenHook} from "contracts/libraries/Token/LibTokenHook.sol"; * The first route is the silo payback contract and the second route is the barn payback contract. **/ contract InitBeanstalkShipments { - uint256 constant REPAYMENT_FIELD_ID = 1; - /// @dev total length of the podline. + /// @dev total length of the podline. // The largest index in beanstalk_field.json incremented by the corresponding amount. uint256 constant REPAYMENT_FIELD_PODS = 919768387056514; @@ -56,7 +55,7 @@ contract InitBeanstalkShipments { require(s.sys.fieldCount == 1, "Repayment field already exists"); uint256 fieldId = s.sys.fieldCount; s.sys.fieldCount++; - // init global state for new field, + // init global state for new field, // harvestable and harvested vars are 0 since we shifted all plots in the data to start from 0 s.sys.fields[REPAYMENT_FIELD_ID].pods = REPAYMENT_FIELD_PODS; emit FieldAdded(fieldId); @@ -67,10 +66,13 @@ contract InitBeanstalkShipments { */ function _addSiloPaybackHook(address siloPayback) internal { AppStorage storage s = LibAppStorage.diamondStorage(); - LibTokenHook.whitelistHook(siloPayback, TokenHook({ - target: address(siloPayback), - selector: ISiloPayback.protocolUpdate.selector, - encodeType: 0x00 - })); + LibTokenHook.whitelistHook( + siloPayback, + TokenHook({ + target: address(siloPayback), + selector: ISiloPayback.protocolUpdate.selector, + encodeType: 0x00 + }) + ); } } diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 0eb99ea8..c7ed5f17 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1926,10 +1926,7 @@ interface IMockFBeanstalk { function setPenaltyRatio(uint256 penaltyRatio) external; - function whitelistTokenHook( - address token, - TokenHook memory hook - ) external payable; + function whitelistTokenHook(address token, TokenHook memory hook) external payable; function dewhitelistTokenHook(address token) external payable; diff --git a/contracts/mocks/MockTokenWithHook.sol b/contracts/mocks/MockTokenWithHook.sol index a28b73fe..22f48d0e 100644 --- a/contracts/mocks/MockTokenWithHook.sol +++ b/contracts/mocks/MockTokenWithHook.sol @@ -19,7 +19,11 @@ contract MockTokenWithHook is ERC20, ERC20Burnable { string private _symbol = "MOCK"; string private _name = "MockToken"; - constructor(string memory name, string memory __symbol, address _protocol) ERC20(name, __symbol) { + constructor( + string memory name, + string memory __symbol, + address _protocol + ) ERC20(name, __symbol) { protocol = _protocol; } diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index e09df679..515908e8 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -346,7 +346,7 @@ contract BeanstalkShipmentsStateTest is TestHelper { for (uint256 i = 0; i < accountNumber; i++) { account = vm.readLine(BARN_ADDRESSES_PATH); address accountAddr = vm.parseAddress(account); - + // skip contract accounts if (isContract(accountAddr)) { totalContractAccounts++; @@ -393,9 +393,21 @@ contract BeanstalkShipmentsStateTest is TestHelper { */ function test_siloPaybackHook() public { assertEq(pinto.hasTokenHook(SILO_PAYBACK), true, "Silo payback hook not whitelisted"); - assertEq(pinto.getTokenHook(SILO_PAYBACK).target, SILO_PAYBACK, "Silo payback hook target mismatch"); - assertEq(pinto.getTokenHook(SILO_PAYBACK).selector, ISiloPayback.protocolUpdate.selector, "Silo payback hook selector mismatch"); - assertEq(pinto.getTokenHook(SILO_PAYBACK).encodeType, 0x00, "Silo payback hook encode type mismatch"); + assertEq( + pinto.getTokenHook(SILO_PAYBACK).target, + SILO_PAYBACK, + "Silo payback hook target mismatch" + ); + assertEq( + pinto.getTokenHook(SILO_PAYBACK).selector, + ISiloPayback.protocolUpdate.selector, + "Silo payback hook selector mismatch" + ); + assertEq( + pinto.getTokenHook(SILO_PAYBACK).encodeType, + 0x00, + "Silo payback hook encode type mismatch" + ); } //////////////////// Helper Functions //////////////////// @@ -471,4 +483,4 @@ contract BeanstalkShipmentsStateTest is TestHelper { } return size > 0; } -} \ No newline at end of file +} diff --git a/test/foundry/token/TokenHook.t.sol b/test/foundry/token/TokenHook.t.sol index cb41d400..51f8f6bb 100644 --- a/test/foundry/token/TokenHook.t.sol +++ b/test/foundry/token/TokenHook.t.sol @@ -128,7 +128,7 @@ contract TokenHookTest is TestHelper { // Initial balances uint256 initialFarmer0Balance = IERC20(address(mockToken)).balanceOf(farmers[0]); - + // Transfer tokens from external balance to internal balance for farmer[0] // Assert that the internal transfer token hook is called (since this goes through internal transfer logic) vm.prank(farmers[0]); From 6eca340420f4d57dac85432ea8e8cb23d119e63b Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 27 Aug 2025 11:19:25 +0300 Subject: [PATCH 066/270] move hook facet init to final diamond cut, update event signatures --- .../ecosystem/beanstalkShipments/SiloPayback.sol | 13 +++++++++---- .../ContractPaybackDistributor.sol | 1 + hardhat.config.js | 5 ++--- .../ecosystem/beanstalkShipments/SiloPayback.t.sol | 2 +- 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 96bf86f6..3fb2fb04 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -35,9 +35,14 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { mapping(address => uint256) public rewards; // Events - event Claimed(address indexed user, uint256 amount, LibTransfer.To toMode); - event SiloPaybackRewardsReceived(uint256 amount, uint256 newIndex); - event UnripeBdvTokenMinted(address indexed user, uint256 amount); + event SiloPaybackRewardsClaimed( + address indexed account, + address indexed recipient, + uint256 amount, + LibTransfer.To toMode + ); + event SiloPaybackRewardsReceived(uint256 amount, uint256 newRewardsIndex); + event UnripeBdvTokenMinted(address indexed receipient, uint256 amount); // Modifiers modifier onlyPintoProtocol() { @@ -120,7 +125,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { toMode ); - emit Claimed(account, rewardsToClaim, toMode); + emit SiloPaybackRewardsClaimed(account, recipient, rewardsToClaim, toMode); } /** diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index cc73b9cf..c1533c55 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -27,6 +27,7 @@ import {IERC1155Receiver} from "@openzeppelin/contracts/token/ERC1155/IERC1155Re * 2. Send a cross chain message from Ethereum L1 using the cross chain messenger that when * received, calls claimFromMessage and receive their assets in an address of their choice * + * 3. If an account has just delegated its code to a contract, they can just call claimDirect() and receive their assets. */ contract ContractPaybackDistributor is ReentrancyGuard, IERC1155Receiver { using SafeERC20 for IERC20; diff --git a/hardhat.config.js b/hardhat.config.js index 3767b73b..5aed0967 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2089,7 +2089,7 @@ task( ////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// task( "deployTempFieldFacetAndTokenHookFacet", - "deploys the TempFieldFacet and TokenHookFacet contracts" + "deploys the TempFieldFacet" ).setAction(async (taskArgs) => { // params const mock = true; @@ -2100,7 +2100,6 @@ task( ); console.log("-".repeat(50)); - // Todo: add the TokenHookFacet here with init script to whitelist the silo payback hook await upgradeWithNewFacets({ diamondAddress: L2_PINTO, facetNames: ["TempRepaymentFieldFacet"], @@ -2169,7 +2168,7 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio await upgradeWithNewFacets({ diamondAddress: L2_PINTO, - facetNames: ["SeasonFacet"], + facetNames: ["SeasonFacet", "TokenHookFacet"], libraryNames: [ "LibEvaluate", "LibGauge", diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index 161661a7..965c0ebb 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -561,7 +561,7 @@ contract SiloPaybackTest is TestHelper { vm.startPrank(sender); IERC20(address(siloPayback)).approve(address(bs), amount); // if from internal and to internal, expect pre transfer hook event to be emitted - if (fromMode == LibTransfer.From.INTERNAL && toMode == LibTransfer.To.INTERNAL) { + if (fromMode == LibTransfer.From.INTERNAL || toMode == LibTransfer.To.INTERNAL) { vm.expectEmit(true, true, true, true); emit TokenHookCalled( address(siloPayback), From 161b63665bc45349d85663702bcb4157ee5e5771 Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 27 Aug 2025 12:07:12 +0300 Subject: [PATCH 067/270] fix yield claims on transfer for fertilizer --- .../beanstalkShipments/barn/BarnPayback.sol | 6 +- .../barn/BeanstalkFertilizer.sol | 13 +++- .../beanstalkShipments/BarnPayback.t.sol | 77 ++++++++++++------- 3 files changed, 62 insertions(+), 34 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index 8b8e014f..fab09a78 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -6,7 +6,6 @@ pragma solidity ^0.8.20; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {BeanstalkFertilizer} from "./BeanstalkFertilizer.sol"; - /** * @dev BarnPayback facilitates the payback of beanstalk fertilizer holders. * Inherits from BeanstalkFertilizer that contains a copy of the beanstalk ERC-1155 fertilizer implementation. @@ -58,6 +57,7 @@ contract BarnPayback is BeanstalkFertilizer { /** * @notice Batch mints fertilizers to all accounts and initializes balances. * @dev We skip contract addresses except for the distributor address that we know implements the ERC-1155Receiver standard. + * Contract addresses will be able to use the Distributor contract to claim their fertilizers. * @param fertilizerIds Array of fertilizer data containing ids, accounts, amounts, and lastBpf. */ function mintFertilizers(Fertilizers[] calldata fertilizerIds) external onlyOwner { @@ -96,7 +96,7 @@ contract BarnPayback is BeanstalkFertilizer { * Copied from LibReceiving.barnReceive on the beanstalk protocol. * @dev Rounding here can cause up to fert.activeFertilizer / 1e6 Beans to be lost. * Currently there are 17,217,105 activeFertilizer. So up to 17.217 Beans can be lost. - * @param shipmentAmount Amount of Beans to receive. + * @param shipmentAmount Amount of Beans received from shipments. */ function barnPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { uint256 amountToFertilize = shipmentAmount + fert.leftoverBeans; @@ -150,7 +150,7 @@ contract BarnPayback is BeanstalkFertilizer { uint256 amount = __update(msg.sender, ids, uint256(fert.bpf)); if (amount > 0) { fert.fertilizedPaidIndex += amount; - // Transfer the rewards to the recipient, pintos are streamed to the contract's external balance + // Transfer the rewards to the caller, pintos are streamed to the contract's external balance pintoProtocol.transferToken(pinto, msg.sender, amount, LibTransfer.From.EXTERNAL, mode); } } diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 2e15aaa9..d8d0e53a 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -294,7 +294,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran } /** - * @notice Handles state updates before a fertilizer transfer, + * @notice Updates the reward state for both the sender and recipient and transfers pinto rewards. * Following the 1155 design from OpenZeppelin Contracts < 5.x. * @param from - the account to transfer from * @param to - the account to transfer to @@ -318,6 +318,8 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran /** * @notice Calculates and transfers the rewarded beans * from a set of fertilizer ids to an account's internal balance + * @dev _update is called as a hook before token transfers so the user does not specify the transfer mode + * In this case, we use internal balance to transfer the pintos to the user by default. * @param account - the user to update * @param ids - an array of fertilizer ids * @param bpf - the beans per fertilizer @@ -326,7 +328,14 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran uint256 amount = __update(account, ids, bpf); if (amount > 0) { fert.fertilizedPaidIndex += amount; - LibTransfer.sendToken(pinto, amount, account, LibTransfer.To.INTERNAL); + // Transfer the rewards to the caller, pintos are streamed to the contract's external balance + pintoProtocol.transferToken( + pinto, + account, + amount, + LibTransfer.From.EXTERNAL, + LibTransfer.To.INTERNAL + ); } } diff --git a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol index fb1daad7..2e1dca33 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol @@ -235,41 +235,60 @@ contract BarnPaybackTest is TestHelper { } /** - * @notice Test progressive fertilizer payback until all fertilizers are inactive + * @notice Test attempting to send more payments after all fertilizers are inactive */ - function test_completePaybackFlow() public { - uint256 initialUnfertilized = barnPayback.totalUnfertilizedBeans(); - console.log("Initial unfertilized beans:", initialUnfertilized); - - // Send multiple payback amounts to gradually pay down fertilizers - uint256 paybackAmount = initialUnfertilized / 5; // Pay back 20% at a time - - for (uint i = 0; i < 5; i++) { - uint256 beforePayback = barnPayback.totalUnfertilizedBeans(); + function test_paymentAfterAllFertilizersInactive() public { + // First, make all fertilizers inactive + SystemFertilizerStruct memory initialFert = _getSystemFertilizer(); + uint256 completeRepayment = (FERT_ID_3 - initialFert.bpf + 10e6) * + initialFert.activeFertilizer; - vm.prank(address(BEANSTALK)); - barnPayback.barnPaybackReceive(paybackAmount); + _sendRewardsToContract(completeRepayment); - uint256 afterPayback = barnPayback.totalUnfertilizedBeans(); - console.log("Payback round", i + 1); - console.log("totalUnfertilizedBeans Before:", beforePayback); - console.log("totalUnfertilizedBeans After:", afterPayback); + // Verify all fertilizers are inactive + SystemFertilizerStruct memory postPaymentFert = _getSystemFertilizer(); + assertEq(postPaymentFert.activeFertilizer, 0, "All fertilizers should be inactive"); - // Should steadily reduce unfertilized beans - assertLe(afterPayback, beforePayback, "Should reduce or maintain unfertilized beans"); - } + // try to send another payment, expect revert + uint256 additionalPayment = 1000e6; - // Final cleanup - send remaining amount to complete payback - uint256 remaining = barnPayback.barnRemaining(); - if (remaining > 0) { - vm.prank(address(BEANSTALK)); - barnPayback.barnPaybackReceive(remaining + 1000); // Slightly over to handle rounding - } + deal(address(BEAN), address(deployer), additionalPayment); + vm.prank(deployer); + IERC20(BEAN).transfer(address(barnPayback), additionalPayment); + vm.prank(address(BEANSTALK)); + vm.expectRevert(); + barnPayback.barnPaybackReceive(additionalPayment); + } - // Should be close to fully paid back - uint256 finalRemaining = barnPayback.barnRemaining(); - console.log("Final remaining:", finalRemaining); - assertLe(finalRemaining, initialUnfertilized / 100, "Should be mostly paid back"); // Within 1% + /** + * @notice Test that rewards are claimed to sender's internal balance on fertilizer transfer + */ + function test_rewardsClaimedOnTransfer() public { + // Send rewards to create claimable beans for FERT_ID_1 + uint256 paymentAmount = 500e6; + _sendRewardsToContract(paymentAmount); + + // Check user1 has rewards available + uint256[] memory user1Ids = new uint256[](1); + user1Ids[0] = FERT_ID_1; + uint256 pendingRewards = barnPayback.balanceOfFertilized(user1, user1Ids); + assertGt(pendingRewards, 0, "User1 should have pending rewards"); + + // Get user1's initial internal bean balance + uint256 initialBalance = IERC20(BEAN).balanceOf(user1); + + // Transfer fertilizer to another address + address recipient = makeAddr("recipient"); + vm.prank(user1); + barnPayback.safeTransferFrom(user1, recipient, FERT_ID_1, 10, ""); + + // Check that beans were transferred to user1's internal balance + uint256 finalBalance = IERC20(BEAN).balanceOf(user1); + assertEq(finalBalance, initialBalance, "Beans should be transferred to external balance"); + // user should have no more fertilized beans for these IDs + assertEq(barnPayback.balanceOfFertilized(user1, user1Ids), 0); + // user should have the pending rewards in their internal balance + assertEq(bs.getInternalBalance(user1, BEAN), pendingRewards); } ///////////////////// Helper functions ///////////////////// From bc709a49e2c68f38ea22c1185bb0c3f1a78849cf Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 27 Aug 2025 17:20:05 +0300 Subject: [PATCH 068/270] refactor contract claim initialization to dynamically take in smart contract accounts --- .../ContractPaybackDistributor.sol | 29 +- contracts/mocks/MockIsContract.sol | 22 ++ hardhat.config.js | 35 +- ...on => contractAccountDistributorInit.json} | 308 ++++++++++++++++++ ...actAccounts.json => contractAccounts.json} | 28 +- .../data/exports/accounts/field_addresses.txt | 4 - .../data/exports/accounts/silo_addresses.txt | 23 -- .../deployPaybackContracts.js | 140 ++++++-- scripts/beanstalkShipments/parsers/index.js | 20 +- .../parsers/parseContractData.js | 54 +-- 10 files changed, 547 insertions(+), 116 deletions(-) create mode 100644 contracts/mocks/MockIsContract.sol rename scripts/beanstalkShipments/data/{ethAccountDistributorInit.json => contractAccountDistributorInit.json} (70%) rename scripts/beanstalkShipments/data/{ethContractAccounts.json => contractAccounts.json} (53%) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index cc73b9cf..d4122011 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -8,6 +8,7 @@ import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; import {IERC1155Receiver} from "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol"; +import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; /** * @title ContractPaybackDistributor @@ -28,7 +29,7 @@ import {IERC1155Receiver} from "@openzeppelin/contracts/token/ERC1155/IERC1155Re * received, calls claimFromMessage and receive their assets in an address of their choice * */ -contract ContractPaybackDistributor is ReentrancyGuard, IERC1155Receiver { +contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receiver { using SafeERC20 for IERC20; // Repayment field id @@ -87,28 +88,34 @@ contract ContractPaybackDistributor is ReentrancyGuard, IERC1155Receiver { } /** - * @param _accountsData Array of account data for whitelisted contracts - * @param _contractAccounts Array of contract account addresses to whitelist * @param _pintoProtocol The pinto protocol address * @param _siloPayback The silo payback token address * @param _barnPayback The barn payback token address */ constructor( - AccountData[] memory _accountsData, - address[] memory _contractAccounts, address _pintoProtocol, address _siloPayback, address _barnPayback - ) { - require(_accountsData.length == _contractAccounts.length, "Init Array length mismatch"); + ) Ownable(msg.sender) { + PINTO_PROTOCOL = IBeanstalk(_pintoProtocol); + SILO_PAYBACK = IERC20(_siloPayback); + BARN_PAYBACK = IBarnPayback(_barnPayback); + } + + /** + * @notice Initializes the claimable assets for the contract accounts + * @param _contractAccounts The contract account addresses to whitelist + * @param _accountsData The account data for the contract accounts to whitelist + */ + function initializeAccountData( + address[] memory _contractAccounts, + AccountData[] memory _accountsData + ) external onlyOwner { + require(_contractAccounts.length == _accountsData.length, "Init Array length mismatch"); for (uint256 i = 0; i < _contractAccounts.length; i++) { require(_contractAccounts[i] != address(0), "Invalid contract account address"); accounts[_contractAccounts[i]] = _accountsData[i]; } - - PINTO_PROTOCOL = IBeanstalk(_pintoProtocol); - SILO_PAYBACK = IERC20(_siloPayback); - BARN_PAYBACK = IBarnPayback(_barnPayback); } /** diff --git a/contracts/mocks/MockIsContract.sol b/contracts/mocks/MockIsContract.sol new file mode 100644 index 00000000..de4d27b5 --- /dev/null +++ b/contracts/mocks/MockIsContract.sol @@ -0,0 +1,22 @@ + +/** + * SPDX-License-Identifier: MIT + **/ + +pragma solidity ^0.8.20; + +/** + * checks if an account is a contract using assembly + */ +contract MockIsContract { + /** + * @notice Checks if an account is a contract. + */ + function isContract(address account) public view returns (bool) { + uint size; + assembly { + size := extcodesize(account) + } + return size > 0; + } +} \ No newline at end of file diff --git a/hardhat.config.js b/hardhat.config.js index 840acce9..ef1fd9c6 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2031,6 +2031,23 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m //////////////////////// BEANSTALK SHIPMENTS //////////////////////// +////// STEP 0: PARSE EXPORT DATA ////// +task("parseExportData", "parses the export data and checks for contract addresses").setAction( + async (taskArgs) => { + const parseContracts = true; + // Step 0: Parse export data into required format + console.log("\nšŸ“Š STEP 0: PARSING EXPORT DATA"); + console.log("-".repeat(50)); + try { + await parseAllExportData(parseContracts); + console.log("āœ… Export data parsing completed"); + } catch (error) { + console.error("āŒ Failed to parse export data:", error); + throw error; + } + } +); + ////// STEP 1: DEPLOY PAYBACK CONTRACTS ////// task( "deployPaybackContracts", @@ -2043,25 +2060,9 @@ task( // params const verbose = true; const populateData = true; - const parseContracts = true; const mock = true; - // Step 0: Parse export data into required format - console.log("\nšŸ“Š STEP 0: PARSING EXPORT DATA"); - console.log("-".repeat(50)); - try { - parseAllExportData(parseContracts); - console.log("āœ… Export data parsing completed"); - - // Generate address files from parsed data - generateAddressFiles(); - console.log("āœ… Address files generation completed\n"); - } catch (error) { - console.error("āŒ Failed to parse export data:", error); - throw error; - } - - // Use the diamond deployer for dimond cuts + // Use the shipments deployer to get correct addresses let deployer; if (mock) { deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); diff --git a/scripts/beanstalkShipments/data/ethAccountDistributorInit.json b/scripts/beanstalkShipments/data/contractAccountDistributorInit.json similarity index 70% rename from scripts/beanstalkShipments/data/ethAccountDistributorInit.json rename to scripts/beanstalkShipments/data/contractAccountDistributorInit.json index 28f1a055..d3b768c2 100644 --- a/scripts/beanstalkShipments/data/ethAccountDistributorInit.json +++ b/scripts/beanstalkShipments/data/contractAccountDistributorInit.json @@ -1,5 +1,16 @@ [ { + "address": "0x00000000003e04625c9001717346dd811ae5eba2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "59368526", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x0245934a930544c7046069968eb4339b03addfcf", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "3", @@ -9,6 +20,21 @@ "plotEnds": [] }, { + "address": "0x08e0f0de1e81051826464043e7ae513457b27a86", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "648110674034173" + ], + "plotEnds": [ + "2331841959" + ] + }, + { + "address": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "1210864256332", @@ -18,6 +44,17 @@ "plotEnds": [] }, { + "address": "0x1f906ab7bd49059d29cac759bc84f9008dbf4112", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "16660261", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "79602267187", @@ -27,6 +64,7 @@ "plotEnds": [] }, { + "address": "0x251fae8f687545bdd462ba4fcdd7581051740463", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -80,6 +118,17 @@ ] }, { + "address": "0x2bf9b1b8cc4e6864660708498fb004e594efc0b8", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "5984096636", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "1918965278639", @@ -89,6 +138,37 @@ "plotEnds": [] }, { + "address": "0x2e4145a204598534ea12b772853c08e736248e7b", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x305b0ecf72634825f7231058444c65d885e1f327", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "8952303501", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x33ee1fa9ed670001d1740419192142931e088e79", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "416969887", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x36def8a94e727a0ff7b01d2f50780f0a28fb74b6", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -102,6 +182,7 @@ "plotEnds": [] }, { + "address": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "1129291156", @@ -111,6 +192,7 @@ "plotEnds": [] }, { + "address": "0x4088e870e785320413288c605fd1bd6bd9d5bdae", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -124,6 +206,17 @@ "plotEnds": [] }, { + "address": "0x40ca67ba095c038b711ad37bbebad8a586ae6f38", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1648097", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x44db0002349036164dd46a04327201eb7698a53e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "3597838114", @@ -145,6 +238,7 @@ ] }, { + "address": "0x49072cd3bf4153da87d5eb30719bb32bda60884b", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "10646036906", @@ -158,6 +252,27 @@ "plotEnds": [] }, { + "address": "0x4c366e92d46796d14d658e690de9b1f54bfb632f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3906876161", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x52d4d46e28dc72b1cef2cb8eb5ec75dd12bc4df3", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "749302147", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x542a94e6f4d9d15aae550f7097d089f273e38f85", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "1351212", @@ -171,6 +286,21 @@ "plotEnds": [] }, { + "address": "0x554b1bd47b7d180844175ca4635880da8a3c70b9", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "12894039148", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "31590227810128" + ], + "plotEnds": [ + "15764212654" + ] + }, + { + "address": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "62672894779", @@ -180,6 +310,7 @@ "plotEnds": [] }, { + "address": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "230057326178", @@ -189,6 +320,7 @@ "plotEnds": [] }, { + "address": "0x63a7255c515041fd243440e3db0d10f62f9936ae", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -202,6 +334,7 @@ "plotEnds": [] }, { + "address": "0x735cab9b02fd153174763958ffb4e0a971dd7f29", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -257,6 +390,17 @@ ] }, { + "address": "0x749461444e750f2354cf33543c941e87d747f12f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "14940730270", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -272,6 +416,7 @@ "plotEnds": [] }, { + "address": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "22023088835", @@ -293,6 +438,7 @@ ] }, { + "address": "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -306,6 +452,7 @@ "plotEnds": [] }, { + "address": "0x83a758a6a24fe27312c1f8bda7f3277993b64783", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "99437500", @@ -319,6 +466,7 @@ ] }, { + "address": "0x8525664820c549864982d4965a41f83a7d26af58", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -332,6 +480,17 @@ ] }, { + "address": "0x85789dab691cfb2f95118642d459e3301ac88aba", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "13082483", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x8a6eeb9b64eeba8d3b4404bf67a7c262c555e25b", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -351,6 +510,37 @@ ] }, { + "address": "0x8b2dbfded8802a1af686fef45dd9f7babfd936a2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "81753677", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x8bea73aac4f7ef9daded46359a544f0bb2d1364f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "882175042", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x8fe7261b58a691e40f7a21d38d27965e2d3afd6e", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "117884705851", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0x9008d19f58aabd9ed0d60971565aa8510560ab41", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "291524996", @@ -360,6 +550,7 @@ "plotEnds": [] }, { + "address": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "2852385621956", @@ -369,6 +560,7 @@ "plotEnds": [] }, { + "address": "0xaa420e97534ab55637957e868b658193b112a551", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "20754000000", @@ -382,6 +574,27 @@ ] }, { + "address": "0xae7861c80d03826837a50b45aecf11ec677f6586", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0xb1720612d0131839dc489fcf20398ea925282fca", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3827819", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0xb423a1e013812fcc9ab47523297e6be42fb6157e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", @@ -395,6 +608,21 @@ "plotEnds": [] }, { + "address": "0xb651078d1856eb206fb090fd9101f537c33589c2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "670156602457239" + ], + "plotEnds": [ + "16663047211" + ] + }, + { + "address": "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "4", @@ -944,6 +1172,21 @@ ] }, { + "address": "0xbe9998830c38910ef83e85eb33c90dd301d5516e", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "577679606726120" + ], + "plotEnds": [ + "74848126691" + ] + }, + { + "address": "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "6922721398", @@ -957,6 +1200,37 @@ "plotEnds": [] }, { + "address": "0xc08f967ed52dcffd5687b56485ee6497502ef91d", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "10098440738", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0xc1146f4a68538a35f70c70434313fef3c4456c33", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "136282377306", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0xc896e266368d3eb26219c5cc74a4941339218d86", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "22334685", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "116127823", @@ -966,6 +1240,17 @@ "plotEnds": [] }, { + "address": "0xdda42f12b8b2ccc6717c053a2b772bad24b08cbd", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "173440185", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0xdff24806405f62637e0b44cc2903f1dfc7c111cd", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "78016072001", @@ -983,6 +1268,17 @@ "plotEnds": [] }, { + "address": "0xe57384b12a2b73767cdb5d2eaddfd96cc74753a6", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "230700000", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] + }, + { + "address": "0xea3154098a58eebfa89d705f563e6c5ac924959e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "63462001011", @@ -1008,6 +1304,7 @@ ] }, { + "address": "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "1893551014", @@ -1017,6 +1314,7 @@ "plotEnds": [] }, { + "address": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "23959976085", @@ -1024,5 +1322,15 @@ "fertilizerAmounts": [], "plotIds": [], "plotEnds": [] + }, + { + "address": "0xf62405e188bb9629ed623d60b7c70dcc4e2abd81", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotEnds": [] } ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/ethContractAccounts.json b/scripts/beanstalkShipments/data/contractAccounts.json similarity index 53% rename from scripts/beanstalkShipments/data/ethContractAccounts.json rename to scripts/beanstalkShipments/data/contractAccounts.json index 6edd506d..c5f2aa8b 100644 --- a/scripts/beanstalkShipments/data/ethContractAccounts.json +++ b/scripts/beanstalkShipments/data/contractAccounts.json @@ -1,34 +1,60 @@ [ + "0x00000000003e04625c9001717346dd811ae5eba2", "0x0245934a930544c7046069968eb4339b03addfcf", + "0x08e0f0de1e81051826464043e7ae513457b27a86", "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "0x1f906ab7bd49059d29cac759bc84f9008dbf4112", "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", "0x251fae8f687545bdd462ba4fcdd7581051740463", + "0x2bf9b1b8cc4e6864660708498fb004e594efc0b8", "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "0x2e4145a204598534ea12b772853c08e736248e7b", + "0x305b0ecf72634825f7231058444c65d885e1f327", + "0x33ee1fa9ed670001d1740419192142931e088e79", "0x36def8a94e727a0ff7b01d2f50780f0a28fb74b6", "0x3f9208f556735504e985ff1a369af2e8ff6240a3", "0x4088e870e785320413288c605fd1bd6bd9d5bdae", + "0x40ca67ba095c038b711ad37bbebad8a586ae6f38", "0x44db0002349036164dd46a04327201eb7698a53e", "0x49072cd3bf4153da87d5eb30719bb32bda60884b", + "0x4c366e92d46796d14d658e690de9b1f54bfb632f", + "0x52d4d46e28dc72b1cef2cb8eb5ec75dd12bc4df3", "0x542a94e6f4d9d15aae550f7097d089f273e38f85", + "0x554b1bd47b7d180844175ca4635880da8a3c70b9", "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", "0x63a7255c515041fd243440e3db0d10f62f9936ae", "0x735cab9b02fd153174763958ffb4e0a971dd7f29", + "0x749461444e750f2354cf33543c941e87d747f12f", "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", "0x83a758a6a24fe27312c1f8bda7f3277993b64783", "0x8525664820c549864982d4965a41f83a7d26af58", + "0x85789dab691cfb2f95118642d459e3301ac88aba", "0x8a6eeb9b64eeba8d3b4404bf67a7c262c555e25b", + "0x8b2dbfded8802a1af686fef45dd9f7babfd936a2", + "0x8bea73aac4f7ef9daded46359a544f0bb2d1364f", + "0x8fe7261b58a691e40f7a21d38d27965e2d3afd6e", "0x9008d19f58aabd9ed0d60971565aa8510560ab41", "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", "0xaa420e97534ab55637957e868b658193b112a551", + "0xae7861c80d03826837a50b45aecf11ec677f6586", + "0xb1720612d0131839dc489fcf20398ea925282fca", "0xb423a1e013812fcc9ab47523297e6be42fb6157e", + "0xb651078d1856eb206fb090fd9101f537c33589c2", "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "0xbe9998830c38910ef83e85eb33c90dd301d5516e", "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", + "0xc08f967ed52dcffd5687b56485ee6497502ef91d", + "0xc1146f4a68538a35f70c70434313fef3c4456c33", + "0xc896e266368d3eb26219c5cc74a4941339218d86", "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", + "0xdda42f12b8b2ccc6717c053a2b772bad24b08cbd", "0xdff24806405f62637e0b44cc2903f1dfc7c111cd", + "0xe57384b12a2b73767cdb5d2eaddfd96cc74753a6", "0xea3154098a58eebfa89d705f563e6c5ac924959e", "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", - "0xf33332d233de8b6b1340039c9d5f3b2a04823d93" + "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", + "0xf62405e188bb9629ed623d60b7c70dcc4e2abd81" ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt b/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt index bd7415b8..46d8a37f 100644 --- a/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt +++ b/scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt @@ -239,7 +239,6 @@ 0x54201e6A63794512a6CCbe9D4397f68B37C18D5d 0x553114377d81bC47E316E238a5fE310D60a06418 0x5540D536A128F584A652aA2F82FF837BeE6f5790 -0x554B1Bd47B7d180844175cA4635880da8A3c70B9 0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5 0x558C4aFf233f17Ac0d25335410fAEa0453328da8 0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C @@ -1321,7 +1320,6 @@ 0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b 0x20627f29B05c9ecd191542677492213aA51d9A61 0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe -0xBe9998830C38910EF83e85eB33C90DD301D5516e 0xA97661df0380FF3eB6214709A6926526E38a3f68 0x37d515Fa5DC710C588B93eC67DE42068090e3ED8 0x04298C47FB301571e97496c3AE0E97711325CFaA @@ -1419,7 +1417,6 @@ 0xf454a5753C12d990A79A69729d1B541a526cD7F5 0xEa8f1607df5fd7e54BDd76a8Cb9dc4B0970089bD 0x1298751f99f2f715178Cc58fB3779C55e91C26bC -0x08e0F0DE1e81051826464043e7Ae513457B27a86 0x2E40961fd5Abd053128D2e724a61260C30715934 0x113560910CE2258559d7E1B38A4dD308C64d6D6a 0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234 @@ -1429,7 +1426,6 @@ 0x48e9E2F211371bD2462e44Af3d2d1aA610437f82 0x48070111032FE753d1a72198d29b1811825A264e 0x088374e1aDf3111F2b77Af3a06d1F9Af8298910b -0xB651078d1856EB206fB090fd9101f537c33589c2 0x377f781195d494779a6CcC2AA5C9fF961C683A27 0x4fE52118aeF6CE3916a27310019af44bbc64cc31 0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5 diff --git a/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt b/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt index 9bbe835c..7aedb018 100644 --- a/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt +++ b/scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt @@ -224,7 +224,6 @@ 0x1f3236F64Cb6878F164e3A281c2a9393e19A6D00 0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974 0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8 -0x1F906aB7Bd49059d29cac759Bc84f9008dBF4112 0x1faD27B543326E66185b7D1519C4E3d234D54A9C 0x1fC84Da8c1DFD00a7F6D0970ed779cEc0BBf9CA4 0x20798Fd64a342d1EE640348E42C14181fDC842d8 @@ -321,7 +320,6 @@ 0x2bF046A052942B53Ca6746de4D3295d8f10d4562 0x2bE9518cc2a9fc2aA15b78b92D96E0727a07DF7C 0x2BFB526403f27751d2333a866b1De0ac8D1b58e8 -0x2Bf9b1B8cc4e6864660708498FB004E594eFC0b8 0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb 0x2ca40f25ABFc9F860f8b1e8EdB689CA0645948Eb 0x2d5C566Dc54cA20028609839F88163Fd7CAD5Ea1 @@ -350,7 +348,6 @@ 0x30D3174Ce04F1E48c18B1299926029568Cf4E1D6 0x31188536865De4593040fAfC4e175E190518e4Ef 0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26 -0x305b0eCf72634825f7231058444c65D885E1f327 0x30709180d8747E5BC0bD6E1BFf51baEdAB31328D 0x30A1fbFc214D2Af0A68f6652A1d18a1b71Dfa9eA 0x3116a992bA59A1f818f69fC9C80B519C2Bb915B5 @@ -586,7 +583,6 @@ 0x4c22f22547855855B837b84cF5a73B4C875320cb 0x4C3C27eB0C01088348132d6139F6d51FC592dDBD 0x4C2b8dd251547C05188a40992843442D37eD28f2 -0x4c366E92D46796D14d658E690De9b1f54Bfb632F 0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C 0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315 0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11 @@ -636,7 +632,6 @@ 0x5270B883D12e6402a20675467e84364A2Eb542bF 0x52ccFf5c85314bbe4D9C019EE57E5B45Ad08B0Db 0x52d3aBa582A24eeB9c1210D83EC312487815f405 -0x52D4d46E28dc72b1CEf2Cb8eb5eC75Dd12BC4dF3 0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910 0x52E03B19b1919867aC9fe7704E850287FC59d215 0x538c3fe98a11FBA5d7c70FD934C7299BffCFe4De @@ -653,7 +648,6 @@ 0x553114377d81bC47E316E238a5fE310D60a06418 0x55493d2bf0860B23a6789E9BEfF8D03CE03911cd 0x5533764Fd38812e5c14a858ce4f0fb810b6dc85a -0x554B1Bd47B7d180844175cA4635880da8A3c70B9 0x558C4aFf233f17Ac0d25335410fAEa0453328da8 0x562f223a5847DaAe5Faa56a0883eD4d5e8EE0EE0 0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5 @@ -890,7 +884,6 @@ 0x7463154a39d8F6adc38fFC3f614a9f32E63a1735 0x743025F4e7f64137137ca18567cd342b443a0aa5 0x74730D48B5aAD8F7d70Ba0b27c3f7d3aA353A64A -0x749461444e750F2354Cf33543C941e87d747f12f 0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347 0x73C91af57C657DfD05a31DAcA7Bff1aEb5754629 0x74Bcf1a4c12Fc240773102C76Ea433502c188d84 @@ -1032,7 +1025,6 @@ 0x853AebEc29B1DABA31de05aD58738Ed1507D3b82 0x85312D6a50928F3ffC7a192444601E6E04A428a2 0x85971eb6073d28edF8f013221071bDBB9DEdA1af -0x85789daB691cFb2f95118642d459E3301aC88ABA 0x85Eada0D605d905262687Ad74314bc95837dB4F9 0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008 0x85d365405dFCfEeCDBD88A7c63476Ff976943C89 @@ -1084,7 +1076,6 @@ 0x8afcd552709BAC70a470EC1d137D535BFa4FAdEE 0x8AD30D5e981b4F7207A52Ed61B16639D02aA5a21 0x8aC9DB9c51e0d077a2FA432868EaFd02d9142d53 -0x8b2DbfDeD8802A1AF686FeF45Dd9f7BABfd936a2 0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF 0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048 0x8b8Bd62E0729692B7400137B6bBC815c2cE07bcF @@ -1095,7 +1086,6 @@ 0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612 0x8be275DE1AF323ec3b146aB683A3aCd772A13648 0x8Bb62eF3fdB47bB7c60e7bcdF3AA79d969a8bE9C -0x8Bea73Aac4F7EF9dadeD46359A544F0BB2d1364F 0x8BB07e694B421433c9545C0F3d75d99cc763d74A 0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE 0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1 @@ -1146,7 +1136,6 @@ 0x8Fe316B09c8F570Fd00F1172665d1327a2c74c7E 0x90F15E09B8Fb5BC080B968170C638920Db3A3446 0x90Fe1AD4F312DCCE621389fc73A06dCcfD923211 -0x8fE7261B58A691e40F7A21D38D27965E2d3AFd6E 0x912Bf1C92e0A6D9c81dA5E8cDC86250b9c7D501b 0x912F852EB064C6cD74037B76987a8D4a8877F428 0x91e795eB6a2307eDe1A0eeDe84e6F0914f60a9C3 @@ -1521,7 +1510,6 @@ 0xbFE4ec1b5906d4be89C3F6942d1C6B04b19DE79e 0xC02a0918E0c47b36c06BE0d1A93737B37582DaBb 0xc06320d9028F851c6cE46e43F04aFF0A426F446c -0xc08F967ED52dCFfD5687b56485eE6497502ef91d 0xBF912CB4d1c3f93e51622fAe0bfa28be1B4b6C6c 0xC09dc9d451D051d63DDef9A4f4365fBfAC65a22B 0xc0985b8b744C63e23e4923264eFfaC7535E44f21 @@ -1530,7 +1518,6 @@ 0xC0eC0e2a7f526b2eBF5a7e199Ff776a019f012c8 0xc0e2324817EaefD075aF9f9fAF52FFaef45d0c04 0xc10535D71513ab2abDF192DFDAa2a3e94134b377 -0xc1146f4A68538a35f70c70434313FeF3C4456C33 0xc16Aa2E25F2868fea5C33E6A0b276dcE7EE1eE47 0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D 0xC0f55956e8D939D979b8B86a8Ae003D9CD9713ae @@ -1604,7 +1591,6 @@ 0xC852848A0e66200ce31AD5Db9cE3bC5d53918112 0xC83F16A4076a9F73897f21Ac9E9663c23D35743c 0xc84C19Bbf07d0CB7CC430fC3C51173c4ACD5dD9D -0xc896E266368D3Eb26219C5cc74A4941339218d86 0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40 0xC8292ebB037E9da0a0Ecfd5e81C45A1971DcF9F1 0xC7ED443D168A21f85e0336aa1334208e8Ee55C68 @@ -1972,7 +1958,6 @@ 0xf58F3DBB422624FE0Dd9E67dE9767c149Bf04fdd 0xf581e462DcA3Ea12fea1488E62D562deFd06e7C3 0xF5Aebb3bFA1d7310EA3e6607669e59c4964B2013 -0xF62405e188Bb9629eD623d60B7c70dCc4e2ABd81 0xF5Ca1b4F227257B5367515498B38908d593E1EBe 0xf62dC438Cd36b0E51DE92808382d040883f5A2d3 0xf662972FF1a9D77DcdfBa640c1D01Fa9d6E4Fb73 @@ -2082,7 +2067,6 @@ 0xd8388Ad2fF4C781903b6D9F17A60Daf4e919f2ce 0x9B0f5cCC13fa9fc22AB6C4766e419BB2A881eb1B 0xa86e29ad86D690f8b5a6A632cAb8405D40A319Fa -0x40ca67bA095c038B711AD37BbebAd8a586ae6f38 0xf2f65A8a44f0Bb1a634A85b1a4eb4be4D69769B6 0x4b9184dF8FA9f3Fc008fcdE7e7bbf7208eF5118d 0xdFD6475eea9D67942ceb6c6ea09Cd500D4BE36b0 @@ -2150,7 +2134,6 @@ 0x2C90f88BE812349fdD5655c9bAd8288c03E7fB23 0x21503C7F8D1C9407cB0D27de13CC95A05F13373A 0x2F6e6687FA7F1c8cBBDf5cf5b44A94a43081621c -0x2e4145A204598534EA12b772853C08E736248E7B 0x34a370d288734d23bC48A926Cad90A6615abe4e3 0x36991C5863Ead2d72C2b506966d1db72C2C6C6DF 0x4096E95da697Bd6F7c32E966b7b75F4d1f2817eA @@ -2184,11 +2167,9 @@ 0xC8ABB314C6FdE10d1679a2ab6f4BDffA462e990D 0xD20B976584bF506BAf5cC604D1f0A1B8D07138dA 0xdeFecffBEA31b18B14703e10Ac81da2Ed8C5762A -0xddA42f12B8B2ccc6717c053A2b772baD24B08CbD 0xc93678EC2b974a7aE280341cEFeb85984a29FFF7 0xBF330a4028B0F2a01B336Df23Bc27DeFb4EddAD1 0xD300f2C6Ee9dA84b1dD8E3e24FF5Ae875772b55e -0xe57384b12A2b73767cDb5d2eadDFD96cC74753a6 0xeb11255b15600390e60a7aa1FBe1C821F6D0FD8a 0x0000000000003f5e74C1ba8A66b48E6f3d71aE82 0xfcFAf5f45D86Fa16eC801a8DeFEd5D2cB196D242 @@ -2199,7 +2180,6 @@ 0x000000001ada84C06b7d1075f17228C34b307cFA 0x00000000500e2fece27a7600435d0C48d64E0C00 0x001AC61da3301BeFE1F94abc095Bb9732b69F362 -0x00000000003E04625c9001717346dD811AE5Eba2 0xF19e9B808Eca47dB283de76EEd94FbBf3E9FdF96 0x000000005736775Feb0C8568e7DEe77222a26880 0x00000000a1F2d3063Ed639d19a6A56be87E25B1a @@ -2331,7 +2311,6 @@ 0xa8ecAf8745C56D5935c232D2c5b83B9CD3dE1f6a 0xa2c4435F208F9c9AdB6C15bB8DB5ABb86D0daeCc 0xaef4842A2C6f44ed2D8C4BFf94451126D79A065E -0xb1720612D0131839DC489fCf20398Ea925282fCa 0xB3fCD22ffD34D75C979D49E2E5fb3a3405644831 0xb28A6de906d72b2C52A7F7D2496D2DBa2B8D02E2 0xB4310C2CAFdE76E1A0F09B01195435F4A630D48f @@ -2344,7 +2323,6 @@ 0xbc2266159a68862B44e88f72687330a4a9760D00 0xbcC7f6355bc08f6b7d3a41322CE4627118314763 0xa10FcA31A2Cb432C9Ac976779DC947CfDb003EF0 -0xAE7861C80D03826837A50b45aecF11eC677f6586 0xBefE4f86F189C1c817446B71EB6aC90e3cb68E60 0xbe7395d579cBa0E3d7813334Ff5e2d3CFe1311Ba 0xB7d691867E549C7C54C559B7fc93965403AC65dF @@ -2395,7 +2373,6 @@ 0xFe84Ced1581a0943aBEa7d57ac47E2d01D132c98 0x237B45906A501102dFdd0cDccb1Fd3D7b869CF36 0xffb100C7Ec7463191F5C29598C2259334Ea77C94 -0x33ee1FA9eD670001D1740419192142931e088e79 0x2865De63D4aBBFdaf401eD0472a605e0a8C9Fa6D 0x36CB18A75943396b526e20fde7F70B6367c70d7D 0x037C8e92AE5EB2140157af396de2c1566bf658B1 diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index f80c969f..f774090b 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -47,38 +47,25 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru //////////////////////////// Contract Payback Distributor //////////////////////////// console.log("\nšŸ“¦ Deploying ContractPaybackDistributor..."); - const contractPaybackDistributorFactory = await ethers.getContractFactory("ContractPaybackDistributor", account); - - // Load contract accounts and initialization data - const contractAccountsPath = "./scripts/beanstalkShipments/data/contractAccounts.json"; - const initDataPath = "./scripts/beanstalkShipments/data/contractAccountDistributorInit.json"; - - let contractAccounts = []; - let initData = []; - - try { - contractAccounts = JSON.parse(fs.readFileSync(contractAccountsPath)); - initData = JSON.parse(fs.readFileSync(initDataPath)); - console.log(`šŸ“Š Loaded ${contractAccounts.length} contract accounts for initialization`); - } catch (error) { - console.log("āš ļø No contract data found - deploying with empty initialization"); - console.log(" Run parsers with includeContracts=true to generate contract data"); - } - - // Even if a contract tries to claim before the initialization of the field is complete, - // The call will revert with a "Field: Plot not owned by user." error. + const contractPaybackDistributorFactory = await ethers.getContractFactory( + "ContractPaybackDistributor", + account + ); + const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy( - initData, // AccountData[] memory _accountsData - contractAccounts, // address[] memory _contractAccounts - L2_PINTO, // address _pintoProtocol - siloPaybackContract.address, // address _siloPayback - barnPaybackContract.address // address _barnPayback + L2_PINTO, // address _pintoProtocol + siloPaybackContract.address, // address _siloPayback + barnPaybackContract.address // address _barnPayback ); await contractPaybackDistributorContract.deployed(); - const receipt = await contractPaybackDistributorContract.deploymentTransaction().wait(); - console.log("āœ… ContractPaybackDistributor deployed to:", contractPaybackDistributorContract.address); - // log gas used - console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + console.log( + "āœ… ContractPaybackDistributor deployed to:", + contractPaybackDistributorContract.address + ); + console.log( + "šŸ‘¤ ContractPaybackDistributor owner:", + await contractPaybackDistributorContract.owner() + ); return { siloPaybackContract, @@ -152,7 +139,6 @@ async function distributeUnripeBdvTokens({ } } - // Distributes barn payback tokens from JSON file to contract recipients async function distributeBarnPaybackTokens({ barnPaybackContract, @@ -198,11 +184,93 @@ async function distributeBarnPaybackTokens({ } } +// Distributes contract account data from JSON files to contract distributor +async function distributeContractAccountData({ + contractPaybackDistributorContract, + account, + verbose = true, + targetEntriesPerChunk = 25 +}) { + if (verbose) console.log("🌱 Distributing contract account data..."); -// Transfers ownership of both payback contracts to PCM + try { + // Load contract accounts and initialization data + const contractAccountsPath = "./scripts/beanstalkShipments/data/contractAccounts.json"; + const initDataPath = "./scripts/beanstalkShipments/data/contractAccountDistributorInit.json"; + + let contractAccounts = []; + let initData = []; + + contractAccounts = JSON.parse(fs.readFileSync(contractAccountsPath)); + initData = JSON.parse(fs.readFileSync(initDataPath)); + console.log(`šŸ“Š Loaded ${contractAccounts.length} contract accounts for initialization`); + + if (contractAccounts.length === 0 || initData.length === 0) { + console.log("ā„¹ļø No contract accounts to distribute"); + return; + } + + // Verify data consistency + if (contractAccounts.length !== initData.length) { + throw new Error( + `Data mismatch: ${contractAccounts.length} addresses but ${initData.length} data entries` + ); + } + + // Split into chunks for processing + const chunks = []; + for (let i = 0; i < contractAccounts.length; i += targetEntriesPerChunk) { + const accountChunk = contractAccounts.slice(i, i + targetEntriesPerChunk); + const dataChunk = initData.slice(i, i + targetEntriesPerChunk); + chunks.push({ accounts: accountChunk, data: dataChunk }); + } + + console.log(`Starting to process ${chunks.length} chunks...`); + let totalGasUsed = ethers.BigNumber.from(0); + + for (let i = 0; i < chunks.length; i++) { + if (verbose) { + console.log(`\n\nProcessing chunk ${i + 1}/${chunks.length}`); + console.log(`Chunk contains ${chunks[i].accounts.length} contract accounts`); + console.log("-----------------------------------"); + } + + await retryOperation(async () => { + // Remove address field from data before contract call (contract doesn't expect this field) + const dataForContract = chunks[i].data.map((accountData) => { + const { address, ...dataWithoutAddress } = accountData; + return dataWithoutAddress; + }); + + // Initialize contract account data in chunks + const tx = await contractPaybackDistributorContract + .connect(account) + .initializeAccountData(chunks[i].accounts, dataForContract); + const receipt = await tx.wait(); + totalGasUsed = totalGasUsed.add(receipt.gasUsed); + if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); + }); + + await updateProgress(i + 1, chunks.length); + } + + if (verbose) { + console.log("\nšŸ“Š Total Gas Summary:"); + console.log(`⛽ Total gas used: ${totalGasUsed.toString()}`); + } + + if (verbose) console.log("āœ… Contract account data distributed to ContractPaybackDistributor"); + } catch (error) { + console.error("Error distributing contract account data:", error); + throw error; + } +} + +// Transfers ownership of payback contracts to PCM async function transferContractOwnership({ siloPaybackContract, barnPaybackContract, + contractPaybackDistributorContract, L2_PCM, verbose = true }) { @@ -213,6 +281,9 @@ async function transferContractOwnership({ await barnPaybackContract.transferOwnership(L2_PCM); if (verbose) console.log("āœ… BarnPayback ownership transferred to PCM"); + + await contractPaybackDistributorContract.transferOwnership(L2_PCM); + if (verbose) console.log("āœ… ContractPaybackDistributor ownership transferred to PCM"); } // Main function that orchestrates all deployment steps @@ -234,11 +305,17 @@ async function deployAndSetupContracts(params) { verbose: true }); + await distributeContractAccountData({ + contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, + account: params.account, + verbose: true + }); } await transferContractOwnership({ siloPaybackContract: contracts.siloPaybackContract, barnPaybackContract: contracts.barnPaybackContract, + contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, L2_PCM: params.L2_PCM, verbose: true }); @@ -250,6 +327,7 @@ module.exports = { deployShipmentContracts, distributeUnripeBdvTokens, distributeBarnPaybackTokens, + distributeContractAccountData, transferContractOwnership, deployAndSetupContracts }; diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 01439927..ce5db424 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -4,19 +4,25 @@ const parseSiloData = require('./parseSiloData'); const parseContractData = require('./parseContractData'); const fs = require('fs'); const path = require('path'); -const { ethers } = require("hardhat"); /** * Detects which addresses have associated contract code on the active hardhat network + * We use a helper contract "MockIsContract" to check if an address is a contract to replicate + * the check in the fertilizer distirbution to avoid false positives. */ async function detectContractAddresses(addresses) { console.log(`Checking ${addresses.length} addresses for contract code...`); const contractAddresses = []; + + // deploy the contract that checks if an address is a contract + const MockIsContract = await ethers.getContractFactory("MockIsContract"); + const mockIsContract = await MockIsContract.deploy(); + await mockIsContract.deployed(); for (const address of addresses) { try { - const code = await ethers.provider.getCode(address); - if (code.length > 2) { + const isContract = await mockIsContract.isContract(address); + if (isContract) { contractAddresses.push(address.toLowerCase()); } } catch (error) { @@ -30,9 +36,8 @@ async function detectContractAddresses(addresses) { /** * Main parser orchestrator that runs all parsers - * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs */ -async function parseAllExportData(parseContracts = false) { +async function parseAllExportData(parseContracts) { console.log('Starting export data parsing...'); console.log(`Include contracts: ${parseContracts}`); @@ -67,17 +72,18 @@ async function parseAllExportData(parseContracts = false) { /** * Generates address files from the parsed JSON export data * Reads the JSON files and extracts addresses to text files + * Used in foundry fork tests for the shipments */ async function generateAddressFiles() { console.log('Generating address files from export data...'); try { - // Define excluded addresses + // Define excluded addresses that have almost 0 BDV and no other assets const excludedAddresses = [ '0x0245934a930544c7046069968eb4339b03addfcf', '0x4df59c31a3008509B3C1FeE7A808C9a28F701719' ]; - + // Define file paths const dataDir = path.join(__dirname, '../data/exports'); const accountsDir = path.join(dataDir, 'accounts'); diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js index dc8ad07a..21cfd807 100644 --- a/scripts/beanstalkShipments/parsers/parseContractData.js +++ b/scripts/beanstalkShipments/parsers/parseContractData.js @@ -6,11 +6,8 @@ const path = require('path'); * * Expected output format: * contractAccountDistributorInit.json: Array of AccountData objects for contract initialization - * - * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs - * @param {Function} detectContractAddresses - Function to detect contract addresses */ -async function parseContractData(includeContracts = false, detectContractAddresses = null) { +async function parseContractData(includeContracts, detectContractAddresses) { if (!includeContracts) { return { contractAccounts: [], @@ -76,13 +73,13 @@ async function parseContractData(includeContracts = false, detectContractAddress // Build contract data for each address, merging data from different cases - const contractAccounts = []; const accountDataArray = []; for (const normalizedAddress of allContractAddresses) { - // Initialize AccountData structure (matching contract format) + // Initialize AccountData structure (matching contract format) with address field const accountData = { + address: normalizedAddress, // Include the contract address in the data whitelisted: true, claimed: false, siloPaybackTokensOwed: "0", @@ -116,7 +113,7 @@ async function parseContractData(includeContracts = false, detectContractAddress const allSiloEntries = [...siloEntries, ...siloArbEntries]; let totalSiloBdv = BigInt(0); - for (const [originalAddr, siloData] of allSiloEntries) { + for (const [, siloData] of allSiloEntries) { if (siloData && siloData.bdvAtRecapitalization && siloData.bdvAtRecapitalization.total) { totalSiloBdv += BigInt(siloData.bdvAtRecapitalization.total); } @@ -131,7 +128,7 @@ async function parseContractData(includeContracts = false, detectContractAddress const allBarnEntries = [...barnEntries, ...barnArbEntries]; const fertilizerMap = new Map(); // fertId -> total amount - for (const [originalAddr, barnData] of allBarnEntries) { + for (const [, barnData] of allBarnEntries) { if (barnData && barnData.beanFert) { for (const [fertId, amount] of Object.entries(barnData.beanFert)) { const currentAmount = fertilizerMap.get(fertId) || BigInt(0); @@ -152,7 +149,7 @@ async function parseContractData(includeContracts = false, detectContractAddress const allFieldEntries = [...fieldEntries, ...fieldArbEntries]; const plotMap = new Map(); // plotIndex -> total pods - for (const [originalAddr, fieldData] of allFieldEntries) { + for (const [, fieldData] of allFieldEntries) { if (fieldData) { for (const [plotIndex, pods] of Object.entries(fieldData)) { const currentPods = plotMap.get(plotIndex) || BigInt(0); @@ -175,18 +172,18 @@ async function parseContractData(includeContracts = false, detectContractAddress accountData.plotIds.length > 0; if (hasAssets) { - contractAccounts.push(normalizedAddress); accountDataArray.push(accountData); } } // Sort by contract address for deterministic output - const sortedData = contractAccounts - .map((address, index) => ({ address, data: accountDataArray[index] })) - .sort((a, b) => a.address.localeCompare(b.address)); + const sortedAccountData = accountDataArray.sort((a, b) => a.address.localeCompare(b.address)); + + // Extract addresses for contractAccounts.json + const finalContractAccounts = sortedAccountData.map(data => data.address); - const finalContractAccounts = sortedData.map(item => item.address); - const finalAccountData = sortedData.map(item => item.data); + // Keep address field for contractAccountDistributorInit.json + const finalAccountData = sortedAccountData; // Calculate statistics const totalContracts = finalContractAccounts.length; @@ -195,13 +192,24 @@ async function parseContractData(includeContracts = false, detectContractAddress const totalPlots = finalAccountData.reduce((sum, data) => sum + data.plotIds.length, 0); // Write output files - fs.writeFileSync(outputAccountsPath, JSON.stringify(finalContractAccounts, null, 2)); - fs.writeFileSync(outputInitPath, JSON.stringify(finalAccountData, null, 2)); + try { + fs.writeFileSync(outputAccountsPath, JSON.stringify(finalContractAccounts, null, 2)); + fs.writeFileSync(outputInitPath, JSON.stringify(finalAccountData, null, 2)); + console.log(`āœ… Successfully wrote contract data files:`); + console.log(` - contractAccounts.json: ${finalContractAccounts.length} addresses`); + console.log(` - contractAccountDistributorInit.json: ${finalAccountData.length} account data entries`); + } catch (error) { + console.error(`āŒ Error writing contract data files:`, error); + throw error; + } - console.log(`Contracts with assets: ${totalContracts}`); - console.log(`Total silo tokens owed: ${totalSiloTokens.toString()}`); - console.log(`Total fertilizer entries: ${totalFertilizers}`); - console.log(`Total plot entries: ${totalPlots}`); + console.log(`\nšŸ“Š Contract Processing Summary:`); + console.log(` - Contracts with assets: ${totalContracts}`); + console.log(` - Total silo tokens owed: ${totalSiloTokens.toString()}`); + console.log(` - Total fertilizer entries: ${totalFertilizers}`); + console.log(` - Total plot entries: ${totalPlots}`); + console.log(` - ethContracts processed: ${Object.keys(siloEthContracts).length + Object.keys(barnEthContracts).length + Object.keys(fieldEthContracts).length}`); + console.log(` - Detected contract accounts: ${detectedContractAccounts.length}`); return { contractAccounts: finalContractAccounts, @@ -211,7 +219,9 @@ async function parseContractData(includeContracts = false, detectContractAddress totalSiloTokens: totalSiloTokens.toString(), totalFertilizers, totalPlots, - includeContracts + includeContracts, + ethContractsProcessed: Object.keys(siloEthContracts).length + Object.keys(barnEthContracts).length + Object.keys(fieldEthContracts).length, + detectedContracts: detectedContractAccounts.length } }; } From e19a5685a360f1c7e4eb9bc920623b58d293c57a Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 27 Aug 2025 17:57:03 +0300 Subject: [PATCH 069/270] add comments on deployment steps --- hardhat.config.js | 104 ++++++++++++++++++++------------ test/hardhat/utils/constants.js | 2 +- 2 files changed, 68 insertions(+), 38 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index ef1fd9c6..5ed02add 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2031,7 +2031,49 @@ task("facetAddresses", "Displays current addresses of specified facets on Base m //////////////////////// BEANSTALK SHIPMENTS //////////////////////// +////// PRE-DEPLOYMENT: DEPLOY L1 CONTRACT MESSENGER ////// +// As a backup solution, ethAccounts will be able to send a message on the L1 to claim their assets on the L2 +// from the L2 ContractPaybackDistributor contract. We deploy the L1ContractMessenger contract on the L1 +// and whitelist the ethAccounts that are eligible to claim their assets. +// Make sure account[0] in the hardhat config for mainnet is the L1_CONTRACT_MESSENGER_DEPLOYER at 0xbfb5d09ffcbe67fbed9970b893293f21778be0a6 +// - npx hardhat deployL1ContractMessenger --network mainnet +task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction( + async (taskArgs) => { + const mock = true; + let deployer; + if (mock) { + deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + // log deployer address + console.log("Deployer address:", deployer.address); + + // read the contract accounts from the json file + const contractAccounts = JSON.parse( + fs.readFileSync("./scripts/beanstalkShipments/data/contractAccounts.json") + ); + + const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); + const l1Messenger = await L1Messenger.deploy( + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, + contractAccounts + ); + await l1Messenger.deployed(); + + console.log("L1ContractMessenger deployed to:", l1Messenger.address); + } +); + ////// STEP 0: PARSE EXPORT DATA ////// +// Run this task prior to deploying the contracts on a local fork at the latest base block to +// dynamically identify EOAs that have contract code due to contract code delegation. +// Spin up a local anvil node: +// - anvil --fork-url --chain-id 1337 --no-rate-limit --threads 0 +// Run the parseExportData task: +// - npx hardhat parseExportData --network localhost task("parseExportData", "parses the export data and checks for contract addresses").setAction( async (taskArgs) => { const parseContracts = true; @@ -2049,14 +2091,14 @@ task("parseExportData", "parses the export data and checks for contract addresse ); ////// STEP 1: DEPLOY PAYBACK CONTRACTS ////// +// Deploy and initialize the payback contracts and the ContractPaybackDistributor contract +// Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER at 0x47c365cc9ef51052651c2be22f274470ad6afc53 +// Set mock to false to deploy the payback contracts on base. +// - npx hardhat deployPaybackContracts --network base task( "deployPaybackContracts", "performs all actions to initialize the beanstalk shipments" ).setAction(async (taskArgs) => { - console.log("=".repeat(80)); - console.log("🌱 BEANSTALK SHIPMENTS INITIALIZATION"); - console.log("=".repeat(80)); - // params const verbose = true; const populateData = true; @@ -2087,6 +2129,11 @@ task( }); ////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// +// To minimize the number of transaction the PCM multisig has to sign, we deploy the TempFieldFacet +// that allows an EOA to add plots to the repayment field. +// Set mock to false to deploy the TempFieldFacet and TokenHookFacet on base. +// - npx hardhat deployTempFieldFacetAndTokenHookFacet --network base +// Grab the diamond cut, queue it in the multisig and wait for execution before proceeding to the next step. task( "deployTempFieldFacetAndTokenHookFacet", "deploys the TempFieldFacet and TokenHookFacet contracts" @@ -2100,10 +2147,20 @@ task( ); console.log("-".repeat(50)); + let deployer; + if (mock) { + deployer = await impersonateSigner(L2_PCM); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + // Todo: add the TokenHookFacet here with init script to whitelist the silo payback hook await upgradeWithNewFacets({ diamondAddress: L2_PINTO, facetNames: ["TempRepaymentFieldFacet"], + libraryNames: [], + facetLibraries: {}, initArgs: [], verbose: true, object: !mock, @@ -2114,6 +2171,8 @@ task( ////// STEP 3: POPULATE THE BEANSTALK FIELD WITH DATA ////// // After the initialization of the repayment field is done and the shipments have been deployed // The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed +// Set mock to false to populate the repayment field on base. +// - npx hardhat populateRepaymentField --network base task("populateRepaymentField", "populates the repayment field with data").setAction( async (taskArgs) => { // params @@ -2143,6 +2202,10 @@ task("populateRepaymentField", "populates the repayment field with data").setAct ); ////// STEP 4: FINALIZE THE BEANSTALK SHIPMENTS ////// +// The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed +// At the same time, the new shipment routes that include the payback contracts will need to be set. +// Set mock to false to finalize the beanstalk shipments on base. +// - npx hardhat finalizeBeanstalkShipments --network base task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setAction( async (taskArgs) => { // params @@ -2207,39 +2270,6 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio } ); -// As a backup solution, ethAccounts will be able to send a message on the L1 to claim their assets on the L2 -// from the L2 ContractPaybackDistributor contract. We deploy the L1ContractMessenger contract on the L1 -// and whitelist the ethAccounts that are eligible to claim their assets. -task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction( - async (taskArgs) => { - const mock = true; - let deployer; - if (mock) { - deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[0]; - } - - // log deployer address - console.log("Deployer address:", deployer.address); - - // read the contract accounts from the json file - const contractAccounts = JSON.parse( - fs.readFileSync("./scripts/beanstalkShipments/data/contractAccounts.json") - ); - - const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); - const l1Messenger = await L1Messenger.deploy( - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, - contractAccounts - ); - await l1Messenger.deployed(); - - console.log("L1ContractMessenger deployed to:", l1Messenger.address); - } -); - //////////////////////// CONFIGURATION //////////////////////// module.exports = { diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index 7c24e319..de445f3a 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -121,7 +121,7 @@ module.exports = { RESERVES_5_PERCENT_MULTISIG: "0x4FAE5420F64c282FD908fdf05930B04E8e079770", //////////////////////// BEANSTALK SHIPMENTS //////////////////////// - // EOA That will deploy the beanstlak shipment contracts + // EOA That will deploy the beanstlak shipment related contracts on base BEANSTALK_SHIPMENTS_DEPLOYER: "0x47c365cc9ef51052651c2be22f274470ad6afc53", // Expected proxy address of the silo payback contract from deployer at nonce 1 BEANSTALK_SILO_PAYBACK: "0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E", From a4204b5c9ddebd6dd23a83cce71a518851461d26 Mon Sep 17 00:00:00 2001 From: default-juice Date: Wed, 27 Aug 2025 18:00:32 +0300 Subject: [PATCH 070/270] update diamond abi --- abi/Beanstalk.json | 289 ++++++++++++++++++++ scripts/beanstalkShipments/parsers/index.js | 1 - 2 files changed, 289 insertions(+), 1 deletion(-) diff --git a/abi/Beanstalk.json b/abi/Beanstalk.json index d431f3d9..dbc126b8 100644 --- a/abi/Beanstalk.json +++ b/abi/Beanstalk.json @@ -463,6 +463,31 @@ "name": "PublishRequisition", "type": "event" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + } + ], + "name": "TokenHookCalled", + "type": "event" + }, { "anonymous": false, "inputs": [ @@ -1099,6 +1124,182 @@ "stateMutability": "payable", "type": "function" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + } + ], + "name": "TokenHookRegistered", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "TokenHookRemoved", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "dewhitelistTokenHook", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "getTokenHook", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "bytes1", + "name": "encodeType", + "type": "bytes1" + } + ], + "internalType": "struct TokenHook", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "hasTokenHook", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "components": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "bytes1", + "name": "encodeType", + "type": "bytes1" + } + ], + "internalType": "struct TokenHook", + "name": "hook", + "type": "tuple" + } + ], + "name": "updateTokenHook", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "components": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "bytes1", + "name": "encodeType", + "type": "bytes1" + } + ], + "internalType": "struct TokenHook", + "name": "hook", + "type": "tuple" + } + ], + "name": "whitelistTokenHook", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, { "anonymous": false, "inputs": [ @@ -1866,6 +2067,94 @@ "stateMutability": "view", "type": "function" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "plotIndex", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "pods", + "type": "uint256" + } + ], + "name": "ReplaymentPlotAdded", + "type": "event" + }, + { + "inputs": [], + "name": "REPAYMENT_FIELD_ID", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "REPAYMENT_FIELD_POPULATOR", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "podIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "podAmounts", + "type": "uint256" + } + ], + "internalType": "struct TempRepaymentFieldFacet.Plot[]", + "name": "plots", + "type": "tuple[]" + } + ], + "internalType": "struct TempRepaymentFieldFacet.ReplaymentPlotData[]", + "name": "accountPlots", + "type": "tuple[]" + } + ], + "name": "initializeReplaymentPlots", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 01439927..c5f5a961 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -4,7 +4,6 @@ const parseSiloData = require('./parseSiloData'); const parseContractData = require('./parseContractData'); const fs = require('fs'); const path = require('path'); -const { ethers } = require("hardhat"); /** * Detects which addresses have associated contract code on the active hardhat network From 8ff3fc615e423e11e44f8a85259d19b5dd0669e0 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 28 Aug 2025 16:54:46 +0300 Subject: [PATCH 071/270] omit dynamic contracts from asset distribution, transfer ownership at the end, fix distribution tests --- hardhat.config.js | 41 ++++++- .../data/beanstalkAccountFertilizer.json | 89 ++++---------- .../data/beanstalkPlots.json | 94 +++++---------- .../data/unripeBdvTokens.json | 114 +----------------- .../deployPaybackContracts.js | 8 -- scripts/beanstalkShipments/parsers/index.js | 35 +++++- .../parsers/parseBarnData.js | 37 +++++- .../parsers/parseContractData.js | 21 +--- .../parsers/parseFieldData.js | 37 +++++- .../parsers/parseSiloData.js | 31 ++++- .../ContractDistribution.t.sol | 32 +++-- 11 files changed, 251 insertions(+), 288 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index 5ed02add..7867ed1c 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -44,7 +44,8 @@ const { populateBeanstalkField } = require("./scripts/beanstalkShipments/populateBeanstalkField.js"); const { - deployAndSetupContracts + deployAndSetupContracts, + transferContractOwnership } = require("./scripts/beanstalkShipments/deployPaybackContracts.js"); const { parseAllExportData, @@ -2070,7 +2071,7 @@ task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").se ////// STEP 0: PARSE EXPORT DATA ////// // Run this task prior to deploying the contracts on a local fork at the latest base block to // dynamically identify EOAs that have contract code due to contract code delegation. -// Spin up a local anvil node: +// Spin up a local anvil node: // - anvil --fork-url --chain-id 1337 --no-rate-limit --threads 0 // Run the parseExportData task: // - npx hardhat parseExportData --network localhost @@ -2270,6 +2271,42 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio } ); +////// STEP 5: TRANSFER OWNERSHIP OF PAYBACK CONTRACTS TO THE PCM ////// +// The deployer will need to transfer ownership of the payback contracts to the PCM +// - npx hardhat transferContractOwnership --network base +// Set mock to false to transfer ownership of the payback contracts to the PCM on base. +// The owner is the deployer account at 0x47c365cc9ef51052651c2be22f274470ad6afc53 +task( + "transferContractOwnership", + "transfers ownership of the payback contracts to the PCM" +).setAction(async (taskArgs) => { + const mock = true; + const verbose = true; + + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + const siloPaybackContract = await ethers.getContractAt("SiloPayback", BEANSTALK_SILO_PAYBACK); + const barnPaybackContract = await ethers.getContractAt("BarnPayback", BEANSTALK_BARN_PAYBACK); + const contractPaybackDistributorContract = await ethers.getContractAt( + "ContractPaybackDistributor", + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR + ); + + await transferContractOwnership({ + siloPaybackContract: siloPaybackContract, + barnPaybackContract: barnPaybackContract, + contractPaybackDistributorContract: contractPaybackDistributorContract, + L2_PCM: L2_PCM, + verbose: verbose + }); +}); + //////////////////////// CONFIGURATION //////////////////////// module.exports = { diff --git a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json index f7ca450d..321c5b4e 100644 --- a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json @@ -528,13 +528,13 @@ "340802" ], [ - "0x63a7255C515041fD243440e3db0D10f62f9936ae", - "500", + "0x02aA96e8d266Cee1411bB2ADB4D09066f2e94489", + "800", "340802" ], [ - "0x02aA96e8d266Cee1411bB2ADB4D09066f2e94489", - "800", + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "500", "340802" ] ] @@ -1352,11 +1352,6 @@ "10000", "340802" ], - [ - "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", - "1031", - "340802" - ], [ "0x17372637a937f7427871573a85e6FaC2400D147f", "1500", @@ -1366,6 +1361,11 @@ "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", "105", "340802" + ], + [ + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "1031", + "340802" ] ] ], @@ -1607,11 +1607,6 @@ "250", "340802" ], - [ - "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", - "2213", - "340802" - ], [ "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", "10055", @@ -1652,11 +1647,6 @@ "457", "340802" ], - [ - "0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6", - "130", - "340802" - ], [ "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C", "5000", @@ -1689,7 +1679,7 @@ ], [ "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", - "542767", + "545110", "340802" ] ] @@ -2812,11 +2802,6 @@ "329", "340802" ], - [ - "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", - "416", - "340802" - ], [ "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", "1990", @@ -2921,6 +2906,11 @@ "0x7e7408fdD6315e965138509d9310b384C4FD1163", "10000", "340802" + ], + [ + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "416", + "340802" ] ] ], @@ -3072,11 +3062,6 @@ "1024", "340802" ], - [ - "0x4088E870e785320413288C605FD1BD6bD9D5BDAe", - "964", - "340802" - ], [ "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", "500", @@ -3096,6 +3081,11 @@ "0x7Ac54882c1A9df477d583aDd40D1a47480F8a919", "1", "340802" + ], + [ + "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "964", + "340802" ] ] ], @@ -3172,11 +3162,6 @@ "85", "340802" ], - [ - "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", - "500", - "340802" - ], [ "0x31b6020CeF40b72D1e53562229c1F9200d00CC12", "1920", @@ -3192,11 +3177,6 @@ "223", "340802" ], - [ - "0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B", - "249", - "340802" - ], [ "0xd7bF571d4F19F63e3091Ca37E13ED395ca8e9969", "995", @@ -3249,7 +3229,7 @@ ], [ "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", - "40000", + "40749", "340802" ] ] @@ -3927,11 +3907,6 @@ "1243", "340802" ], - [ - "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", - "500", - "340802" - ], [ "0x74E096E78789F31061Fc47F6950279A55C03288c", "192", @@ -5357,11 +5332,6 @@ "523", "340802" ], - [ - "0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2", - "500", - "340802" - ], [ "0x4d498b930eD0dcBdeE385D7CBDBB292DAc0d1c91", "270", @@ -5372,11 +5342,6 @@ "468", "340802" ], - [ - "0x44db0002349036164dD46A04327201Eb7698A53e", - "444", - "340802" - ], [ "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", "780", @@ -5922,11 +5887,6 @@ "1", "340802" ], - [ - "0x542A94e6f4D9D15AaE550F7097d089f273E38f85", - "53", - "340802" - ], [ "0x3021D79Bfb91cf97B525Df72108b745Bf1071fE7", "74", @@ -5962,11 +5922,6 @@ "54", "340802" ], - [ - "0xB423A1e013812fCC9Ab47523297e6bE42Fb6157e", - "95", - "340802" - ], [ "0x1584B668643617D18321a0BEc6EF3786F4b8Eb7B", "1", @@ -6009,7 +5964,7 @@ ], [ "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", - "8104017", + "8105609", "340802" ] ] diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json index f1877fea..1ab3563d 100644 --- a/scripts/beanstalkShipments/data/beanstalkPlots.json +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -724,15 +724,6 @@ ] ] ], - [ - "0x08e0F0DE1e81051826464043e7Ae513457B27a86", - [ - [ - "648110674034173", - "2331841959" - ] - ] - ], [ "0x09147d29d27E0c8122fC0b66Ff6Ca060Cda40aDc", [ @@ -11558,23 +11549,6 @@ ] ] ], - [ - "0x44db0002349036164dD46A04327201Eb7698A53e", - [ - [ - "643938854351013", - "228851828" - ], - [ - "644373889298847", - "3084780492" - ], - [ - "768072180047322", - "2519675802" - ] - ] - ], [ "0x44E836EbFEF431e57442037b819B23fd29bc3B69", [ @@ -13774,15 +13748,6 @@ ] ] ], - [ - "0x554B1Bd47B7d180844175cA4635880da8A3c70B9", - [ - [ - "31590227810128", - "15764212654" - ] - ] - ], [ "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", [ @@ -14940,6 +14905,10 @@ "28553316405699", "56203360846" ], + [ + "31590227810128", + "15764212654" + ], [ "31772724860478", "43540239232" @@ -15032,6 +15001,10 @@ "575679606872092", "38492647384" ], + [ + "577679606726120", + "74848126691" + ], [ "626184530707078", "90718871797" @@ -15044,6 +15017,14 @@ "634034652140320", "1827630964" ], + [ + "643938854351013", + "228851828" + ], + [ + "644373889298847", + "3084780492" + ], [ "647175726076112", "16711431033" @@ -15052,6 +15033,14 @@ "647388734023467", "9748779666" ], + [ + "648110674034173", + "2331841959" + ], + [ + "670156602457239", + "16663047211" + ], [ "680095721530457", "10113856826" @@ -16152,6 +16141,10 @@ "763989323641528", "66961666112" ], + [ + "764117220398714", + "5082059700" + ], [ "764448523798789", "9214910" @@ -16184,6 +16177,10 @@ "767978192014986", "1606680000" ], + [ + "768072180047322", + "2519675802" + ], [ "790662167913055", "60917382823" @@ -21464,15 +21461,6 @@ ] ] ], - [ - "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", - [ - [ - "764117220398714", - "5082059700" - ] - ] - ], [ "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", [ @@ -27207,15 +27195,6 @@ ] ] ], - [ - "0xB651078d1856EB206fB090fd9101f537c33589c2", - [ - [ - "670156602457239", - "16663047211" - ] - ] - ], [ "0xB65a725e921f3feB83230Bd409683ff601881f68", [ @@ -27723,15 +27702,6 @@ ] ] ], - [ - "0xBe9998830C38910EF83e85eB33C90DD301D5516e", - [ - [ - "577679606726120", - "74848126691" - ] - ] - ], [ "0xbEc5c7E83Ea5D1995eA81491f71f317Eb1Affd7A", [ diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json index ec524cb2..80fc8d40 100644 --- a/scripts/beanstalkShipments/data/unripeBdvTokens.json +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -19,10 +19,6 @@ "0x00000000003b3cc22aF3aE1EAc0440BcEe416B40", "4397" ], - [ - "0x00000000003E04625c9001717346dD811AE5Eba2", - "59368526" - ], [ "0x000000001ada84C06b7d1075f17228C34b307cFA", "1100048912" @@ -1107,10 +1103,6 @@ "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", "2280746245" ], - [ - "0x1F906aB7Bd49059d29cac759Bc84f9008dBF4112", - "16660261" - ], [ "0x1Fa208031725Cc75Fe0C92D28ce3072a86e3cEFd", "601510683" @@ -1567,10 +1559,6 @@ "0x2bF046A052942B53Ca6746de4D3295d8f10d4562", "67911732801" ], - [ - "0x2Bf9b1B8cc4e6864660708498FB004E594eFC0b8", - "5984096636" - ], [ "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", "16107986711" @@ -1619,10 +1607,6 @@ "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", "9689005089" ], - [ - "0x2e4145A204598534EA12b772853C08E736248E7B", - "1" - ], [ "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", "519964010798" @@ -1703,10 +1687,6 @@ "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", "91814414968" ], - [ - "0x305b0eCf72634825f7231058444c65D885E1f327", - "8952303501" - ], [ "0x305C5E928370941BE39b76DeB770d9Be299A5fF3", "1268475699976" @@ -1827,10 +1807,6 @@ "0x33B357B809c216cA9815ff340088C11b510e3434", "499537547" ], - [ - "0x33ee1FA9eD670001D1740419192142931e088e79", - "416969887" - ], [ "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", "9" @@ -2371,10 +2347,6 @@ "0x40C5A7b9dAD9463CCf0cbaFEa05CEdA768962947", "88" ], - [ - "0x40ca67bA095c038B711AD37BbebAd8a586ae6f38", - "1648097" - ], [ "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", "51063548315" @@ -2555,10 +2527,6 @@ "0x44D812A7751AAeE2D517255794DAA3e3fc8117C2", "2896855520" ], - [ - "0x44db0002349036164dD46A04327201Eb7698A53e", - "3597838114" - ], [ "0x44E836EbFEF431e57442037b819B23fd29bc3B69", "5169298937" @@ -2683,10 +2651,6 @@ "0x48Dd5a438AaE27B27eCe5B8A3f23ba3E1Fb052F2", "14139747736" ], - [ - "0x49072cd3Bf4153DA87d5eB30719bb32bdA60884B", - "10646036906" - ], [ "0x4936c26B396858597094719A44De2deaE3b8a3c9", "17153211327" @@ -2823,10 +2787,6 @@ "0x4C2b8dd251547C05188a40992843442D37eD28f2", "326797" ], - [ - "0x4c366E92D46796D14d658E690De9b1f54Bfb632F", - "3906876161" - ], [ "0x4c37d0fdc655909cDF07404E5E001CdD0F7168Df", "226971109" @@ -3087,10 +3047,6 @@ "0x52d3aBa582A24eeB9c1210D83EC312487815f405", "715809953605" ], - [ - "0x52D4d46E28dc72b1CEf2Cb8eb5eC75Dd12BC4dF3", - "749302147" - ], [ "0x52E03B19b1919867aC9fe7704E850287FC59d215", "8878156649" @@ -3135,10 +3091,6 @@ "0x540dC960E3e10304723bEC44D20F682258e705fC", "3447381135" ], - [ - "0x542A94e6f4D9D15AaE550F7097d089f273E38f85", - "1351212" - ], [ "0x54bec524eC3F945D8945BC344B6aEC72B532B8fb", "324556450" @@ -3175,10 +3127,6 @@ "0x55493d2bf0860B23a6789E9BEfF8D03CE03911cd", "1" ], - [ - "0x554B1Bd47B7d180844175cA4635880da8A3c70B9", - "12894039148" - ], [ "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", "2474667695" @@ -3493,7 +3441,7 @@ ], [ "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", - "6488276643498" + "6901055495553" ], [ "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", @@ -4287,10 +4235,6 @@ "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", "106405367" ], - [ - "0x749461444e750F2354Cf33543C941e87d747f12f", - "14940730270" - ], [ "0x74B654D9F99cC7cdB7861faD857A6c9b46CF868C", "246992571" @@ -4959,10 +4903,6 @@ "0x853AebEc29B1DABA31de05aD58738Ed1507D3b82", "5" ], - [ - "0x85789daB691cFb2f95118642d459E3301aC88ABA", - "13082483" - ], [ "0x85971eb6073d28edF8f013221071bDBB9DEdA1af", "4742475447" @@ -5227,10 +5167,6 @@ "0x8b08CA521FFbb87263Af2C6145E173c16576802d", "8221120995" ], - [ - "0x8b2DbfDeD8802A1AF686FeF45Dd9f7BABfd936a2", - "81753677" - ], [ "0x8b3E26b83e8bb734Cd69cEC6CF1146d5a693c11F", "85166412839" @@ -5271,10 +5207,6 @@ "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", "155624277788" ], - [ - "0x8Bea73Aac4F7EF9dadeD46359A544F0BB2d1364F", - "882175042" - ], [ "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", "1416158212" @@ -5447,10 +5379,6 @@ "0x8Fe316B09c8F570Fd00F1172665d1327a2c74c7E", "42288752" ], - [ - "0x8fE7261B58A691e40F7A21D38D27965E2d3AFd6E", - "117884705851" - ], [ "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", "2" @@ -6539,10 +6467,6 @@ "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", "189330636161" ], - [ - "0xAE7861C80D03826837A50b45aecF11eC677f6586", - "1" - ], [ "0xAE94Fc8403B50E2d86A42Acc6565F8e0fa68A31B", "169035333" @@ -6651,10 +6575,6 @@ "0xB14d2eEf8df1a3C51C2c1859e10324efb58c96b6", "7191097427" ], - [ - "0xb1720612D0131839DC489fCf20398Ea925282fCa", - "3827819" - ], [ "0xB172de5C47899B7d1995549e09202f7e78971ACf", "29877" @@ -7235,10 +7155,6 @@ "0xBF912CB4d1c3f93e51622fAe0bfa28be1B4b6C6c", "34791226" ], - [ - "0xbfc7E3604c3bb518a4A15f8CeEAF06eD48Ac0De2", - "6922721398" - ], [ "0xBFc87CaD2f664d4EecAbCCA45cF1407201353978", "1695630098" @@ -7263,10 +7179,6 @@ "0xc07fd4632d5792516E2EDc25733e83B3b47ab9aa", "179268396" ], - [ - "0xc08F967ED52dCFfD5687b56485eE6497502ef91d", - "10098440738" - ], [ "0xc0985b8b744C63e23e4923264eFfaC7535E44f21", "415337740" @@ -7299,10 +7211,6 @@ "0xc10535D71513ab2abDF192DFDAa2a3e94134b377", "2" ], - [ - "0xc1146f4A68538a35f70c70434313FeF3C4456C33", - "136282377306" - ], [ "0xC13D06194E149Ea53f6c823d9446b100eED37042", "672" @@ -7639,10 +7547,6 @@ "0xC88FC1f1136c3aC5FAC38b90f64c11Fe8E704962", "311489538" ], - [ - "0xc896E266368D3Eb26219C5cc74A4941339218d86", - "22334685" - ], [ "0xC89A6f24b352d35e783ae7C330462A3f44242E89", "16990247523" @@ -8459,10 +8363,6 @@ "0xDd689D6bE86e1d4c5D8b53Fe79bDD2cA694615D9", "192861009985" ], - [ - "0xddA42f12B8B2ccc6717c053A2b772baD24B08CbD", - "173440185" - ], [ "0xdDF06174511F1467811Aa55cD6Eb4efe0DfFc2E8", "37895374472" @@ -8547,10 +8447,6 @@ "0xdfdF626Cd38e41c6F3Cc72B271fe13303A224934", "100000002" ], - [ - "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", - "78016072001" - ], [ "0xE02A25580b96BE0B9986181Fd0b4CF2b9FD75Ec2", "5" @@ -8735,10 +8631,6 @@ "0xE558619863102240058d9784a0AdF7c886Fb92fC", "79348386" ], - [ - "0xe57384b12A2b73767cDb5d2eadDFD96cC74753a6", - "230700000" - ], [ "0xe58000ce4dd92a478959a24392d43D4c100C85Fd", "41275351494" @@ -9347,10 +9239,6 @@ "0xF5Ca1b4F227257B5367515498B38908d593E1EBe", "12463111261" ], - [ - "0xF62405e188Bb9629eD623d60B7c70dCc4e2ABd81", - "2" - ], [ "0xf62dC438Cd36b0E51DE92808382d040883f5A2d3", "19980143" diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index f774090b..c83aead1 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -312,14 +312,6 @@ async function deployAndSetupContracts(params) { }); } - await transferContractOwnership({ - siloPaybackContract: contracts.siloPaybackContract, - barnPaybackContract: contracts.barnPaybackContract, - contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, - L2_PCM: params.L2_PCM, - verbose: true - }); - return contracts; } diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index ce5db424..874f62cc 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -42,19 +42,46 @@ async function parseAllExportData(parseContracts) { console.log(`Include contracts: ${parseContracts}`); const results = {}; + let detectedContractAddresses = []; try { + // Detect contract addresses once at the beginning if needed + if (parseContracts) { + console.log('\nDetecting contract addresses...'); + const fs = require('fs'); + const path = require('path'); + + // Read export data to get all arbEOA addresses + const siloData = JSON.parse(fs.readFileSync(path.join(__dirname, '../data/exports/beanstalk_silo.json'))); + const barnData = JSON.parse(fs.readFileSync(path.join(__dirname, '../data/exports/beanstalk_barn.json'))); + const fieldData = JSON.parse(fs.readFileSync(path.join(__dirname, '../data/exports/beanstalk_field.json'))); + + const allArbEOAAddresses = [ + ...Object.keys(siloData.arbEOAs || {}), + ...Object.keys(barnData.arbEOAs || {}), + ...Object.keys(fieldData.arbEOAs || {}) + ]; + + // Deduplicate addresses + const uniqueArbEOAAddresses = [...new Set(allArbEOAAddresses)]; + + // Detect which arbEOAs are actually contracts + detectedContractAddresses = await detectContractAddresses(uniqueArbEOAAddresses); + + console.log(`Found ${detectedContractAddresses.length} contract addresses in arbEOAs that will be redirected to distributor`); + } + console.log('\nProcessing barn data...'); - results.barn = parseBarnData(parseContracts); + results.barn = parseBarnData(parseContracts, detectedContractAddresses); console.log('Processing field data...'); - results.field = parseFieldData(parseContracts); + results.field = parseFieldData(parseContracts, detectedContractAddresses); console.log('Processing silo data...'); - results.silo = parseSiloData(parseContracts); + results.silo = parseSiloData(parseContracts, detectedContractAddresses); console.log('Processing contract data...'); - results.contracts = await parseContractData(parseContracts, detectContractAddresses); + results.contracts = await parseContractData(parseContracts, detectedContractAddresses); console.log('\nParsing complete'); console.log(`Barn: ${results.barn.stats.fertilizerIds} fertilizer IDs, ${results.barn.stats.accountEntries} account entries`); diff --git a/scripts/beanstalkShipments/parsers/parseBarnData.js b/scripts/beanstalkShipments/parsers/parseBarnData.js index b0f720c8..dc750803 100644 --- a/scripts/beanstalkShipments/parsers/parseBarnData.js +++ b/scripts/beanstalkShipments/parsers/parseBarnData.js @@ -9,8 +9,9 @@ const path = require('path'); * beanstalkGlobalFertilizer.json: [fertIds[], amounts[], activeFertilizer, fertilizedIndex, unfertilizedIndex, fertilizedPaidIndex, fertFirst, fertLast, bpf, leftoverBeans] * * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + * @param {string[]} detectedContractAddresses - Array of detected contract addresses to redirect to distributor */ -function parseBarnData(includeContracts = false) { +function parseBarnData(includeContracts = false, detectedContractAddresses = []) { const inputPath = path.join(__dirname, '../data/exports/beanstalk_barn.json'); const outputAccountPath = path.join(__dirname, '../data/beanstalkAccountFertilizer.json'); const outputGlobalPath = path.join(__dirname, '../data/beanstalkGlobalFertilizer.json'); @@ -55,7 +56,7 @@ function parseBarnData(includeContracts = false) { } // Reassign all ethContracts fertilizer assets to the distributor contract - for (const [ethContractAddress, ethContractData] of Object.entries(ethContracts)) { + for (const [, ethContractData] of Object.entries(ethContracts)) { if (ethContractData && ethContractData.beanFert) { // If distributor already has data, merge fertilizer data if (allAccounts[DISTRIBUTOR_ADDRESS]) { @@ -76,6 +77,38 @@ function parseBarnData(includeContracts = false) { } } + // Reassign detected contract addresses fertilizer assets to the distributor contract + for (const detectedAddress of detectedContractAddresses) { + const normalizedDetectedAddress = detectedAddress.toLowerCase(); + + // Check if this detected contract has fertilizer assets in arbEOAs that need to be redirected + const detectedContract = Object.keys(allAccounts).find(addr => addr.toLowerCase() === normalizedDetectedAddress); + + if (detectedContract && allAccounts[detectedContract] && allAccounts[detectedContract].beanFert) { + const contractData = allAccounts[detectedContract]; + + // If distributor already has data, merge fertilizer data + if (allAccounts[DISTRIBUTOR_ADDRESS]) { + if (!allAccounts[DISTRIBUTOR_ADDRESS].beanFert) { + allAccounts[DISTRIBUTOR_ADDRESS].beanFert = {}; + } + // Merge fertilizer amounts for same IDs + for (const [fertId, amount] of Object.entries(contractData.beanFert)) { + const existingAmount = parseInt(allAccounts[DISTRIBUTOR_ADDRESS].beanFert[fertId] || '0'); + const newAmount = parseInt(amount); + allAccounts[DISTRIBUTOR_ADDRESS].beanFert[fertId] = (existingAmount + newAmount).toString(); + } + } else { + allAccounts[DISTRIBUTOR_ADDRESS] = { + beanFert: { ...contractData.beanFert } + }; + } + + // Remove the detected contract from allAccounts since its assets are now redirected + delete allAccounts[detectedContract]; + } + } + // Use storage fertilizer data directly for global fertilizer const sortedFertIds = Object.keys(storageFertilizer).sort((a, b) => parseInt(a) - parseInt(b)); const fertAmounts = sortedFertIds.map(fertId => storageFertilizer[fertId]); diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js index 21cfd807..4aab91be 100644 --- a/scripts/beanstalkShipments/parsers/parseContractData.js +++ b/scripts/beanstalkShipments/parsers/parseContractData.js @@ -7,7 +7,7 @@ const path = require('path'); * Expected output format: * contractAccountDistributorInit.json: Array of AccountData objects for contract initialization */ -async function parseContractData(includeContracts, detectContractAddresses) { +async function parseContractData(includeContracts, detectedContractAddresses = []) { if (!includeContracts) { return { contractAccounts: [], @@ -40,23 +40,8 @@ async function parseContractData(includeContracts, detectContractAddresses) { console.log(`Found ethContracts - Silo: ${Object.keys(siloEthContracts).length}, Barn: ${Object.keys(barnEthContracts).length}, Field: ${Object.keys(fieldEthContracts).length}`); - // Get detected contract accounts from external function - let detectedContractAccounts = []; - - if (detectContractAddresses) { - // Get all arbEOAs addresses to check for contract code - const allArbEOAAddresses = [ - ...Object.keys(siloData.arbEOAs || {}), - ...Object.keys(barnData.arbEOAs || {}), - ...Object.keys(fieldData.arbEOAs || {}) - ]; - - // Deduplicate addresses - const uniqueArbEOAAddresses = [...new Set(allArbEOAAddresses)]; - - // Dynamically detect which arbEOAs have contract code - detectedContractAccounts = await detectContractAddresses(uniqueArbEOAAddresses); - } + // Use the already detected contract accounts passed in + const detectedContractAccounts = detectedContractAddresses; // Get all unique contract addresses and normalize to lowercase const allContractAddressesRaw = [ diff --git a/scripts/beanstalkShipments/parsers/parseFieldData.js b/scripts/beanstalkShipments/parsers/parseFieldData.js index 03f3bd4c..74f381ce 100644 --- a/scripts/beanstalkShipments/parsers/parseFieldData.js +++ b/scripts/beanstalkShipments/parsers/parseFieldData.js @@ -8,8 +8,9 @@ const path = require('path'); * beanstalkPlots.json: Array of [account, [[plotIndex, pods]]] * * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + * @param {string[]} detectedContractAddresses - Array of detected contract addresses to redirect to distributor */ -function parseFieldData(includeContracts = false) { +function parseFieldData(includeContracts = false, detectedContractAddresses = []) { const inputPath = path.join(__dirname, '../data/exports/beanstalk_field.json'); const outputPath = path.join(__dirname, '../data/beanstalkPlots.json'); @@ -34,7 +35,7 @@ function parseFieldData(includeContracts = false) { } // Reassign all ethContracts plot assets to the distributor contract - for (const [ethContractAddress, plotsMap] of Object.entries(ethContracts)) { + for (const [, plotsMap] of Object.entries(ethContracts)) { if (plotsMap && typeof plotsMap === 'object') { // If distributor already has data, merge plot data if (allAccounts[DISTRIBUTOR_ADDRESS]) { @@ -55,6 +56,38 @@ function parseFieldData(includeContracts = false) { } } + // Reassign detected contract addresses plot assets to the distributor contract + for (const detectedAddress of detectedContractAddresses) { + const normalizedDetectedAddress = detectedAddress.toLowerCase(); + + // Check if this detected contract has plot assets in arbEOAs that need to be redirected + const detectedContract = Object.keys(allAccounts).find(addr => addr.toLowerCase() === normalizedDetectedAddress); + + if (detectedContract && allAccounts[detectedContract] && typeof allAccounts[detectedContract] === 'object') { + const contractPlotData = allAccounts[detectedContract]; + + // If distributor already has data, merge plot data + if (allAccounts[DISTRIBUTOR_ADDRESS]) { + // Merge plot data + for (const [plotIndex, pods] of Object.entries(contractPlotData)) { + // If same plot index exists, add the pod amounts + if (allAccounts[DISTRIBUTOR_ADDRESS][plotIndex]) { + const existingPods = parseInt(allAccounts[DISTRIBUTOR_ADDRESS][plotIndex]); + const newPods = parseInt(pods); + allAccounts[DISTRIBUTOR_ADDRESS][plotIndex] = (existingPods + newPods).toString(); + } else { + allAccounts[DISTRIBUTOR_ADDRESS][plotIndex] = pods; + } + } + } else { + allAccounts[DISTRIBUTOR_ADDRESS] = { ...contractPlotData }; + } + + // Remove the detected contract from allAccounts since its assets are now redirected + delete allAccounts[detectedContract]; + } + } + // Build plots data structure const plotsData = []; diff --git a/scripts/beanstalkShipments/parsers/parseSiloData.js b/scripts/beanstalkShipments/parsers/parseSiloData.js index 5830612e..3ed0dd8f 100644 --- a/scripts/beanstalkShipments/parsers/parseSiloData.js +++ b/scripts/beanstalkShipments/parsers/parseSiloData.js @@ -8,8 +8,9 @@ const path = require('path'); * unripeBdvTokens.json: Array of [account, totalBdvAtRecapitalization] * * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs + * @param {string[]} detectedContractAddresses - Array of detected contract addresses to redirect to distributor */ -function parseSiloData(includeContracts = false) { +function parseSiloData(includeContracts = false, detectedContractAddresses = []) { const inputPath = path.join(__dirname, '../data/exports/beanstalk_silo.json'); const outputPath = path.join(__dirname, '../data/unripeBdvTokens.json'); @@ -51,6 +52,34 @@ function parseSiloData(includeContracts = false) { } } + // Reassign detected contract addresses assets to the distributor contract + for (const detectedAddress of detectedContractAddresses) { + const normalizedDetectedAddress = detectedAddress.toLowerCase(); + + // Check if this detected contract has assets in arbEOAs that need to be redirected + const detectedContract = Object.keys(allAccounts).find(addr => addr.toLowerCase() === normalizedDetectedAddress); + + if (detectedContract && allAccounts[detectedContract] && allAccounts[detectedContract].bdvAtRecapitalization) { + const contractData = allAccounts[detectedContract]; + + // If distributor already has data, add to it, otherwise create new entry + if (allAccounts[DISTRIBUTOR_ADDRESS]) { + const distributorBdv = parseInt(allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total || '0'); + const contractBdv = parseInt(contractData.bdvAtRecapitalization.total || '0'); + allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total = (distributorBdv + contractBdv).toString(); + } else { + allAccounts[DISTRIBUTOR_ADDRESS] = { + bdvAtRecapitalization: { + total: contractData.bdvAtRecapitalization.total + } + }; + } + + // Remove the detected contract from allAccounts since its assets are now redirected + delete allAccounts[detectedContract]; + } + } + // Build unripe BDV data structure const unripeBdvData = []; diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 730f675c..78e9b532 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -27,7 +27,9 @@ contract ContractDistributionTest is TestHelper { ICrossDomainMessenger public constant L1_MESSENGER = ICrossDomainMessenger(0x4200000000000000000000000000000000000007); // L1 sender - address public constant L1_SENDER = 0x0000000000000000000000000000000000000000; + address public constant L1_SENDER = 0x51f472874a303D5262d7668f5a3d17e3317f8E51; + + address public constant EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR = 0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000; // Deployed contracts SiloPayback public siloPayback; @@ -61,14 +63,25 @@ contract ContractDistributionTest is TestHelper { contractAccounts[0] = contractAccount1; contractAccounts[1] = contractAccount2; // Account data - contractPaybackDistributor = new ContractPaybackDistributor( - _createAccountData(), - contractAccounts, - address(bs), - address(siloPayback), - address(barnPayback) + vm.prank(owner); + deployCodeTo( + "ContractPaybackDistributor.sol:ContractPaybackDistributor", + abi.encode(address(bs), address(siloPayback), address(barnPayback)), + EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR ); + contractPaybackDistributor = ContractPaybackDistributor( + address(0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000) + ); + + // assert owner is correct + assertEq(contractPaybackDistributor.owner(), owner, "distributor owner"); + + // Initialize the account data + ContractPaybackDistributor.AccountData[] memory accountData = _createAccountData(); + vm.prank(owner); + contractPaybackDistributor.initializeAccountData(contractAccounts, accountData); + // mint the actual silo payback tokens to the distributor contract: // 500e6 for contractAccount1 // 500e6 for contractAccount2 @@ -79,8 +92,9 @@ contract ContractDistributionTest is TestHelper { BarnPayback.Fertilizers[] memory fertilizerData = _createFertilizerAccountData( address(contractPaybackDistributor) ); - vm.prank(owner); + vm.startPrank(owner); barnPayback.mintFertilizers(fertilizerData); + vm.stopPrank(); // sow 2 plots for the distributor contract sowPodsForContractPaybackDistributor(100e6); // 0 --> 101e6 place in line @@ -370,7 +384,7 @@ contract ContractDistributionTest is TestHelper { memory accounts = new BarnPayback.AccountFertilizerData[](2); accounts[0] = BarnPayback.AccountFertilizerData({ account: receiver, - amount: 40, // 60 to contractAccount1 + amount: 40, // 40 to contractAccount1 lastBpf: 100 }); accounts[1] = BarnPayback.AccountFertilizerData({ From 2de558eb6bcc2327fe71e21eaa00a2317e87204d Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 28 Aug 2025 18:02:03 +0300 Subject: [PATCH 072/270] add more comments to planner --- contracts/ecosystem/ShipmentPlanner.sol | 16 + contracts/libraries/LibReceiving.sol | 2 +- hardhat.config.js | 2 +- .../BeanstalkShipments.t.sol | 18 +- test/foundry/sun/Sun.t.sol | 313 +++++++++--------- 5 files changed, 184 insertions(+), 167 deletions(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index 242c02f7..2e1aed92 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -146,6 +146,11 @@ contract ShipmentPlanner { return ShipmentPlan({points: points, cap: beanstalk.totalUnharvestable(fieldId)}); } + /** + * @notice Get the current points and cap for the Silo portion of payback shipments. + * @dev data param contains the silo and barn payback contract addresses to get the remaining paybacks. + * @dev The silo is the second payback to be paid off. + */ function getPaybackSiloPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { @@ -188,6 +193,11 @@ contract ShipmentPlanner { return ShipmentPlan({points: points, cap: cap}); } + /** + * @notice Get the current points and cap for the Barn portion of payback shipments. + * @dev data param contains the silo and barn payback contract addresses to get the remaining paybacks. + * @dev The barn is the first payback to be paid off. + */ function getPaybackBarnPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { @@ -252,6 +262,12 @@ contract ShipmentPlanner { } } + /** + * @notice Returns the remaining pinto to be paid off for the silo and barn payback contracts. + * @return totalSuccess True if both calls were successful, false otherwise. + * @return siloRemaining The remaining pinto to be paid off for the silo payback contract. + * @return barnRemaining The remaining pinto to be paid off for the barn payback contract. + */ function paybacksRemaining( address siloPaybackContract, address barnPaybackContract diff --git a/contracts/libraries/LibReceiving.sol b/contracts/libraries/LibReceiving.sol index 5488d3a0..acea89d5 100644 --- a/contracts/libraries/LibReceiving.sol +++ b/contracts/libraries/LibReceiving.sol @@ -174,7 +174,7 @@ library LibReceiving { /** * @notice Receive Bean at the Silo Payback contract. * When the Silo Payback contract receives Bean, it needs to update: - * - the total beans that have been distributed to beanstalk unripe + * - the total beans that have been sent to beanstalk unripe * - the reward accumulators for the unripe bdv tokens * @param shipmentAmount Amount of Bean to receive. * @param data ABI encoded address of the silo payback contract. diff --git a/hardhat.config.js b/hardhat.config.js index 7867ed1c..28005ea3 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2277,7 +2277,7 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio // Set mock to false to transfer ownership of the payback contracts to the PCM on base. // The owner is the deployer account at 0x47c365cc9ef51052651c2be22f274470ad6afc53 task( - "transferContractOwnership", + "transferPaybackContractOwnership", "transfers ownership of the payback contracts to the PCM" ).setAction(async (taskArgs) => { const mock = true; diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 33214253..1156a9af 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -114,17 +114,17 @@ contract BeanstalkShipmentsTest is TestHelper { // assert that: 1 % of mints went to the payback field so harvestable index must have increased // by the expected pinto mints with a 0.1% tolerance - assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.001e18); + assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.0011e18); /////////// SILO PAYBACK /////////// // assert that: 1 % of mints went to the silo so silo payback balance of pinto must have increased - assertApproxEqRel(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), expectedPintoMints, 0.001e18); + assertApproxEqRel(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), expectedPintoMints, 0.0011e18); // assert the silo payback balance is within 0.1% of the expected pinto mints shipped to the silo assertApproxEqRel( siloPayback.totalReceived(), expectedPintoMints, - 0.001e18, + 0.0011e18, "Silo payback total distributed mismatch" ); // assert that remaining is correct @@ -132,14 +132,14 @@ contract BeanstalkShipmentsTest is TestHelper { assertApproxEqRel( siloPayback.siloRemaining(), siloPaybackTotalSupply - expectedPintoMints, - 0.001e18, + 0.0011e18, "Silo payback silo remaining mismatch" ); /////////// BARN PAYBACK /////////// // assert that: 1 % of mints went to the barn so barn payback balance of pinto must have increased - assertApproxEqRel(IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), expectedPintoMints, 0.001e18); + assertApproxEqRel(IERC20(L2_PINTO).balanceOf(BARN_PAYBACK), expectedPintoMints, 0.0011e18); // assert that the fertilized index has increased assertGt(_getSystemFertilizer().fertilizedIndex, fertilizedIndexBefore); // assert that the fert remaining has decreased @@ -263,18 +263,18 @@ contract BeanstalkShipmentsTest is TestHelper { /////////// SILO PAYBACK /////////// // assert that the silo payback balance of pinto must have received 1.5% of the mints - assertApproxEqRel(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), expectedPintoMints, 0.001e18); + assertApproxEqRel(IERC20(L2_PINTO).balanceOf(SILO_PAYBACK), expectedPintoMints, 0.0011e18); // assert the silo payback balance is within 0.1% of the expected pinto mints shipped to the silo assertApproxEqRel( siloPayback.totalReceived(), expectedPintoMints, - 0.001e18, + 0.0011e18, "Silo payback total distributed mismatch" ); /////////// PAYBACK FIELD /////////// // assert that the payback field harvestable index must have increased by the expected pinto mints - assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.001e18); + assertApproxEqRel(pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, 0.0011e18); } /** @@ -298,7 +298,7 @@ contract BeanstalkShipmentsTest is TestHelper { assertApproxEqRel( pinto.harvestableIndex(PAYBACK_FIELD_ID), expectedPintoMints, - 0.001e18, + 0.0011e18, "Payback field harvestable index mismatch" ); diff --git a/test/foundry/sun/Sun.t.sol b/test/foundry/sun/Sun.t.sol index 4b5b40f8..dc792ae5 100644 --- a/test/foundry/sun/Sun.t.sol +++ b/test/foundry/sun/Sun.t.sol @@ -570,162 +570,163 @@ contract SunTest is TestHelper { } } - function test_partials() public { - uint256 beansInBudget; - uint256 beansInPaybackContract; - - // increase pods in field. - bs.incrementTotalPodsE(0, 100_000_000_000e6); - bs.incrementTotalPodsE(1, 100_000_000_000e6); - uint256 podsInField1 = bs.totalUnharvestable(1); - - // Set up second Field. Update Routes and Plan getters. - vm.prank(deployer); - bs.addField(); - vm.prank(deployer); - bs.setActiveField(0, 1); - setRoutes_all(); - - uint256 deltaB = 50_000_000e6; - uint256 caseId = 1; - - // Set lpToSupplyRatio in beanstalkState - beanstalkState.lpToSupplyRatio = Decimal.ratio(1, 2); // 50% L2SR - - for (uint256 i; i < 19; i++) { - vm.roll(block.number + 300); - - // Update twaDeltaB in beanstalkState before calling sunSunrise - beanstalkState.twaDeltaB = int256(deltaB); - - season.sunSunrise(int256(deltaB), caseId, beanstalkState); - } - - // Almost ready to cross supply threshold to switch from budget to payback. - assertEq(inBudgetPhase(), true, "not in budget phase"); - assertEq(inPaybackPhase(0), false, "in payback phase"); - - uint256 priorBeansInBudget = bs.getInternalBalance(budget, address(bean)); - uint256 priorBeansInPayback = bean.balanceOf(payback); - uint256 priorHarvestablePodsPaybackField = podsInField1 - bs.totalUnharvestable(1); - - assertEq( - priorBeansInBudget, - (deltaB * 19 * 3) / 100, - "invalid budget balance before partial" - ); - assertEq(priorBeansInPayback, 0, "invalid payback balance before partial"); - - deltaB = 80_000_000e6; - vm.roll(block.number + 300); - - // Update twaDeltaB in beanstalkState before calling sunSunrise - beanstalkState.twaDeltaB = int256(deltaB); - - season.sunSunrise(int256(deltaB), caseId, beanstalkState); - - // 3% of mint goes to budget and payback. - // 5/8 of that goes to budget. - assertEq( - bs.getInternalBalance(budget, address(bean)), - priorBeansInBudget + (deltaB * 3 * 5) / 100 / 8, - "invalid budget balance from partial" - ); - // 3/8 of that goes to payback, which is split 2/8 to payback contract and 1/8 to payback field. - assertEq( - bean.balanceOf(payback), - priorBeansInPayback + ((deltaB * 3 * 2) / 100 / 8), - "invalid payback contract balance from partial" - ); - assertEq( - podsInField1 - bs.totalUnharvestable(1), - priorHarvestablePodsPaybackField + ((deltaB * 3 * 1) / 100 / 8), - "invalid payback field balance from partial" - ); - - // 100% of the 3% goes to payback. - priorBeansInBudget = bs.getInternalBalance(budget, address(bean)); - priorBeansInPayback = bean.balanceOf(payback); - priorHarvestablePodsPaybackField = podsInField1 - bs.totalUnharvestable(1); - deltaB = 1_000_000e6; - vm.roll(block.number + 300); - - // Update twaDeltaB in beanstalkState before calling sunSunrise - beanstalkState.twaDeltaB = int256(deltaB); - - season.sunSunrise(int256(deltaB), caseId, beanstalkState); - assertEq( - bs.getInternalBalance(budget, address(bean)), - priorBeansInBudget, - "invalid budget balance after partial" - ); - assertEq( - bean.balanceOf(payback), - priorBeansInPayback + (deltaB * 2) / 100, - "invalid payback contract balance after partial" - ); - assertEq( - podsInField1 - bs.totalUnharvestable(1), - priorHarvestablePodsPaybackField + ((deltaB * 1) / 100), - "invalid payback field balance after partial" - ); - - // Silo is paid off. Shift to 1.5% payback contract and 1.5% payback field. - deal(address(bean), payback, 1_000_000_000e6 / 4, true); - priorBeansInBudget = bs.getInternalBalance(budget, address(bean)); - priorBeansInPayback = bean.balanceOf(payback); - priorHarvestablePodsPaybackField = podsInField1 - bs.totalUnharvestable(1); - deltaB = 1_000e6; - vm.roll(block.number + 300); - - // Update twaDeltaB in beanstalkState before calling sunSunrise - beanstalkState.twaDeltaB = int256(deltaB); - - season.sunSunrise(int256(deltaB), caseId, beanstalkState); - assertEq( - bs.getInternalBalance(budget, address(bean)), - priorBeansInBudget, - "invalid budget balance after silo paid off" - ); - assertEq( - bean.balanceOf(payback), - priorBeansInPayback + (deltaB * 15) / 1000, - "invalid payback contract balance after silo paid off" - ); - assertEq( - podsInField1 - bs.totalUnharvestable(1), - priorHarvestablePodsPaybackField + ((deltaB * 15) / 1000), - "invalid payback field balance after silo paid off" - ); - - // Barn is paid off. Shift to 3% payback field. 0% to payback contract. - deal(address(bean), payback, 1_000_000_000e6, true); - priorBeansInBudget = bs.getInternalBalance(budget, address(bean)); - priorBeansInPayback = bean.balanceOf(payback); - priorHarvestablePodsPaybackField = podsInField1 - bs.totalUnharvestable(1); - deltaB = 1_000e6; - vm.roll(block.number + 300); - - // Update twaDeltaB in beanstalkState before calling sunSunrise - beanstalkState.twaDeltaB = int256(deltaB); - - season.sunSunrise(int256(deltaB), caseId, beanstalkState); - assertEq( - bs.getInternalBalance(budget, address(bean)), - priorBeansInBudget, - "invalid budget balance after barn is paid off" - ); - assertEq( - bean.balanceOf(payback), - priorBeansInPayback, - "invalid payback contract balance after barn is paid off" - ); - assertEq( - podsInField1 - bs.totalUnharvestable(1), - priorHarvestablePodsPaybackField + ((deltaB * 3) / 100), - "invalid payback field balance after barn is paid off" - ); - } + // note: Tests at supply edge added in BeanstalkShipments.t.sol + // function test_partials() public { + // uint256 beansInBudget; + // uint256 beansInPaybackContract; + + // // increase pods in field. + // bs.incrementTotalPodsE(0, 100_000_000_000e6); + // bs.incrementTotalPodsE(1, 100_000_000_000e6); + // uint256 podsInField1 = bs.totalUnharvestable(1); + + // // Set up second Field. Update Routes and Plan getters. + // vm.prank(deployer); + // bs.addField(); + // vm.prank(deployer); + // bs.setActiveField(0, 1); + // setRoutes_all(); + + // uint256 deltaB = 50_000_000e6; + // uint256 caseId = 1; + + // // Set lpToSupplyRatio in beanstalkState + // beanstalkState.lpToSupplyRatio = Decimal.ratio(1, 2); // 50% L2SR + + // for (uint256 i; i < 19; i++) { + // vm.roll(block.number + 300); + + // // Update twaDeltaB in beanstalkState before calling sunSunrise + // beanstalkState.twaDeltaB = int256(deltaB); + + // season.sunSunrise(int256(deltaB), caseId, beanstalkState); + // } + + // // Almost ready to cross supply threshold to switch from budget to payback. + // assertEq(inBudgetPhase(), true, "not in budget phase"); + // assertEq(inPaybackPhase(0), false, "in payback phase"); + + // uint256 priorBeansInBudget = bs.getInternalBalance(budget, address(bean)); + // uint256 priorBeansInPayback = bean.balanceOf(payback); + // uint256 priorHarvestablePodsPaybackField = podsInField1 - bs.totalUnharvestable(1); + + // assertEq( + // priorBeansInBudget, + // (deltaB * 19 * 3) / 100, + // "invalid budget balance before partial" + // ); + // assertEq(priorBeansInPayback, 0, "invalid payback balance before partial"); + + // deltaB = 80_000_000e6; + // vm.roll(block.number + 300); + + // // Update twaDeltaB in beanstalkState before calling sunSunrise + // beanstalkState.twaDeltaB = int256(deltaB); + + // season.sunSunrise(int256(deltaB), caseId, beanstalkState); + + // // 3% of mint goes to budget and payback. + // // 5/8 of that goes to budget. + // assertEq( + // bs.getInternalBalance(budget, address(bean)), + // priorBeansInBudget + (deltaB * 3 * 5) / 100 / 8, + // "invalid budget balance from partial" + // ); + // // 3/8 of that goes to payback, which is split 2/8 to payback contract and 1/8 to payback field. + // assertEq( + // bean.balanceOf(payback), + // priorBeansInPayback + ((deltaB * 3 * 2) / 100 / 8), + // "invalid payback contract balance from partial" + // ); + // assertEq( + // podsInField1 - bs.totalUnharvestable(1), + // priorHarvestablePodsPaybackField + ((deltaB * 3 * 1) / 100 / 8), + // "invalid payback field balance from partial" + // ); + + // // 100% of the 3% goes to payback. + // priorBeansInBudget = bs.getInternalBalance(budget, address(bean)); + // priorBeansInPayback = bean.balanceOf(payback); + // priorHarvestablePodsPaybackField = podsInField1 - bs.totalUnharvestable(1); + // deltaB = 1_000_000e6; + // vm.roll(block.number + 300); + + // // Update twaDeltaB in beanstalkState before calling sunSunrise + // beanstalkState.twaDeltaB = int256(deltaB); + + // season.sunSunrise(int256(deltaB), caseId, beanstalkState); + // assertEq( + // bs.getInternalBalance(budget, address(bean)), + // priorBeansInBudget, + // "invalid budget balance after partial" + // ); + // assertEq( + // bean.balanceOf(payback), + // priorBeansInPayback + (deltaB * 2) / 100, + // "invalid payback contract balance after partial" + // ); + // assertEq( + // podsInField1 - bs.totalUnharvestable(1), + // priorHarvestablePodsPaybackField + ((deltaB * 1) / 100), + // "invalid payback field balance after partial" + // ); + + // // Silo is paid off. Shift to 1.5% payback contract and 1.5% payback field. + // deal(address(bean), payback, 1_000_000_000e6 / 4, true); + // priorBeansInBudget = bs.getInternalBalance(budget, address(bean)); + // priorBeansInPayback = bean.balanceOf(payback); + // priorHarvestablePodsPaybackField = podsInField1 - bs.totalUnharvestable(1); + // deltaB = 1_000e6; + // vm.roll(block.number + 300); + + // // Update twaDeltaB in beanstalkState before calling sunSunrise + // beanstalkState.twaDeltaB = int256(deltaB); + + // season.sunSunrise(int256(deltaB), caseId, beanstalkState); + // assertEq( + // bs.getInternalBalance(budget, address(bean)), + // priorBeansInBudget, + // "invalid budget balance after silo paid off" + // ); + // assertEq( + // bean.balanceOf(payback), + // priorBeansInPayback + (deltaB * 15) / 1000, + // "invalid payback contract balance after silo paid off" + // ); + // assertEq( + // podsInField1 - bs.totalUnharvestable(1), + // priorHarvestablePodsPaybackField + ((deltaB * 15) / 1000), + // "invalid payback field balance after silo paid off" + // ); + + // // Barn is paid off. Shift to 3% payback field. 0% to payback contract. + // deal(address(bean), payback, 1_000_000_000e6, true); + // priorBeansInBudget = bs.getInternalBalance(budget, address(bean)); + // priorBeansInPayback = bean.balanceOf(payback); + // priorHarvestablePodsPaybackField = podsInField1 - bs.totalUnharvestable(1); + // deltaB = 1_000e6; + // vm.roll(block.number + 300); + + // // Update twaDeltaB in beanstalkState before calling sunSunrise + // beanstalkState.twaDeltaB = int256(deltaB); + + // season.sunSunrise(int256(deltaB), caseId, beanstalkState); + // assertEq( + // bs.getInternalBalance(budget, address(bean)), + // priorBeansInBudget, + // "invalid budget balance after barn is paid off" + // ); + // assertEq( + // bean.balanceOf(payback), + // priorBeansInPayback, + // "invalid payback contract balance after barn is paid off" + // ); + // assertEq( + // podsInField1 - bs.totalUnharvestable(1), + // priorHarvestablePodsPaybackField + ((deltaB * 3) / 100), + // "invalid payback field balance after barn is paid off" + // ); + // } function test_stepCultivationFactor() public { // Initial setup From e9ab4a651f24adc135a259d51f0dee1d07bdd32c Mon Sep 17 00:00:00 2001 From: nickkatsios Date: Fri, 29 Aug 2025 15:36:38 +0300 Subject: [PATCH 073/270] add json metadata to fertilizer --- .../barn/BeanstalkFertilizer.sol | 61 ++++++++++++++++++- 1 file changed, 58 insertions(+), 3 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index d8d0e53a..640613a1 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -13,6 +13,8 @@ import {LibRedundantMath256} from "contracts/libraries/Math/LibRedundantMath256. import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {LibBytes64} from "contracts/libraries/LibBytes64.sol"; +import {Strings} from "@openzeppelin/contracts/utils/Strings.sol"; /** * @dev Fertilizer tailored implementation of the ERC-1155 standard. @@ -23,6 +25,7 @@ import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable { using LibRedundantMath256 for uint256; using LibRedundantMath128 for uint128; + using Strings for uint256; address public constant CONTRACT_DISTRIBUTOR_ADDRESS = address(0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000); @@ -494,11 +497,41 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran } } + /////////////////////// Metadata /////////////////////////// + /** - * @dev the uri for the payback fertilizer, omitted here due to lack of metadata + * @notice Assembles and returns a base64 encoded json metadata + * URI for a given fertilizer ID. + * @param _id - the id of the fertilizer + * @return - the json metadata URI */ - function uri(uint256) public view virtual override returns (string memory) { - return ""; + function uri(uint256 _id) public view virtual override returns (string memory) { + // get the remaining bpf (id - fert.bpf) + uint128 bpfRemaining = uint128(_id) >= fert.bpf ? uint128(_id) - fert.bpf : 0; + + // todo: use an image uri if we decide to add one + string memory imageUri = ""; + + // assemble and return the json URI + return ( + string( + abi.encodePacked( + "data:application/json;base64,", + LibBytes64.encode( + bytes( + abi.encodePacked( + '{"name": "Beanstalk Payback Fertilizer", ', + '"description": "The Beanstalk Payback Barn fertilizer pays back Beanstalk fertilizer holders with Pinto after the 1 billion supply threshold is reached.", "image": "', + imageUri, + '", "attributes": [{ "trait_type": "BPF Remaining","display_type": "boost_number","value": ', + formatBpRemaining(bpfRemaining), + " }]}" + ) + ) + ) + ) + ) + ); } function name() external pure returns (string memory) { @@ -519,4 +552,26 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran } return size > 0; } + + /** + * @notice Formats a the bpf remaining value with 6 decimals to a string with 2 decimals. + * @param number - The bpf value to format. + */ + function formatBpRemaining(uint256 number) internal pure returns (string memory) { + // 6 to 2 decimal places + uint256 scaled = number / 10000; + // Separate the integer and decimal parts + uint256 integerPart = scaled / 100; + uint256 decimalPart = scaled % 100; + string memory result = integerPart.toString(); + // Add decimal point + result = string(abi.encodePacked(result, ".")); + // Add leading zero if necessary + if (decimalPart < 10) { + result = string(abi.encodePacked(result, "0")); + } + // Add decimal part + result = string(abi.encodePacked(result, decimalPart.toString())); + return result; + } } From c6ecb533bc690c469faedb88ddca662c88d2866b Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 15:51:16 +0300 Subject: [PATCH 074/270] move storage load to top of the whitelist function --- contracts/libraries/Token/LibTokenHook.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 7ad33f83..37c8f729 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -37,6 +37,7 @@ library LibTokenHook { * @param hook The TokenHook struct containing target, selector, and data. */ function whitelistHook(address token, TokenHook memory hook) internal { + AppStorage storage s = LibAppStorage.diamondStorage(); require(token != address(0), "LibTokenHook: Invalid token address"); require(hook.target != address(0), "LibTokenHook: Invalid target address"); require(hook.selector != bytes4(0), "LibTokenHook: Invalid selector"); @@ -44,7 +45,6 @@ library LibTokenHook { // Verify the hook implementation is callable verifyPreTransferHook(token, hook); - AppStorage storage s = LibAppStorage.diamondStorage(); s.sys.tokenHook[token] = hook; emit TokenHookRegistered(token, hook.target, hook.selector); From 306b7ec7cfacf882e49739448daf949f2864161d Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 15:53:28 +0300 Subject: [PATCH 075/270] add warning comment --- contracts/libraries/Token/LibTokenHook.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 37c8f729..554013a8 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -126,6 +126,7 @@ library LibTokenHook { * @dev Unlike view functions like the bdv selector, we can't staticcall pre-transfer hooks * since they might potentially modify state or emit events so we perform a regular call with * default parameters and assume the hook does not revert for 0 values. + * @dev Care must be taken to only whitelist trusted hooks since a hook is an arbitrary function call. * @param token The token address. * @param hook The TokenHook to verify. */ From ac57f8c5360b393fc5e56ae10f7ee8d239326489 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 15:58:01 +0300 Subject: [PATCH 076/270] add addition comment --- contracts/libraries/Token/LibTokenHook.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 554013a8..1babc4ae 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -157,6 +157,7 @@ library LibTokenHook { ) internal pure returns (bytes memory) { if (encodeType == 0x00) { return abi.encodeWithSelector(selector, from, to, amount); + // any other encode types should be added here } else { revert("LibTokenHook: Invalid encodeType"); } From 7026f73d48a26fd76fff5228bee2d18f1d26189f Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 16:00:30 +0300 Subject: [PATCH 077/270] remove lib --- contracts/libraries/Token/LibTransfer.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/contracts/libraries/Token/LibTransfer.sol b/contracts/libraries/Token/LibTransfer.sol index c9b7944a..3a6813d2 100644 --- a/contracts/libraries/Token/LibTransfer.sol +++ b/contracts/libraries/Token/LibTransfer.sol @@ -6,7 +6,6 @@ import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; import "../../interfaces/IBean.sol"; import "./LibBalance.sol"; import {LibTokenHook} from "./LibTokenHook.sol"; -import {LibRedundantMath256} from "../Math/LibRedundantMath256.sol"; /** * @title LibTransfer From d41aab5ec998be3f83dea00a50c750a9737ae029 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 16:17:39 +0300 Subject: [PATCH 078/270] move hook check function to transferToken --- contracts/libraries/Token/LibTransfer.sol | 33 +++++------------------ 1 file changed, 7 insertions(+), 26 deletions(-) diff --git a/contracts/libraries/Token/LibTransfer.sol b/contracts/libraries/Token/LibTransfer.sol index 3a6813d2..bea138e3 100644 --- a/contracts/libraries/Token/LibTransfer.sol +++ b/contracts/libraries/Token/LibTransfer.sol @@ -43,7 +43,13 @@ library LibTransfer { From fromMode, To toMode ) internal returns (uint256 transferredAmount) { - checkForInternalTransferHook(token, sender, recipient, amount, fromMode, toMode); + // if the transfer involves internal balances and the token has a hook, call the hook + if ( + (fromMode == From.INTERNAL || toMode == To.INTERNAL) && + LibTokenHook.hasTokenHook(address(token)) + ) { + LibTokenHook.callPreTransferHook(address(token), sender, recipient, amount); + } if (fromMode == From.EXTERNAL && toMode == To.EXTERNAL) { uint256 beforeBalance = token.balanceOf(recipient); @@ -109,29 +115,4 @@ library LibTransfer { LibTransfer.sendToken(token, amount, recipient, mode); } } - - /** - * @notice Checks if a token has a pre-transfer hook for internal transfers and calls it if it does. - * @param token The token being transferred. - * @param sender The sender of the transfer. - * @param recipient The recipient of the transfer. - * @param amount The amount of tokens being transferred. - * @param fromMode The mode of the transfer. - * @param toMode The mode of the transfer. - */ - function checkForInternalTransferHook( - IERC20 token, - address sender, - address recipient, - uint256 amount, - From fromMode, - To toMode - ) internal { - if ( - LibTokenHook.hasTokenHook(address(token)) && - (fromMode == From.INTERNAL || toMode == To.INTERNAL) - ) { - LibTokenHook.callPreTransferHook(address(token), sender, recipient, amount); - } - } } From 8d417a2f6dcfa5a9ead4cab5a35b1897a3702b36 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 16:30:29 +0300 Subject: [PATCH 079/270] comment out state changing admin functions --- .../beanstalk/facets/farm/TokenHookFacet.sol | 69 +++++++++--------- .../mocks/mockFacets/MockTokenHookFacet.sol | 71 +++++++++++++++++++ test/foundry/utils/BeanstalkDeployer.sol | 6 +- 3 files changed, 109 insertions(+), 37 deletions(-) create mode 100644 contracts/mocks/mockFacets/MockTokenHookFacet.sol diff --git a/contracts/beanstalk/facets/farm/TokenHookFacet.sol b/contracts/beanstalk/facets/farm/TokenHookFacet.sol index 79e84ca7..a70aec22 100644 --- a/contracts/beanstalk/facets/farm/TokenHookFacet.sol +++ b/contracts/beanstalk/facets/farm/TokenHookFacet.sol @@ -13,44 +13,45 @@ import {TokenHook} from "contracts/beanstalk/storage/System.sol"; /** * @title TokenHookFacet * @notice Manages the pre-transfer hook whitelist for internal token transfers. + * @dev State changing functions are commented out for security reasons. */ contract TokenHookFacet is Invariable, ReentrancyGuard { - /** - * @notice Registers a pre-transfer hook for a specific token. - * @param token The token address to register the hook for. - * @param hook The TokenHook struct. (See System.{TokenHook}) - */ - function whitelistTokenHook( - address token, - TokenHook memory hook - ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { - LibDiamond.enforceIsOwnerOrContract(); - LibTokenHook.whitelistHook(token, hook); - } + // /** + // * @notice Registers a pre-transfer hook for a specific token. + // * @param token The token address to register the hook for. + // * @param hook The TokenHook struct. (See System.{TokenHook}) + // */ + // function whitelistTokenHook( + // address token, + // TokenHook memory hook + // ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + // LibDiamond.enforceIsOwnerOrContract(); + // LibTokenHook.whitelistHook(token, hook); + // } - /** - * @notice Removes a pre-transfer hook for a specific token. - * @param token The token address to remove the hook for. - */ - function dewhitelistTokenHook( - address token - ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { - LibDiamond.enforceIsOwnerOrContract(); - LibTokenHook.removeWhitelistedHook(token); - } + // /** + // * @notice Removes a pre-transfer hook for a specific token. + // * @param token The token address to remove the hook for. + // */ + // function dewhitelistTokenHook( + // address token + // ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + // LibDiamond.enforceIsOwnerOrContract(); + // LibTokenHook.removeWhitelistedHook(token); + // } - /** - * @notice Updates a pre-transfer hook for a specific token. - * @param token The token address to update the hook for. - * @param hook The new TokenHook struct. - */ - function updateTokenHook( - address token, - TokenHook memory hook - ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { - LibDiamond.enforceIsOwnerOrContract(); - LibTokenHook.updateWhitelistedHook(token, hook); - } + // /** + // * @notice Updates a pre-transfer hook for a specific token. + // * @param token The token address to update the hook for. + // * @param hook The new TokenHook struct. + // */ + // function updateTokenHook( + // address token, + // TokenHook memory hook + // ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + // LibDiamond.enforceIsOwnerOrContract(); + // LibTokenHook.updateWhitelistedHook(token, hook); + // } /** * @notice Checks if token has a pre-transfer hook associated with it. diff --git a/contracts/mocks/mockFacets/MockTokenHookFacet.sol b/contracts/mocks/mockFacets/MockTokenHookFacet.sol new file mode 100644 index 00000000..864ca4e7 --- /dev/null +++ b/contracts/mocks/mockFacets/MockTokenHookFacet.sol @@ -0,0 +1,71 @@ +/* + * SPDX-License-Identifier: MIT + */ + +pragma solidity ^0.8.20; + +import {ReentrancyGuard} from "contracts/beanstalk/ReentrancyGuard.sol"; +import {Invariable} from "contracts/beanstalk/Invariable.sol"; +import {LibDiamond} from "contracts/libraries/LibDiamond.sol"; +import {LibTokenHook} from "contracts/libraries/Token/LibTokenHook.sol"; +import {TokenHook} from "contracts/beanstalk/storage/System.sol"; + +/** + * @title TokenHookFacet + * @notice Manages the pre-transfer hook whitelist for internal token transfers. + */ +contract MockTokenHookFacet is Invariable, ReentrancyGuard { + /** + * @notice Registers a pre-transfer hook for a specific token. + * @param token The token address to register the hook for. + * @param hook The TokenHook struct. (See System.{TokenHook}) + */ + function whitelistTokenHook( + address token, + TokenHook memory hook + ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + LibDiamond.enforceIsOwnerOrContract(); + LibTokenHook.whitelistHook(token, hook); + } + + /** + * @notice Removes a pre-transfer hook for a specific token. + * @param token The token address to remove the hook for. + */ + function dewhitelistTokenHook( + address token + ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + LibDiamond.enforceIsOwnerOrContract(); + LibTokenHook.removeWhitelistedHook(token); + } + + /** + * @notice Updates a pre-transfer hook for a specific token. + * @param token The token address to update the hook for. + * @param hook The new TokenHook struct. + */ + function updateTokenHook( + address token, + TokenHook memory hook + ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { + LibDiamond.enforceIsOwnerOrContract(); + LibTokenHook.updateWhitelistedHook(token, hook); + } + + /** + * @notice Checks if token has a pre-transfer hook associated with it. + * @param token The token address to check. + */ + function hasTokenHook(address token) external view returns (bool) { + return LibTokenHook.hasTokenHook(token); + } + + /** + * @notice Gets the pre-transfer hook struct for a specific token. + * @param token The token address. + * @return TokenHook struct for the token. (See System.{TokenHook}) + */ + function getTokenHook(address token) external view returns (TokenHook memory) { + return LibTokenHook.getTokenHook(token); + } +} diff --git a/test/foundry/utils/BeanstalkDeployer.sol b/test/foundry/utils/BeanstalkDeployer.sol index 0fac7d04..0ca37483 100644 --- a/test/foundry/utils/BeanstalkDeployer.sol +++ b/test/foundry/utils/BeanstalkDeployer.sol @@ -51,8 +51,7 @@ contract BeanstalkDeployer is Utils { "ClaimFacet", "OracleFacet", "GaugeGettersFacet", - "TractorFacet", - "TokenHookFacet" + "TractorFacet" ]; // Facets that have a mock counter part should be appended here. @@ -63,7 +62,8 @@ contract BeanstalkDeployer is Utils { "ConvertFacet", // MockConvertFacet "SeasonFacet", // MockSeasonFacet "PipelineConvertFacet", // MockPipelineConvertFacet - "SeasonGettersFacet" // MockSeasonGettersFacet + "SeasonGettersFacet", // MockSeasonGettersFacet + "TokenHookFacet" // MockTokenHookFacet ]; address[] initialDeployFacetAddresses; string[] initialDeploFacetNames; From 73bb8806aca13bddcf804d598be79975e88c5d18 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 29 Aug 2025 13:34:53 +0000 Subject: [PATCH 080/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/libraries/Token/LibTokenHook.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 1babc4ae..ac51d4ef 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -157,7 +157,7 @@ library LibTokenHook { ) internal pure returns (bytes memory) { if (encodeType == 0x00) { return abi.encodeWithSelector(selector, from, to, amount); - // any other encode types should be added here + // any other encode types should be added here } else { revert("LibTokenHook: Invalid encodeType"); } From 482805d6086cb24ebf1d727c2a411783f073c5d9 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 18:04:55 +0300 Subject: [PATCH 081/270] change naming of hook management functions to match gauge --- .../beanstalk/facets/farm/TokenHookFacet.sol | 6 +++--- .../init/shipments/InitBeanstalkShipments.sol | 2 +- contracts/interfaces/IMockFBeanstalk.sol | 4 ++-- contracts/libraries/Token/LibTokenHook.sol | 18 +++++++++--------- .../mocks/mockFacets/MockTokenHookFacet.sol | 10 +++++----- .../beanstalkShipments/SiloPayback.t.sol | 2 +- test/foundry/token/TokenHook.t.sol | 18 +++++++++--------- 7 files changed, 30 insertions(+), 30 deletions(-) diff --git a/contracts/beanstalk/facets/farm/TokenHookFacet.sol b/contracts/beanstalk/facets/farm/TokenHookFacet.sol index a70aec22..8bf6ecc6 100644 --- a/contracts/beanstalk/facets/farm/TokenHookFacet.sol +++ b/contracts/beanstalk/facets/farm/TokenHookFacet.sol @@ -26,7 +26,7 @@ contract TokenHookFacet is Invariable, ReentrancyGuard { // TokenHook memory hook // ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { // LibDiamond.enforceIsOwnerOrContract(); - // LibTokenHook.whitelistHook(token, hook); + // LibTokenHook.addTokenHook(token, hook); // } // /** @@ -37,7 +37,7 @@ contract TokenHookFacet is Invariable, ReentrancyGuard { // address token // ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { // LibDiamond.enforceIsOwnerOrContract(); - // LibTokenHook.removeWhitelistedHook(token); + // LibTokenHook.removeTokenHook(token); // } // /** @@ -50,7 +50,7 @@ contract TokenHookFacet is Invariable, ReentrancyGuard { // TokenHook memory hook // ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { // LibDiamond.enforceIsOwnerOrContract(); - // LibTokenHook.updateWhitelistedHook(token, hook); + // LibTokenHook.updateTokenHook(token, hook); // } /** diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index f13ffce8..3a1ae517 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -66,7 +66,7 @@ contract InitBeanstalkShipments { */ function _addSiloPaybackHook(address siloPayback) internal { AppStorage storage s = LibAppStorage.diamondStorage(); - LibTokenHook.whitelistHook( + LibTokenHook.addTokenHook( siloPayback, TokenHook({ target: address(siloPayback), diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index c7ed5f17..14d43646 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1926,9 +1926,9 @@ interface IMockFBeanstalk { function setPenaltyRatio(uint256 penaltyRatio) external; - function whitelistTokenHook(address token, TokenHook memory hook) external payable; + function addTokenHook(address token, TokenHook memory hook) external payable; - function dewhitelistTokenHook(address token) external payable; + function removeTokenHook(address token) external payable; function updateTokenHook(address token, TokenHook memory hook) external payable; diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 1babc4ae..d88cb2e0 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -19,12 +19,12 @@ library LibTokenHook { /** * @notice Emitted when a pre-transfer token hook is registered. */ - event TokenHookRegistered(address indexed token, address indexed target, bytes4 selector); + event AddedTokenHook(address indexed token, address indexed target, bytes4 selector); /** * @notice Emitted when a whitelisted pre-transfer token hook is removed. */ - event TokenHookRemoved(address indexed token); + event RemovedTokenHook(address indexed token); /** * @notice Emitted when a whitelisted pre-transfer token hook is called. @@ -36,7 +36,7 @@ library LibTokenHook { * @param token The token address to register the hook for. * @param hook The TokenHook struct containing target, selector, and data. */ - function whitelistHook(address token, TokenHook memory hook) internal { + function addTokenHook(address token, TokenHook memory hook) internal { AppStorage storage s = LibAppStorage.diamondStorage(); require(token != address(0), "LibTokenHook: Invalid token address"); require(hook.target != address(0), "LibTokenHook: Invalid target address"); @@ -47,20 +47,20 @@ library LibTokenHook { s.sys.tokenHook[token] = hook; - emit TokenHookRegistered(token, hook.target, hook.selector); + emit AddedTokenHook(token, hook.target, hook.selector); } /** * @notice Removes a pre-transfer hook for a specific token. * @param token The token address to remove the hook for. */ - function removeWhitelistedHook(address token) internal { + function removeTokenHook(address token) internal { AppStorage storage s = LibAppStorage.diamondStorage(); require(s.sys.tokenHook[token].target != address(0), "LibTokenHook: Hook not whitelisted"); delete s.sys.tokenHook[token]; - emit TokenHookRemoved(token); + emit RemovedTokenHook(token); } /** @@ -68,14 +68,14 @@ library LibTokenHook { * @param token The token address to update the hook for. * @param hook The new TokenHook struct. */ - function updateWhitelistedHook(address token, TokenHook memory hook) internal { + function updateTokenHook(address token, TokenHook memory hook) internal { AppStorage storage s = LibAppStorage.diamondStorage(); require(s.sys.tokenHook[token].target != address(0), "LibTokenHook: Hook not whitelisted"); // remove old hook - removeWhitelistedHook(token); + removeTokenHook(token); // add new hook - whitelistHook(token, hook); + addTokenHook(token, hook); } /** diff --git a/contracts/mocks/mockFacets/MockTokenHookFacet.sol b/contracts/mocks/mockFacets/MockTokenHookFacet.sol index 864ca4e7..1326b017 100644 --- a/contracts/mocks/mockFacets/MockTokenHookFacet.sol +++ b/contracts/mocks/mockFacets/MockTokenHookFacet.sol @@ -20,23 +20,23 @@ contract MockTokenHookFacet is Invariable, ReentrancyGuard { * @param token The token address to register the hook for. * @param hook The TokenHook struct. (See System.{TokenHook}) */ - function whitelistTokenHook( + function addTokenHook( address token, TokenHook memory hook ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { LibDiamond.enforceIsOwnerOrContract(); - LibTokenHook.whitelistHook(token, hook); + LibTokenHook.addTokenHook(token, hook); } /** * @notice Removes a pre-transfer hook for a specific token. * @param token The token address to remove the hook for. */ - function dewhitelistTokenHook( + function removeTokenHook( address token ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { LibDiamond.enforceIsOwnerOrContract(); - LibTokenHook.removeWhitelistedHook(token); + LibTokenHook.removeTokenHook(token); } /** @@ -49,7 +49,7 @@ contract MockTokenHookFacet is Invariable, ReentrancyGuard { TokenHook memory hook ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { LibDiamond.enforceIsOwnerOrContract(); - LibTokenHook.updateWhitelistedHook(token, hook); + LibTokenHook.updateTokenHook(token, hook); } /** diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index 965c0ebb..8cd882e6 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -57,7 +57,7 @@ contract SiloPaybackTest is TestHelper { // whitelist the pre-transfer token hook vm.prank(deployer); - bs.whitelistTokenHook( + bs.addTokenHook( address(siloPayback), IMockFBeanstalk.TokenHook({ target: address(siloPayback), diff --git a/test/foundry/token/TokenHook.t.sol b/test/foundry/token/TokenHook.t.sol index 51f8f6bb..43d6489a 100644 --- a/test/foundry/token/TokenHook.t.sol +++ b/test/foundry/token/TokenHook.t.sol @@ -14,7 +14,7 @@ contract TokenHookTest is TestHelper { // Protocol events event TokenHookCalled(address indexed token, address indexed target, bytes4 selector); - event TokenHookRegistered(address indexed token, address indexed target, bytes4 selector); + event AddedTokenHook(address indexed token, address indexed target, bytes4 selector); // test accounts address[] farmers; @@ -36,12 +36,12 @@ contract TokenHookTest is TestHelper { // Whitelist token hook for internal transfers, expect whitelist event to be emitted vm.prank(deployer); vm.expectEmit(true, true, true, true); - emit TokenHookRegistered( + emit AddedTokenHook( address(mockToken), address(mockToken), mockToken.internalTransferUpdate.selector ); - bs.whitelistTokenHook( + bs.addTokenHook( address(mockToken), IMockFBeanstalk.TokenHook({ target: address(mockToken), @@ -195,7 +195,7 @@ contract TokenHookTest is TestHelper { // try to whitelist token hook as non-owner vm.expectRevert("LibDiamond: Must be contract or owner"); vm.prank(farmers[0]); - bs.whitelistTokenHook( + bs.addTokenHook( address(mockToken), IMockFBeanstalk.TokenHook({ target: address(mockToken), @@ -207,7 +207,7 @@ contract TokenHookTest is TestHelper { // try to dewhitelist token hook as non-owner vm.expectRevert("LibDiamond: Must be contract or owner"); vm.prank(farmers[0]); - bs.dewhitelistTokenHook(address(mockToken)); + bs.removeTokenHook(address(mockToken)); // try to update token hook as non-owner vm.expectRevert("LibDiamond: Must be contract or owner"); @@ -224,7 +224,7 @@ contract TokenHookTest is TestHelper { // try to dewhitelist a non existent token hook as owner vm.expectRevert("LibTokenHook: Hook not whitelisted"); vm.prank(deployer); - bs.dewhitelistTokenHook(address(1)); + bs.removeTokenHook(address(1)); // try to update a non existent token hook as owner vm.expectRevert("LibTokenHook: Hook not whitelisted"); @@ -246,7 +246,7 @@ contract TokenHookTest is TestHelper { // try to whitelist a token hook with a non-contract target vm.prank(deployer); vm.expectRevert("LibTokenHook: Target is not a contract"); - bs.whitelistTokenHook( + bs.addTokenHook( address(randomMockTokenAddress), IMockFBeanstalk.TokenHook({ target: randomMockTokenAddress, // invalid target @@ -258,7 +258,7 @@ contract TokenHookTest is TestHelper { // try to whitelist a token hook on a contract with an invalid selector vm.prank(deployer); vm.expectRevert("LibTokenHook: Invalid TokenHook implementation"); - bs.whitelistTokenHook( + bs.addTokenHook( address(mockToken), IMockFBeanstalk.TokenHook({ target: address(mockToken), @@ -275,7 +275,7 @@ contract TokenHookTest is TestHelper { // try to whitelist a token hook on a contract with an invalid encode type, expect early revert vm.prank(deployer); vm.expectRevert("LibTokenHook: Invalid encodeType"); - bs.whitelistTokenHook( + bs.addTokenHook( address(mockToken), IMockFBeanstalk.TokenHook({ target: address(mockToken), From e242c3f0dcedd0d8f32e17db2bab3be11fb0e171 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 18:11:24 +0300 Subject: [PATCH 082/270] remove check for token hook and merge call into a single function --- contracts/libraries/Token/LibTokenHook.sol | 3 ++- contracts/libraries/Token/LibTransfer.sol | 7 ++----- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 2fc8d5c7..ad877ffa 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -109,8 +109,9 @@ library LibTokenHook { * @param to The recipient address. * @param amount The transfer amount. */ - function callPreTransferHook(address token, address from, address to, uint256 amount) internal { + function checkForAndCallPreTransferHook(address token, address from, address to, uint256 amount) internal { TokenHook memory hook = getTokenHook(token); + if (hook.target == address(0)) return; // call the hook. If it reverts, revert the entire transfer. (bool success, ) = hook.target.call( diff --git a/contracts/libraries/Token/LibTransfer.sol b/contracts/libraries/Token/LibTransfer.sol index bea138e3..c024cf2a 100644 --- a/contracts/libraries/Token/LibTransfer.sol +++ b/contracts/libraries/Token/LibTransfer.sol @@ -44,11 +44,8 @@ library LibTransfer { To toMode ) internal returns (uint256 transferredAmount) { // if the transfer involves internal balances and the token has a hook, call the hook - if ( - (fromMode == From.INTERNAL || toMode == To.INTERNAL) && - LibTokenHook.hasTokenHook(address(token)) - ) { - LibTokenHook.callPreTransferHook(address(token), sender, recipient, amount); + if (fromMode == From.INTERNAL || toMode == To.INTERNAL) { + LibTokenHook.checkForAndCallPreTransferHook(address(token), sender, recipient, amount); } if (fromMode == From.EXTERNAL && toMode == To.EXTERNAL) { From 2e813e20eb78d754cf1c34b376c69d5b92672862 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 29 Aug 2025 15:12:52 +0000 Subject: [PATCH 083/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/libraries/Token/LibTokenHook.sol | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index ad877ffa..0452216f 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -109,7 +109,12 @@ library LibTokenHook { * @param to The recipient address. * @param amount The transfer amount. */ - function checkForAndCallPreTransferHook(address token, address from, address to, uint256 amount) internal { + function checkForAndCallPreTransferHook( + address token, + address from, + address to, + uint256 amount + ) internal { TokenHook memory hook = getTokenHook(token); if (hook.target == address(0)) return; From b488a018bd5fd9d1014738d401c7641fc7c2bc83 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 18:16:51 +0300 Subject: [PATCH 084/270] add additional encode type --- contracts/libraries/Token/LibTokenHook.sol | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index ad877ffa..1855588b 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -115,7 +115,7 @@ library LibTokenHook { // call the hook. If it reverts, revert the entire transfer. (bool success, ) = hook.target.call( - encodeHookCall(hook.encodeType, hook.selector, from, to, amount) + encodeHookCall(hook.encodeType, hook.selector, token, from, to, amount) ); require(success, "LibTokenHook: Hook execution failed"); @@ -145,6 +145,7 @@ library LibTokenHook { * @notice Encodes a hook call for a token before an internal transfer. * @param encodeType The encode type byte, indicating the parameters to be passed to the hook. * @param selector The selector to call on the target contract. + * @param token The token being transferred. * @param from The sender address from the transfer. * @param to The recipient address from the transfer. * @param amount The transfer amount. @@ -152,14 +153,17 @@ library LibTokenHook { function encodeHookCall( bytes1 encodeType, bytes4 selector, + address token, address from, address to, uint256 amount ) internal pure returns (bytes memory) { if (encodeType == 0x00) { return abi.encodeWithSelector(selector, from, to, amount); - // any other encode types should be added here + } else if (encodeType == 0x01) { + return abi.encodeWithSelector(selector, token, from, to, amount); } else { + // any other encode types should be added here revert("LibTokenHook: Invalid encodeType"); } } From 71dd4add135e5baf8e42980de652fc3d8181caec Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 20:28:02 +0300 Subject: [PATCH 085/270] use Implementation struct instead of hook struct --- .../beanstalk/facets/farm/TokenHookFacet.sol | 12 +++---- .../init/shipments/InitBeanstalkShipments.sol | 7 ++-- contracts/beanstalk/storage/System.sol | 8 +++-- contracts/interfaces/IMockFBeanstalk.sol | 6 ++-- contracts/libraries/Token/LibTokenHook.sol | 32 ++++++++--------- .../mocks/mockFacets/MockTokenHookFacet.sol | 17 ++++----- .../beanstalkShipments/SiloPayback.t.sol | 5 +-- test/foundry/token/TokenHook.t.sol | 35 +++++++++++-------- 8 files changed, 66 insertions(+), 56 deletions(-) diff --git a/contracts/beanstalk/facets/farm/TokenHookFacet.sol b/contracts/beanstalk/facets/farm/TokenHookFacet.sol index 8bf6ecc6..f6e4f4f8 100644 --- a/contracts/beanstalk/facets/farm/TokenHookFacet.sol +++ b/contracts/beanstalk/facets/farm/TokenHookFacet.sol @@ -8,7 +8,7 @@ import {ReentrancyGuard} from "contracts/beanstalk/ReentrancyGuard.sol"; import {Invariable} from "contracts/beanstalk/Invariable.sol"; import {LibDiamond} from "contracts/libraries/LibDiamond.sol"; import {LibTokenHook} from "contracts/libraries/Token/LibTokenHook.sol"; -import {TokenHook} from "contracts/beanstalk/storage/System.sol"; +import {Implementation} from "contracts/beanstalk/storage/System.sol"; /** * @title TokenHookFacet @@ -19,7 +19,7 @@ contract TokenHookFacet is Invariable, ReentrancyGuard { // /** // * @notice Registers a pre-transfer hook for a specific token. // * @param token The token address to register the hook for. - // * @param hook The TokenHook struct. (See System.{TokenHook}) + // * @param hook The Implementation token hook struct. (See System.{Implementation}) // */ // function whitelistTokenHook( // address token, @@ -43,11 +43,11 @@ contract TokenHookFacet is Invariable, ReentrancyGuard { // /** // * @notice Updates a pre-transfer hook for a specific token. // * @param token The token address to update the hook for. - // * @param hook The new TokenHook struct. + // * @param hook The new Implementation token hook struct. (See System.{Implementation}) // */ // function updateTokenHook( // address token, - // TokenHook memory hook + // Implementation memory hook // ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { // LibDiamond.enforceIsOwnerOrContract(); // LibTokenHook.updateTokenHook(token, hook); @@ -64,9 +64,9 @@ contract TokenHookFacet is Invariable, ReentrancyGuard { /** * @notice Gets the pre-transfer hook struct for a specific token. * @param token The token address. - * @return TokenHook struct for the token. (See System.{TokenHook}) + * @return Implementation token hook struct for the token. (See System.{Implementation}) */ - function getTokenHook(address token) external view returns (TokenHook memory) { + function getTokenHook(address token) external view returns (Implementation memory) { return LibTokenHook.getTokenHook(token); } } diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index 3a1ae517..86488ddb 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -7,7 +7,7 @@ pragma solidity ^0.8.20; import "contracts/libraries/LibAppStorage.sol"; import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; -import {TokenHook} from "contracts/beanstalk/storage/System.sol"; +import {Implementation} from "contracts/beanstalk/storage/System.sol"; import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {LibTokenHook} from "contracts/libraries/Token/LibTokenHook.sol"; @@ -68,10 +68,11 @@ contract InitBeanstalkShipments { AppStorage storage s = LibAppStorage.diamondStorage(); LibTokenHook.addTokenHook( siloPayback, - TokenHook({ + Implementation({ target: address(siloPayback), selector: ISiloPayback.protocolUpdate.selector, - encodeType: 0x00 + encodeType: 0x00, + data: "" // data is unused here }) ); } diff --git a/contracts/beanstalk/storage/System.sol b/contracts/beanstalk/storage/System.sol index 676f4e45..51e3ae64 100644 --- a/contracts/beanstalk/storage/System.sol +++ b/contracts/beanstalk/storage/System.sol @@ -40,7 +40,10 @@ import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; * @param evaluationParameters See {EvaluationParameters}. * @param sop See {SeasonOfPlenty}. * @param gauges See {Gauge}. - * @param tokenHook A mapping from token address to the pre-transfer hook to be called before a token is transferred from a user's internal balance. + * @param tokenHook A mapping from token address to the pre-transfer hook Implementation to be called before a token is transferred from a user's internal balance. + * - Encode type 0x00 indicates that the hook receives (address from, address to, uint256 amount) as arguments. + * This is in line with the default OpenZeppelin ERC20 _update pre-transfer function. + * - Encode type 0x01 indicates that the hook receives (address token, address from, address to, uint256 amount) as arguments. */ struct System { address bean; @@ -77,7 +80,7 @@ struct System { SeasonOfPlenty sop; ExtEvaluationParameters extEvaluationParameters; GaugeData gaugeData; - mapping(address => TokenHook) tokenHook; + mapping(address => Implementation) tokenHook; // A buffer is not included here, bc current layout of AppStorage makes it unnecessary. } @@ -334,6 +337,7 @@ struct ShipmentRoute { * @param data Any additional data, for example timeout * @dev assumes all future implementations will use the same parameters as the beanstalk * gaugePoint and liquidityWeight implementations. + * @dev Can also be used to store token hooks to be called before a token is transferred from a user's internal balance. */ struct Implementation { address target; // 20 bytes diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 14d43646..9aba82d9 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1926,13 +1926,13 @@ interface IMockFBeanstalk { function setPenaltyRatio(uint256 penaltyRatio) external; - function addTokenHook(address token, TokenHook memory hook) external payable; + function addTokenHook(address token, Implementation memory hook) external payable; function removeTokenHook(address token) external payable; - function updateTokenHook(address token, TokenHook memory hook) external payable; + function updateTokenHook(address token, Implementation memory hook) external payable; function hasTokenHook(address token) external view returns (bool); - function getTokenHook(address token) external view returns (TokenHook memory); + function getTokenHook(address token) external view returns (Implementation memory); } diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 0a910110..c85bb853 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -5,7 +5,7 @@ pragma solidity ^0.8.20; import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; -import {TokenHook} from "contracts/beanstalk/storage/System.sol"; +import {Implementation} from "contracts/beanstalk/storage/System.sol"; import {LibAppStorage} from "../LibAppStorage.sol"; import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; @@ -34,16 +34,16 @@ library LibTokenHook { /** * @notice Registers and verifies a token hook for a specific token. * @param token The token address to register the hook for. - * @param hook The TokenHook struct containing target, selector, and data. + * @param hook The Implementation token hook struct. (See System.{Implementation}) */ - function addTokenHook(address token, TokenHook memory hook) internal { + function addTokenHook(address token, Implementation memory hook) internal { AppStorage storage s = LibAppStorage.diamondStorage(); require(token != address(0), "LibTokenHook: Invalid token address"); require(hook.target != address(0), "LibTokenHook: Invalid target address"); require(hook.selector != bytes4(0), "LibTokenHook: Invalid selector"); // Verify the hook implementation is callable - verifyPreTransferHook(token, hook); + verifyPreTransferHook(hook); s.sys.tokenHook[token] = hook; @@ -66,15 +66,12 @@ library LibTokenHook { /** * @notice Updates a pre-transfer hook for a specific token. * @param token The token address to update the hook for. - * @param hook The new TokenHook struct. + * @param hook The new Implementation token hook struct. (See System.{Implementation}) */ - function updateTokenHook(address token, TokenHook memory hook) internal { - AppStorage storage s = LibAppStorage.diamondStorage(); - require(s.sys.tokenHook[token].target != address(0), "LibTokenHook: Hook not whitelisted"); - - // remove old hook + function updateTokenHook(address token, Implementation memory hook) internal { + // remove old hook, check for validity removeTokenHook(token); - // add new hook + // add new hook, verify implementation addTokenHook(token, hook); } @@ -91,9 +88,9 @@ library LibTokenHook { /** * @notice Gets the pre-transfer hook for a specific token. * @param token The token address. - * @return The TokenHook struct for the token. + * @return The Implementation token hook struct for the token. (See System.{Implementation}) */ - function getTokenHook(address token) internal view returns (TokenHook memory) { + function getTokenHook(address token) internal view returns (Implementation memory) { AppStorage storage s = LibAppStorage.diamondStorage(); return s.sys.tokenHook[token]; } @@ -115,7 +112,7 @@ library LibTokenHook { address to, uint256 amount ) internal { - TokenHook memory hook = getTokenHook(token); + Implementation memory hook = getTokenHook(token); if (hook.target == address(0)) return; // call the hook. If it reverts, revert the entire transfer. @@ -133,15 +130,14 @@ library LibTokenHook { * since they might potentially modify state or emit events so we perform a regular call with * default parameters and assume the hook does not revert for 0 values. * @dev Care must be taken to only whitelist trusted hooks since a hook is an arbitrary function call. - * @param token The token address. - * @param hook The TokenHook to verify. + * @param hook The Implementation token hook struct. (See System.{Implementation}) */ - function verifyPreTransferHook(address token, TokenHook memory hook) internal { + function verifyPreTransferHook(Implementation memory hook) internal { // verify the target is a contract, regular calls don't revert for non-contracts require(isContract(hook.target), "LibTokenHook: Target is not a contract"); // verify the target is callable (bool success, ) = hook.target.call( - encodeHookCall(hook.encodeType, hook.selector, address(0), address(0), uint256(0)) + encodeHookCall(hook.encodeType, hook.selector, address(0), address(0), address(0), uint256(0)) ); require(success, "LibTokenHook: Invalid TokenHook implementation"); } diff --git a/contracts/mocks/mockFacets/MockTokenHookFacet.sol b/contracts/mocks/mockFacets/MockTokenHookFacet.sol index 1326b017..189a97cd 100644 --- a/contracts/mocks/mockFacets/MockTokenHookFacet.sol +++ b/contracts/mocks/mockFacets/MockTokenHookFacet.sol @@ -8,21 +8,22 @@ import {ReentrancyGuard} from "contracts/beanstalk/ReentrancyGuard.sol"; import {Invariable} from "contracts/beanstalk/Invariable.sol"; import {LibDiamond} from "contracts/libraries/LibDiamond.sol"; import {LibTokenHook} from "contracts/libraries/Token/LibTokenHook.sol"; -import {TokenHook} from "contracts/beanstalk/storage/System.sol"; +import {Implementation} from "contracts/beanstalk/storage/System.sol"; /** - * @title TokenHookFacet + * @title MockTokenHookFacet * @notice Manages the pre-transfer hook whitelist for internal token transfers. + * @dev This facet is a mock implementation of the TokenHookFacet with admin functions not commented out. */ contract MockTokenHookFacet is Invariable, ReentrancyGuard { /** * @notice Registers a pre-transfer hook for a specific token. * @param token The token address to register the hook for. - * @param hook The TokenHook struct. (See System.{TokenHook}) + * @param hook The Implementation token hook struct. (See System.{Implementation}) */ function addTokenHook( address token, - TokenHook memory hook + Implementation memory hook ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { LibDiamond.enforceIsOwnerOrContract(); LibTokenHook.addTokenHook(token, hook); @@ -42,11 +43,11 @@ contract MockTokenHookFacet is Invariable, ReentrancyGuard { /** * @notice Updates a pre-transfer hook for a specific token. * @param token The token address to update the hook for. - * @param hook The new TokenHook struct. + * @param hook The new Implementation token hook struct. (See System.{Implementation}) */ function updateTokenHook( address token, - TokenHook memory hook + Implementation memory hook ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { LibDiamond.enforceIsOwnerOrContract(); LibTokenHook.updateTokenHook(token, hook); @@ -63,9 +64,9 @@ contract MockTokenHookFacet is Invariable, ReentrancyGuard { /** * @notice Gets the pre-transfer hook struct for a specific token. * @param token The token address. - * @return TokenHook struct for the token. (See System.{TokenHook}) + * @return Implementation token hook struct for the token. (See System.{Implementation}) */ - function getTokenHook(address token) external view returns (TokenHook memory) { + function getTokenHook(address token) external view returns (Implementation memory) { return LibTokenHook.getTokenHook(token); } } diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index 8cd882e6..ad43d5e9 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -59,10 +59,11 @@ contract SiloPaybackTest is TestHelper { vm.prank(deployer); bs.addTokenHook( address(siloPayback), - IMockFBeanstalk.TokenHook({ + IMockFBeanstalk.Implementation({ target: address(siloPayback), selector: siloPayback.protocolUpdate.selector, - encodeType: 0x00 + encodeType: 0x00, + data: "" // data is unused }) ); diff --git a/test/foundry/token/TokenHook.t.sol b/test/foundry/token/TokenHook.t.sol index 43d6489a..8bee6ca9 100644 --- a/test/foundry/token/TokenHook.t.sol +++ b/test/foundry/token/TokenHook.t.sol @@ -43,10 +43,11 @@ contract TokenHookTest is TestHelper { ); bs.addTokenHook( address(mockToken), - IMockFBeanstalk.TokenHook({ + IMockFBeanstalk.Implementation({ target: address(mockToken), selector: mockToken.internalTransferUpdate.selector, - encodeType: 0x00 + encodeType: 0x00, + data: "" // data is unused }) ); @@ -197,10 +198,11 @@ contract TokenHookTest is TestHelper { vm.prank(farmers[0]); bs.addTokenHook( address(mockToken), - IMockFBeanstalk.TokenHook({ + IMockFBeanstalk.Implementation({ target: address(mockToken), selector: mockToken.internalTransferUpdate.selector, - encodeType: 0x00 + encodeType: 0x00, + data: "" // data is unused }) ); @@ -214,10 +216,11 @@ contract TokenHookTest is TestHelper { vm.prank(farmers[0]); bs.updateTokenHook( address(mockToken), - IMockFBeanstalk.TokenHook({ + IMockFBeanstalk.Implementation({ target: address(mockToken), selector: mockToken.internalTransferUpdate.selector, - encodeType: 0x00 + encodeType: 0x00, + data: "" // data is unused }) ); @@ -231,10 +234,11 @@ contract TokenHookTest is TestHelper { vm.prank(deployer); bs.updateTokenHook( address(1), - IMockFBeanstalk.TokenHook({ + IMockFBeanstalk.Implementation({ target: address(mockToken), selector: mockToken.internalTransferUpdate.selector, - encodeType: 0x00 + encodeType: 0x00, + data: "" // data is unused }) ); } @@ -248,10 +252,11 @@ contract TokenHookTest is TestHelper { vm.expectRevert("LibTokenHook: Target is not a contract"); bs.addTokenHook( address(randomMockTokenAddress), - IMockFBeanstalk.TokenHook({ + IMockFBeanstalk.Implementation({ target: randomMockTokenAddress, // invalid target selector: mockToken.internalTransferUpdate.selector, - encodeType: 0x00 + encodeType: 0x00, + data: "" // data is unused }) ); @@ -260,10 +265,11 @@ contract TokenHookTest is TestHelper { vm.expectRevert("LibTokenHook: Invalid TokenHook implementation"); bs.addTokenHook( address(mockToken), - IMockFBeanstalk.TokenHook({ + IMockFBeanstalk.Implementation({ target: address(mockToken), selector: bytes4(0x12345678), // invalid selector - encodeType: 0x00 + encodeType: 0x00, + data: "" // data is unused }) ); } @@ -277,10 +283,11 @@ contract TokenHookTest is TestHelper { vm.expectRevert("LibTokenHook: Invalid encodeType"); bs.addTokenHook( address(mockToken), - IMockFBeanstalk.TokenHook({ + IMockFBeanstalk.Implementation({ target: address(mockToken), selector: mockToken.internalTransferUpdate.selector, - encodeType: 0x01 // invalid encode type + encodeType: 0x02, // invalid encode type + data: "" // data is unused }) ); } From 0b495678509ca80b40c483d8613b625944420ead Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 29 Aug 2025 17:29:30 +0000 Subject: [PATCH 086/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/libraries/Token/LibTokenHook.sol | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index c85bb853..a85dff86 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -137,7 +137,14 @@ library LibTokenHook { require(isContract(hook.target), "LibTokenHook: Target is not a contract"); // verify the target is callable (bool success, ) = hook.target.call( - encodeHookCall(hook.encodeType, hook.selector, address(0), address(0), address(0), uint256(0)) + encodeHookCall( + hook.encodeType, + hook.selector, + address(0), + address(0), + address(0), + uint256(0) + ) ); require(success, "LibTokenHook: Invalid TokenHook implementation"); } From 14d1f58ccd35d537d0050d50e41dcf0cb2604b57 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 29 Aug 2025 21:16:27 +0300 Subject: [PATCH 087/270] update events --- contracts/libraries/Token/LibTokenHook.sol | 27 +++++++++--- test/foundry/token/TokenHook.t.sol | 50 +++++++++++++--------- 2 files changed, 50 insertions(+), 27 deletions(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index c85bb853..9ab32f8b 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -19,7 +19,7 @@ library LibTokenHook { /** * @notice Emitted when a pre-transfer token hook is registered. */ - event AddedTokenHook(address indexed token, address indexed target, bytes4 selector); + event AddedTokenHook(address indexed token, Implementation hook); /** * @notice Emitted when a whitelisted pre-transfer token hook is removed. @@ -29,7 +29,7 @@ library LibTokenHook { /** * @notice Emitted when a whitelisted pre-transfer token hook is called. */ - event TokenHookCalled(address indexed token, address indexed target, bytes4 selector); + event TokenHookCalled(address indexed token, address indexed target, bytes encodedCall); /** * @notice Registers and verifies a token hook for a specific token. @@ -47,7 +47,7 @@ library LibTokenHook { s.sys.tokenHook[token] = hook; - emit AddedTokenHook(token, hook.target, hook.selector); + emit AddedTokenHook(token, hook); } /** @@ -116,12 +116,18 @@ library LibTokenHook { if (hook.target == address(0)) return; // call the hook. If it reverts, revert the entire transfer. - (bool success, ) = hook.target.call( - encodeHookCall(hook.encodeType, hook.selector, token, from, to, amount) + bytes memory encodedCall = encodeHookCall( + hook.encodeType, + hook.selector, + token, + from, + to, + amount ); + (bool success, ) = hook.target.call(encodedCall); require(success, "LibTokenHook: Hook execution failed"); - emit TokenHookCalled(token, hook.target, hook.selector); + emit TokenHookCalled(token, hook.target, encodedCall); } /** @@ -137,7 +143,14 @@ library LibTokenHook { require(isContract(hook.target), "LibTokenHook: Target is not a contract"); // verify the target is callable (bool success, ) = hook.target.call( - encodeHookCall(hook.encodeType, hook.selector, address(0), address(0), address(0), uint256(0)) + encodeHookCall( + hook.encodeType, + hook.selector, + address(0), + address(0), + address(0), + uint256(0) + ) ); require(success, "LibTokenHook: Invalid TokenHook implementation"); } diff --git a/test/foundry/token/TokenHook.t.sol b/test/foundry/token/TokenHook.t.sol index 8bee6ca9..bf57c903 100644 --- a/test/foundry/token/TokenHook.t.sol +++ b/test/foundry/token/TokenHook.t.sol @@ -13,8 +13,8 @@ contract TokenHookTest is TestHelper { event RegularTransferTokenHookCalled(address indexed from, address indexed to, uint256 amount); // Protocol events - event TokenHookCalled(address indexed token, address indexed target, bytes4 selector); - event AddedTokenHook(address indexed token, address indexed target, bytes4 selector); + event TokenHookCalled(address indexed token, address indexed target, bytes encodedCall); + event AddedTokenHook(address indexed token, IMockFBeanstalk.Implementation hook); // test accounts address[] farmers; @@ -34,22 +34,17 @@ contract TokenHookTest is TestHelper { mockToken = new MockTokenWithHook("MockHookToken", "MOCKHT", address(bs)); // Whitelist token hook for internal transfers, expect whitelist event to be emitted - vm.prank(deployer); + vm.startPrank(deployer); vm.expectEmit(true, true, true, true); - emit AddedTokenHook( - address(mockToken), - address(mockToken), - mockToken.internalTransferUpdate.selector - ); - bs.addTokenHook( - address(mockToken), - IMockFBeanstalk.Implementation({ - target: address(mockToken), - selector: mockToken.internalTransferUpdate.selector, - encodeType: 0x00, - data: "" // data is unused - }) - ); + IMockFBeanstalk.Implementation memory hook = IMockFBeanstalk.Implementation({ + target: address(mockToken), + selector: mockToken.internalTransferUpdate.selector, + encodeType: 0x00, + data: "" // data is unused + }); + emit AddedTokenHook(address(mockToken), hook); + bs.addTokenHook(address(mockToken), hook); + vm.stopPrank(); // init users farmers.push(users[1]); @@ -98,7 +93,12 @@ contract TokenHookTest is TestHelper { emit TokenHookCalled( address(mockToken), // token address(mockToken), // target - mockToken.internalTransferUpdate.selector // selector + abi.encodeWithSelector( + mockToken.internalTransferUpdate.selector, + farmers[0], + farmers[1], + transferAmount + ) ); bs.transferInternalTokenFrom( address(mockToken), @@ -138,7 +138,12 @@ contract TokenHookTest is TestHelper { emit TokenHookCalled( address(mockToken), // token address(mockToken), // target - mockToken.internalTransferUpdate.selector // selector + abi.encodeWithSelector( + mockToken.internalTransferUpdate.selector, + farmers[0], + farmers[0], + transferAmount + ) ); bs.sendTokenToInternalBalance(address(mockToken), farmers[0], transferAmount); @@ -171,7 +176,12 @@ contract TokenHookTest is TestHelper { emit TokenHookCalled( address(mockToken), // token address(mockToken), // target - mockToken.internalTransferUpdate.selector // selector + abi.encodeWithSelector( + mockToken.internalTransferUpdate.selector, + farmers[0], + farmers[0], + transferAmount + ) ); bs.transferInternalTokenFrom( address(mockToken), From 648802b38c5eb4c165d82ce0658280f50e581637 Mon Sep 17 00:00:00 2001 From: default-juice Date: Sun, 31 Aug 2025 18:06:31 +0300 Subject: [PATCH 088/270] small distributor fixes --- .../ContractPaybackDistributor.sol | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index d4122011..fe1b5c72 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -154,7 +154,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive * @param receiver The address to transfer the assets to */ function _transferAllAssetsForAccount(address account, address receiver) internal { - AccountData storage accountData = accounts[account]; + AccountData memory accountData = accounts[account]; // transfer silo payback tokens to the receiver if (accountData.siloPaybackTokensOwed > 0) { @@ -190,8 +190,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive //////////////////////////// ERC1155Receiver //////////////////////////// /** - * @dev For this contract to receive minted fertilizers from the barn payback contract, - * it must implement the IERC1155Receiver interface. + * @dev ERC-1155 hook allowing this contract to receive a single fertilizer from the barn payback contract */ function onERC1155Received( address operator, @@ -204,8 +203,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive } /** - * @dev For this contract to receive minted fertilizers from the barn payback contract, - * it must implement the IERC1155Receiver interface. + * @dev ERC-1155 hook allowing this contract to receive a batch of fertilizers from the barn payback contract */ function onERC1155BatchReceived( address operator, @@ -218,8 +216,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive } /** - * @dev For this contract to receive minted fertilizers from the barn payback contract, - * it must implement the IERC1155Receiver interface. + * @dev ERC-1155 compliance function to indicate that this contract implements the IERC1155Receiver interface */ function supportsInterface(bytes4 interfaceId) external view returns (bool) { return interfaceId == type(IERC1155Receiver).interfaceId; From ffb7e19fe6229add10eb854725a287235046ce5e Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sun, 31 Aug 2025 15:45:22 +0000 Subject: [PATCH 089/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../init/shipments/InitBeanstalkShipments.sol | 3 +-- contracts/ecosystem/ShipmentPlanner.sol | 20 +++++++++++++++---- .../L1ContractMessenger.sol | 11 +++++----- contracts/interfaces/IBeanstalk.sol | 2 -- contracts/interfaces/IPayback.sol | 1 - contracts/mocks/MockIsContract.sol | 3 +-- contracts/mocks/MockPayback.sol | 1 - .../beanstalkShipments/BarnPayback.t.sol | 8 ++++---- .../BeanstalkShipmentsState.t.sol | 4 ++-- .../ContractDistribution.t.sol | 6 +++--- 10 files changed, 32 insertions(+), 27 deletions(-) diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index 11499869..9a78a494 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -13,7 +13,6 @@ import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; * The first route is the silo payback contract and the second route is the barn payback contract. **/ contract InitBeanstalkShipments { - uint256 constant REPAYMENT_FIELD_ID = 1; /// @dev total length of the podline. The largest index in beanstalk_field.json incremented by the amount. uint256 constant REPAYMENT_FIELD_PODS = 919768387056514; @@ -49,7 +48,7 @@ contract InitBeanstalkShipments { require(s.sys.fieldCount == 1, "Repayment field already exists"); uint256 fieldId = s.sys.fieldCount; s.sys.fieldCount++; - // init global state for new field, + // init global state for new field, // harvestable and harvested vars are 0 since we shifted all plots in the data to start from 0 s.sys.fields[REPAYMENT_FIELD_ID].pods = REPAYMENT_FIELD_PODS; emit FieldAdded(fieldId); diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index 2e1aed92..361ab5ac 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -86,7 +86,10 @@ contract ShipmentPlanner { */ function getBudgetPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan) { uint256 budgetRatio = budgetMintRatio(); - require(budgetRatio > 0, "ShipmentPlanner: Supply above flipping point, no budget allocation"); + require( + budgetRatio > 0, + "ShipmentPlanner: Supply above flipping point, no budget allocation" + ); uint256 points = (BUDGET_POINTS * budgetRatio) / PRECISION; uint256 cap = (beanstalk.time().standardMintedBeans * 3) / 100; return ShipmentPlan({points: points, cap: cap}); @@ -100,7 +103,10 @@ contract ShipmentPlanner { bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { uint256 paybackRatio = PRECISION - budgetMintRatio(); - require(paybackRatio > 0, "ShipmentPlanner: Supply above flipping point, no payback allocation"); + require( + paybackRatio > 0, + "ShipmentPlanner: Supply above flipping point, no payback allocation" + ); (uint256 fieldId, address siloPaybackContract, address barnPaybackContract) = abi.decode( data, @@ -156,7 +162,10 @@ contract ShipmentPlanner { ) external view returns (ShipmentPlan memory shipmentPlan) { // get the payback ratio to scale the points if needed uint256 paybackRatio = PRECISION - budgetMintRatio(); - require(paybackRatio > 0, "ShipmentPlanner: Supply above flipping point, no payback allocation"); + require( + paybackRatio > 0, + "ShipmentPlanner: Supply above flipping point, no payback allocation" + ); // perform a static call to the silo payback contract to get the remaining silo debt (address siloPaybackContract, address barnPaybackContract) = abi.decode( data, @@ -203,7 +212,10 @@ contract ShipmentPlanner { ) external view returns (ShipmentPlan memory shipmentPlan) { // get the payback ratio to scale the points if needed uint256 paybackRatio = PRECISION - budgetMintRatio(); - require(paybackRatio > 0, "ShipmentPlanner: Supply above flipping point, no payback allocation"); + require( + paybackRatio > 0, + "ShipmentPlanner: Supply above flipping point, no payback allocation" + ); // perform a static call to the fert payback contract to get the remaining fert debt (address siloPaybackContract, address barnPaybackContract) = abi.decode( diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index 92b26062..914f6af8 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -3,12 +3,8 @@ pragma solidity ^0.8.20; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; - interface IContractPaybackDistributor { - function claimFromL1Message( - address caller, - address receiver - ) external; + function claimFromL1Message(address caller, address receiver) external; } /** @@ -57,7 +53,10 @@ contract L1ContractMessenger { function claimL2BeanstalkAssets(address l2Receiver) public onlyWhitelistedL1Caller { MESSENGER.sendMessage( L2_CONTRACT_PAYBACK_DISTRIBUTOR, // target - abi.encodeCall(IContractPaybackDistributor.claimFromL1Message, (msg.sender, l2Receiver)), // message + abi.encodeCall( + IContractPaybackDistributor.claimFromL1Message, + (msg.sender, l2Receiver) + ), // message MAX_GAS_LIMIT // gas limit ); } diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 9ceacabf..f3082566 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -197,7 +197,6 @@ interface IBeanstalk { LibTransfer.To toMode ) external payable; - function transferPlot( address sender, address recipient, @@ -207,7 +206,6 @@ interface IBeanstalk { uint256 end ) external payable; - function transferPlots( address sender, address recipient, diff --git a/contracts/interfaces/IPayback.sol b/contracts/interfaces/IPayback.sol index 22ed87e8..2b61d125 100644 --- a/contracts/interfaces/IPayback.sol +++ b/contracts/interfaces/IPayback.sol @@ -1,7 +1,6 @@ //SPDX-License-Identifier: MIT pragma solidity ^0.8.20; - // Note: Old Assumption that the Payback contract is just one interface IPayback { // The amount of Bean remaining to pay back silo. diff --git a/contracts/mocks/MockIsContract.sol b/contracts/mocks/MockIsContract.sol index de4d27b5..7e4f197a 100644 --- a/contracts/mocks/MockIsContract.sol +++ b/contracts/mocks/MockIsContract.sol @@ -1,4 +1,3 @@ - /** * SPDX-License-Identifier: MIT **/ @@ -19,4 +18,4 @@ contract MockIsContract { } return size > 0; } -} \ No newline at end of file +} diff --git a/contracts/mocks/MockPayback.sol b/contracts/mocks/MockPayback.sol index f2df1207..0c16c240 100644 --- a/contracts/mocks/MockPayback.sol +++ b/contracts/mocks/MockPayback.sol @@ -5,7 +5,6 @@ pragma solidity ^0.8.20; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {IPayback} from "contracts/interfaces/IPayback.sol"; - contract MockPayback is IPayback { uint256 constant INITIAL_REMAINING = 1_000_000_000e6; diff --git a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol index 2e1dca33..638ef87c 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol @@ -267,21 +267,21 @@ contract BarnPaybackTest is TestHelper { // Send rewards to create claimable beans for FERT_ID_1 uint256 paymentAmount = 500e6; _sendRewardsToContract(paymentAmount); - + // Check user1 has rewards available uint256[] memory user1Ids = new uint256[](1); user1Ids[0] = FERT_ID_1; uint256 pendingRewards = barnPayback.balanceOfFertilized(user1, user1Ids); assertGt(pendingRewards, 0, "User1 should have pending rewards"); - + // Get user1's initial internal bean balance uint256 initialBalance = IERC20(BEAN).balanceOf(user1); - + // Transfer fertilizer to another address address recipient = makeAddr("recipient"); vm.prank(user1); barnPayback.safeTransferFrom(user1, recipient, FERT_ID_1, 10, ""); - + // Check that beans were transferred to user1's internal balance uint256 finalBalance = IERC20(BEAN).balanceOf(user1); assertEq(finalBalance, initialBalance, "Beans should be transferred to external balance"); diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index cb79fde2..0542c496 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -346,7 +346,7 @@ contract BeanstalkShipmentsStateTest is TestHelper { for (uint256 i = 0; i < accountNumber; i++) { account = vm.readLine(BARN_ADDRESSES_PATH); address accountAddr = vm.parseAddress(account); - + // skip contract accounts if (isContract(accountAddr)) { totalContractAccounts++; @@ -461,4 +461,4 @@ contract BeanstalkShipmentsStateTest is TestHelper { } return size > 0; } -} \ No newline at end of file +} diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 78e9b532..3f6cde47 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -14,7 +14,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {L1ContractMessenger} from "contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol"; import {FieldFacet} from "contracts/beanstalk/facets/field/FieldFacet.sol"; import {MockFieldFacet} from "contracts/mocks/mockFacets/MockFieldFacet.sol"; -import {ContractPaybackDistributor,ICrossDomainMessenger} from "contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol"; +import {ContractPaybackDistributor, ICrossDomainMessenger} from "contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol"; contract ContractDistributionTest is TestHelper { // Constants @@ -29,7 +29,8 @@ contract ContractDistributionTest is TestHelper { // L1 sender address public constant L1_SENDER = 0x51f472874a303D5262d7668f5a3d17e3317f8E51; - address public constant EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR = 0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000; + address public constant EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR = + 0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000; // Deployed contracts SiloPayback public siloPayback; @@ -203,7 +204,6 @@ contract ContractDistributionTest is TestHelper { * - The call is successful only if the xDomainMessageSender is the L1 sender */ function test_contractDistributionFromL1Message() public { - // try to claim from non-L1 messenger, expect revert vm.startPrank(address(contractAccount1)); vm.expectRevert("ContractPaybackDistributor: Caller not L1 messenger"); From 8da46c5ede0a4f4dde004b01ee6d4840360c4397 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 2 Sep 2025 16:02:25 +0300 Subject: [PATCH 090/270] clean up --- .../barn/BeanstalkFertilizer.sol | 39 ++++++++++++------- .../ContractPaybackDistributor.sol | 2 +- .../L1ContractMessenger.sol | 1 + hardhat.config.js | 4 -- .../BeanstalkShipments.t.sol | 21 +++------- .../BeanstalkShipmentsState.t.sol | 9 ++++- 6 files changed, 38 insertions(+), 38 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 640613a1..e292ef7c 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -20,7 +20,6 @@ import {Strings} from "@openzeppelin/contracts/utils/Strings.sol"; * @dev Fertilizer tailored implementation of the ERC-1155 standard. * We rewrite transfer and mint functions to allow the balance transfer function be overwritten as well. * Merged from multiple contracts: Fertilizer.sol, Internalizer.sol, Fertilizer1155.sol from the beanstalk protocol. - * All metadata-related functionality has been removed. */ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable { using LibRedundantMath256 for uint256; @@ -508,9 +507,9 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran function uri(uint256 _id) public view virtual override returns (string memory) { // get the remaining bpf (id - fert.bpf) uint128 bpfRemaining = uint128(_id) >= fert.bpf ? uint128(_id) - fert.bpf : 0; - - // todo: use an image uri if we decide to add one - string memory imageUri = ""; + + // get the image URI + string memory imageUri = imageURI(_id, bpfRemaining); // assemble and return the json URI return ( @@ -534,6 +533,16 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran ); } + /** + * @dev imageURI returns the base64 encoded image URI representation of the Fertilizer + * @param _id - the id of the Fertilizer + * @param bpfRemaining - the bpfRemaining of the Fertilizer + * @return imageUri - the image URI representation of the Fertilizer + */ + function imageURI(uint256 _id, uint128 bpfRemaining) public view returns (string memory) { + return ""; + } + function name() external pure returns (string memory) { return "Beanstalk Payback Fertilizer"; } @@ -542,17 +551,6 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran return "bsFERT"; } - /** - * @notice Checks if an account is a contract. - */ - function isContract(address account) internal view returns (bool) { - uint size; - assembly { - size := extcodesize(account) - } - return size > 0; - } - /** * @notice Formats a the bpf remaining value with 6 decimals to a string with 2 decimals. * @param number - The bpf value to format. @@ -574,4 +572,15 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran result = string(abi.encodePacked(result, decimalPart.toString())); return result; } + + /** + * @notice Checks if an account is a contract. + */ + function isContract(address account) internal view returns (bool) { + uint size; + assembly { + size := extcodesize(account) + } + return size > 0; + } } diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index fe1b5c72..694697f5 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -149,7 +149,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive /** * @notice Transfers all assets for a whitelisted contract account to a receiver - * note: if the receiver is a contract it must implement the IERC1155Receiver interface + * note: if the receiver is a contract it must implement the ERC1155Receiver interface * @param account The address of the account to claim from * @param receiver The address to transfer the assets to */ diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index 914f6af8..c02b1e2a 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -17,6 +17,7 @@ contract L1ContractMessenger { // (https://docs.base.org/base-chain/network-information/base-contracts#l1-contract-addresses) ICrossDomainMessenger public constant MESSENGER = ICrossDomainMessenger(0x866E82a600A1414e583f7F13623F1aC5d58b0Afa); + // The address of the L2 ContractPaybackDistributor contract address public immutable L2_CONTRACT_PAYBACK_DISTRIBUTOR; diff --git a/hardhat.config.js b/hardhat.config.js index 28005ea3..8e48c6df 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2264,10 +2264,6 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio account: owner }); console.log("āœ… Shipment routes updated and new field created\n"); - - console.log("=".repeat(80)); - console.log("šŸŽ‰ BEANSTALK SHIPMENTS INITIALIZATION COMPLETED"); - console.log("=".repeat(80)); } ); diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 1156a9af..38a4071e 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -19,8 +19,9 @@ import {ContractPaybackDistributor} from "contracts/ecosystem/beanstalkShipments * @notice Tests shipment distribution and claiming functionality for the beanstalk shipments system. * This tests should be ran against a local node after the deployment and initialization task is complete. * 1. Create a local anvil node at block 33349326, right before Season 5952 where the deltab was +19,281 TWAĪ”P - * 2. Run the hardhat task: `npx hardhat compile && npx hardhat beanstalkShipments --network localhost` + * 2. Run the hardhat tasks to initialize the shipments.` * 3. Run the test: `forge test --match-contract BeanstalkShipmentsTest --fork-url http://localhost:8545` + * Alternatively, the tests need to be ran using a fork after the deployment is done. */ contract BeanstalkShipmentsTest is TestHelper { // Contracts @@ -35,20 +36,11 @@ contract BeanstalkShipmentsTest is TestHelper { // Paths // Field - string constant FIELD_ADDRESSES_PATH = - "./scripts/beanstalkShipments/data/exports/accounts/field_addresses.txt"; string constant FIELD_JSON_PATH = "./scripts/beanstalkShipments/data/exports/beanstalk_field.json"; // Silo string constant SILO_ADDRESSES_PATH = "./scripts/beanstalkShipments/data/exports/accounts/silo_addresses.txt"; - string constant SILO_JSON_PATH = - "./scripts/beanstalkShipments/data/exports/beanstalk_silo.json"; - // Barn - string constant BARN_ADDRESSES_PATH = - "./scripts/beanstalkShipments/data/exports/accounts/barn_addresses.txt"; - string constant BARN_JSON_PATH = - "./scripts/beanstalkShipments/data/exports/beanstalk_barn.json"; ////////// State Structs ////////// @@ -81,13 +73,10 @@ contract BeanstalkShipmentsTest is TestHelper { // Contract accounts loaded from JSON file address[] contractAccounts; - // we need to: - // - Verify that all state matches the one in the json files for shipments, silo and barn payback - // - get to a supply where the beanstalk shipments kick in - // - make the system print, check distribution in each contract - // - for each component, make sure everything is distributed correctly - // - make sure that at any point all users can claim their rewards pro rata function setUp() public { + // after deployment, uncomment this, set forkBlock at a later block + // uint256 forkBlock = 33349326; + // vm.createSelectFork("base", forkBlock); _loadContractAccountsFromJson(); } diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index 0542c496..9b6bdd81 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -17,8 +17,9 @@ import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/Syst * @notice Tests state verification for the beanstalk shipments system. * This tests should be ran against a local node after the deployment and initialization task is complete. * 1. Create a local anvil node at block 33349326, right before Season 5952 where the deltab was +19,281 TWAĪ”P - * 2. Run the hardhat task: `npx hardhat compile && npx hardhat beanstalkShipments --network localhost` + * 2. Run the hardhat tasks to initialize the shipments.` * 3. Run the test: `forge test --match-contract BeanstalkShipmentsStateTest --fork-url http://localhost:8545` + * Alternatively, the tests need to be ran using a fork after the deployment is done. */ contract BeanstalkShipmentsStateTest is TestHelper { // Contracts @@ -80,7 +81,11 @@ contract BeanstalkShipmentsStateTest is TestHelper { IBarnPayback barnPayback = IBarnPayback(BARN_PAYBACK); IMockFBeanstalk pinto = IMockFBeanstalk(PINTO); - function setUp() public {} + function setUp() public { + // after deployment, uncomment this, set forkBlock at a later block + // uint256 forkBlock = 33349326; + // vm.createSelectFork("base", forkBlock); + } //////////////////////// STATE VERIFICATION //////////////////////// From 7b3a706c10d00e34d26a74a5009d3a434869b66a Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 2 Sep 2025 13:04:10 +0000 Subject: [PATCH 091/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol | 2 +- .../contractDistribution/L1ContractMessenger.sol | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index e292ef7c..f0873975 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -507,7 +507,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran function uri(uint256 _id) public view virtual override returns (string memory) { // get the remaining bpf (id - fert.bpf) uint128 bpfRemaining = uint128(_id) >= fert.bpf ? uint128(_id) - fert.bpf : 0; - + // get the image URI string memory imageUri = imageURI(_id, bpfRemaining); diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index c02b1e2a..6f9e75a8 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -17,7 +17,7 @@ contract L1ContractMessenger { // (https://docs.base.org/base-chain/network-information/base-contracts#l1-contract-addresses) ICrossDomainMessenger public constant MESSENGER = ICrossDomainMessenger(0x866E82a600A1414e583f7F13623F1aC5d58b0Afa); - + // The address of the L2 ContractPaybackDistributor contract address public immutable L2_CONTRACT_PAYBACK_DISTRIBUTOR; From 4fe4d96dbbcf48236bc06a0bc7072998d4934cbc Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 2 Sep 2025 16:04:31 +0300 Subject: [PATCH 092/270] remove comment from tractor facet --- contracts/beanstalk/facets/farm/TractorFacet.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/beanstalk/facets/farm/TractorFacet.sol b/contracts/beanstalk/facets/farm/TractorFacet.sol index 216f82d1..b5561e63 100644 --- a/contracts/beanstalk/facets/farm/TractorFacet.sol +++ b/contracts/beanstalk/facets/farm/TractorFacet.sol @@ -121,7 +121,7 @@ contract TractorFacet is Invariable, ReentrancyGuard { } /** - * @notice Destroy existing blueprint by incrementing the nonce to type(uint256).max + * @notice Destroy existing blueprint */ function cancelBlueprint( LibTractor.Requisition calldata requisition From ef688767350cde476cc9ebdd356809095fd27948 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 2 Sep 2025 16:14:23 +0300 Subject: [PATCH 093/270] reverse deltab check to benefit from lazy evaluation --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 9c2c17e8..77ab7c7d 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -256,7 +256,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // if the totalDeltaB and totalClaimableStalk are both greater than the min amount, return true // This also guards against double dipping the blueprint after planting or harvesting since stalk will be 0 - return beanstalk.totalDeltaB() > int256(mintwaDeltaB) && totalClaimableStalk > minMowAmount; + return totalClaimableStalk > minMowAmount && beanstalk.totalDeltaB() > int256(mintwaDeltaB); } /** From 45eaf1df0e714284cf61c283a14811de0b99f6be Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 2 Sep 2025 16:28:11 +0300 Subject: [PATCH 094/270] fit immutable naming in distributor --- .../ContractPaybackDistributor.sol | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 694697f5..480e4e82 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -56,11 +56,11 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive mapping(address => AccountData) public accounts; // Beanstalk protocol - IBeanstalk immutable PINTO_PROTOCOL; + IBeanstalk immutable pintoProtocol; // Silo payback token - IERC20 immutable SILO_PAYBACK; + IERC20 immutable siloPayback; // Barn payback token - IBarnPayback immutable BARN_PAYBACK; + IBarnPayback immutable barnPayback; modifier onlyWhitelistedCaller(address caller) { require( @@ -97,9 +97,9 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive address _siloPayback, address _barnPayback ) Ownable(msg.sender) { - PINTO_PROTOCOL = IBeanstalk(_pintoProtocol); - SILO_PAYBACK = IERC20(_siloPayback); - BARN_PAYBACK = IBarnPayback(_barnPayback); + pintoProtocol = IBeanstalk(_pintoProtocol); + siloPayback = IERC20(_siloPayback); + barnPayback = IBarnPayback(_barnPayback); } /** @@ -158,12 +158,12 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive // transfer silo payback tokens to the receiver if (accountData.siloPaybackTokensOwed > 0) { - SILO_PAYBACK.safeTransfer(receiver, accountData.siloPaybackTokensOwed); + siloPayback.safeTransfer(receiver, accountData.siloPaybackTokensOwed); } // transfer fertilizer ERC1155s to the receiver if (accountData.fertilizerIds.length > 0) { - BARN_PAYBACK.safeBatchTransferFrom( + barnPayback.safeBatchTransferFrom( address(this), receiver, accountData.fertilizerIds, @@ -176,7 +176,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive // make an empty array of plotStarts since all plot transfers start from the beginning of the plot uint256[] memory plotStarts = new uint256[](accountData.plotIds.length); if (accountData.plotIds.length > 0) { - PINTO_PROTOCOL.transferPlots( + pintoProtocol.transferPlots( address(this), receiver, REPAYMENT_FIELD_ID, From 291f088eb836a6a0f1d98ded51a5236b371095f1 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 2 Sep 2025 16:34:18 +0300 Subject: [PATCH 095/270] cache and reuse season info --- .../ecosystem/MowPlantHarvestBlueprint.sol | 28 +++++++++++-------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 77ab7c7d..cf0f8d11 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -78,6 +78,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { bool shouldMow; bool shouldPlant; bool shouldHarvest; + IBeanstalk.Season seasonInfo; uint256[] harvestablePlots; LibTractorHelpers.WithdrawalPlan plan; } @@ -112,6 +113,8 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { vars.orderHash = beanstalk.getCurrentBlueprintHash(); vars.account = beanstalk.tractorUser(); vars.tipAddress = params.opParams.tipAddress; + // Cache the current season struct + vars.seasonInfo = beanstalk.time(); // get the user state from the protocol and validate against params ( @@ -119,10 +122,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { vars.shouldMow, vars.shouldPlant, vars.shouldHarvest - ) = _getAndValidateUserState(vars.account, params); + ) = _getAndValidateUserState(vars.account, vars.seasonInfo, params); // validate blueprint - _validateBlueprint(vars.orderHash); + _validateBlueprint(vars.orderHash, vars.seasonInfo.current); // validate order params and revert early if invalid _validateParams(params); @@ -176,7 +179,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // Harvest if the conditions are met if (vars.shouldHarvest) { uint256 harvestedBeans = beanstalk.harvest( - beanstalk.activeField(), + beanstalk.activeField(), vars.harvestablePlots, LibTransfer.To.INTERNAL ); @@ -186,7 +189,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } // Update the last executed season for this blueprint - updateLastExecutedSeason(vars.orderHash, beanstalk.time().current); + updateLastExecutedSeason(vars.orderHash, vars.seasonInfo.current); } /** @@ -200,6 +203,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { */ function _getAndValidateUserState( address account, + IBeanstalk.Season memory seasonInfo, MowPlantHarvestBlueprintStruct calldata params ) internal @@ -223,7 +227,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { shouldMow = _checkSmartMowConditions( params.mowPlantHarvestParams.mintwaDeltaB, params.mowPlantHarvestParams.minMowAmount, - totalClaimableStalk + totalClaimableStalk, + seasonInfo.timestamp, + seasonInfo.period ); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; shouldHarvest = totalHarvestablePods >= params.mowPlantHarvestParams.minHarvestAmount; @@ -246,12 +252,12 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { function _checkSmartMowConditions( uint256 mintwaDeltaB, uint256 minMowAmount, - uint256 totalClaimableStalk + uint256 totalClaimableStalk, + uint256 previousSeasonTimestamp, + uint256 seasonPeriod ) internal view returns (bool) { - IBeanstalk.Season memory seasonInfo = beanstalk.time(); - // if the time until next season is more than the buffer don't mow, too early - uint256 nextSeasonExpectedTimestamp = seasonInfo.timestamp + seasonInfo.period; + uint256 nextSeasonExpectedTimestamp = previousSeasonTimestamp + seasonPeriod; if (nextSeasonExpectedTimestamp - block.timestamp > SMART_MOW_BUFFER) return false; // if the totalDeltaB and totalClaimableStalk are both greater than the min amount, return true @@ -374,10 +380,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } /// @dev validates info related to the blueprint such as the order hash and the last executed season - function _validateBlueprint(bytes32 orderHash) internal view { + function _validateBlueprint(bytes32 orderHash, uint32 currentSeason) internal view { require(orderHash != bytes32(0), "No active blueprint, function must run from Tractor"); require( - orderLastExecutedSeason[orderHash] < beanstalk.time().current, + orderLastExecutedSeason[orderHash] < currentSeason, "Blueprint already executed this season" ); } From d6d2dea974c45fcd43535d527d9972ac4f382114 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 2 Sep 2025 13:35:33 +0000 Subject: [PATCH 096/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index cf0f8d11..d35cc4c1 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -179,7 +179,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // Harvest if the conditions are met if (vars.shouldHarvest) { uint256 harvestedBeans = beanstalk.harvest( - beanstalk.activeField(), + beanstalk.activeField(), vars.harvestablePlots, LibTransfer.To.INTERNAL ); From a52eac5f484b6881968ee6c17f7646f4cf9108d8 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 2 Sep 2025 17:24:02 +0300 Subject: [PATCH 097/270] fix comments, rename smart mow buffer --- .../ecosystem/MowPlantHarvestBlueprint.sol | 67 +++++++++++-------- 1 file changed, 39 insertions(+), 28 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index cf0f8d11..2e1fad17 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -13,8 +13,11 @@ import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol" * @notice Contract for mowing, planting and harvesting with Tractor, with a number of conditions */ contract MowPlantHarvestBlueprint is PerFunctionPausable { - /// @dev Buffer for operators to check if the protocol is close to printing - uint256 public constant SMART_MOW_BUFFER = 5 minutes; + + /** + * @dev Minutes after sunrise to check if the totalDeltaB is about to be positive for the following season + */ + uint256 public constant MINUTES_AFTER_SUNRISE = 55 minutes; /** * @notice Main struct for mow, plant and harvest blueprint @@ -29,7 +32,8 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { /** * @notice Struct to hold mow, plant and harvest parameters * @param minMowAmount The minimum total claimable stalk threshold to mow - * @param mintwaDeltaB The minimum twaDeltaB to mow if the protocol is close to printing + * @param mintwaDeltaB The minimum twaDeltaB to mow if the protocol + * is close to starting the next season above the value target * @param minPlantAmount The earned beans threshold to plant * @param minHarvestAmount The total harvestable pods threshold to harvest * ----------------------------------------------------------- @@ -122,7 +126,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { vars.shouldMow, vars.shouldPlant, vars.shouldHarvest - ) = _getAndValidateUserState(vars.account, vars.seasonInfo, params); + ) = _getAndValidateUserState(vars.account, vars.seasonInfo.timestamp, params); // validate blueprint _validateBlueprint(vars.orderHash, vars.seasonInfo.current); @@ -179,7 +183,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { // Harvest if the conditions are met if (vars.shouldHarvest) { uint256 harvestedBeans = beanstalk.harvest( - beanstalk.activeField(), + beanstalk.activeField(), vars.harvestablePlots, LibTransfer.To.INTERNAL ); @@ -203,7 +207,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { */ function _getAndValidateUserState( address account, - IBeanstalk.Season memory seasonInfo, + uint256 previousSeasonTimestamp, MowPlantHarvestBlueprintStruct calldata params ) internal @@ -228,8 +232,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { params.mowPlantHarvestParams.mintwaDeltaB, params.mowPlantHarvestParams.minMowAmount, totalClaimableStalk, - seasonInfo.timestamp, - seasonInfo.period + previousSeasonTimestamp ); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; shouldHarvest = totalHarvestablePods >= params.mowPlantHarvestParams.minHarvestAmount; @@ -244,21 +247,19 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { /** * @notice Check smart mow conditions to trigger a mow - * @dev A smart mow happens when the protocol is about to print - * and the user has enough claimable stalk such as he gets more yield. - * note: Assumes sunrise is called at the top of the hour. + * @dev A smart mow happens when: + * - `MINUTES_AFTER_SUNRISE` has passed since the last sunrise call + * - The protocol is about to start the next season above the value target. + * - The user has enough claimable stalk such as he gets more yield. * @return bool True if the user should smart mow, false otherwise */ function _checkSmartMowConditions( uint256 mintwaDeltaB, uint256 minMowAmount, uint256 totalClaimableStalk, - uint256 previousSeasonTimestamp, - uint256 seasonPeriod + uint256 previousSeasonTimestamp ) internal view returns (bool) { - // if the time until next season is more than the buffer don't mow, too early - uint256 nextSeasonExpectedTimestamp = previousSeasonTimestamp + seasonPeriod; - if (nextSeasonExpectedTimestamp - block.timestamp > SMART_MOW_BUFFER) return false; + if (block.timestamp - previousSeasonTimestamp < MINUTES_AFTER_SUNRISE) return false; // if the totalDeltaB and totalClaimableStalk are both greater than the min amount, return true // This also guards against double dipping the blueprint after planting or harvesting since stalk will be 0 @@ -308,12 +309,16 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { /** * @notice Helper function to get the total harvestable pods and plots for a user * @param account The address of the user - * @return totalHarvestablePods The total amount of harvestable pods - * @return harvestablePlots The harvestable plot ids for the user + * @return totalUserHarvestablePods The total amount of harvestable pods for the user + * @return userHarvestablePlots The harvestable plot ids for the user */ function _userHarvestablePods( address account - ) internal view returns (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) { + ) + internal + view + returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) + { // Get all plots for the user in the field IBeanstalk.Plot[] memory plots = beanstalk.getPlotsFromAccount( account, @@ -331,7 +336,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } // Allocate the array - harvestablePlots = new uint256[](count); + userHarvestablePlots = new uint256[](count); uint256 j = 0; // Now, fill the array and sum pods @@ -341,19 +346,21 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { if (startIndex + plotPods <= harvestableIndex) { // Fully harvestable - harvestablePlots[j++] = startIndex; - totalHarvestablePods += plotPods; + userHarvestablePlots[j++] = startIndex; + totalUserHarvestablePods += plotPods; } else if (startIndex < harvestableIndex) { // Partially harvestable - harvestablePlots[j++] = startIndex; - totalHarvestablePods += harvestableIndex - startIndex; + userHarvestablePlots[j++] = startIndex; + totalUserHarvestablePods += harvestableIndex - startIndex; } } - return (totalHarvestablePods, harvestablePlots); + return (totalUserHarvestablePods, userHarvestablePlots); } - /// @dev validates the parameters for the mow, plant and harvest operation + /** + * @dev validates the parameters for the mow, plant and harvest operation + */ function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal view { require( params.mowPlantHarvestParams.sourceTokenIndices.length > 0, @@ -379,7 +386,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } } - /// @dev validates info related to the blueprint such as the order hash and the last executed season + /** + * @dev validates info related to the blueprint such as the order hash and the last executed season + */ function _validateBlueprint(bytes32 orderHash, uint32 currentSeason) internal view { require(orderHash != bytes32(0), "No active blueprint, function must run from Tractor"); require( @@ -388,7 +397,9 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { ); } - /// @dev updates the last executed season for a given order hash + /** + * @dev updates the last executed season for a given order hash + */ function updateLastExecutedSeason(bytes32 orderHash, uint32 season) internal { orderLastExecutedSeason[orderHash] = season; } From 52fe360e4567cc5186693886793738bde63f34f0 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 2 Sep 2025 14:25:30 +0000 Subject: [PATCH 098/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 2e1fad17..1699cc7c 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -13,7 +13,6 @@ import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol" * @notice Contract for mowing, planting and harvesting with Tractor, with a number of conditions */ contract MowPlantHarvestBlueprint is PerFunctionPausable { - /** * @dev Minutes after sunrise to check if the totalDeltaB is about to be positive for the following season */ From 248eacff937267c94a69348b71a12c9ec9418583 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 2 Sep 2025 19:01:00 +0300 Subject: [PATCH 099/270] add shared tractor base --- contracts/ecosystem/BlueprintBase.sol | 102 ++++++++++++++++++ .../ecosystem/MowPlantHarvestBlueprint.sol | 64 ++--------- contracts/ecosystem/SowBlueprintv0.sol | 76 +++---------- lib/openzeppelin-contracts | 2 +- lib/openzeppelin-contracts-upgradeable | 2 +- lib/prb-math | 2 +- test/foundry/ecosystem/SowBlueprintv0.t.sol | 8 +- test/foundry/utils/TractorHelper.sol | 5 +- 8 files changed, 134 insertions(+), 127 deletions(-) create mode 100644 contracts/ecosystem/BlueprintBase.sol diff --git a/contracts/ecosystem/BlueprintBase.sol b/contracts/ecosystem/BlueprintBase.sol new file mode 100644 index 00000000..49b3487f --- /dev/null +++ b/contracts/ecosystem/BlueprintBase.sol @@ -0,0 +1,102 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {TractorHelpers} from "./TractorHelpers.sol"; +import {PerFunctionPausable} from "./PerFunctionPausable.sol"; +import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; + +/** + * @title BlueprintBase + * @notice Abstract base contract for Tractor blueprints providing shared state and validation functions + */ +abstract contract BlueprintBase is PerFunctionPausable { + + /** + * @notice Struct to hold operator parameters + * @param whitelistedOperators Array of whitelisted operator addresses + * @param tipAddress Address to send tip to + * @param operatorTipAmount Amount of tip to pay to operator + */ + struct OperatorParams { + address[] whitelistedOperators; + address tipAddress; + int256 operatorTipAmount; + } + + /** + * Mapping to track the last executed season for each order hash + * If a Blueprint needs to track more state about orders, an additional + * mapping(orderHash => state) can be added to the contract inheriting from BlueprintBase. + */ + mapping(bytes32 orderHash => uint32 lastExecutedSeason) public orderLastExecutedSeason; + + // Contracts + IBeanstalk public immutable beanstalk; + TractorHelpers public immutable tractorHelpers; + + constructor( + address _beanstalk, + address _owner, + address _tractorHelpers + ) PerFunctionPausable(_owner) { + beanstalk = IBeanstalk(_beanstalk); + tractorHelpers = TractorHelpers(_tractorHelpers); + } + + /** + * @notice Updates the last executed season for a given tractor order hash + * @param orderHash The hash of the order + * @param season The season number + */ + function _updateLastExecutedSeason(bytes32 orderHash, uint32 season) internal { + orderLastExecutedSeason[orderHash] = season; + } + + /** + * @notice Validates shared blueprint execution conditions + * @param orderHash The hash of the blueprint + * @param currentSeason The current season + */ + function _validateBlueprint(bytes32 orderHash, uint32 currentSeason) internal view { + require(orderHash != bytes32(0), "No active blueprint, function must run from Tractor"); + require( + orderLastExecutedSeason[orderHash] < currentSeason, + "Blueprint already executed this season" + ); + // add any additional shared validation for blueprints here + } + + /** + * @notice Validates operator parameters + * @param opParams The operator parameters to validate + */ + function _validateOperatorParams(OperatorParams calldata opParams) internal view { + require( + tractorHelpers.isOperatorWhitelisted(opParams.whitelistedOperators), + "Operator not whitelisted" + ); + // add any additional shared validation for operators here + } + + /** + * @notice Validates source token indices + * @param sourceTokenIndices Array of source token indices + */ + function _validateSourceTokens(uint8[] calldata sourceTokenIndices) internal pure { + require( + sourceTokenIndices.length > 0, + "Must provide at least one source token" + ); + } + + /** + * @notice Resolves tip address, defaulting to operator if not provided + * @param providedTipAddress The provided tip address + * @return The resolved tip address + */ + function _resolveTipAddress(address providedTipAddress) internal view returns (address) { + return providedTipAddress == address(0) ? beanstalk.operator() : providedTipAddress; + } +} \ No newline at end of file diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 2e1fad17..daeb92c9 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -3,16 +3,15 @@ pragma solidity ^0.8.20; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; -import {TractorHelpers} from "./TractorHelpers.sol"; -import {PerFunctionPausable} from "./PerFunctionPausable.sol"; import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; +import {BlueprintBase} from "./BlueprintBase.sol"; /** * @title MowPlantHarvestBlueprint * @author DefaultJuice * @notice Contract for mowing, planting and harvesting with Tractor, with a number of conditions */ -contract MowPlantHarvestBlueprint is PerFunctionPausable { +contract MowPlantHarvestBlueprint is BlueprintBase { /** * @dev Minutes after sunrise to check if the totalDeltaB is about to be positive for the following season @@ -56,18 +55,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256 slippageRatio; } - /** - * @notice Struct to hold operator parameters - * @param whitelistedOperators What operators are allowed to execute the blueprint - * @param tipAddress Address to send tip to - * @param operatorTipAmount Amount of tip to pay to operator - */ - struct OperatorParams { - address[] whitelistedOperators; - address tipAddress; - int256 operatorTipAmount; - } - /** * @notice Local variables for the mow, plant and harvest function * @dev Used to avoid stack too deep errors @@ -87,21 +74,11 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { LibTractorHelpers.WithdrawalPlan plan; } - // Mapping to track the last executed season for each order hash - mapping(bytes32 orderHash => uint32 lastExecutedSeason) public orderLastExecutedSeason; - - // Contracts - IBeanstalk public immutable beanstalk; - TractorHelpers public immutable tractorHelpers; - constructor( address _beanstalk, address _owner, address _tractorHelpers - ) PerFunctionPausable(_owner) { - beanstalk = IBeanstalk(_beanstalk); - tractorHelpers = TractorHelpers(_tractorHelpers); - } + ) BlueprintBase(_beanstalk, _owner, _tractorHelpers) {} /** * @notice Main entry point for the mow, plant and harvest blueprint @@ -135,7 +112,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { _validateParams(params); // if tip address is not set, set it to the operator - if (vars.tipAddress == address(0)) vars.tipAddress = beanstalk.operator(); + vars.tipAddress = _resolveTipAddress(vars.tipAddress); // Withdrawal Plan and Tip // Check if enough beans are available using getWithdrawalPlan @@ -193,7 +170,7 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } // Update the last executed season for this blueprint - updateLastExecutedSeason(vars.orderHash, vars.seasonInfo.current); + _updateLastExecutedSeason(vars.orderHash, vars.seasonInfo.current); } /** @@ -362,15 +339,11 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { * @dev validates the parameters for the mow, plant and harvest operation */ function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal view { - require( - params.mowPlantHarvestParams.sourceTokenIndices.length > 0, - "Must provide at least one source token" - ); - // Check if the executing operator (msg.sender) is whitelisted - require( - tractorHelpers.isOperatorWhitelisted(params.opParams.whitelistedOperators), - "Operator not whitelisted" - ); + // Shared validations + _validateSourceTokens(params.mowPlantHarvestParams.sourceTokenIndices); + _validateOperatorParams(params.opParams); + + // Blueprint specific validations // Validate that minPlantAmount and minHarvestAmount result in profit if (params.opParams.operatorTipAmount >= 0) { require( @@ -386,21 +359,4 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { } } - /** - * @dev validates info related to the blueprint such as the order hash and the last executed season - */ - function _validateBlueprint(bytes32 orderHash, uint32 currentSeason) internal view { - require(orderHash != bytes32(0), "No active blueprint, function must run from Tractor"); - require( - orderLastExecutedSeason[orderHash] < currentSeason, - "Blueprint already executed this season" - ); - } - - /** - * @dev updates the last executed season for a given order hash - */ - function updateLastExecutedSeason(bytes32 orderHash, uint32 season) internal { - orderLastExecutedSeason[orderHash] = season; - } } diff --git a/contracts/ecosystem/SowBlueprintv0.sol b/contracts/ecosystem/SowBlueprintv0.sol index 712d5603..280e57b9 100644 --- a/contracts/ecosystem/SowBlueprintv0.sol +++ b/contracts/ecosystem/SowBlueprintv0.sol @@ -3,17 +3,16 @@ pragma solidity ^0.8.20; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; -import {TractorHelpers} from "./TractorHelpers.sol"; -import {PerFunctionPausable} from "./PerFunctionPausable.sol"; import {BeanstalkPrice} from "./price/BeanstalkPrice.sol"; import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; +import {BlueprintBase} from "./BlueprintBase.sol"; /** * @title SowBlueprintv0 * @author FordPinto * @notice Contract for sowing with Tractor, with a number of conditions */ -contract SowBlueprintv0 is PerFunctionPausable { +contract SowBlueprintv0 is BlueprintBase { /** * @notice Event emitted when a sow order is complete, or no longer executable due to min sow being less than min sow per season * @param blueprintHash The hash of the blueprint @@ -98,32 +97,16 @@ contract SowBlueprintv0 is PerFunctionPausable { uint256 maxAmountToSowPerSeason; } - /** - * @notice Struct to hold operator parameters - * @param whitelistedOperators Array of whitelisted operator addresses - * @param tipAddress Address to send tip to - * @param operatorTipAmount Amount of tip to pay to operator - */ - struct OperatorParams { - address[] whitelistedOperators; - address tipAddress; - int256 operatorTipAmount; - } - - IBeanstalk immutable beanstalk; - TractorHelpers public immutable tractorHelpers; - // Default slippage ratio for LP token withdrawals (1%) uint256 internal constant DEFAULT_SLIPPAGE_RATIO = 0.01e18; /** - * @notice Struct to hold order info + * @notice Blueprint specific struct to hold order info * @param pintoSownCounter Counter for the number of maximum pinto that can be sown from this blueprint. Used for orders that sow over multiple seasons. - * @param lastExecutedSeason Last season a blueprint was executed */ struct OrderInfo { uint256 pintoSownCounter; - uint32 lastExecutedSeason; + // add additional order info here if needed } // Combined state mapping for order info @@ -133,12 +116,7 @@ contract SowBlueprintv0 is PerFunctionPausable { address _beanstalk, address _owner, address _tractorHelpers - ) PerFunctionPausable(_owner) { - beanstalk = IBeanstalk(_beanstalk); - - // Use existing TractorHelpers contract instead of deploying a new one - tractorHelpers = TractorHelpers(_tractorHelpers); - } + ) BlueprintBase(_beanstalk, _owner, _tractorHelpers) {} /** * @notice Sows beans using specified source tokens in order of preference @@ -167,17 +145,10 @@ contract SowBlueprintv0 is PerFunctionPausable { ) = validateParamsAndReturnBeanstalkState(params, vars.orderHash, vars.account); // Check if the executing operator (msg.sender) is whitelisted - require( - tractorHelpers.isOperatorWhitelisted(params.opParams.whitelistedOperators), - "Operator not whitelisted" - ); + _validateOperatorParams(params.opParams); // Get tip address. If tip address is not set, set it to the operator - if (params.opParams.tipAddress == address(0)) { - vars.tipAddress = beanstalk.operator(); - } else { - vars.tipAddress = params.opParams.tipAddress; - } + vars.tipAddress = _resolveTipAddress(params.opParams.tipAddress); // if slippage ratio is not set, set a default parameter: uint256 slippageRatio = params.sowParams.slippageRatio; @@ -237,7 +208,7 @@ contract SowBlueprintv0 is PerFunctionPausable { ); // Update the last executed season for this blueprint - updateLastExecutedSeason(vars.orderHash, vars.currentSeason); + _updateLastExecutedSeason(vars.orderHash, vars.currentSeason); } /** @@ -245,10 +216,7 @@ contract SowBlueprintv0 is PerFunctionPausable { * @param params The SowBlueprintStruct containing all parameters for the sow operation */ function _validateParams(SowBlueprintStruct calldata params) internal view { - require( - params.sowParams.sourceTokenIndices.length > 0, - "Must provide at least one source token" - ); + _validateSourceTokens(params.sowParams.sourceTokenIndices); // Require that maxAmountToSowPerSeason > 0 require( @@ -282,12 +250,10 @@ contract SowBlueprintv0 is PerFunctionPausable { function _validateBlueprintAndPintoLeftToSow( bytes32 orderHash ) internal view returns (uint256 pintoLeftToSow) { - require(orderHash != bytes32(0), "No active blueprint, function must run from Tractor"); - require( - getLastExecutedSeason(orderHash) < beanstalk.time().current, - "Blueprint already executed this season" - ); + // Shared validations + _validateBlueprint(orderHash, beanstalk.time().current); + // Blueprint specific validations // Verify there's still sow amount available with the counter pintoLeftToSow = getPintosLeftToSow(orderHash); @@ -295,15 +261,6 @@ contract SowBlueprintv0 is PerFunctionPausable { require(pintoLeftToSow != type(uint256).max, "Sow order already fulfilled"); } - /** - * @notice Gets the last season a blueprint was executed - * @param orderHash The hash of the blueprint - * @return The last season the blueprint was executed, or 0 if never executed - */ - function getLastExecutedSeason(bytes32 orderHash) public view returns (uint32) { - return orderInfo[orderHash].lastExecutedSeason; - } - /** * @notice Gets the number of maximum pinto that can be sown from this blueprint * @param orderHash The hash of the order @@ -322,15 +279,6 @@ contract SowBlueprintv0 is PerFunctionPausable { orderInfo[orderHash].pintoSownCounter = amount; } - /** - * @notice Updates the last executed season for a given order hash - * @param orderHash The hash of the order - * @param season The season number - */ - function updateLastExecutedSeason(bytes32 orderHash, uint32 season) internal { - orderInfo[orderHash].lastExecutedSeason = season; - } - /** * @notice Determines the total amount to sow based on various constraints * @param totalAmountToSow Total amount intended to sow diff --git a/lib/openzeppelin-contracts b/lib/openzeppelin-contracts index 10a776ba..d9933585 160000 --- a/lib/openzeppelin-contracts +++ b/lib/openzeppelin-contracts @@ -1 +1 @@ -Subproject commit 10a776bae653a3d388e75954d44bd34d746e2dda +Subproject commit d9933585b6c134589d6819909a932de4c1a0db7f diff --git a/lib/openzeppelin-contracts-upgradeable b/lib/openzeppelin-contracts-upgradeable index 7c8e9004..28b39d32 160000 --- a/lib/openzeppelin-contracts-upgradeable +++ b/lib/openzeppelin-contracts-upgradeable @@ -1 +1 @@ -Subproject commit 7c8e90046cdf3447971c201c1940d489fa2064bb +Subproject commit 28b39d323943eeb8ccb2c6342808dfb37ad1c514 diff --git a/lib/prb-math b/lib/prb-math index b8583d49..2c597391 160000 --- a/lib/prb-math +++ b/lib/prb-math @@ -1 +1 @@ -Subproject commit b8583d490b5f3a1017c09dd9568b45c736281d3e +Subproject commit 2c597391f16e5ada196aca3d77c81fd653574974 diff --git a/test/foundry/ecosystem/SowBlueprintv0.t.sol b/test/foundry/ecosystem/SowBlueprintv0.t.sol index d42110a4..ba98c1f2 100644 --- a/test/foundry/ecosystem/SowBlueprintv0.t.sol +++ b/test/foundry/ecosystem/SowBlueprintv0.t.sol @@ -545,7 +545,7 @@ contract SowBlueprintv0Test is TractorHelper { // Verify the last executed season was recorded properly assertEq( - sowBlueprintv0.getLastExecutedSeason(orderHash), + sowBlueprintv0.orderLastExecutedSeason(orderHash), bs.time().current, "Last executed season should be current season" ); @@ -566,7 +566,7 @@ contract SowBlueprintv0Test is TractorHelper { // Verify the last executed season was updated assertEq( - sowBlueprintv0.getLastExecutedSeason(orderHash), + sowBlueprintv0.orderLastExecutedSeason(orderHash), bs.time().current, "Last executed season should be updated to current season" ); @@ -647,7 +647,7 @@ contract SowBlueprintv0Test is TractorHelper { "Counter should be 500e6 after first sow" ); assertEq( - sowBlueprintv0.getLastExecutedSeason(orderHash), + sowBlueprintv0.orderLastExecutedSeason(orderHash), bs.time().current, "Last executed season should be properly recorded" ); @@ -664,7 +664,7 @@ contract SowBlueprintv0Test is TractorHelper { // Check lastExecutedSeason updated assertEq( - sowBlueprintv0.getLastExecutedSeason(orderHash), + sowBlueprintv0.orderLastExecutedSeason(orderHash), bs.time().current, "Last executed season should be updated to new season" ); diff --git a/test/foundry/utils/TractorHelper.sol b/test/foundry/utils/TractorHelper.sol index 36d7c5a5..aa3c0947 100644 --- a/test/foundry/utils/TractorHelper.sol +++ b/test/foundry/utils/TractorHelper.sol @@ -7,6 +7,7 @@ import {SowBlueprintv0} from "contracts/ecosystem/SowBlueprintv0.sol"; import {TractorHelpers} from "contracts/ecosystem/TractorHelpers.sol"; import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; import {MowPlantHarvestBlueprint} from "contracts/ecosystem/MowPlantHarvestBlueprint.sol"; +import {BlueprintBase} from "contracts/ecosystem/BlueprintBase.sol"; contract TractorHelper is TestHelper { // Add this at the top of the contract @@ -245,7 +246,7 @@ contract TractorHelper is TestHelper { }); // Create OperatorParams struct - SowBlueprintv0.OperatorParams memory opParams = SowBlueprintv0.OperatorParams({ + BlueprintBase.OperatorParams memory opParams = BlueprintBase.OperatorParams({ whitelistedOperators: whitelistedOps, tipAddress: tipAddress, operatorTipAmount: operatorTipAmount @@ -369,7 +370,7 @@ contract TractorHelper is TestHelper { }); // Create OperatorParams struct - MowPlantHarvestBlueprint.OperatorParams memory opParams = MowPlantHarvestBlueprint + BlueprintBase.OperatorParams memory opParams = BlueprintBase .OperatorParams({ whitelistedOperators: whitelistedOps, tipAddress: tipAddress, From 6489655058fa0c2061b9501321814d38a719a1d9 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 5 Sep 2025 11:33:50 +0300 Subject: [PATCH 100/270] dynamically resize array and add first helpers --- .../beanstalk/facets/field/FieldFacet.sol | 67 +++++++++++++++++++ .../ecosystem/MowPlantHarvestBlueprint.sol | 39 +++++------ 2 files changed, 84 insertions(+), 22 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 31b7f6da..80e04806 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -427,6 +427,17 @@ contract FieldFacet is Invariable, ReentrancyGuard { return s.accts[account].fields[fieldId].plotIndexes; } + // 1. a function that gets the length of a farmers plotIndexes array + /** + * @notice returns the length of the plotIndexes owned by `account`. + */ + function getPlotIndexesLengthFromAccount( + address account, + uint256 fieldId + ) external view returns (uint256) { + return s.accts[account].fields[fieldId].plotIndexes.length; + } + /** * @notice returns the plots owned by `account`. */ @@ -443,6 +454,19 @@ contract FieldFacet is Invariable, ReentrancyGuard { } } + // 2. A function that takes in a farmer and index, and return the value in the piIndex mapping. + /** + * @notice returns the value in the piIndex mapping for a given account, fieldId and index. + * piIndex is a mapping from Plot index to the index in the plotIndexes array. + */ + function getPiIndexFromAccount( + address account, + uint256 fieldId, + uint256 index + ) external view returns (uint256) { + return s.accts[account].fields[fieldId].piIndex[index]; + } + /** * @notice returns the number of pods owned by `account` in a field. */ @@ -452,4 +476,47 @@ contract FieldFacet is Invariable, ReentrancyGuard { pods += s.accts[account].fields[fieldId].plots[plotIndexes[i]]; } } + + //////////////////// PLOT INDEX HELPERS //////////////////// + + /** + * @notice returns Plot indexes by their positions in the plotIndexes array. + * @dev plotIndexes is an array of Plot indexes, used to return the farm plots of a Farmer. + */ + // 3. A function that, given a farmer and index of an array, returns only the 'index' portion of the plot. + // You may want to make this such that you can request multiple indexes, or range. + function getPlotIndexesAtPositions( + address account, + uint256 fieldId, + uint256[] calldata arrayIndexes + ) external view returns (uint256[] memory plotIndexes) { + uint256[] memory accountPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; + plotIndexes = new uint256[](arrayIndexes.length); + + for (uint256 i = 0; i < arrayIndexes.length; i++) { + require(arrayIndexes[i] < accountPlotIndexes.length, "Field: Index out of bounds"); + plotIndexes[i] = accountPlotIndexes[arrayIndexes[i]]; + } + } + + /** + * @notice returns Plot indexes for a specified range in the plotIndexes array. + */ + // 3. A function that, given a farmer and index of an array, returns only the 'index' portion of the plot. + // You may want to make this such that you can request multiple indexes, or range. + function getPlotIndexesByRange( + address account, + uint256 fieldId, + uint256 startIndex, + uint256 endIndex + ) external view returns (uint256[] memory plotIndexes) { + uint256[] memory accountPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; + require(startIndex < endIndex, "Field: Invalid range"); + require(endIndex <= accountPlotIndexes.length, "Field: End index out of bounds"); + + plotIndexes = new uint256[](endIndex - startIndex); + for (uint256 i = 0; i < plotIndexes.length; i++) { + plotIndexes[i] = accountPlotIndexes[startIndex + i]; + } + } } diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 1699cc7c..80e84f27 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -282,7 +282,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { uint256[] memory harvestablePlots ) { - // get whitelisted tokens address[] memory whitelistedTokens = beanstalk.getWhitelistedTokens(); // check how much claimable stalk the user by all whitelisted tokens combined @@ -290,8 +289,6 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { account, whitelistedTokens ); - - // sum it to get total claimable grown stalk for (uint256 i = 0; i < grownStalks.length; i++) { totalClaimableStalk += grownStalks[i]; } @@ -317,43 +314,41 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { internal view returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) - { - // Get all plots for the user in the field + { + // fetch field and plot info from the diamond + uint256 activeField = beanstalk.activeField(); IBeanstalk.Plot[] memory plots = beanstalk.getPlotsFromAccount( account, - beanstalk.activeField() + activeField ); - uint256 harvestableIndex = beanstalk.harvestableIndex(beanstalk.activeField()); + uint256 harvestableIndex = beanstalk.harvestableIndex(activeField); - // First, count how many plots are at least partially harvestable - uint256 count; - for (uint256 i = 0; i < plots.length; i++) { - uint256 startIndex = plots[i].index; - if (startIndex < harvestableIndex) { - count++; - } - } - - // Allocate the array - userHarvestablePlots = new uint256[](count); - uint256 j = 0; + // initialize array with full length + userHarvestablePlots = new uint256[](plots.length); + uint256 harvestableCount; - // Now, fill the array and sum pods for (uint256 i = 0; i < plots.length; i++) { uint256 startIndex = plots[i].index; uint256 plotPods = plots[i].pods; if (startIndex + plotPods <= harvestableIndex) { // Fully harvestable - userHarvestablePlots[j++] = startIndex; + userHarvestablePlots[harvestableCount] = startIndex; totalUserHarvestablePods += plotPods; + harvestableCount++; } else if (startIndex < harvestableIndex) { // Partially harvestable - userHarvestablePlots[j++] = startIndex; + userHarvestablePlots[harvestableCount] = startIndex; totalUserHarvestablePods += harvestableIndex - startIndex; + harvestableCount++; } } + // resize array to actual harvestable plots count + assembly { + mstore(userHarvestablePlots, harvestableCount) + } + return (totalUserHarvestablePods, userHarvestablePlots); } From 49a5f11d85cdafe84c33414b17fbef846bbb7e4e Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 5 Sep 2025 08:35:08 +0000 Subject: [PATCH 101/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/beanstalk/facets/field/FieldFacet.sol | 12 ++++++------ contracts/ecosystem/MowPlantHarvestBlueprint.sol | 7 ++----- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 80e04806..0f8a682d 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -483,8 +483,8 @@ contract FieldFacet is Invariable, ReentrancyGuard { * @notice returns Plot indexes by their positions in the plotIndexes array. * @dev plotIndexes is an array of Plot indexes, used to return the farm plots of a Farmer. */ - // 3. A function that, given a farmer and index of an array, returns only the 'index' portion of the plot. - // You may want to make this such that you can request multiple indexes, or range. + // 3. A function that, given a farmer and index of an array, returns only the 'index' portion of the plot. + // You may want to make this such that you can request multiple indexes, or range. function getPlotIndexesAtPositions( address account, uint256 fieldId, @@ -492,7 +492,7 @@ contract FieldFacet is Invariable, ReentrancyGuard { ) external view returns (uint256[] memory plotIndexes) { uint256[] memory accountPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; plotIndexes = new uint256[](arrayIndexes.length); - + for (uint256 i = 0; i < arrayIndexes.length; i++) { require(arrayIndexes[i] < accountPlotIndexes.length, "Field: Index out of bounds"); plotIndexes[i] = accountPlotIndexes[arrayIndexes[i]]; @@ -502,8 +502,8 @@ contract FieldFacet is Invariable, ReentrancyGuard { /** * @notice returns Plot indexes for a specified range in the plotIndexes array. */ - // 3. A function that, given a farmer and index of an array, returns only the 'index' portion of the plot. - // You may want to make this such that you can request multiple indexes, or range. + // 3. A function that, given a farmer and index of an array, returns only the 'index' portion of the plot. + // You may want to make this such that you can request multiple indexes, or range. function getPlotIndexesByRange( address account, uint256 fieldId, @@ -513,7 +513,7 @@ contract FieldFacet is Invariable, ReentrancyGuard { uint256[] memory accountPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; require(startIndex < endIndex, "Field: Invalid range"); require(endIndex <= accountPlotIndexes.length, "Field: End index out of bounds"); - + plotIndexes = new uint256[](endIndex - startIndex); for (uint256 i = 0; i < plotIndexes.length; i++) { plotIndexes[i] = accountPlotIndexes[startIndex + i]; diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 80e84f27..a7e185c7 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -314,13 +314,10 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { internal view returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) - { + { // fetch field and plot info from the diamond uint256 activeField = beanstalk.activeField(); - IBeanstalk.Plot[] memory plots = beanstalk.getPlotsFromAccount( - account, - activeField - ); + IBeanstalk.Plot[] memory plots = beanstalk.getPlotsFromAccount(account, activeField); uint256 harvestableIndex = beanstalk.harvestableIndex(activeField); // initialize array with full length From 645912401b7c1ca3448b67e50f6e345e662d0102 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 5 Sep 2025 12:02:38 +0300 Subject: [PATCH 102/270] get indexes only instead of plot structs --- .../ecosystem/MowPlantHarvestBlueprint.sol | 18 ++--- contracts/interfaces/IBeanstalk.sol | 12 ++++ contracts/interfaces/IMockFBeanstalk.sol | 7 ++ .../ecosystem/MowPlantHarvestBlueprint.t.sol | 70 +++++++++++-------- 4 files changed, 67 insertions(+), 40 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 80e84f27..0b7b7ac0 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -315,21 +315,21 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { view returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) { - // fetch field and plot info from the diamond + // get field info and plot count directly uint256 activeField = beanstalk.activeField(); - IBeanstalk.Plot[] memory plots = beanstalk.getPlotsFromAccount( - account, - activeField - ); + uint256[] memory plotIndexes = beanstalk.getPlotIndexesFromAccount(account, activeField); uint256 harvestableIndex = beanstalk.harvestableIndex(activeField); + if (plotIndexes.length == 0) return (0, new uint256[](0)); + // initialize array with full length - userHarvestablePlots = new uint256[](plots.length); + userHarvestablePlots = new uint256[](plotIndexes.length); uint256 harvestableCount; - for (uint256 i = 0; i < plots.length; i++) { - uint256 startIndex = plots[i].index; - uint256 plotPods = plots[i].pods; + // single loop to process all plot indexes directly + for (uint256 i = 0; i < plotIndexes.length; i++) { + uint256 startIndex = plotIndexes[i]; + uint256 plotPods = beanstalk.plot(account, activeField, startIndex); if (startIndex + plotPods <= harvestableIndex) { // Fully harvestable diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 62639194..9c71cc49 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -165,6 +165,18 @@ interface IBeanstalk { uint256 fieldId ) external view returns (Plot[] memory plots); + function getPlotIndexesFromAccount( + address account, + uint256 fieldId + ) external view returns (uint256[] memory plotIndexes); + + function getPlotIndexesLengthFromAccount( + address account, + uint256 fieldId + ) external view returns (uint256); + + function plot(address account, uint256 fieldId, uint256 index) external view returns (uint256); + function mowAll(address account) external payable; function activeField() external view returns (uint256); diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 397df315..e6552495 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1115,6 +1115,13 @@ interface IMockFBeanstalk { uint256 fieldId ) external view returns (uint256[] memory plotIndexes); + + function getPlotIndexesLengthFromAccount( + address account, + uint256 fieldId + ) external view returns (uint256); + + function getPlotMerkleRoot() external pure returns (bytes32); function getPlotsFromAccount( diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index b708cc86..b4a3b283 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -355,11 +355,11 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { state.user, state.beanToken ); - // assert the user total bdv has decreased as a result of the harvest + // assert the user total bdv has increased as a result of the harvest assertGt( userTotalBdvAfterHarvest, userTotalBdvBeforeHarvest, - "userTotalBdv should have decreased" + "userTotalBdv should have increased" ); // assert user harvestable pods is 0 @@ -464,44 +464,52 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { /////////////////////////// HELPER FUNCTIONS /////////////////////////// - /// @dev Helper function to get the total harvestable pods and plot indexes for a user + /** + * @notice Helper function to get the total harvestable pods and plots for a user + * @param account The address of the user + * @return totalUserHarvestablePods The total amount of harvestable pods for the user + * @return userHarvestablePlots The harvestable plot ids for the user + */ function _userHarvestablePods( address account - ) internal view returns (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) { - // Get all plots for the user in the field - IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(account, bs.activeField()); - uint256 harvestableIndex = bs.harvestableIndex(bs.activeField()); - - // First, count how many plots are at least partially harvestable - uint256 count; - for (uint256 i = 0; i < plots.length; i++) { - uint256 startIndex = plots[i].index; - if (startIndex < harvestableIndex) { - count++; - } - } - - // Allocate the array - harvestablePlots = new uint256[](count); - uint256 j = 0; - - // Now, fill the array and sum pods - for (uint256 i = 0; i < plots.length; i++) { - uint256 startIndex = plots[i].index; - uint256 plotPods = plots[i].pods; + ) + internal + view + returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) + { + // get field info and plot count directly + uint256 activeField = bs.activeField(); + uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, activeField); + uint256 harvestableIndex = bs.harvestableIndex(activeField); + + if (plotIndexes.length == 0) return (0, new uint256[](0)); + + // initialize array with full length + userHarvestablePlots = new uint256[](plotIndexes.length); + uint256 harvestableCount; + + // single loop to process all plot indexes directly + for (uint256 i = 0; i < plotIndexes.length; i++) { + uint256 startIndex = plotIndexes[i]; + uint256 plotPods = bs.plot(account, activeField, startIndex); if (startIndex + plotPods <= harvestableIndex) { // Fully harvestable - harvestablePlots[j++] = startIndex; - totalHarvestablePods += plotPods; + userHarvestablePlots[harvestableCount] = startIndex; + totalUserHarvestablePods += plotPods; + harvestableCount++; } else if (startIndex < harvestableIndex) { // Partially harvestable - harvestablePlots[j++] = startIndex; - totalHarvestablePods += harvestableIndex - startIndex; + userHarvestablePlots[harvestableCount] = startIndex; + totalUserHarvestablePods += harvestableIndex - startIndex; + harvestableCount++; } } - - return (totalHarvestablePods, harvestablePlots); + // resize array to actual harvestable plots count + assembly { + mstore(userHarvestablePlots, harvestableCount) + } + return (totalUserHarvestablePods, userHarvestablePlots); } /// @dev Advance to the next season and update oracles From eed7a68271ca5ec2e44385422621c68fa49997bc Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 5 Sep 2025 09:07:59 +0000 Subject: [PATCH 103/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 4 ++-- contracts/interfaces/IMockFBeanstalk.sol | 2 -- test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol | 4 ++-- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 0b7b7ac0..8fa8fba0 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -314,14 +314,14 @@ contract MowPlantHarvestBlueprint is PerFunctionPausable { internal view returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) - { + { // get field info and plot count directly uint256 activeField = beanstalk.activeField(); uint256[] memory plotIndexes = beanstalk.getPlotIndexesFromAccount(account, activeField); uint256 harvestableIndex = beanstalk.harvestableIndex(activeField); if (plotIndexes.length == 0) return (0, new uint256[](0)); - + // initialize array with full length userHarvestablePlots = new uint256[](plotIndexes.length); uint256 harvestableCount; diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index e6552495..18163d87 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1115,13 +1115,11 @@ interface IMockFBeanstalk { uint256 fieldId ) external view returns (uint256[] memory plotIndexes); - function getPlotIndexesLengthFromAccount( address account, uint256 fieldId ) external view returns (uint256); - function getPlotMerkleRoot() external pure returns (bytes32); function getPlotsFromAccount( diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index b4a3b283..eeb6171b 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -476,14 +476,14 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { internal view returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) - { + { // get field info and plot count directly uint256 activeField = bs.activeField(); uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, activeField); uint256 harvestableIndex = bs.harvestableIndex(activeField); if (plotIndexes.length == 0) return (0, new uint256[](0)); - + // initialize array with full length userHarvestablePlots = new uint256[](plotIndexes.length); uint256 harvestableCount; From ddd085fa05d47a38884033de7fe96f5d292bb722 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 5 Sep 2025 16:54:19 +0300 Subject: [PATCH 104/270] mvp combine deposits --- .../beanstalk/facets/field/FieldFacet.sol | 77 +++++++++++++++++++ contracts/interfaces/IMockFBeanstalk.sol | 6 ++ .../ecosystem/MowPlantHarvestBlueprint.t.sol | 42 ++++++++++ 3 files changed, 125 insertions(+) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 0f8a682d..f075ca6d 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -16,6 +16,7 @@ import {LibDibbler} from "contracts/libraries/LibDibbler.sol"; import {LibDiamond} from "contracts/libraries/LibDiamond.sol"; import {LibMarket} from "contracts/libraries/LibMarket.sol"; import {BeanstalkERC20} from "contracts/tokens/ERC20/BeanstalkERC20.sol"; +import "forge-std/console.sol"; interface IBeanstalk { function cancelPodListing(uint256 fieldId, uint256 index) external; @@ -519,4 +520,80 @@ contract FieldFacet is Invariable, ReentrancyGuard { plotIndexes[i] = accountPlotIndexes[startIndex + i]; } } + + /** + * @notice Combines an account's adjacent plots. + * @param account The account that owns the plots to combine + * @param fieldId The field ID containing the plots + * @param plotIndexes Array of adjacent plot indexes to combine (must be sorted and consecutive) + * @dev Plots must be adjacent: plot[i].index + plot[i].pods == plot[i+1].index + * Updates storage by merging plots and rebuilding plotIndexes/piIndex + * Any account can combine any other account's adjacent plots + */ + function combinePlots( + address account, + uint256 fieldId, + uint256[] calldata plotIndexes + ) external payable fundsSafu noSupplyChange noNetFlow nonReentrant { + require(plotIndexes.length >= 2, "Field: Need at least 2 plots to combine"); + + // initialize total pods with the first plot + uint256 totalPods = s.accts[account].fields[fieldId].plots[plotIndexes[0]]; + require(totalPods > 0, "Field: Plot to combine not owned by account"); + // track the expected next start position to avoid querying deleted plots + uint256 expectedNextStart = plotIndexes[0] + totalPods; + + for (uint256 i = 1; i < plotIndexes.length; i++) { + uint256 currentPods = s.accts[account].fields[fieldId].plots[plotIndexes[i]]; + require(currentPods > 0, "Field: Plot to combine not owned by account"); + + // check adjacency: expected next start == current plot start + require(expectedNextStart == plotIndexes[i], "Field: Plots to combine not adjacent"); + + totalPods += currentPods; + expectedNextStart = plotIndexes[i] + currentPods; + + // delete subsequent plots, set the amount to 0 so that we can rebuild the array later + delete s.accts[account].fields[fieldId].plots[plotIndexes[i]]; + } + + // update first plot with combined pods + s.accts[account].fields[fieldId].plots[plotIndexes[0]] = totalPods; + + // rebuild plotIndexes array and piIndex mapping + _rebuildPlotStorage(account, fieldId); + } + + /** + * @dev Rebuilds a plotIndexes array and piIndex mapping after combining plots. + */ + function _rebuildPlotStorage(address account, uint256 fieldId) internal { + + uint256[] storage userPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; + + uint256 writeIndex = 0; + + // compact array by keeping only existing plots + for (uint256 i = 0; i < userPlotIndexes.length; i++) { + uint256 plotIndex = userPlotIndexes[i]; + + // from previous step, if we deleted the plot, plots[plotIndex] will be 0 + if (s.accts[account].fields[fieldId].plots[plotIndex] > 0) { + // if the plot is not deleted, we need to update the plotIndexes array + if (writeIndex != i) userPlotIndexes[writeIndex] = plotIndex; + // update the piIndex mapping to point to the new index in the userPlotIndexes array + s.accts[account].fields[fieldId].piIndex[plotIndex] = writeIndex; + writeIndex++; + } else { + // if the plot is deleted, we need to delete the piIndex mapping + delete s.accts[account].fields[fieldId].piIndex[plotIndex]; + } + } + + // resize array using assembly, + // a dynamic array's base slot contains the array length + assembly { + sstore(userPlotIndexes.slot, writeIndex) + } + } } diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index e6552495..4c8a441f 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1129,6 +1129,12 @@ interface IMockFBeanstalk { uint256 fieldId ) external view returns (Plot[] memory plots); + function combinePlots( + address account, + uint256 fieldId, + uint256[] calldata plotIndexes + ) external payable; + function getPodListing(uint256 fieldId, uint256 index) external view returns (bytes32 id); function getPodOrder(bytes32 id) external view returns (uint256); diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index b4a3b283..f6767390 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -462,6 +462,48 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { } } + function test_mergeAdjacentPlotsSimple() public { + // Setup test state + // setupPlant: false, setupHarvest: false (dont sow default amounts), abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(false, false, true); + + uint256[] memory plotIndexes = setUpMultipleAccountPlots(state.user, 1000e6, 10); // 10 sows of 100 beans each at 1% temp + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(state.user, bs.activeField()); + uint256 totalPodsBeforeCombine = 0; + for (uint256 i = 0; i < plots.length; i++) { + totalPodsBeforeCombine += plots[i].pods; + } + assertEq(plots.length, 10, "user should have 10 plots"); + // combine all plots into one + bs.combinePlots(state.user, bs.activeField(), plotIndexes); + + // assert user has 1 plot + plots = bs.getPlotsFromAccount(state.user, bs.activeField()); + assertEq(plots.length, 1, "user should have 1 plot"); + assertEq(plots[0].index, 0, "plot index should be 0"); + assertEq(plots[0].pods, totalPodsBeforeCombine, "plot pods should be 1010e6"); + + // + } + + + function setUpMultipleAccountPlots( + address account, + uint256 totalSoil, + uint256 sowCount + ) internal returns (uint256[] memory plotIndexes) { + // set soil to totalSoil + bs.setSoilE(totalSoil); + // sow totalSoil beans sowCount times of totalSoil/sowCount each + uint256 sowAmount = totalSoil / sowCount; + for (uint256 i = 0; i < sowCount; i++) { + vm.prank(account); + bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); + } + plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); + return plotIndexes; + } + /////////////////////////// HELPER FUNCTIONS /////////////////////////// /** From e4b0500ee4b03f7f37d8e2b61adc2b5e656fce20 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 5 Sep 2025 13:55:53 +0000 Subject: [PATCH 105/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../beanstalk/facets/field/FieldFacet.sol | 25 +++++++++---------- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 3 +-- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index f075ca6d..3d0f2a7e 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -536,30 +536,30 @@ contract FieldFacet is Invariable, ReentrancyGuard { uint256[] calldata plotIndexes ) external payable fundsSafu noSupplyChange noNetFlow nonReentrant { require(plotIndexes.length >= 2, "Field: Need at least 2 plots to combine"); - + // initialize total pods with the first plot uint256 totalPods = s.accts[account].fields[fieldId].plots[plotIndexes[0]]; require(totalPods > 0, "Field: Plot to combine not owned by account"); // track the expected next start position to avoid querying deleted plots uint256 expectedNextStart = plotIndexes[0] + totalPods; - + for (uint256 i = 1; i < plotIndexes.length; i++) { uint256 currentPods = s.accts[account].fields[fieldId].plots[plotIndexes[i]]; require(currentPods > 0, "Field: Plot to combine not owned by account"); - + // check adjacency: expected next start == current plot start require(expectedNextStart == plotIndexes[i], "Field: Plots to combine not adjacent"); - + totalPods += currentPods; expectedNextStart = plotIndexes[i] + currentPods; - + // delete subsequent plots, set the amount to 0 so that we can rebuild the array later delete s.accts[account].fields[fieldId].plots[plotIndexes[i]]; } - + // update first plot with combined pods s.accts[account].fields[fieldId].plots[plotIndexes[0]] = totalPods; - + // rebuild plotIndexes array and piIndex mapping _rebuildPlotStorage(account, fieldId); } @@ -568,15 +568,14 @@ contract FieldFacet is Invariable, ReentrancyGuard { * @dev Rebuilds a plotIndexes array and piIndex mapping after combining plots. */ function _rebuildPlotStorage(address account, uint256 fieldId) internal { - uint256[] storage userPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; - + uint256 writeIndex = 0; - + // compact array by keeping only existing plots for (uint256 i = 0; i < userPlotIndexes.length; i++) { uint256 plotIndex = userPlotIndexes[i]; - + // from previous step, if we deleted the plot, plots[plotIndex] will be 0 if (s.accts[account].fields[fieldId].plots[plotIndex] > 0) { // if the plot is not deleted, we need to update the plotIndexes array @@ -589,8 +588,8 @@ contract FieldFacet is Invariable, ReentrancyGuard { delete s.accts[account].fields[fieldId].piIndex[plotIndex]; } } - - // resize array using assembly, + + // resize array using assembly, // a dynamic array's base slot contains the array length assembly { sstore(userPlotIndexes.slot, writeIndex) diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 37503050..70062d79 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -483,10 +483,9 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { assertEq(plots[0].index, 0, "plot index should be 0"); assertEq(plots[0].pods, totalPodsBeforeCombine, "plot pods should be 1010e6"); - // + // } - function setUpMultipleAccountPlots( address account, uint256 totalSoil, From ce5398e7c729cec2ca2cf223657ae292f506e02c Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 8 Sep 2025 11:17:09 +0300 Subject: [PATCH 106/270] modify encode and call functions to take in the hook struct, remove last TokenHook references --- .../beanstalk/facets/farm/TokenHookFacet.sol | 4 +- contracts/beanstalk/storage/System.sol | 16 ------ contracts/interfaces/IMockFBeanstalk.sol | 6 --- contracts/libraries/Token/LibTokenHook.sol | 51 ++++++++++--------- test/foundry/token/TokenHook.t.sol | 2 +- 5 files changed, 31 insertions(+), 48 deletions(-) diff --git a/contracts/beanstalk/facets/farm/TokenHookFacet.sol b/contracts/beanstalk/facets/farm/TokenHookFacet.sol index f6e4f4f8..c0233038 100644 --- a/contracts/beanstalk/facets/farm/TokenHookFacet.sol +++ b/contracts/beanstalk/facets/farm/TokenHookFacet.sol @@ -13,7 +13,7 @@ import {Implementation} from "contracts/beanstalk/storage/System.sol"; /** * @title TokenHookFacet * @notice Manages the pre-transfer hook whitelist for internal token transfers. - * @dev State changing functions are commented out for security reasons. + * @dev State changing functions are commented out to reduce security surface. */ contract TokenHookFacet is Invariable, ReentrancyGuard { // /** @@ -23,7 +23,7 @@ contract TokenHookFacet is Invariable, ReentrancyGuard { // */ // function whitelistTokenHook( // address token, - // TokenHook memory hook + // Implementation memory hook // ) external payable fundsSafu noNetFlow noSupplyChange nonReentrant { // LibDiamond.enforceIsOwnerOrContract(); // LibTokenHook.addTokenHook(token, hook); diff --git a/contracts/beanstalk/storage/System.sol b/contracts/beanstalk/storage/System.sol index 51e3ae64..1b5bc339 100644 --- a/contracts/beanstalk/storage/System.sol +++ b/contracts/beanstalk/storage/System.sol @@ -474,22 +474,6 @@ struct SeasonOfPlenty { mapping(uint32 => mapping(address => uint256)) sops; } -/** - * @notice TokenHook specifies the pre-transfer hook to be called before a token is transferred from a user's internal balance. - * A hook should generally be an external protected function that updates the state of an ERC20 token, callable only by the protocol. - * @param target The target contract address in which `selector` is called at (e.g the token address). - * @param selector The function selector that is used to call on the target contract. - * @param encodeType The encode type that should be used to encode the function call. - * - Encode type 0x00 indicates that the hook receives (address from, address to, uint256 amount) as arguments. - * This is in line with the default OpenZeppelin ERC20 _update pre-transfer function. - * @dev Data here is ommited since call parameters are dynamic based on every transfer. - */ -struct TokenHook { - address target; - bytes4 selector; - bytes1 encodeType; -} - /** * @notice Germinate determines what germination struct to use. * @dev "odd" and "even" refers to the value of the season counter. diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 9aba82d9..b6acc804 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -285,12 +285,6 @@ interface IMockFBeanstalk { bool oracleFailure; } - struct TokenHook { - address target; - bytes4 selector; - bytes1 encodeType; - } - error AddressEmptyCode(address target); error AddressInsufficientBalance(address account); error ECDSAInvalidSignature(); diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index 9ab32f8b..b7d74228 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -117,16 +117,13 @@ library LibTokenHook { // call the hook. If it reverts, revert the entire transfer. bytes memory encodedCall = encodeHookCall( - hook.encodeType, - hook.selector, + hook, token, from, to, amount ); - (bool success, ) = hook.target.call(encodedCall); - require(success, "LibTokenHook: Hook execution failed"); - + callTokenHook(hook, encodedCall); emit TokenHookCalled(token, hook.target, encodedCall); } @@ -142,46 +139,54 @@ library LibTokenHook { // verify the target is a contract, regular calls don't revert for non-contracts require(isContract(hook.target), "LibTokenHook: Target is not a contract"); // verify the target is callable - (bool success, ) = hook.target.call( - encodeHookCall( - hook.encodeType, - hook.selector, - address(0), - address(0), - address(0), - uint256(0) - ) + bytes memory encodedCall = encodeHookCall( + hook, + address(0), + address(0), + address(0), + uint256(0) ); - require(success, "LibTokenHook: Invalid TokenHook implementation"); + callTokenHook(hook, encodedCall); } /** * @notice Encodes a hook call for a token before an internal transfer. - * @param encodeType The encode type byte, indicating the parameters to be passed to the hook. - * @param selector The selector to call on the target contract. + * @param hook The Implementation token hook struct. (See System.{Implementation}) * @param token The token being transferred. * @param from The sender address from the transfer. * @param to The recipient address from the transfer. * @param amount The transfer amount. */ function encodeHookCall( - bytes1 encodeType, - bytes4 selector, + Implementation memory hook, address token, address from, address to, uint256 amount ) internal pure returns (bytes memory) { - if (encodeType == 0x00) { - return abi.encodeWithSelector(selector, from, to, amount); - } else if (encodeType == 0x01) { - return abi.encodeWithSelector(selector, token, from, to, amount); + if (hook.encodeType == 0x00) { + return abi.encodeWithSelector(hook.selector, from, to, amount); + } else if (hook.encodeType == 0x01) { + return abi.encodeWithSelector(hook.selector, token, from, to, amount); } else { // any other encode types should be added here revert("LibTokenHook: Invalid encodeType"); } } + /** + * @notice Calls a token hook using previously encoded calldata. + * @param hook The Implementation token hook struct. (See System.{Implementation}) + * @param encodedCall The encoded calldata to call on the hook target address. + */ + function callTokenHook( + Implementation memory hook, + bytes memory encodedCall + ) internal { + (bool success, ) = hook.target.call(encodedCall); + require(success, "LibTokenHook: Hook execution failed"); + } + /** * @notice Checks if an account is a contract. */ diff --git a/test/foundry/token/TokenHook.t.sol b/test/foundry/token/TokenHook.t.sol index bf57c903..5de9fabd 100644 --- a/test/foundry/token/TokenHook.t.sol +++ b/test/foundry/token/TokenHook.t.sol @@ -272,7 +272,7 @@ contract TokenHookTest is TestHelper { // try to whitelist a token hook on a contract with an invalid selector vm.prank(deployer); - vm.expectRevert("LibTokenHook: Invalid TokenHook implementation"); + vm.expectRevert("LibTokenHook: Hook execution failed"); bs.addTokenHook( address(mockToken), IMockFBeanstalk.Implementation({ From 37fbac38d153fddefed172716d2b3931ee4e36d4 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 8 Sep 2025 08:18:57 +0000 Subject: [PATCH 107/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/libraries/Token/LibTokenHook.sol | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/contracts/libraries/Token/LibTokenHook.sol b/contracts/libraries/Token/LibTokenHook.sol index b7d74228..399c6365 100644 --- a/contracts/libraries/Token/LibTokenHook.sol +++ b/contracts/libraries/Token/LibTokenHook.sol @@ -116,13 +116,7 @@ library LibTokenHook { if (hook.target == address(0)) return; // call the hook. If it reverts, revert the entire transfer. - bytes memory encodedCall = encodeHookCall( - hook, - token, - from, - to, - amount - ); + bytes memory encodedCall = encodeHookCall(hook, token, from, to, amount); callTokenHook(hook, encodedCall); emit TokenHookCalled(token, hook.target, encodedCall); } @@ -179,10 +173,7 @@ library LibTokenHook { * @param hook The Implementation token hook struct. (See System.{Implementation}) * @param encodedCall The encoded calldata to call on the hook target address. */ - function callTokenHook( - Implementation memory hook, - bytes memory encodedCall - ) internal { + function callTokenHook(Implementation memory hook, bytes memory encodedCall) internal { (bool success, ) = hook.target.call(encodedCall); require(success, "LibTokenHook: Hook execution failed"); } From 8a818752268a10d7a02f25942ce6929618611e98 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 8 Sep 2025 11:30:18 +0300 Subject: [PATCH 108/270] fix event check in silo payback tests --- test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index ad43d5e9..e7c8895e 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -12,7 +12,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; contract SiloPaybackTest is TestHelper { // Events - event TokenHookCalled(address indexed token, address indexed target, bytes4 selector); + event TokenHookCalled(address indexed token, address indexed target, bytes encodedCall); SiloPayback public siloPayback; MockToken public pintoToken; @@ -567,7 +567,7 @@ contract SiloPaybackTest is TestHelper { emit TokenHookCalled( address(siloPayback), address(siloPayback), - siloPayback.protocolUpdate.selector + abi.encodeWithSelector(siloPayback.protocolUpdate.selector, sender, receipient, amount) ); } bs.transferToken(address(siloPayback), receipient, amount, uint8(fromMode), uint8(toMode)); From ceabe88b792fd31ad7279d687262e071037a7d6f Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 8 Sep 2025 08:32:16 +0000 Subject: [PATCH 109/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol index e7c8895e..596a36a3 100644 --- a/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/SiloPayback.t.sol @@ -567,7 +567,12 @@ contract SiloPaybackTest is TestHelper { emit TokenHookCalled( address(siloPayback), address(siloPayback), - abi.encodeWithSelector(siloPayback.protocolUpdate.selector, sender, receipient, amount) + abi.encodeWithSelector( + siloPayback.protocolUpdate.selector, + sender, + receipient, + amount + ) ); } bs.transferToken(address(siloPayback), receipient, amount, uint8(fromMode), uint8(toMode)); From f547a17e4c005e8aacf2308225dc18d271800f84 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 10 Sep 2025 12:38:12 +0000 Subject: [PATCH 110/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/BlueprintBase.sol | 10 +++------- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 3 +-- test/foundry/utils/TractorHelper.sol | 11 +++++------ 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/contracts/ecosystem/BlueprintBase.sol b/contracts/ecosystem/BlueprintBase.sol index 49b3487f..e7ebad12 100644 --- a/contracts/ecosystem/BlueprintBase.sol +++ b/contracts/ecosystem/BlueprintBase.sol @@ -12,7 +12,6 @@ import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol" * @notice Abstract base contract for Tractor blueprints providing shared state and validation functions */ abstract contract BlueprintBase is PerFunctionPausable { - /** * @notice Struct to hold operator parameters * @param whitelistedOperators Array of whitelisted operator addresses @@ -27,7 +26,7 @@ abstract contract BlueprintBase is PerFunctionPausable { /** * Mapping to track the last executed season for each order hash - * If a Blueprint needs to track more state about orders, an additional + * If a Blueprint needs to track more state about orders, an additional * mapping(orderHash => state) can be added to the contract inheriting from BlueprintBase. */ mapping(bytes32 orderHash => uint32 lastExecutedSeason) public orderLastExecutedSeason; @@ -85,10 +84,7 @@ abstract contract BlueprintBase is PerFunctionPausable { * @param sourceTokenIndices Array of source token indices */ function _validateSourceTokens(uint8[] calldata sourceTokenIndices) internal pure { - require( - sourceTokenIndices.length > 0, - "Must provide at least one source token" - ); + require(sourceTokenIndices.length > 0, "Must provide at least one source token"); } /** @@ -99,4 +95,4 @@ abstract contract BlueprintBase is PerFunctionPausable { function _resolveTipAddress(address providedTipAddress) internal view returns (address) { return providedTipAddress == address(0) ? beanstalk.operator() : providedTipAddress; } -} \ No newline at end of file +} diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index b120b619..ae65862f 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -336,7 +336,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Shared validations _validateSourceTokens(params.mowPlantHarvestParams.sourceTokenIndices); _validateOperatorParams(params.opParams); - + // Blueprint specific validations // Validate that minPlantAmount and minHarvestAmount result in profit if (params.opParams.operatorTipAmount >= 0) { @@ -352,5 +352,4 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ); } } - } diff --git a/test/foundry/utils/TractorHelper.sol b/test/foundry/utils/TractorHelper.sol index aa3c0947..67e3a52f 100644 --- a/test/foundry/utils/TractorHelper.sol +++ b/test/foundry/utils/TractorHelper.sol @@ -370,12 +370,11 @@ contract TractorHelper is TestHelper { }); // Create OperatorParams struct - BlueprintBase.OperatorParams memory opParams = BlueprintBase - .OperatorParams({ - whitelistedOperators: whitelistedOps, - tipAddress: tipAddress, - operatorTipAmount: operatorTipAmount - }); + BlueprintBase.OperatorParams memory opParams = BlueprintBase.OperatorParams({ + whitelistedOperators: whitelistedOps, + tipAddress: tipAddress, + operatorTipAmount: operatorTipAmount + }); return MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct({ From a66e3fd399d3df9567e2be637f868ade848a74f0 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 11:35:52 +0300 Subject: [PATCH 111/270] finish merging of adjascent plots --- .../beanstalk/facets/field/FieldFacet.sol | 54 +----- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 155 +++++++++++++++--- test/foundry/utils/TractorHelper.sol | 1 - 3 files changed, 140 insertions(+), 70 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 3d0f2a7e..63133569 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -16,7 +16,6 @@ import {LibDibbler} from "contracts/libraries/LibDibbler.sol"; import {LibDiamond} from "contracts/libraries/LibDiamond.sol"; import {LibMarket} from "contracts/libraries/LibMarket.sol"; import {BeanstalkERC20} from "contracts/tokens/ERC20/BeanstalkERC20.sol"; -import "forge-std/console.sol"; interface IBeanstalk { function cancelPodListing(uint256 fieldId, uint256 index) external; @@ -428,7 +427,6 @@ contract FieldFacet is Invariable, ReentrancyGuard { return s.accts[account].fields[fieldId].plotIndexes; } - // 1. a function that gets the length of a farmers plotIndexes array /** * @notice returns the length of the plotIndexes owned by `account`. */ @@ -455,10 +453,9 @@ contract FieldFacet is Invariable, ReentrancyGuard { } } - // 2. A function that takes in a farmer and index, and return the value in the piIndex mapping. /** - * @notice returns the value in the piIndex mapping for a given account, fieldId and index. - * piIndex is a mapping from Plot index to the index in the plotIndexes array. + * @notice Returns the value in the piIndex mapping for a given account, fieldId and index. + * @dev `piIndex` is a mapping from Plot index to the index in the `plotIndexes` array. */ function getPiIndexFromAccount( address account, @@ -481,11 +478,9 @@ contract FieldFacet is Invariable, ReentrancyGuard { //////////////////// PLOT INDEX HELPERS //////////////////// /** - * @notice returns Plot indexes by their positions in the plotIndexes array. + * @notice Returns Plot indexes by their positions in the `plotIndexes` array. * @dev plotIndexes is an array of Plot indexes, used to return the farm plots of a Farmer. */ - // 3. A function that, given a farmer and index of an array, returns only the 'index' portion of the plot. - // You may want to make this such that you can request multiple indexes, or range. function getPlotIndexesAtPositions( address account, uint256 fieldId, @@ -501,10 +496,8 @@ contract FieldFacet is Invariable, ReentrancyGuard { } /** - * @notice returns Plot indexes for a specified range in the plotIndexes array. + * @notice Returns Plot indexes for a specified range in the `plotIndexes` array. */ - // 3. A function that, given a farmer and index of an array, returns only the 'index' portion of the plot. - // You may want to make this such that you can request multiple indexes, or range. function getPlotIndexesByRange( address account, uint256 fieldId, @@ -527,7 +520,6 @@ contract FieldFacet is Invariable, ReentrancyGuard { * @param fieldId The field ID containing the plots * @param plotIndexes Array of adjacent plot indexes to combine (must be sorted and consecutive) * @dev Plots must be adjacent: plot[i].index + plot[i].pods == plot[i+1].index - * Updates storage by merging plots and rebuilding plotIndexes/piIndex * Any account can combine any other account's adjacent plots */ function combinePlots( @@ -553,46 +545,12 @@ contract FieldFacet is Invariable, ReentrancyGuard { totalPods += currentPods; expectedNextStart = plotIndexes[i] + currentPods; - // delete subsequent plots, set the amount to 0 so that we can rebuild the array later + // delete subsequent plot, plotIndex and piIndex mapping entry delete s.accts[account].fields[fieldId].plots[plotIndexes[i]]; + LibDibbler.removePlotIndexFromAccount(account, fieldId, plotIndexes[i]); } // update first plot with combined pods s.accts[account].fields[fieldId].plots[plotIndexes[0]] = totalPods; - - // rebuild plotIndexes array and piIndex mapping - _rebuildPlotStorage(account, fieldId); - } - - /** - * @dev Rebuilds a plotIndexes array and piIndex mapping after combining plots. - */ - function _rebuildPlotStorage(address account, uint256 fieldId) internal { - uint256[] storage userPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; - - uint256 writeIndex = 0; - - // compact array by keeping only existing plots - for (uint256 i = 0; i < userPlotIndexes.length; i++) { - uint256 plotIndex = userPlotIndexes[i]; - - // from previous step, if we deleted the plot, plots[plotIndex] will be 0 - if (s.accts[account].fields[fieldId].plots[plotIndex] > 0) { - // if the plot is not deleted, we need to update the plotIndexes array - if (writeIndex != i) userPlotIndexes[writeIndex] = plotIndex; - // update the piIndex mapping to point to the new index in the userPlotIndexes array - s.accts[account].fields[fieldId].piIndex[plotIndex] = writeIndex; - writeIndex++; - } else { - // if the plot is deleted, we need to delete the piIndex mapping - delete s.accts[account].fields[fieldId].piIndex[plotIndex]; - } - } - - // resize array using assembly, - // a dynamic array's base slot contains the array length - assembly { - sstore(userPlotIndexes.slot, writeIndex) - } } } diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 70062d79..d35c905a 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -40,6 +40,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function setUp() public { initializeBeanstalkTestState(true, false); farmers = createUsers(2); + vm.label(farmers[0], "Farmer 1"); + vm.label(farmers[1], "Farmer 2"); // Deploy PriceManipulation (unused here but needed for TractorHelpers) priceManipulation = new PriceManipulation(address(bs)); @@ -91,6 +93,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // Mint 2x the amount to ensure we have enough for all test cases mintTokensToUser(state.user, state.beanToken, state.mintAmount); + // Mint some to farmer 2 for plot tests + mintTokensToUser(farmers[1], state.beanToken, 10000000e6); vm.prank(state.user); IERC20(state.beanToken).approve(address(bs), type(uint256).max); @@ -134,10 +138,6 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { state.user, bs.activeField() ); - for (uint256 i = 0; i < plots.length; i++) { - console.log("plots[i].index", plots[i].index); - console.log("plots[i].pods", plots[i].pods); - } } return state; @@ -467,7 +467,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // setupPlant: false, setupHarvest: false (dont sow default amounts), abovePeg: true TestState memory state = setupMowPlantHarvestBlueprintTest(false, false, true); - uint256[] memory plotIndexes = setUpMultipleAccountPlots(state.user, 1000e6, 10); // 10 sows of 100 beans each at 1% temp + uint256[] memory plotIndexes = setUpMultipleConsecutiveAccountPlots(state.user, 1000e6, 10); // 10 sows of 100 beans each at 1% temp IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(state.user, bs.activeField()); uint256 totalPodsBeforeCombine = 0; for (uint256 i = 0; i < plots.length; i++) { @@ -483,24 +483,70 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { assertEq(plots[0].index, 0, "plot index should be 0"); assertEq(plots[0].pods, totalPodsBeforeCombine, "plot pods should be 1010e6"); - // + // assert plot indexes length is 1 + assertEq( + bs.getPlotIndexesLengthFromAccount(state.user, bs.activeField()), + 1, + "plot indexes length should be 1" + ); + + // assert plot indexes is 0 + uint256[] memory plotIndexesAfterCombine = bs.getPlotIndexesFromAccount( + state.user, + bs.activeField() + ); + assertEq(plotIndexesAfterCombine.length, 1, "plot indexes length should be 1"); + assertEq(plotIndexesAfterCombine[0], 0, "plot index should be 0"); } - function setUpMultipleAccountPlots( - address account, - uint256 totalSoil, - uint256 sowCount - ) internal returns (uint256[] memory plotIndexes) { - // set soil to totalSoil - bs.setSoilE(totalSoil); - // sow totalSoil beans sowCount times of totalSoil/sowCount each - uint256 sowAmount = totalSoil / sowCount; - for (uint256 i = 0; i < sowCount; i++) { - vm.prank(account); - bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); - } - plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); - return plotIndexes; + function test_mergeAdjacentPlotsMultiple() public { + // mint beans to farmers + mintTokensToUser(farmers[0], BEAN, 10000000e6); + mintTokensToUser(farmers[1], BEAN, 10000000e6); + vm.prank(farmers[0]); + IERC20(BEAN).approve(address(bs), type(uint256).max); + vm.prank(farmers[1]); + IERC20(BEAN).approve(address(bs), type(uint256).max); + + // setup non-adjacent plots for farmer 1 + uint256[] memory account1PlotIndexes = setUpNonAdjacentPlots(farmers[0], farmers[1], 1000e6, true); + uint256 totalPodsBefore = getTotalPodsFromAccount(farmers[0]); + + // try to combine plots, expect revert since plots are not adjacent + uint256 activeField = bs.activeField(); + vm.expectRevert("Field: Plots to combine not adjacent"); + bs.combinePlots(farmers[0], activeField, account1PlotIndexes); + + // merge adjacent plots in pairs (indexes 1-3) + uint256[] memory adjacentPlotIndexes = new uint256[](3); + adjacentPlotIndexes[0] = account1PlotIndexes[0]; + adjacentPlotIndexes[1] = account1PlotIndexes[1]; + adjacentPlotIndexes[2] = account1PlotIndexes[2]; + bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); + // assert user has 3 plots (1 from the 3 merged, 2 from the original) + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 3, "user should have 3 plots"); + // assert first plot index is 0 after merge + assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], 0, "plot index should be 0"); + + // plots for farmer 2 should remain unchanged in the middle of the queue + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[1], activeField), 2, "user should have 2 plots"); + + // merge adjacent plots in pairs (indexes 5-6) + adjacentPlotIndexes = new uint256[](2); + adjacentPlotIndexes[0] = account1PlotIndexes[3]; + adjacentPlotIndexes[1] = account1PlotIndexes[4]; + bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); + // assert user has 2 plots (1 from the 2 merged, 1 from the 3 original merged) + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 2, "user should have 2 final plots"); + // assert first plot index remains the same after 2nd merge + assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], 0, "plot index should be 0"); + // final plot should start from the next to last previous plot index + assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[1], 5000500000, "final plot index"); + + // get total pods from account 1 + uint256 totalPodsAfter = getTotalPodsFromAccount(farmers[0]); + // assert total pods after merge is the same as before merge + assertEq(totalPodsAfter, totalPodsBefore, "total pods after merge should be the same as before merge"); } /////////////////////////// HELPER FUNCTIONS /////////////////////////// @@ -553,6 +599,73 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { return (totalUserHarvestablePods, userHarvestablePlots); } + /** + * @dev Creates multiple consecutive plots for an account of size totalSoil/sowCount + */ + function setUpMultipleConsecutiveAccountPlots( + address account, + uint256 totalSoil, + uint256 sowCount + ) internal returns (uint256[] memory plotIndexes) { + // set soil to totalSoil + bs.setSoilE(totalSoil); + // sow totalSoil beans sowCount times of totalSoil/sowCount each + uint256 sowAmount = totalSoil / sowCount; + for (uint256 i = 0; i < sowCount; i++) { + vm.prank(account); + bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); + } + plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); + return plotIndexes; + } + + /** + * @dev Creates non-adjacent plots by having account1 sow, then account2 sow in between + * Finally, account1 harvests to disorder the plot indexes array + */ + function setUpNonAdjacentPlots( + address account1, + address account2, + uint256 sowAmount, + bool partiallyHarvest + ) internal returns (uint256[] memory plotIndexes) { + // Account1 sows 3 consecutive plots + bs.setSoilE(sowAmount * 3); + for (uint256 i = 0; i < 3; i++) { + vm.prank(account1); + bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); + } + + // Account2 sows 2 plots to create gaps in account1's sequence + bs.setSoilE(sowAmount * 2); + for (uint256 i = 0; i < 2; i++) { + vm.prank(account2); + bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); + } + + // Account1 sows 2 more plots (now non-adjacent to first 3) + bs.setSoilE(sowAmount * 2); + for (uint256 i = 0; i < 2; i++) { + vm.prank(account1); + bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); + } + + // Get plot indexes + plotIndexes = bs.getPlotIndexesFromAccount(account1, bs.activeField()); + + return plotIndexes; + } + + function getTotalPodsFromAccount( + address account + ) internal view returns (uint256 totalPods) { + uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); + for (uint256 i = 0; i < plotIndexes.length; i++) { + totalPods += bs.plot(account, bs.activeField(), plotIndexes[i]); + } + return totalPods; + } + /// @dev Advance to the next season and update oracles function advanceSeason() internal { warpToNextSeasonTimestamp(); diff --git a/test/foundry/utils/TractorHelper.sol b/test/foundry/utils/TractorHelper.sol index 67e3a52f..67ad1c30 100644 --- a/test/foundry/utils/TractorHelper.sol +++ b/test/foundry/utils/TractorHelper.sol @@ -383,7 +383,6 @@ contract TractorHelper is TestHelper { }); } - /// @dev this is good to go function createMowPlantHarvestBlueprintCallData( MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory params ) internal view returns (bytes memory) { From a7b1658c17ca5b672a964b5bce4d6ed9eb96d481 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 12 Sep 2025 08:37:20 +0000 Subject: [PATCH 112/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 55 +++++++++++++++---- 1 file changed, 43 insertions(+), 12 deletions(-) diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index d35c905a..e0f20ec5 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -509,7 +509,12 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { IERC20(BEAN).approve(address(bs), type(uint256).max); // setup non-adjacent plots for farmer 1 - uint256[] memory account1PlotIndexes = setUpNonAdjacentPlots(farmers[0], farmers[1], 1000e6, true); + uint256[] memory account1PlotIndexes = setUpNonAdjacentPlots( + farmers[0], + farmers[1], + 1000e6, + true + ); uint256 totalPodsBefore = getTotalPodsFromAccount(farmers[0]); // try to combine plots, expect revert since plots are not adjacent @@ -524,12 +529,24 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { adjacentPlotIndexes[2] = account1PlotIndexes[2]; bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); // assert user has 3 plots (1 from the 3 merged, 2 from the original) - assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 3, "user should have 3 plots"); + assertEq( + bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), + 3, + "user should have 3 plots" + ); // assert first plot index is 0 after merge - assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], 0, "plot index should be 0"); - + assertEq( + bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], + 0, + "plot index should be 0" + ); + // plots for farmer 2 should remain unchanged in the middle of the queue - assertEq(bs.getPlotIndexesLengthFromAccount(farmers[1], activeField), 2, "user should have 2 plots"); + assertEq( + bs.getPlotIndexesLengthFromAccount(farmers[1], activeField), + 2, + "user should have 2 plots" + ); // merge adjacent plots in pairs (indexes 5-6) adjacentPlotIndexes = new uint256[](2); @@ -537,16 +554,32 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { adjacentPlotIndexes[1] = account1PlotIndexes[4]; bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); // assert user has 2 plots (1 from the 2 merged, 1 from the 3 original merged) - assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 2, "user should have 2 final plots"); + assertEq( + bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), + 2, + "user should have 2 final plots" + ); // assert first plot index remains the same after 2nd merge - assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], 0, "plot index should be 0"); + assertEq( + bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], + 0, + "plot index should be 0" + ); // final plot should start from the next to last previous plot index - assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[1], 5000500000, "final plot index"); + assertEq( + bs.getPlotIndexesFromAccount(farmers[0], activeField)[1], + 5000500000, + "final plot index" + ); // get total pods from account 1 uint256 totalPodsAfter = getTotalPodsFromAccount(farmers[0]); // assert total pods after merge is the same as before merge - assertEq(totalPodsAfter, totalPodsBefore, "total pods after merge should be the same as before merge"); + assertEq( + totalPodsAfter, + totalPodsBefore, + "total pods after merge should be the same as before merge" + ); } /////////////////////////// HELPER FUNCTIONS /////////////////////////// @@ -656,9 +689,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { return plotIndexes; } - function getTotalPodsFromAccount( - address account - ) internal view returns (uint256 totalPods) { + function getTotalPodsFromAccount(address account) internal view returns (uint256 totalPods) { uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); for (uint256 i = 0; i < plotIndexes.length; i++) { totalPods += bs.plot(account, bs.activeField(), plotIndexes[i]); From f0cb5d133a29551eabfdef474c0d889605e6c3a9 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 13:09:35 +0300 Subject: [PATCH 113/270] fix typo and gas inefficiency in TempRepaymentFieldFacet --- abi/Beanstalk.json | 2 +- .../facets/field/TempRepaymentFieldFacet.sol | 24 +++++++++---------- hardhat.config.js | 2 +- .../populateBeanstalkField.js | 4 ++-- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/abi/Beanstalk.json b/abi/Beanstalk.json index dbc126b8..cf28aec4 100644 --- a/abi/Beanstalk.json +++ b/abi/Beanstalk.json @@ -2150,7 +2150,7 @@ "type": "tuple[]" } ], - "name": "initializeReplaymentPlots", + "name": "initializeRepaymentPlots", "outputs": [], "stateMutability": "nonpayable", "type": "function" diff --git a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol index 047d5c4e..5b9ff578 100644 --- a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol @@ -5,25 +5,26 @@ pragma solidity ^0.8.20; import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; import {ReentrancyGuard} from "contracts/beanstalk/ReentrancyGuard.sol"; import {LibAppStorage} from "contracts/libraries/LibAppStorage.sol"; -import {FieldFacet} from "contracts/beanstalk/facets/field/FieldFacet.sol"; /** * @title TempRepaymentFieldFacet * @notice Temporary facet to re-initialize the repayment field with data from the Beanstalk Podline. - * Upon deployment of the beanstalkShipments, a new field will be created in + * Upon deployment of the beanstalkShipments, a new field will be created and initialized here. + * The result will be a mirror of the Beanstalk Podline at a new field Id. + * After the initialization is complete, this facet will be removed. */ contract TempRepaymentFieldFacet is ReentrancyGuard { address public constant REPAYMENT_FIELD_POPULATOR = 0xc4c66c8b199443a8deA5939ce175C3592e349791; uint256 public constant REPAYMENT_FIELD_ID = 1; - event ReplaymentPlotAdded(address indexed account, uint256 indexed plotIndex, uint256 pods); + event RepaymentPlotAdded(address indexed account, uint256 indexed plotIndex, uint256 pods); struct Plot { uint256 podIndex; uint256 podAmounts; } - struct ReplaymentPlotData { + struct RepaymentPlotData { address account; Plot[] plots; } @@ -33,8 +34,8 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { * @dev This function is only callable by the repayment field populator. * @param accountPlots the plot for each account */ - function initializeReplaymentPlots( - ReplaymentPlotData[] calldata accountPlots + function initializeRepaymentPlots( + RepaymentPlotData[] calldata accountPlots ) external nonReentrant { require( msg.sender == REPAYMENT_FIELD_POPULATOR, @@ -42,18 +43,17 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { ); AppStorage storage s = LibAppStorage.diamondStorage(); for (uint i; i < accountPlots.length; i++) { - // cache the account + // cache the account and length of the plot indexes array address account = accountPlots[i].account; + uint256 plotIndexesLength = s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length; for (uint j; j < accountPlots[i].plots.length; j++) { uint256 podIndex = accountPlots[i].plots[j].podIndex; uint256 podAmount = accountPlots[i].plots[j].podAmounts; s.accts[account].fields[REPAYMENT_FIELD_ID].plots[podIndex] = podAmount; s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.push(podIndex); - // Set the plot index after the push to ensure length is > 0. - s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = - s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length - - 1; - emit ReplaymentPlotAdded(account, podIndex, podAmount); + s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = plotIndexesLength; + plotIndexesLength++; + emit RepaymentPlotAdded(account, podIndex, podAmount); } } } diff --git a/hardhat.config.js b/hardhat.config.js index 4a885d9e..daa05cf3 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2227,7 +2227,7 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio // Selectors removed: // 0x31f2cd56: REPAYMENT_FIELD_ID() // 0x49e40d6c: REPAYMENT_FIELD_POPULATOR() - // 0x0b678c09: initializeReplaymentPlots() + // 0x0b678c09: initializeRepaymentPlots() console.log("\nSTEP 4: UPDATING SHIPMENT ROUTES, CREATING NEW FIELD AND REMOVING TEMP FACET"); const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; const routes = JSON.parse(fs.readFileSync(routesPath)); diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 810cf17f..4351c816 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -7,7 +7,7 @@ const { /** * Populates the beanstalk field by reading data from beanstalkPlots.json - * and calling initializeReplaymentPlots directly on the L2_PINTO contract + * and calling initializeRepaymentPlots directly on the L2_PINTO contract */ async function populateBeanstalkField({ diamondAddress, account, verbose }) { console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots."); @@ -36,7 +36,7 @@ async function populateBeanstalkField({ diamondAddress, account, verbose }) { console.log("-----------------------------------"); } await retryOperation(async () => { - const tx = await pintoDiamond.initializeReplaymentPlots(plotChunks[i]); + const tx = await pintoDiamond.initializeRepaymentPlots(plotChunks[i]); const receipt = await tx.wait(); if (verbose) { console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); From ad823f846fc30b02cca7300dae0c91c489cc4e05 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 12 Sep 2025 10:11:41 +0000 Subject: [PATCH 114/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../beanstalk/facets/field/TempRepaymentFieldFacet.sol | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol index 5b9ff578..6460e97e 100644 --- a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol @@ -45,7 +45,11 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { for (uint i; i < accountPlots.length; i++) { // cache the account and length of the plot indexes array address account = accountPlots[i].account; - uint256 plotIndexesLength = s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length; + uint256 plotIndexesLength = s + .accts[account] + .fields[REPAYMENT_FIELD_ID] + .plotIndexes + .length; for (uint j; j < accountPlots[i].plots.length; j++) { uint256 podIndex = accountPlots[i].plots[j].podIndex; uint256 podAmount = accountPlots[i].plots[j].podAmounts; From 4c68303b143112d08c19deaef07dd6084f5e05d5 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 13:32:29 +0300 Subject: [PATCH 115/270] update repayment field init selector to remove --- hardhat.config.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index daa05cf3..d25532c9 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2227,7 +2227,7 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio // Selectors removed: // 0x31f2cd56: REPAYMENT_FIELD_ID() // 0x49e40d6c: REPAYMENT_FIELD_POPULATOR() - // 0x0b678c09: initializeRepaymentPlots() + // 0x1fd620f9: initializeRepaymentPlots() console.log("\nSTEP 4: UPDATING SHIPMENT ROUTES, CREATING NEW FIELD AND REMOVING TEMP FACET"); const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; const routes = JSON.parse(fs.readFileSync(routesPath)); @@ -2259,7 +2259,7 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio }, initFacetName: "InitBeanstalkShipments", initArgs: [routes, BEANSTALK_SILO_PAYBACK], - selectorsToRemove: ["0x31f2cd56", "0x49e40d6c", "0x0b678c09"], + selectorsToRemove: ["0x31f2cd56", "0x49e40d6c", "0x1fd620f9"], verbose: true, object: !mock, account: owner From 65828bc8e9694db597d55c802250233bfeafc1fb Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 13:41:21 +0300 Subject: [PATCH 116/270] refactor InitBeanstalkShipments to call functions on the diamond --- .../init/shipments/InitBeanstalkShipments.sol | 34 ++++--------------- contracts/interfaces/IBeanstalk.sol | 5 +++ 2 files changed, 12 insertions(+), 27 deletions(-) diff --git a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol index 86488ddb..53a9e3f4 100644 --- a/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol +++ b/contracts/beanstalk/init/shipments/InitBeanstalkShipments.sol @@ -10,6 +10,7 @@ import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; import {Implementation} from "contracts/beanstalk/storage/System.sol"; import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {LibTokenHook} from "contracts/libraries/Token/LibTokenHook.sol"; +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; /** * @title InitBeanstalkShipments modifies the existing routes to split the payback shipments into 2 routes. @@ -22,50 +23,29 @@ contract InitBeanstalkShipments { // The largest index in beanstalk_field.json incremented by the corresponding amount. uint256 constant REPAYMENT_FIELD_PODS = 919768387056514; - event ShipmentRoutesSet(ShipmentRoute[] newRoutes); - event FieldAdded(uint256 fieldId); - function init(ShipmentRoute[] calldata newRoutes, address siloPayback) external { // set the shipment routes, replaces the entire set of routes - _setShipmentRoutes(newRoutes); + IBeanstalk(address(this)).setShipmentRoutes(newRoutes); // create the repayment field - _initReplaymentField(); + _initRepaymentField(); // add the pre-transfer hook for silo payback _addSiloPaybackHook(siloPayback); } /** - * @notice Replaces the entire set of ShipmentRoutes with a new set. (from Distribution.sol) - * @dev Solidity does not support direct assignment of array structs to Storage. + * @notice Create new field and initialize it with the Beanstalk Podline data. */ - function _setShipmentRoutes(ShipmentRoute[] calldata newRoutes) internal { + function _initRepaymentField() internal { AppStorage storage s = LibAppStorage.diamondStorage(); - delete s.sys.shipmentRoutes; - for (uint256 i; i < newRoutes.length; i++) { - s.sys.shipmentRoutes.push(newRoutes[i]); - } - emit ShipmentRoutesSet(newRoutes); - } - - /** - * @notice Create new field, mimics the addField function in FieldFacet.sol - */ - function _initReplaymentField() internal { - AppStorage storage s = LibAppStorage.diamondStorage(); - require(s.sys.fieldCount == 1, "Repayment field already exists"); - uint256 fieldId = s.sys.fieldCount; - s.sys.fieldCount++; - // init global state for new field, - // harvestable and harvested vars are 0 since we shifted all plots in the data to start from 0 + IBeanstalk(address(this)).addField(); + // harvestable and harvested vars are 0 since all plots in the data were shifted to start from 0 s.sys.fields[REPAYMENT_FIELD_ID].pods = REPAYMENT_FIELD_PODS; - emit FieldAdded(fieldId); } /** * @notice Adds the internal pre-transfer hook to sync state on the silo payback contract between internal transfers. */ function _addSiloPaybackHook(address siloPayback) internal { - AppStorage storage s = LibAppStorage.diamondStorage(); LibTokenHook.addTokenHook( siloPayback, Implementation({ diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index f3082566..15f80e89 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -5,6 +5,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {AdvancedFarmCall} from "../libraries/LibFarm.sol"; import {LibTransfer} from "../libraries/Token/LibTransfer.sol"; import {LibTractor} from "../libraries/LibTractor.sol"; +import {ShipmentRoute} from "../beanstalk/storage/System.sol"; interface IBeanstalk { enum GerminationSide { @@ -248,4 +249,8 @@ interface IBeanstalk { external view returns (WhitelistStatus[] memory _whitelistStatuses); + + function setShipmentRoutes(ShipmentRoute[] calldata shipmentRoutes) external; + + function addField() external; } From dc2a54f5a2623f6d44a7f46f6479b874e4d7a907 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 12 Sep 2025 10:43:30 +0000 Subject: [PATCH 117/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/interfaces/IBeanstalk.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 15f80e89..e84596a8 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -251,6 +251,6 @@ interface IBeanstalk { returns (WhitelistStatus[] memory _whitelistStatuses); function setShipmentRoutes(ShipmentRoute[] calldata shipmentRoutes) external; - + function addField() external; } From b66d3ce57695dcf09d7edb5a3092db8fb607fb6f Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 15:26:41 +0300 Subject: [PATCH 118/270] comment and import fixes in BarnPayback --- .../ecosystem/beanstalkShipments/barn/BarnPayback.sol | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index fab09a78..1555c21b 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -4,14 +4,13 @@ pragma solidity ^0.8.20; -import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; -import {BeanstalkFertilizer} from "./BeanstalkFertilizer.sol"; +import {LibTransfer, BeanstalkFertilizer} from "./BeanstalkFertilizer.sol"; /** * @dev BarnPayback facilitates the payback of beanstalk fertilizer holders. * Inherits from BeanstalkFertilizer that contains a copy of the beanstalk ERC-1155 fertilizer implementation. - * Instead of keeping the fertilizerstate in the main protocol storage all state is copied and initialized locally. - * The BarnPayback contract is initialized using the state at the snapshot of Pinto's deployment and repays - * beanstalk fertilizer holders with pinto until they all become inactive. + * Instead of keeping the fertilizer state in the main protocol storage, all state is copied and initialized locally. + * The BarnPayback contract is initialized using the state of Beanstalk at block 276160746 on Arbitrum and repays + * beanstalk fertilizer holders until they all become inactive. */ contract BarnPayback is BeanstalkFertilizer { /** @@ -101,7 +100,6 @@ contract BarnPayback is BeanstalkFertilizer { function barnPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { uint256 amountToFertilize = shipmentAmount + fert.leftoverBeans; // Get the new Beans per Fertilizer and the total new Beans per Fertilizer - // Zeroness of activeFertilizer handled in Planner. uint256 remainingBpf = amountToFertilize / fert.activeFertilizer; uint256 oldBpf = fert.bpf; uint256 newBpf = oldBpf + remainingBpf; From 0957e8010f5b0d681a807959446384ecc6b47369 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 15:41:38 +0300 Subject: [PATCH 119/270] comment fix --- .../ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index f0873975..bd6db487 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -330,7 +330,8 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran uint256 amount = __update(account, ids, bpf); if (amount > 0) { fert.fertilizedPaidIndex += amount; - // Transfer the rewards to the caller, pintos are streamed to the contract's external balance + // Transfer the rewards to the caller, + // note: pintos are streamed to the contract's external balance during the gm call pintoProtocol.transferToken( pinto, account, From 3105fae96b9dd2b2bbeb615edb07f82207eec935 Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 15:57:23 +0300 Subject: [PATCH 120/270] add abstact TractorEnabled contract and make fertilizer claims tractable --- contracts/ecosystem/TractorEnabled.sol | 26 +++++++++++++++++++ .../beanstalkShipments/SiloPayback.sol | 18 +++---------- .../beanstalkShipments/barn/BarnPayback.sol | 7 +++-- .../barn/BeanstalkFertilizer.sol | 5 ++-- 4 files changed, 36 insertions(+), 20 deletions(-) create mode 100644 contracts/ecosystem/TractorEnabled.sol diff --git a/contracts/ecosystem/TractorEnabled.sol b/contracts/ecosystem/TractorEnabled.sol new file mode 100644 index 00000000..a9eab692 --- /dev/null +++ b/contracts/ecosystem/TractorEnabled.sol @@ -0,0 +1,26 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; + +/** + * @title TractorEnabled + * @notice Enables any contract to allow for tractor functionality by exposing the necessary shared state and functions + * If a contract wants to allow a function to be called by a tractor operator on behalf of a blueprint publisher, + * It should simply perform a call to _getBeanstalkFarmer() and use the returned address as the msg.sender + */ +abstract contract TractorEnabled { + /// @dev All contracts using tractor must call the diamond to get the active user + IBeanstalk public pintoProtocol; + + /** + * @notice Gets the active user account from the diamond tractor storage + * The account returned is either msg.sender or an active tractor publisher + * Since msg.sender for the external call is the caller contract, we need to adjust + * it to the actual function caller + */ + function _getBeanstalkFarmer() internal view returns (address) { + address tractorAccount = pintoProtocol.tractorUser(); + return tractorAccount == address(this) ? msg.sender : tractorAccount; + } +} diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 3fb2fb04..4f48706b 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -7,8 +7,9 @@ import {ERC20Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; +import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; -contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { +contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, TractorEnabled { /// @dev precision used for reward calculations uint256 public constant PRECISION = 1e18; @@ -17,8 +18,6 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { uint256 bdv; } - // Contracts - IBeanstalk public pintoProtocol; IERC20 public pinto; /// @dev Tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. @@ -104,7 +103,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { * @param toMode The mode to send the rewards in */ function claim(address recipient, LibTransfer.To toMode) external { - address account = _getActiveAccount(); + address account = _getBeanstalkFarmer(); uint256 userCombinedBalance = getBalanceCombined(account); // Validate balance @@ -139,17 +138,6 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable { } } - /** - * @notice Gets the active account from the diamond tractor storage - * The account returned is either msg.sender or an active publisher - * Since msg.sender for the external call is this contract, we need to adjust - * it to the actual function caller - */ - function _getActiveAccount() internal view returns (address) { - address tractorAccount = pintoProtocol.tractorUser(); - return tractorAccount == address(this) ? msg.sender : tractorAccount; - } - /** * @notice Gets the balance of an account * @param account The account to get the balance of UnripeBDV tokens for diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index 1555c21b..a4f3ec6d 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -13,6 +13,8 @@ import {LibTransfer, BeanstalkFertilizer} from "./BeanstalkFertilizer.sol"; * beanstalk fertilizer holders until they all become inactive. */ contract BarnPayback is BeanstalkFertilizer { + event BarnPaybackRewardsReceived(uint256 amount); + /** * @notice Contains per-account intialization data for Fertilizer. */ @@ -145,11 +147,12 @@ contract BarnPayback is BeanstalkFertilizer { * @param mode - the balance to transfer Beans to; see {LibTransfer.To} */ function claimFertilized(uint256[] memory ids, LibTransfer.To mode) external { - uint256 amount = __update(msg.sender, ids, uint256(fert.bpf)); + address account = _getBeanstalkFarmer(); + uint256 amount = __update(account, ids, uint256(fert.bpf)); if (amount > 0) { fert.fertilizedPaidIndex += amount; // Transfer the rewards to the caller, pintos are streamed to the contract's external balance - pintoProtocol.transferToken(pinto, msg.sender, amount, LibTransfer.From.EXTERNAL, mode); + pintoProtocol.transferToken(pinto, account, amount, LibTransfer.From.EXTERNAL, mode); } } diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index bd6db487..cd3f7b3c 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -15,13 +15,14 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {LibBytes64} from "contracts/libraries/LibBytes64.sol"; import {Strings} from "@openzeppelin/contracts/utils/Strings.sol"; +import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; /** * @dev Fertilizer tailored implementation of the ERC-1155 standard. * We rewrite transfer and mint functions to allow the balance transfer function be overwritten as well. * Merged from multiple contracts: Fertilizer.sol, Internalizer.sol, Fertilizer1155.sol from the beanstalk protocol. */ -contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable { +contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable, TractorEnabled { using LibRedundantMath256 for uint256; using LibRedundantMath128 for uint128; using Strings for uint256; @@ -30,7 +31,6 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran address(0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000); event ClaimFertilizer(uint256[] ids, uint256 beans); - event BarnPaybackRewardsReceived(uint256 amount); struct Balance { uint128 amount; @@ -86,7 +86,6 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran mapping(uint256 => mapping(address => Balance)) internal _balances; SystemFertilizer public fert; IERC20 public pinto; - IBeanstalk public pintoProtocol; /// @dev gap for future upgrades uint256[50] private __gap; From 8df1dbb00aa90d4a4ad01c336b44e06c213f6ef8 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 12 Sep 2025 12:59:23 +0000 Subject: [PATCH 121/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../beanstalkShipments/barn/BeanstalkFertilizer.sol | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index cd3f7b3c..adfc1108 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -22,7 +22,12 @@ import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; * We rewrite transfer and mint functions to allow the balance transfer function be overwritten as well. * Merged from multiple contracts: Fertilizer.sol, Internalizer.sol, Fertilizer1155.sol from the beanstalk protocol. */ -contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable, TractorEnabled { +contract BeanstalkFertilizer is + ERC1155Upgradeable, + OwnableUpgradeable, + ReentrancyGuardUpgradeable, + TractorEnabled +{ using LibRedundantMath256 for uint256; using LibRedundantMath128 for uint128; using Strings for uint256; From 82ca189fd1bd1ce469988a4276a00259a4e88b7a Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 16:28:21 +0300 Subject: [PATCH 122/270] add distributor in init --- .../ecosystem/beanstalkShipments/barn/BarnPayback.sol | 7 +++++-- .../beanstalkShipments/barn/BeanstalkFertilizer.sol | 6 +++--- scripts/beanstalkShipments/deployPaybackContracts.js | 3 ++- .../foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol | 1 + .../beanstalkShipments/ContractDistribution.t.sol | 1 + 5 files changed, 12 insertions(+), 6 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index a4f3ec6d..e06f0da0 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -50,9 +50,10 @@ contract BarnPayback is BeanstalkFertilizer { function initialize( address _pinto, address _pintoProtocol, + address _contractDistributor, InitSystemFertilizer calldata initSystemFert ) public override initializer { - super.initialize(_pinto, _pintoProtocol, initSystemFert); + super.initialize(_pinto, _pintoProtocol, _contractDistributor, initSystemFert); } /** @@ -62,6 +63,8 @@ contract BarnPayback is BeanstalkFertilizer { * @param fertilizerIds Array of fertilizer data containing ids, accounts, amounts, and lastBpf. */ function mintFertilizers(Fertilizers[] calldata fertilizerIds) external onlyOwner { + // cache the distributor address + address distributor = contractDistributor; for (uint i; i < fertilizerIds.length; i++) { Fertilizers memory f = fertilizerIds[i]; uint128 fid = f.fertilizerId; @@ -70,7 +73,7 @@ contract BarnPayback is BeanstalkFertilizer { for (uint j; j < f.accountData.length; j++) { address account = f.accountData[j].account; // Mint to non-contract accounts and the distributor address - if (!isContract(account) || account == CONTRACT_DISTRIBUTOR_ADDRESS) { + if (!isContract(account) || account == distributor) { _balances[fid][account].lastBpf = f.accountData[j].lastBpf; // This line used to call beanstalkMint but amounts and balances are set directly here diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index cd3f7b3c..925aeee8 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -27,9 +27,6 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran using LibRedundantMath128 for uint128; using Strings for uint256; - address public constant CONTRACT_DISTRIBUTOR_ADDRESS = - address(0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000); - event ClaimFertilizer(uint256[] ids, uint256 beans); struct Balance { @@ -86,6 +83,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran mapping(uint256 => mapping(address => Balance)) internal _balances; SystemFertilizer public fert; IERC20 public pinto; + address public contractDistributor; /// @dev gap for future upgrades uint256[50] private __gap; @@ -98,6 +96,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran function initialize( address _pinto, address _pintoProtocol, + address _contractDistributor, InitSystemFertilizer calldata initSystemFert ) public virtual onlyInitializing { // Inheritance Inits @@ -108,6 +107,7 @@ contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, Reentran // State Inits pinto = IERC20(_pinto); pintoProtocol = IBeanstalk(_pintoProtocol); + contractDistributor = _contractDistributor; setFertilizerState(initSystemFert); // approve the pinto protocol to spend the incoming pinto tokens for claims pinto.approve(address(pintoProtocol), type(uint256).max); diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index c83aead1..01c885c5 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -1,5 +1,6 @@ const fs = require("fs"); const { splitEntriesIntoChunks, updateProgress, retryOperation } = require("../../utils/read.js"); +const { BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR } = require("../../test/hardhat/utils/constants.js"); // Deploys SiloPayback, BarnPayback, ShipmentPlanner, and ContractPaybackDistributor contracts async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = true }) { @@ -28,7 +29,7 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru // factory, args, proxy options const barnPaybackContract = await upgrades.deployProxy( barnPaybackFactory, - [PINTO, L2_PINTO, barnPaybackArgs], + [PINTO, L2_PINTO, BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, barnPaybackArgs], { initializer: "initialize", kind: "transparent" diff --git a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol index 638ef87c..f541d770 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol @@ -78,6 +78,7 @@ contract BarnPaybackTest is TestHelper { BarnPayback.initialize.selector, address(BEAN), address(BEANSTALK), + address(0), // contract distributor initSystemFert ); diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 3f6cde47..9e883661 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -323,6 +323,7 @@ contract ContractDistributionTest is TestHelper { BarnPayback.initialize.selector, address(BEAN), address(BEANSTALK), + address(EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR), initSystemFert ); From 29bf19c8119da6ca6dd6e8fafd267a17df1cc38a Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 16:30:41 +0300 Subject: [PATCH 123/270] add named balances mapping --- .../ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index aa24af9b..291f60ed 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -85,7 +85,7 @@ contract BeanstalkFertilizer is } // Storage - mapping(uint256 => mapping(address => Balance)) internal _balances; + mapping(uint256 id => mapping(address account => Balance)) internal _balances; SystemFertilizer public fert; IERC20 public pinto; address public contractDistributor; From 1da5f8f0d441f4e1cf66de51fcce2aad9adbfe1c Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 17:26:02 +0300 Subject: [PATCH 124/270] distributor naming fixes --- .../contractDistribution/ContractPaybackDistributor.sol | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 105ed361..68f59e9f 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -50,7 +50,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive uint256[] fertilizerIds; uint256[] fertilizerAmounts; uint256[] plotIds; - uint256[] plotEnds; + uint256[] plotAmounts; } /// @dev contains all the data for all the contract accounts @@ -134,8 +134,8 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive } /** - * @notice Receives a message from the l1 messenger and distrubutes all assets to a receiver. - * @param caller The address of the caller on the l1. (The encoded msg.sender in the message) + * @notice Receives a message from the L1 messenger and distrubutes all assets to a receiver. + * @param caller The address of the caller on the L1. (The encoded msg.sender in the message) * @param receiver The address to transfer all the assets to. */ function claimFromL1Message( @@ -183,7 +183,7 @@ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receive REPAYMENT_FIELD_ID, accountData.plotIds, plotStarts, - accountData.plotEnds + accountData.plotAmounts ); } } From 1e8594b868f37fb6bdc2b1b8d985ba694ae300de Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 17:32:03 +0300 Subject: [PATCH 125/270] add arb contract clarification --- .../contractDistribution/ContractPaybackDistributor.sol | 2 ++ 1 file changed, 2 insertions(+) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 68f59e9f..6c8ee3fa 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -29,6 +29,8 @@ import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; * received, calls claimFromMessage and receive their assets in an address of their choice * * 3. If an account has just delegated its code to a contract, they can just call claimDirect() and receive their assets. + * + * note: For contract account that have migrated to Arbitrum, no action is needed as their assets will be minted to them directly. */ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receiver { using SafeERC20 for IERC20; From 367c9a0187104d1ebc63d940a22578a9e18fff86 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 12 Sep 2025 14:34:14 +0000 Subject: [PATCH 126/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../contractDistribution/ContractPaybackDistributor.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 6c8ee3fa..5dd5e90a 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -29,7 +29,7 @@ import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; * received, calls claimFromMessage and receive their assets in an address of their choice * * 3. If an account has just delegated its code to a contract, they can just call claimDirect() and receive their assets. - * + * * note: For contract account that have migrated to Arbitrum, no action is needed as their assets will be minted to them directly. */ contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receiver { From 26260dfd1c4de1d984d2602508e1fe608735229e Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 17:41:46 +0300 Subject: [PATCH 127/270] move distributor into interface --- .../ContractPaybackDistributor.sol | 3 ++- .../contractDistribution/L1ContractMessenger.sol | 5 +---- contracts/interfaces/IContractPaybackDistributor.sol | 8 ++++++++ .../beanstalkShipments/ContractDistribution.t.sol | 12 ++++++------ 4 files changed, 17 insertions(+), 11 deletions(-) create mode 100644 contracts/interfaces/IContractPaybackDistributor.sol diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 6c8ee3fa..192f9b76 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -9,6 +9,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; import {IERC1155Receiver} from "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; +import {IContractPaybackDistributor} from "contracts/interfaces/IContractPaybackDistributor.sol"; /** * @title ContractPaybackDistributor @@ -32,7 +33,7 @@ import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; * * note: For contract account that have migrated to Arbitrum, no action is needed as their assets will be minted to them directly. */ -contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receiver { +contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receiver, IContractPaybackDistributor { using SafeERC20 for IERC20; // Repayment field id diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index 6f9e75a8..01b58a71 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -2,10 +2,7 @@ pragma solidity ^0.8.20; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; - -interface IContractPaybackDistributor { - function claimFromL1Message(address caller, address receiver) external; -} +import {IContractPaybackDistributor} from "contracts/interfaces/IContractPaybackDistributor.sol"; /** * @title L1ContractMessenger diff --git a/contracts/interfaces/IContractPaybackDistributor.sol b/contracts/interfaces/IContractPaybackDistributor.sol new file mode 100644 index 00000000..80053519 --- /dev/null +++ b/contracts/interfaces/IContractPaybackDistributor.sol @@ -0,0 +1,8 @@ +// SPDX-License-Identifier: MIT + +pragma solidity ^0.8.20; + +interface IContractPaybackDistributor { + function claimDirect(address receiver) external; + function claimFromL1Message(address caller, address receiver) external; +} \ No newline at end of file diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 9e883661..f972e0b0 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -421,16 +421,16 @@ contract ContractDistributionTest is TestHelper { plotIds1[0] = 0; // 0 --> 101e6 place in line uint256[] memory plotStarts1 = new uint256[](1); plotStarts1[0] = 0; // start from the beginning of the plot - uint256[] memory plotEnds1 = new uint256[](1); - plotEnds1[0] = 101e6; // end at the end of the plot + uint256[] memory plotAmounts1 = new uint256[](1); + plotAmounts1[0] = 101e6; // end at the end of the plot // Plot data for contractAccount2 (plot 1) uint256[] memory plotIds2 = new uint256[](1); plotIds2[0] = 101e6; // 101e6 --> 202e6 place in line uint256[] memory plotStarts2 = new uint256[](1); plotStarts2[0] = 0; // start from the beginning of the plot - uint256[] memory plotEnds2 = new uint256[](1); - plotEnds2[0] = 101e6; // end at the end of the plot + uint256[] memory plotAmounts2 = new uint256[](1); + plotAmounts2[0] = 101e6; // end at the end of the plot // contractAccount1 accountData[0] = ContractPaybackDistributor.AccountData({ whitelisted: true, @@ -439,7 +439,7 @@ contract ContractDistributionTest is TestHelper { fertilizerIds: fertilizerIds, fertilizerAmounts: fertilizerAmounts1, plotIds: plotIds1, - plotEnds: plotEnds1 + plotAmounts: plotAmounts1 }); // contractAccount2 accountData[1] = ContractPaybackDistributor.AccountData({ @@ -449,7 +449,7 @@ contract ContractDistributionTest is TestHelper { fertilizerIds: fertilizerIds, fertilizerAmounts: fertilizerAmounts2, plotIds: plotIds2, - plotEnds: plotEnds2 + plotAmounts: plotAmounts2 }); return accountData; } From ac5ce305c7658e3f996fc7619cf772c16150c66d Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 12 Sep 2025 14:43:57 +0000 Subject: [PATCH 128/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../contractDistribution/ContractPaybackDistributor.sol | 7 ++++++- contracts/interfaces/IContractPaybackDistributor.sol | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index e4c532cf..908ef282 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -33,7 +33,12 @@ import {IContractPaybackDistributor} from "contracts/interfaces/IContractPayback * * note: For contract account that have migrated to Arbitrum, no action is needed as their assets will be minted to them directly. */ -contract ContractPaybackDistributor is ReentrancyGuard, Ownable, IERC1155Receiver, IContractPaybackDistributor { +contract ContractPaybackDistributor is + ReentrancyGuard, + Ownable, + IERC1155Receiver, + IContractPaybackDistributor +{ using SafeERC20 for IERC20; // Repayment field id diff --git a/contracts/interfaces/IContractPaybackDistributor.sol b/contracts/interfaces/IContractPaybackDistributor.sol index 80053519..d9fbb145 100644 --- a/contracts/interfaces/IContractPaybackDistributor.sol +++ b/contracts/interfaces/IContractPaybackDistributor.sol @@ -5,4 +5,4 @@ pragma solidity ^0.8.20; interface IContractPaybackDistributor { function claimDirect(address receiver) external; function claimFromL1Message(address caller, address receiver) external; -} \ No newline at end of file +} From f87ac7ccc04700463e704a4578e91ede6985200e Mon Sep 17 00:00:00 2001 From: default-juice Date: Fri, 12 Sep 2025 17:50:30 +0300 Subject: [PATCH 129/270] add additional natspec in SiloPayback --- contracts/ecosystem/beanstalkShipments/SiloPayback.sol | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 4f48706b..8565fa35 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -9,6 +9,13 @@ import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/Own import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; +/** + * @title SiloPayback + * @notice SiloPayback is an ERC20 representation of Unripe BDV in Beanstalk calculated as if Beanstalk was fully recapitalized. + * It facilitates the payback of unripe holders by allowing them to claim pinto rewards after the 1 billion supply threshold. + * Tokens are initially distributed and yield gets continuously accrued every time new Pinto supply is minted, + * until all unripe tokens are worth exactly 1 Pinto underlying. + */ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, TractorEnabled { /// @dev precision used for reward calculations uint256 public constant PRECISION = 1e18; From c57ff44bb5934a39ad50da6b80e820d504efca97 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 12 Sep 2025 14:52:50 +0000 Subject: [PATCH 130/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/beanstalkShipments/SiloPayback.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 8565fa35..7a29c30f 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -13,7 +13,7 @@ import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; * @title SiloPayback * @notice SiloPayback is an ERC20 representation of Unripe BDV in Beanstalk calculated as if Beanstalk was fully recapitalized. * It facilitates the payback of unripe holders by allowing them to claim pinto rewards after the 1 billion supply threshold. - * Tokens are initially distributed and yield gets continuously accrued every time new Pinto supply is minted, + * Tokens are initially distributed and yield gets continuously accrued every time new Pinto supply is minted, * until all unripe tokens are worth exactly 1 Pinto underlying. */ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, TractorEnabled { From 09dd4e8ad4de52d05a362a4b7c844461e45228f6 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 16 Sep 2025 13:03:00 +0300 Subject: [PATCH 131/270] capitalize comment --- contracts/ecosystem/ShipmentPlanner.sol | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index 361ab5ac..53a2ad13 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -127,9 +127,9 @@ contract ShipmentPlanner { // Add strict % limits. // Order of payback based on size of debt is: - // 1. barn: fert will be paid off first - // 2. silo: silo will be paid off second - // 3. field: field will be paid off last + // 1. Barn: fert will be paid off first + // 2. Silo: silo will be paid off second + // 3. Field: field will be paid off last uint256 points; uint256 cap = beanstalk.totalUnharvestable(fieldId); // silo is second thing to be paid off so if remaining is 0 then all points go to field From e5c14b70b9b8ea79cad5deeb8db8dcc589630fb5 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 16 Sep 2025 13:21:48 +0300 Subject: [PATCH 132/270] optimize cap calculations in planner --- contracts/ecosystem/ShipmentPlanner.sol | 28 +++++++++++++++---------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index 53a2ad13..d31bbd87 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -131,25 +131,27 @@ contract ShipmentPlanner { // 2. Silo: silo will be paid off second // 3. Field: field will be paid off last uint256 points; - uint256 cap = beanstalk.totalUnharvestable(fieldId); + uint256 maxCap; // silo is second thing to be paid off so if remaining is 0 then all points go to field if (siloRemaining == 0) { points = PAYBACK_FIELD_POINTS + PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS; - cap = min(cap, (beanstalk.time().standardMintedBeans * 3) / 100); // 3% + maxCap = (beanstalk.time().standardMintedBeans * 3) / 100; // 3% } else if (barnRemaining == 0) { // if barn remaining is 0 then 1.5% of all mints goes to silo and 1.5% goes to the field points = PAYBACK_FIELD_POINTS + ((PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS) * 1) / 4; - cap = min(cap, (beanstalk.time().standardMintedBeans * 15) / 1000); // 1.5% + maxCap = (beanstalk.time().standardMintedBeans * 15) / 1000; // 1.5% } else { // else, all are active and 1% of all mints goes to field, 1% goes to silo, 1% goes to fert points = PAYBACK_FIELD_POINTS; - cap = min(cap, (beanstalk.time().standardMintedBeans * 1) / 100); // 1% + maxCap = (beanstalk.time().standardMintedBeans * 1) / 100; // 1% } + // the absolute cap of all mints is the remaining field debt + uint256 cap = min(beanstalk.totalUnharvestable(fieldId), maxCap); // Scale points by distance to threshold. points = (points * paybackRatio) / PRECISION; - return ShipmentPlan({points: points, cap: beanstalk.totalUnharvestable(fieldId)}); + return ShipmentPlan({points: points, cap: cap}); } /** @@ -184,18 +186,20 @@ contract ShipmentPlanner { if (siloRemaining == 0) return ShipmentPlan({points: 0, cap: siloRemaining}); uint256 points; - uint256 cap = siloRemaining; + uint256 maxCap; // if silo is not paid off and fert is paid off then we need to increase the // the points that should go to the silo to 1,5% (finalAllocation = 1,5% to silo, 1,5% to field) if (barnRemaining == 0) { // half of the paid off fert points go to silo points = PAYBACK_SILO_POINTS + (PAYBACK_BARN_POINTS / 2); // 1.5% - cap = min(cap, (beanstalk.time().standardMintedBeans * 15) / 1000); // 1.5% + maxCap = (beanstalk.time().standardMintedBeans * 15) / 1000; // 1.5% } else { // if silo is not paid off and fert is not paid off then just assign the regular 1% points points = PAYBACK_SILO_POINTS; - cap = min(cap, (beanstalk.time().standardMintedBeans * 1) / 100); // 1% + maxCap = (beanstalk.time().standardMintedBeans * 1) / 100; // 1% } + // the absolute cap of all mints is the remaining silo debt + uint256 cap = min(siloRemaining, maxCap); // Scale the points by the payback ratio points = (points * paybackRatio) / PRECISION; @@ -234,18 +238,20 @@ contract ShipmentPlanner { if (barnRemaining == 0) return ShipmentPlan({points: 0, cap: barnRemaining}); uint256 points; - uint256 cap = barnRemaining; + uint256 maxCap; // if fert is not paid off and silo is paid off then we need to increase the // the points that should go to the fert to 1,5% (finalAllocation = 1,5% to barn, 1,5% to field) if (siloRemaining == 0) { // half of the paid off silo points go to fert points = PAYBACK_BARN_POINTS + (PAYBACK_SILO_POINTS / 2); // 1.5% - cap = min(cap, (beanstalk.time().standardMintedBeans * 15) / 100); // 1.5% + maxCap = (beanstalk.time().standardMintedBeans * 15) / 100; // 1.5% } else { // if fert is not paid off and silo is not paid off then just assign the regular 1% points points = PAYBACK_BARN_POINTS; - cap = min(cap, (beanstalk.time().standardMintedBeans * 1) / 100); // 1% + maxCap = (beanstalk.time().standardMintedBeans * 1) / 100; // 1% } + // the absolute cap of all mints is the remaining barn debt + uint256 cap = min(barnRemaining, maxCap); // Scale the points by the payback ratio points = (points * paybackRatio) / PRECISION; From f03d509242a9f4a1b954b79c98809ca032bc5d26 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 16 Sep 2025 13:24:53 +0300 Subject: [PATCH 133/270] remove redundant multiplication --- contracts/ecosystem/ShipmentPlanner.sol | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index d31bbd87..b16fb59c 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -138,12 +138,12 @@ contract ShipmentPlanner { maxCap = (beanstalk.time().standardMintedBeans * 3) / 100; // 3% } else if (barnRemaining == 0) { // if barn remaining is 0 then 1.5% of all mints goes to silo and 1.5% goes to the field - points = PAYBACK_FIELD_POINTS + ((PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS) * 1) / 4; + points = PAYBACK_FIELD_POINTS + (PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS) / 4; maxCap = (beanstalk.time().standardMintedBeans * 15) / 1000; // 1.5% } else { // else, all are active and 1% of all mints goes to field, 1% goes to silo, 1% goes to fert points = PAYBACK_FIELD_POINTS; - maxCap = (beanstalk.time().standardMintedBeans * 1) / 100; // 1% + maxCap = beanstalk.time().standardMintedBeans / 100; // 1% } // the absolute cap of all mints is the remaining field debt uint256 cap = min(beanstalk.totalUnharvestable(fieldId), maxCap); @@ -196,7 +196,7 @@ contract ShipmentPlanner { } else { // if silo is not paid off and fert is not paid off then just assign the regular 1% points points = PAYBACK_SILO_POINTS; - maxCap = (beanstalk.time().standardMintedBeans * 1) / 100; // 1% + maxCap = beanstalk.time().standardMintedBeans / 100; // 1% } // the absolute cap of all mints is the remaining silo debt uint256 cap = min(siloRemaining, maxCap); @@ -248,7 +248,7 @@ contract ShipmentPlanner { } else { // if fert is not paid off and silo is not paid off then just assign the regular 1% points points = PAYBACK_BARN_POINTS; - maxCap = (beanstalk.time().standardMintedBeans * 1) / 100; // 1% + maxCap = beanstalk.time().standardMintedBeans / 100; // 1% } // the absolute cap of all mints is the remaining barn debt uint256 cap = min(barnRemaining, maxCap); From 0eb902c41c477d5ae750b55794c26e22436b81bf Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 16 Sep 2025 13:59:44 +0300 Subject: [PATCH 134/270] clean up planner --- contracts/ecosystem/ShipmentPlanner.sol | 110 ++++++------------ .../data/updatedShipmentRoutes.json | 2 +- .../BeanstalkShipmentsState.t.sol | 2 +- 3 files changed, 38 insertions(+), 76 deletions(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index b16fb59c..ed496766 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -47,8 +47,8 @@ contract ShipmentPlanner { uint256 constant SUPPLY_BUDGET_FLIP = 1_000_000_000e6; - IBeanstalk beanstalk; - IERC20 bean; + IBeanstalk immutable beanstalk; + IERC20 immutable bean; constructor(address beanstalkAddress, address beanAddress) { beanstalk = IBeanstalk(beanstalkAddress); @@ -97,33 +97,17 @@ contract ShipmentPlanner { /** * @notice Get the current points and cap for the Field portion of payback shipments. - * @dev data param is unused data to configure plan details. + * @dev data here in addition to the payback coontracts, contains the payback field id endoded as the third parameter. */ function getPaybackFieldPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { - uint256 paybackRatio = PRECISION - budgetMintRatio(); - require( - paybackRatio > 0, - "ShipmentPlanner: Supply above flipping point, no payback allocation" - ); + uint256 paybackRatio = calcAndEnforceActivePayback(); + // since payback is active, fetch the remaining payback amounts + (uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining(data); - (uint256 fieldId, address siloPaybackContract, address barnPaybackContract) = abi.decode( - data, - (uint256, address, address) - ); - (bool success, uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining( - siloPaybackContract, - barnPaybackContract - ); - // If the contracts do not exist yet, return the default points and cap. - if (!success) { - return - ShipmentPlan({ - points: PAYBACK_FIELD_POINTS, - cap: beanstalk.totalUnharvestable(fieldId) - }); - } + // get field id from data (third encoded parameter) + (, ,uint256 fieldId) = abi.decode(data, (address, address, uint256)); // Add strict % limits. // Order of payback based on size of debt is: @@ -162,25 +146,10 @@ contract ShipmentPlanner { function getPaybackSiloPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { - // get the payback ratio to scale the points if needed - uint256 paybackRatio = PRECISION - budgetMintRatio(); - require( - paybackRatio > 0, - "ShipmentPlanner: Supply above flipping point, no payback allocation" - ); - // perform a static call to the silo payback contract to get the remaining silo debt - (address siloPaybackContract, address barnPaybackContract) = abi.decode( - data, - (address, address) - ); - (bool success, uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining( - siloPaybackContract, - barnPaybackContract - ); - // If the contracts do not exist yet, return the default points and cap. - if (!success) { - return ShipmentPlan({points: PAYBACK_SILO_POINTS, cap: type(uint256).max}); - } + // calculate the payback ratio and enforce that payback is active + uint256 paybackRatio = calcAndEnforceActivePayback(); + // since payback is active, fetch the remaining paybacks + (uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining(data); // if silo is paid off, no need to send pinto to it. if (siloRemaining == 0) return ShipmentPlan({points: 0, cap: siloRemaining}); @@ -214,25 +183,10 @@ contract ShipmentPlanner { function getPaybackBarnPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { - // get the payback ratio to scale the points if needed - uint256 paybackRatio = PRECISION - budgetMintRatio(); - require( - paybackRatio > 0, - "ShipmentPlanner: Supply above flipping point, no payback allocation" - ); - - // perform a static call to the fert payback contract to get the remaining fert debt - (address siloPaybackContract, address barnPaybackContract) = abi.decode( - data, - (address, address) - ); - (bool success, uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining( - siloPaybackContract, - barnPaybackContract - ); - if (!success) { - return ShipmentPlan({points: PAYBACK_SILO_POINTS, cap: type(uint256).max}); - } + // calculate the payback ratio and enforce that payback is active + uint256 paybackRatio = calcAndEnforceActivePayback(); + // since payback is active, fetch the remaining payback amounts + (uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining(data); // if fert is paid off, no need to send pintos to it. if (barnRemaining == 0) return ShipmentPlan({points: 0, cap: barnRemaining}); @@ -282,24 +236,32 @@ contract ShipmentPlanner { /** * @notice Returns the remaining pinto to be paid off for the silo and barn payback contracts. - * @return totalSuccess True if both calls were successful, false otherwise. + * @dev When encoding shipment routes for payback contracts, care must be taken to ensure + * the silo and barn payback contract addresses are encoded first in `data` in the correct order. * @return siloRemaining The remaining pinto to be paid off for the silo payback contract. * @return barnRemaining The remaining pinto to be paid off for the barn payback contract. */ function paybacksRemaining( - address siloPaybackContract, - address barnPaybackContract - ) private view returns (bool totalSuccess, uint256 siloRemaining, uint256 barnRemaining) { - (bool success, bytes memory returnData) = siloPaybackContract.staticcall( - abi.encodeWithSelector(ISiloPayback.siloRemaining.selector) + bytes memory data + ) private view returns (uint256 siloRemaining, uint256 barnRemaining) { + (address siloPaybackContract, address barnPaybackContract) = abi.decode( + data, + (address, address) ); - totalSuccess = success; - siloRemaining = success ? abi.decode(returnData, (uint256)) : 0; - (success, returnData) = barnPaybackContract.staticcall( - abi.encodeWithSelector(IBarnPayback.barnRemaining.selector) + siloRemaining = ISiloPayback(siloPaybackContract).siloRemaining(); + barnRemaining = IBarnPayback(barnPaybackContract).barnRemaining(); + } + + /** + * @notice Calculates the payback ratio and enforces that payback is active, above the specified supply threshold. + * @return paybackRatio The ratio to allocate new mints to beanstalk payback. + */ + function calcAndEnforceActivePayback() private view returns (uint256 paybackRatio) { + paybackRatio = PRECISION - budgetMintRatio(); + require( + paybackRatio > 0, + "ShipmentPlanner: Supply above flipping point, no payback allocation" ); - totalSuccess = totalSuccess && success; - barnRemaining = success ? abi.decode(returnData, (uint256)) : 0; } function min(uint256 a, uint256 b) private pure returns (uint256) { diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index 0e089029..a223dbfe 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -21,7 +21,7 @@ "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0x6fc9267a", "recipient": "0x2", - "data": "0x00000000000000000000000000000000000000000000000000000000000000010000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" + "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b0000000000000000000000000000000000000000000000000000000000000001" }, { "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index e2041943..a3c88f87 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -145,7 +145,7 @@ contract BeanstalkShipmentsStateTest is TestHelper { ); assertEq( routes[3].data, - abi.encode(PAYBACK_FIELD_ID, SILO_PAYBACK, BARN_PAYBACK), + abi.encode(SILO_PAYBACK, BARN_PAYBACK, PAYBACK_FIELD_ID), "Payback field data mismatch" ); // payback silo (0x05) From e9238e796f1ea7ed10222ef63b8efb8238ef9547 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 16 Sep 2025 11:02:24 +0000 Subject: [PATCH 135/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/ShipmentPlanner.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index ed496766..76948ff8 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -107,7 +107,7 @@ contract ShipmentPlanner { (uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining(data); // get field id from data (third encoded parameter) - (, ,uint256 fieldId) = abi.decode(data, (address, address, uint256)); + (, , uint256 fieldId) = abi.decode(data, (address, address, uint256)); // Add strict % limits. // Order of payback based on size of debt is: From df6686476f3157127caf0e140bcab7c7f076c3d4 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 16 Sep 2025 14:09:49 +0300 Subject: [PATCH 136/270] remove redundant if statement for silo payback --- contracts/ecosystem/ShipmentPlanner.sol | 28 +++++++++---------------- 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index ed496766..6ea135f6 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -107,7 +107,7 @@ contract ShipmentPlanner { (uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining(data); // get field id from data (third encoded parameter) - (, ,uint256 fieldId) = abi.decode(data, (address, address, uint256)); + (, , uint256 fieldId) = abi.decode(data, (address, address, uint256)); // Add strict % limits. // Order of payback based on size of debt is: @@ -185,27 +185,19 @@ contract ShipmentPlanner { ) external view returns (ShipmentPlan memory shipmentPlan) { // calculate the payback ratio and enforce that payback is active uint256 paybackRatio = calcAndEnforceActivePayback(); - // since payback is active, fetch the remaining payback amounts - (uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining(data); - - // if fert is paid off, no need to send pintos to it. - if (barnRemaining == 0) return ShipmentPlan({points: 0, cap: barnRemaining}); + // since payback is active, fetch the remaining barn debt + (, uint256 barnRemaining) = paybacksRemaining(data); uint256 points; - uint256 maxCap; - // if fert is not paid off and silo is paid off then we need to increase the - // the points that should go to the fert to 1,5% (finalAllocation = 1,5% to barn, 1,5% to field) - if (siloRemaining == 0) { - // half of the paid off silo points go to fert - points = PAYBACK_BARN_POINTS + (PAYBACK_SILO_POINTS / 2); // 1.5% - maxCap = (beanstalk.time().standardMintedBeans * 15) / 100; // 1.5% + uint256 cap; + if (barnRemaining == 0) { + // if fert is paid off, no need to send pintos to it. + return ShipmentPlan({points: 0, cap: 0}); // 0% to barn } else { - // if fert is not paid off and silo is not paid off then just assign the regular 1% points - points = PAYBACK_BARN_POINTS; - maxCap = beanstalk.time().standardMintedBeans / 100; // 1% + points = PAYBACK_BARN_POINTS; // 1% to barn, 2% to the rest + // the absolute cap of all mints is the remaining barn debt + cap = min(barnRemaining, beanstalk.time().standardMintedBeans / 100); } - // the absolute cap of all mints is the remaining barn debt - uint256 cap = min(barnRemaining, maxCap); // Scale the points by the payback ratio points = (points * paybackRatio) / PRECISION; From 39eede4140ee299644ff2a3dc18b75df64a66cfd Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 16 Sep 2025 14:19:42 +0300 Subject: [PATCH 137/270] inherit interface from planner --- contracts/ecosystem/ShipmentPlanner.sol | 3 ++- contracts/interfaces/IShipmentPlanner.sol | 6 +----- test/foundry/utils/ShipmentDeployer.sol | 3 ++- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index 6ea135f6..3657e4e6 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -7,6 +7,7 @@ import {Season} from "contracts/beanstalk/storage/System.sol"; import {IBudget} from "contracts/interfaces/IBudget.sol"; import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; +import {IShipmentPlanner} from "contracts/interfaces/IShipmentPlanner.sol"; /** * @notice Constraints of how many Beans to send to a given route at the current time. @@ -35,7 +36,7 @@ interface IBeanstalk { * a new instance and updating the ShipmentRoute planContract addresses help in AppStorage. * @dev Called via staticcall. New plan getters must be view/pure functions. */ -contract ShipmentPlanner { +contract ShipmentPlanner is IShipmentPlanner { uint256 internal constant PRECISION = 1e18; uint256 constant FIELD_POINTS = 48_500_000_000_000_000; // 48.5% diff --git a/contracts/interfaces/IShipmentPlanner.sol b/contracts/interfaces/IShipmentPlanner.sol index acefa407..ad81db66 100644 --- a/contracts/interfaces/IShipmentPlanner.sol +++ b/contracts/interfaces/IShipmentPlanner.sol @@ -9,16 +9,12 @@ interface IShipmentPlanner { bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan); - function getSiloPlan(bytes memory) external pure returns (ShipmentPlan memory shipmentPlan); + function getSiloPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan); function getBudgetPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan); function getPaybackFieldPlan( bytes memory data - ) external pure returns (ShipmentPlan memory shipmentPlan); - - function getPaybackPlan( - bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan); function getPaybackSiloPlan( diff --git a/test/foundry/utils/ShipmentDeployer.sol b/test/foundry/utils/ShipmentDeployer.sol index f16de961..356d29f0 100644 --- a/test/foundry/utils/ShipmentDeployer.sol +++ b/test/foundry/utils/ShipmentDeployer.sol @@ -16,6 +16,7 @@ import {MockShipmentPlanner} from "contracts/mocks/MockShipmentPlanner.sol"; // Extend the interface to support Fields with different points. interface IMockShipmentPlanner is IShipmentPlanner { function getFieldPlanMulti(bytes memory data) external view returns (ShipmentPlan memory); + function getPaybackPlan(bytes memory data) external view returns (ShipmentPlan memory); } /** @@ -192,7 +193,7 @@ contract ShipmentDeployer is Utils { // Payback. shipmentRoutes[4] = IBeanstalk.ShipmentRoute({ planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getPaybackPlan.selector, + planSelector: IMockShipmentPlanner.getPaybackPlan.selector, recipient: IBeanstalk.ShipmentRecipient.EXTERNAL_BALANCE, data: abi.encode(payback) // sends to payback contract }); From e51eb28cf8a5b802ac5e71ac86758e967eabc5b1 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 16 Sep 2025 14:55:09 +0300 Subject: [PATCH 138/270] pack distribution storage and remove redundant supply check --- .../ecosystem/beanstalkShipments/SiloPayback.sol | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 7a29c30f..a3ca2731 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -28,9 +28,9 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra IERC20 public pinto; /// @dev Tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. - uint256 public totalDistributed; + uint128 public totalDistributed; /// @dev Tracks total received pinto from shipments. - uint256 public totalReceived; + uint128 public totalReceived; // Rewards /// @dev Global accumulator tracking total rewards per token since contract inception (scaled by 1e18) @@ -80,7 +80,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra function batchMint(UnripeBdvTokenData[] memory unripeReceipts) external onlyOwner { for (uint256 i = 0; i < unripeReceipts.length; i++) { _mint(unripeReceipts[i].receipient, unripeReceipts[i].bdv); - totalDistributed += unripeReceipts[i].bdv; + totalDistributed += uint128(unripeReceipts[i].bdv); emit UnripeBdvTokenMinted(unripeReceipts[i].receipient, unripeReceipts[i].bdv); } } @@ -92,12 +92,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra * @param shipmentAmount The amount of Pinto rewards received */ function siloPaybackReceive(uint256 shipmentAmount) external onlyPintoProtocol { - uint256 tokenTotalSupply = totalSupply(); - if (tokenTotalSupply > 0) { - rewardPerTokenStored += (shipmentAmount * PRECISION) / tokenTotalSupply; - totalReceived += shipmentAmount; - } - + rewardPerTokenStored += (shipmentAmount * PRECISION) / totalSupply(); + totalReceived += uint128(shipmentAmount); emit SiloPaybackRewardsReceived(shipmentAmount, rewardPerTokenStored); } From f6ec3aa03e4b5277131b4a52fc9d7f0b5bc45a4c Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 16 Sep 2025 15:12:07 +0300 Subject: [PATCH 139/270] update _updateReward to return account rewards if needed --- .../ecosystem/beanstalkShipments/SiloPayback.sol | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index a3ca2731..f57a7789 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -113,8 +113,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra require(userCombinedBalance > 0, "SiloPayback: token balance must be greater than 0"); // Update the reward state for the account - _updateReward(account); - uint256 rewardsToClaim = rewards[account]; + uint256 rewardsToClaim = _updateReward(account); require(rewardsToClaim > 0, "SiloPayback: no rewards to claim"); rewards[account] = 0; @@ -134,11 +133,12 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra * @notice Updates the reward state for an account before a claim * @param account The account to update the reward state for */ - function _updateReward(address account) internal { - if (account != address(0)) { - rewards[account] = earned(account); - userRewardPerTokenPaid[account] = rewardPerTokenStored; - } + function _updateReward(address account) internal returns (uint256) { + if (account == address(0)) return 0; + uint256 earnedRewards = earned(account); + rewards[account] = earnedRewards; + userRewardPerTokenPaid[account] = rewardPerTokenStored; + return earnedRewards; } /** From f2fd59f9e5557bf13bb3063080632d861d455ba1 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 25 Sep 2025 16:46:26 +0300 Subject: [PATCH 140/270] refactor to use insertPlots and add assertions about pi index --- .../facets/market/abstract/PodTransfer.sol | 10 +--------- contracts/interfaces/IMockFBeanstalk.sol | 6 ++++++ contracts/libraries/LibDibbler.sol | 18 +++++++++++++----- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 8 ++++++++ 4 files changed, 28 insertions(+), 14 deletions(-) diff --git a/contracts/beanstalk/facets/market/abstract/PodTransfer.sol b/contracts/beanstalk/facets/market/abstract/PodTransfer.sol index 77395ac9..f50a4b67 100644 --- a/contracts/beanstalk/facets/market/abstract/PodTransfer.sol +++ b/contracts/beanstalk/facets/market/abstract/PodTransfer.sol @@ -50,19 +50,11 @@ abstract contract PodTransfer is ReentrancyGuard { ) internal { require(from != to, "Field: Cannot transfer Pods to oneself."); require(amount > 0, "Marketplace: amount must be > 0."); - insertPlot(to, fieldId, index + start, amount); + LibDibbler.insertPlot(to, fieldId, index + start, amount); removePlot(from, fieldId, index, start, amount + start); emit PlotTransfer(from, to, fieldId, index + start, amount); } - function insertPlot(address account, uint256 fieldId, uint256 index, uint256 amount) internal { - s.accts[account].fields[fieldId].plots[index] = amount; - s.accts[account].fields[fieldId].plotIndexes.push(index); - s.accts[account].fields[fieldId].piIndex[index] = - s.accts[account].fields[fieldId].plotIndexes.length - - 1; - } - function removePlot( address account, uint256 fieldId, diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index fb5f3587..9a1d3c63 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1120,6 +1120,12 @@ interface IMockFBeanstalk { uint256 fieldId ) external view returns (uint256); + function getPiIndexFromAccount( + address account, + uint256 fieldId, + uint256 index + ) external view returns (uint256); + function getPlotMerkleRoot() external pure returns (bytes32); function getPlotsFromAccount( diff --git a/contracts/libraries/LibDibbler.sol b/contracts/libraries/LibDibbler.sol index f2194fff..0733190a 100644 --- a/contracts/libraries/LibDibbler.sol +++ b/contracts/libraries/LibDibbler.sol @@ -170,11 +170,7 @@ library LibDibbler { uint256 index = s.sys.fields[activeField].pods; - s.accts[account].fields[activeField].plots[index] = pods; - s.accts[account].fields[activeField].plotIndexes.push(index); - s.accts[account].fields[activeField].piIndex[index] = - s.accts[account].fields[activeField].plotIndexes.length - - 1; + insertPlot(account, activeField, index, pods); emit Sow(account, activeField, index, beans, pods); s.sys.fields[activeField].pods += pods; @@ -525,6 +521,18 @@ library LibDibbler { } } + /** + * @notice inserts a plot into an account, adds the index to the plotIndex list and updates the piIndex mapping. + */ + function insertPlot(address account, uint256 fieldId, uint256 index, uint256 amount) internal { + AppStorage storage s = LibAppStorage.diamondStorage(); + s.accts[account].fields[fieldId].plots[index] = amount; + s.accts[account].fields[fieldId].plotIndexes.push(index); + s.accts[account].fields[fieldId].piIndex[index] = + s.accts[account].fields[fieldId].plotIndexes.length - + 1; + } + /** * @notice removes a plot index from an accounts plotIndex list. */ diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index e0f20ec5..518e4b4c 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -497,6 +497,9 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { ); assertEq(plotIndexesAfterCombine.length, 1, "plot indexes length should be 1"); assertEq(plotIndexesAfterCombine[0], 0, "plot index should be 0"); + + // assert piIndex for combined plot is correct + assertEq(bs.getPiIndexFromAccount(state.user, bs.activeField(), 0), 0, "piIndex should be 0"); } function test_mergeAdjacentPlotsMultiple() public { @@ -540,6 +543,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 0, "plot index should be 0" ); + // assert piIndex for first combined plot is correct + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 0), 0, "piIndex should be 0"); // plots for farmer 2 should remain unchanged in the middle of the queue assertEq( @@ -571,6 +576,9 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 5000500000, "final plot index" ); + // assert piIndex for both final plots are correct + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 0), 0, "first piIndex should be 0"); + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 5000500000), 1, "second piIndex should be 1"); // get total pods from account 1 uint256 totalPodsAfter = getTotalPodsFromAccount(farmers[0]); From 6265b9f45cd4c5f85de0e43d94a51ba07cc7f6dc Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 25 Sep 2025 13:49:50 +0000 Subject: [PATCH 141/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 518e4b4c..9c8bd4bc 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -499,7 +499,11 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { assertEq(plotIndexesAfterCombine[0], 0, "plot index should be 0"); // assert piIndex for combined plot is correct - assertEq(bs.getPiIndexFromAccount(state.user, bs.activeField(), 0), 0, "piIndex should be 0"); + assertEq( + bs.getPiIndexFromAccount(state.user, bs.activeField(), 0), + 0, + "piIndex should be 0" + ); } function test_mergeAdjacentPlotsMultiple() public { @@ -577,8 +581,16 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { "final plot index" ); // assert piIndex for both final plots are correct - assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 0), 0, "first piIndex should be 0"); - assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 5000500000), 1, "second piIndex should be 1"); + assertEq( + bs.getPiIndexFromAccount(farmers[0], activeField, 0), + 0, + "first piIndex should be 0" + ); + assertEq( + bs.getPiIndexFromAccount(farmers[0], activeField, 5000500000), + 1, + "second piIndex should be 1" + ); // get total pods from account 1 uint256 totalPodsAfter = getTotalPodsFromAccount(farmers[0]); From dd1f36f936d2129be1e3c07ae4059185d72f55cf Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 25 Sep 2025 18:21:33 +0300 Subject: [PATCH 142/270] add event upon plot combining --- contracts/beanstalk/facets/field/FieldFacet.sol | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 63133569..2582d69d 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -58,6 +58,15 @@ contract FieldFacet is Invariable, ReentrancyGuard { */ event Harvest(address indexed account, uint256 fieldId, uint256[] plots, uint256 beans); + /** + * @notice Emitted when `account` combines multiple plot indexes into a single plot. + * @param account The account that owns the plots + * @param fieldId The field ID where the merging occurred + * @param plotIndexes The indices of the plots that were combined + * @param totalPods The total number of pods in the final combined plot + */ + event PlotCombined(address indexed account, uint256 fieldId, uint256[] plotIndexes, uint256 totalPods); + //////////////////// SOW //////////////////// /** @@ -552,5 +561,6 @@ contract FieldFacet is Invariable, ReentrancyGuard { // update first plot with combined pods s.accts[account].fields[fieldId].plots[plotIndexes[0]] = totalPods; + emit PlotCombined(account, fieldId, plotIndexes, totalPods); } } From 63e8113c27bc0ef5357b666ccff69c543e16de60 Mon Sep 17 00:00:00 2001 From: default-juice Date: Thu, 25 Sep 2025 18:45:55 +0300 Subject: [PATCH 143/270] add different tip amounts for each operation --- .../ecosystem/MowPlantHarvestBlueprint.sol | 153 ++++++++++++------ 1 file changed, 108 insertions(+), 45 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index ae65862f..3ced4ea1 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -24,7 +24,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { */ struct MowPlantHarvestBlueprintStruct { MowPlantHarvestParams mowPlantHarvestParams; - OperatorParams opParams; + OperatorParamsExtended opParams; } /** @@ -54,6 +54,24 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 slippageRatio; } + /** + * @notice Struct to hold operator parameters including tips for mowing, planting and harvesting + * -------------- Base OperatorParams -------------- + * @param whitelistedOperators Array of whitelisted operator addresses + * @param tipAddress Address to send tip to + * @param operatorTipAmount (unused) + * -------------- Extended options -------------- + * @param mowTipAmount Amount of tip to pay to operator for mowing + * @param plantTipAmount Amount of tip to pay to operator for planting + * @param harvestTipAmount Amount of tip to pay to operator for harvesting + */ + struct OperatorParamsExtended { + OperatorParams opParamsBase; + int256 mowTipAmount; + int256 plantTipAmount; + int256 harvestTipAmount; + } + /** * @notice Local variables for the mow, plant and harvest function * @dev Used to avoid stack too deep errors @@ -62,6 +80,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { bytes32 orderHash; address account; address tipAddress; + address beanToken; + uint256 totalBeanTip; uint256 totalClaimableStalk; uint256 totalPlantableBeans; uint256 totalHarvestablePods; @@ -92,7 +112,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Validate vars.orderHash = beanstalk.getCurrentBlueprintHash(); vars.account = beanstalk.tractorUser(); - vars.tipAddress = params.opParams.tipAddress; + vars.tipAddress = params.opParams.opParamsBase.tipAddress; // Cache the current season struct vars.seasonInfo = beanstalk.time(); @@ -113,37 +133,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // if tip address is not set, set it to the operator vars.tipAddress = _resolveTipAddress(vars.tipAddress); - // Withdrawal Plan and Tip - // Check if enough beans are available using getWithdrawalPlan - LibTractorHelpers.WithdrawalPlan memory plan = tractorHelpers - .getWithdrawalPlanExcludingPlan( - vars.account, - params.mowPlantHarvestParams.sourceTokenIndices, - uint256(params.opParams.operatorTipAmount), - params.mowPlantHarvestParams.maxGrownStalkPerBdv, - vars.plan // Passed in plan is empty - ); - - // Execute the withdrawal plan to withdraw the tip amount - tractorHelpers.withdrawBeansFromSources( - vars.account, - params.mowPlantHarvestParams.sourceTokenIndices, - uint256(params.opParams.operatorTipAmount), - params.mowPlantHarvestParams.maxGrownStalkPerBdv, - params.mowPlantHarvestParams.slippageRatio, - LibTransfer.To.INTERNAL, - plan - ); - - // Tip the operator with the withdrawn beans - tractorHelpers.tip( - beanstalk.getBeanToken(), - vars.account, - vars.tipAddress, - params.opParams.operatorTipAmount, - LibTransfer.From.INTERNAL, - LibTransfer.To.INTERNAL - ); + // cache bean token + vars.beanToken = beanstalk.getBeanToken(); // Mow, Plant and Harvest // Check if user should harvest or plant @@ -151,10 +142,16 @@ contract MowPlantHarvestBlueprint is BlueprintBase { if (vars.shouldPlant || vars.shouldHarvest) vars.shouldMow = true; // Execute operations in order: mow first (if needed), then plant, then harvest - if (vars.shouldMow) beanstalk.mowAll(vars.account); + if (vars.shouldMow) { + beanstalk.mowAll(vars.account); + vars.totalBeanTip += uint256(params.opParams.mowTipAmount); + } // Plant if the conditions are met - if (vars.shouldPlant) beanstalk.plant(); + if (vars.shouldPlant) { + beanstalk.plant(); + vars.totalBeanTip += uint256(params.opParams.plantTipAmount); + } // Harvest if the conditions are met if (vars.shouldHarvest) { @@ -163,11 +160,23 @@ contract MowPlantHarvestBlueprint is BlueprintBase { vars.harvestablePlots, LibTransfer.To.INTERNAL ); - // pull from the harvest destination and deposit into silo - beanstalk.deposit(beanstalk.getBeanToken(), harvestedBeans, LibTransfer.From.INTERNAL); + beanstalk.deposit(vars.beanToken, harvestedBeans, LibTransfer.From.INTERNAL); + vars.totalBeanTip += uint256(params.opParams.harvestTipAmount); } + // Enforce the withdrawal plan and tip the total bean amount + _enforceWithdrawalPlanAndTip( + vars.account, + vars.tipAddress, + vars.beanToken, + params.mowPlantHarvestParams.sourceTokenIndices, + vars.totalBeanTip, + params.mowPlantHarvestParams.maxGrownStalkPerBdv, + params.mowPlantHarvestParams.slippageRatio, + vars.plan // passed in plan is empty + ); + // Update the last executed season for this blueprint _updateLastExecutedSeason(vars.orderHash, vars.seasonInfo.current); } @@ -335,21 +344,75 @@ contract MowPlantHarvestBlueprint is BlueprintBase { function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal view { // Shared validations _validateSourceTokens(params.mowPlantHarvestParams.sourceTokenIndices); - _validateOperatorParams(params.opParams); + _validateOperatorParams(params.opParams.opParamsBase); // Blueprint specific validations - // Validate that minPlantAmount and minHarvestAmount result in profit - if (params.opParams.operatorTipAmount >= 0) { + // Validate that minPlantAmount and minHarvestAmount result in profit after their respective tips + if (params.opParams.mowTipAmount >= 0) { require( - params.mowPlantHarvestParams.minPlantAmount > - uint256(params.opParams.operatorTipAmount), - "Min plant amount must be greater than operator tip amount" + params.mowPlantHarvestParams.minPlantAmount > uint256(params.opParams.mowTipAmount), + "Min plant amount must be greater than mow tip amount" ); + } + if (params.opParams.plantTipAmount >= 0) { require( params.mowPlantHarvestParams.minHarvestAmount > - uint256(params.opParams.operatorTipAmount), - "Min harvest amount must be greater than operator tip amount" + uint256(params.opParams.plantTipAmount), + "Min harvest amount must be greater than plant tip amount" ); } } + + /** + * @notice Helper function that creates a withdrawal plan and tips the operator the total bean tip amount + * @param account The account to withdraw for + * @param tipAddress The address to send the tip to + * @param beanToken The cached bean token address + * @param sourceTokenIndices The indices of the source tokens to withdraw from + * @param totalBeanTip The total tip for mowing, planting and harvesting + * @param maxGrownStalkPerBdv The maximum amount of grown stalk allowed to be used for the withdrawal, per bdv + * @param slippageRatio The price slippage ratio for a lp token withdrawal, between the instantaneous price and the current price + * @param plan The withdrawal plan to use, or null to generate one + */ + function _enforceWithdrawalPlanAndTip( + address account, + address tipAddress, + address beanToken, + uint8[] memory sourceTokenIndices, + uint256 totalBeanTip, + uint256 maxGrownStalkPerBdv, + uint256 slippageRatio, + LibTractorHelpers.WithdrawalPlan memory plan + ) internal { + // Check if enough beans are available using getWithdrawalPlan + LibTractorHelpers.WithdrawalPlan memory plan = tractorHelpers + .getWithdrawalPlanExcludingPlan( + account, + sourceTokenIndices, + totalBeanTip, + maxGrownStalkPerBdv, + plan // passed in plan is empty + ); + + // Execute the withdrawal plan to withdraw the tip amount + tractorHelpers.withdrawBeansFromSources( + account, + sourceTokenIndices, + totalBeanTip, + maxGrownStalkPerBdv, + slippageRatio, + LibTransfer.To.INTERNAL, + plan + ); + + // Tip the operator with the withdrawn beans + tractorHelpers.tip( + beanToken, + account, + tipAddress, + int256(totalBeanTip), + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); + } } From a848d1210ea61a714fa4e85c67286c6dca2eda7d Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 25 Sep 2025 15:47:47 +0000 Subject: [PATCH 144/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/beanstalk/facets/field/FieldFacet.sol | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 2582d69d..0116075f 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -65,7 +65,12 @@ contract FieldFacet is Invariable, ReentrancyGuard { * @param plotIndexes The indices of the plots that were combined * @param totalPods The total number of pods in the final combined plot */ - event PlotCombined(address indexed account, uint256 fieldId, uint256[] plotIndexes, uint256 totalPods); + event PlotCombined( + address indexed account, + uint256 fieldId, + uint256[] plotIndexes, + uint256 totalPods + ); //////////////////// SOW //////////////////// From 57d0be02e4c266ab89eacedadc695ba7f47d7874 Mon Sep 17 00:00:00 2001 From: default-juice Date: Sat, 27 Sep 2025 17:55:26 +0300 Subject: [PATCH 145/270] refactor and clean up tests --- .../ecosystem/MowPlantHarvestBlueprint.sol | 20 +- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 678 ++++++------------ test/foundry/field/Field.t.sol | 161 +++++ test/foundry/utils/TestHelper.sol | 48 ++ test/foundry/utils/TractorHelper.sol | 39 +- 5 files changed, 450 insertions(+), 496 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 3ced4ea1..73fbb4d7 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -81,7 +81,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { address account; address tipAddress; address beanToken; - uint256 totalBeanTip; + int256 totalBeanTip; uint256 totalClaimableStalk; uint256 totalPlantableBeans; uint256 totalHarvestablePods; @@ -144,13 +144,13 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Execute operations in order: mow first (if needed), then plant, then harvest if (vars.shouldMow) { beanstalk.mowAll(vars.account); - vars.totalBeanTip += uint256(params.opParams.mowTipAmount); + vars.totalBeanTip += params.opParams.mowTipAmount; } // Plant if the conditions are met if (vars.shouldPlant) { beanstalk.plant(); - vars.totalBeanTip += uint256(params.opParams.plantTipAmount); + vars.totalBeanTip += params.opParams.plantTipAmount; } // Harvest if the conditions are met @@ -162,7 +162,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ); // pull from the harvest destination and deposit into silo beanstalk.deposit(vars.beanToken, harvestedBeans, LibTransfer.From.INTERNAL); - vars.totalBeanTip += uint256(params.opParams.harvestTipAmount); + vars.totalBeanTip += params.opParams.harvestTipAmount; } // Enforce the withdrawal plan and tip the total bean amount @@ -351,14 +351,14 @@ contract MowPlantHarvestBlueprint is BlueprintBase { if (params.opParams.mowTipAmount >= 0) { require( params.mowPlantHarvestParams.minPlantAmount > uint256(params.opParams.mowTipAmount), - "Min plant amount must be greater than mow tip amount" + "Min plant amount must be greater than plant tip amount" ); } if (params.opParams.plantTipAmount >= 0) { require( params.mowPlantHarvestParams.minHarvestAmount > uint256(params.opParams.plantTipAmount), - "Min harvest amount must be greater than plant tip amount" + "Min harvest amount must be greater than harvest tip amount" ); } } @@ -379,7 +379,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { address tipAddress, address beanToken, uint8[] memory sourceTokenIndices, - uint256 totalBeanTip, + int256 totalBeanTip, uint256 maxGrownStalkPerBdv, uint256 slippageRatio, LibTractorHelpers.WithdrawalPlan memory plan @@ -389,7 +389,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { .getWithdrawalPlanExcludingPlan( account, sourceTokenIndices, - totalBeanTip, + uint256(totalBeanTip), maxGrownStalkPerBdv, plan // passed in plan is empty ); @@ -398,7 +398,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { tractorHelpers.withdrawBeansFromSources( account, sourceTokenIndices, - totalBeanTip, + uint256(totalBeanTip), maxGrownStalkPerBdv, slippageRatio, LibTransfer.To.INTERNAL, @@ -410,7 +410,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { beanToken, account, tipAddress, - int256(totalBeanTip), + totalBeanTip, LibTransfer.From.INTERNAL, LibTransfer.To.INTERNAL ); diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 9c8bd4bc..21f84212 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -34,7 +34,9 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { uint256 initialUserBeanBalance; uint256 initialOperatorBeanBalance; uint256 mintAmount; - int256 tipAmount; + int256 mowTipAmount; + int256 plantTipAmount; + int256 harvestTipAmount; } function setUp() public { @@ -89,7 +91,9 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { state.initialUserBeanBalance = IERC20(state.beanToken).balanceOf(state.user); state.initialOperatorBeanBalance = bs.getInternalBalance(state.operator, state.beanToken); state.mintAmount = 110000e6; // 100k for deposit, 10k for sow - state.tipAmount = 10e6; // 10 BEAN + state.mowTipAmount = 10e6; // 10 BEAN + state.plantTipAmount = 10e6; // 10 BEAN + state.harvestTipAmount = 10e6; // 10 BEAN // Mint 2x the amount to ensure we have enough for all test cases mintTokensToUser(state.user, state.beanToken, state.mintAmount); @@ -172,7 +176,9 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { type(uint256).max, // minPlantAmount type(uint256).max, // minHarvestAmount state.operator, // tipAddress - state.tipAmount, // operatorTipAmount + state.mowTipAmount, // mowTipAmount + state.plantTipAmount, // plantTipAmount + state.harvestTipAmount, // harvestTipAmount MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); @@ -198,525 +204,243 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { ); } - function test_mowPlantHarvestBlueprint_plant() public { - // Setup test state - // setupPlant: true, setupHarvest: false, abovePeg: true + function test_mowPlantHarvestBlueprint_plant_revertWhenMinPlantAmountLessThanTip() public { + // Setup test state for planting TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, true); - // get user total stalk before plant - uint256 userTotalStalkBeforePlant = bs.balanceOfStalk(state.user); - // assert user has grown stalk - assertGt(userTotalStalkBeforePlant, 0, "user should have grown stalk to plant"); - // get user total bdv before plant - uint256 userTotalBdvBeforePlant = bs.balanceOfDepositedBdv(state.user, state.beanToken); - // assert user has the initial bdv - assertEq(userTotalBdvBeforePlant, 100000e6, "user should have the initial bdv"); // assert that the user has earned beans assertGt(bs.balanceOfEarnedBeans(state.user), 0, "user should have earned beans to plant"); - // Case 1: minPlantAmount is less than operator tip amount, reverts - { - (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( - state.user, // account - SourceMode.PURE_PINTO, // sourceMode for tip - 1 * STALK_DECIMALS, // minMowAmount (1 stalk) - 10e6, // mintwaDeltaB - 1e6, // minPlantAmount < 10e6 (operator tip amount) - type(uint256).max, // minHarvestAmount - state.operator, // tipAddress - state.tipAmount, // operatorTipAmount - MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv - ); - - // Execute requisition, expect revert - vm.expectRevert("Min plant amount must be greater than operator tip amount"); - executeRequisition(state.operator, req, address(bs)); - } - - // Case 2: plantable beans is less than minPlantAmount, reverts - { - (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( - state.user, // account - SourceMode.PURE_PINTO, // sourceMode for tip - 1 * STALK_DECIMALS, // minMowAmount (1 stalk) - 10e6, // mintwaDeltaB - type(uint256).max, // minPlantAmount > (total plantable beans) - type(uint256).max, // minHarvestAmount - state.operator, // tipAddress - state.tipAmount, // operatorTipAmount - MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv - ); - - // Execute requisition, expect revert - vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); - executeRequisition(state.operator, req, address(bs)); - } - - // Case 3: minPlantAmount is greater than operator tip amount, executes - { - (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( - state.user, // account - SourceMode.PURE_PINTO, // sourceMode for tip - 1 * STALK_DECIMALS, // minMowAmount (1 stalk) - 10e6, // mintwaDeltaB - 11e6, // minPlantAmount > 10e6 (operator tip amount) - type(uint256).max, // minHarvestAmount - state.operator, // tipAddress - state.tipAmount, // operatorTipAmount - MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv - ); - - // Execute requisition, expect plant event - vm.expectEmit(); - emit Plant(state.user, 1933023687); - executeRequisition(state.operator, req, address(bs)); - - // get user total stalk after plant - uint256 userTotalStalkAfterPlant = bs.balanceOfStalk(state.user); - // assert the user total stalk has increased from mowing and planting - assertGt( - userTotalStalkAfterPlant, - userTotalStalkBeforePlant, - "userTotalStalk should have increased" - ); + // Setup blueprint with minPlantAmount less than plant tip amount + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 1e6, // minPlantAmount < 10e6 (plant tip amount) + type(uint256).max, // minHarvestAmount + state.operator, // tipAddress + state.mowTipAmount, // mowTipAmount + state.plantTipAmount, // plantTipAmount + state.harvestTipAmount, // harvestTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); - // get user total bdv after plant - uint256 userTotalBdvAfterPlant = bs.balanceOfDepositedBdv(state.user, state.beanToken); - // assert the user total bdv has increased as a result of the yield - assertGt( - userTotalBdvAfterPlant, - userTotalBdvBeforePlant, - "userTotalBdv should have increased" - ); - } + // Execute requisition, expect revert + vm.expectRevert("Min plant amount must be greater than plant tip amount"); + executeRequisition(state.operator, req, address(bs)); } - function test_mowPlantHarvestBlueprint_harvest() public { - // Setup test state - // setupPlant: false, setupHarvest: true, abovePeg: true - TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true); - - // take snapshot to return on case 3 - uint256 snapshot = vm.snapshot(); + function test_mowPlantHarvestBlueprint_plant_revertWhenInsufficientPlantableBeans() public { + // Setup test state for planting + TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, true); - // advance season to print beans - advanceSeason(); + // assert that the user has earned beans + assertGt(bs.balanceOfEarnedBeans(state.user), 0, "user should have earned beans to plant"); - // get user total bdv before harvest - uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); - // assert user has the initial bdv - assertEq(userTotalBdvBeforeHarvest, 100000e6, "user should have the initial bdv"); - // assert user has harvestable pods - (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) = _userHarvestablePods( - state.user + // Setup blueprint with minPlantAmount greater than total plantable beans + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + type(uint256).max, // minPlantAmount > (total plantable beans) + type(uint256).max, // minHarvestAmount + state.operator, // tipAddress + state.mowTipAmount, // mowTipAmount + state.plantTipAmount, // plantTipAmount + state.harvestTipAmount, // harvestTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); - assertGt(totalHarvestablePods, 0, "user should have harvestable pods to harvest"); - - // Case 1: minHarvestAmount is less than operator tip amount, reverts - { - (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( - state.user, // account - SourceMode.PURE_PINTO, // sourceMode for tip - 1 * STALK_DECIMALS, // minMowAmount (1 stalk) - 10e6, // mintwaDeltaB - 11e6, // minPlantAmount - 1e6, // minHarvestAmount < 10e6 (operator tip amount) - state.operator, // tipAddress - state.tipAmount, // operatorTipAmount - MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv - ); - - // Execute requisition, expect revert - vm.expectRevert("Min harvest amount must be greater than operator tip amount"); - executeRequisition(state.operator, req, address(bs)); - } - // Case 2: partial harvest of 1 plot - { - (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( - state.user, // account - SourceMode.PURE_PINTO, // sourceMode for tip - 1 * STALK_DECIMALS, // minMowAmount (1 stalk) - 10e6, // mintwaDeltaB - 11e6, // minPlantAmount - 11e6, // minHarvestAmount > 10e6 (operator tip amount) - state.operator, // tipAddress - state.tipAmount, // operatorTipAmount - MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv - ); - - // Execute requisition, expect harvest event - vm.expectEmit(); - emit Harvest(state.user, bs.activeField(), harvestablePlots, 488088481); - executeRequisition(state.operator, req, address(bs)); + // Execute requisition, expect revert + vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); + executeRequisition(state.operator, req, address(bs)); + } - // get user total bdv after harvest - uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv( - state.user, - state.beanToken - ); - // assert the user total bdv has increased as a result of the harvest - assertGt( - userTotalBdvAfterHarvest, - userTotalBdvBeforeHarvest, - "userTotalBdv should have increased" - ); + function test_mowPlantHarvestBlueprint_plant_success() public { + // Setup test state for planting + TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, true); - // assert user harvestable pods is 0 - ( - uint256 totalHarvestablePodsAfterHarvest, - uint256[] memory harvestablePlotsAfterHarvest - ) = _userHarvestablePods(state.user); + // get user state before plant + uint256 userTotalStalkBeforePlant = bs.balanceOfStalk(state.user); + uint256 userTotalBdvBeforePlant = bs.balanceOfDepositedBdv(state.user, state.beanToken); - assertEq( - totalHarvestablePodsAfterHarvest, - 0, - "user should have no harvestable pods after harvest" - ); - assertEq( - harvestablePlotsAfterHarvest.length, - 0, - "user should have no harvestable plots after harvest" - ); - } + // assert user has grown stalk and initial bdv + assertGt(userTotalStalkBeforePlant, 0, "user should have grown stalk to plant"); + assertEq(userTotalBdvBeforePlant, 100000e6, "user should have the initial bdv"); + assertGt(bs.balanceOfEarnedBeans(state.user), 0, "user should have earned beans to plant"); - // revert to snapshot to original state - vm.revertTo(snapshot); + // Setup blueprint with valid minPlantAmount + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount > 10e6 (plant tip amount) + type(uint256).max, // minHarvestAmount + state.operator, // tipAddress + state.mowTipAmount, // mowTipAmount + state.plantTipAmount, // plantTipAmount + state.harvestTipAmount, // harvestTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); - // // Case 3: full harvest of 2 plots - { - // add even more liquidity to well to print more beans and clear the podline - addLiquidityToWell(BEAN_ETH_WELL, 10000e6, 20 ether); - addLiquidityToWell(BEAN_WSTETH_WELL, 10000e6, 20 ether); + // Execute requisition, expect plant event + vm.expectEmit(); + emit Plant(state.user, 1933023687); + executeRequisition(state.operator, req, address(bs)); - // advance season to print beans - advanceSeason(); + // Verify state changes after successful plant + uint256 userTotalStalkAfterPlant = bs.balanceOfStalk(state.user); + uint256 userTotalBdvAfterPlant = bs.balanceOfDepositedBdv(state.user, state.beanToken); - // assert user has harvestable pods - (, uint256[] memory harvestablePlots) = _userHarvestablePods(state.user); - assertEq(harvestablePlots.length, 2, "user should have 2 harvestable plots"); + assertGt(userTotalStalkAfterPlant, userTotalStalkBeforePlant, "userTotalStalk increase"); + assertGt(userTotalBdvAfterPlant, userTotalBdvBeforePlant, "userTotalBdv increase"); + } - // get user total bdv before harvest - uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv( - state.user, - state.beanToken - ); + function test_mowPlantHarvestBlueprint_harvest_revertWhenMinHarvestAmountLessThanTip() public { + // Setup test state for harvesting + TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true); - (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( - state.user, // account - SourceMode.PURE_PINTO, // sourceMode for tip - 1 * STALK_DECIMALS, // minMowAmount (1 stalk) - 10e6, // mintwaDeltaB - 11e6, // minPlantAmount - 11e6, // minHarvestAmount > 10e6 (operator tip amount) - state.operator, // tipAddress - state.tipAmount, // operatorTipAmount - MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv - ); + // advance season to print beans + advanceSeason(); - // Execute requisition, expect harvest event - vm.expectEmit(); - emit Harvest(state.user, bs.activeField(), harvestablePlots, 1000100000); - executeRequisition(state.operator, req, address(bs)); + // assert user has harvestable pods + (uint256 totalHarvestablePods, ) = _userHarvestablePods(state.user); + assertGt(totalHarvestablePods, 0, "user should have harvestable pods to harvest"); - // get user total bdv after harvest - uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv( - state.user, - state.beanToken - ); - // assert the user total bdv has decreased as a result of the harvest - assertGt( - userTotalBdvAfterHarvest, - userTotalBdvBeforeHarvest, - "userTotalBdv should have decreased" - ); + // Setup blueprint with minHarvestAmount less than harvest tip amount + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount + 1e6, // minHarvestAmount < 10e6 (harvest tip amount) + state.operator, // tipAddress + state.mowTipAmount, // mowTipAmount + state.plantTipAmount, // plantTipAmount + state.harvestTipAmount, // harvestTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); - // get user plots - IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount( - state.user, - bs.activeField() - ); - // assert the user has no plots left - assertEq(plots.length, 0, "user should have no plots left"); - // assert the user has no harvestable pods - ( - uint256 totalHarvestablePodsAfterHarvest, - uint256[] memory harvestablePlotsAfterHarvest - ) = _userHarvestablePods(state.user); - assertEq( - totalHarvestablePodsAfterHarvest, - 0, - "user should have no harvestable pods after harvest" - ); - assertEq( - harvestablePlotsAfterHarvest.length, - 0, - "user should have no harvestable plots after harvest" - ); - // assert the bdv of the user increased - assertGt( - bs.balanceOfDepositedBdv(state.user, state.beanToken), - userTotalBdvBeforeHarvest, - "userTotalBdv should have increased" - ); - } + // Execute requisition, expect revert + vm.expectRevert("Min harvest amount must be greater than harvest tip amount"); + executeRequisition(state.operator, req, address(bs)); } - function test_mergeAdjacentPlotsSimple() public { - // Setup test state - // setupPlant: false, setupHarvest: false (dont sow default amounts), abovePeg: true - TestState memory state = setupMowPlantHarvestBlueprintTest(false, false, true); + function test_mowPlantHarvestBlueprint_harvest_partialHarvest() public { + // Setup test state for harvesting + TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true); - uint256[] memory plotIndexes = setUpMultipleConsecutiveAccountPlots(state.user, 1000e6, 10); // 10 sows of 100 beans each at 1% temp - IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(state.user, bs.activeField()); - uint256 totalPodsBeforeCombine = 0; - for (uint256 i = 0; i < plots.length; i++) { - totalPodsBeforeCombine += plots[i].pods; - } - assertEq(plots.length, 10, "user should have 10 plots"); - // combine all plots into one - bs.combinePlots(state.user, bs.activeField(), plotIndexes); - - // assert user has 1 plot - plots = bs.getPlotsFromAccount(state.user, bs.activeField()); - assertEq(plots.length, 1, "user should have 1 plot"); - assertEq(plots[0].index, 0, "plot index should be 0"); - assertEq(plots[0].pods, totalPodsBeforeCombine, "plot pods should be 1010e6"); - - // assert plot indexes length is 1 - assertEq( - bs.getPlotIndexesLengthFromAccount(state.user, bs.activeField()), - 1, - "plot indexes length should be 1" - ); + // advance season to print beans + advanceSeason(); - // assert plot indexes is 0 - uint256[] memory plotIndexesAfterCombine = bs.getPlotIndexesFromAccount( - state.user, - bs.activeField() - ); - assertEq(plotIndexesAfterCombine.length, 1, "plot indexes length should be 1"); - assertEq(plotIndexesAfterCombine[0], 0, "plot index should be 0"); - - // assert piIndex for combined plot is correct - assertEq( - bs.getPiIndexFromAccount(state.user, bs.activeField(), 0), - 0, - "piIndex should be 0" + // get user state before harvest + uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); + (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) = _userHarvestablePods( + state.user ); - } - function test_mergeAdjacentPlotsMultiple() public { - // mint beans to farmers - mintTokensToUser(farmers[0], BEAN, 10000000e6); - mintTokensToUser(farmers[1], BEAN, 10000000e6); - vm.prank(farmers[0]); - IERC20(BEAN).approve(address(bs), type(uint256).max); - vm.prank(farmers[1]); - IERC20(BEAN).approve(address(bs), type(uint256).max); - - // setup non-adjacent plots for farmer 1 - uint256[] memory account1PlotIndexes = setUpNonAdjacentPlots( - farmers[0], - farmers[1], - 1000e6, - true - ); - uint256 totalPodsBefore = getTotalPodsFromAccount(farmers[0]); - - // try to combine plots, expect revert since plots are not adjacent - uint256 activeField = bs.activeField(); - vm.expectRevert("Field: Plots to combine not adjacent"); - bs.combinePlots(farmers[0], activeField, account1PlotIndexes); - - // merge adjacent plots in pairs (indexes 1-3) - uint256[] memory adjacentPlotIndexes = new uint256[](3); - adjacentPlotIndexes[0] = account1PlotIndexes[0]; - adjacentPlotIndexes[1] = account1PlotIndexes[1]; - adjacentPlotIndexes[2] = account1PlotIndexes[2]; - bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); - // assert user has 3 plots (1 from the 3 merged, 2 from the original) - assertEq( - bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), - 3, - "user should have 3 plots" - ); - // assert first plot index is 0 after merge - assertEq( - bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], - 0, - "plot index should be 0" - ); - // assert piIndex for first combined plot is correct - assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 0), 0, "piIndex should be 0"); - - // plots for farmer 2 should remain unchanged in the middle of the queue - assertEq( - bs.getPlotIndexesLengthFromAccount(farmers[1], activeField), - 2, - "user should have 2 plots" - ); + // assert initial conditions + assertEq(userTotalBdvBeforeHarvest, 100000e6, "user should have the initial bdv"); + assertGt(totalHarvestablePods, 0, "user should have harvestable pods to harvest"); - // merge adjacent plots in pairs (indexes 5-6) - adjacentPlotIndexes = new uint256[](2); - adjacentPlotIndexes[0] = account1PlotIndexes[3]; - adjacentPlotIndexes[1] = account1PlotIndexes[4]; - bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); - // assert user has 2 plots (1 from the 2 merged, 1 from the 3 original merged) - assertEq( - bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), - 2, - "user should have 2 final plots" - ); - // assert first plot index remains the same after 2nd merge - assertEq( - bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], - 0, - "plot index should be 0" - ); - // final plot should start from the next to last previous plot index - assertEq( - bs.getPlotIndexesFromAccount(farmers[0], activeField)[1], - 5000500000, - "final plot index" - ); - // assert piIndex for both final plots are correct - assertEq( - bs.getPiIndexFromAccount(farmers[0], activeField, 0), - 0, - "first piIndex should be 0" - ); - assertEq( - bs.getPiIndexFromAccount(farmers[0], activeField, 5000500000), - 1, - "second piIndex should be 1" + // Setup blueprint for partial harvest + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount + 11e6, // minHarvestAmount > 10e6 (harvest tip amount) + state.operator, // tipAddress + state.mowTipAmount, // mowTipAmount + state.plantTipAmount, // plantTipAmount + state.harvestTipAmount, // harvestTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); - // get total pods from account 1 - uint256 totalPodsAfter = getTotalPodsFromAccount(farmers[0]); - // assert total pods after merge is the same as before merge - assertEq( - totalPodsAfter, - totalPodsBefore, - "total pods after merge should be the same as before merge" - ); + // Execute requisition, expect harvest event + vm.expectEmit(); + emit Harvest(state.user, bs.activeField(), harvestablePlots, 488088481); + executeRequisition(state.operator, req, address(bs)); + + // Verify state changes after partial harvest + uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); + assertGt(userTotalBdvAfterHarvest, userTotalBdvBeforeHarvest, "userTotalBdv increase"); + + // assert user harvestable pods is 0 after harvest + ( + uint256 totalHarvestablePodsAfterHarvest, + uint256[] memory harvestablePlotsAfterHarvest + ) = _userHarvestablePods(state.user); + assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); + assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); } - /////////////////////////// HELPER FUNCTIONS /////////////////////////// + function test_mowPlantHarvestBlueprint_harvest_fullHarvest() public { + // Setup test state for harvesting + TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true); - /** - * @notice Helper function to get the total harvestable pods and plots for a user - * @param account The address of the user - * @return totalUserHarvestablePods The total amount of harvestable pods for the user - * @return userHarvestablePlots The harvestable plot ids for the user - */ - function _userHarvestablePods( - address account - ) - internal - view - returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) - { - // get field info and plot count directly - uint256 activeField = bs.activeField(); - uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, activeField); - uint256 harvestableIndex = bs.harvestableIndex(activeField); - - if (plotIndexes.length == 0) return (0, new uint256[](0)); - - // initialize array with full length - userHarvestablePlots = new uint256[](plotIndexes.length); - uint256 harvestableCount; - - // single loop to process all plot indexes directly - for (uint256 i = 0; i < plotIndexes.length; i++) { - uint256 startIndex = plotIndexes[i]; - uint256 plotPods = bs.plot(account, activeField, startIndex); - - if (startIndex + plotPods <= harvestableIndex) { - // Fully harvestable - userHarvestablePlots[harvestableCount] = startIndex; - totalUserHarvestablePods += plotPods; - harvestableCount++; - } else if (startIndex < harvestableIndex) { - // Partially harvestable - userHarvestablePlots[harvestableCount] = startIndex; - totalUserHarvestablePods += harvestableIndex - startIndex; - harvestableCount++; - } - } - // resize array to actual harvestable plots count - assembly { - mstore(userHarvestablePlots, harvestableCount) - } - return (totalUserHarvestablePods, userHarvestablePlots); - } + // add even more liquidity to well to print more beans and clear the podline + addLiquidityToWell(BEAN_ETH_WELL, 10000e6, 20 ether); + addLiquidityToWell(BEAN_WSTETH_WELL, 10000e6, 20 ether); - /** - * @dev Creates multiple consecutive plots for an account of size totalSoil/sowCount - */ - function setUpMultipleConsecutiveAccountPlots( - address account, - uint256 totalSoil, - uint256 sowCount - ) internal returns (uint256[] memory plotIndexes) { - // set soil to totalSoil - bs.setSoilE(totalSoil); - // sow totalSoil beans sowCount times of totalSoil/sowCount each - uint256 sowAmount = totalSoil / sowCount; - for (uint256 i = 0; i < sowCount; i++) { - vm.prank(account); - bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); - } - plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); - return plotIndexes; - } + // advance season to print beans + advanceSeason(); - /** - * @dev Creates non-adjacent plots by having account1 sow, then account2 sow in between - * Finally, account1 harvests to disorder the plot indexes array - */ - function setUpNonAdjacentPlots( - address account1, - address account2, - uint256 sowAmount, - bool partiallyHarvest - ) internal returns (uint256[] memory plotIndexes) { - // Account1 sows 3 consecutive plots - bs.setSoilE(sowAmount * 3); - for (uint256 i = 0; i < 3; i++) { - vm.prank(account1); - bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); - } + // get user state before harvest + uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); + (, uint256[] memory harvestablePlots) = _userHarvestablePods(state.user); - // Account2 sows 2 plots to create gaps in account1's sequence - bs.setSoilE(sowAmount * 2); - for (uint256 i = 0; i < 2; i++) { - vm.prank(account2); - bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); - } + // assert user has 2 harvestable plots for full harvest + assertEq(harvestablePlots.length, 2, "user should have 2 harvestable plots"); - // Account1 sows 2 more plots (now non-adjacent to first 3) - bs.setSoilE(sowAmount * 2); - for (uint256 i = 0; i < 2; i++) { - vm.prank(account1); - bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); - } + // Setup blueprint for full harvest + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount + 11e6, // minHarvestAmount > 10e6 (harvest tip amount) + state.operator, // tipAddress + state.mowTipAmount, // mowTipAmount + state.plantTipAmount, // plantTipAmount + state.harvestTipAmount, // harvestTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); - // Get plot indexes - plotIndexes = bs.getPlotIndexesFromAccount(account1, bs.activeField()); + // Execute requisition, expect harvest event + vm.expectEmit(); + emit Harvest(state.user, bs.activeField(), harvestablePlots, 1000100000); + executeRequisition(state.operator, req, address(bs)); - return plotIndexes; - } + // Verify state changes after full harvest + uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); + assertGt( + userTotalBdvAfterHarvest, + userTotalBdvBeforeHarvest, + "userTotalBdv should increase" + ); - function getTotalPodsFromAccount(address account) internal view returns (uint256 totalPods) { - uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); - for (uint256 i = 0; i < plotIndexes.length; i++) { - totalPods += bs.plot(account, bs.activeField(), plotIndexes[i]); - } - return totalPods; + // get user plots and verify all harvested + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(state.user, bs.activeField()); + assertEq(plots.length, 0, "user should have no plots left"); + + // assert the user has no harvestable pods left + ( + uint256 totalHarvestablePodsAfterHarvest, + uint256[] memory harvestablePlotsAfterHarvest + ) = _userHarvestablePods(state.user); + assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); + assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); } + /////////////////////////// HELPER FUNCTIONS /////////////////////////// + /// @dev Advance to the next season and update oracles function advanceSeason() internal { warpToNextSeasonTimestamp(); diff --git a/test/foundry/field/Field.t.sol b/test/foundry/field/Field.t.sol index 166c61a7..63fb072e 100644 --- a/test/foundry/field/Field.t.sol +++ b/test/foundry/field/Field.t.sol @@ -5,6 +5,7 @@ pragma abicoder v2; import {TestHelper, LibTransfer, IMockFBeanstalk} from "test/foundry/utils/TestHelper.sol"; import {MockFieldFacet} from "contracts/mocks/mockFacets/MockFieldFacet.sol"; import {C} from "contracts/C.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; contract FieldTest is TestHelper { // events @@ -654,4 +655,164 @@ contract FieldTest is TestHelper { vm.expectRevert("Field: Insufficient approval."); bs.transferPlots(farmers[0], farmers[1], activeField, indexes, starts, ends); } + + /////////// Merge plots /////////// + + /** + * @notice Tests merging of plots from a farmer with 10 sows of 100 beans each at 1% temp + */ + function test_mergeAdjacentPlotsSimple() public { + uint256 activeField = bs.activeField(); + uint256[] memory plotIndexes = setUpMultipleConsecutiveAccountPlots(farmers[0], 1000e6, 10); + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(farmers[0], bs.activeField()); + uint256 totalPodsBeforeCombine = 0; + for (uint256 i = 0; i < plots.length; i++) { + totalPodsBeforeCombine += plots[i].pods; + } + assertEq(plots.length, 10); + // combine all plots into one + bs.combinePlots(farmers[0], activeField, plotIndexes); + + // assert user has 1 plot + plots = bs.getPlotsFromAccount(farmers[0], activeField); + assertEq(plots.length, 1); + assertEq(plots[0].index, 0); + assertEq(plots[0].pods, totalPodsBeforeCombine); + + // assert plot indexes length is 1 + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 1); + + // assert plot indexes is 0 + uint256[] memory plotIndexesAfterCombine = bs.getPlotIndexesFromAccount( + farmers[0], + activeField + ); + assertEq(plotIndexesAfterCombine.length, 1); + assertEq(plotIndexesAfterCombine[0], 0); + + // assert piIndex for combined plot is correct + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 0), 0); + } + + /** + * @notice Tests merging 2 sets of multiple non-adjacent plots + */ + function test_mergeAdjacentPlotsMultiple() public { + // setup non-adjacent plots for farmer 1 + uint256 sowAmount = 1000e6; + uint256 firstAccountSows = 3; // plots 1-3 for farmer 0 + uint256 lastAccountSows = 2; // plots 5-6 for farmer 0 + uint256 gapSows = 2; // plots 3-5 for farmer 1 + uint256[] memory account1PlotIndexes = setUpNonAdjacentPlots( + farmers[0], + farmers[1], + sowAmount, + firstAccountSows, + lastAccountSows, + gapSows + ); + uint256 totalPodsBefore = getTotalPodsFromAccount(farmers[0]); + + // try to combine plots, expect revert since plots are not adjacent + uint256 activeField = bs.activeField(); + vm.expectRevert("Field: Plots to combine not adjacent"); + bs.combinePlots(farmers[0], activeField, account1PlotIndexes); + + // merge adjacent plots in pairs (indexes 1-3) + uint256[] memory adjacentPlotIndexes = new uint256[](3); + adjacentPlotIndexes[0] = account1PlotIndexes[0]; + adjacentPlotIndexes[1] = account1PlotIndexes[1]; + adjacentPlotIndexes[2] = account1PlotIndexes[2]; + bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); + // assert user has 3 plots (1 from the 3 merged, 2 from the original) + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 3); + // assert first plot index is 0 after merge + assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], 0); + // assert piIndex for first combined plot is correct + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 0), 0); + + // plots for farmer 2 should remain unchanged in the middle of the queue + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[1], activeField), 2); + + // merge adjacent plots in pairs (indexes 5-6) + adjacentPlotIndexes = new uint256[](2); + adjacentPlotIndexes[0] = account1PlotIndexes[3]; + adjacentPlotIndexes[1] = account1PlotIndexes[4]; + bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); + // assert user has 2 plots (1 from the 2 merged, 1 from the 3 original merged) + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 2); + // assert first plot index remains the same after 2nd merge + assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], 0); + // final plot should start from the next to last previous plot index + assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[1], 5000500000); + // assert piIndex for both final plots are correct + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 0), 0); + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, 5000500000), 1); + + // get total pods from account 1 + uint256 totalPodsAfter = getTotalPodsFromAccount(farmers[0]); + // assert total pods after merge is the same as before merge + assertEq(totalPodsAfter, totalPodsBefore); + } + + /** + * @dev Creates multiple consecutive plots for an account of size totalSoil/sowCount + */ + function setUpMultipleConsecutiveAccountPlots( + address account, + uint256 totalSoil, + uint256 sowCount + ) internal returns (uint256[] memory plotIndexes) { + // set soil to totalSoil + bs.setSoilE(totalSoil); + // sow totalSoil beans sowCount times of totalSoil/sowCount each + uint256 sowAmount = totalSoil / sowCount; + for (uint256 i = 0; i < sowCount; i++) { + vm.prank(account); + bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); + } + plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); + return plotIndexes; + } + + /** + * @dev Creates non-adjacent plots by having account1 sow, then account2 sow in between + */ + function setUpNonAdjacentPlots( + address account1, + address account2, + uint256 sowAmount, + uint256 firstAccountSows, + uint256 lastAccountSows, + uint256 gapSows + ) internal returns (uint256[] memory plotIndexes) { + // Account1 sows 3 consecutive plots + setSoilAndSow(account1, firstAccountSows, sowAmount); + // Account2 sows 2 plots to create gaps in account1's sequence + setSoilAndSow(account2, gapSows, sowAmount); + // Account1 sows 2 more plots (now non-adjacent to first 3) + setSoilAndSow(account1, lastAccountSows, sowAmount); + // Get plot indexes + plotIndexes = bs.getPlotIndexesFromAccount(account1, bs.activeField()); + return plotIndexes; + } + + function getTotalPodsFromAccount(address account) internal view returns (uint256 totalPods) { + uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, bs.activeField()); + for (uint256 i = 0; i < plotIndexes.length; i++) { + totalPods += bs.plot(account, bs.activeField(), plotIndexes[i]); + } + return totalPods; + } + + function setSoilAndSow(address account, uint256 iterations, uint256 sowAmount) internal { + mintTokensToUser(account, BEAN, sowAmount * iterations); + vm.prank(account); + IERC20(BEAN).approve(address(bs), type(uint256).max); + bs.setSoilE(sowAmount * iterations); + for (uint256 i = 0; i < iterations; i++) { + vm.prank(account); + bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); + } + } } diff --git a/test/foundry/utils/TestHelper.sol b/test/foundry/utils/TestHelper.sol index 8790a7da..33a6344e 100644 --- a/test/foundry/utils/TestHelper.sol +++ b/test/foundry/utils/TestHelper.sol @@ -802,4 +802,52 @@ contract TestHelper is lwImplementation ); } + + /** + * @notice Helper function to get the total harvestable pods and plots for a user + * @param account The address of the user + * @return totalUserHarvestablePods The total amount of harvestable pods for the user + * @return userHarvestablePlots The harvestable plot ids for the user + */ + function _userHarvestablePods( + address account + ) + internal + view + returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) + { + // get field info and plot count directly + uint256 activeField = bs.activeField(); + uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, activeField); + uint256 harvestableIndex = bs.harvestableIndex(activeField); + + if (plotIndexes.length == 0) return (0, new uint256[](0)); + + // initialize array with full length + userHarvestablePlots = new uint256[](plotIndexes.length); + uint256 harvestableCount; + + // single loop to process all plot indexes directly + for (uint256 i = 0; i < plotIndexes.length; i++) { + uint256 startIndex = plotIndexes[i]; + uint256 plotPods = bs.plot(account, activeField, startIndex); + + if (startIndex + plotPods <= harvestableIndex) { + // Fully harvestable + userHarvestablePlots[harvestableCount] = startIndex; + totalUserHarvestablePods += plotPods; + harvestableCount++; + } else if (startIndex < harvestableIndex) { + // Partially harvestable + userHarvestablePlots[harvestableCount] = startIndex; + totalUserHarvestablePods += harvestableIndex - startIndex; + harvestableCount++; + } + } + // resize array to actual harvestable plots count + assembly { + mstore(userHarvestablePlots, harvestableCount) + } + return (totalUserHarvestablePods, userHarvestablePlots); + } } diff --git a/test/foundry/utils/TractorHelper.sol b/test/foundry/utils/TractorHelper.sol index 67ad1c30..d4d31758 100644 --- a/test/foundry/utils/TractorHelper.sol +++ b/test/foundry/utils/TractorHelper.sol @@ -64,6 +64,14 @@ contract TractorHelper is TestHelper { }); } + function publishAccountRequisition( + address account, + IMockFBeanstalk.Requisition memory req + ) internal { + vm.prank(account); + bs.publishRequisition(req); + } + function executeRequisition( address user, IMockFBeanstalk.Requisition memory req, @@ -196,8 +204,7 @@ contract TractorHelper is TestHelper { ); // Publish the requisition - vm.prank(account); - bs.publishRequisition(req); + publishAccountRequisition(account, req); return (req, params); } @@ -289,7 +296,9 @@ contract TractorHelper is TestHelper { uint256 minPlantAmount, uint256 minHarvestAmount, address tipAddress, - int256 operatorTipAmount, + int256 mowTipAmount, + int256 plantTipAmount, + int256 harvestTipAmount, uint256 maxGrownStalkPerBdv ) internal @@ -306,7 +315,9 @@ contract TractorHelper is TestHelper { minPlantAmount, minHarvestAmount, tipAddress, - operatorTipAmount, + mowTipAmount, + plantTipAmount, + harvestTipAmount, maxGrownStalkPerBdv ); @@ -321,8 +332,7 @@ contract TractorHelper is TestHelper { ); // publish requisition - vm.prank(account); - bs.publishRequisition(req); + publishAccountRequisition(account, req); return (req, params); } @@ -335,7 +345,9 @@ contract TractorHelper is TestHelper { uint256 minPlantAmount, uint256 minHarvestAmount, address tipAddress, - int256 operatorTipAmount, + int256 mowTipAmount, + int256 plantTipAmount, + int256 harvestTipAmount, uint256 maxGrownStalkPerBdv ) internal view returns (MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory) { // Create default whitelisted operators array with msg.sender @@ -373,13 +385,22 @@ contract TractorHelper is TestHelper { BlueprintBase.OperatorParams memory opParams = BlueprintBase.OperatorParams({ whitelistedOperators: whitelistedOps, tipAddress: tipAddress, - operatorTipAmount: operatorTipAmount + operatorTipAmount: 0 // plain operator tip amount is not used in this blueprint }); + // Create OperatorParamsExtended struct + MowPlantHarvestBlueprint.OperatorParamsExtended + memory opParamsExtended = MowPlantHarvestBlueprint.OperatorParamsExtended({ + opParamsBase: opParams, + mowTipAmount: mowTipAmount, + plantTipAmount: plantTipAmount, + harvestTipAmount: harvestTipAmount + }); + return MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct({ mowPlantHarvestParams: mowPlantHarvestParams, - opParams: opParams + opParams: opParamsExtended }); } From 59fa2715a3ceee45904d9b6ea68aa1e0ebdae916 Mon Sep 17 00:00:00 2001 From: default-juice Date: Sat, 27 Sep 2025 18:06:27 +0300 Subject: [PATCH 146/270] further test clean up --- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 101 +++++++++++------- test/foundry/field/Field.t.sol | 1 + 2 files changed, 61 insertions(+), 41 deletions(-) diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 21f84212..3f195239 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -25,6 +25,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { event Harvest(address indexed account, uint256 fieldId, uint256[] plots, uint256 beans); uint256 STALK_DECIMALS = 1e10; + int256 DEFAULT_TIP_AMOUNT = 10e6; // 10 BEAN uint256 constant MAX_GROWN_STALK_PER_BDV = 1000e16; // Stalk is 1e16 struct TestState { @@ -77,11 +78,17 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { advanceSeason(); } - // Break out the setup into a separate function + /** + * @notice Setup the test state for the MowPlantHarvestBlueprint test + * @param setupPlant If true, setup the conditions for planting + * @param setupHarvest If true, setup the conditions for harvesting + * @param abovePeg If true, setup the conditions for above peg + * @return TestState The test state + */ function setupMowPlantHarvestBlueprintTest( - bool setupPlant, // if setupPlant, set up conditions for planting - bool setupHarvest, // if setupHarvest, set up conditions for harvesting - bool abovePeg // if above peg, set up conditions for above peg + bool setupPlant, + bool setupHarvest, + bool abovePeg ) internal returns (TestState memory) { // Create test state TestState memory state; @@ -91,58 +98,32 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { state.initialUserBeanBalance = IERC20(state.beanToken).balanceOf(state.user); state.initialOperatorBeanBalance = bs.getInternalBalance(state.operator, state.beanToken); state.mintAmount = 110000e6; // 100k for deposit, 10k for sow - state.mowTipAmount = 10e6; // 10 BEAN - state.plantTipAmount = 10e6; // 10 BEAN - state.harvestTipAmount = 10e6; // 10 BEAN + state.mowTipAmount = DEFAULT_TIP_AMOUNT; // 10 BEAN + state.plantTipAmount = DEFAULT_TIP_AMOUNT; + state.harvestTipAmount = DEFAULT_TIP_AMOUNT; // Mint 2x the amount to ensure we have enough for all test cases mintTokensToUser(state.user, state.beanToken, state.mintAmount); // Mint some to farmer 2 for plot tests mintTokensToUser(farmers[1], state.beanToken, 10000000e6); - vm.prank(state.user); + // Deposit beans for user + vm.startPrank(state.user); IERC20(state.beanToken).approve(address(bs), type(uint256).max); - - vm.prank(state.user); bs.deposit(state.beanToken, state.mintAmount - 10000e6, uint8(LibTransfer.From.EXTERNAL)); + vm.stopPrank(); // For farmer 1, deposit 1000e6 beans, and mint them 1000e6 beans mintTokensToUser(farmers[1], state.beanToken, 1000e6); vm.prank(farmers[1]); bs.deposit(state.beanToken, 1000e6, uint8(LibTransfer.From.EXTERNAL)); - // Add liquidity to manipulate deltaB - addLiquidityToWell( - BEAN_ETH_WELL, - abovePeg ? 10000e6 : 10010e6, // 10,000 Beans if above peg, 10,010 Beans if below peg - abovePeg ? 11 ether : 10 ether // 11 eth if above peg, 10 ether. if below peg - ); - addLiquidityToWell( - BEAN_WSTETH_WELL, - abovePeg ? 10000e6 : 10010e6, // 10,010 Beans if above peg, 10,000 Beans if below peg - abovePeg ? 11 ether : 10 ether // 11 eth if above peg, 10 ether. if below peg - ); + // Set liquidity in the whitelisted wells to manipulate deltaB + setPegConditions(abovePeg); + + if (setupPlant) skipGermination(); - if (setupPlant) { - // advance season 2 times to get rid of germination - advanceSeason(); - advanceSeason(); - } - - if (setupHarvest) { - // set soil to 1000e6 - bs.setSoilE(1000e6); - // sow 1000e6 beans 2 times of 500e6 each - vm.prank(state.user); - bs.sow(500e6, 0, uint8(LibTransfer.From.EXTERNAL)); - vm.prank(state.user); - bs.sow(500e6, 0, uint8(LibTransfer.From.EXTERNAL)); - // print users plots - IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount( - state.user, - bs.activeField() - ); - } + if (setupHarvest) setHarvestConditions(state.user); return state; } @@ -447,4 +428,42 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { bs.sunrise(); updateAllChainlinkOraclesWithPreviousData(); } + + /** + * @notice Set the peg conditions for the whitelisted wells + * @param abovePeg If true, set the conditions for above peg + */ + function setPegConditions(bool abovePeg) internal { + addLiquidityToWell( + BEAN_ETH_WELL, + abovePeg ? 10000e6 : 10010e6, // 10,000 Beans if above peg, 10,010 Beans if below peg + abovePeg ? 11 ether : 10 ether // 11 eth if above peg, 10 ether. if below peg + ); + addLiquidityToWell( + BEAN_WSTETH_WELL, + abovePeg ? 10000e6 : 10010e6, // 10,010 Beans if above peg, 10,000 Beans if below peg + abovePeg ? 11 ether : 10 ether // 11 eth if above peg, 10 ether. if below peg + ); + } + + /** + * @notice Sows beans so that the tractor user can harvest later + */ + function setHarvestConditions(address account) internal { + // set soil to 1000e6 + bs.setSoilE(1000e6); + // sow 1000e6 beans 2 times of 500e6 each + vm.prank(account); + bs.sow(500e6, 0, uint8(LibTransfer.From.EXTERNAL)); + vm.prank(account); + bs.sow(500e6, 0, uint8(LibTransfer.From.EXTERNAL)); + } + + /** + * @notice Skip the germination process by advancing season 2 times + */ + function skipGermination() internal { + advanceSeason(); + advanceSeason(); + } } diff --git a/test/foundry/field/Field.t.sol b/test/foundry/field/Field.t.sol index 63fb072e..5a6f9699 100644 --- a/test/foundry/field/Field.t.sol +++ b/test/foundry/field/Field.t.sol @@ -663,6 +663,7 @@ contract FieldTest is TestHelper { */ function test_mergeAdjacentPlotsSimple() public { uint256 activeField = bs.activeField(); + mintTokensToUser(farmers[0], BEAN, 1000e6); uint256[] memory plotIndexes = setUpMultipleConsecutiveAccountPlots(farmers[0], 1000e6, 10); IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(farmers[0], bs.activeField()); uint256 totalPodsBeforeCombine = 0; From 24ce8bbc4e3869dc97024269b6fdba40c7373aea Mon Sep 17 00:00:00 2001 From: default-juice Date: Sat, 27 Sep 2025 20:09:10 +0300 Subject: [PATCH 147/270] fix typos in min amount validations --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 73fbb4d7..f15209d9 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -348,16 +348,17 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Blueprint specific validations // Validate that minPlantAmount and minHarvestAmount result in profit after their respective tips - if (params.opParams.mowTipAmount >= 0) { + if (params.opParams.plantTipAmount >= 0) { require( - params.mowPlantHarvestParams.minPlantAmount > uint256(params.opParams.mowTipAmount), + params.mowPlantHarvestParams.minPlantAmount > + uint256(params.opParams.plantTipAmount), "Min plant amount must be greater than plant tip amount" ); } - if (params.opParams.plantTipAmount >= 0) { + if (params.opParams.harvestTipAmount >= 0) { require( params.mowPlantHarvestParams.minHarvestAmount > - uint256(params.opParams.plantTipAmount), + uint256(params.opParams.harvestTipAmount), "Min harvest amount must be greater than harvest tip amount" ); } From 2b00b0add54c1ccf58d1a6437d940d0804733135 Mon Sep 17 00:00:00 2001 From: default-juice Date: Sat, 27 Sep 2025 20:40:52 +0300 Subject: [PATCH 148/270] per field-id harvest config --- .../ecosystem/MowPlantHarvestBlueprint.sol | 160 +++++++++++------- 1 file changed, 97 insertions(+), 63 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index f15209d9..cd8d849f 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -27,13 +27,35 @@ contract MowPlantHarvestBlueprint is BlueprintBase { OperatorParamsExtended opParams; } + /** + * @notice Struct to hold field-specific harvest configuration + * @param fieldId The field ID to harvest from + * @param minHarvestAmount The minimum harvestable pods threshold for this field + */ + struct FieldHarvestConfig { + uint256 fieldId; + uint256 minHarvestAmount; + } + + /** + * @notice Struct to hold field-specific harvest parameters + * @param fieldId The field ID to harvest from + * @param totalHarvestAmount The total harvestable pods for this field + * @param harvestablePlots The harvestable plot indexes for the user + */ + struct UserFieldHarvestParams { + uint256 fieldId; + uint256 totalHarvestablePods; + uint256[] harvestablePlots; + } + /** * @notice Struct to hold mow, plant and harvest parameters * @param minMowAmount The minimum total claimable stalk threshold to mow * @param mintwaDeltaB The minimum twaDeltaB to mow if the protocol * is close to starting the next season above the value target * @param minPlantAmount The earned beans threshold to plant - * @param minHarvestAmount The total harvestable pods threshold to harvest + * @param fieldHarvestConfigs Array of field-specific harvest configurations * ----------------------------------------------------------- * @param sourceTokenIndices Indices of source tokens to withdraw from * @param maxGrownStalkPerBdv Maximum grown stalk per BDV allowed @@ -46,8 +68,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 mintwaDeltaB; // Plant uint256 minPlantAmount; - // Harvest - uint256 minHarvestAmount; + // Harvest, per field id + FieldHarvestConfig[] fieldHarvestConfigs; // Withdrawal plan parameters for tipping uint8[] sourceTokenIndices; uint256 maxGrownStalkPerBdv; @@ -84,12 +106,10 @@ contract MowPlantHarvestBlueprint is BlueprintBase { int256 totalBeanTip; uint256 totalClaimableStalk; uint256 totalPlantableBeans; - uint256 totalHarvestablePods; bool shouldMow; bool shouldPlant; - bool shouldHarvest; IBeanstalk.Season seasonInfo; - uint256[] harvestablePlots; + UserFieldHarvestParams[] userFieldHarvestParams; LibTractorHelpers.WithdrawalPlan plan; } @@ -117,12 +137,11 @@ contract MowPlantHarvestBlueprint is BlueprintBase { vars.seasonInfo = beanstalk.time(); // get the user state from the protocol and validate against params - ( - vars.harvestablePlots, - vars.shouldMow, - vars.shouldPlant, - vars.shouldHarvest - ) = _getAndValidateUserState(vars.account, vars.seasonInfo.timestamp, params); + (vars.shouldMow, vars.shouldPlant, vars.userFieldHarvestParams) = _getAndValidateUserState( + vars.account, + vars.seasonInfo.timestamp, + params + ); // validate blueprint _validateBlueprint(vars.orderHash, vars.seasonInfo.current); @@ -139,7 +158,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Mow, Plant and Harvest // Check if user should harvest or plant // In the case a harvest or plant is executed, mow by default - if (vars.shouldPlant || vars.shouldHarvest) vars.shouldMow = true; + if (vars.shouldPlant || vars.userFieldHarvestParams.length > 0) vars.shouldMow = true; // Execute operations in order: mow first (if needed), then plant, then harvest if (vars.shouldMow) { @@ -153,15 +172,24 @@ contract MowPlantHarvestBlueprint is BlueprintBase { vars.totalBeanTip += params.opParams.plantTipAmount; } - // Harvest if the conditions are met - if (vars.shouldHarvest) { - uint256 harvestedBeans = beanstalk.harvest( - beanstalk.activeField(), - vars.harvestablePlots, - LibTransfer.To.INTERNAL - ); - // pull from the harvest destination and deposit into silo - beanstalk.deposit(vars.beanToken, harvestedBeans, LibTransfer.From.INTERNAL); + // Harvest in all configured fields if the conditions are met + if (vars.userFieldHarvestParams.length > 0) { + for (uint256 i = 0; i < vars.userFieldHarvestParams.length; i++) { + // skip harvests that do not meet the minimum harvest amount + if ( + vars.userFieldHarvestParams[i].totalHarvestablePods < + params.mowPlantHarvestParams.fieldHarvestConfigs[i].minHarvestAmount + ) continue; + // harvest the pods to the user's internal balance + uint256 harvestedBeans = beanstalk.harvest( + vars.userFieldHarvestParams[i].fieldId, + vars.userFieldHarvestParams[i].harvestablePlots, + LibTransfer.To.INTERNAL + ); + // deposit the harvested beans into silo + beanstalk.deposit(vars.beanToken, harvestedBeans, LibTransfer.From.INTERNAL); + } + // tip for harvesting includes all specified fields vars.totalBeanTip += params.opParams.harvestTipAmount; } @@ -185,10 +213,10 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @notice Helper function to get the user state and validate against parameters * @param account The address of the user * @param params The parameters for the mow, plant and harvest operation - * @return harvestablePlots The harvestable plot ids for the user, if any * @return shouldMow True if the user should mow * @return shouldPlant True if the user should plant - * @return shouldHarvest True if the user should harvest + * @return userFieldHarvestParams An array of structs containing the total harvestable pods + * and plots for the user for each field id specified in the blueprint config */ function _getAndValidateUserState( address account, @@ -198,19 +226,17 @@ contract MowPlantHarvestBlueprint is BlueprintBase { internal view returns ( - uint256[] memory harvestablePlots, bool shouldMow, bool shouldPlant, - bool shouldHarvest + UserFieldHarvestParams[] memory userFieldHarvestParams ) { // get user state ( uint256 totalClaimableStalk, uint256 totalPlantableBeans, - uint256 totalHarvestablePods, - uint256[] memory harvestablePlots - ) = _getUserState(account); + UserFieldHarvestParams[] memory userFieldHarvestParams + ) = _getUserState(account, params.mowPlantHarvestParams.fieldHarvestConfigs); // validate params - only revert if none of the conditions are met shouldMow = _checkSmartMowConditions( @@ -220,14 +246,13 @@ contract MowPlantHarvestBlueprint is BlueprintBase { previousSeasonTimestamp ); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; - shouldHarvest = totalHarvestablePods >= params.mowPlantHarvestParams.minHarvestAmount; require( - shouldMow || shouldPlant || shouldHarvest, + shouldMow || shouldPlant || userFieldHarvestParams.length > 0, "MowPlantHarvestBlueprint: None of the order conditions are met" ); - return (harvestablePlots, shouldMow, shouldPlant, shouldHarvest); + return (shouldMow, shouldPlant, userFieldHarvestParams); } /** @@ -257,15 +282,15 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * since we mow by default if we plant or harvest */ function _getUserState( - address account + address account, + FieldHarvestConfig[] memory fieldHarvestConfigs ) internal view returns ( uint256 totalClaimableStalk, uint256 totalPlantableBeans, - uint256 totalHarvestablePods, - uint256[] memory harvestablePlots + UserFieldHarvestParams[] memory userFieldHarvestParams ) { address[] memory whitelistedTokens = beanstalk.getWhitelistedTokens(); @@ -282,60 +307,63 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // check if user has plantable beans totalPlantableBeans = beanstalk.balanceOfEarnedBeans(account); - // check if user has harvestable beans - (totalHarvestablePods, harvestablePlots) = _userHarvestablePods(account); + // for every field id, check if user has harvestable beans + // and for each one that meets the minimum harvest amount, add it to the user field harvest params + for (uint256 i = 0; i < fieldHarvestConfigs.length; i++) { + userFieldHarvestParams[i] = _userHarvestablePods( + account, + fieldHarvestConfigs[i].fieldId + ); + } - return (totalClaimableStalk, totalPlantableBeans, totalHarvestablePods, harvestablePlots); + return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestParams); } /** - * @notice Helper function to get the total harvestable pods and plots for a user + * @notice Helper function to get the total harvestable pods and plots for a user for a given field * @param account The address of the user - * @return totalUserHarvestablePods The total amount of harvestable pods for the user - * @return userHarvestablePlots The harvestable plot ids for the user + * @param fieldId The field ID to check for harvestable pods + * @return userFieldHarvestParams A struct containing the total harvestable pods and plots for the given field */ function _userHarvestablePods( - address account - ) - internal - view - returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) - { + address account, + uint256 fieldId + ) internal view returns (UserFieldHarvestParams memory userFieldHarvestParams) { // get field info and plot count directly - uint256 activeField = beanstalk.activeField(); - uint256[] memory plotIndexes = beanstalk.getPlotIndexesFromAccount(account, activeField); - uint256 harvestableIndex = beanstalk.harvestableIndex(activeField); + uint256[] memory plotIndexes = beanstalk.getPlotIndexesFromAccount(account, fieldId); + uint256 harvestableIndex = beanstalk.harvestableIndex(fieldId); - if (plotIndexes.length == 0) return (0, new uint256[](0)); + if (plotIndexes.length == 0) return userFieldHarvestParams; - // initialize array with full length - userHarvestablePlots = new uint256[](plotIndexes.length); + // initialize array with full length and init field id + userFieldHarvestParams.fieldId = fieldId; + uint256[] memory harvestablePlots = new uint256[](plotIndexes.length); uint256 harvestableCount; // single loop to process all plot indexes directly for (uint256 i = 0; i < plotIndexes.length; i++) { uint256 startIndex = plotIndexes[i]; - uint256 plotPods = beanstalk.plot(account, activeField, startIndex); + uint256 plotPods = beanstalk.plot(account, fieldId, startIndex); if (startIndex + plotPods <= harvestableIndex) { // Fully harvestable - userHarvestablePlots[harvestableCount] = startIndex; - totalUserHarvestablePods += plotPods; + harvestablePlots[harvestableCount] = startIndex; + userFieldHarvestParams.totalHarvestablePods += plotPods; harvestableCount++; } else if (startIndex < harvestableIndex) { // Partially harvestable - userHarvestablePlots[harvestableCount] = startIndex; - totalUserHarvestablePods += harvestableIndex - startIndex; + harvestablePlots[harvestableCount] = startIndex; + userFieldHarvestParams.totalHarvestablePods += harvestableIndex - startIndex; harvestableCount++; } } // resize array to actual harvestable plots count assembly { - mstore(userHarvestablePlots, harvestableCount) + mstore(harvestablePlots, harvestableCount) } - - return (totalUserHarvestablePods, userHarvestablePlots); + // assign the harvestable plots to the user field harvest params + userFieldHarvestParams.harvestablePlots = harvestablePlots; } /** @@ -356,9 +384,15 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ); } if (params.opParams.harvestTipAmount >= 0) { + uint256 totalMinHarvestAmount; + for (uint256 i = 0; i < params.mowPlantHarvestParams.fieldHarvestConfigs.length; i++) { + totalMinHarvestAmount += params + .mowPlantHarvestParams + .fieldHarvestConfigs[i] + .minHarvestAmount; + } require( - params.mowPlantHarvestParams.minHarvestAmount > - uint256(params.opParams.harvestTipAmount), + totalMinHarvestAmount > uint256(params.opParams.harvestTipAmount), "Min harvest amount must be greater than harvest tip amount" ); } From 7843312a238ac7ee1aae3d92c07a304a47148e04 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 09:46:09 +0300 Subject: [PATCH 149/270] merge with unordered plotIndexes --- contracts/interfaces/IMockFBeanstalk.sol | 6 ++ contracts/mocks/mockFacets/MockFieldFacet.sol | 7 ++ test/foundry/field/Field.t.sol | 78 +++++++++++++++++++ 3 files changed, 91 insertions(+) diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 9a1d3c63..a53239ca 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1139,6 +1139,12 @@ interface IMockFBeanstalk { uint256[] calldata plotIndexes ) external payable; + function reorderPlotIndexes( + uint256[] memory newPlotIndexes, + uint256 fieldId, + address account + ) external; + function getPodListing(uint256 fieldId, uint256 index) external view returns (bytes32 id); function getPodOrder(bytes32 id) external view returns (uint256); diff --git a/contracts/mocks/mockFacets/MockFieldFacet.sol b/contracts/mocks/mockFacets/MockFieldFacet.sol index d67b86cf..cc4150ab 100644 --- a/contracts/mocks/mockFacets/MockFieldFacet.sol +++ b/contracts/mocks/mockFacets/MockFieldFacet.sol @@ -235,4 +235,11 @@ contract MockFieldFacet is FieldFacet { prevSeasonTemp ); } + + function reorderPlotIndexes(uint256[] memory newPlotIndexes, uint256 fieldId, address account) external { + for (uint256 i = 0; i < newPlotIndexes.length; i++) { + s.accts[account].fields[fieldId].plotIndexes[i] = newPlotIndexes[i]; + s.accts[account].fields[fieldId].piIndex[newPlotIndexes[i]] = i; + } + } } diff --git a/test/foundry/field/Field.t.sol b/test/foundry/field/Field.t.sol index 5a6f9699..caa34887 100644 --- a/test/foundry/field/Field.t.sol +++ b/test/foundry/field/Field.t.sol @@ -756,6 +756,64 @@ contract FieldTest is TestHelper { assertEq(totalPodsAfter, totalPodsBefore); } + /** + * @notice Tests merging of adjacent plots but with unordered plotIndexes in storage + */ + function test_mergeAdjacentPlotsWithUnorderedPlotIndexes() public { + uint256 activeField = bs.activeField(); + mintTokensToUser(farmers[0], BEAN, 1000e6); + uint256[] memory plotIndexes = setUpMultipleConsecutiveAccountPlots(farmers[0], 1000e6, 10); + assertTrue(isArrayOrdered(plotIndexes), "Original plot indexes should be ordered"); + + // Store original plot indexes for verification + uint256[] memory originalPlotIndexes = new uint256[](plotIndexes.length); + for (uint256 i = 0; i < plotIndexes.length; i++) { + originalPlotIndexes[i] = plotIndexes[i]; + } + + // Get total pods before merge + uint256 totalPodsBefore = getTotalPodsFromAccount(farmers[0]); + + // Create reordered array by copying and swapping elements + uint256[] memory newPlotIndexes = new uint256[](plotIndexes.length); + for (uint256 i = 0; i < plotIndexes.length; i++) { + newPlotIndexes[i] = plotIndexes[i]; + } + + // Swap some elements to create unordered array (but still consecutive plots) + swapArrayElementPositions(newPlotIndexes, 1, 5); + swapArrayElementPositions(newPlotIndexes, 3, 7); + swapArrayElementPositions(newPlotIndexes, 0, 9); + + // Reorder the plot indexes in storage to test merge with unordered array + bs.reorderPlotIndexes(newPlotIndexes, activeField, farmers[0]); + + // Verify that plot indexes are now unordered in storage + uint256[] memory reorderedIndexes = bs.getPlotIndexesFromAccount(farmers[0], activeField); + assertTrue(!isArrayOrdered(reorderedIndexes), " New plot indexes should be unordered"); + + // Combine plots using original indexes (irrelevant of plotIndexes order in storage) + bs.combinePlots(farmers[0], activeField, originalPlotIndexes); + + // Verify merge succeeded - should have only 1 plot left + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 1); + assertEq(bs.getPlotIndexesFromAccount(farmers[0], activeField)[0], originalPlotIndexes[0]); + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, originalPlotIndexes[0]), 0); + + // Verify that merged plots have piIndex set to uint256.max (except the first one which should be 0) + assertEq(bs.getPiIndexFromAccount(farmers[0], activeField, originalPlotIndexes[0]), 0); + for (uint256 i = 1; i < originalPlotIndexes.length; i++) { + assertEq( + bs.getPiIndexFromAccount(farmers[0], activeField, originalPlotIndexes[i]), + type(uint256).max + ); + } + + // Verify total pods remained the same + uint256 totalPodsAfter = getTotalPodsFromAccount(farmers[0]); + assertEq(totalPodsAfter, totalPodsBefore); + } + /** * @dev Creates multiple consecutive plots for an account of size totalSoil/sowCount */ @@ -816,4 +874,24 @@ contract FieldTest is TestHelper { bs.sow(sowAmount, 0, uint8(LibTransfer.From.EXTERNAL)); } } + + function swapArrayElementPositions( + uint256[] memory array, + uint256 index1, + uint256 index2 + ) internal pure { + require(index1 < array.length && index2 < array.length, "Field: Index out of bounds"); + uint256 temp = array[index1]; + array[index1] = array[index2]; + array[index2] = temp; + } + + function isArrayOrdered(uint256[] memory array) internal pure returns (bool) { + for (uint256 i = 1; i < array.length; i++) { + if (array[i] < array[i - 1]) { + return false; + } + } + return true; + } } From d41a6486c411b95ed8cf2143856f247f47478f97 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 29 Sep 2025 06:47:50 +0000 Subject: [PATCH 150/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/mocks/mockFacets/MockFieldFacet.sol | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/contracts/mocks/mockFacets/MockFieldFacet.sol b/contracts/mocks/mockFacets/MockFieldFacet.sol index cc4150ab..d505579d 100644 --- a/contracts/mocks/mockFacets/MockFieldFacet.sol +++ b/contracts/mocks/mockFacets/MockFieldFacet.sol @@ -236,7 +236,11 @@ contract MockFieldFacet is FieldFacet { ); } - function reorderPlotIndexes(uint256[] memory newPlotIndexes, uint256 fieldId, address account) external { + function reorderPlotIndexes( + uint256[] memory newPlotIndexes, + uint256 fieldId, + address account + ) external { for (uint256 i = 0; i < newPlotIndexes.length; i++) { s.accts[account].fields[fieldId].plotIndexes[i] = newPlotIndexes[i]; s.accts[account].fields[fieldId].piIndex[newPlotIndexes[i]] = i; From 799904c99f77745ee33d6ce62d7ae800af8fdca8 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 11:19:55 +0300 Subject: [PATCH 151/270] add tests, clean up --- .../ecosystem/MowPlantHarvestBlueprint.sol | 93 +++++++---- contracts/interfaces/IMockFBeanstalk.sol | 2 + contracts/mocks/mockFacets/MockFieldFacet.sol | 4 + .../ecosystem/MowPlantHarvestBlueprint.t.sol | 144 +++++++++++++++--- test/foundry/utils/TestHelper.sol | 5 +- test/foundry/utils/TractorHelper.sol | 79 ++++++++-- 6 files changed, 257 insertions(+), 70 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index cd8d849f..7562941d 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -43,7 +43,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @param totalHarvestAmount The total harvestable pods for this field * @param harvestablePlots The harvestable plot indexes for the user */ - struct UserFieldHarvestParams { + struct UserFieldHarvestResults { uint256 fieldId; uint256 totalHarvestablePods; uint256[] harvestablePlots; @@ -56,6 +56,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * is close to starting the next season above the value target * @param minPlantAmount The earned beans threshold to plant * @param fieldHarvestConfigs Array of field-specific harvest configurations + * note: fieldHarvestConfigs should be sorted by fieldId to save gas * ----------------------------------------------------------- * @param sourceTokenIndices Indices of source tokens to withdraw from * @param maxGrownStalkPerBdv Maximum grown stalk per BDV allowed @@ -108,8 +109,9 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 totalPlantableBeans; bool shouldMow; bool shouldPlant; + bool shouldHarvest; IBeanstalk.Season seasonInfo; - UserFieldHarvestParams[] userFieldHarvestParams; + UserFieldHarvestResults[] userFieldHarvestResults; LibTractorHelpers.WithdrawalPlan plan; } @@ -121,7 +123,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { /** * @notice Main entry point for the mow, plant and harvest blueprint - * @param params The parameters for the mow, plant and harvest operation + * @param params User-controlled parameters for automating mowing, planting and harvesting */ function mowPlantHarvestBlueprint( MowPlantHarvestBlueprintStruct calldata params @@ -137,11 +139,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { vars.seasonInfo = beanstalk.time(); // get the user state from the protocol and validate against params - (vars.shouldMow, vars.shouldPlant, vars.userFieldHarvestParams) = _getAndValidateUserState( - vars.account, - vars.seasonInfo.timestamp, - params - ); + ( + vars.shouldMow, + vars.shouldPlant, + vars.shouldHarvest, + vars.userFieldHarvestResults + ) = _getAndValidateUserState(vars.account, vars.seasonInfo.timestamp, params); // validate blueprint _validateBlueprint(vars.orderHash, vars.seasonInfo.current); @@ -158,7 +161,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Mow, Plant and Harvest // Check if user should harvest or plant // In the case a harvest or plant is executed, mow by default - if (vars.shouldPlant || vars.userFieldHarvestParams.length > 0) vars.shouldMow = true; + if (vars.shouldPlant || vars.shouldHarvest) vars.shouldMow = true; // Execute operations in order: mow first (if needed), then plant, then harvest if (vars.shouldMow) { @@ -173,20 +176,20 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } // Harvest in all configured fields if the conditions are met - if (vars.userFieldHarvestParams.length > 0) { - for (uint256 i = 0; i < vars.userFieldHarvestParams.length; i++) { + if (vars.shouldHarvest) { + for (uint256 i = 0; i < vars.userFieldHarvestResults.length; i++) { // skip harvests that do not meet the minimum harvest amount if ( - vars.userFieldHarvestParams[i].totalHarvestablePods < + vars.userFieldHarvestResults[i].totalHarvestablePods < params.mowPlantHarvestParams.fieldHarvestConfigs[i].minHarvestAmount ) continue; // harvest the pods to the user's internal balance uint256 harvestedBeans = beanstalk.harvest( - vars.userFieldHarvestParams[i].fieldId, - vars.userFieldHarvestParams[i].harvestablePlots, + vars.userFieldHarvestResults[i].fieldId, + vars.userFieldHarvestResults[i].harvestablePlots, LibTransfer.To.INTERNAL ); - // deposit the harvested beans into silo + // deposit the harvested beans into the silo beanstalk.deposit(vars.beanToken, harvestedBeans, LibTransfer.From.INTERNAL); } // tip for harvesting includes all specified fields @@ -215,7 +218,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @param params The parameters for the mow, plant and harvest operation * @return shouldMow True if the user should mow * @return shouldPlant True if the user should plant - * @return userFieldHarvestParams An array of structs containing the total harvestable pods + * @return shouldHarvest True if the user should harvest in at least one field id + * @return userFieldHarvestResults An array of structs containing the total harvestable pods * and plots for the user for each field id specified in the blueprint config */ function _getAndValidateUserState( @@ -228,14 +232,15 @@ contract MowPlantHarvestBlueprint is BlueprintBase { returns ( bool shouldMow, bool shouldPlant, - UserFieldHarvestParams[] memory userFieldHarvestParams + bool shouldHarvest, + UserFieldHarvestResults[] memory userFieldHarvestResults ) { // get user state ( uint256 totalClaimableStalk, uint256 totalPlantableBeans, - UserFieldHarvestParams[] memory userFieldHarvestParams + UserFieldHarvestResults[] memory userFieldHarvestResults ) = _getUserState(account, params.mowPlantHarvestParams.fieldHarvestConfigs); // validate params - only revert if none of the conditions are met @@ -246,13 +251,17 @@ contract MowPlantHarvestBlueprint is BlueprintBase { previousSeasonTimestamp ); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; + shouldHarvest = _checkHarvestConditions( + userFieldHarvestResults, + params.mowPlantHarvestParams.fieldHarvestConfigs + ); require( - shouldMow || shouldPlant || userFieldHarvestParams.length > 0, + shouldMow || shouldPlant || shouldHarvest, "MowPlantHarvestBlueprint: None of the order conditions are met" ); - return (shouldMow, shouldPlant, userFieldHarvestParams); + return (shouldMow, shouldPlant, shouldHarvest, userFieldHarvestResults); } /** @@ -276,6 +285,26 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return totalClaimableStalk > minMowAmount && beanstalk.totalDeltaB() > int256(mintwaDeltaB); } + /** + * @notice Checks harvest conditions to trigger a harvest operation + * @dev Harvests should happen when: + * - The user has enough harvestable pods in at least one field id + * as specified by `fieldHarvestConfigs.minHarvestAmount` + * @return bool True if the user should harvest, false otherwise + */ + function _checkHarvestConditions( + UserFieldHarvestResults[] memory userFieldHarvestResults, + FieldHarvestConfig[] memory fieldHarvestConfigs + ) internal view returns (bool) { + for (uint256 i = 0; i < userFieldHarvestResults.length; i++) { + if ( + userFieldHarvestResults[i].totalHarvestablePods >= + fieldHarvestConfigs[i].minHarvestAmount + ) return true; + } + return false; + } + /** * @notice helper function to get the user state to compare against parameters * @dev Increasing the total claimable stalk when planting or harvesting does not really matter @@ -290,7 +319,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { returns ( uint256 totalClaimableStalk, uint256 totalPlantableBeans, - UserFieldHarvestParams[] memory userFieldHarvestParams + UserFieldHarvestResults[] memory userFieldHarvestResults ) { address[] memory whitelistedTokens = beanstalk.getWhitelistedTokens(); @@ -307,36 +336,36 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // check if user has plantable beans totalPlantableBeans = beanstalk.balanceOfEarnedBeans(account); - // for every field id, check if user has harvestable beans - // and for each one that meets the minimum harvest amount, add it to the user field harvest params + // for every field id, check if user has harvestable beans and append results + userFieldHarvestResults = new UserFieldHarvestResults[](fieldHarvestConfigs.length); for (uint256 i = 0; i < fieldHarvestConfigs.length; i++) { - userFieldHarvestParams[i] = _userHarvestablePods( + userFieldHarvestResults[i] = _userHarvestablePods( account, fieldHarvestConfigs[i].fieldId ); } - return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestParams); + return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestResults); } /** * @notice Helper function to get the total harvestable pods and plots for a user for a given field * @param account The address of the user * @param fieldId The field ID to check for harvestable pods - * @return userFieldHarvestParams A struct containing the total harvestable pods and plots for the given field + * @return userFieldHarvestResults A struct containing the total harvestable pods and plots for the given field */ function _userHarvestablePods( address account, uint256 fieldId - ) internal view returns (UserFieldHarvestParams memory userFieldHarvestParams) { + ) internal view returns (UserFieldHarvestResults memory userFieldHarvestResults) { // get field info and plot count directly uint256[] memory plotIndexes = beanstalk.getPlotIndexesFromAccount(account, fieldId); uint256 harvestableIndex = beanstalk.harvestableIndex(fieldId); - if (plotIndexes.length == 0) return userFieldHarvestParams; + if (plotIndexes.length == 0) return userFieldHarvestResults; // initialize array with full length and init field id - userFieldHarvestParams.fieldId = fieldId; + userFieldHarvestResults.fieldId = fieldId; uint256[] memory harvestablePlots = new uint256[](plotIndexes.length); uint256 harvestableCount; @@ -348,12 +377,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { if (startIndex + plotPods <= harvestableIndex) { // Fully harvestable harvestablePlots[harvestableCount] = startIndex; - userFieldHarvestParams.totalHarvestablePods += plotPods; + userFieldHarvestResults.totalHarvestablePods += plotPods; harvestableCount++; } else if (startIndex < harvestableIndex) { // Partially harvestable harvestablePlots[harvestableCount] = startIndex; - userFieldHarvestParams.totalHarvestablePods += harvestableIndex - startIndex; + userFieldHarvestResults.totalHarvestablePods += harvestableIndex - startIndex; harvestableCount++; } } @@ -363,7 +392,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { mstore(harvestablePlots, harvestableCount) } // assign the harvestable plots to the user field harvest params - userFieldHarvestParams.harvestablePlots = harvestablePlots; + userFieldHarvestResults.harvestablePlots = harvestablePlots; } /** diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 9a1d3c63..4cd360ba 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1126,6 +1126,8 @@ interface IMockFBeanstalk { uint256 index ) external view returns (uint256); + function setUserPodsAtField(address account, uint256 fieldId, uint256 index, uint256 amount) external; + function getPlotMerkleRoot() external pure returns (bytes32); function getPlotsFromAccount( diff --git a/contracts/mocks/mockFacets/MockFieldFacet.sol b/contracts/mocks/mockFacets/MockFieldFacet.sol index d67b86cf..88fdb19a 100644 --- a/contracts/mocks/mockFacets/MockFieldFacet.sol +++ b/contracts/mocks/mockFacets/MockFieldFacet.sol @@ -31,6 +31,10 @@ contract MockFieldFacet is FieldFacet { s.sys.fields[fieldId].pods += amount; } + function setUserPodsAtField(address account, uint256 fieldId, uint256 index, uint256 amount) external { + LibDibbler.insertPlot(account, fieldId, index, amount); + } + function setUnharvestable(uint256 amount) external { // Get current harvestable index uint256 currentIndex = s.sys.fields[s.sys.activeField].harvestable; diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 3f195239..2516bdab 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -27,6 +27,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { uint256 STALK_DECIMALS = 1e10; int256 DEFAULT_TIP_AMOUNT = 10e6; // 10 BEAN uint256 constant MAX_GROWN_STALK_PER_BDV = 1000e16; // Stalk is 1e16 + uint256 UNEXECUTABLE_MIN_HARVEST_AMOUNT = 1_000_000_000e6; // 1B BEAN struct TestState { address user; @@ -88,6 +89,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function setupMowPlantHarvestBlueprintTest( bool setupPlant, bool setupHarvest, + bool twoFields, bool abovePeg ) internal returns (TestState memory) { // Create test state @@ -123,7 +125,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { if (setupPlant) skipGermination(); - if (setupHarvest) setHarvestConditions(state.user); + if (setupHarvest) setHarvestConditions(state.user, twoFields); return state; } @@ -133,7 +135,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function test_mowPlantHarvestBlueprint_smartMow() public { // Setup test state // setupPlant: false, setupHarvest: false, abovePeg: true - TestState memory state = setupMowPlantHarvestBlueprintTest(false, false, true); + TestState memory state = setupMowPlantHarvestBlueprintTest(false, false, false, true); // Advance season to grow stalk but not enough to plant advanceSeason(); @@ -155,7 +157,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 1 * STALK_DECIMALS, // minMowAmount (1 stalk) 10e6, // mintwaDeltaB type(uint256).max, // minPlantAmount - type(uint256).max, // minHarvestAmount + UNEXECUTABLE_MIN_HARVEST_AMOUNT, // minHarvestAmount (for all fields) state.operator, // tipAddress state.mowTipAmount, // mowTipAmount state.plantTipAmount, // plantTipAmount @@ -187,7 +189,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function test_mowPlantHarvestBlueprint_plant_revertWhenMinPlantAmountLessThanTip() public { // Setup test state for planting - TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, true); + // setupPlant: true, setupHarvest: false, twoFields: true, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, false, true); // assert that the user has earned beans assertGt(bs.balanceOfEarnedBeans(state.user), 0, "user should have earned beans to plant"); @@ -199,7 +202,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 1 * STALK_DECIMALS, // minMowAmount (1 stalk) 10e6, // mintwaDeltaB 1e6, // minPlantAmount < 10e6 (plant tip amount) - type(uint256).max, // minHarvestAmount + UNEXECUTABLE_MIN_HARVEST_AMOUNT, // minHarvestAmount (for all fields) state.operator, // tipAddress state.mowTipAmount, // mowTipAmount state.plantTipAmount, // plantTipAmount @@ -214,7 +217,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function test_mowPlantHarvestBlueprint_plant_revertWhenInsufficientPlantableBeans() public { // Setup test state for planting - TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, true); + // setupPlant: true, setupHarvest: false, twoFields: true, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, false, true); // assert that the user has earned beans assertGt(bs.balanceOfEarnedBeans(state.user), 0, "user should have earned beans to plant"); @@ -226,7 +230,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 1 * STALK_DECIMALS, // minMowAmount (1 stalk) 10e6, // mintwaDeltaB type(uint256).max, // minPlantAmount > (total plantable beans) - type(uint256).max, // minHarvestAmount + UNEXECUTABLE_MIN_HARVEST_AMOUNT, // minHarvestAmount (for all fields) state.operator, // tipAddress state.mowTipAmount, // mowTipAmount state.plantTipAmount, // plantTipAmount @@ -241,7 +245,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function test_mowPlantHarvestBlueprint_plant_success() public { // Setup test state for planting - TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, true); + // setupPlant: true, setupHarvest: false, twoFields: true, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, true, true); // get user state before plant uint256 userTotalStalkBeforePlant = bs.balanceOfStalk(state.user); @@ -259,7 +264,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 1 * STALK_DECIMALS, // minMowAmount (1 stalk) 10e6, // mintwaDeltaB 11e6, // minPlantAmount > 10e6 (plant tip amount) - type(uint256).max, // minHarvestAmount + UNEXECUTABLE_MIN_HARVEST_AMOUNT, // minHarvestAmount (for all fields) state.operator, // tipAddress state.mowTipAmount, // mowTipAmount state.plantTipAmount, // plantTipAmount @@ -282,13 +287,14 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function test_mowPlantHarvestBlueprint_harvest_revertWhenMinHarvestAmountLessThanTip() public { // Setup test state for harvesting - TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true); + // setupPlant: false, setupHarvest: true, twoFields: true, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true, true); // advance season to print beans advanceSeason(); // assert user has harvestable pods - (uint256 totalHarvestablePods, ) = _userHarvestablePods(state.user); + (uint256 totalHarvestablePods, ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); assertGt(totalHarvestablePods, 0, "user should have harvestable pods to harvest"); // Setup blueprint with minHarvestAmount less than harvest tip amount @@ -298,7 +304,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 1 * STALK_DECIMALS, // minMowAmount (1 stalk) 10e6, // mintwaDeltaB 11e6, // minPlantAmount - 1e6, // minHarvestAmount < 10e6 (harvest tip amount) + 1e6, // minHarvestAmount < 10e6 (harvest tip amount) (for all fields) state.operator, // tipAddress state.mowTipAmount, // mowTipAmount state.plantTipAmount, // plantTipAmount @@ -313,7 +319,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { function test_mowPlantHarvestBlueprint_harvest_partialHarvest() public { // Setup test state for harvesting - TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true); + // setupPlant: false, setupHarvest: true, twoFields: true, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true, true); // advance season to print beans advanceSeason(); @@ -321,7 +328,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // get user state before harvest uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) = _userHarvestablePods( - state.user + state.user, + DEFAULT_FIELD_ID ); // assert initial conditions @@ -335,7 +343,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 1 * STALK_DECIMALS, // minMowAmount (1 stalk) 10e6, // mintwaDeltaB 11e6, // minPlantAmount - 11e6, // minHarvestAmount > 10e6 (harvest tip amount) + 11e6, // minHarvestAmount > 10e6 (harvest tip amount) (for all fields) state.operator, // tipAddress state.mowTipAmount, // mowTipAmount state.plantTipAmount, // plantTipAmount @@ -356,14 +364,15 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { ( uint256 totalHarvestablePodsAfterHarvest, uint256[] memory harvestablePlotsAfterHarvest - ) = _userHarvestablePods(state.user); + ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); } function test_mowPlantHarvestBlueprint_harvest_fullHarvest() public { // Setup test state for harvesting - TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true); + // setupPlant: false, setupHarvest: true, twoFields: false, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, false, true); // add even more liquidity to well to print more beans and clear the podline addLiquidityToWell(BEAN_ETH_WELL, 10000e6, 20 ether); @@ -374,7 +383,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // get user state before harvest uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); - (, uint256[] memory harvestablePlots) = _userHarvestablePods(state.user); + (, uint256[] memory harvestablePlots) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); // assert user has 2 harvestable plots for full harvest assertEq(harvestablePlots.length, 2, "user should have 2 harvestable plots"); @@ -386,7 +395,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { 1 * STALK_DECIMALS, // minMowAmount (1 stalk) 10e6, // mintwaDeltaB 11e6, // minPlantAmount - 11e6, // minHarvestAmount > 10e6 (harvest tip amount) + 11e6, // minHarvestAmount > 10e6 (harvest tip amount) (for all fields) state.operator, // tipAddress state.mowTipAmount, // mowTipAmount state.plantTipAmount, // plantTipAmount @@ -415,11 +424,98 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { ( uint256 totalHarvestablePodsAfterHarvest, uint256[] memory harvestablePlotsAfterHarvest - ) = _userHarvestablePods(state.user); + ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); } + function test_mowPlantHarvestBlueprint_harvest_fullHarvest_twoFields() public { + // Setup test state for harvesting + // setupPlant: false, setupHarvest: true, twoFields: true, abovePeg: true + TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true, true); + + // add even more liquidity to well to print more beans and clear the podline at fieldId 0 + // note: field id 1 has had its harvestable index incremented already + addLiquidityToWell(BEAN_ETH_WELL, 10000e6, 20 ether); + addLiquidityToWell(BEAN_WSTETH_WELL, 10000e6, 20 ether); + + // advance season to print beans + advanceSeason(); + + // get user state before harvest + uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); + ( + uint256 totalHarvestablePodsForField0, + uint256[] memory field0HarvestablePlots + ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); + // assert user has 2 harvestable plots for full harvest + assertEq(field0HarvestablePlots.length, 2, "2 harvestable plots for fieldId 0"); + assertEq(totalHarvestablePodsForField0, 1000100000, "harvestable pods for fieldId 0"); + // get user state for fieldId 1 + ( + uint256 totalHarvestablePodsForField1, + uint256[] memory field1HarvestablePlots + ) = _userHarvestablePods(state.user, PAYBACK_FIELD_ID); + assertEq(field1HarvestablePlots.length, 1, "1 harvestable plot for fieldId 1"); + assertEq(totalHarvestablePodsForField1, 250e6, "harvestable pods for fieldId 1"); + + // Setup blueprint for full harvest + (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( + state.user, // account + SourceMode.PURE_PINTO, // sourceMode for tip + 1 * STALK_DECIMALS, // minMowAmount (1 stalk) + 10e6, // mintwaDeltaB + 11e6, // minPlantAmount + 11e6, // minHarvestAmount > 10e6 (harvest tip amount) (for all fields) + state.operator, // tipAddress + state.mowTipAmount, // mowTipAmount + state.plantTipAmount, // plantTipAmount + state.harvestTipAmount, // harvestTipAmount + MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv + ); + + // Execute requisition, expect harvest events for both fields + vm.expectEmit(); + emit Harvest(state.user, DEFAULT_FIELD_ID, field0HarvestablePlots, 1000100000); + emit Harvest(state.user, PAYBACK_FIELD_ID, field1HarvestablePlots, 250e6); + executeRequisition(state.operator, req, address(bs)); + + // Verify state changes after full harvest + uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); + assertGt(userTotalBdvAfterHarvest, userTotalBdvBeforeHarvest, "userTotalBdv increase"); + + // get user plots and verify all harvested for fieldId 0 + IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(state.user, DEFAULT_FIELD_ID); + assertEq(plots.length, 0, "user should have no plots left"); + + // assert the user has no harvestable pods left + ( + uint256 totalHarvestablePodsAfterHarvest, + uint256[] memory harvestablePlotsAfterHarvest + ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); + assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); + assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); + + // get user plots and verify all harvested for fieldId 1 + plots = bs.getPlotsFromAccount(state.user, PAYBACK_FIELD_ID); + assertEq(plots.length, 0, "user should have no plots left"); + + // assert the user has no harvestable pods left + (totalHarvestablePodsAfterHarvest, harvestablePlotsAfterHarvest) = _userHarvestablePods( + state.user, + PAYBACK_FIELD_ID + ); + assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); + assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); + + // assert the user's internal balance of beans has increased by the full harvest amount of both fields + assertEq( + bs.getInternalBalance(state.user, state.beanToken), + totalHarvestablePodsForField0 + totalHarvestablePodsForField1, + "user's internal balance of beans should increase by the full harvest amount of both fields" + ); + } + /////////////////////////// HELPER FUNCTIONS /////////////////////////// /// @dev Advance to the next season and update oracles @@ -449,7 +545,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { /** * @notice Sows beans so that the tractor user can harvest later */ - function setHarvestConditions(address account) internal { + function setHarvestConditions(address account, bool twoFields) internal { + ////// Set active field harvest by sowing ////// // set soil to 1000e6 bs.setSoilE(1000e6); // sow 1000e6 beans 2 times of 500e6 each @@ -457,6 +554,11 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { bs.sow(500e6, 0, uint8(LibTransfer.From.EXTERNAL)); vm.prank(account); bs.sow(500e6, 0, uint8(LibTransfer.From.EXTERNAL)); + /// Give the user pods in fieldId 1 and increment harvestable index /// + if (twoFields) { + bs.setUserPodsAtField(account, PAYBACK_FIELD_ID, 0, 250e6); + bs.incrementTotalHarvestableE(PAYBACK_FIELD_ID, 250e6); + } } /** diff --git a/test/foundry/utils/TestHelper.sol b/test/foundry/utils/TestHelper.sol index 33a6344e..4e9bae07 100644 --- a/test/foundry/utils/TestHelper.sol +++ b/test/foundry/utils/TestHelper.sol @@ -810,14 +810,15 @@ contract TestHelper is * @return userHarvestablePlots The harvestable plot ids for the user */ function _userHarvestablePods( - address account + address account, + uint256 fieldId ) internal view returns (uint256 totalUserHarvestablePods, uint256[] memory userHarvestablePlots) { // get field info and plot count directly - uint256 activeField = bs.activeField(); + uint256 activeField = fieldId; uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, activeField); uint256 harvestableIndex = bs.harvestableIndex(activeField); diff --git a/test/foundry/utils/TractorHelper.sol b/test/foundry/utils/TractorHelper.sol index d4d31758..f7601e7e 100644 --- a/test/foundry/utils/TractorHelper.sol +++ b/test/foundry/utils/TractorHelper.sol @@ -8,6 +8,7 @@ import {TractorHelpers} from "contracts/ecosystem/TractorHelpers.sol"; import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; import {MowPlantHarvestBlueprint} from "contracts/ecosystem/MowPlantHarvestBlueprint.sol"; import {BlueprintBase} from "contracts/ecosystem/BlueprintBase.sol"; +import "forge-std/console.sol"; contract TractorHelper is TestHelper { // Add this at the top of the contract @@ -15,6 +16,9 @@ contract TractorHelper is TestHelper { SowBlueprintv0 internal sowBlueprintv0; MowPlantHarvestBlueprint internal mowPlantHarvestBlueprint; + uint256 public constant DEFAULT_FIELD_ID = 0; + uint256 public constant PAYBACK_FIELD_ID = 1; + enum SourceMode { PURE_PINTO, LOWEST_PRICE, @@ -369,33 +373,31 @@ contract TractorHelper is TestHelper { sourceTokenIndices[0] = type(uint8).max - 1; } + // create per-field-id harvest configs + MowPlantHarvestBlueprint.FieldHarvestConfig[] + memory fieldHarvestConfigs = createFieldHarvestConfigs(minHarvestAmount); + // Create MowPlantHarvestParams struct MowPlantHarvestBlueprint.MowPlantHarvestParams memory mowPlantHarvestParams = MowPlantHarvestBlueprint.MowPlantHarvestParams({ minMowAmount: minMowAmount, mintwaDeltaB: mintwaDeltaB, minPlantAmount: minPlantAmount, - minHarvestAmount: minHarvestAmount, + fieldHarvestConfigs: fieldHarvestConfigs, sourceTokenIndices: sourceTokenIndices, maxGrownStalkPerBdv: maxGrownStalkPerBdv, slippageRatio: 0.01e18 // 1% }); - // Create OperatorParams struct - BlueprintBase.OperatorParams memory opParams = BlueprintBase.OperatorParams({ - whitelistedOperators: whitelistedOps, - tipAddress: tipAddress, - operatorTipAmount: 0 // plain operator tip amount is not used in this blueprint - }); - - // Create OperatorParamsExtended struct + // create OperatorParamsExtended struct MowPlantHarvestBlueprint.OperatorParamsExtended - memory opParamsExtended = MowPlantHarvestBlueprint.OperatorParamsExtended({ - opParamsBase: opParams, - mowTipAmount: mowTipAmount, - plantTipAmount: plantTipAmount, - harvestTipAmount: harvestTipAmount - }); + memory opParamsExtended = createOperatorParamsExtended( + whitelistedOps, + tipAddress, + mowTipAmount, + plantTipAmount, + harvestTipAmount + ); return MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct({ @@ -404,6 +406,27 @@ contract TractorHelper is TestHelper { }); } + function createFieldHarvestConfigs( + uint256 minHarvestAmount + ) + internal + view + returns (MowPlantHarvestBlueprint.FieldHarvestConfig[] memory fieldHarvestConfigs) + { + fieldHarvestConfigs = new MowPlantHarvestBlueprint.FieldHarvestConfig[](2); + // default field id + fieldHarvestConfigs[0] = MowPlantHarvestBlueprint.FieldHarvestConfig({ + fieldId: DEFAULT_FIELD_ID, + minHarvestAmount: minHarvestAmount + }); + // expected payback field id + fieldHarvestConfigs[1] = MowPlantHarvestBlueprint.FieldHarvestConfig({ + fieldId: PAYBACK_FIELD_ID, + minHarvestAmount: minHarvestAmount + }); + return fieldHarvestConfigs; + } + function createMowPlantHarvestBlueprintCallData( MowPlantHarvestBlueprint.MowPlantHarvestBlueprintStruct memory params ) internal view returns (bytes memory) { @@ -429,4 +452,30 @@ contract TractorHelper is TestHelper { // return the encoded farm call return abi.encodeWithSelector(IMockFBeanstalk.advancedFarm.selector, calls); } + + function createOperatorParamsExtended( + address[] memory whitelistedOps, + address tipAddress, + int256 mowTipAmount, + int256 plantTipAmount, + int256 harvestTipAmount + ) internal view returns (MowPlantHarvestBlueprint.OperatorParamsExtended memory) { + // create OperatorParams struct + BlueprintBase.OperatorParams memory opParams = BlueprintBase.OperatorParams({ + whitelistedOperators: whitelistedOps, + tipAddress: tipAddress, + operatorTipAmount: 0 // plain operator tip amount is not used in this blueprint + }); + + // create OperatorParamsExtended struct + MowPlantHarvestBlueprint.OperatorParamsExtended + memory opParamsExtended = MowPlantHarvestBlueprint.OperatorParamsExtended({ + opParamsBase: opParams, + mowTipAmount: mowTipAmount, + plantTipAmount: plantTipAmount, + harvestTipAmount: harvestTipAmount + }); + + return opParamsExtended; + } } From 7eb189940a2d48ec1666609d4790ac14ccc54aa0 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 29 Sep 2025 08:21:22 +0000 Subject: [PATCH 152/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/interfaces/IMockFBeanstalk.sol | 7 ++++++- contracts/mocks/mockFacets/MockFieldFacet.sol | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index e6eb7954..b508d20f 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1126,7 +1126,12 @@ interface IMockFBeanstalk { uint256 index ) external view returns (uint256); - function setUserPodsAtField(address account, uint256 fieldId, uint256 index, uint256 amount) external; + function setUserPodsAtField( + address account, + uint256 fieldId, + uint256 index, + uint256 amount + ) external; function getPlotMerkleRoot() external pure returns (bytes32); diff --git a/contracts/mocks/mockFacets/MockFieldFacet.sol b/contracts/mocks/mockFacets/MockFieldFacet.sol index 47edf4c1..825d3de1 100644 --- a/contracts/mocks/mockFacets/MockFieldFacet.sol +++ b/contracts/mocks/mockFacets/MockFieldFacet.sol @@ -31,7 +31,12 @@ contract MockFieldFacet is FieldFacet { s.sys.fields[fieldId].pods += amount; } - function setUserPodsAtField(address account, uint256 fieldId, uint256 index, uint256 amount) external { + function setUserPodsAtField( + address account, + uint256 fieldId, + uint256 index, + uint256 amount + ) external { LibDibbler.insertPlot(account, fieldId, index, amount); } From fae2f04d65eecee8902c397b69e1722c7121f926 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 11:54:18 +0300 Subject: [PATCH 153/270] clean up tests --- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 118 ++++++++++-------- 1 file changed, 64 insertions(+), 54 deletions(-) diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 2516bdab..2af0371a 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -28,6 +28,8 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { int256 DEFAULT_TIP_AMOUNT = 10e6; // 10 BEAN uint256 constant MAX_GROWN_STALK_PER_BDV = 1000e16; // Stalk is 1e16 uint256 UNEXECUTABLE_MIN_HARVEST_AMOUNT = 1_000_000_000e6; // 1B BEAN + uint256 PODS_FIELD_0 = 1000100000; + uint256 PODS_FIELD_1 = 250e6; struct TestState { address user; @@ -327,14 +329,15 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // get user state before harvest uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); - (uint256 totalHarvestablePods, uint256[] memory harvestablePlots) = _userHarvestablePods( + (, uint256[] memory harvestablePlots) = assertAndGetHarvestablePods( state.user, - DEFAULT_FIELD_ID + DEFAULT_FIELD_ID, + 1, // expected plots + 488088481 // expected pods ); // assert initial conditions assertEq(userTotalBdvBeforeHarvest, 100000e6, "user should have the initial bdv"); - assertGt(totalHarvestablePods, 0, "user should have harvestable pods to harvest"); // Setup blueprint for partial harvest (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( @@ -361,12 +364,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { assertGt(userTotalBdvAfterHarvest, userTotalBdvBeforeHarvest, "userTotalBdv increase"); // assert user harvestable pods is 0 after harvest - ( - uint256 totalHarvestablePodsAfterHarvest, - uint256[] memory harvestablePlotsAfterHarvest - ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); - assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); - assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); + assertNoHarvestablePods(state.user, DEFAULT_FIELD_ID); } function test_mowPlantHarvestBlueprint_harvest_fullHarvest() public { @@ -383,10 +381,12 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // get user state before harvest uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); - (, uint256[] memory harvestablePlots) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); - - // assert user has 2 harvestable plots for full harvest - assertEq(harvestablePlots.length, 2, "user should have 2 harvestable plots"); + (, uint256[] memory harvestablePlots) = assertAndGetHarvestablePods( + state.user, + DEFAULT_FIELD_ID, + 2, // expected plots + PODS_FIELD_0 // expected pods + ); // Setup blueprint for full harvest (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( @@ -421,12 +421,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { assertEq(plots.length, 0, "user should have no plots left"); // assert the user has no harvestable pods left - ( - uint256 totalHarvestablePodsAfterHarvest, - uint256[] memory harvestablePlotsAfterHarvest - ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); - assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); - assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); + assertNoHarvestablePods(state.user, DEFAULT_FIELD_ID); } function test_mowPlantHarvestBlueprint_harvest_fullHarvest_twoFields() public { @@ -442,22 +437,21 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // advance season to print beans advanceSeason(); - // get user state before harvest + // get user state before harvest for fieldId 0 uint256 userTotalBdvBeforeHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); - ( - uint256 totalHarvestablePodsForField0, - uint256[] memory field0HarvestablePlots - ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); - // assert user has 2 harvestable plots for full harvest - assertEq(field0HarvestablePlots.length, 2, "2 harvestable plots for fieldId 0"); - assertEq(totalHarvestablePodsForField0, 1000100000, "harvestable pods for fieldId 0"); - // get user state for fieldId 1 - ( - uint256 totalHarvestablePodsForField1, - uint256[] memory field1HarvestablePlots - ) = _userHarvestablePods(state.user, PAYBACK_FIELD_ID); - assertEq(field1HarvestablePlots.length, 1, "1 harvestable plot for fieldId 1"); - assertEq(totalHarvestablePodsForField1, 250e6, "harvestable pods for fieldId 1"); + (, uint256[] memory field0HarvestablePlots) = assertAndGetHarvestablePods( + state.user, + DEFAULT_FIELD_ID, + 2, // expected plots + PODS_FIELD_0 // expected pods + ); + // get user state before harvest for fieldId 1 + (, uint256[] memory field1HarvestablePlots) = assertAndGetHarvestablePods( + state.user, + PAYBACK_FIELD_ID, + 1, // expected plots + PODS_FIELD_1 // expected pods + ); // Setup blueprint for full harvest (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( @@ -486,38 +480,53 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { // get user plots and verify all harvested for fieldId 0 IMockFBeanstalk.Plot[] memory plots = bs.getPlotsFromAccount(state.user, DEFAULT_FIELD_ID); - assertEq(plots.length, 0, "user should have no plots left"); + assertEq(bs.getPlotsFromAccount(state.user, DEFAULT_FIELD_ID).length, 0, "no plots left"); // assert the user has no harvestable pods left - ( - uint256 totalHarvestablePodsAfterHarvest, - uint256[] memory harvestablePlotsAfterHarvest - ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); - assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); - assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); + assertNoHarvestablePods(state.user, DEFAULT_FIELD_ID); // get user plots and verify all harvested for fieldId 1 plots = bs.getPlotsFromAccount(state.user, PAYBACK_FIELD_ID); - assertEq(plots.length, 0, "user should have no plots left"); + assertEq(plots.length, 0, "no plots left"); // assert the user has no harvestable pods left - (totalHarvestablePodsAfterHarvest, harvestablePlotsAfterHarvest) = _userHarvestablePods( - state.user, - PAYBACK_FIELD_ID - ); - assertEq(totalHarvestablePodsAfterHarvest, 0, "harvestable pods after harvest"); - assertEq(harvestablePlotsAfterHarvest.length, 0, "harvestable plots after harvest"); + assertNoHarvestablePods(state.user, PAYBACK_FIELD_ID); + } + + /////////////////////////// HELPER FUNCTIONS /////////////////////////// + + /** + * @notice Assert user has no harvestable pods remaining for a field + */ + function assertNoHarvestablePods(address user, uint256 fieldId) internal { + (uint256 totalPods, uint256[] memory plots) = _userHarvestablePods(user, fieldId); + assertEq(totalPods, 0, "harvestable pods after harvest"); + assertEq(plots.length, 0, "harvestable plots after harvest"); + } - // assert the user's internal balance of beans has increased by the full harvest amount of both fields + /** + * @notice Assert user has expected harvestable pods and return them + */ + function assertAndGetHarvestablePods( + address user, + uint256 fieldId, + uint256 expectedPlots, + uint256 expectedPods + ) internal returns (uint256 totalPods, uint256[] memory plots) { + (totalPods, plots) = _userHarvestablePods(user, fieldId); assertEq( - bs.getInternalBalance(state.user, state.beanToken), - totalHarvestablePodsForField0 + totalHarvestablePodsForField1, - "user's internal balance of beans should increase by the full harvest amount of both fields" + plots.length, + expectedPlots, + string.concat("harvestable plots for fieldId ", vm.toString(fieldId)) + ); + assertGt( + totalPods, + 0, + string.concat("harvestable pods for fieldId ", vm.toString(fieldId)) ); + assertEq(totalPods, expectedPods, "harvestable pods for fieldId"); } - /////////////////////////// HELPER FUNCTIONS /////////////////////////// - /// @dev Advance to the next season and update oracles function advanceSeason() internal { warpToNextSeasonTimestamp(); @@ -544,6 +553,7 @@ contract MowPlantHarvestBlueprintTest is TractorHelper { /** * @notice Sows beans so that the tractor user can harvest later + * Results in PODS_FIELD_0 for fieldId 0 and optionally PODS_FIELD_1 for fieldId 1 */ function setHarvestConditions(address account, bool twoFields) internal { ////// Set active field harvest by sowing ////// From c1befcceb373a69a2464610237097dd54ab52daa Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 12:00:15 +0300 Subject: [PATCH 154/270] small natspec fix --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 7562941d..098427b1 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -38,9 +38,9 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } /** - * @notice Struct to hold field-specific harvest parameters + * @notice Struct to hold field-specific harvest results after a _userHarvestablePods call * @param fieldId The field ID to harvest from - * @param totalHarvestAmount The total harvestable pods for this field + * @param totalHarvestablePods The total harvestable pods for this field * @param harvestablePlots The harvestable plot indexes for the user */ struct UserFieldHarvestResults { From e792f668b33ff7f0cb6f81678d5807f581e09391 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 12:04:49 +0300 Subject: [PATCH 155/270] move temp field facet to temp folder --- .../{facets/field => tempFacets}/TempRepaymentFieldFacet.sol | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename contracts/beanstalk/{facets/field => tempFacets}/TempRepaymentFieldFacet.sol (100%) diff --git a/contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol similarity index 100% rename from contracts/beanstalk/facets/field/TempRepaymentFieldFacet.sol rename to contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol From 7683e1624f32b172b8792103688440f06c9bf5ab Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 12:17:08 +0300 Subject: [PATCH 156/270] change length to j --- .../beanstalk/tempFacets/TempRepaymentFieldFacet.sol | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol index 6460e97e..e1d7355b 100644 --- a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol @@ -45,18 +45,12 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { for (uint i; i < accountPlots.length; i++) { // cache the account and length of the plot indexes array address account = accountPlots[i].account; - uint256 plotIndexesLength = s - .accts[account] - .fields[REPAYMENT_FIELD_ID] - .plotIndexes - .length; for (uint j; j < accountPlots[i].plots.length; j++) { uint256 podIndex = accountPlots[i].plots[j].podIndex; uint256 podAmount = accountPlots[i].plots[j].podAmounts; s.accts[account].fields[REPAYMENT_FIELD_ID].plots[podIndex] = podAmount; s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.push(podIndex); - s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = plotIndexesLength; - plotIndexesLength++; + s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = j; emit RepaymentPlotAdded(account, podIndex, podAmount); } } From 63ddaa5428012ea169eb53d2f5ee758c21f25e9b Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 12:32:30 +0300 Subject: [PATCH 157/270] add lib transfer param to claim silo payback tokens from distributor --- .../ContractPaybackDistributor.sol | 27 ++++++++++++++----- .../L1ContractMessenger.sol | 5 ++-- .../IContractPaybackDistributor.sol | 6 +++-- .../BeanstalkShipments.t.sol | 5 ++-- .../ContractDistribution.t.sol | 16 +++++------ 5 files changed, 39 insertions(+), 20 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 908ef282..09a61c2e 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -10,6 +10,7 @@ import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger. import {IERC1155Receiver} from "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; import {IContractPaybackDistributor} from "contracts/interfaces/IContractPaybackDistributor.sol"; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; /** * @title ContractPaybackDistributor @@ -132,13 +133,14 @@ contract ContractPaybackDistributor is * @param receiver The address to transfer the assets to */ function claimDirect( - address receiver + address receiver, + LibTransfer.To siloPaybackToMode ) external nonReentrant onlyWhitelistedCaller(msg.sender) isValidReceiver(receiver) { AccountData storage account = accounts[msg.sender]; require(!account.claimed, "ContractPaybackDistributor: Caller already claimed"); account.claimed = true; - _transferAllAssetsForAccount(msg.sender, receiver); + _transferAllAssetsForAccount(msg.sender, receiver, siloPaybackToMode); } /** @@ -148,12 +150,13 @@ contract ContractPaybackDistributor is */ function claimFromL1Message( address caller, - address receiver + address receiver, + LibTransfer.To siloPaybackToMode ) public nonReentrant onlyL1Messenger onlyWhitelistedCaller(caller) isValidReceiver(receiver) { AccountData storage account = accounts[caller]; require(!account.claimed, "ContractPaybackDistributor: Caller already claimed"); account.claimed = true; - _transferAllAssetsForAccount(caller, receiver); + _transferAllAssetsForAccount(caller, receiver, siloPaybackToMode); } /** @@ -162,12 +165,24 @@ contract ContractPaybackDistributor is * @param account The address of the account to claim from * @param receiver The address to transfer the assets to */ - function _transferAllAssetsForAccount(address account, address receiver) internal { + function _transferAllAssetsForAccount( + address account, + address receiver, + LibTransfer.To siloPaybackToMode + ) internal { AccountData memory accountData = accounts[account]; // transfer silo payback tokens to the receiver if (accountData.siloPaybackTokensOwed > 0) { - siloPayback.safeTransfer(receiver, accountData.siloPaybackTokensOwed); + if (siloPaybackToMode == LibTransfer.To.INTERNAL) { + pintoProtocol.sendTokenToInternalBalance( + address(siloPayback), + receiver, + accountData.siloPaybackTokensOwed + ); + } else { + siloPayback.safeTransfer(receiver, accountData.siloPaybackTokensOwed); + } } // transfer fertilizer ERC1155s to the receiver diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index 01b58a71..81db494f 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -3,6 +3,7 @@ pragma solidity ^0.8.20; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; import {IContractPaybackDistributor} from "contracts/interfaces/IContractPaybackDistributor.sol"; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; /** * @title L1ContractMessenger @@ -48,12 +49,12 @@ contract L1ContractMessenger { * From fork testing, all contract accounts claimed their assets with a maximum of 26million gas. * (https://docs.optimism.io/app-developers/bridging/messaging#basics-of-communication-between-layers) */ - function claimL2BeanstalkAssets(address l2Receiver) public onlyWhitelistedL1Caller { + function claimL2BeanstalkAssets(address l2Receiver, LibTransfer.To siloPaybackToMode) public onlyWhitelistedL1Caller { MESSENGER.sendMessage( L2_CONTRACT_PAYBACK_DISTRIBUTOR, // target abi.encodeCall( IContractPaybackDistributor.claimFromL1Message, - (msg.sender, l2Receiver) + (msg.sender, l2Receiver, siloPaybackToMode) ), // message MAX_GAS_LIMIT // gas limit ); diff --git a/contracts/interfaces/IContractPaybackDistributor.sol b/contracts/interfaces/IContractPaybackDistributor.sol index d9fbb145..d4f4ca74 100644 --- a/contracts/interfaces/IContractPaybackDistributor.sol +++ b/contracts/interfaces/IContractPaybackDistributor.sol @@ -2,7 +2,9 @@ pragma solidity ^0.8.20; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; + interface IContractPaybackDistributor { - function claimDirect(address receiver) external; - function claimFromL1Message(address caller, address receiver) external; + function claimDirect(address receiver, LibTransfer.To siloPaybackToMode) external; + function claimFromL1Message(address caller, address receiver, LibTransfer.To siloPaybackToMode) external; } diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 38a4071e..35bf4366 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -14,6 +14,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; import {LibReceiving} from "contracts/libraries/LibReceiving.sol"; import {ContractPaybackDistributor} from "contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol"; +import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; /** * @notice Tests shipment distribution and claiming functionality for the beanstalk shipments system. @@ -474,7 +475,7 @@ contract BeanstalkShipmentsTest is TestHelper { // Prank as the contract account to call claimDirect vm.prank(contractAccounts[i]); - contractDistributor.claimDirect(farmer1); + contractDistributor.claimDirect(farmer1, LibTransfer.To.EXTERNAL); uint256 gasUsed = vm.stopSnapshotGas(); if (gasUsed > maxGasUsed) { @@ -493,7 +494,7 @@ contract BeanstalkShipmentsTest is TestHelper { vm.startSnapshotGas("contractClaimWithMaxPlots"); // prank and call claimDirect vm.prank(plotContract); - contractDistributor.claimDirect(farmer1); + contractDistributor.claimDirect(farmer1, LibTransfer.To.EXTERNAL); uint256 gasUsed = vm.stopSnapshotGas(); console.log("Gas used by contract claim with max plots", gasUsed); } diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index f972e0b0..8266a632 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -131,7 +131,7 @@ contract ContractDistributionTest is TestHelper { */ function test_contractDistributionDirect() public { vm.startPrank(contractAccount1); - contractPaybackDistributor.claimDirect(receiver1); + contractPaybackDistributor.claimDirect(receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); // assert the receiver address holds all the assets for receiver1 @@ -162,12 +162,12 @@ contract ContractDistributionTest is TestHelper { // try to claim again from contractAccount1 vm.startPrank(contractAccount1); vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); - contractPaybackDistributor.claimDirect(receiver1); + contractPaybackDistributor.claimDirect(receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); // Claim for contractAccount2 vm.startPrank(contractAccount2); - contractPaybackDistributor.claimDirect(receiver2); + contractPaybackDistributor.claimDirect(receiver2, LibTransfer.To.EXTERNAL); vm.stopPrank(); // assert the receiver address holds all the assets for receiver2 @@ -207,7 +207,7 @@ contract ContractDistributionTest is TestHelper { // try to claim from non-L1 messenger, expect revert vm.startPrank(address(contractAccount1)); vm.expectRevert("ContractPaybackDistributor: Caller not L1 messenger"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1); + contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); // try to claim from non-L1 sender, expect revert @@ -218,7 +218,7 @@ contract ContractDistributionTest is TestHelper { abi.encode(makeAddr("nonL1Sender")) ); vm.expectRevert("ContractPaybackDistributor: Bad origin"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1); + contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); // claim using the L1 message. Mock that the call was initiated by the L1 sender contract @@ -229,7 +229,7 @@ contract ContractDistributionTest is TestHelper { abi.encodeWithSelector(L1_MESSENGER.xDomainMessageSender.selector), abi.encode(L1_SENDER) ); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1); + contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); // assert the receiver address holds all the assets for receiver1 @@ -265,13 +265,13 @@ contract ContractDistributionTest is TestHelper { abi.encode(L1_SENDER) ); vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1); + contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); // try to claim again for same account directly, expect revert vm.startPrank(address(contractAccount1)); vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); - contractPaybackDistributor.claimDirect(receiver1); + contractPaybackDistributor.claimDirect(receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); } From e6b4d57e8ae6585133c7979848701d865426b41b Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 29 Sep 2025 09:34:19 +0000 Subject: [PATCH 158/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../L1ContractMessenger.sol | 5 +++- .../IContractPaybackDistributor.sol | 6 ++++- .../ContractDistribution.t.sol | 24 +++++++++++++++---- 3 files changed, 29 insertions(+), 6 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index 81db494f..d173b97f 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -49,7 +49,10 @@ contract L1ContractMessenger { * From fork testing, all contract accounts claimed their assets with a maximum of 26million gas. * (https://docs.optimism.io/app-developers/bridging/messaging#basics-of-communication-between-layers) */ - function claimL2BeanstalkAssets(address l2Receiver, LibTransfer.To siloPaybackToMode) public onlyWhitelistedL1Caller { + function claimL2BeanstalkAssets( + address l2Receiver, + LibTransfer.To siloPaybackToMode + ) public onlyWhitelistedL1Caller { MESSENGER.sendMessage( L2_CONTRACT_PAYBACK_DISTRIBUTOR, // target abi.encodeCall( diff --git a/contracts/interfaces/IContractPaybackDistributor.sol b/contracts/interfaces/IContractPaybackDistributor.sol index d4f4ca74..0e3770a6 100644 --- a/contracts/interfaces/IContractPaybackDistributor.sol +++ b/contracts/interfaces/IContractPaybackDistributor.sol @@ -6,5 +6,9 @@ import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; interface IContractPaybackDistributor { function claimDirect(address receiver, LibTransfer.To siloPaybackToMode) external; - function claimFromL1Message(address caller, address receiver, LibTransfer.To siloPaybackToMode) external; + function claimFromL1Message( + address caller, + address receiver, + LibTransfer.To siloPaybackToMode + ) external; } diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 8266a632..a2a18b7c 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -207,7 +207,11 @@ contract ContractDistributionTest is TestHelper { // try to claim from non-L1 messenger, expect revert vm.startPrank(address(contractAccount1)); vm.expectRevert("ContractPaybackDistributor: Caller not L1 messenger"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); + contractPaybackDistributor.claimFromL1Message( + contractAccount1, + receiver1, + LibTransfer.To.EXTERNAL + ); vm.stopPrank(); // try to claim from non-L1 sender, expect revert @@ -218,7 +222,11 @@ contract ContractDistributionTest is TestHelper { abi.encode(makeAddr("nonL1Sender")) ); vm.expectRevert("ContractPaybackDistributor: Bad origin"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); + contractPaybackDistributor.claimFromL1Message( + contractAccount1, + receiver1, + LibTransfer.To.EXTERNAL + ); vm.stopPrank(); // claim using the L1 message. Mock that the call was initiated by the L1 sender contract @@ -229,7 +237,11 @@ contract ContractDistributionTest is TestHelper { abi.encodeWithSelector(L1_MESSENGER.xDomainMessageSender.selector), abi.encode(L1_SENDER) ); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); + contractPaybackDistributor.claimFromL1Message( + contractAccount1, + receiver1, + LibTransfer.To.EXTERNAL + ); vm.stopPrank(); // assert the receiver address holds all the assets for receiver1 @@ -265,7 +277,11 @@ contract ContractDistributionTest is TestHelper { abi.encode(L1_SENDER) ); vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); + contractPaybackDistributor.claimFromL1Message( + contractAccount1, + receiver1, + LibTransfer.To.EXTERNAL + ); vm.stopPrank(); // try to claim again for same account directly, expect revert From 9c08f4cf387cb9cdf8d39c004d0cff7c1d4556bf Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 13:13:03 +0300 Subject: [PATCH 159/270] set only receiver insted of claim from L1 --- .../ContractPaybackDistributor.sol | 21 ++++++------- .../L1ContractMessenger.sol | 12 ++++---- .../IContractPaybackDistributor.sol | 2 +- .../ContractDistribution.t.sol | 30 +++++++++++++------ 4 files changed, 37 insertions(+), 28 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 09a61c2e..9ed1f139 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -28,11 +28,9 @@ import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; * Once their address is replicated they can just call claimDirect() and receive their assets. * * 2. Send a cross chain message from Ethereum L1 using the cross chain messenger that when - * received, calls claimFromMessage and receive their assets in an address of their choice + * received, will whitelist an receiver address that will be able to claim the assets of the caller on the L2. * * 3. If an account has just delegated its code to a contract, they can just call claimDirect() and receive their assets. - * - * note: For contract account that have migrated to Arbitrum, no action is needed as their assets will be minted to them directly. */ contract ContractPaybackDistributor is ReentrancyGuard, @@ -144,19 +142,18 @@ contract ContractPaybackDistributor is } /** - * @notice Receives a message from the L1 messenger and distrubutes all assets to a receiver. + * @notice Allows a contract account to set a receiver for their assets on the L2. * @param caller The address of the caller on the L1. (The encoded msg.sender in the message) - * @param receiver The address to transfer all the assets to. + * @param receiver The address that will be able to claim the assets of the caller on the L2. */ - function claimFromL1Message( + function setReceiverFromL1Message( address caller, - address receiver, - LibTransfer.To siloPaybackToMode + address receiver ) public nonReentrant onlyL1Messenger onlyWhitelistedCaller(caller) isValidReceiver(receiver) { - AccountData storage account = accounts[caller]; - require(!account.claimed, "ContractPaybackDistributor: Caller already claimed"); - account.claimed = true; - _transferAllAssetsForAccount(caller, receiver, siloPaybackToMode); + AccountData storage callerData = accounts[caller]; + require(!callerData.claimed, "ContractPaybackDistributor: Caller already claimed"); + accounts[receiver] = callerData; + callerData.claimed = true; } /** diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index 81db494f..4878ce62 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -3,7 +3,6 @@ pragma solidity ^0.8.20; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; import {IContractPaybackDistributor} from "contracts/interfaces/IContractPaybackDistributor.sol"; -import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; /** * @title L1ContractMessenger @@ -19,7 +18,7 @@ contract L1ContractMessenger { // The address of the L2 ContractPaybackDistributor contract address public immutable L2_CONTRACT_PAYBACK_DISTRIBUTOR; - uint32 public constant MAX_GAS_LIMIT = 32_000_000; + uint32 public constant MAX_GAS_LIMIT = 2_000_000; // Contract addresses allowed to call the claimL2BeanstalkAssets function // To release their funds on the L2 from the L2 ContractPaybackDistributor contract @@ -46,15 +45,16 @@ contract L1ContractMessenger { * to claim the assets for a given L2 receiver address * @param l2Receiver The address to transfer the assets to on the L2 * The gas limit is the max gas limit needed on the l2 with a 20% on top of that as buffer - * From fork testing, all contract accounts claimed their assets with a maximum of 26million gas. * (https://docs.optimism.io/app-developers/bridging/messaging#basics-of-communication-between-layers) */ - function claimL2BeanstalkAssets(address l2Receiver, LibTransfer.To siloPaybackToMode) public onlyWhitelistedL1Caller { + function setL2BeanstalkAssetsReceiver( + address l2Receiver + ) public onlyWhitelistedL1Caller { MESSENGER.sendMessage( L2_CONTRACT_PAYBACK_DISTRIBUTOR, // target abi.encodeCall( - IContractPaybackDistributor.claimFromL1Message, - (msg.sender, l2Receiver, siloPaybackToMode) + IContractPaybackDistributor.setReceiverFromL1Message, + (msg.sender, l2Receiver) ), // message MAX_GAS_LIMIT // gas limit ); diff --git a/contracts/interfaces/IContractPaybackDistributor.sol b/contracts/interfaces/IContractPaybackDistributor.sol index d4f4ca74..992329de 100644 --- a/contracts/interfaces/IContractPaybackDistributor.sol +++ b/contracts/interfaces/IContractPaybackDistributor.sol @@ -6,5 +6,5 @@ import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; interface IContractPaybackDistributor { function claimDirect(address receiver, LibTransfer.To siloPaybackToMode) external; - function claimFromL1Message(address caller, address receiver, LibTransfer.To siloPaybackToMode) external; + function setReceiverFromL1Message(address caller, address receiver) external; } diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 8266a632..66515080 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -200,17 +200,18 @@ contract ContractDistributionTest is TestHelper { /** * @notice Test that the contract accounts can claim their rewards from sending an L1 message - * - Only the OP stack messenger at 0x42...7 can call the claimFromL1Message function + * - Only the OP stack messenger at 0x42...7 can call the setReceiverFromL1Message function * - The call is successful only if the xDomainMessageSender is the L1 sender + * - After delegation, the receiver must call claimDirect to get the assets */ function test_contractDistributionFromL1Message() public { - // try to claim from non-L1 messenger, expect revert + // try to set receiver from non-L1 messenger, expect revert vm.startPrank(address(contractAccount1)); vm.expectRevert("ContractPaybackDistributor: Caller not L1 messenger"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); + contractPaybackDistributor.setReceiverFromL1Message(contractAccount1, receiver1); vm.stopPrank(); - // try to claim from non-L1 sender, expect revert + // try to set receiver from non-L1 sender, expect revert vm.startPrank(address(L1_MESSENGER)); vm.mockCall( address(L1_MESSENGER), @@ -218,10 +219,10 @@ contract ContractDistributionTest is TestHelper { abi.encode(makeAddr("nonL1Sender")) ); vm.expectRevert("ContractPaybackDistributor: Bad origin"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); + contractPaybackDistributor.setReceiverFromL1Message(contractAccount1, receiver1); vm.stopPrank(); - // claim using the L1 message. Mock that the call was initiated by the L1 sender contract + // delegate using the L1 message. Mock that the call was initiated by the L1 sender contract // on behalf of contractAccount1 vm.startPrank(address(L1_MESSENGER)); vm.mockCall( @@ -229,7 +230,12 @@ contract ContractDistributionTest is TestHelper { abi.encodeWithSelector(L1_MESSENGER.xDomainMessageSender.selector), abi.encode(L1_SENDER) ); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); + contractPaybackDistributor.setReceiverFromL1Message(contractAccount1, receiver1); + vm.stopPrank(); + + // now receiver1 can claim the assets directly + vm.startPrank(receiver1); + contractPaybackDistributor.claimDirect(receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); // assert the receiver address holds all the assets for receiver1 @@ -257,7 +263,7 @@ contract ContractDistributionTest is TestHelper { "distributor fertilizer balance" ); - // try to claim again from contractAccount1 + // try to delegate again from contractAccount1 vm.startPrank(address(L1_MESSENGER)); vm.mockCall( address(L1_MESSENGER), @@ -265,7 +271,7 @@ contract ContractDistributionTest is TestHelper { abi.encode(L1_SENDER) ); vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); - contractPaybackDistributor.claimFromL1Message(contractAccount1, receiver1, LibTransfer.To.EXTERNAL); + contractPaybackDistributor.setReceiverFromL1Message(contractAccount1, receiver1); vm.stopPrank(); // try to claim again for same account directly, expect revert @@ -273,6 +279,12 @@ contract ContractDistributionTest is TestHelper { vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); contractPaybackDistributor.claimDirect(receiver1, LibTransfer.To.EXTERNAL); vm.stopPrank(); + + // try to claim again from receiver1, expect revert + vm.startPrank(receiver1); + vm.expectRevert("ContractPaybackDistributor: Caller already claimed"); + contractPaybackDistributor.claimDirect(receiver1, LibTransfer.To.EXTERNAL); + vm.stopPrank(); } //////////////////////// HELPER FUNCTIONS //////////////////////// From 0059a8597b751178784d86dd40cc9fc9d5badbaa Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 29 Sep 2025 10:16:42 +0000 Subject: [PATCH 160/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../contractDistribution/L1ContractMessenger.sol | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol index 4878ce62..49c4f471 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/L1ContractMessenger.sol @@ -47,9 +47,7 @@ contract L1ContractMessenger { * The gas limit is the max gas limit needed on the l2 with a 20% on top of that as buffer * (https://docs.optimism.io/app-developers/bridging/messaging#basics-of-communication-between-layers) */ - function setL2BeanstalkAssetsReceiver( - address l2Receiver - ) public onlyWhitelistedL1Caller { + function setL2BeanstalkAssetsReceiver(address l2Receiver) public onlyWhitelistedL1Caller { MESSENGER.sendMessage( L2_CONTRACT_PAYBACK_DISTRIBUTOR, // target abi.encodeCall( From 51d7af11dcb90b53c1ae978fd57033e2b28c5dea Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 13:41:47 +0300 Subject: [PATCH 161/270] add constants for inactive shipments --- contracts/ecosystem/ShipmentPlanner.sol | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/ecosystem/ShipmentPlanner.sol index 3657e4e6..b60e01c0 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/ecosystem/ShipmentPlanner.sol @@ -42,9 +42,14 @@ contract ShipmentPlanner is IShipmentPlanner { uint256 constant FIELD_POINTS = 48_500_000_000_000_000; // 48.5% uint256 constant SILO_POINTS = 48_500_000_000_000_000; // 48.5% uint256 constant BUDGET_POINTS = 3_000_000_000_000_000; // 3% + // Individual payback points uint256 constant PAYBACK_FIELD_POINTS = 1_000_000_000_000_000; // 1% uint256 constant PAYBACK_SILO_POINTS = 1_000_000_000_000_000; // 1% uint256 constant PAYBACK_BARN_POINTS = 1_000_000_000_000_000; // 1% + // Payback points with inactive routes + uint256 constant PAYBACK_SILO_POINTS_NO_BARN = 1_500_000_000_000_000; // 1.5% + uint256 constant PAYBACK_FIELD_POINTS_NO_BARN = 1_500_000_000_000_000; // 1.5% + uint256 constant PAYBACK_FIELD_POINTS_ONLY_FIELD = 3_000_000_000_000_000; // 3% uint256 constant SUPPLY_BUDGET_FLIP = 1_000_000_000e6; @@ -119,11 +124,11 @@ contract ShipmentPlanner is IShipmentPlanner { uint256 maxCap; // silo is second thing to be paid off so if remaining is 0 then all points go to field if (siloRemaining == 0) { - points = PAYBACK_FIELD_POINTS + PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS; + points = PAYBACK_FIELD_POINTS_ONLY_FIELD; maxCap = (beanstalk.time().standardMintedBeans * 3) / 100; // 3% } else if (barnRemaining == 0) { // if barn remaining is 0 then 1.5% of all mints goes to silo and 1.5% goes to the field - points = PAYBACK_FIELD_POINTS + (PAYBACK_SILO_POINTS + PAYBACK_BARN_POINTS) / 4; + points = PAYBACK_FIELD_POINTS_NO_BARN; maxCap = (beanstalk.time().standardMintedBeans * 15) / 1000; // 1.5% } else { // else, all are active and 1% of all mints goes to field, 1% goes to silo, 1% goes to fert @@ -161,7 +166,7 @@ contract ShipmentPlanner is IShipmentPlanner { // the points that should go to the silo to 1,5% (finalAllocation = 1,5% to silo, 1,5% to field) if (barnRemaining == 0) { // half of the paid off fert points go to silo - points = PAYBACK_SILO_POINTS + (PAYBACK_BARN_POINTS / 2); // 1.5% + points = PAYBACK_SILO_POINTS_NO_BARN; // 1.5% maxCap = (beanstalk.time().standardMintedBeans * 15) / 1000; // 1.5% } else { // if silo is not paid off and fert is not paid off then just assign the regular 1% points From 5d8564d4e7e665a098b2580e0ef81110dab9a918 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 15:28:13 +0300 Subject: [PATCH 162/270] add send token call to try catch --- contracts/libraries/LibReceiving.sol | 31 +++++++++++++--------------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/contracts/libraries/LibReceiving.sol b/contracts/libraries/LibReceiving.sol index acea89d5..fb6cdea0 100644 --- a/contracts/libraries/LibReceiving.sol +++ b/contracts/libraries/LibReceiving.sol @@ -155,17 +155,15 @@ library LibReceiving { // barn payback is the second parameter in the data (, address barnPaybackContract) = abi.decode(data, (address, address)); - // transfer the shipment amount to the barn payback contract - LibTransfer.sendToken( - IERC20(s.sys.bean), - shipmentAmount, - barnPaybackContract, - LibTransfer.To.EXTERNAL - ); - - // update the state of the barn payback contract to account for the newly received beans + // send and update the state of the barn payback contract to account for the newly received beans // Do not revert on failure to prevent sunrise from failing try IBarnPayback(barnPaybackContract).barnPaybackReceive(shipmentAmount) { + LibTransfer.sendToken( + IERC20(s.sys.bean), + shipmentAmount, + barnPaybackContract, + LibTransfer.To.EXTERNAL + ); // Confirm successful receipt. emit Receipt(ShipmentRecipient.BARN_PAYBACK, shipmentAmount, data); } catch {} @@ -184,17 +182,16 @@ library LibReceiving { // silo payback is the first parameter in the data (address siloPaybackContract, ) = abi.decode(data, (address, address)); - // transfer the shipment amount to the silo payback contract - LibTransfer.sendToken( - IERC20(s.sys.bean), - shipmentAmount, - siloPaybackContract, - LibTransfer.To.EXTERNAL - ); - // update the state of the silo payback contract to account for the newly received beans // Do not revert on failure to prevent sunrise from failing try ISiloPayback(siloPaybackContract).siloPaybackReceive(shipmentAmount) { + // transfer the shipment amount to the silo payback contract + LibTransfer.sendToken( + IERC20(s.sys.bean), + shipmentAmount, + siloPaybackContract, + LibTransfer.To.EXTERNAL + ); // Confirm successful receipt. emit Receipt(ShipmentRecipient.SILO_PAYBACK, shipmentAmount, data); } catch {} From f1421e4870541d89d3ff593725b63c83fa374c94 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 15:59:37 +0300 Subject: [PATCH 163/270] generalize extneral receive function with call --- contracts/libraries/LibReceiving.sol | 74 ++++++++----------- .../data/updatedShipmentRoutes.json | 2 +- .../BeanstalkShipmentsState.t.sol | 2 +- 3 files changed, 34 insertions(+), 44 deletions(-) diff --git a/contracts/libraries/LibReceiving.sol b/contracts/libraries/LibReceiving.sol index fb6cdea0..834dbdc1 100644 --- a/contracts/libraries/LibReceiving.sol +++ b/contracts/libraries/LibReceiving.sol @@ -53,9 +53,19 @@ library LibReceiving { } else if (recipient == ShipmentRecipient.EXTERNAL_BALANCE) { externalBalanceReceive(shipmentAmount, data); } else if (recipient == ShipmentRecipient.BARN_PAYBACK) { - barnPaybackReceive(shipmentAmount, data); + externalBalanceReceiveWithCall( + shipmentAmount, + data, + IBarnPayback.barnPaybackReceive.selector, + recipient + ); } else if (recipient == ShipmentRecipient.SILO_PAYBACK) { - siloPaybackReceive(shipmentAmount, data); + externalBalanceReceiveWithCall( + shipmentAmount, + data, + ISiloPayback.siloPaybackReceive.selector, + recipient + ); } // New receiveShipment enum values should have a corresponding function call here. } @@ -145,55 +155,35 @@ library LibReceiving { } /** - * @notice Receive Bean at the Barn Payback contract. - * When the Barn Payback contract receives Bean, it needs to update the amount of sprouts that become rinsible. + * @notice Receive bean at the target contract and perfroms an external call to update target contract state. + * @dev Does not revert on failure to prevent sunrise from failing but skips transfer if call fails. * @param shipmentAmount Amount of Bean to receive. - * @param data ABI encoded address of the barn payback contract. + * @param shipmentData ABI encoded address of the target contract. + * @param selector The selector of the function to call on the target contract. + * @param recipient The recipient of the shipment for event emission. */ - function barnPaybackReceive(uint256 shipmentAmount, bytes memory data) private { - AppStorage storage s = LibAppStorage.diamondStorage(); - // barn payback is the second parameter in the data - (, address barnPaybackContract) = abi.decode(data, (address, address)); - - // send and update the state of the barn payback contract to account for the newly received beans - // Do not revert on failure to prevent sunrise from failing - try IBarnPayback(barnPaybackContract).barnPaybackReceive(shipmentAmount) { - LibTransfer.sendToken( - IERC20(s.sys.bean), - shipmentAmount, - barnPaybackContract, - LibTransfer.To.EXTERNAL - ); - // Confirm successful receipt. - emit Receipt(ShipmentRecipient.BARN_PAYBACK, shipmentAmount, data); - } catch {} - } - - /** - * @notice Receive Bean at the Silo Payback contract. - * When the Silo Payback contract receives Bean, it needs to update: - * - the total beans that have been sent to beanstalk unripe - * - the reward accumulators for the unripe bdv tokens - * @param shipmentAmount Amount of Bean to receive. - * @param data ABI encoded address of the silo payback contract. - */ - function siloPaybackReceive(uint256 shipmentAmount, bytes memory data) private { + function externalBalanceReceiveWithCall( + uint256 shipmentAmount, + bytes memory shipmentData, + bytes4 selector, + ShipmentRecipient recipient + ) private { AppStorage storage s = LibAppStorage.diamondStorage(); - // silo payback is the first parameter in the data - (address siloPaybackContract, ) = abi.decode(data, (address, address)); + // target is always the first parameter in the data + address target = abi.decode(shipmentData, (address)); - // update the state of the silo payback contract to account for the newly received beans - // Do not revert on failure to prevent sunrise from failing - try ISiloPayback(siloPaybackContract).siloPaybackReceive(shipmentAmount) { - // transfer the shipment amount to the silo payback contract + // send and update the state of the target contract to account for the newly received beans + (bool success, ) = target.call(abi.encodeWithSelector(selector, shipmentAmount)); + if (success) { + // transfer the shipment amount to the target contract LibTransfer.sendToken( IERC20(s.sys.bean), shipmentAmount, - siloPaybackContract, + target, LibTransfer.To.EXTERNAL ); // Confirm successful receipt. - emit Receipt(ShipmentRecipient.SILO_PAYBACK, shipmentAmount, data); - } catch {} + emit Receipt(recipient, shipmentAmount, shipmentData); + } } } diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index a223dbfe..692c8cfc 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -33,6 +33,6 @@ "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "planSelector": "0x5f6cc37d", "recipient": "0x6", - "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" + "data": "0x00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e" } ] \ No newline at end of file diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index a3c88f87..6f5fb603 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -177,7 +177,7 @@ contract BeanstalkShipmentsStateTest is TestHelper { ); assertEq( routes[5].data, - abi.encode(SILO_PAYBACK, BARN_PAYBACK), + abi.encode(BARN_PAYBACK, SILO_PAYBACK), "Payback barn data mismatch" ); } From 5a031138c69e06cc69bf9523b22dd00b8cf0a8e3 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 18:18:16 +0300 Subject: [PATCH 164/270] add user reward struct in silo payback --- .../beanstalkShipments/SiloPayback.sol | 51 +++++++++++++++---- 1 file changed, 42 insertions(+), 9 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index f57a7789..d7538043 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -20,6 +20,21 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra /// @dev precision used for reward calculations uint256 public constant PRECISION = 1e18; + /** + * @notice User reward data + * @param userRewardPerTokenPaid Per-user checkpoint of rewardPerTokenStored at the last reward update to prevent double claiming + * @param rewards Per-user accumulated rewards ready to claim (updated on transfers/claims) + */ + struct UserRewardData { + mapping(address account => uint256) userRewardPerTokenPaid; + mapping(address account => uint256) rewards; + } + + /** + * @notice Unripe bdv token data for minting + * @param receipient The address of the recipient + * @param bdv The amount of bdv tokens to mint + */ struct UnripeBdvTokenData { address receipient; uint256 bdv; @@ -35,10 +50,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra // Rewards /// @dev Global accumulator tracking total rewards per token since contract inception (scaled by 1e18) uint256 public rewardPerTokenStored; - /// @dev Per-user checkpoint of rewardPerTokenStored at their last reward update to prevent double claiming - mapping(address => uint256) public userRewardPerTokenPaid; - /// @dev Per-user accumulated rewards ready to claim (updated on transfers/claims) - mapping(address => uint256) public rewards; + // User specific reward data + UserRewardData internal userRewardData; // Events event SiloPaybackRewardsClaimed( @@ -115,7 +128,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra // Update the reward state for the account uint256 rewardsToClaim = _updateReward(account); require(rewardsToClaim > 0, "SiloPayback: no rewards to claim"); - rewards[account] = 0; + userRewardData.rewards[account] = 0; // Transfer the rewards to the recipient pintoProtocol.transferToken( @@ -136,8 +149,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra function _updateReward(address account) internal returns (uint256) { if (account == address(0)) return 0; uint256 earnedRewards = earned(account); - rewards[account] = earnedRewards; - userRewardPerTokenPaid[account] = rewardPerTokenStored; + userRewardData.rewards[account] = earnedRewards; + userRewardData.userRewardPerTokenPaid[account] = rewardPerTokenStored; return earnedRewards; } @@ -183,8 +196,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra function earned(address account) public view returns (uint256) { return ((getBalanceCombined(account) * - (rewardPerTokenStored - userRewardPerTokenPaid[account])) / PRECISION) + - rewards[account]; + (rewardPerTokenStored - userRewardData.userRewardPerTokenPaid[account])) / + PRECISION) + userRewardData.rewards[account]; } /** @@ -227,6 +240,26 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra _updateReward(to); } + /////////////////// Getters /////////////////// + + /** + * @notice Get the user's accumulated rewards ready to claim + * @param account The account to get rewards for + * @return The accumulated rewards for the account in underlying token decimals + */ + function rewards(address account) public view returns (uint256) { + return userRewardData.rewards[account]; + } + + /** + * @notice Get the user's checkpoint of rewardPerTokenStored + * @param account The account to get the checkpoint for + * @return The user's reward per token paid checkpoint multiplied by 1e18 + */ + function userRewardPerTokenPaid(address account) public view returns (uint256) { + return userRewardData.userRewardPerTokenPaid[account]; + } + /** * @dev override the decimals to 6 decimal places, BDV has 6 decimals */ From 7aebec377b700378915442316fd2b99f3f0595a0 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 18:33:46 +0300 Subject: [PATCH 165/270] rename pinto erc20 to pintoToken in fert --- .../beanstalkShipments/barn/BarnPayback.sol | 6 +++--- .../barn/BeanstalkFertilizer.sol | 20 +++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index e06f0da0..2074cf02 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -155,13 +155,13 @@ contract BarnPayback is BeanstalkFertilizer { if (amount > 0) { fert.fertilizedPaidIndex += amount; // Transfer the rewards to the caller, pintos are streamed to the contract's external balance - pintoProtocol.transferToken(pinto, account, amount, LibTransfer.From.EXTERNAL, mode); + pintoProtocol.transferToken(pintoToken, account, amount, LibTransfer.From.EXTERNAL, mode); } } /** - * @notice Called by the ShipmentPlanner contract to determine how many pinto to send to the barn payback contract - * @return The amount of pinto remaining to be sent to the barn payback contract + * @notice Called by the ShipmentPlanner contract to determine how many pinto tokens to send to the barn payback contract + * @return The amount of pinto tokens remaining to be sent to the barn payback contract */ function barnRemaining() external view returns (uint256) { return totalUnfertilizedBeans(); diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 291f60ed..a6d5c580 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -22,7 +22,7 @@ import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; * We rewrite transfer and mint functions to allow the balance transfer function be overwritten as well. * Merged from multiple contracts: Fertilizer.sol, Internalizer.sol, Fertilizer1155.sol from the beanstalk protocol. */ -contract BeanstalkFertilizer is +abstract contract BeanstalkFertilizer is ERC1155Upgradeable, OwnableUpgradeable, ReentrancyGuardUpgradeable, @@ -87,7 +87,7 @@ contract BeanstalkFertilizer is // Storage mapping(uint256 id => mapping(address account => Balance)) internal _balances; SystemFertilizer public fert; - IERC20 public pinto; + IERC20 public pintoToken; address public contractDistributor; /// @dev gap for future upgrades @@ -95,11 +95,11 @@ contract BeanstalkFertilizer is /** * @notice Initializes the contract, sets global fertilizer state, and batch mints all fertilizers. - * @param _pinto The address of the Pinto ERC20 token. + * @param _pintoToken The address of the Pinto ERC20 token. * @param initSystemFert The initialglobal fertilizer state data. */ function initialize( - address _pinto, + address _pintoToken, address _pintoProtocol, address _contractDistributor, InitSystemFertilizer calldata initSystemFert @@ -110,12 +110,12 @@ contract BeanstalkFertilizer is __ReentrancyGuard_init(); // State Inits - pinto = IERC20(_pinto); + pintoToken = IERC20(_pintoToken); pintoProtocol = IBeanstalk(_pintoProtocol); contractDistributor = _contractDistributor; setFertilizerState(initSystemFert); - // approve the pinto protocol to spend the incoming pinto tokens for claims - pinto.approve(address(pintoProtocol), type(uint256).max); + // approve the pinto protocol to spend the incoming pintoToken tokens for claims + pintoToken.approve(address(pintoProtocol), type(uint256).max); // Minting will happen after deployment due to potential gas limit issues } @@ -300,7 +300,7 @@ contract BeanstalkFertilizer is } /** - * @notice Updates the reward state for both the sender and recipient and transfers pinto rewards. + * @notice Updates the reward state for both the sender and recipient and transfers pinto token rewards. * Following the 1155 design from OpenZeppelin Contracts < 5.x. * @param from - the account to transfer from * @param to - the account to transfer to @@ -337,7 +337,7 @@ contract BeanstalkFertilizer is // Transfer the rewards to the caller, // note: pintos are streamed to the contract's external balance during the gm call pintoProtocol.transferToken( - pinto, + pintoToken, account, amount, LibTransfer.From.EXTERNAL, @@ -457,7 +457,7 @@ contract BeanstalkFertilizer is } /** - * @notice Returns the total pinto needed to repay the barn + * @notice Returns the total pinto tokens needed to repay the barn */ function totalUnfertilizedBeans() public view returns (uint256 beans) { return fert.unfertilizedIndex - fert.fertilizedIndex; From 8d7a5aa2f3aa5794f5778e1402a8b90ed5dd1232 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 29 Sep 2025 15:35:49 +0000 Subject: [PATCH 166/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/beanstalkShipments/barn/BarnPayback.sol | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index 2074cf02..77bef74f 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -155,7 +155,13 @@ contract BarnPayback is BeanstalkFertilizer { if (amount > 0) { fert.fertilizedPaidIndex += amount; // Transfer the rewards to the caller, pintos are streamed to the contract's external balance - pintoProtocol.transferToken(pintoToken, account, amount, LibTransfer.From.EXTERNAL, mode); + pintoProtocol.transferToken( + pintoToken, + account, + amount, + LibTransfer.From.EXTERNAL, + mode + ); } } From 1384851f221ff3a2b35e53f2e524d9a2648439d1 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 18:36:13 +0300 Subject: [PATCH 167/270] rename pinto erc20 to pintoToken in silo --- .../beanstalkShipments/SiloPayback.sol | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index d7538043..9b47b401 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -12,7 +12,7 @@ import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; /** * @title SiloPayback * @notice SiloPayback is an ERC20 representation of Unripe BDV in Beanstalk calculated as if Beanstalk was fully recapitalized. - * It facilitates the payback of unripe holders by allowing them to claim pinto rewards after the 1 billion supply threshold. + * It facilitates the payback of unripe holders by allowing them to claim pintoToken rewards after the 1 billion supply threshold. * Tokens are initially distributed and yield gets continuously accrued every time new Pinto supply is minted, * until all unripe tokens are worth exactly 1 Pinto underlying. */ @@ -40,11 +40,11 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra uint256 bdv; } - IERC20 public pinto; + IERC20 public pintoToken; /// @dev Tracks total distributed bdv tokens. After initial mint, no more tokens can be distributed. uint128 public totalDistributed; - /// @dev Tracks total received pinto from shipments. + /// @dev Tracks total received pintoToken from shipments. uint128 public totalReceived; // Rewards @@ -65,7 +65,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra // Modifiers modifier onlyPintoProtocol() { - require(msg.sender == address(pintoProtocol), "SiloPayback: only pinto protocol"); + require(msg.sender == address(pintoProtocol), "SiloPayback: only pintoToken protocol"); _; } @@ -74,20 +74,20 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra _disableInitializers(); } - function initialize(address _pinto, address _pintoProtocol) public initializer { + function initialize(address _pintoToken, address _pintoProtocol) public initializer { __ERC20_init("UnripeBdvToken", "urBDV"); __Ownable_init(msg.sender); - pinto = IERC20(_pinto); + pintoToken = IERC20(_pintoToken); pintoProtocol = IBeanstalk(_pintoProtocol); // Approve the Pinto Diamond to spend pinto tokens for transfers - pinto.approve(_pintoProtocol, type(uint256).max); + pintoToken.approve(_pintoProtocol, type(uint256).max); } /** * @notice Distribute unripe bdv tokens to the old beanstalk participants. * Called in batches after deployment to make sure we don't run out of gas. * @dev After distribution is complete "totalDistributed" will reflect the required pinto - * amount to pay off unripe. + * token amount to pay off unripe. * @param unripeReceipts Array of UnripeBdvTokenData */ function batchMint(UnripeBdvTokenData[] memory unripeReceipts) external onlyOwner { @@ -132,7 +132,7 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra // Transfer the rewards to the recipient pintoProtocol.transferToken( - pinto, + pintoToken, recipient, rewardsToClaim, LibTransfer.From.EXTERNAL, @@ -201,8 +201,8 @@ contract SiloPayback is Initializable, ERC20Upgradeable, OwnableUpgradeable, Tra } /** - * @notice Returns the remaining amount of pinto required to pay off the unripe bdv tokens - * Called by the shipment planner to calculate the amount of pinto to ship as underlying rewards. + * @notice Returns the remaining amount of pintoToken required to pay off the unripe bdv tokens + * Called by the shipment planner to calculate the amount of pintoToken to ship as underlying rewards. * When rewards per token reach 1 then all unripe bdv tokens will be paid off. */ function siloRemaining() public view returns (uint256) { From dac0e5322b276dab69bee148d36b43cd3705617f Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 29 Sep 2025 18:46:06 +0300 Subject: [PATCH 168/270] skip fork tests --- foundry.toml | 3 ++- test/foundry/VerifyDeployment.t.sol | 2 +- .../ecosystem/beanstalkShipments/BeanstalkShipments.t.sol | 2 +- .../ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/foundry.toml b/foundry.toml index f36430d7..f7ec7c2a 100644 --- a/foundry.toml +++ b/foundry.toml @@ -47,7 +47,8 @@ gas_reports = ['*'] no_storage_caching = false # Exclude deployment tests so CI works -no_match_contract = "Legacy" +no_match_contract = "Skip" + [profile.differential] match_test = "testDiff" diff --git a/test/foundry/VerifyDeployment.t.sol b/test/foundry/VerifyDeployment.t.sol index 6a6c5254..c100a520 100644 --- a/test/foundry/VerifyDeployment.t.sol +++ b/test/foundry/VerifyDeployment.t.sol @@ -27,7 +27,7 @@ interface IBeanstalkERC20 { /** * @notice Verfifies the deployment parameters of Pinto */ -contract Legacy_VerifyDeploymentTest is TestHelper { +contract Skip_VerifyDeploymentTest is TestHelper { // contracts for testing: address constant PRICE = address(0xD0fd333F7B30c7925DEBD81B7b7a4DFE106c3a5E); diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 35bf4366..8bb65662 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -24,7 +24,7 @@ import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; * 3. Run the test: `forge test --match-contract BeanstalkShipmentsTest --fork-url http://localhost:8545` * Alternatively, the tests need to be ran using a fork after the deployment is done. */ -contract BeanstalkShipmentsTest is TestHelper { +contract Skip_BeanstalkShipmentsTest is TestHelper { // Contracts address constant SHIPMENT_PLANNER = address(0x1152691C30aAd82eB9baE7e32d662B19391e34Db); address constant SILO_PAYBACK = address(0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E); diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index 6f5fb603..50460253 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -21,7 +21,7 @@ import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/Syst * 3. Run the test: `forge test --match-contract BeanstalkShipmentsStateTest --fork-url http://localhost:8545` * Alternatively, the tests need to be ran using a fork after the deployment is done. */ -contract BeanstalkShipmentsStateTest is TestHelper { +contract Skip_BeanstalkShipmentsStateTest is TestHelper { // Contracts address constant SHIPMENT_PLANNER = address(0x1152691C30aAd82eB9baE7e32d662B19391e34Db); address constant SILO_PAYBACK = address(0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E); From 7bffe315db841dd350b6e693d511a0a3b4352181 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 30 Sep 2025 09:07:07 +0300 Subject: [PATCH 169/270] skip fork tests --- test/foundry/Pi6ForkTest.t.sol | 2 +- test/foundry/Pi7ForkTest.t.sol | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/foundry/Pi6ForkTest.t.sol b/test/foundry/Pi6ForkTest.t.sol index 1f0cde4a..57e3dd18 100644 --- a/test/foundry/Pi6ForkTest.t.sol +++ b/test/foundry/Pi6ForkTest.t.sol @@ -15,7 +15,7 @@ import {Strings} from "@openzeppelin/contracts/utils/Strings.sol"; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import "forge-std/console.sol"; -contract Legacy_Pi6ForkTest is TestHelper { +contract Skip_Pi6ForkTest is TestHelper { using Decimal for Decimal.D256; using Strings for uint256; diff --git a/test/foundry/Pi7ForkTest.t.sol b/test/foundry/Pi7ForkTest.t.sol index 9da5918d..e77e719b 100644 --- a/test/foundry/Pi7ForkTest.t.sol +++ b/test/foundry/Pi7ForkTest.t.sol @@ -9,7 +9,7 @@ import {LibBytes} from "contracts/libraries/LibBytes.sol"; import {GaugeId} from "contracts/beanstalk/storage/System.sol"; import "forge-std/console.sol"; -contract Legacy_Pi7ForkTest is TestHelper { +contract Skip_Pi7ForkTest is TestHelper { address constant PINTO_USDC_WELL = 0x3e1133aC082716DDC3114bbEFEeD8B1731eA9cb1; function setUp() public { From 78519ebb628e3b8ab647edfca4f017a4349043b3 Mon Sep 17 00:00:00 2001 From: default-juice Date: Tue, 30 Sep 2025 09:09:18 +0300 Subject: [PATCH 170/270] move tractor enabled to abstract folder --- contracts/ecosystem/{ => abstract}/TractorEnabled.sol | 0 contracts/ecosystem/beanstalkShipments/SiloPayback.sol | 2 +- .../ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename contracts/ecosystem/{ => abstract}/TractorEnabled.sol (100%) diff --git a/contracts/ecosystem/TractorEnabled.sol b/contracts/ecosystem/abstract/TractorEnabled.sol similarity index 100% rename from contracts/ecosystem/TractorEnabled.sol rename to contracts/ecosystem/abstract/TractorEnabled.sol diff --git a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol index 9b47b401..0b8dd4cb 100644 --- a/contracts/ecosystem/beanstalkShipments/SiloPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/SiloPayback.sol @@ -7,7 +7,7 @@ import {ERC20Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; -import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; +import {TractorEnabled} from "contracts/ecosystem/abstract/TractorEnabled.sol"; /** * @title SiloPayback diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index a6d5c580..63cc81b7 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -15,7 +15,7 @@ import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {LibBytes64} from "contracts/libraries/LibBytes64.sol"; import {Strings} from "@openzeppelin/contracts/utils/Strings.sol"; -import {TractorEnabled} from "contracts/ecosystem/TractorEnabled.sol"; +import {TractorEnabled} from "contracts/ecosystem/abstract/TractorEnabled.sol"; /** * @dev Fertilizer tailored implementation of the ERC-1155 standard. From 3eea79887f1f3f483bcf550f1a6aac59cf8be98d Mon Sep 17 00:00:00 2001 From: default-juice Date: Sun, 5 Oct 2025 19:12:08 +0300 Subject: [PATCH 171/270] pack fert struct slots --- .../beanstalkShipments/barn/BarnPayback.sol | 20 +++++----- .../barn/BeanstalkFertilizer.sol | 30 +++++++-------- .../beanstalkShipments/BarnPayback.t.sol | 38 +++++++++---------- 3 files changed, 44 insertions(+), 44 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol index 77bef74f..1d6f3444 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BarnPayback.sol @@ -106,10 +106,10 @@ contract BarnPayback is BeanstalkFertilizer { uint256 amountToFertilize = shipmentAmount + fert.leftoverBeans; // Get the new Beans per Fertilizer and the total new Beans per Fertilizer uint256 remainingBpf = amountToFertilize / fert.activeFertilizer; - uint256 oldBpf = fert.bpf; - uint256 newBpf = oldBpf + remainingBpf; + uint128 oldBpf = fert.bpf; + uint128 newBpf = oldBpf + uint128(remainingBpf); // Get the end BPF of the first Fertilizer to run out. - uint256 firstBpf = fert.fertFirst; + uint128 firstBpf = fert.fertFirst; uint256 deltaFertilized; // If the next fertilizer is going to run out, then step BPF according while (newBpf >= firstBpf) { @@ -120,10 +120,10 @@ contract BarnPayback is BeanstalkFertilizer { firstBpf = fert.fertFirst; // Calculate BPF beyond the first Fertilizer edge. remainingBpf = (amountToFertilize - deltaFertilized) / fert.activeFertilizer; - newBpf = oldBpf + remainingBpf; + newBpf = oldBpf + uint128(remainingBpf); } else { - fert.bpf = uint128(firstBpf); - fert.fertilizedIndex += deltaFertilized; + fert.bpf = firstBpf; + fert.fertilizedIndex += uint128(deltaFertilized); // Else, if there is no more fertilizer. Matches plan cap. // fert.fertilizedIndex == fert.unfertilizedIndex break; @@ -132,13 +132,13 @@ contract BarnPayback is BeanstalkFertilizer { // If there is Fertilizer remaining. if (fert.fertilizedIndex != fert.unfertilizedIndex) { // Distribute the rest of the Fertilized Beans - fert.bpf = uint128(newBpf); // SafeCast unnecessary here. + fert.bpf = newBpf; // SafeCast unnecessary here. deltaFertilized += (remainingBpf * fert.activeFertilizer); - fert.fertilizedIndex += deltaFertilized; + fert.fertilizedIndex += uint128(deltaFertilized); } // There will be up to activeFertilizer Beans leftover Beans that are not fertilized. // These leftovers will be applied on future Fertilizer receipts. - fert.leftoverBeans = amountToFertilize - deltaFertilized; + fert.leftoverBeans = uint128(amountToFertilize - deltaFertilized); emit BarnPaybackRewardsReceived(shipmentAmount); } @@ -153,7 +153,7 @@ contract BarnPayback is BeanstalkFertilizer { address account = _getBeanstalkFarmer(); uint256 amount = __update(account, ids, uint256(fert.bpf)); if (amount > 0) { - fert.fertilizedPaidIndex += amount; + fert.fertilizedPaidIndex += uint128(amount); // Transfer the rewards to the caller, pintos are streamed to the contract's external balance pintoProtocol.transferToken( pintoToken, diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 63cc81b7..553c93e5 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -46,14 +46,14 @@ abstract contract BeanstalkFertilizer is struct InitSystemFertilizer { uint128[] fertilizerIds; uint256[] fertilizerAmounts; - uint256 activeFertilizer; - uint256 fertilizedIndex; - uint256 unfertilizedIndex; - uint256 fertilizedPaidIndex; + uint128 activeFertilizer; + uint128 fertilizedIndex; + uint128 unfertilizedIndex; + uint128 fertilizedPaidIndex; uint128 fertFirst; uint128 fertLast; uint128 bpf; - uint256 leftoverBeans; + uint128 leftoverBeans; } /** @@ -74,14 +74,14 @@ abstract contract BeanstalkFertilizer is struct SystemFertilizer { mapping(uint128 id => uint256 amount) fertilizer; mapping(uint128 id => uint128 nextId) nextFid; - uint256 activeFertilizer; - uint256 fertilizedIndex; - uint256 unfertilizedIndex; - uint256 fertilizedPaidIndex; - uint128 fertFirst; - uint128 fertLast; - uint128 bpf; - uint256 leftoverBeans; + uint128 fertilizedIndex; // ──────┐ 16 (16) + uint128 unfertilizedIndex; // ā”€ā”€ā”€ā”€ā”˜ 16 (32) + uint128 fertilizedPaidIndex; // ──┐ 16 (16) + uint128 leftoverBeans; // ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜ 16 (32) + uint128 activeFertilizer; // ─────┐ 16 (16) + uint128 fertFirst; // ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜ 16 (32) + uint128 fertLast; // ─────────────┐ 16 (16) + uint128 bpf; // ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜ 16 (32) } // Storage @@ -333,7 +333,7 @@ abstract contract BeanstalkFertilizer is function _update(address account, uint256[] memory ids, uint256 bpf) internal { uint256 amount = __update(account, ids, bpf); if (amount > 0) { - fert.fertilizedPaidIndex += amount; + fert.fertilizedPaidIndex += uint128(amount); // Transfer the rewards to the caller, // note: pintos are streamed to the contract's external balance during the gm call pintoProtocol.transferToken( @@ -378,7 +378,7 @@ abstract contract BeanstalkFertilizer is */ function fertilizerPop() internal returns (bool) { uint128 first = fert.fertFirst; - fert.activeFertilizer = fert.activeFertilizer.sub(getAmount(first)); + fert.activeFertilizer = fert.activeFertilizer - uint128(getAmount(first)); uint128 next = getNext(first); if (next == 0) { // If all Unfertilized Beans have been fertilized, delete line. diff --git a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol index f541d770..9c03df70 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BarnPayback.t.sol @@ -24,14 +24,14 @@ contract BarnPaybackTest is TestHelper { event BarnPaybackRewardsReceived(uint256 amount); struct SystemFertilizerStruct { - uint256 activeFertilizer; - uint256 fertilizedIndex; - uint256 unfertilizedIndex; - uint256 fertilizedPaidIndex; + uint128 fertilizedIndex; + uint128 unfertilizedIndex; + uint128 fertilizedPaidIndex; + uint128 leftoverBeans; + uint128 activeFertilizer; uint128 fertFirst; uint128 fertLast; uint128 bpf; - uint256 leftoverBeans; } // Initial state of the system after arbitrum migration for reference @@ -332,14 +332,14 @@ contract BarnPaybackTest is TestHelper { BeanstalkFertilizer.InitSystemFertilizer({ fertilizerIds: fertilizerIds, fertilizerAmounts: fertilizerAmounts, - activeFertilizer: 175, // 100 + 50 + 25 - fertilizedIndex: 0, - unfertilizedIndex: totalFertilizer, - fertilizedPaidIndex: 0, + activeFertilizer: uint128(175), // 100 + 50 + 25 + fertilizedIndex: uint128(0), + unfertilizedIndex: uint128(totalFertilizer), + fertilizedPaidIndex: uint128(0), fertFirst: FERT_ID_1, // Start of linked list fertLast: FERT_ID_3, // End of linked list bpf: INITIAL_BPF, - leftoverBeans: 0 + leftoverBeans: uint128(0) }); } @@ -410,25 +410,25 @@ contract BarnPaybackTest is TestHelper { function _getSystemFertilizer() internal view returns (SystemFertilizerStruct memory) { ( - uint256 activeFertilizer, - uint256 fertilizedIndex, - uint256 unfertilizedIndex, - uint256 fertilizedPaidIndex, + uint128 fertilizedIndex, + uint128 unfertilizedIndex, + uint128 fertilizedPaidIndex, + uint128 leftoverBeans, + uint128 activeFertilizer, uint128 fertFirst, uint128 fertLast, - uint128 bpf, - uint256 leftoverBeans + uint128 bpf ) = barnPayback.fert(); return SystemFertilizerStruct({ - activeFertilizer: uint256(activeFertilizer), fertilizedIndex: fertilizedIndex, unfertilizedIndex: unfertilizedIndex, fertilizedPaidIndex: fertilizedPaidIndex, + leftoverBeans: leftoverBeans, + activeFertilizer: activeFertilizer, fertFirst: fertFirst, fertLast: fertLast, - bpf: bpf, - leftoverBeans: leftoverBeans + bpf: bpf }); } } From 263cf256d3338dd0438ec0cbfca0324cdd9342b1 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sun, 5 Oct 2025 16:14:19 +0000 Subject: [PATCH 172/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol index 553c93e5..031fcaa9 100644 --- a/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol +++ b/contracts/ecosystem/beanstalkShipments/barn/BeanstalkFertilizer.sol @@ -81,7 +81,7 @@ abstract contract BeanstalkFertilizer is uint128 activeFertilizer; // ─────┐ 16 (16) uint128 fertFirst; // ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜ 16 (32) uint128 fertLast; // ─────────────┐ 16 (16) - uint128 bpf; // ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜ 16 (32) + uint128 bpf; // ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜ 16 (32) } // Storage From 6e73bcd65f807057275b78d195ef484fd57bc241 Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 6 Oct 2025 11:13:36 +0300 Subject: [PATCH 173/270] turn ShipmentPlanner into facet --- .../facets/sun/ShipmentPlannerFacet.sol} | 81 +++++++++---------- .../facets/sun/abstract/Distribution.sol | 7 +- .../init/deployment/InitProtocol.sol | 8 +- contracts/interfaces/IBeanstalk.sol | 4 + contracts/interfaces/IMockFBeanstalk.sol | 25 ++++++ contracts/interfaces/IShipmentPlanner.sol | 27 ------- contracts/libraries/LibShipping.sol | 2 +- contracts/mocks/MockShipmentPlanner.sol | 4 +- hardhat.config.js | 2 +- .../data/updatedShipmentRoutes.json | 12 +-- .../deployPaybackContracts.js | 10 +-- test/foundry/VerifyDeployment.t.sol | 11 ++- .../BeanstalkShipments.t.sol | 1 - .../BeanstalkShipmentsState.t.sol | 13 ++- test/foundry/sun/Sun.t.sol | 2 +- test/foundry/utils/BeanstalkDeployer.sol | 3 +- test/foundry/utils/ShipmentDeployer.sol | 54 ++++++------- test/hardhat/utils/constants.js | 6 +- 18 files changed, 129 insertions(+), 143 deletions(-) rename contracts/{ecosystem/ShipmentPlanner.sol => beanstalk/facets/sun/ShipmentPlannerFacet.sol} (84%) delete mode 100644 contracts/interfaces/IShipmentPlanner.sol diff --git a/contracts/ecosystem/ShipmentPlanner.sol b/contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol similarity index 84% rename from contracts/ecosystem/ShipmentPlanner.sol rename to contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol index b60e01c0..85fd8561 100644 --- a/contracts/ecosystem/ShipmentPlanner.sol +++ b/contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol @@ -3,11 +3,17 @@ pragma solidity ^0.8.20; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import {Season} from "contracts/beanstalk/storage/System.sol"; -import {IBudget} from "contracts/interfaces/IBudget.sol"; import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; -import {IShipmentPlanner} from "contracts/interfaces/IShipmentPlanner.sol"; +import {LibAppStorage, AppStorage} from "contracts/libraries/LibAppStorage.sol"; + +/** + * @title ShipmentPlannerFacet + * @notice Contains getters for retrieving ShipmentPlans for various Beanstalk components. + * @dev Lives as a standalone immutable contract. Updating shipment plans requires deploying + * a new instance and updating the ShipmentRoute planContract addresses help in AppStorage. + * @dev Called via staticcall. New plan getters must be view/pure functions. + */ /** * @notice Constraints of how many Beans to send to a given route at the current time. @@ -19,24 +25,7 @@ struct ShipmentPlan { uint256 cap; } -interface IBeanstalk { - function isHarvesting(uint256 fieldId) external view returns (bool); - - function totalUnharvestable(uint256 fieldId) external view returns (uint256); - - function fieldCount() external view returns (uint256); - - function time() external view returns (Season memory); -} - -/** - * @title ShipmentPlanner - * @notice Contains getters for retrieving ShipmentPlans for various Beanstalk components. - * @dev Lives as a standalone immutable contract. Updating shipment plans requires deploying - * a new instance and updating the ShipmentRoute planContract addresses help in AppStorage. - * @dev Called via staticcall. New plan getters must be view/pure functions. - */ -contract ShipmentPlanner is IShipmentPlanner { +contract ShipmentPlannerFacet { uint256 internal constant PRECISION = 1e18; uint256 constant FIELD_POINTS = 48_500_000_000_000_000; // 48.5% @@ -53,14 +42,6 @@ contract ShipmentPlanner is IShipmentPlanner { uint256 constant SUPPLY_BUDGET_FLIP = 1_000_000_000e6; - IBeanstalk immutable beanstalk; - IERC20 immutable bean; - - constructor(address beanstalkAddress, address beanAddress) { - beanstalk = IBeanstalk(beanstalkAddress); - bean = IERC20(beanAddress); - } - /** * @notice Get the current points and cap for Field shipments. * @dev The Field cap is the amount of outstanding Pods unharvestable pods. @@ -69,10 +50,12 @@ contract ShipmentPlanner is IShipmentPlanner { function getFieldPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { + AppStorage storage s = LibAppStorage.diamondStorage(); uint256 fieldId = abi.decode(data, (uint256)); - require(fieldId < beanstalk.fieldCount(), "Field does not exist"); - if (!beanstalk.isHarvesting(fieldId)) return shipmentPlan; - return ShipmentPlan({points: FIELD_POINTS, cap: beanstalk.totalUnharvestable(fieldId)}); + require(fieldId < s.sys.fieldCount, "Field does not exist"); + uint256 unharvestable = totalUnharvestable(fieldId); + if (unharvestable == 0) return shipmentPlan; + return ShipmentPlan({points: FIELD_POINTS, cap: unharvestable}); } /** @@ -91,13 +74,14 @@ contract ShipmentPlanner is IShipmentPlanner { * @dev Has a hard cap of 3% of the current season standard minted Beans. */ function getBudgetPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan) { + AppStorage storage s = LibAppStorage.diamondStorage(); uint256 budgetRatio = budgetMintRatio(); require( budgetRatio > 0, "ShipmentPlanner: Supply above flipping point, no budget allocation" ); uint256 points = (BUDGET_POINTS * budgetRatio) / PRECISION; - uint256 cap = (beanstalk.time().standardMintedBeans * 3) / 100; + uint256 cap = (s.sys.season.standardMintedBeans * 3) / 100; return ShipmentPlan({points: points, cap: cap}); } @@ -108,6 +92,7 @@ contract ShipmentPlanner is IShipmentPlanner { function getPaybackFieldPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { + AppStorage storage s = LibAppStorage.diamondStorage(); uint256 paybackRatio = calcAndEnforceActivePayback(); // since payback is active, fetch the remaining payback amounts (uint256 siloRemaining, uint256 barnRemaining) = paybacksRemaining(data); @@ -125,18 +110,18 @@ contract ShipmentPlanner is IShipmentPlanner { // silo is second thing to be paid off so if remaining is 0 then all points go to field if (siloRemaining == 0) { points = PAYBACK_FIELD_POINTS_ONLY_FIELD; - maxCap = (beanstalk.time().standardMintedBeans * 3) / 100; // 3% + maxCap = (s.sys.season.standardMintedBeans * 3) / 100; // 3% } else if (barnRemaining == 0) { // if barn remaining is 0 then 1.5% of all mints goes to silo and 1.5% goes to the field points = PAYBACK_FIELD_POINTS_NO_BARN; - maxCap = (beanstalk.time().standardMintedBeans * 15) / 1000; // 1.5% + maxCap = (s.sys.season.standardMintedBeans * 15) / 1000; // 1.5% } else { // else, all are active and 1% of all mints goes to field, 1% goes to silo, 1% goes to fert points = PAYBACK_FIELD_POINTS; - maxCap = beanstalk.time().standardMintedBeans / 100; // 1% + maxCap = s.sys.season.standardMintedBeans / 100; // 1% } // the absolute cap of all mints is the remaining field debt - uint256 cap = min(beanstalk.totalUnharvestable(fieldId), maxCap); + uint256 cap = min(totalUnharvestable(fieldId), maxCap); // Scale points by distance to threshold. points = (points * paybackRatio) / PRECISION; @@ -152,6 +137,7 @@ contract ShipmentPlanner is IShipmentPlanner { function getPaybackSiloPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { + AppStorage storage s = LibAppStorage.diamondStorage(); // calculate the payback ratio and enforce that payback is active uint256 paybackRatio = calcAndEnforceActivePayback(); // since payback is active, fetch the remaining paybacks @@ -167,11 +153,11 @@ contract ShipmentPlanner is IShipmentPlanner { if (barnRemaining == 0) { // half of the paid off fert points go to silo points = PAYBACK_SILO_POINTS_NO_BARN; // 1.5% - maxCap = (beanstalk.time().standardMintedBeans * 15) / 1000; // 1.5% + maxCap = (s.sys.season.standardMintedBeans * 15) / 1000; // 1.5% } else { // if silo is not paid off and fert is not paid off then just assign the regular 1% points points = PAYBACK_SILO_POINTS; - maxCap = beanstalk.time().standardMintedBeans / 100; // 1% + maxCap = s.sys.season.standardMintedBeans / 100; // 1% } // the absolute cap of all mints is the remaining silo debt uint256 cap = min(siloRemaining, maxCap); @@ -189,6 +175,7 @@ contract ShipmentPlanner is IShipmentPlanner { function getPaybackBarnPlan( bytes memory data ) external view returns (ShipmentPlan memory shipmentPlan) { + AppStorage storage s = LibAppStorage.diamondStorage(); // calculate the payback ratio and enforce that payback is active uint256 paybackRatio = calcAndEnforceActivePayback(); // since payback is active, fetch the remaining barn debt @@ -202,7 +189,7 @@ contract ShipmentPlanner is IShipmentPlanner { } else { points = PAYBACK_BARN_POINTS; // 1% to barn, 2% to the rest // the absolute cap of all mints is the remaining barn debt - cap = min(barnRemaining, beanstalk.time().standardMintedBeans / 100); + cap = min(barnRemaining, s.sys.season.standardMintedBeans / 100); } // Scale the points by the payback ratio @@ -214,8 +201,9 @@ contract ShipmentPlanner is IShipmentPlanner { * @notice Returns a ratio to scale the seasonal mints between budget and payback. */ function budgetMintRatio() private view returns (uint256) { - uint256 beanSupply = bean.totalSupply(); - uint256 seasonalMints = beanstalk.time().standardMintedBeans; + AppStorage storage s = LibAppStorage.diamondStorage(); + uint256 beanSupply = IERC20(s.sys.bean).totalSupply(); + uint256 seasonalMints = s.sys.season.standardMintedBeans; // 0% to budget. if (beanSupply > SUPPLY_BUDGET_FLIP + seasonalMints) { @@ -262,6 +250,15 @@ contract ShipmentPlanner is IShipmentPlanner { ); } + /** + * @notice Returns the number of Pods that are not yet Harvestable. Also known as the Pod Line. + * @param fieldId The index of the Field to query. + */ + function totalUnharvestable(uint256 fieldId) private view returns (uint256) { + AppStorage storage s = LibAppStorage.diamondStorage(); + return s.sys.fields[fieldId].pods - s.sys.fields[fieldId].harvestable; + } + function min(uint256 a, uint256 b) private pure returns (uint256) { return a < b ? a : b; } diff --git a/contracts/beanstalk/facets/sun/abstract/Distribution.sol b/contracts/beanstalk/facets/sun/abstract/Distribution.sol index be75a7a0..05dac6e2 100644 --- a/contracts/beanstalk/facets/sun/abstract/Distribution.sol +++ b/contracts/beanstalk/facets/sun/abstract/Distribution.sol @@ -3,7 +3,6 @@ pragma solidity ^0.8.20; import {SafeCast} from "@openzeppelin/contracts/utils/math/SafeCast.sol"; -import {C} from "contracts/C.sol"; import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; import {ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; import {LibDiamond} from "contracts/libraries/LibDiamond.sol"; @@ -33,12 +32,16 @@ abstract contract Distribution is ReentrancyGuard { /** * @notice Replaces the entire set of ShipmentRoutes with a new set. + * If the planContract is set to address(0), the target is set as the diamond itself. * @dev Changes take effect immediately and will be seen at the next sunrise mint. */ - function setShipmentRoutes(ShipmentRoute[] calldata shipmentRoutes) external { + function setShipmentRoutes(ShipmentRoute[] memory shipmentRoutes) external { LibDiamond.enforceIsOwnerOrContract(); delete s.sys.shipmentRoutes; for (uint256 i; i < shipmentRoutes.length; i++) { + shipmentRoutes[i].planContract == address(0) + ? shipmentRoutes[i].planContract = address(this) + : shipmentRoutes[i].planContract; s.sys.shipmentRoutes.push(shipmentRoutes[i]); } emit ShipmentRoutesSet(shipmentRoutes); diff --git a/contracts/beanstalk/init/deployment/InitProtocol.sol b/contracts/beanstalk/init/deployment/InitProtocol.sol index 319eb537..acecceba 100644 --- a/contracts/beanstalk/init/deployment/InitProtocol.sol +++ b/contracts/beanstalk/init/deployment/InitProtocol.sol @@ -17,7 +17,6 @@ import {LibDiamond} from "contracts/libraries/LibDiamond.sol"; import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol"; import {IDiamondCut} from "contracts/interfaces/IDiamondCut.sol"; import {IDiamondLoupe} from "contracts/interfaces/IDiamondLoupe.sol"; -import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; import {LibGauge} from "contracts/libraries/LibGauge.sol"; /** @@ -172,20 +171,17 @@ contract InitProtocol { * @notice Deploys the shipment planner and sets the shipment routes. */ function initShipping(ShipmentRoute[] calldata routes) internal { - // deploy the shipment planner - address shipmentPlanner = address(new ShipmentPlanner(address(this), s.sys.bean)); // set the shipment routes - _setShipmentRoutes(shipmentPlanner, routes); + _setShipmentRoutes(routes); } /** * @notice Sets the shipment routes to the field, silo and dev budget. * @dev Solidity does not support direct assignment of array structs to Storage. */ - function _setShipmentRoutes(address shipmentPlanner, ShipmentRoute[] calldata routes) internal { + function _setShipmentRoutes(ShipmentRoute[] calldata routes) internal { for (uint256 i; i < routes.length; i++) { ShipmentRoute memory route = routes[i]; - route.planContract = shipmentPlanner; s.sys.shipmentRoutes.push(route); } emit Distribution.ShipmentRoutesSet(routes); diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index e84596a8..ffff5346 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -253,4 +253,8 @@ interface IBeanstalk { function setShipmentRoutes(ShipmentRoute[] calldata shipmentRoutes) external; function addField() external; + + function fieldCount() external view returns (uint256); + + function isHarvesting(uint256 fieldId) external view returns (bool); } diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index b6acc804..151a78a4 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -285,6 +285,11 @@ interface IMockFBeanstalk { bool oracleFailure; } + struct ShipmentPlan { + uint256 points; + uint256 cap; + } + error AddressEmptyCode(address target); error AddressInsufficientBalance(address account); error ECDSAInvalidSignature(); @@ -1929,4 +1934,24 @@ interface IMockFBeanstalk { function hasTokenHook(address token) external view returns (bool); function getTokenHook(address token) external view returns (Implementation memory); + + function getFieldPlan( + bytes memory data + ) external view returns (ShipmentPlan memory shipmentPlan); + + function getSiloPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan); + + function getBudgetPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan); + + function getPaybackFieldPlan( + bytes memory data + ) external view returns (ShipmentPlan memory shipmentPlan); + + function getPaybackSiloPlan( + bytes memory data + ) external view returns (ShipmentPlan memory shipmentPlan); + + function getPaybackBarnPlan( + bytes memory data + ) external view returns (ShipmentPlan memory shipmentPlan); } diff --git a/contracts/interfaces/IShipmentPlanner.sol b/contracts/interfaces/IShipmentPlanner.sol deleted file mode 100644 index ad81db66..00000000 --- a/contracts/interfaces/IShipmentPlanner.sol +++ /dev/null @@ -1,27 +0,0 @@ -// SPDX-License-Identifier: MIT - -pragma solidity ^0.8.20; - -import {ShipmentPlan} from "contracts/ecosystem/ShipmentPlanner.sol"; - -interface IShipmentPlanner { - function getFieldPlan( - bytes memory data - ) external view returns (ShipmentPlan memory shipmentPlan); - - function getSiloPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan); - - function getBudgetPlan(bytes memory) external view returns (ShipmentPlan memory shipmentPlan); - - function getPaybackFieldPlan( - bytes memory data - ) external view returns (ShipmentPlan memory shipmentPlan); - - function getPaybackSiloPlan( - bytes memory data - ) external view returns (ShipmentPlan memory shipmentPlan); - - function getPaybackBarnPlan( - bytes memory data - ) external view returns (ShipmentPlan memory shipmentPlan); -} diff --git a/contracts/libraries/LibShipping.sol b/contracts/libraries/LibShipping.sol index 4b0c9b46..b905054c 100644 --- a/contracts/libraries/LibShipping.sol +++ b/contracts/libraries/LibShipping.sol @@ -5,7 +5,7 @@ pragma solidity ^0.8.20; import {AppStorage, LibAppStorage} from "contracts/libraries/LibAppStorage.sol"; import {LibReceiving} from "contracts/libraries/LibReceiving.sol"; import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; -import {ShipmentPlan} from "contracts/ecosystem/ShipmentPlanner.sol"; +import {ShipmentPlan} from "contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol"; /** * @title LibShipping diff --git a/contracts/mocks/MockShipmentPlanner.sol b/contracts/mocks/MockShipmentPlanner.sol index 8611880f..fc4cf01e 100644 --- a/contracts/mocks/MockShipmentPlanner.sol +++ b/contracts/mocks/MockShipmentPlanner.sol @@ -3,8 +3,8 @@ pragma solidity ^0.8.20; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; -import {ShipmentPlan, IBeanstalk} from "contracts/ecosystem/ShipmentPlanner.sol"; - +import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; +import {ShipmentPlan} from "contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol"; /** * @title ShipmentPlanner * @notice Same as standard Shipment planner, but implements two Fields with different points. diff --git a/hardhat.config.js b/hardhat.config.js index d25532c9..45742d55 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -2234,7 +2234,7 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio await upgradeWithNewFacets({ diamondAddress: L2_PINTO, - facetNames: ["SeasonFacet", "TokenHookFacet"], + facetNames: ["SeasonFacet", "TokenHookFacet", "ShipmentPlannerFacet"], libraryNames: [ "LibEvaluate", "LibGauge", diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index 692c8cfc..96734405 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -1,36 +1,36 @@ [ { - "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x7c655075", "recipient": "0x1", "data": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { - "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x12e8d3ed", "recipient": "0x2", "data": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { - "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x05655264", "recipient": "0x3", "data": "0x000000000000000000000000b0cdb715D8122bd976a30996866Ebe5e51bb18b0" }, { - "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x6fc9267a", "recipient": "0x2", "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b0000000000000000000000000000000000000000000000000000000000000001" }, { - "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0xb34da3d2", "recipient": "0x5", "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" }, { - "planContract": "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x5f6cc37d", "recipient": "0x6", "data": "0x00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e" diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 01c885c5..3257cc48 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -2,7 +2,7 @@ const fs = require("fs"); const { splitEntriesIntoChunks, updateProgress, retryOperation } = require("../../utils/read.js"); const { BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR } = require("../../test/hardhat/utils/constants.js"); -// Deploys SiloPayback, BarnPayback, ShipmentPlanner, and ContractPaybackDistributor contracts +// Deploys SiloPayback, BarnPayback, and ContractPaybackDistributor contracts async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = true }) { if (verbose) { console.log("šŸš€ Deploying Beanstalk shipment contracts..."); @@ -39,13 +39,6 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru console.log("āœ… BarnPayback deployed to:", barnPaybackContract.address); console.log("šŸ‘¤ BarnPayback owner:", await barnPaybackContract.owner()); - //////////////////////////// Shipment Planner //////////////////////////// - console.log("\nšŸ“¦ Deploying ShipmentPlanner..."); - const shipmentPlannerFactory = await ethers.getContractFactory("ShipmentPlanner", account); - const shipmentPlannerContract = await shipmentPlannerFactory.deploy(L2_PINTO, PINTO); - await shipmentPlannerContract.deployed(); - console.log("āœ… ShipmentPlanner deployed to:", shipmentPlannerContract.address); - //////////////////////////// Contract Payback Distributor //////////////////////////// console.log("\nšŸ“¦ Deploying ContractPaybackDistributor..."); const contractPaybackDistributorFactory = await ethers.getContractFactory( @@ -71,7 +64,6 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru return { siloPaybackContract, barnPaybackContract, - shipmentPlannerContract, contractPaybackDistributorContract }; } diff --git a/test/foundry/VerifyDeployment.t.sol b/test/foundry/VerifyDeployment.t.sol index c100a520..c5543ccb 100644 --- a/test/foundry/VerifyDeployment.t.sol +++ b/test/foundry/VerifyDeployment.t.sol @@ -11,7 +11,6 @@ import {IWell, Call} from "contracts/interfaces/basin/IWell.sol"; import "forge-std/StdUtils.sol"; import {BeanstalkPrice, WellPrice} from "contracts/ecosystem/price/BeanstalkPrice.sol"; import {P} from "contracts/ecosystem/price/P.sol"; -import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; import {ILiquidityWeightFacet} from "contracts/beanstalk/facets/sun/LiquidityWeightFacet.sol"; interface IBeanstalkPrice { @@ -499,23 +498,23 @@ contract Skip_VerifyDeploymentTest is TestHelper { console.log("-------------------------------"); } // silo (0x01) - assertEq(routes[0].planSelector, ShipmentPlanner.getSiloPlan.selector); + assertEq(routes[0].planSelector, IMockFBeanstalk.getSiloPlan.selector); assertEq(uint8(routes[0].recipient), uint8(ShipmentRecipient.SILO)); assertEq(routes[0].data, new bytes(32)); // field (0x02) - assertEq(routes[1].planSelector, ShipmentPlanner.getFieldPlan.selector); + assertEq(routes[1].planSelector, IMockFBeanstalk.getFieldPlan.selector); assertEq(uint8(routes[1].recipient), uint8(ShipmentRecipient.FIELD)); assertEq(routes[1].data, abi.encodePacked(uint256(0))); // budget (0x03) - assertEq(routes[2].planSelector, ShipmentPlanner.getBudgetPlan.selector); + assertEq(routes[2].planSelector, IMockFBeanstalk.getBudgetPlan.selector); assertEq(uint8(routes[2].recipient), uint8(ShipmentRecipient.INTERNAL_BALANCE)); assertEq(routes[2].data, abi.encode(DEV_BUDGET)); // payback field (0x02) - assertEq(routes[3].planSelector, ShipmentPlanner.getPaybackFieldPlan.selector); + assertEq(routes[3].planSelector, IMockFBeanstalk.getPaybackFieldPlan.selector); assertEq(uint8(routes[3].recipient), uint8(ShipmentRecipient.FIELD)); assertEq(routes[3].data, abi.encode(PAYBACK_FIELD_ID, PCM)); // payback contract (0x04) - // assertEq(routes[4].planSelector, ShipmentPlanner.getPaybackPlan.selector); + // assertEq(routes[4].planSelector, IMockFBeanstalk.getPaybackPlan.selector); assertEq(uint8(routes[4].recipient), uint8(ShipmentRecipient.EXTERNAL_BALANCE)); assertEq(routes[4].data, abi.encode(PCM)); } diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 8bb65662..654f569a 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -9,7 +9,6 @@ import {console} from "forge-std/console.sol"; import {IBarnPayback, LibTransfer as BarnLibTransfer, BeanstalkFertilizer} from "contracts/interfaces/IBarnPayback.sol"; import {ISiloPayback, LibTransfer as SiloLibTransfer} from "contracts/interfaces/ISiloPayback.sol"; import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; -import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; import {LibReceiving} from "contracts/libraries/LibReceiving.sol"; diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index 50460253..5887fbf5 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -9,7 +9,6 @@ import {console} from "forge-std/console.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; -import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ShipmentRecipient, ShipmentRoute} from "contracts/beanstalk/storage/System.sol"; @@ -99,7 +98,7 @@ contract Skip_BeanstalkShipmentsStateTest is TestHelper { // silo (0x01) assertEq( routes[0].planSelector, - ShipmentPlanner.getSiloPlan.selector, + IMockFBeanstalk.getSiloPlan.selector, "Silo plan selector mismatch" ); assertEq( @@ -111,7 +110,7 @@ contract Skip_BeanstalkShipmentsStateTest is TestHelper { // field (0x02) assertEq( routes[1].planSelector, - ShipmentPlanner.getFieldPlan.selector, + IMockFBeanstalk.getFieldPlan.selector, "Field plan selector mismatch" ); assertEq( @@ -123,7 +122,7 @@ contract Skip_BeanstalkShipmentsStateTest is TestHelper { // budget (0x03) assertEq( routes[2].planSelector, - ShipmentPlanner.getBudgetPlan.selector, + IMockFBeanstalk.getBudgetPlan.selector, "Budget plan selector mismatch" ); assertEq( @@ -135,7 +134,7 @@ contract Skip_BeanstalkShipmentsStateTest is TestHelper { // payback field (0x02) assertEq( routes[3].planSelector, - ShipmentPlanner.getPaybackFieldPlan.selector, + IMockFBeanstalk.getPaybackFieldPlan.selector, "Payback field plan selector mismatch" ); assertEq( @@ -151,7 +150,7 @@ contract Skip_BeanstalkShipmentsStateTest is TestHelper { // payback silo (0x05) assertEq( routes[4].planSelector, - ShipmentPlanner.getPaybackSiloPlan.selector, + IMockFBeanstalk.getPaybackSiloPlan.selector, "Payback silo plan selector mismatch" ); assertEq( @@ -167,7 +166,7 @@ contract Skip_BeanstalkShipmentsStateTest is TestHelper { // payback barn (0x06) assertEq( routes[5].planSelector, - ShipmentPlanner.getPaybackBarnPlan.selector, + IMockFBeanstalk.getPaybackBarnPlan.selector, "Payback barn plan selector mismatch" ); assertEq( diff --git a/test/foundry/sun/Sun.t.sol b/test/foundry/sun/Sun.t.sol index dc792ae5..676c1d8f 100644 --- a/test/foundry/sun/Sun.t.sol +++ b/test/foundry/sun/Sun.t.sol @@ -8,7 +8,7 @@ import {IWell, IERC20, Call} from "contracts/interfaces/basin/IWell.sol"; import {LibWhitelistedTokens} from "contracts/libraries/Silo/LibWhitelistedTokens.sol"; import {LibWellMinting} from "contracts/libraries/Minting/LibWellMinting.sol"; import {Decimal} from "contracts/libraries/Decimal.sol"; -import {ShipmentPlanner} from "contracts/ecosystem/ShipmentPlanner.sol"; +import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; import {LibPRBMathRoundable} from "contracts/libraries/Math/LibPRBMathRoundable.sol"; import {PRBMath} from "@prb/math/contracts/PRBMath.sol"; import {LibEvaluate} from "contracts/libraries/LibEvaluate.sol"; diff --git a/test/foundry/utils/BeanstalkDeployer.sol b/test/foundry/utils/BeanstalkDeployer.sol index 0ca37483..184b0d87 100644 --- a/test/foundry/utils/BeanstalkDeployer.sol +++ b/test/foundry/utils/BeanstalkDeployer.sol @@ -51,7 +51,8 @@ contract BeanstalkDeployer is Utils { "ClaimFacet", "OracleFacet", "GaugeGettersFacet", - "TractorFacet" + "TractorFacet", + "ShipmentPlannerFacet" ]; // Facets that have a mock counter part should be appended here. diff --git a/test/foundry/utils/ShipmentDeployer.sol b/test/foundry/utils/ShipmentDeployer.sol index 356d29f0..cb833b32 100644 --- a/test/foundry/utils/ShipmentDeployer.sol +++ b/test/foundry/utils/ShipmentDeployer.sol @@ -9,12 +9,11 @@ import {MockPayback} from "contracts/mocks/MockPayback.sol"; import {MockBudget} from "contracts/mocks/MockBudget.sol"; import {Utils, console} from "test/foundry/utils/Utils.sol"; import {C} from "contracts/C.sol"; -import {ShipmentPlanner, ShipmentPlan} from "contracts/ecosystem/ShipmentPlanner.sol"; -import {IShipmentPlanner} from "contracts/interfaces/IShipmentPlanner.sol"; +import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; import {MockShipmentPlanner} from "contracts/mocks/MockShipmentPlanner.sol"; // Extend the interface to support Fields with different points. -interface IMockShipmentPlanner is IShipmentPlanner { +interface IMockShipmentPlanner is IMockFBeanstalk { function getFieldPlanMulti(bytes memory data) external view returns (ShipmentPlan memory); function getPaybackPlan(bytes memory data) external view returns (ShipmentPlan memory); } @@ -24,7 +23,9 @@ interface IMockShipmentPlanner is IShipmentPlanner { * @notice Test helper contract to deploy ShipmentPlanner and set Routes. */ contract ShipmentDeployer is Utils { - address shipmentPlanner; + // address(0) == address(this) == ShipmentPlannerFacet + address defaultShipmentPlanner; + // Mock external contract to test decoupling from ShipmentPlannerFacet address mockShipmentPlanner; // Deploy fake budget address. @@ -47,14 +48,12 @@ contract ShipmentDeployer is Utils { payback = address(new MockPayback(BEAN)); // Deploy the planner, which will determine points and caps of each route. - shipmentPlanner = address(new ShipmentPlanner(BEANSTALK, BEAN)); + defaultShipmentPlanner = address(0); mockShipmentPlanner = address(new MockShipmentPlanner(BEANSTALK, BEAN)); // TODO: Update this with new routes. // Set up two routes: the Silo and a Field. setRoutes_siloAndField(); - - if (verbose) console.log("ShipmentPlanner deployed at: ", shipmentPlanner); } /** @@ -63,8 +62,8 @@ contract ShipmentDeployer is Utils { function setRoutes_silo() internal { IBeanstalk.ShipmentRoute[] memory shipmentRoutes = new IBeanstalk.ShipmentRoute[](1); shipmentRoutes[0] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getSiloPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getSiloPlan.selector, recipient: IBeanstalk.ShipmentRecipient.SILO, data: abi.encode("") }); @@ -79,14 +78,14 @@ contract ShipmentDeployer is Utils { function setRoutes_siloAndField() internal { IBeanstalk.ShipmentRoute[] memory shipmentRoutes = new IBeanstalk.ShipmentRoute[](2); shipmentRoutes[0] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getSiloPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getSiloPlan.selector, recipient: IBeanstalk.ShipmentRecipient.SILO, data: abi.encode("") }); shipmentRoutes[1] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getFieldPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getFieldPlan.selector, recipient: IBeanstalk.ShipmentRecipient.FIELD, data: abi.encode(uint256(0)) }); @@ -100,15 +99,15 @@ contract ShipmentDeployer is Utils { 1 + fieldCount ); shipmentRoutes[0] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getSiloPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getSiloPlan.selector, recipient: IBeanstalk.ShipmentRecipient.SILO, data: abi.encode("") }); for (uint256 i = 0; i < fieldCount; i++) { shipmentRoutes[i + 1] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getFieldPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getFieldPlan.selector, recipient: IBeanstalk.ShipmentRecipient.FIELD, data: abi.encode(i) }); @@ -130,10 +129,11 @@ contract ShipmentDeployer is Utils { ); shipmentRoutes[0] = IBeanstalk.ShipmentRoute({ planContract: mockShipmentPlanner, - planSelector: IShipmentPlanner.getSiloPlan.selector, + planSelector: IMockFBeanstalk.getSiloPlan.selector, recipient: IBeanstalk.ShipmentRecipient.SILO, data: abi.encodePacked("") }); + // MockShipmentPlanner shipmentRoutes[1] = IBeanstalk.ShipmentRoute({ planContract: mockShipmentPlanner, planSelector: IMockShipmentPlanner.getFieldPlanMulti.selector, @@ -164,35 +164,35 @@ contract ShipmentDeployer is Utils { // Silo. shipmentRoutes[0] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getSiloPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getSiloPlan.selector, recipient: IBeanstalk.ShipmentRecipient.SILO, data: abi.encode("") }); // Active Field. shipmentRoutes[1] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getFieldPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getFieldPlan.selector, recipient: IBeanstalk.ShipmentRecipient.FIELD, data: abi.encode(uint256(0)) }); // Second Field (1/3 of payback). shipmentRoutes[2] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getPaybackFieldPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getPaybackFieldPlan.selector, recipient: IBeanstalk.ShipmentRecipient.FIELD, data: abi.encode(uint256(1), payback) }); // Budget. shipmentRoutes[3] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, - planSelector: IShipmentPlanner.getBudgetPlan.selector, + planContract: defaultShipmentPlanner, + planSelector: IMockFBeanstalk.getBudgetPlan.selector, recipient: IBeanstalk.ShipmentRecipient.INTERNAL_BALANCE, data: abi.encode(budget) }); // Payback. shipmentRoutes[4] = IBeanstalk.ShipmentRoute({ - planContract: shipmentPlanner, + planContract: defaultShipmentPlanner, planSelector: IMockShipmentPlanner.getPaybackPlan.selector, recipient: IBeanstalk.ShipmentRecipient.EXTERNAL_BALANCE, data: abi.encode(payback) // sends to payback contract diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index de445f3a..61c5140a 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -129,10 +129,8 @@ module.exports = { // Expected proxy address of the barn payback contract from deployer at nonce 3 BEANSTALK_BARN_PAYBACK: "0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b", BEANSTALK_BARN_PAYBACK_IMPLEMENTATION: "0xeB447cE47107f0c7406716d60Ede2107CE73e5f2", - // Expected proxy address of the shipment planner contract from deployer at nonce 4 - BEANSTALK_SHIPMENT_PLANNER: "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - // Expected address of the contract payback distributor contract from deployer at nonce 5 - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR: "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + // Expected address of the contract payback distributor contract from deployer at nonce 4 + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR: "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", // EOA that will populate the repayment field BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR: "0xc4c66c8b199443a8dea5939ce175c3592e349791", From bed840ebe08ebc0159f0ec60c1ee604f3077fd1c Mon Sep 17 00:00:00 2001 From: default-juice Date: Mon, 6 Oct 2025 11:20:56 +0300 Subject: [PATCH 174/270] adjust natspec --- .../beanstalk/facets/sun/ShipmentPlannerFacet.sol | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol b/contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol index 85fd8561..19782c23 100644 --- a/contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol +++ b/contracts/beanstalk/facets/sun/ShipmentPlannerFacet.sol @@ -7,14 +7,6 @@ import {ISiloPayback} from "contracts/interfaces/ISiloPayback.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; import {LibAppStorage, AppStorage} from "contracts/libraries/LibAppStorage.sol"; -/** - * @title ShipmentPlannerFacet - * @notice Contains getters for retrieving ShipmentPlans for various Beanstalk components. - * @dev Lives as a standalone immutable contract. Updating shipment plans requires deploying - * a new instance and updating the ShipmentRoute planContract addresses help in AppStorage. - * @dev Called via staticcall. New plan getters must be view/pure functions. - */ - /** * @notice Constraints of how many Beans to send to a given route at the current time. * @param points Weight of this shipment route relative to all routes. Expects precision of 1e18. @@ -25,6 +17,11 @@ struct ShipmentPlan { uint256 cap; } +/** + * @title ShipmentPlannerFacet + * @notice Contains getters for retrieving ShipmentPlans for various Beanstalk components. + * @dev Called via staticcall. New plan getters must be view/pure functions. + */ contract ShipmentPlannerFacet { uint256 internal constant PRECISION = 1e18; From bf9ad57c4f2b2d55f75617ac94b9b8061f1685c5 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Tue, 18 Nov 2025 20:35:12 -0500 Subject: [PATCH 175/270] Add Foundry configuration and Beanstalk Shipments testing infrastructure --- foundry.lock | 14 + foundry.toml | 1 - tasks/beanstalk-shipments.js | 371 ++++++++++++++++++ tasks/index.js | 1 + .../BeanstalkShipments.t.sol | 2 +- .../BeanstalkShipmentsState.t.sol | 2 +- 6 files changed, 388 insertions(+), 3 deletions(-) create mode 100644 foundry.lock create mode 100644 tasks/beanstalk-shipments.js diff --git a/foundry.lock b/foundry.lock new file mode 100644 index 00000000..d7d90705 --- /dev/null +++ b/foundry.lock @@ -0,0 +1,14 @@ +{ + "lib/forge-std": { + "rev": "6853b9ec7df5dc0c213b05ae67785ad4f4baa0ea" + }, + "lib/openzeppelin-contracts": { + "rev": "d9933585b6c134589d6819909a932de4c1a0db7f" + }, + "lib/openzeppelin-contracts-upgradeable": { + "rev": "28b39d323943eeb8ccb2c6342808dfb37ad1c514" + }, + "lib/prb-math": { + "rev": "2c597391f16e5ada196aca3d77c81fd653574974" + } +} \ No newline at end of file diff --git a/foundry.toml b/foundry.toml index 316d0da6..612ecba6 100644 --- a/foundry.toml +++ b/foundry.toml @@ -11,7 +11,6 @@ cache = true cache_path = 'cache' force = false evm_version = 'cancun' -line_length = 100 # Compiler # https://book.getfoundry.sh/reference/config/solidity-compiler diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js new file mode 100644 index 00000000..a6ce2f04 --- /dev/null +++ b/tasks/beanstalk-shipments.js @@ -0,0 +1,371 @@ +module.exports = function () { + const fs = require("fs"); + const { task } = require("hardhat/config"); + const { + impersonateSigner, + mintEth, + getBeanstalk + } = require("../utils"); + const { + L2_PINTO, + L2_PCM, + PINTO, + L1_CONTRACT_MESSENGER_DEPLOYER, + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, + BEANSTALK_SHIPMENTS_DEPLOYER, + BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR, + BEANSTALK_SILO_PAYBACK, + BEANSTALK_BARN_PAYBACK + } = require("../test/hardhat/utils/constants.js"); + const { upgradeWithNewFacets } = require("../scripts/diamond.js"); + const { + populateBeanstalkField + } = require("../scripts/beanstalkShipments/populateBeanstalkField.js"); + const { + deployAndSetupContracts, + transferContractOwnership + } = require("../scripts/beanstalkShipments/deployPaybackContracts.js"); + const { + parseAllExportData + } = require("../scripts/beanstalkShipments/parsers"); + + //////////////////////// BEANSTALK SHIPMENTS //////////////////////// + +////// PRE-DEPLOYMENT: DEPLOY L1 CONTRACT MESSENGER ////// +// As a backup solution, ethAccounts will be able to send a message on the L1 to claim their assets on the L2 +// from the L2 ContractPaybackDistributor contract. We deploy the L1ContractMessenger contract on the L1 +// and whitelist the ethAccounts that are eligible to claim their assets. +// Make sure account[0] in the hardhat config for mainnet is the L1_CONTRACT_MESSENGER_DEPLOYER at 0xbfb5d09ffcbe67fbed9970b893293f21778be0a6 +// - npx hardhat deployL1ContractMessenger --network mainnet +task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction( + async (taskArgs) => { + const mock = true; + let deployer; + if (mock) { + deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + // log deployer address + console.log("Deployer address:", deployer.address); + + // read the contract accounts from the json file + const contractAccounts = JSON.parse( + fs.readFileSync("./scripts/beanstalkShipments/data/contractAccounts.json") + ); + + const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); + const l1Messenger = await L1Messenger.deploy( + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, + contractAccounts + ); + await l1Messenger.deployed(); + + console.log("L1ContractMessenger deployed to:", l1Messenger.address); + } +); + +////// STEP 0: PARSE EXPORT DATA ////// +// Run this task prior to deploying the contracts on a local fork at the latest base block to +// dynamically identify EOAs that have contract code due to contract code delegation. +// Spin up a local anvil node: +// - anvil --fork-url --chain-id 1337 --no-rate-limit --threads 0 +// Run the parseExportData task: +// - npx hardhat parseExportData --network localhost +task("parseExportData", "parses the export data and checks for contract addresses").setAction( + async (taskArgs) => { + const parseContracts = true; + // Step 0: Parse export data into required format + console.log("\n=ļæ½ STEP 0: PARSING EXPORT DATA"); + console.log("-".repeat(50)); + try { + await parseAllExportData(parseContracts); + console.log(" Export data parsing completed"); + } catch (error) { + console.error("L Failed to parse export data:", error); + throw error; + } + } +); + +////// STEP 1: DEPLOY PAYBACK CONTRACTS ////// +// Deploy and initialize the payback contracts and the ContractPaybackDistributor contract +// Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER at 0x47c365cc9ef51052651c2be22f274470ad6afc53 +// Set mock to false to deploy the payback contracts on base. +// - npx hardhat deployPaybackContracts --network base +task( + "deployPaybackContracts", + "performs all actions to initialize the beanstalk shipments" +).setAction(async (taskArgs) => { + // params + const verbose = true; + const populateData = true; + const mock = true; + + // Use the shipments deployer to get correct addresses + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[1]; + } + + // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract + console.log("STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); + console.log("-".repeat(50)); + await deployAndSetupContracts({ + PINTO, + L2_PINTO, + L2_PCM, + account: deployer, + verbose, + populateData: populateData, + useChunking: true + }); + console.log(" Payback contracts deployed and configured\n"); +}); + +////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// +// To minimize the number of transaction the PCM multisig has to sign, we deploy the TempFieldFacet +// that allows an EOA to add plots to the repayment field. +// Set mock to false to deploy the TempFieldFacet +// - npx hardhat deployTempFieldFacet --network base +// Grab the diamond cut, queue it in the multisig and wait for execution before proceeding to the next step. +task("deployTempFieldFacet", "deploys the TempFieldFacet").setAction(async (taskArgs) => { + // params + const mock = true; + + // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field + console.log( + "STEP 2: ADDING NEW TEMP_REPAYMENT_FIELD_FACET AND THE TOKEN_HOOK_FACET TO THE PINTO DIAMOND" + ); + console.log("-".repeat(50)); + + let deployer; + if (mock) { + deployer = await impersonateSigner(L2_PCM); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + await upgradeWithNewFacets({ + diamondAddress: L2_PINTO, + facetNames: ["TempRepaymentFieldFacet"], + libraryNames: [], + facetLibraries: {}, + initArgs: [], + verbose: true, + object: !mock, + account: deployer + }); +}); + +////// STEP 3: POPULATE THE BEANSTALK FIELD WITH DATA ////// +// After the initialization of the repayment field is done and the shipments have been deployed +// The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed +// Set mock to false to populate the repayment field on base. +// - npx hardhat populateRepaymentField --network base +task("populateRepaymentField", "populates the repayment field with data").setAction( + async (taskArgs) => { + // params + const mock = true; + const verbose = true; + + let repaymentFieldPopulator; + if (mock) { + repaymentFieldPopulator = await impersonateSigner( + BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR + ); + await mintEth(repaymentFieldPopulator.address); + } else { + repaymentFieldPopulator = (await ethers.getSigners())[2]; + } + + // Populate the repayment field with data + console.log("STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); + console.log("-".repeat(50)); + await populateBeanstalkField({ + diamondAddress: L2_PINTO, + account: repaymentFieldPopulator, + verbose: verbose + }); + console.log(" Beanstalk field initialized\n"); + } +); + +////// STEP 4: FINALIZE THE BEANSTALK SHIPMENTS ////// +// The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed +// At the same time, the new shipment routes that include the payback contracts will need to be set. +// Set mock to false to finalize the beanstalk shipments on base. +// - npx hardhat finalizeBeanstalkShipments --network base +task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setAction( + async (taskArgs) => { + // params + const mock = true; + + // Use any account for diamond cuts + let owner; + if (mock) { + owner = await impersonateSigner(L2_PCM); + await mintEth(owner.address); + } else { + owner = (await ethers.getSigners())[0]; + } + + // Step 4: Update shipment routes, create new field and remove the TempRepaymentFieldFacet + // The SeasonFacet will also need to be updated since LibReceiving was modified. + // Selectors removed: + // 0x31f2cd56: REPAYMENT_FIELD_ID() + // 0x49e40d6c: REPAYMENT_FIELD_POPULATOR() + // 0x1fd620f9: initializeRepaymentPlots() + console.log("\nSTEP 4: UPDATING SHIPMENT ROUTES, CREATING NEW FIELD AND REMOVING TEMP FACET"); + const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; + const routes = JSON.parse(fs.readFileSync(routesPath)); + + await upgradeWithNewFacets({ + diamondAddress: L2_PINTO, + facetNames: ["SeasonFacet", "TokenHookFacet", "ShipmentPlannerFacet"], + libraryNames: [ + "LibEvaluate", + "LibGauge", + "LibIncentive", + "LibShipping", + "LibWellMinting", + "LibFlood", + "LibGerminate", + "LibWeather" + ], + facetLibraries: { + SeasonFacet: [ + "LibEvaluate", + "LibGauge", + "LibIncentive", + "LibShipping", + "LibWellMinting", + "LibFlood", + "LibGerminate", + "LibWeather" + ] + }, + initFacetName: "InitBeanstalkShipments", + initArgs: [routes, BEANSTALK_SILO_PAYBACK], + selectorsToRemove: ["0x31f2cd56", "0x49e40d6c", "0x1fd620f9"], + verbose: true, + object: !mock, + account: owner + }); + console.log(" Shipment routes updated and new field created\n"); + } +); + +////// STEP 5: TRANSFER OWNERSHIP OF PAYBACK CONTRACTS TO THE PCM ////// +// The deployer will need to transfer ownership of the payback contracts to the PCM +// - npx hardhat transferContractOwnership --network base +// Set mock to false to transfer ownership of the payback contracts to the PCM on base. +// The owner is the deployer account at 0x47c365cc9ef51052651c2be22f274470ad6afc53 +task( + "transferPaybackContractOwnership", + "transfers ownership of the payback contracts to the PCM" +).setAction(async (taskArgs) => { + const mock = true; + const verbose = true; + + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + const siloPaybackContract = await ethers.getContractAt("SiloPayback", BEANSTALK_SILO_PAYBACK); + const barnPaybackContract = await ethers.getContractAt("BarnPayback", BEANSTALK_BARN_PAYBACK); + const contractPaybackDistributorContract = await ethers.getContractAt( + "ContractPaybackDistributor", + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR + ); + + await transferContractOwnership({ + siloPaybackContract: siloPaybackContract, + barnPaybackContract: barnPaybackContract, + contractPaybackDistributorContract: contractPaybackDistributorContract, + L2_PCM: L2_PCM, + verbose: verbose + }); +}); + +////// SEQUENTIAL ORCHESTRATION TASK ////// +// Runs all beanstalk shipment tasks in the correct sequential order +// Note: deployL1ContractMessenger should be run separately on mainnet before this +// - npx hardhat runBeanstalkShipments --network base +task( + "runBeanstalkShipments", + "Runs all beanstalk shipment deployment steps in sequential order" +) + .addOptionalParam("skipPause", "Set to true to skip pauses between steps", false, types.boolean) + .setAction(async (taskArgs) => { + console.log("\nšŸš€ STARTING BEANSTALK SHIPMENTS DEPLOYMENT"); + console.log("=".repeat(60)); + + // Helper function for pausing, only if !skipPause + async function pauseIfNeeded(message = "Press Enter to continue...") { + if (taskArgs.skipPause) { + return; + } + console.log(message); + await new Promise((resolve) => { + process.stdin.resume(); + process.stdin.once("data", () => { + process.stdin.pause(); + resolve(); + }); + }); + } + + try { + // Step 0: Parse Export Data + console.log("\nšŸ“Š Running Step 0: Parse Export Data"); + await hre.run("parseExportData"); + + // Step 1: Deploy Payback Contracts + console.log("\nšŸ“¦ Running Step 1: Deploy Payback Contracts"); + await hre.run("deployPaybackContracts"); + + // Step 2: Deploy Temp Field Facet + console.log("\nšŸ”§ Running Step 2: Deploy Temp Field Facet"); + await hre.run("deployTempFieldFacet"); + console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); + await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to continue after multisig execution..."); + + // Step 3: Populate Repayment Field + console.log("\n🌾 Running Step 3: Populate Repayment Field"); + await hre.run("populateRepaymentField"); + console.log("\nāš ļø PAUSE: Proceed with the multisig as needed before moving to the next step"); + await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to continue after necessary approvals..."); + + // Step 4: Finalize Beanstalk Shipments + console.log("\nšŸŽÆ Running Step 4: Finalize Beanstalk Shipments"); + await hre.run("finalizeBeanstalkShipments"); + console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); + await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to continue after multisig execution..."); + + // Step 5: Transfer Contract Ownership + console.log("\nšŸ” Running Step 5: Transfer Contract Ownership"); + await hre.run("transferPaybackContractOwnership"); + console.log("\nāš ļø PAUSE: Ownership transfer completed. Proceed with validations as required."); + await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to finish..."); + + console.log("\n" + "=".repeat(60)); + console.log("āœ… BEANSTALK SHIPMENTS DEPLOYMENT COMPLETED SUCCESSFULLY!"); + console.log("=".repeat(60) + "\n"); + } catch (error) { + console.error("\nāŒ ERROR: Beanstalk Shipments deployment failed:", error.message); + throw error; + } + }); + +}; diff --git a/tasks/index.js b/tasks/index.js index 9773cc4e..89ef54d3 100644 --- a/tasks/index.js +++ b/tasks/index.js @@ -10,4 +10,5 @@ module.exports = function () { require("./verification")(); require("./abi-generation")(); require("./tractor")(); + require("./beanstalk-shipments")(); }; diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol index 654f569a..27c00cec 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipments.t.sol @@ -3,7 +3,7 @@ pragma solidity >=0.6.0 <0.9.0; pragma abicoder v2; import {TestHelper} from "test/foundry/utils/TestHelper.sol"; -import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; +import {OperatorWhitelist} from "contracts/ecosystem/tractor/utils/OperatorWhitelist.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; import {console} from "forge-std/console.sol"; import {IBarnPayback, LibTransfer as BarnLibTransfer, BeanstalkFertilizer} from "contracts/interfaces/IBarnPayback.sol"; diff --git a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol index 5887fbf5..deeb093e 100644 --- a/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/BeanstalkShipmentsState.t.sol @@ -3,7 +3,7 @@ pragma solidity >=0.6.0 <0.9.0; pragma abicoder v2; import {TestHelper} from "test/foundry/utils/TestHelper.sol"; -import {OperatorWhitelist} from "contracts/ecosystem/OperatorWhitelist.sol"; +import {OperatorWhitelist} from "contracts/ecosystem/tractor/utils/OperatorWhitelist.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; import {console} from "forge-std/console.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; From a5cef8743af0e3bd37c091eb44900f6e5dc60798 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 19 Nov 2025 16:52:25 -0500 Subject: [PATCH 176/270] feat: Complete Beanstalk Shipments data generation pipeline with Solidity integration --- .../data/beanstalkAccountFertilizer.json | 91 +- .../data/beanstalkPlots.json | 17875 ++++++++-------- .../data/contractAccountDistributorInit.json | 1032 +- .../data/contractAccounts.json | 58 +- .../data/unripeBdvTokens.json | 192 +- .../deployPaybackContracts.js | 9 +- .../parsers/parseContractData.js | 8 +- tasks/beanstalk-shipments.js | 625 +- 8 files changed, 10112 insertions(+), 9778 deletions(-) diff --git a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json index 321c5b4e..42a93267 100644 --- a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json @@ -438,7 +438,7 @@ "3015555", [ [ - "0x3800645f556ee583E20D6491c3a60E9c32744376", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "997", "340802" ] @@ -533,7 +533,7 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "500", "340802" ] @@ -847,11 +847,6 @@ "929", "340802" ], - [ - "0x51AAD11e5A5Bd05B3409358853D0D6A66aa60c40", - "4", - "340802" - ], [ "0xb47959506850b9b34A8f345179eD1C932aaA8bFa", "1968", @@ -861,6 +856,11 @@ "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", "4274", "340802" + ], + [ + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "4", + "340802" ] ] ], @@ -1363,7 +1363,7 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "1031", "340802" ] @@ -1678,7 +1678,7 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "545110", "340802" ] @@ -1713,7 +1713,7 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "56044", "340802" ] @@ -2558,7 +2558,7 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "291896", "340802" ] @@ -2763,7 +2763,7 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "10", "340802" ] @@ -2847,11 +2847,6 @@ "1491", "340802" ], - [ - "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", - "854", - "340802" - ], [ "0xe63E2CDd24695464C015b2f5ef723Ce17e96886B", "1200", @@ -2908,8 +2903,8 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", - "416", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "1270", "340802" ] ] @@ -3083,7 +3078,7 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "964", "340802" ] @@ -3228,7 +3223,7 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", "40749", "340802" ] @@ -3422,11 +3417,6 @@ "18000", "340802" ], - [ - "0x51AAD11e5A5Bd05B3409358853D0D6A66aa60c40", - "10", - "340802" - ], [ "0xd2D533b30Af2c22c5Af822035046d951B2D0bd57", "5973", @@ -3852,11 +3842,6 @@ "12784", "340802" ], - [ - "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", - "7662", - "340802" - ], [ "0xe63E2CDd24695464C015b2f5ef723Ce17e96886B", "1690", @@ -4517,11 +4502,6 @@ "6001", "340802" ], - [ - "0x19dfdc194Bb5CF599af78B1967dbb3783c590720", - "5000", - "340802" - ], [ "0x3D63719699585FD0bb308174d3f0aD8082d8c5A2", "3465", @@ -4647,11 +4627,6 @@ "3002", "340802" ], - [ - "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef", - "1852", - "340802" - ], [ "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", "1852", @@ -5127,11 +5102,6 @@ "1156", "340802" ], - [ - "0x0F9548165C4960624DEbb7e38b504E9Fd524d6Af", - "1002", - "340802" - ], [ "0x5FA8F6284E7d85C7fB21418a47De42580924F24d", "1008", @@ -5192,11 +5162,6 @@ "1010", "340802" ], - [ - "0x85312D6a50928F3ffC7a192444601E6E04A428a2", - "1002", - "340802" - ], [ "0x71B49dd7E69CD8a1e81F7a1e3012C7c12195b7f9", "1000", @@ -5262,11 +5227,6 @@ "997", "340802" ], - [ - "0x53bA90071fF3224AdCa6d3c7960Ad924796FED03", - "1000", - "340802" - ], [ "0x2f0087909A6f638755689d88141F3466F582007d", "1000", @@ -5322,11 +5282,6 @@ "512", "340802" ], - [ - "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", - "942", - "340802" - ], [ "0xA1ae22c9744baceC7f321bE8F29B3eE6eF075205", "523", @@ -5472,11 +5427,6 @@ "577", "340802" ], - [ - "0x25f030D68E56F831011c8821913CED6248Dd0676", - "618", - "340802" - ], [ "0x5aD9b4F1D6bc470D3100533Ed4e32De9B2d011C6", "178", @@ -5807,11 +5757,6 @@ "25", "340802" ], - [ - "0x234831d4CFF3B7027E0424e23F019657005635e1", - "44", - "340802" - ], [ "0xcf5C67136c5AaFcdBa3195E1dA38A3eE792434D6", "1", @@ -5963,8 +5908,8 @@ "340802" ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", - "8105609", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "8124741", "340802" ] ] diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json index 1ab3563d..d80a8d05 100644 --- a/scripts/beanstalkShipments/data/beanstalkPlots.json +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -1547,14651 +1547,14687 @@ ] ], [ - "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", - [ - [ - "361234476058040", - "2406000000" - ] - ] - ], - [ - "0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0", - [ - [ - "267806966956864", - "18402625318" - ] - ] - ], - [ - "0x11D86e9F9C2a1cF597b974E50C660316c92215AA", - [ - [ - "574157923216400", - "18405369858" - ] - ] - ], - [ - "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D", + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", [ [ - "190956833027662", - "37217588263" + "462646168927", + "1666666666" ], [ - "632405487158023", - "1362130095" + "28368015360976", + "10000000000" ], [ - "634781609311398", - "796726164" - ] - ] - ], - [ - "0x120Be1406E6B46dDD7878EDC06069C811f608844", - [ - [ - "495258518671796", - "67814142769" + "28385711672356", + "4000000000" ], [ - "585014816613448", - "44928801374" - ] - ] - ], - [ - "0x122de1514670141D4c22e5675010B6D65386a9F6", - [ - [ - "633445875835283", - "88383049000" + "28553316405699", + "56203360846" ], [ - "634054370395803", - "5577741477" + "31590227810128", + "15764212654" ], [ - "634067673151832", - "56964081161" + "31772724860478", + "43540239232" ], [ - "634208127647444", - "49547619666" + "32013293099710", + "15000000000" ], [ - "648313723414461", - "6009716700" + "33106872744841", + "6434958505" ], [ - "668314224811239", - "15374981070" + "33262951017861", + "9375000000" ], [ - "675086678410802", - "69815285464" + "33290510627174", + "565390687" ], [ - "677494138932275", - "17365876628" + "38722543672289", + "250000000" ], [ - "679748272866001", - "2338515960" + "61000878716919", + "789407727" ], [ - "742201769028015", - "48039789791" - ] - ] - ], - [ - "0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b", - [ - [ - "582532990593085", - "9392558210" - ] - ] - ], - [ - "0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303", - [ - [ - "59999867425096", - "354422482014" - ] - ] - ], - [ - "0x1298751f99f2f715178Cc58fB3779C55e91C26bC", - [ - [ - "648537251637637", - "31971947" - ] - ] - ], - [ - "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", - [ - [ - "681678394686893", - "7527748761" + "72536373875278", + "200000000" ], [ - "742249933817806", - "375414" - ] - ] - ], - [ - "0x12B9D75389409d119Dd9a96DF1D41092204e8f32", - [ - [ - "31566901757266", - "11663342444" - ] - ] - ], - [ - "0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186", - [ - [ - "564785303930728", - "1165879450" - ] - ] - ], - [ - "0x12f1412fECBf2767D10031f01D772d618594Ea28", - [ - [ - "406186663275278", - "1685616675" + "75784287632794", + "2935934380" ], [ - "406188348891953", - "1685577968" + "75995951619880", + "5268032293" ], [ - "452060678873257", - "27897692308" - ] - ] - ], - [ - "0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5", - [ - [ - "586069294420889", - "40303600000" - ] - ] - ], - [ - "0x1348EA8E35236AA0769b91ae291e7291117bf15C", - [ - [ - "489737823532", - "616643076" - ] - ] - ], - [ - "0x136e6F25117aF5e5ff5d353dC41A0e91F013D461", - [ + "76202249214022", + "8000000000" + ], [ - "143944826482554", - "122522870889" - ] - ] - ], - [ - "0x13b1ddb38c80327257Bdcb0e321c834401399967", - [ + "86790953888750", + "38576992385" + ], [ - "644382876705008", - "2502367588" - ] - ] - ], - [ - "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", - [ + "118322555232226", + "5892426278" + ], [ - "145498413266148", - "42841247573" + "180071240663041", + "81992697619" ], [ - "145541254513721", - "42783848059" - ] - ] - ], - [ - "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", - [ + "190509412911548", + "44590358778" + ], [ - "61084721727512", - "2500000000" - ] - ] - ], - [ - "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", - [ + "200625410465815", + "27121737219" + ], [ - "624243091995454", - "203615000" + "203337173447397", + "44485730835" ], [ - "634772027987253", - "1040000000" + "207234905273707", + "17459074945" ], [ - "646732029674264", - "2437432840" + "207270328594324", + "49984112432" ], [ - "672251516338595", - "2387375166" + "208172233828826", + "26535963154" ], [ - "672351094760624", - "421577971" + "209057370939437", + "19654542435" ], [ - "681986234524446", - "291165686" + "209905911270631", + "51680614449" ], [ - "738155444487185", - "20323399607" + "209957591885080", + "193338988216" ], [ - "760471037973169", - "1145095488" + "212591835915023", + "94239272075" ], [ - "840552181305501", - "1108572912315" - ] - ] - ], - [ - "0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b", - [ + "213229524257532", + "56443162240" + ], [ - "158530779405767", - "1610099875" - ] - ] - ], - [ - "0x14A9034C185f04a82FdB93926787f713024c1d04", - [ + "213336723478778", + "46929014315" + ], [ - "859976582989678", - "122609442232" - ] - ] - ], - [ - "0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED", - [ + "213383652493093", + "46820732322" + ], [ - "335857741482697", - "3482540346" + "213658788094189", + "46596908794" ], [ - "335861224023043", - "3782897627" - ] - ] - ], - [ - "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", - [ + "214949047240394", + "135385700183" + ], [ - "782454543582055", - "64162381017" + "215084432940577", + "135094592523" ], [ - "828593773626551", - "157785618045" - ] - ] - ], - [ - "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248", - [ + "215439620132931", + "89335158945" + ], [ - "41353532120650", - "16752841008" + "215528955291876", + "89207795460" ], [ - "41372978028598", - "66903217" + "215618163087336", + "89080704286" ], [ - "264270149653239", - "19569741057" - ] - ] - ], - [ - "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", - [ + "215707243791622", + "88953884657" + ], [ - "489713229332", - "24594200" + "217010587764381", + "46290484227" ], [ - "33226393240138", - "903943566" + "217474381338301", + "1293174476" ], [ - "798286961231309", - "8915991349" - ] - ] - ], - [ - "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", - [ + "217563869893679", + "55156826488" + ], [ - "646991286880723", - "18" - ] - ] - ], - [ - "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", - [ + "220144194502828", + "47404123300" + ], [ - "611728295781189", - "10622053659968" + "221813776173855", + "37911640587" ], [ - "623644302297490", - "529063312964" - ] - ] - ], - [ - "0x15682A522C149029F90108e2792A114E94AB4187", - [ + "233377524301320", + "80126513749" + ], [ - "201115507781971", - "9954888600" + "234363994367301", + "101810011675" ], [ - "201125462670571", - "20006708080" - ] - ] - ], - [ - "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", - [ + "237867225757655", + "94970341987" + ], [ - "12908130692247", - "69000000000" + "238323426120979", + "141765636262" ], [ - "27663859276277", - "11430287315" + "238513085414760", + "141406044017" ], [ - "151982845144538", - "102043966209" + "239248004001388", + "46885972163" ], [ - "202189968549333", - "109329481723" + "239294889973551", + "24269363626" ], [ - "216890054194355", - "109550000000" + "240291234403735", + "27327225251" ], [ - "221296963314728", - "303606880000" + "240589084672177", + "187694536015" ], [ - "223966850287188", - "215672515793" + "241109044343173", + "186820539992" ], [ - "250110190299545", - "136745811108" + "247641838339634", + "101040572048" ], [ - "259103817552461", - "213600000000" + "316297504741935", + "1134976125606" ], [ - "326600447749933", - "56701527977" + "317859517384357", + "291195415400" ], [ - "331820011408947", - "77550000000" + "333622810114113", + "200755943301" ], [ - "337312629850712", - "524000000000" + "338910099578361", + "72913082044" ], [ - "532596882341520", - "74008715512" + "344618618497376", + "81000597500" ], [ - "550767344271171", - "154323271198" + "378227726508635", + "645363133" ], [ - "550963442752539", - "77710549315" + "400534613369686", + "132789821695" ], [ - "551147545041854", - "77448372715" + "401401284712966", + "133555430770" ], [ - "580467264306437", - "385627368167" + "409557925200195", + "13862188950" ], [ - "588844255968994", - "7190333320" + "411664283436334", + "13677512381" ], [ - "588851446302314", - "24416902119" + "411709178648065", + "13606320365" ], [ - "591553190653012", - "192654267895" + "411722784968430", + "33820000000" ], [ - "643053831916029", - "6077435843" + "411756604968430", + "33820000000" ], [ - "643671783551535", - "6908969226" + "415230639081557", + "16910000000" ], [ - "643678692520761", - "6721846521" + "415247549081557", + "16910000000" ], [ - "643685414367282", - "9539096044" - ] - ] - ], - [ - "0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB", - [ - [ - "272758111777231", - "10810000000" - ] - ] - ], - [ - "0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21", - [ - [ - "227831611065108", - "45528525078" - ] - ] - ], - [ - "0x15e6e23b97D513ac117807bb88366f00fE6d6e17", - [ - [ - "498236313145011", - "437186238884" + "415264459081557", + "16915000000" ], [ - "521083859244841", - "1766705104317" + "415281374081557", + "16915000000" ], [ - "530421557497402", - "35719340050" + "415314425991557", + "13544000000" ], [ - "530478666236974", - "125209382874" - ] - ] - ], - [ - "0x15e83602FDE900DdDdafC07bB67E18F64437b21e", - [ - [ - "264704722565446", - "47834854016" - ] - ] - ], - [ - "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", - [ - [ - "72575956226539", - "357542100000" + "415327969991557", + "10158000000" ], [ - "89241731539000", - "1175500000023" + "415338127991557", + "6772000000" ], [ - "365422620670212", - "1865083098796" + "415344899991557", + "16930000000" ], [ - "389039821567282", - "1434547698166" + "415383569069219", + "13548000000" ], [ - "605868357905297", - "390832131713" + "415397117069219", + "13548000000" ], [ - "748316175461834", - "2915005876762" - ] - ] - ], - [ - "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", - [ - [ - "109546800679552", - "200302309" + "415476876421248", + "13564000000" ], [ - "635843453941744", - "920876600" + "415552624743282", + "13389422861" ], [ - "635887570024580", - "8122037505" + "415566014166143", + "14725577338" ], [ - "646819721059395", - "4169534646" + "415580739743481", + "17399191046" ], [ - "705891222986739", - "622068" + "415598138934527", + "13381218325" ], [ - "767503022441087", - "48133673" - ] - ] - ], - [ - "0x16785ca8422Cb4008CB9792fcD756ADbEe42878E", - [ - [ - "267302406877711", - "20209787690" - ] - ] - ], - [ - "0x168c6aC0268a29c3C0645917a4510ccd73F4D923", - [ - [ - "672650193633312", - "29376243060" - ] - ] - ], - [ - "0x16942d62E8ad78A9026E41Fab484C265FC90b228", - [ - [ - "160756595271818", - "3293294269" - ] - ] - ], - [ - "0x16b5e68f83684740b2DA481DB60EAb42362884b9", - [ - [ - "267337779284239", - "10134945528" - ] - ] - ], - [ - "0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7", - [ - [ - "222734022200750", - "13846186217" + "415611520152852", + "13378806625" ], [ - "223632980545856", - "53707306278" + "415624898959477", + "13380333313" ], [ - "261159862360092", - "767049891172" + "415638279292790", + "14715582102" ], [ - "274482355441400", - "3457786919155" - ] - ] - ], - [ - "0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb", - [ - [ - "282548680821223", - "19176051379" - ] - ] - ], - [ - "0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f", - [ - [ - "332106534097640", - "325699631169" - ] - ] - ], - [ - "0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5", - [ - [ - "159510980748318", - "69370798116" + "415652994874892", + "16050036235" ], [ - "340408059304271", - "57935578436" - ] - ] - ], - [ - "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d", - [ - [ - "859906883476476", - "2259704612" + "415669044911127", + "16046566435" ], [ - "859973554233311", - "3028756367" + "415685091477562", + "16043097791" ], [ - "860324021288753", - "3253278012" + "415701134575353", + "13593121522" ], [ - "916943532304574", - "14518741904" - ] - ] - ], - [ - "0x183be3011809A2D41198e528d2b20Cc91b4C9665", - [ - [ - "213937858611219", - "791280000" + "415714727696875", + "13370532569" ], [ - "213938649891219", - "27839621824" + "428524210780265", + "13268338278" ], [ - "215796197676279", - "266104007323" - ] - ] - ], - [ - "0x184CbD89E91039E6B1EF94753B3fD41c55e40888", - [ - [ - "768598545236540", - "3341098908" - ] - ] - ], - [ - "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", - [ - [ - "177625575170087", - "338347529204" + "444973868346640", + "61560768641" ], [ - "178531672699291", - "206297640000" - ] - ] - ], - [ - "0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE", - [ - [ - "278872415587020", - "5337" - ] - ] - ], - [ - "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", - [ - [ - "768088349260906", - "329449782" - ] - ] - ], - [ - "0x18D467c40568dE5D1Ca2177f576d589c2504dE73", - [ - [ - "767126479253709", - "5921542512" - ] - ] - ], - [ - "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD", - [ - [ - "258082732262740", - "167225426282" + "477195175494445", + "29857571563" ], [ - "259604231361612", - "361835231607" - ] - ] - ], - [ - "0x18ED928719A8951729fBD4dbf617B7968D940c7B", - [ - [ - "371379048315869", - "1015130348413" + "562785223802308", + "31631000000" ], [ - "375266078664282", - "1033269065963" - ] - ] - ], - [ - "0x1904e56D521aC77B05270caefB55E18033b9b520", - [ - [ - "141486185118672", - "50461870885" + "564739070155208", + "31631250000" ], [ - "158936502760340", - "149268238078" - ] - ] - ], - [ - "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", - [ - [ - "33215450796739", - "221122" + "566121962403477", + "31631250000" ], [ - "167688132852087", - "7229528214" + "569039352660815", + "31631250000" ], [ - "319075687721742", - "251763737525" + "570064713013715", + "31631250000" ], [ - "325660782915205", - "87903418092" + "572117326695253", + "31631250000" ], [ - "337948671929972", - "30560719176" + "573818581461780", + "41982081237" ], [ - "406165758407037", - "20904868241" + "574387565763701", + "55857695832" ], [ - "484393115998796", - "25643572670" + "575626349616280", + "53257255812" ], [ - "507664641811907", - "72403522735" + "575679606872092", + "38492647384" ], [ - "523525792584925", - "42093860151" + "577679606726120", + "74848126691" ], [ - "531743475414269", - "42662135276" + "595338144020334", + "47102200000" ], [ - "565670483245977", - "18978750000" + "626184530707078", + "90718871797" ], [ - "567485763782146", - "9489375000" + "634031481420456", + "3170719864" ], [ - "567697693157146", - "9489375000" + "634034652140320", + "1827630964" ], [ - "570996126104484", - "9489375000" + "643938854351013", + "228851828" ], [ - "571208055479484", - "9489375000" + "644156421132344", + "3789921580" ], [ - "579663431710697", - "76688553531" + "644278837940540", + "631861553" ], [ - "589010494454925", - "54681668957" + "644373889298847", + "3084780492" ], [ - "606259190037010", - "65298375971" + "644415322342082", + "6773000000" ], [ - "624604559266391", - "39404468562" + "647175726076112", + "16711431033" ], [ - "645423885109546", - "386055000000" + "647388734023467", + "9748779666" ], [ - "647867951570440", - "13807475000" - ] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ + "648110674034173", + "2331841959" + ], [ - "420828345506", - "1377517" + "648277210832933", + "20187647" ], [ - "76028661799786", - "19169818" + "648277231020580", + "5001904811" ], [ - "636825631243466", - "17394829" + "650020393573072", + "1098667202" ], [ - "649774091964491", - "225355921" + "657971448171764", + "15036330875" ], [ - "741725221579960", - "841394646" + "670156602457239", + "16663047211" ], [ - "741726881642106", - "1383738266" + "680095721530457", + "10113856826" ], [ - "741728265380372", - "1485847896" + "706133899990342", + "2720589483246" ], [ - "741904037383620", - "10245498" + "720495305315880", + "55569209804" ], [ - "741904047629118", - "10465635" + "721225229970053", + "55487912201" ], [ - "741904058094753", - "5645699" + "721409921103392", + "4415003338706" ], [ - "741941609515479", - "92153878" + "726480740731617", + "2047412139790" ], [ - "741941701669357", - "92867236" + "729812277370084", + "5650444595733" ], [ - "741949293105425", - "569000000" + "735554122237517", + "2514215964115" ], [ - "742042342168349", - "435226" + "740648921884436", + "39104687507" ], [ - "742491364647261", - "568300000" + "741007335527824", + "48848467587" ], [ - "742542583035629", - "114364635" + "741131517296797", + "95195568422" ], [ - "742542697400264", - "717824824" + "743270084189585", + "44269246366" ], [ - "742543415225088", - "372130074" + "743356388661755", + "284047664" ], [ - "742543787355162", - "270820" + "743356672709419", + "804932236" ], [ - "742543787625982", - "1418750000" + "743357477641655", + "744601051" ], [ - "742545206375982", - "1258079286" + "743358222242706", + "636559806" ], [ - "742546464455268", - "549510" + "743358858802512", + "569027210" ], [ - "742546465004778", - "10795914" + "743359427829722", + "616622839" ], [ - "742546475800692", - "13800216" + "743360044452561", + "590416341" ], [ - "742559245319507", - "23574" + "743360634868902", + "576948243" ], [ - "742559245343081", - "1417000000" + "743361211817145", + "347174290" ], [ - "743356379364153", - "5992389" + "743361558991435", + "112939223481" ], [ - "743356385356542", - "3305213" + "743474498214916", + "37245408077" ], [ - "743713785812675", - "470214653" + "743511743622993", + "27738836042" ], [ - "743714256027328", - "748372634" + "743539482459035", + "36180207225" ], [ - "743715004399962", - "227807703" + "743575662666260", + "9251544878" ], [ - "743722309717315", - "620891431" + "743600698167087", + "4239282" ], [ - "743722930608746", - "811945" + "743630495498696", + "25004744107" ], [ - "744405511195504", - "26480430" + "743655500242803", + "27838968460" ], [ - "744405537675934", - "28404548" + "743683339211263", + "1045028130" ], [ - "744405566080482", - "26650792" + "743715232207665", + "154091444" ], [ - "744732788119609", - "1401250000" + "743715386299109", + "356610619" ], [ - "744762226700609", - "1401250000" + "743715742909728", + "792560930" ], [ - "744763627950609", - "1402000000" + "743716535470658", + "930442023" ], [ - "759761297068193", - "383411" + "743717465912681", + "930527887" ], [ - "759793466361829", - "819071019" + "743718396440568", + "930718264" ], [ - "759820898656942", - "80837003" + "743719327158832", + "900100878" ], [ - "759821429891748", - "342360149" + "743720227259710", + "886888605" ], [ - "759844901514523", - "53934662" + "743721114148315", + "1195569000" ], [ - "759845712799584", - "53840934" + "743722931420691", + "332343086" ], [ - "759845970911102", - "87772583" + "743723263763777", + "983775747" ], [ - "759846649887836", - "304771266" + "743724247539524", + "409861551" ], [ - "759848400175498", - "195479514" + "743724657401075", + "97298663" ], [ - "759849907168404", - "16253699" + "743724754699738", + "86768693" ], [ - "759864586657374", - "4116617" + "743724841468431", + "33509916350" ], [ - "759864590773991", - "5213812" + "743758351384781", + "69774513803" ], [ - "759864595987803", - "5976553" + "743828125898584", + "21981814788" ], [ - "759864601964356", - "21553814" + "743850107713372", + "43182294" ], [ - "759864757676067", - "33837399" + "743850150895666", + "37264237" ], [ - "759864791513466", - "2739149" + "743850188159903", + "247711" ], [ - "759865147227268", - "42017555" + "743850188407614", + "417946" ], [ - "759865263825653", - "45526410" + "743850188825560", + "120504819738" ], [ - "759865449369451", - "53414936" + "743970693645298", + "178855695867" ], [ - "759865544782499", - "993492" + "744149549341165", + "125886081790" ], [ - "759935125236365", - "45905339" + "744819318753537", + "98324836380" ], [ - "759940012120851", - "23725468" + "759669831627157", + "91465441036" ], [ - "759940393217964", - "38630505" + "759761297451604", + "12346431080" ], [ - "759940503415698", - "26325085" + "759773643882684", + "1557369578" ], [ - "759940595592986", - "107661120" + "759775201252262", + "18264975890" ], [ - "759940800175842", - "40606663" + "759793466228152", + "133677" ], [ - "759940840782505", - "24689186" + "759794285432848", + "26613224094" ], [ - "759940865471691", - "1297000000" + "759820979493945", + "70435190" ], [ - "759942162471691", - "1897738286" + "759821049929135", + "64820367" ], [ - "759944060209977", - "241078908" + "759821114749502", + "315142246" ], [ - "759944450213180", - "36627516" + "759821772251897", + "342469548" ], [ - "759944486840696", - "37991124" + "759822114721445", + "22786793078" ], [ - "759944619765922", - "11358356" + "759844955449185", + "62362349" ], [ - "759944631124278", - "51906" + "759845017811534", + "79862410" ], [ - "759944631617600", - "33378" + "759845097673944", + "78350903" ], [ - "759944631650978", - "59927806" + "759845176024847", + "81575013" ], [ - "759944691578784", - "129787486" + "759845257599860", + "81611843" ], [ - "759944821366270", - "25686" + "759845339211703", + "79874694" ], [ - "759944821391956", - "68819" + "759845419086397", + "79925681" ], [ - "759944821460775", - "1560798" + "759845499012078", + "79231634" ], [ - "759944823021573", - "53380815" + "759845578243712", + "73291169" ], [ - "759944963133585", - "87037848" + "759845651534881", + "61264703" ], [ - "759945050171433", - "87607044" + "759845766640518", + "56977225" ], [ - "759945137778477", - "87055460" + "759845823617743", + "71386527" ], [ - "759945224833937", - "12027360" + "759845895004270", + "75906832" ], [ - "759945236898415", - "64214208" + "759846058683685", + "75729409" ], [ - "759945301112623", - "91379524" + "759846134413094", + "27722926" ], [ - "759945392492147", - "42108896" + "759846162136020", + "30197986" ], [ - "759945434601043", - "42970660" + "759846192334006", + "158241812" ], [ - "759945477571703", - "38516379" + "759846350575818", + "123926293" ], [ - "759945516088082", - "36709909" + "759846474502111", + "124139589" ], [ - "759945552797991", - "37022875" + "759846598641700", + "25193251" ], [ - "759945589820866", - "37059712" + "759846623834951", + "25387540" ], [ - "759945626880578", - "37098116" + "759846649222491", + "665345" ], [ - "759945697126264", - "9283973" + "759846954659102", + "631976394" ], [ - "759945706410237", - "174300" + "759847586635496", + "66958527" ], [ - "759945706584537", - "18717450" + "759847653594023", + "44950580" ], [ - "759945725301987", - "136593205" + "759847698544603", + "46547201" ], [ - "759945861895192", - "6795443" + "759847745091804", + "18839036" ], [ - "759945868690635", - "7586684" + "759847763930840", + "270669443" ], [ - "759945876277319", - "20897127" + "759848034600283", + "365575215" ], [ - "759945897174446", - "20964956" + "759848595655012", + "187295653" ], [ - "759945918139402", - "17764676" + "759848782950665", + "25295452" ], [ - "759945935904078", - "19702291" + "759848808246117", + "173058283" ], [ - "759945955606369", - "17689777" + "759848981304400", + "63821133" ], [ - "759945973296146", - "19315364" + "759849045125533", + "25336780" ], [ - "759945992611510", - "19419665" + "759849070462313", + "29081391" ], [ - "759946012031175", - "19518970" + "759849099543704", + "29122172" ], [ - "759946031550145", - "19798295" + "759849128665876", + "28706993" ], [ - "759946051348440", - "38327918" + "759849157372869", + "13456201" ], [ - "759946089676358", - "1264250000" + "759849170829070", + "36511282" ], [ - "759967002196227", - "1067960" + "759849207340352", + "41243780" ], [ - "759967003264187", - "5797992" + "759849248584132", + "33852678" ], [ - "759967009062179", - "5871934" + "759849282436810", + "33956125" ], [ - "759967014934113", - "20249217" + "759849316392935", + "34132617" ], [ - "759967035183330", - "191466067" + "759849350525552", + "17041223" ], [ - "759967226649397", - "89244217" + "759849367566775", + "20273897" ], [ - "759967432417085", - "84963582" + "759849387840672", + "9037475" ], [ - "759967517380667", - "73240421" + "759849396878147", + "45923781" ], [ - "759967590621088", - "19970712" + "759849442801928", + "52882809" ], [ - "759967610591800", - "40621903" + "759849495684737", + "71491609" ], [ - "759967651213703", - "53101794" + "759849567176346", + "39781360" ], [ - "759967704315497", - "53110612" + "759849606957706", + "35612937" ], [ - "759967757426109", - "53161758" + "759849642570643", + "45789959" ], [ - "759967810587867", - "28296198" + "759849688360602", + "46291324" ], [ - "759967838884065", - "86512793" + "759849734651926", + "46416554" ], [ - "759967925396858", - "87139341" + "759849781068480", + "46480026" ], [ - "759968012536199", - "87943134" + "759849827548506", + "28909947" ], [ - "759968100479333", - "80701850" + "759849856458453", + "20566561" ], [ - "759968181181183", - "34810751" + "759849877025014", + "20612970" ], [ - "759968215991934", - "34868207" + "759849897637984", + "9530420" ], [ - "759968250860141", - "52891473" + "759849923422103", + "43423401" ], [ - "759968477551165", - "87498268" + "759849966845504", + "11714877" ], [ - "759968622494844", - "84942957" + "759864364377919", + "13050269" ], [ - "759968707437801", - "85247514" + "759864377428188", + "28949561" ], [ - "759968792685315", - "77422809" + "759864451656441", + "45362892" ], [ - "759968870108124", - "79919576" + "759864497019333", + "45386397" ], [ - "759968950027700", - "80148595" + "759864542405730", + "44251644" ], [ - "759969030176295", - "53806658" + "759864623518170", + "16029726" ], [ - "759969083982953", - "11106068" + "759864639547896", + "27422448" ], [ - "759969095089021", - "754844" + "759864666970344", + "45324196" ], [ - "759969095843865", - "86600675" + "759864712294540", + "45381527" ], [ - "759969268879963", - "44248597" + "759864794252615", + "45249060" ], [ - "759969391981569", - "85630651" + "759864839501675", + "38552197" ], [ - "759969477612220", - "53709030" + "759864878053872", + "45325980" ], [ - "759969531321250", - "88939198" + "759864923379852", + "45332668" ], [ - "759969620260448", - "178428925" + "759864968712520", + "14947041" ], [ - "759969798689373", - "123574577" + "759864983659561", + "44411176" ], [ - "759970183422288", - "79928309" + "759865028070737", + "45841550" ], [ - "759970263350597", - "63434690" + "759865073912287", + "37491304" ], [ - "759970326785287", - "209399790" + "759865111403591", + "35823677" ], [ - "759970536185077", - "96930960" + "759865189244823", + "45959807" ], [ - "759970633116037", - "23891260" + "759865235204630", + "28621023" ], [ - "759970657007297", - "2958794" + "759865309352063", + "54352361" ], [ - "759970667003745", - "64376093" + "759865363704424", + "37604905" ], [ - "759970731379838", - "64736772" + "759865401309329", + "48060122" ], [ - "759970796116610", - "35583363" + "759865502784387", + "41998112" ], [ - "759970831699973", - "28787919" + "759865545775991", + "43017774" ], [ - "759970860487892", - "19771091" + "759865588793765", + "45709130" ], [ - "759970880258983", - "15686626" + "759865634502895", + "20672897" ], [ - "759970984286242", - "87374833" + "759865655175792", + "18088532" ], [ - "759971071661075", - "100272607" + "759865673264324", + "176142052" ], [ - "759971275765356", - "104013769" + "759865849406376", + "249729828" ], [ - "759971379779125", - "104148749" + "759866099136204", + "111218297" ], [ - "759971483927874", - "104457385" + "759866210354501", + "27934473" ], [ - "759971588385259", - "39466456" + "759866238288974", + "27468895" ], [ - "759971627851715", - "54459743" + "759866265757869", + "1914618989" ], [ - "759971682311458", - "54613470" + "759868180376858", + "45603693" ], [ - "759971736924928", - "55455079" + "759868225980551", + "45842728" ], [ - "759972161919679", - "54726591" + "759868271823279", + "46014440" ], [ - "759972216646270", - "53864309" + "759868317837719", + "46063229" ], [ - "760353418325910", - "21307875" + "759868363900948", + "2621289" ], [ - "760353439633785", - "2581143" + "759868366522237", + "53709228" ], [ - "760353442214928", - "935137" + "759868420231465", + "52228978" ], [ - "760353443150065", - "890707" + "759868472460443", + "66561157603" ], [ - "760353444040772", - "934897" + "759935033618046", + "45751501" ], [ - "760353444975669", - "1008171" + "759935079369547", + "45866818" ], [ - "760353445983840", - "940412" + "759935171141704", + "45924323" ], [ - "760353446924252", - "444260593" + "759935217066027", + "27091944" ], [ - "760353891184845", - "18018938" + "759935244157971", + "47094028" ], [ - "760353909203783", - "53690506" + "759935291251999", + "4720868852" ], [ - "760353962894289", - "22923031" + "759940035846319", + "79415211" ], [ - "760353985817320", - "21080639" + "759940115261530", + "104887944" ], [ - "760354006897959", - "19195962" + "759940220149474", + "104422502" ], [ - "760354026093921", - "45460514" + "759940324571976", + "47123207" ], [ - "760354071554435", - "45612372" + "759940371695183", + "21522781" ], [ - "760354117166807", - "36974408" + "759940431848469", + "26567259" ], [ - "760354154141215", - "19923401" + "759940458415728", + "28464738" ], [ - "760354174064616", - "17275264" + "759940486880466", + "16535232" ], [ - "760354191339880", - "696496" + "759940529740783", + "23798092" ], [ - "760354192036376", - "1303460" + "759940553538875", + "22130816" ], [ - "760354193339836", - "2298346" + "759940575669691", + "19923295" ], [ - "760354195638182", - "2606436" + "759940703254106", + "96921736" ], [ - "760354204355953", - "470384" + "759944301288885", + "148924295" ], [ - "760354204826337", - "11175759" + "759944524831820", + "94934102" ], [ - "760354216002096", - "11300466" + "759944631176184", + "441416" ], [ - "760354227302562", - "11536310" + "759944876402388", + "86731197" ], [ - "760357512160486", - "53864562" + "759945236861297", + "37118" ], [ - "760357566025048", - "53933512" + "759945663978694", + "33147570" ], [ - "760357619958560", - "53946887" + "759947353926358", + "19648269869" ], [ - "760357673905447", - "54141970" + "759967315893614", + "43342636" ], [ - "760357728047417", - "69340215" + "759967359236250", + "73180835" ], [ - "760357797387632", - "70550823" + "759968303751614", + "86480048" ], [ - "760357867938455", - "70867493" + "759968390231662", + "87319503" ], [ - "760357938805948", - "24481635" + "759968565049433", + "57445411" ], [ - "760358015808387", - "53846437" + "759969182444540", + "86435423" ], [ - "760358069654824", - "54081133" + "759969313128560", + "78853009" ], [ - "760470665658443", - "785942" + "759969922263950", + "86993082" ], [ - "760470666444385", - "1144304" + "759970009257032", + "87071115" ], [ - "760470667588689", - "1310135" + "759970096328147", + "87094141" ], [ - "761807540280731", - "160545" + "759970659966091", + "7037654" ], [ - "761807540441276", - "429708" + "759970895945609", + "88340633" ], [ - "761807540870984", - "618377" + "759971171933682", + "103831674" ], [ - "761807541489361", - "835669" + "759971792380007", + "55918771" ], [ - "761808254646701", - "457637" + "759971848298778", + "51663688" ], [ - "761818940422306", - "984887" + "759971899962466", + "51820149" ], [ - "761857611272333", - "28944037" + "759971951782615", + "53263163" ], [ - "761857640216370", - "22956002" + "759972005045778", + "46273362" ], [ - "761857663172372", - "23015051" + "759972051319140", + "11764053" ], [ - "761857686187423", - "17079412" + "759972063083193", + "44521152" ], [ - "761857703266835", - "34787792" + "759972107604345", + "54315334" ], [ - "761857738054627", - "13476875" + "759972270510579", + "52771216" ], [ - "761857751531502", - "13484900" + "759972378810991", + "53615733" ], [ - "761857765016402", - "27660968" + "759972432426724", + "54009683" ], [ - "761857792677370", - "43935728" + "759972545991397", + "40392605" ], [ - "761857836613098", - "53726319" + "759972586384002", + "40570272" ], [ - "761857890339417", - "31567337" + "759972626954274", + "29991995" ], [ - "761857921906754", - "19442054" + "759972656946269", + "27715408" ], [ - "761857941348808", - "27655195" + "759972684661677", + "10745158" ], [ - "761857969004003", - "27685781" + "759972695406835", + "53647337" ], [ - "761857996689784", - "14517084" + "759973067945793", + "43509245" ], [ - "761861153261453", - "17618940" + "760353358762258", + "10893874" ], [ - "761861170880393", - "52708112" + "760353369656132", + "992291" ], [ - "761861223588505", - "1133750000" + "760353370648423", + "136316" ], [ - "762295064062834", - "111320920" + "760353370784739", + "147677" ], [ - "762295175383754", - "53936630" + "760353371573213", + "659890" ], [ - "762295229320384", - "54010885" + "760353372233103", + "46092807" ], [ - "762295283331269", - "54033702" + "760354201137939", + "3218014" ], [ - "762295337364971", - "54054047" + "760354238838872", + "3273321614" ], [ - "762295391419018", - "54159010" + "760357963287583", + "52520804" ], [ - "762295445578028", - "53483677" + "760358123735957", + "112541922486" ], [ - "762295580014262", - "86989838" + "760472183068657", + "71399999953" ], [ - "762295667004100", - "29618432" + "760765586953427", + "195667368889" ], [ - "762295696622532", - "53514750" + "760961254322316", + "846285958415" ], [ - "762295750137282", - "79440408" + "761807542325030", + "712321671" ], [ - "762295829577690", - "88554558" + "761808255104338", + "10685317968" ], [ - "762839409673019", - "1124000000" + "761818941407193", + "38669865140" ], [ - "762926916547751", - "98431377" + "761858011206868", + "52031027" ], [ - "762927014979128", - "15784358" + "761858211139284", + "53537634" ], [ - "762927030763486", - "1123500000" + "761858291968910", + "1954482199" ], [ - "762940872607458", - "54177313" + "761860307483525", + "798157403" ], [ - "762940926784771", - "55156263" + "762237672060652", + "57392002182" ], [ - "762941003155084", - "52319596" + "762295918132248", + "68617976" ], [ - "762941055474680", - "156457506" + "762295986750224", + "181183510038" ], [ - "762941211932186", - "53517184" + "762477170260262", + "181104817321" ], [ - "762941265449370", - "53566454" + "762658275077583", + "181134595436" ], [ - "762941319015824", - "54362634" + "762928154263486", + "12718343972" ], [ - "762941435120911", - "100238373" + "762941373378458", + "61742453" ], [ - "762941535359284", - "2889658" + "762941584284511", + "53571451" ], [ - "762941538248942", - "46035569" + "762941637855962", + "53583667" ], [ - "763454272407770", - "3194591" + "762941691439629", + "503128696018" ], [ - "763707900610993", - "1115750000" + "763444820135647", + "9452272123" ], [ - "763792492493475", - "1116000000" + "763454275602361", + "24685659026" ], [ - "763803297529274", - "53478200" + "763478961261387", + "50245820668" ], [ - "763803351007474", - "54572785" + "763529207082055", + "45323986837" ], [ - "763876749529752", - "46564085" + "763574531068892", + "38976282600" ], [ - "763876796093837", - "53551433" + "763877196713494", + "54224527" ], [ - "763876849645270", - "37834720" + "763877250938021", + "54871543" ], [ - "763876887479990", - "390583" + "763877347112986", + "53640521" ], [ - "763876887870573", - "55102196" + "763879425886186", + "18918512681" ], [ - "763876942972769", - "1578152" + "763899542751244", + "4287074277" ], [ - "763876946822805", - "18853190" + "763904856308950", + "91042132" ], [ - "763876965675995", - "87811" + "763904947351082", + "3672111531" ], [ - "763876965763806", - "46267543" + "763908632298791", + "1924103043" ], [ - "763877012031349", - "59141147" + "763910715862653", + "4104368630" ], [ - "763877089726413", - "53473182" + "763938664793385", + "889781905" ], [ - "763877143199595", - "53513899" + "763975977681622", + "85746574" ], [ - "763877305809564", - "9728992" + "763976127391221", + "54879926" ], [ - "763877315538556", - "28373" + "763976238932410", + "67220754" ], [ - "763877315566929", - "65545" + "763978572723857", + "2432585925" ], [ - "763877315632474", - "92711" - ], - [ - "763877315725185", - "105827" + "763983475557042", + "2433575022" ], [ - "763877315831012", - "153650" + "763985961279749", + "3362361779" ], [ - "763877315984662", - "11924506" + "763989323641528", + "66961666112" ], [ - "763877327909168", - "19203818" + "764117220398714", + "5082059700" ], [ - "763877454434453", - "2130383" + "764448523798789", + "9214910" ], [ - "763877456564836", - "43889485" + "764448533013699", + "3175483736" ], [ - "763877500454321", - "53637818" + "764453314028098", + "886719471" ], [ - "763877554092139", - "4992987" + "766181126764911", + "110330114890" ], [ - "763877559085126", - "78649" + "766291456879801", + "143444348214" ], [ - "763877561341934", - "53679679" + "767321251748842", + "180967833670" ], [ - "763877615021613", - "53699711" + "767502220600152", + "229602422" ], [ - "763877668721324", - "2881442" + "767507188351307", + "3345435335" ], [ - "763877671602766", - "43770152" + "767578297685072", + "595189970" ], [ - "763877715372918", - "60410828" + "767807852820920", + "5000266651" ], [ - "763877775783746", - "36230820" + "767824420446983", + "1158445599" ], [ - "763877812014566", - "71702191" + "767978192014986", + "1606680000" ], [ - "763879378249844", - "7153056" + "767989215426960", + "14606754787" ], [ - "763879385402900", - "7227368" + "768072180047322", + "2519675802" ], [ - "763879392630268", - "11477736" + "768418957212524", + "52886516686" ], [ - "763879404108004", - "10660055" + "771127544359367", + "12764830824" ], [ - "763879414768059", - "11118127" + "786826869494538", + "44336089227" ], [ - "763898344398867", - "63786254" + "790591093043508", + "71074869547" ], [ - "763898408185121", - "64002031" + "790662167913055", + "60917382823" ], [ - "763898506920948", - "861786" + "792657494145217", + "11153713894" ], [ - "763898507782734", - "10162644" + "845186146706783", + "62659298764" ], [ - "763899495538368", - "9243915" + "868345234814461", + "178880088846" ], [ - "763899504782283", - "37968961" + "869175887842680", + "80331618390" ], [ - "763904604592937", - "29092593" + "869256219461070", + "87734515234" ], [ - "763904633685530", - "17984979" + "900352767003453", + "187169856894" ], [ - "763904651670509", - "18018550" + "912339955462822", + "95736000000" ], [ - "763904669689059", - "18842007" - ], + "917463394063277", + "359610000000" + ] + ] + ], + [ + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", + [ [ - "763904688531066", - "16688868" - ], + "361234476058040", + "2406000000" + ] + ] + ], + [ + "0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0", + [ [ - "763904705219934", - "15727180" - ], + "267806966956864", + "18402625318" + ] + ] + ], + [ + "0x11D86e9F9C2a1cF597b974E50C660316c92215AA", + [ [ - "763904720947114", - "15825494" - ], + "574157923216400", + "18405369858" + ] + ] + ], + [ + "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D", + [ [ - "763904736772608", - "17883715" + "190956833027662", + "37217588263" ], [ - "763904754656323", - "12528228" + "632405487158023", + "1362130095" ], [ - "763904767184551", - "1918749" - ], + "634781609311398", + "796726164" + ] + ] + ], + [ + "0x120Be1406E6B46dDD7878EDC06069C811f608844", + [ [ - "763904769103300", - "10530035" + "495258518671796", + "67814142769" ], [ - "763904779633335", - "10728257" - ], + "585014816613448", + "44928801374" + ] + ] + ], + [ + "0x122de1514670141D4c22e5675010B6D65386a9F6", + [ [ - "763904790361592", - "4605084" + "633445875835283", + "88383049000" ], [ - "763904794966676", - "8970126" + "634054370395803", + "5577741477" ], [ - "763910595276884", - "8829644" + "634067673151832", + "56964081161" ], [ - "763910604106528", - "3311197" + "634208127647444", + "49547619666" ], [ - "763910607417725", - "12163802" + "648313723414461", + "6009716700" ], [ - "763910619581527", - "12428237" + "668314224811239", + "15374981070" ], [ - "763910632009764", - "10056575" + "675086678410802", + "69815285464" ], [ - "763910642066339", - "73796314" + "677494138932275", + "17365876628" ], [ - "763938649705538", - "15087847" + "679748272866001", + "2338515960" ], [ - "763944448544389", - "15498278" - ], + "742201769028015", + "48039789791" + ] + ] + ], + [ + "0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b", + [ [ - "763944464042667", - "24830243" - ], + "582532990593085", + "9392558210" + ] + ] + ], + [ + "0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303", + [ [ - "763944488872910", - "24944523" - ], + "59999867425096", + "354422482014" + ] + ] + ], + [ + "0x1298751f99f2f715178Cc58fB3779C55e91C26bC", + [ [ - "763953533706671", - "11007680" - ], + "648537251637637", + "31971947" + ] + ] + ], + [ + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", + [ [ - "763953544714351", - "11282748" + "681678394686893", + "7527748761" ], [ - "763953555997099", - "11335662" - ], + "742249933817806", + "375414" + ] + ] + ], + [ + "0x12B9D75389409d119Dd9a96DF1D41092204e8f32", + [ [ - "763953567332761", - "11465066" - ], + "31566901757266", + "11663342444" + ] + ] + ], + [ + "0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186", + [ [ - "763953578797827", - "11935751" - ], + "564785303930728", + "1165879450" + ] + ] + ], + [ + "0x12f1412fECBf2767D10031f01D772d618594Ea28", + [ [ - "763953590733578", - "12877546" + "406186663275278", + "1685616675" ], [ - "763953603611124", - "12886748" + "406188348891953", + "1685577968" ], [ - "763953616497872", - "7982235" - ], + "452060678873257", + "27897692308" + ] + ] + ], + [ + "0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5", + [ [ - "763953624480107", - "9765854" - ], + "586069294420889", + "40303600000" + ] + ] + ], + [ + "0x1348EA8E35236AA0769b91ae291e7291117bf15C", + [ [ - "763953634245961", - "9797075" - ], + "489737823532", + "616643076" + ] + ] + ], + [ + "0x136e6F25117aF5e5ff5d353dC41A0e91F013D461", + [ [ - "763953644043036", - "1044500000" - ], + "143944826482554", + "122522870889" + ] + ] + ], + [ + "0x13b1ddb38c80327257Bdcb0e321c834401399967", + [ [ - "763975806959978", - "85094056" - ], + "644382876705008", + "2502367588" + ] + ] + ], + [ + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", + [ [ - "763975892054034", - "85627588" + "145498413266148", + "42841247573" ], [ - "763977822667370", - "3016979" - ], + "145541254513721", + "42783848059" + ] + ] + ], + [ + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", + [ [ - "763977825684349", - "3091465" - ], + "61084721727512", + "2500000000" + ] + ] + ], + [ + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", + [ [ - "763977828775814", - "557388194" + "624243091995454", + "203615000" ], [ - "763978386164008", - "8620088" + "634772027987253", + "1040000000" ], [ - "763978394784096", - "29342107" + "646732029674264", + "2437432840" ], [ - "763978424126203", - "9543362" + "672251516338595", + "2387375166" ], [ - "763978433669565", - "9611296" + "672351094760624", + "421577971" ], [ - "763978443280861", - "9636433" + "681986234524446", + "291165686" ], [ - "763978452917294", - "8046683" + "738155444487185", + "20323399607" ], [ - "763978460963977", - "10828154" + "760471037973169", + "1145095488" ], [ - "763978471792131", - "7543534" - ], + "840552181305501", + "1108572912315" + ] + ] + ], + [ + "0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b", + [ [ - "763978479335665", - "4689652" - ], + "158530779405767", + "1610099875" + ] + ] + ], + [ + "0x14A9034C185f04a82FdB93926787f713024c1d04", + [ [ - "763978484025317", - "12897667" - ], + "859976582989678", + "122609442232" + ] + ] + ], + [ + "0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED", + [ [ - "763978496922984", - "8815547" + "335857741482697", + "3482540346" ], [ - "763978514586346", - "9143544" - ], + "335861224023043", + "3782897627" + ] + ] + ], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + [ [ - "763978523729890", - "9413342" + "782454543582055", + "64162381017" ], [ - "763978533143232", - "9416885" - ], + "828593773626551", + "157785618045" + ] + ] + ], + [ + "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248", + [ [ - "763978542560117", - "10373808" + "41353532120650", + "16752841008" ], [ - "763978552933925", - "19789932" + "41372978028598", + "66903217" ], [ - "763981005309782", - "8883084" - ], + "264270149653239", + "19569741057" + ] + ] + ], + [ + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", + [ [ - "763981014192866", - "8984999" + "489713229332", + "24594200" ], [ - "763981023177865", - "9076772" + "33226393240138", + "903943566" ], [ - "763983162727275", - "10372838" - ], + "798286961231309", + "8915991349" + ] + ] + ], + [ + "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", + [ [ - "763983173100113", - "901279" - ], + "646991286880723", + "18" + ] + ] + ], + [ + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", + [ [ - "763983174001392", - "11304378" + "611728295781189", + "10622053659968" ], [ - "763983185305770", - "11337518" - ], + "623644302297490", + "529063312964" + ] + ] + ], + [ + "0x15682A522C149029F90108e2792A114E94AB4187", + [ [ - "763983207512362", - "9837030" + "201115507781971", + "9954888600" ], [ - "763983217349392", - "1100829" - ], + "201125462670571", + "20006708080" + ] + ] + ], + [ + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", + [ [ - "763983218450221", - "66658" + "12908130692247", + "69000000000" ], [ - "763983218516879", - "73073" + "27663859276277", + "11430287315" ], [ - "763983218589952", - "414078" + "151982845144538", + "102043966209" ], [ - "763983219004030", - "16583629" + "202189968549333", + "109329481723" ], [ - "763983235587659", - "75873" + "216890054194355", + "109550000000" ], [ - "763983235663532", - "104758" + "221296963314728", + "303606880000" ], [ - "763983235768290", - "319760" + "223966850287188", + "215672515793" ], [ - "763983236088050", - "347778" + "250110190299545", + "136745811108" ], [ - "763983305487564", - "10457152" + "259103817552461", + "213600000000" ], [ - "763983315944716", - "10556364" + "326600447749933", + "56701527977" ], [ - "763983326501080", - "8290697" + "331820011408947", + "77550000000" ], [ - "763983334791777", - "5644455" + "337312629850712", + "524000000000" ], [ - "763983340436232", - "7945168" + "532596882341520", + "74008715512" ], [ - "763983348381400", - "13385894" + "550767344271171", + "154323271198" ], [ - "763983361767294", - "45138194" + "550963442752539", + "77710549315" ], [ - "763983406905488", - "1866587" + "551147545041854", + "77448372715" ], [ - "763983408772075", - "9980195" + "580467264306437", + "385627368167" ], [ - "763983418752270", - "5750227" + "588844255968994", + "7190333320" ], [ - "763983424502497", - "9795651" + "588851446302314", + "24416902119" ], [ - "763983444147323", - "10906649" + "591553190653012", + "192654267895" ], [ - "763983455053972", - "11996728" + "643053831916029", + "6077435843" ], [ - "763983467050700", - "8506342" + "643671783551535", + "6908969226" ], [ - "763985928672040", - "10937512" + "643678692520761", + "6721846521" ], [ - "763985939609552", - "11006773" - ], + "643685414367282", + "9539096044" + ] + ] + ], + [ + "0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB", + [ [ - "763985950616325", - "328433" - ], + "272758111777231", + "10810000000" + ] + ] + ], + [ + "0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21", + [ [ - "763985950944758", - "10334991" - ], + "227831611065108", + "45528525078" + ] + ] + ], + [ + "0x15e6e23b97D513ac117807bb88366f00fE6d6e17", + [ [ - "764056285307640", - "9063092" + "498236313145011", + "437186238884" ], [ - "764056313282603", - "12814935" + "521083859244841", + "1766705104317" ], [ - "764056326097538", - "13040915" + "530421557497402", + "35719340050" ], [ - "764056855356215", - "8019575" - ], + "530478666236974", + "125209382874" + ] + ] + ], + [ + "0x15e83602FDE900DdDdafC07bB67E18F64437b21e", + [ [ - "764056863375790", - "12804398" - ], + "264704722565446", + "47834854016" + ] + ] + ], + [ + "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", + [ [ - "764056876180188", - "14241010" + "72575956226539", + "357542100000" ], [ - "764056890421198", - "10969416" + "89241731539000", + "1175500000023" ], [ - "764056901390614", - "2177420" + "365422620670212", + "1865083098796" ], [ - "764056903568034", - "9204085" + "389039821567282", + "1434547698166" ], [ - "764056912772119", - "9213207" + "605868357905297", + "390832131713" ], [ - "764058367111510", - "11163969" - ], + "748316175461834", + "2915005876762" + ] + ] + ], + [ + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", + [ [ - "764058378275479", - "11300738" + "109546800679552", + "200302309" ], [ - "764058389576217", - "5496270" + "635843453941744", + "920876600" ], [ - "764058395072487", - "361195" + "635887570024580", + "8122037505" ], [ - "764058395433682", - "772104" + "646819721059395", + "4169534646" ], [ - "764058396205786", - "696608867" + "705891222986739", + "622068" ], [ - "764059092814653", - "9050379" - ], + "767503022441087", + "48133673" + ] + ] + ], + [ + "0x16785ca8422Cb4008CB9792fcD756ADbEe42878E", + [ [ - "764059101865032", - "4195172" - ], + "267302406877711", + "20209787690" + ] + ] + ], + [ + "0x168c6aC0268a29c3C0645917a4510ccd73F4D923", + [ [ - "764059106060204", - "11535858" - ], + "672650193633312", + "29376243060" + ] + ] + ], + [ + "0x16942d62E8ad78A9026E41Fab484C265FC90b228", + [ [ - "764059117596062", - "255180" - ], + "160756595271818", + "3293294269" + ] + ] + ], + [ + "0x16b5e68f83684740b2DA481DB60EAb42362884b9", + [ [ - "764059117851242", - "8969278" - ], + "267337779284239", + "10134945528" + ] + ] + ], + [ + "0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7", + [ [ - "764059126820520", - "9303793" + "222734022200750", + "13846186217" ], [ - "764059136124313", - "9999166" + "223632980545856", + "53707306278" ], [ - "764059146123479", - "10009538" + "261159862360092", + "767049891172" ], [ - "764059156133017", - "1216684" - ], + "274482355441400", + "3457786919155" + ] + ] + ], + [ + "0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb", + [ [ - "764059157349701", - "33393007" - ], + "282548680821223", + "19176051379" + ] + ] + ], + [ + "0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f", + [ [ - "764059190742708", - "735377" - ], + "332106534097640", + "325699631169" + ] + ] + ], + [ + "0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5", + [ [ - "764059191478085", - "10266010" + "159510980748318", + "69370798116" ], [ - "764060081853851", - "8204048" - ], + "340408059304271", + "57935578436" + ] + ] + ], + [ + "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d", + [ [ - "764060090057899", - "9732642" + "859906883476476", + "2259704612" ], [ - "764060099790541", - "10150423" + "859973554233311", + "3028756367" ], [ - "764100306041728", - "17982514" + "860324021288753", + "3253278012" ], [ - "764100324024242", - "18573856" - ], + "916943532304574", + "14518741904" + ] + ] + ], + [ + "0x183be3011809A2D41198e528d2b20Cc91b4C9665", + [ [ - "764111950239427", - "944000000" + "213937858611219", + "791280000" ], [ - "764113461776720", - "6235875" + "213938649891219", + "27839621824" ], [ - "764113468012595", - "8992681" - ], + "215796197676279", + "266104007323" + ] + ] + ], + [ + "0x184CbD89E91039E6B1EF94753B3fD41c55e40888", + [ [ - "764113477005276", - "943500000" - ], + "768598545236540", + "3341098908" + ] + ] + ], + [ + "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", + [ [ - "764114420505276", - "943500000" + "177625575170087", + "338347529204" ], [ - "764115364005276", - "35299689" - ], + "178531672699291", + "206297640000" + ] + ] + ], + [ + "0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE", + [ [ - "764115399304965", - "6707115" - ], + "278872415587020", + "5337" + ] + ] + ], + [ + "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", + [ [ - "764115406012080", - "10253563" - ], + "768088349260906", + "329449782" + ] + ] + ], + [ + "0x18D467c40568dE5D1Ca2177f576d589c2504dE73", + [ [ - "764115416265643", - "52697117" - ], + "767126479253709", + "5921542512" + ] + ] + ], + [ + "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD", + [ [ - "764115468962760", - "940750000" + "258082732262740", + "167225426282" ], [ - "764331262748162", - "945750000" - ], + "259604231361612", + "361835231607" + ] + ] + ], + [ + "0x18ED928719A8951729fBD4dbf617B7968D940c7B", + [ [ - "764438000829295", - "946000000" + "371379048315869", + "1015130348413" ], [ - "764451708497435", - "10007361" - ], + "375266078664282", + "1033269065963" + ] + ] + ], + [ + "0x1904e56D521aC77B05270caefB55E18033b9b520", + [ [ - "764451718504796", - "10260665" + "141486185118672", + "50461870885" ], [ - "764451728765461", - "10443811" - ], + "158936502760340", + "149268238078" + ] + ] + ], + [ + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", + [ [ - "764451739209272", - "10884086" + "33215450796739", + "221122" ], [ - "764451750093358", - "895341231" + "167688132852087", + "7229528214" ], [ - "764452645434589", - "3190831" + "319075687721742", + "251763737525" ], [ - "764452656731669", - "8125848" + "325660782915205", + "87903418092" ], [ - "764452664857517", - "8140742" + "337948671929972", + "30560719176" ], [ - "764452672998259", - "8207851" + "406165758407037", + "20904868241" ], [ - "764452681206110", - "5437824" + "484393115998796", + "25643572670" ], [ - "764452686643934", - "1634581" + "507664641811907", + "72403522735" ], [ - "764452688278515", - "30412" + "523525792584925", + "42093860151" ], [ - "764452688308927", - "6680863" + "531743475414269", + "42662135276" ], [ - "764452694989790", - "1390995" + "565670483245977", + "18978750000" ], [ - "764452696380785", - "6703924" + "567485763782146", + "9489375000" ], [ - "764452703084709", - "4836310" + "567697693157146", + "9489375000" ], [ - "764452707921019", - "2347531" + "570996126104484", + "9489375000" ], [ - "764452710268550", - "2444950" + "571208055479484", + "9489375000" ], [ - "764452712713500", - "2595517" + "579663431710697", + "76688553531" ], [ - "764452715309017", - "5693285" + "589010494454925", + "54681668957" ], [ - "764452721002302", - "7659096" + "606259190037010", + "65298375971" ], [ - "764452735085521", - "1617109" + "624604559266391", + "39404468562" ], [ - "764452736702630", - "901875" + "645423885109546", + "386055000000" ], [ - "764452737604505", - "8786495" - ], + "647867951570440", + "13807475000" + ] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ [ - "764452746391000", - "8796994" + "420828345506", + "1377517" ], [ - "764452755187994", - "483474928" + "76028661799786", + "19169818" ], [ - "764453238662922", - "9945879" + "636825631243466", + "17394829" ], [ - "764453248608801", - "9384752" + "649774091964491", + "225355921" ], [ - "764453257993553", - "18030442" + "741725221579960", + "841394646" ], [ - "764453276023995", - "18998861" + "741726881642106", + "1383738266" ], [ - "764453295022856", - "19005242" + "741728265380372", + "1485847896" ], [ - "764454200747569", - "8013962" + "741904037383620", + "10245498" ], [ - "764454208761531", - "344483" + "741904047629118", + "10465635" ], [ - "764454209106014", - "3844352" + "741904058094753", + "5645699" ], [ - "764454213921411", - "8933515" + "741941609515479", + "92153878" ], [ - "764454222854926", - "9498746" + "741941701669357", + "92867236" ], [ - "764454232353672", - "9503988" + "741949293105425", + "569000000" ], [ - "764454241857660", - "10385991" + "742042342168349", + "435226" ], [ - "764454252243651", - "10467439" + "742491364647261", + "568300000" ], [ - "764454262711090", - "9988705" + "742542583035629", + "114364635" ], [ - "764454272699795", - "8980636" + "742542697400264", + "717824824" ], [ - "764454281680431", - "9308598" + "742543415225088", + "372130074" ], [ - "764454290989029", - "9335269" + "742543787355162", + "270820" ], [ - "764454300324298", - "7550863" + "742543787625982", + "1418750000" ], [ - "764454307875161", - "4906079" + "742545206375982", + "1258079286" ], [ - "764454312781240", - "8991244" + "742546464455268", + "549510" ], [ - "764454321772484", - "12424176" + "742546465004778", + "10795914" ], [ - "764454334196660", - "4683059" + "742546475800692", + "13800216" ], [ - "764454338879719", - "808524" + "742559245319507", + "23574" ], [ - "764454339688243", - "16696896" + "742559245343081", + "1417000000" ], [ - "764454356385139", - "188453" + "743356379364153", + "5992389" ], [ - "764454356573592", - "244246" + "743356385356542", + "3305213" ], [ - "764454356817838", - "399227" + "743713785812675", + "470214653" ], [ - "764454357217065", - "428167" + "743714256027328", + "748372634" ], [ - "764454357645232", - "436981" + "743715004399962", + "227807703" ], [ - "764454358082213", - "492999" + "743722309717315", + "620891431" ], [ - "764454358575212", - "591362" + "743722930608746", + "811945" ], [ - "764457158712640", - "9556834" + "744405511195504", + "26480430" ], [ - "766112773148016", - "905500000" + "744405537675934", + "28404548" ], [ - "767983184669679", - "52737476" + "744405566080482", + "26650792" ], [ - "767983237407155", - "53575704" + "744732788119609", + "1401250000" ], [ - "767983290982859", - "53768852" + "744762226700609", + "1401250000" ], [ - "767983344751711", - "55352725" + "744763627950609", + "1402000000" ], [ - "767983400104436", - "47061647" + "759761297068193", + "383411" ], [ - "767983447166083", - "1110500000" + "759793466361829", + "819071019" ], [ - "767984557666083", - "88333125" + "759820898656942", + "80837003" ], [ - "767984645999208", - "129427752" + "759821429891748", + "342360149" ], [ - "768003822182998", - "1121250000" + "759844901514523", + "53934662" ], [ - "768004943433356", - "78186024" + "759845712799584", + "53840934" ], [ - "768005021619380", - "54621494" + "759845970911102", + "87772583" ], [ - "768005076240874", - "65591706" + "759846649887836", + "304771266" ], [ - "768005141832580", - "81397820" + "759848400175498", + "195479514" ], [ - "768005223230400", - "89638206" + "759849907168404", + "16253699" ], [ - "768005312868606", - "88216460" + "759864586657374", + "4116617" ], [ - "768005401085066", - "85936196" + "759864590773991", + "5213812" ], [ - "768005487021262", - "88956801" + "759864595987803", + "5976553" ], [ - "768006108101322", - "88031169" + "759864601964356", + "21553814" ], [ - "768006196132491", - "88045520" + "759864757676067", + "33837399" ], [ - "768006284178011", - "88084070" + "759864791513466", + "2739149" ], [ - "768006372262081", - "88157182" + "759865147227268", + "42017555" ], [ - "768006460420859", - "1111500000" + "759865263825653", + "45526410" ], [ - "768055033287471", - "1118250000" + "759865449369451", + "53414936" ], [ - "768056151539394", - "128513841" + "759865544782499", + "993492" ], [ - "768056280053235", - "127000562" + "759935125236365", + "45905339" ], [ - "768056407053797", - "132748869" + "759940012120851", + "23725468" ], [ - "768056539802666", - "124378256" + "759940393217964", + "38630505" ], [ - "768056664180922", - "119219224" + "759940503415698", + "26325085" ], [ - "768056783400146", - "120768946" + "759940595592986", + "107661120" ], [ - "768056904169092", - "128280239" + "759940800175842", + "40606663" ], [ - "768057160925595", - "129567688" + "759940840782505", + "24689186" ], [ - "768057290493283", - "129626968" + "759940865471691", + "1297000000" ], [ - "768057420120251", - "131641826" + "759942162471691", + "1897738286" ], [ - "768057551762077", - "132785034" + "759944060209977", + "241078908" ], [ - "768057684547111", - "149829249" + "759944450213180", + "36627516" ], [ - "768058524884871", - "83536024" + "759944486840696", + "37991124" ], [ - "768058608420895", - "87311253" + "759944619765922", + "11358356" ], [ - "768058695732148", - "88832233" + "759944631124278", + "51906" ], [ - "768058784564381", - "86928993" + "759944631617600", + "33378" ], [ - "768058871493374", - "86484069" + "759944631650978", + "59927806" ], [ - "768058957977443", - "87016874" + "759944691578784", + "129787486" ], [ - "768059044994317", - "88333175" + "759944821366270", + "25686" ], [ - "768059133327492", - "91669405" + "759944821391956", + "68819" ], [ - "768059224996897", - "87910416" + "759944821460775", + "1560798" ], [ - "768059312907313", - "87683732" + "759944823021573", + "53380815" ], [ - "768059400591045", - "86467952" + "759944963133585", + "87037848" ], [ - "768059487058997", - "86594113" + "759945050171433", + "87607044" ], [ - "768059573653110", - "86619651" + "759945137778477", + "87055460" ], [ - "768059660272761", - "87730086" + "759945224833937", + "12027360" ], [ - "768059748002847", - "86397690" + "759945236898415", + "64214208" ], [ - "768059834400537", - "86441349" + "759945301112623", + "91379524" ], [ - "768059920841886", - "88343548" + "759945392492147", + "42108896" ], [ - "768060009185434", - "88187255" + "759945434601043", + "42970660" ], [ - "768060097372689", - "123265068" + "759945477571703", + "38516379" ], [ - "845854664288223", - "3559343229" + "759945516088082", + "36709909" ], [ - "845858223631452", - "4963424782" + "759945552797991", + "37022875" ], [ - "845863187056234", - "3248663591" + "759945589820866", + "37059712" ], [ - "845866435719825", - "1723984401" + "759945626880578", + "37098116" ], [ - "859627528207302", - "22832250" + "759945697126264", + "9283973" ], [ - "859758703320142", - "1614400" + "759945706410237", + "174300" ], [ - "859839403331480", - "161450" + "759945706584537", + "18717450" ], [ - "859839403492930", - "169491" + "759945725301987", + "136593205" ], [ - "859839403662421", - "1613900" + "759945861895192", + "6795443" ], [ - "859839405276321", - "19836791" + "759945868690635", + "7586684" ], [ - "859839425113112", - "20285472" + "759945876277319", + "20897127" ], [ - "859839445398584", - "1613300" + "759945897174446", + "20964956" ], [ - "859839447011884", - "1695263" + "759945918139402", + "17764676" ], [ - "859839448707147", - "1781388" + "759945935904078", + "19702291" ], [ - "859839450488535", - "9760866" + "759945955606369", + "17689777" ], [ - "859903168498760", - "1025355734" + "759945973296146", + "19315364" ], [ - "859905004526751", - "325809885" + "759945992611510", + "19419665" ], [ - "859909143181247", - "169472" + "759946012031175", + "19518970" ], [ - "860099248353783", - "168836" + "759946031550145", + "19798295" ], [ - "860099248522619", - "178837" + "759946051348440", + "38327918" ], [ - "860099248701456", - "189471" + "759946089676358", + "1264250000" ], [ - "860106007379004", - "158770" + "759967002196227", + "1067960" ], [ - "860106007537774", - "168264" + "759967003264187", + "5797992" ], [ - "860106018269867", - "178231" + "759967009062179", + "5871934" ], [ - "860106018448098", - "188829" - ] - ] - ], - [ - "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", - [ - [ - "212720660289097", - "405214898001" - ] - ] - ], - [ - "0x19CB3CfB44B052077E2c4dF7095900ce0b634056", - [ + "759967014934113", + "20249217" + ], [ - "76126854262565", - "9614320026" - ] - ] - ], - [ - "0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C", - [ + "759967035183330", + "191466067" + ], [ - "720950939776219", - "15067225270" - ] - ] - ], - [ - "0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76", - [ + "759967226649397", + "89244217" + ], [ - "429681884991709", - "16666666666" - ] - ] - ], - [ - "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", - [ + "759967432417085", + "84963582" + ], [ - "643132812995983", - "40000000000" + "759967517380667", + "73240421" ], [ - "643906455631587", - "3366190225" - ] - ] - ], - [ - "0x1a368885B299D51E477c2737E0330aB35529154a", - [ + "759967590621088", + "19970712" + ], [ - "318979377505709", - "96310216033" - ] - ] - ], - [ - "0x1a5280B471024622714DEc80344E2AC2823fd841", - [ + "759967610591800", + "40621903" + ], [ - "343556046384069", - "24488082083" - ] - ] - ], - [ - "0x1aA6F8B965d692c8162131F98219a6986DD10A83", - [ + "759967651213703", + "53101794" + ], [ - "430080127673356", - "15368916223" - ] - ] - ], - [ - "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", - [ + "759967704315497", + "53110612" + ], [ - "76197765704929", - "4483509093" + "759967757426109", + "53161758" ], [ - "624723028217150", - "131393988394" + "759967810587867", + "28296198" ], [ - "635895692062085", - "9135365741" + "759967838884065", + "86512793" ], [ - "636308866306005", - "8420726212" + "759967925396858", + "87139341" ], [ - "639647047295076", - "24523740645" - ] - ] - ], - [ - "0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b", - [ + "759968012536199", + "87943134" + ], [ - "170254522172883", - "17764281739" - ] - ] - ], - [ - "0x1aD66517368179738f521AF62E1acFe8816c22a4", - [ + "759968100479333", + "80701850" + ], [ - "38725058902818", - "4046506513" + "759968181181183", + "34810751" ], [ - "634197083749312", - "3652730115" + "759968215991934", + "34868207" ], [ - "634438435405713", - "6190991388" + "759968250860141", + "52891473" ], [ - "639424921077105", - "10000000000" + "759968477551165", + "87498268" ], [ - "640886662352708", - "43494915041" + "759968622494844", + "84942957" ], [ - "680807511563555", - "7644571244" - ] - ] - ], - [ - "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", - [ + "759968707437801", + "85247514" + ], [ - "153700721920471", - "531500000" + "759968792685315", + "77422809" ], [ - "220191598626128", - "187950000" + "759968870108124", + "79919576" ], [ - "229939110243935", - "6322304733" + "759968950027700", + "80148595" ], [ - "229945432548668", - "8363898233" + "759969030176295", + "53806658" ], [ - "279068417135852", - "3937395000" + "759969083982953", + "11106068" ], [ - "279072354530852", - "5849480200" - ] - ] - ], - [ - "0x1B89a08D82079337740e1cef68c571069725306e", - [ + "759969095089021", + "754844" + ], [ - "87019591255367", - "29419590331" - ] - ] - ], - [ - "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF", - [ + "759969095843865", + "86600675" + ], [ - "919414419371700", - "44905425998" - ] - ] - ], - [ - "0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E", - [ + "759969268879963", + "44248597" + ], [ - "12977130692247", - "21105757579" - ] - ] - ], - [ - "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", - [ + "759969391981569", + "85630651" + ], [ - "45739702462830", - "16499109105" + "759969477612220", + "53709030" ], [ - "87114876540897", - "188352182040" + "759969531321250", + "88939198" ], [ - "250563494637659", - "51857289010" + "759969620260448", + "178428925" ], [ - "267398540448510", - "101208590466" + "759969798689373", + "123574577" ], [ - "267499749038976", - "70064409829" + "759970183422288", + "79928309" ], [ - "573375993529429", - "36792124887" + "759970263350597", + "63434690" ], [ - "870607247677965", - "2137555078286" - ] - ] - ], - [ - "0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4", - [ + "759970326785287", + "209399790" + ], [ - "353495072528037", - "320790778183" - ] - ] - ], - [ - "0x1d18B7E78a9a92a9DF8a1e3546b4B1fB825e012A", - [ + "759970536185077", + "96930960" + ], [ - "469496367277393", - "558419996300" - ] - ] - ], - [ - "0x1d264de8264a506Ed0E88E5E092131915913Ed17", - [ + "759970633116037", + "23891260" + ], [ - "649244006768867", - "4669501379" + "759970657007297", + "2958794" ], [ - "796038682086854", - "84590167390" - ] - ] - ], - [ - "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", - [ + "759970667003745", + "64376093" + ], [ - "781813701764341", - "29578830513" - ] - ] - ], - [ - "0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E", - [ + "759970731379838", + "64736772" + ], [ - "327484450418198", - "123019710377" - ] - ] - ], - [ - "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714", - [ + "759970796116610", + "35583363" + ], [ - "159508675748318", - "2305000000" + "759970831699973", + "28787919" ], [ - "159580351546434", - "4610000000" - ] - ] - ], - [ - "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974", - [ + "759970860487892", + "19771091" + ], [ - "72498640963293", - "15344851129" + "759970880258983", + "15686626" ], [ - "254221973427847", - "134379000000" + "759970984286242", + "87374833" ], [ - "531786137549545", - "52512241871" - ] - ] - ], - [ - "0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca", - [ + "759971071661075", + "100272607" + ], [ - "256709488442753", - "11960421970" - ] - ] - ], - [ - "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", - [ + "759971275765356", + "104013769" + ], [ - "433393784368", - "736682080" + "759971379779125", + "104148749" ], [ - "160699226852463", - "19581291457" + "759971483927874", + "104457385" ], [ - "401540811995625", - "5331732217" - ] - ] - ], - [ - "0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db", - [ + "759971588385259", + "39466456" + ], [ - "598199451554202", - "29744016905" - ] - ] - ], - [ - "0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b", - [ + "759971627851715", + "54459743" + ], [ - "32945625517253", - "161247227588" - ] - ] - ], - [ - "0x1FA517A273cC7e4305843DD136c09c8c370814be", - [ + "759971682311458", + "54613470" + ], [ - "408207040623818", - "67876110491" - ] - ] - ], - [ - "0x1faD27B543326E66185b7D1519C4E3d234D54A9C", - [ + "759971736924928", + "55455079" + ], [ - "3801746560076", - "1000000000" + "759972161919679", + "54726591" ], [ - "38060755842898", - "10000000000" - ] - ] - ], - [ - "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb", - [ + "759972216646270", + "53864309" + ], [ - "331711562300586", - "14540205488" + "760353418325910", + "21307875" ], [ - "336163982041551", - "11093799305" + "760353439633785", + "2581143" ], [ - "336942217514274", - "6716741513" + "760353442214928", + "935137" ], [ - "338375415070333", - "12611715224" - ] - ] - ], - [ - "0x201ad214891136FC37750029A14008D99B9ab814", - [ + "760353443150065", + "890707" + ], [ - "273830634179033", - "108850000718" - ] - ] - ], - [ - "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e", - [ + "760353444040772", + "934897" + ], [ - "655813561952324", - "110759009" + "760353444975669", + "1008171" ], [ - "742491932947261", - "50650088368" - ] - ] - ], - [ - "0x2032d6Fa962f05b05a648d0492936DCf879b0646", - [ + "760353445983840", + "940412" + ], [ - "167642878992324", - "21180650802" + "760353446924252", + "444260593" ], [ - "188809726173585", - "7159870568" + "760353891184845", + "18018938" ], [ - "189165629280356", - "22812490844" + "760353909203783", + "53690506" ], [ - "220191786590698", - "12020746267" - ] - ] - ], - [ - "0x20627f29B05c9ecd191542677492213aA51d9A61", - [ + "760353962894289", + "22923031" + ], [ - "576941170319018", - "76781922750" + "760353985817320", + "21080639" ], [ - "577603149817417", - "46559625597" + "760354006897959", + "19195962" ], [ - "586328662020556", - "51897457000" + "760354026093921", + "45460514" ], [ - "592657295032714", - "378309194016" + "760354071554435", + "45612372" ], [ - "595732510292240", - "90858470270" + "760354117166807", + "36974408" ], [ - "595932363187550", - "903793388372" + "760354154141215", + "19923401" ], [ - "596836156575922", - "629685276600" + "760354174064616", + "17275264" ], [ - "597465841852522", - "464850000000" + "760354191339880", + "696496" ], [ - "599486968121300", - "259777962939" + "760354192036376", + "1303460" ], [ - "599746746084239", - "330494092479" + "760354193339836", + "2298346" ], [ - "601738494764168", - "166149576292" - ] - ] - ], - [ - "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", - [ + "760354195638182", + "2606436" + ], [ - "109584713085687", - "1273885350" + "760354204355953", + "470384" ], [ - "634819675697276", - "2308620655" - ] - ] - ], - [ - "0x214e02A853dCAd01B2ab341e7827a656655A1B81", - [ + "760354204826337", + "11175759" + ], [ - "904990242139002", - "3425838650831" - ] - ] - ], - [ - "0x215F97a79287BE4192990FCc4555F7a102a7D3DE", - [ + "760354216002096", + "11300466" + ], [ - "257934797532327", - "19124814552" - ] - ] - ], - [ - "0x21754dF1E545e836be345B0F56Cde2D8419a21B2", - [ + "760354227302562", + "11536310" + ], [ - "465327248177676", - "39368282950" - ] - ] - ], - [ - "0x219312542D51cae86E47a1A18585f0bac6E6867B", - [ + "760357512160486", + "53864562" + ], [ - "92976132590563", - "20088923958" - ] - ] - ], - [ - "0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933", - [ + "760357566025048", + "53933512" + ], [ - "582395940698044", - "17931960176" - ] - ] - ], - [ - "0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa", - [ + "760357619958560", + "53946887" + ], [ - "637116380310734", - "3895753147" - ] - ] - ], - [ - "0x21D4Df25397446300C02338f334d0D219ABcc9C3", - [ + "760357673905447", + "54141970" + ], [ - "470380807066345", - "411624219865" + "760357728047417", + "69340215" ], [ - "470792431286210", - "37602900897" + "760357797387632", + "70550823" ], [ - "495349607400223", - "382964380420" + "760357867938455", + "70867493" ], [ - "495732571780643", - "253709415566" + "760357938805948", + "24481635" ], [ - "534876703831999", - "93233987544" + "760358015808387", + "53846437" ], [ - "552735179318713", - "72606632304" + "760358069654824", + "54081133" ], [ - "552823996796902", - "637060677585" + "760470665658443", + "785942" ], [ - "573166828849535", - "173997222406" - ] - ] - ], - [ - "0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A", - [ + "760470666444385", + "1144304" + ], [ - "376332551455167", - "6429254333" - ] - ] - ], - [ - "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", - [ + "760470667588689", + "1310135" + ], [ - "376477661392189", - "8428341425" + "761807540280731", + "160545" ], [ - "681711033814749", - "10245080960" + "761807540441276", + "429708" ], [ - "726097732002229", - "14602599487" + "761807540870984", + "618377" ], [ - "859260757600987", - "16570064186" - ] - ] - ], - [ - "0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6", - [ + "761807541489361", + "835669" + ], [ - "33126339744834", - "7" - ] - ] - ], - [ - "0x220c12268c6f1744553f456c3BF161bd8b423662", - [ + "761808254646701", + "457637" + ], [ - "250615351926669", - "14754910654" - ] - ] - ], - [ - "0x224e69025A2f705C8f31EFB6694398f8Fd09ac5C", - [ + "761818940422306", + "984887" + ], [ - "767578297685072", - "595189970" - ] - ] - ], - [ - "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", - [ + "761857611272333", + "28944037" + ], [ - "634989491135365", - "93881590000" + "761857640216370", + "22956002" ], [ - "635261553552881", - "89275000000" - ] - ] - ], - [ - "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", - [ + "761857663172372", + "23015051" + ], [ - "141930229169149", - "14065000000" + "761857686187423", + "17079412" ], [ - "626058811458059", - "125719249019" - ] - ] - ], - [ - "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", - [ + "761857703266835", + "34787792" + ], [ - "649732276779694", - "44876189" - ] - ] - ], - [ - "0x2342670674C652157c1282d7E7F1bD7460EFa9E2", - [ + "761857738054627", + "13476875" + ], [ - "358035739103727", - "19514795641" - ] - ] - ], - [ - "0x234831d4CFF3B7027E0424e23F019657005635e1", - [ + "761857751531502", + "13484900" + ], [ - "767502220600152", - "229602422" - ] - ] - ], - [ - "0x2352FDd9A457c549D822451B4cD43203580a29d1", - [ + "761857765016402", + "27660968" + ], [ - "299781959169774", - "468725307806" - ] - ] - ], - [ - "0x23b7413b721AB75FE7024E7782F9EdcE053f220C", - [ + "761857792677370", + "43935728" + ], [ - "606324488412981", - "1036783406" - ] - ] - ], - [ - "0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17", - [ + "761857836613098", + "53726319" + ], [ - "326225367529391", - "17549000000" - ] - ] - ], - [ - "0x23cAea94eB856767cf71a30824d72Ed5B93aA365", - [ + "761857890339417", + "31567337" + ], [ - "915418302913680", - "238900000000" - ] - ] - ], - [ - "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6", - [ + "761857921906754", + "19442054" + ], [ - "201837808921554", - "262588887949" + "761857941348808", + "27655195" ], [ - "202394225136865", - "268265834079" + "761857969004003", + "27685781" ], [ - "220191786576128", - "14570" - ] - ] - ], - [ - "0x24367F22624f739D7F8AB2976012FbDaB8dd33f4", - [ + "761857996689784", + "14517084" + ], [ - "26768674950508", - "427568784000" - ] - ] - ], - [ - "0x2437Db820DE92d8DD64B524954fA0D160767c471", - [ + "761861153261453", + "17618940" + ], [ - "344730632844876", - "14480118767" - ] - ] - ], - [ - "0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe", - [ + "761861170880393", + "52708112" + ], [ - "573460544800018", - "59926244178" - ] - ] - ], - [ - "0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3", - [ + "761861223588505", + "1133750000" + ], [ - "919026220879929", - "1124719481" - ] - ] - ], - [ - "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2", - [ + "762295064062834", + "111320920" + ], [ - "61869552594793", - "5201831386928" + "762295175383754", + "53936630" ], [ - "82817668297010", - "311908399084" + "762295229320384", + "54010885" ], [ - "372394178664282", - "2871900000000" - ] - ] - ], - [ - "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d", - [ + "762295283331269", + "54033702" + ], [ - "362140399162224", - "6273115407" + "762295337364971", + "54054047" ], [ - "376426019903538", - "25515357603" - ] - ] - ], - [ - "0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a", - [ + "762295391419018", + "54159010" + ], [ - "298791493215442", - "85000000000" - ] - ] - ], - [ - "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", - [ + "762295445578028", + "53483677" + ], [ - "186583237080659", - "8569224376" - ] - ] - ], - [ - "0x25d5Eb0603f36c47A53529b6A745A0805467B21F", - [ + "762295580014262", + "86989838" + ], [ - "299296287064019", - "22010000022" - ] - ] - ], - [ - "0x2612C1bc597799dc2A468D6537720B245f956A22", - [ + "762295667004100", + "29618432" + ], [ - "649130529433065", - "220044920" - ] - ] - ], - [ - "0x262126FD37D04321D7f824c8984976542fCA2C36", - [ + "762295696622532", + "53514750" + ], [ - "92555674061199", - "101864651658" - ] - ] - ], - [ - "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", - [ + "762295750137282", + "79440408" + ], [ - "434130466448", - "27751913384" + "762295829577690", + "88554558" ], [ - "464312835593", - "25323470663" + "762839409673019", + "1124000000" ], [ - "490607948331", - "9028357925" + "762926916547751", + "98431377" ], [ - "520071959814", - "9564346441" + "762927014979128", + "15784358" ], [ - "4931242977938", - "10898078686" + "762927030763486", + "1123500000" ], [ - "343529476955892", - "26569428177" + "762940872607458", + "54177313" ], [ - "581145184712006", - "762766666666" + "762940926784771", + "55156263" ], [ - "644413986347346", - "32" + "762941003155084", + "52319596" ], [ - "644546638392929", - "32" + "762941055474680", + "156457506" ], [ - "647552815161015", - "80311" + "762941211932186", + "53517184" ], [ - "647823489801690", - "15368221875" + "762941265449370", + "53566454" ], [ - "647953831875574", - "11699675781" + "762941319015824", + "54362634" ], [ - "648064641238285", - "12204390625" + "762941435120911", + "100238373" ], [ - "648143628178042", - "11488750000" + "762941535359284", + "2889658" ], [ - "648162303670466", - "13655200000" + "762941538248942", + "46035569" ], [ - "648218529970749", - "15127645459" + "763454272407770", + "3194591" ], [ - "648319733131161", - "9068714111" + "763707900610993", + "1115750000" ], [ - "648390451720158", - "17199921875" + "763792492493475", + "1116000000" ], [ - "648437018209889", - "15524432405" + "763803297529274", + "53478200" ], [ - "648537251303183", - "17" + "763803351007474", + "54572785" ], [ - "648669852761603", - "17910660356" + "763876749529752", + "46564085" ], [ - "648703542243759", - "13031467277" + "763876796093837", + "53551433" ], [ - "649087464308065", - "13380625000" + "763876849645270", + "37834720" ], [ - "649130749477985", - "12668079062" + "763876887479990", + "390583" + ], + [ + "763876887870573", + "55102196" + ], + [ + "763876942972769", + "1578152" + ], + [ + "763876946822805", + "18853190" + ], + [ + "763876965675995", + "87811" + ], + [ + "763876965763806", + "46267543" + ], + [ + "763877012031349", + "59141147" + ], + [ + "763877089726413", + "53473182" + ], + [ + "763877143199595", + "53513899" + ], + [ + "763877305809564", + "9728992" + ], + [ + "763877315538556", + "28373" + ], + [ + "763877315566929", + "65545" + ], + [ + "763877315632474", + "92711" + ], + [ + "763877315725185", + "105827" + ], + [ + "763877315831012", + "153650" + ], + [ + "763877315984662", + "11924506" + ], + [ + "763877327909168", + "19203818" + ], + [ + "763877454434453", + "2130383" + ], + [ + "763877456564836", + "43889485" + ], + [ + "763877500454321", + "53637818" + ], + [ + "763877554092139", + "4992987" + ], + [ + "763877559085126", + "78649" + ], + [ + "763877561341934", + "53679679" + ], + [ + "763877615021613", + "53699711" + ], + [ + "763877668721324", + "2881442" + ], + [ + "763877671602766", + "43770152" + ], + [ + "763877715372918", + "60410828" + ], + [ + "763877775783746", + "36230820" + ], + [ + "763877812014566", + "71702191" + ], + [ + "763879378249844", + "7153056" + ], + [ + "763879385402900", + "7227368" + ], + [ + "763879392630268", + "11477736" + ], + [ + "763879404108004", + "10660055" + ], + [ + "763879414768059", + "11118127" + ], + [ + "763898344398867", + "63786254" + ], + [ + "763898408185121", + "64002031" + ], + [ + "763898506920948", + "861786" + ], + [ + "763898507782734", + "10162644" + ], + [ + "763899495538368", + "9243915" + ], + [ + "763899504782283", + "37968961" + ], + [ + "763904604592937", + "29092593" + ], + [ + "763904633685530", + "17984979" + ], + [ + "763904651670509", + "18018550" + ], + [ + "763904669689059", + "18842007" + ], + [ + "763904688531066", + "16688868" + ], + [ + "763904705219934", + "15727180" + ], + [ + "763904720947114", + "15825494" + ], + [ + "763904736772608", + "17883715" + ], + [ + "763904754656323", + "12528228" + ], + [ + "763904767184551", + "1918749" + ], + [ + "763904769103300", + "10530035" + ], + [ + "763904779633335", + "10728257" + ], + [ + "763904790361592", + "4605084" + ], + [ + "763904794966676", + "8970126" + ], + [ + "763910595276884", + "8829644" + ], + [ + "763910604106528", + "3311197" + ], + [ + "763910607417725", + "12163802" + ], + [ + "763910619581527", + "12428237" + ], + [ + "763910632009764", + "10056575" + ], + [ + "763910642066339", + "73796314" + ], + [ + "763938649705538", + "15087847" + ], + [ + "763944448544389", + "15498278" + ], + [ + "763944464042667", + "24830243" + ], + [ + "763944488872910", + "24944523" + ], + [ + "763953533706671", + "11007680" + ], + [ + "763953544714351", + "11282748" + ], + [ + "763953555997099", + "11335662" + ], + [ + "763953567332761", + "11465066" + ], + [ + "763953578797827", + "11935751" + ], + [ + "763953590733578", + "12877546" + ], + [ + "763953603611124", + "12886748" + ], + [ + "763953616497872", + "7982235" + ], + [ + "763953624480107", + "9765854" + ], + [ + "763953634245961", + "9797075" + ], + [ + "763953644043036", + "1044500000" + ], + [ + "763975806959978", + "85094056" + ], + [ + "763975892054034", + "85627588" + ], + [ + "763977822667370", + "3016979" + ], + [ + "763977825684349", + "3091465" ], [ - "654557370948114", - "213185000000" + "763977828775814", + "557388194" ], [ - "655483763856093", - "154938000000" + "763978386164008", + "8620088" ], [ - "663001818967242", - "28" + "763978394784096", + "29342107" ], [ - "664619505628960", - "22" + "763978424126203", + "9543362" ], [ - "665701343812538", - "20" + "763978433669565", + "9611296" ], [ - "666251093296344", - "277121831207" + "763978443280861", + "9636433" ], [ - "666528215127551", - "294971062419" + "763978452917294", + "8046683" ], [ - "669913176913700", - "168992222694" + "763978460963977", + "10828154" ], [ - "670265992890158", - "3760739846" + "763978471792131", + "7543534" ], [ - "670269753630004", - "195093286581" + "763978479335665", + "4689652" ], [ - "670708659416585", - "8315794130" + "763978484025317", + "12897667" ], [ - "671204344019292", - "9227239745" + "763978496922984", + "8815547" ], [ - "673990119454246", - "387240" + "763978514586346", + "9143544" ], [ - "673990119841486", - "266985351613" + "763978523729890", + "9413342" ], [ - "674290923945041", - "214257648238" + "763978533143232", + "9416885" ], [ - "675271870072786", - "1265309093" + "763978542560117", + "10373808" ], [ - "675939800999403", - "89647628696" + "763978552933925", + "19789932" ], [ - "676546386034429", - "6694533342" + "763981005309782", + "8883084" ], [ - "676553080567771", - "8499476521" + "763981014192866", + "8984999" ], [ - "676561580044292", - "10140222821" + "763981023177865", + "9076772" ], [ - "676571720267113", - "11668233878" + "763983162727275", + "10372838" ], [ - "676583388500991", - "13349099640" + "763983173100113", + "901279" ], [ - "676596737600631", - "14641791657" + "763983174001392", + "11304378" ], [ - "676611379392288", - "16023438417" + "763983185305770", + "11337518" ], [ - "676627402830705", - "17794160449" + "763983207512362", + "9837030" ], [ - "676645196991154", - "19717534095" + "763983217349392", + "1100829" ], [ - "676686202345495", - "21015744781" + "763983218450221", + "66658" ], [ - "676707218090276", - "21993061317" + "763983218516879", + "73073" ], [ - "676751492794865", - "125608" + "763983218589952", + "414078" ], [ - "676751492920473", - "55278924469" + "763983219004030", + "16583629" ], [ - "676879462123907", - "722460698" + "763983235587659", + "75873" ], [ - "676961397323692", - "84887658705" + "763983235663532", + "104758" ], [ - "677046284982397", - "75519741929" + "763983235768290", + "319760" ], [ - "677172387770040", - "6131806238" + "763983236088050", + "347778" ], [ - "677178519576278", - "59202430775" + "763983305487564", + "10457152" ], [ - "677237722007053", - "60660646377" + "763983315944716", + "10556364" ], [ - "677298382653430", - "55297098356" + "763983326501080", + "8290697" ], [ - "677353679751786", - "41809339114" + "763983334791777", + "5644455" ], [ - "677395489090900", - "36138699789" + "763983340436232", + "7945168" ], [ - "677463173067632", - "28108721786" + "763983348381400", + "13385894" ], [ - "677511504808903", - "3551817566" + "763983361767294", + "45138194" ], [ - "677515056626469", - "10550613290" + "763983406905488", + "1866587" ], [ - "677525607239759", - "4793787549" + "763983408772075", + "9980195" ], [ - "677530401027308", - "236335204805" + "763983418752270", + "5750227" ], [ - "677766895578568", - "178586879475" + "763983424502497", + "9795651" ], [ - "677945482458043", - "293860207608" + "763983444147323", + "10906649" ], [ - "678239342665651", - "675575202780" + "763983455053972", + "11996728" ], [ - "682826275044476", - "17833430647" + "763983467050700", + "8506342" ], [ - "682845259142899", - "85872956797" + "763985928672040", + "10937512" ], [ - "682931132099696", - "137696415333" + "763985939609552", + "11006773" ], [ - "683088991506904", - "102232834268" - ] - ] - ], - [ - "0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D", - [ + "763985950616325", + "328433" + ], [ - "323262951431540", - "22464236574" - ] - ] - ], - [ - "0x26AFBbC659076B062548e8f46D424842Bc715064", - [ + "763985950944758", + "10334991" + ], [ - "258943234658706", - "94067068214" - ] - ] - ], - [ - "0x26C08ce60A17a130f5483D50C404bDE46985bCaf", - [ + "764056285307640", + "9063092" + ], [ - "325145004497070", - "113447201008" - ] - ] - ], - [ - "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5", - [ + "764056313282603", + "12814935" + ], [ - "682845256557823", - "2585076" + "764056326097538", + "13040915" ], [ - "741718653137282", - "111751582" - ] - ] - ], - [ - "0x26f781D7f59c67BBd16acED83dB4ba90d1e47689", - [ + "764056855356215", + "8019575" + ], [ - "109548569427007", - "2250551935" - ] - ] - ], - [ - "0x27320AAc0E3bbc165E6048aFc0F28500091dca73", - [ + "764056863375790", + "12804398" + ], [ - "240574257021760", - "14827650417" - ] - ] - ], - [ - "0x2745a1f9774FF3b59cbDfC139c6f19f003392e2C", - [ + "764056876180188", + "14241010" + ], [ - "580465682607657", - "1581698780" + "764056890421198", + "10969416" ], [ - "643046212115536", - "1220733194" + "764056901390614", + "2177420" ], [ - "643059909351872", - "5072600938" + "764056903568034", + "9204085" ], [ - "643616429319061", - "1117067455" + "764056912772119", + "9213207" ], [ - "643630556511892", - "3144911832" + "764058367111510", + "11163969" ], [ - "644440076885807", - "2439339467" + "764058378275479", + "11300738" ], [ - "646983796131611", - "1010894641" - ] - ] - ], - [ - "0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f", - [ + "764058389576217", + "5496270" + ], [ - "201441256822560", - "15818274887" - ] - ] - ], - [ - "0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9", - [ + "764058395072487", + "361195" + ], [ - "266838658304301", - "216644999935" - ] - ] - ], - [ - "0x277FC128D042B081F3EE99881802538E05af8c43", - [ + "764058395433682", + "772104" + ], [ - "267204322956411", - "8634054720" - ] - ] - ], - [ - "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", - [ + "764058396205786", + "696608867" + ], [ - "311015613569053", - "6238486940" - ] - ] - ], - [ - "0x2817a8dFe9DCff27449C8C66Fa02e05530859B73", - [ + "764059092814653", + "9050379" + ], [ - "495986281196209", - "327035406660" - ] - ] - ], - [ - "0x284A2d22620974fb416D866c18a1f3c848E7b7Bc", - [ + "764059101865032", + "4195172" + ], [ - "644367998960591", - "103407742" - ] - ] - ], - [ - "0x284f942F11a5046a5D11BCbEC9beCb46d1172512", - [ + "764059106060204", + "11535858" + ], [ - "51088313644799", - "41188549146" + "764059117596062", + "255180" ], [ - "258469319874650", - "96515746089" - ] - ] - ], - [ - "0x2894457502751d0F92ed1e740e2c8935F879E8AE", - [ + "764059117851242", + "8969278" + ], [ - "18052754491380", - "1000000000" + "764059126820520", + "9303793" ], [ - "141944294169149", - "10000000000" + "764059136124313", + "9999166" ], [ - "744765029950609", - "18206372000" - ] - ] - ], - [ - "0x28A40076496E02a9A527D7323175b15050b6C67c", - [ + "764059146123479", + "10009538" + ], [ - "273700188355894", - "16557580124" + "764059156133017", + "1216684" ], [ - "325749068110199", - "19498214619" + "764059157349701", + "33393007" ], [ - "326472527780618", - "118292810725" + "764059190742708", + "735377" ], [ - "406164449052348", - "405035690" + "764059191478085", + "10266010" ], [ - "406164854088038", - "499650000" + "764060081853851", + "8204048" ], [ - "406165353738038", - "404668999" - ] - ] - ], - [ - "0x28aB25Bf7A691416445A85290717260971151eD2", - [ + "764060090057899", + "9732642" + ], [ - "267322616665401", - "11510822108" - ] - ] - ], - [ - "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", - [ + "764060099790541", + "10150423" + ], [ - "160648337135830", - "30093729527" + "764100306041728", + "17982514" ], [ - "637761302275033", - "380793557160" + "764100324024242", + "18573856" ], [ - "766434901228015", - "15422132619" - ] - ] - ], - [ - "0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4", - [ + "764111950239427", + "944000000" + ], [ - "7395832970393", - "10000000000" - ] - ] - ], - [ - "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", - [ + "764113461776720", + "6235875" + ], [ - "33186875353373", - "500000000" + "764113468012595", + "8992681" ], [ - "67435055994809", - "10000000000" + "764113477005276", + "943500000" ], [ - "153926655075128", - "838565448" + "764114420505276", + "943500000" ], [ - "282587028442772", - "17250582700" + "764115364005276", + "35299689" ], [ - "525672111796446", - "70060393479" + "764115399304965", + "6707115" ], [ - "595441968432834", - "80085100000" + "764115406012080", + "10253563" ], [ - "630893407534395", - "196063966" + "764115416265643", + "52697117" ], [ - "872761488129531", - "70125007621" - ] - ] - ], - [ - "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", - [ - [ - "18051338281355", - "50364336" + "764115468962760", + "940750000" ], [ - "18051388645691", - "1232512356" - ] - ] - ], - [ - "0x297751960DAD09c6d38b73538C1cce45457d796d", - [ + "764331262748162", + "945750000" + ], [ - "41373044931817", - "727522" + "764438000829295", + "946000000" ], [ - "67097307242511", - "15" + "764451708497435", + "10007361" ], [ - "87849021601047", - "80437" + "764451718504796", + "10260665" ], [ - "90975474968754", - "3" + "764451728765461", + "10443811" ], [ - "153701253420471", - "67407" + "764451739209272", + "10884086" ], [ - "232482126144006", - "5451263" + "764451750093358", + "895341231" ], [ - "376489301622502", - "37387" - ] - ] - ], - [ - "0x29841AfFE231392BF0826B85488e411C3E5B9cC4", - [ + "764452645434589", + "3190831" + ], [ - "631794823129224", - "1314233166" - ] - ] - ], - [ - "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3", - [ + "764452656731669", + "8125848" + ], [ - "160678430865357", - "18253993180" + "764452664857517", + "8140742" ], [ - "167558036125804", - "84842866520" + "764452672998259", + "8207851" ], [ - "634190283997794", - "1715232990" - ] - ] - ], - [ - "0x299e4B9591993c6001822baCF41aff63F9C1C93F", - [ + "764452681206110", + "5437824" + ], [ - "260069118609084", - "794705201763" + "764452686643934", + "1634581" ], [ - "267656630501959", - "150336454905" + "764452688278515", + "30412" ], [ - "295137332480012", - "2607932412299" + "764452688308927", + "6680863" ], [ - "297745264892311", - "766254121133" - ] - ] - ], - [ - "0x29e1A68927a46f42d3B82417A01645Ee23F86bD9", - [ + "764452694989790", + "1390995" + ], [ - "324911717326872", - "115438917" - ] - ] - ], - [ - "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20", - [ + "764452696380785", + "6703924" + ], [ - "51129502193945", - "25356695159" + "764452703084709", + "4836310" ], [ - "202818106667533", - "17842441406" + "764452707921019", + "2347531" ], [ - "408046817720715", - "10000317834" - ] - ] - ], - [ - "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", - [ + "764452710268550", + "2444950" + ], [ - "76028680969604", - "604036207" + "764452712713500", + "2595517" ], [ - "680317702465922", - "5002669630" + "764452715309017", + "5693285" ], [ - "760184010820995", - "729833339" + "764452721002302", + "7659096" ], [ - "760470668898824", - "369074345" - ] - ] - ], - [ - "0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F", - [ + "764452735085521", + "1617109" + ], [ - "258032653899264", - "42247542366" - ] - ] - ], - [ - "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", - [ + "764452736702630", + "901875" + ], [ - "59269854376843", - "29229453541" + "764452737604505", + "8786495" ], [ - "97271320489293", - "40869054933" + "764452746391000", + "8796994" ], [ - "157521724557081", - "21334750070" + "764452755187994", + "483474928" ], [ - "159085770998418", - "46100000000" + "764453238662922", + "9945879" ], [ - "189188441771200", - "19872173070" + "764453248608801", + "9384752" ], [ - "189208313944270", - "13412667204" - ] - ] - ], - [ - "0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C", - [ + "764453257993553", + "18030442" + ], [ - "186248277026701", - "1607000000" + "764453276023995", + "18998861" ], [ - "634495210451551", - "1561000000" - ] - ] - ], - [ - "0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37", - [ + "764453295022856", + "19005242" + ], [ - "187153746256456", - "42281642936" - ] - ] - ], - [ - "0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C", - [ + "764454200747569", + "8013962" + ], [ - "598229195571107", - "175120144248" + "764454208761531", + "344483" ], [ - "598404315715355", - "706556073123" - ] - ] - ], - [ - "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65", - [ + "764454209106014", + "3844352" + ], [ - "75517881623550", - "38308339380" + "764454213921411", + "8933515" ], [ - "118284988563198", - "23400000000" + "764454222854926", + "9498746" ], [ - "243340907864513", - "5071931149" + "764454232353672", + "9503988" ], [ - "244927756280795", - "46513491853" + "764454241857660", + "10385991" ], [ - "319587273487138", - "99704140012" + "764454252243651", + "10467439" ], [ - "331528394095863", - "121345718040" - ] - ] - ], - [ - "0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB", - [ + "764454262711090", + "9988705" + ], [ - "595522053532834", - "168039500000" - ] - ] - ], - [ - "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf", - [ + "764454272699795", + "8980636" + ], [ - "786871494302699", - "450790656" + "764454281680431", + "9308598" ], [ - "786871945093355", - "932517247" - ] - ] - ], - [ - "0x2bDB0cB25Db0012dF643041B3490d163A1809eE6", - [ + "764454290989029", + "9335269" + ], [ - "157417754524248", - "84608203869" - ] - ] - ], - [ - "0x2BeaB5818689309117AAfB0B89cd6F276C824D34", - [ + "764454300324298", + "7550863" + ], [ - "344363859002519", - "25254232357" - ] - ] - ], - [ - "0x2BEe2D53261B16892733B448351a8Fd8c0f743e7", - [ + "764454307875161", + "4906079" + ], [ - "919414411428634", - "147996" - ] - ] - ], - [ - "0x2bF046A052942B53Ca6746de4D3295d8f10d4562", - [ + "764454312781240", + "8991244" + ], [ - "740992675275273", - "14660252551" - ] - ] - ], - [ - "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", - [ + "764454321772484", + "12424176" + ], [ - "61022673231233", - "21700205805" + "764454334196660", + "4683059" ], [ - "91013305781059", - "21825144968" + "764454338879719", + "808524" ], [ - "197758167416406", - "3504136084" + "764454339688243", + "16696896" ], [ - "213430473225415", - "19297575823" + "764454356385139", + "188453" ], [ - "227257304826086", - "8838791596" + "764454356573592", + "244246" ], [ - "227797101910617", - "34509154491" + "764454356817838", + "399227" ], [ - "235855165427494", - "2631578947" + "764454357217065", + "428167" ], [ - "648015664036231", - "1982509180" - ] - ] - ], - [ - "0x2C01E651a64387352EbAF860165778049031e190", - [ + "764454357645232", + "436981" + ], [ - "401140958523891", - "6000000000" - ] - ] - ], - [ - "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3", - [ + "764454358082213", + "492999" + ], [ - "28059702904241", - "1259635749" + "764454358575212", + "591362" ], [ - "78570049172294", - "5603412867" + "764457158712640", + "9556834" ], [ - "107446086823768", - "4363527272" - ] - ] - ], - [ - "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", - [ + "766112773148016", + "905500000" + ], [ - "136612399855910", - "1516327182560" + "767983184669679", + "52737476" ], [ - "180612996863780", - "58781595885" + "767983237407155", + "53575704" ], [ - "564786469810178", - "14382502530" + "767983290982859", + "53768852" ], [ - "566175469825977", - "30150907500" + "767983344751711", + "55352725" ], [ - "568987325580815", - "30150907500" + "767983400104436", + "47061647" ], [ - "570096344263715", - "30150907500" + "767983447166083", + "1110500000" ], [ - "572087175787753", - "30150907500" - ] - ] - ], - [ - "0x2d0DDb67B7D551aFa7c8FA4D31F86DA9cc947450", - [ + "767984557666083", + "88333125" + ], [ - "401401284712966", - "133555430770" - ] - ] - ], - [ - "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", - [ + "767984645999208", + "129427752" + ], [ - "13620320740040", - "2776257694900" + "768003822182998", + "1121250000" ], [ - "345351025418338", - "1509530400000" + "768004943433356", + "78186024" ], [ - "347475827541041", - "1543861200000" + "768005021619380", + "54621494" ], [ - "763876703327895", - "46201857" + "768005076240874", + "65591706" ], [ - "763877400753507", - "53680946" + "768005141832580", + "81397820" ], [ - "763877883716757", - "1494533087" + "768005223230400", + "89638206" ], [ - "763898520549826", - "974988542" + "768005312868606", + "88216460" ], [ - "763903829825521", - "684952219" + "768005401085066", + "85936196" ], [ - "763904803936802", - "52372148" + "768005487021262", + "88956801" ], [ - "763914820231283", - "23750326521" + "768006108101322", + "88031169" ], [ - "763938570557804", - "79147734" + "768006196132491", + "88045520" ], [ - "763939554575290", - "4893969099" + "768006284178011", + "88084070" ], [ - "763944513817433", - "9019889238" + "768006372262081", + "88157182" ], [ - "763954688543036", - "21118416942" + "768006460420859", + "1111500000" ], [ - "763976072545528", - "54845693" + "768055033287471", + "1118250000" ], [ - "763976182271147", - "52203689" + "768056151539394", + "128513841" ], [ - "763976306153164", - "51007458" + "768056280053235", + "127000562" ], [ - "763976388222525", - "1300355823" + "768056407053797", + "132748869" ], [ - "763981032254637", - "2130472638" + "768056539802666", + "124378256" ], [ - "763983236435828", - "69051736" + "768056664180922", + "119219224" ], [ - "764056339138453", - "516217762" + "768056783400146", + "120768946" ], [ - "764056921985326", - "1434013875" + "768056904169092", + "128280239" ], [ - "764059354079704", - "590245000" + "768057160925595", + "129567688" ], [ - "764454359166574", - "2799546066" + "768057290493283", + "129626968" ], [ - "764457168269474", - "797906392781" + "768057420120251", + "131641826" ], [ - "765255074662255", - "857156766102" + "768057551762077", + "132785034" ], [ - "767510533786724", - "123" + "768057684547111", + "149829249" ], [ - "767510533786847", - "165" + "768058524884871", + "83536024" ], [ - "767510533787012", - "206" + "768058608420895", + "87311253" ], [ - "767510533787218", - "288" + "768058695732148", + "88832233" ], [ - "767510533787506", - "330" + "768058784564381", + "86928993" ], [ - "767510533787836", - "371" + "768058871493374", + "86484069" ], [ - "767510533788207", - "413" + "768058957977443", + "87016874" ], [ - "767510533788620", - "454" + "768059044994317", + "88333175" ], [ - "767510533789074", - "495" + "768059133327492", + "91669405" ], [ - "767510533789569", - "537" + "768059224996897", + "87910416" ], [ - "767510533790106", - "578" + "768059312907313", + "87683732" ], [ - "767511386360882", - "620" + "768059400591045", + "86467952" ], [ - "767511386361502", - "662" + "768059487058997", + "86594113" ], [ - "767511386362164", - "703" + "768059573653110", + "86619651" ], [ - "767511386362867", - "745" + "768059660272761", + "87730086" ], [ - "767511386363612", - "786" + "768059748002847", + "86397690" ], [ - "767511386364398", - "828" + "768059834400537", + "86441349" ], [ - "767511386365226", - "870" + "768059920841886", + "88343548" ], [ - "767511386366096", - "912" + "768060009185434", + "88187255" ], [ - "767511386367008", - "954" + "768060097372689", + "123265068" ], [ - "767511386367962", - "996" + "845854664288223", + "3559343229" ], [ - "767511386368958", - "1038" + "845858223631452", + "4963424782" ], [ - "767511386369996", - "1081" + "845863187056234", + "3248663591" ], [ - "767511386371077", - "1123" + "845866435719825", + "1723984401" ], [ - "767511386372200", - "1165" + "859627528207302", + "22832250" ], [ - "767511386373365", - "1208" + "859758703320142", + "1614400" ], [ - "767511386374573", - "1251" + "859839403331480", + "161450" ], [ - "767511386375824", - "1293" + "859839403492930", + "169491" ], [ - "767511386377117", - "1336" + "859839403662421", + "1613900" ], [ - "767511386378453", - "1379" + "859839405276321", + "19836791" ], [ - "767511386379832", - "1421" + "859839425113112", + "20285472" ], [ - "767511386381253", - "1464" + "859839445398584", + "1613300" ], [ - "767511386382717", - "1507" + "859839447011884", + "1695263" ], [ - "767511386384265", - "83" + "859839448707147", + "1781388" ], [ - "767511386384348", - "125" + "859839450488535", + "9760866" ], [ - "767511386384473", - "167" + "859903168498760", + "1025355734" ], [ - "767511386384640", - "209" + "859905004526751", + "325809885" ], [ - "767511386384849", - "251" + "859909143181247", + "169472" ], [ - "767511386385100", - "293" + "860099248353783", + "168836" ], [ - "767511386385393", - "335" + "860099248522619", + "178837" ], [ - "767511386385728", - "378" + "860099248701456", + "189471" ], [ - "767511386386106", - "420" + "860106007379004", + "158770" ], [ - "767511386386526", - "462" + "860106007537774", + "168264" ], [ - "767511386386988", - "504" + "860106018269867", + "178231" ], [ - "767511386387492", - "546" + "860106018448098", + "188829" + ] + ] + ], + [ + "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", + [ + [ + "212720660289097", + "405214898001" + ] + ] + ], + [ + "0x19CB3CfB44B052077E2c4dF7095900ce0b634056", + [ + [ + "76126854262565", + "9614320026" + ] + ] + ], + [ + "0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C", + [ + [ + "720950939776219", + "15067225270" + ] + ] + ], + [ + "0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76", + [ + [ + "429681884991709", + "16666666666" + ] + ] + ], + [ + "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", + [ + [ + "643132812995983", + "40000000000" ], [ - "767511386388038", - "589" + "643906455631587", + "3366190225" + ] + ] + ], + [ + "0x1a368885B299D51E477c2737E0330aB35529154a", + [ + [ + "318979377505709", + "96310216033" + ] + ] + ], + [ + "0x1a5280B471024622714DEc80344E2AC2823fd841", + [ + [ + "343556046384069", + "24488082083" + ] + ] + ], + [ + "0x1aA6F8B965d692c8162131F98219a6986DD10A83", + [ + [ + "430080127673356", + "15368916223" + ] + ] + ], + [ + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", + [ + [ + "76197765704929", + "4483509093" ], [ - "767511386388627", - "631" + "624723028217150", + "131393988394" ], [ - "767511386389258", - "673" + "635895692062085", + "9135365741" ], [ - "767511386389931", - "716" + "636308866306005", + "8420726212" ], [ - "767511386390647", - "758" + "639647047295076", + "24523740645" + ] + ] + ], + [ + "0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b", + [ + [ + "170254522172883", + "17764281739" + ] + ] + ], + [ + "0x1aD66517368179738f521AF62E1acFe8816c22a4", + [ + [ + "38725058902818", + "4046506513" ], [ - "767511386391405", - "800" + "634197083749312", + "3652730115" ], [ - "767511386392205", - "843" + "634438435405713", + "6190991388" ], [ - "767511386393048", - "927" + "639424921077105", + "10000000000" ], [ - "767511386393975", - "1012" + "640886662352708", + "43494915041" ], [ - "767511386394987", - "1096" + "680807511563555", + "7644571244" + ] + ] + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + [ + [ + "153700721920471", + "531500000" ], [ - "767511386396083", - "1181" + "220191598626128", + "187950000" ], [ - "767511386397264", - "1266" + "229939110243935", + "6322304733" ], [ - "767511386398530", - "1351" + "229945432548668", + "8363898233" ], [ - "767511386399881", - "1435" + "279068417135852", + "3937395000" ], [ - "767511386401316", - "1520" + "279072354530852", + "5849480200" + ] + ] + ], + [ + "0x1B89a08D82079337740e1cef68c571069725306e", + [ + [ + "87019591255367", + "29419590331" + ] + ] + ], + [ + "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF", + [ + [ + "919414419371700", + "44905425998" + ] + ] + ], + [ + "0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E", + [ + [ + "12977130692247", + "21105757579" + ] + ] + ], + [ + "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", + [ + [ + "45739702462830", + "16499109105" ], [ - "767511386402836", - "1605" + "87114876540897", + "188352182040" ], [ - "767511386404441", - "1690" + "250563494637659", + "51857289010" ], [ - "767511386406131", - "1817" + "267398540448510", + "101208590466" ], [ - "767511386407948", - "1944" + "267499749038976", + "70064409829" ], [ - "767511386409892", - "2072" + "573375993529429", + "36792124887" ], [ - "767511386411964", - "2199" + "870607247677965", + "2137555078286" + ] + ] + ], + [ + "0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4", + [ + [ + "353495072528037", + "320790778183" + ] + ] + ], + [ + "0x1d18B7E78a9a92a9DF8a1e3546b4B1fB825e012A", + [ + [ + "469496367277393", + "558419996300" + ] + ] + ], + [ + "0x1d264de8264a506Ed0E88E5E092131915913Ed17", + [ + [ + "649244006768867", + "4669501379" ], [ - "767511386414163", - "2327" - ], + "796038682086854", + "84590167390" + ] + ] + ], + [ + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", + [ + [ + "781813701764341", + "29578830513" + ] + ] + ], + [ + "0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E", + [ + [ + "327484450418198", + "123019710377" + ] + ] + ], + [ + "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714", + [ [ - "767511386416490", - "2454" + "159508675748318", + "2305000000" ], [ - "767511386418944", - "2582" - ], + "159580351546434", + "4610000000" + ] + ] + ], + [ + "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974", + [ [ - "767511386421526", - "2752" + "72498640963293", + "15344851129" ], [ - "767511386424278", - "2922" + "254221973427847", + "134379000000" ], [ - "767511386427200", - "3092" - ], + "531786137549545", + "52512241871" + ] + ] + ], + [ + "0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca", + [ [ - "767511386430292", - "3262" - ], + "256709488442753", + "11960421970" + ] + ] + ], + [ + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", + [ [ - "767511386433554", - "3432" + "433393784368", + "736682080" ], [ - "767511386436986", - "3645" + "160699226852463", + "19581291457" ], [ - "767511386440631", - "3858" - ], + "401540811995625", + "5331732217" + ] + ] + ], + [ + "0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db", + [ [ - "767511386444489", - "4071" - ], + "598199451554202", + "29744016905" + ] + ] + ], + [ + "0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b", + [ [ - "767511386448560", - "4284" - ], + "32945625517253", + "161247227588" + ] + ] + ], + [ + "0x1FA517A273cC7e4305843DD136c09c8c370814be", + [ [ - "767511386452844", - "4540" - ], + "408207040623818", + "67876110491" + ] + ] + ], + [ + "0x1faD27B543326E66185b7D1519C4E3d234D54A9C", + [ [ - "767511386457384", - "4795" + "3801746560076", + "1000000000" ], [ - "767511386462179", - "5051" - ], + "38060755842898", + "10000000000" + ] + ] + ], + [ + "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb", + [ [ - "767511386467230", - "5349" + "331711562300586", + "14540205488" ], [ - "767511386472579", - "5648" + "336163982041551", + "11093799305" ], [ - "767511386478227", - "5947" + "336942217514274", + "6716741513" ], [ - "767511386484174", - "6288" - ], + "338375415070333", + "12611715224" + ] + ] + ], + [ + "0x201ad214891136FC37750029A14008D99B9ab814", + [ [ - "767511386490462", - "6630" - ], + "273830634179033", + "108850000718" + ] + ] + ], + [ + "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e", + [ [ - "767511386497092", - "6971" + "655813561952324", + "110759009" ], [ - "767511386504063", - "7355" - ], + "742491932947261", + "50650088368" + ] + ] + ], + [ + "0x2032d6Fa962f05b05a648d0492936DCf879b0646", + [ [ - "767511386511418", - "7740" + "167642878992324", + "21180650802" ], [ - "767511386519158", - "8167" + "188809726173585", + "7159870568" ], [ - "767511386527325", - "8595" + "189165629280356", + "22812490844" ], [ - "767511386535920", - "9065" - ], + "220191786590698", + "12020746267" + ] + ] + ], + [ + "0x20627f29B05c9ecd191542677492213aA51d9A61", + [ [ - "767511386544985", - "9535" + "576941170319018", + "76781922750" ], [ - "767511386554520", - "10048" + "577603149817417", + "46559625597" ], [ - "767511386564568", - "10604" + "586328662020556", + "51897457000" ], [ - "767511386575172", - "11161" + "592657295032714", + "378309194016" ], [ - "767511386586333", - "12408" + "595732510292240", + "90858470270" ], [ - "767511386598741", - "13050" + "595932363187550", + "903793388372" ], [ - "767511386611791", - "13736" + "596836156575922", + "629685276600" ], [ - "767511386625527", - "14465" + "597465841852522", + "464850000000" ], [ - "767511386639992", - "15236" + "599486968121300", + "259777962939" ], [ - "767511386655228", - "16051" + "599746746084239", + "330494092479" ], [ - "767511386671279", - "16909" - ], + "601738494764168", + "166149576292" + ] + ] + ], + [ + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", + [ [ - "767511386688188", - "17810" + "109584713085687", + "1273885350" ], [ - "767511386705998", - "18754" - ], + "634819675697276", + "2308620655" + ] + ] + ], + [ + "0x214e02A853dCAd01B2ab341e7827a656655A1B81", + [ [ - "767511386724752", - "19741" - ], + "904990242139002", + "3425838650831" + ] + ] + ], + [ + "0x215F97a79287BE4192990FCc4555F7a102a7D3DE", + [ [ - "767511386744493", - "20771" - ], + "257934797532327", + "19124814552" + ] + ] + ], + [ + "0x21754dF1E545e836be345B0F56Cde2D8419a21B2", + [ [ - "767511386765264", - "21845" - ], + "465327248177676", + "39368282950" + ] + ] + ], + [ + "0x219312542D51cae86E47a1A18585f0bac6E6867B", + [ [ - "767511386787109", - "23004" - ], + "92976132590563", + "20088923958" + ] + ] + ], + [ + "0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933", + [ [ - "767511386810113", - "24207" - ], + "582395940698044", + "17931960176" + ] + ] + ], + [ + "0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa", + [ [ - "767511386834320", - "25454" - ], + "637116380310734", + "3895753147" + ] + ] + ], + [ + "0x21D4Df25397446300C02338f334d0D219ABcc9C3", + [ [ - "767511386859774", - "26786" + "470380807066345", + "411624219865" ], [ - "767511386886560", - "28162" + "470792431286210", + "37602900897" ], [ - "767511386914722", - "29624" + "495349607400223", + "382964380420" ], [ - "767548493417834", - "31172" + "495732571780643", + "253709415566" ], [ - "767548493449006", - "32823" + "534876703831999", + "93233987544" ], [ - "767548493481829", - "32830" + "552735179318713", + "72606632304" ], [ - "767548493514659", - "34569" + "552823996796902", + "637060677585" ], [ - "767548493549228", - "36379" - ], + "573166828849535", + "173997222406" + ] + ] + ], + [ + "0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A", + [ [ - "767548493585607", - "38275" - ], + "376332551455167", + "6429254333" + ] + ] + ], + [ + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", + [ [ - "767548493623882", - "40258" + "376477661392189", + "8428341425" ], [ - "767548493664140", - "42328" + "681711033814749", + "10245080960" ], [ - "767548493706468", - "44528" + "726097732002229", + "14602599487" ], [ - "767548493750996", - "46815" - ], + "859260757600987", + "16570064186" + ] + ] + ], + [ + "0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6", + [ [ - "767548493797811", - "49232" - ], + "33126339744834", + "7" + ] + ] + ], + [ + "0x220c12268c6f1744553f456c3BF161bd8b423662", + [ [ - "767548493847043", - "51778" - ], + "250615351926669", + "14754910654" + ] + ] + ], + [ + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", + [ [ - "767548493898821", - "54455" + "634989491135365", + "93881590000" ], [ - "767548493953276", - "57262" - ], + "635261553552881", + "89275000000" + ] + ] + ], + [ + "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", + [ [ - "767548494010538", - "60200" + "141930229169149", + "14065000000" ], [ - "767548494070738", - "63310" - ], + "626058811458059", + "125719249019" + ] + ] + ], + [ + "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", + [ [ - "767548494134048", - "66594" - ], + "649732276779694", + "44876189" + ] + ] + ], + [ + "0x2342670674C652157c1282d7E7F1bD7460EFa9E2", + [ [ - "767549755547042", - "70009" - ], + "358035739103727", + "19514795641" + ] + ] + ], + [ + "0x2352FDd9A457c549D822451B4cD43203580a29d1", + [ [ - "767549755617051", - "73632" - ], + "299781959169774", + "468725307806" + ] + ] + ], + [ + "0x23b7413b721AB75FE7024E7782F9EdcE053f220C", + [ [ - "767578296825681", - "77439" - ], + "606324488412981", + "1036783406" + ] + ] + ], + [ + "0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17", + [ [ - "767578296903120", - "81459" - ], + "326225367529391", + "17549000000" + ] + ] + ], + [ + "0x23cAea94eB856767cf71a30824d72Ed5B93aA365", + [ [ - "767578296984579", - "85659" - ], + "915418302913680", + "238900000000" + ] + ] + ], + [ + "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6", + [ [ - "767578297070238", - "90077" + "201837808921554", + "262588887949" ], [ - "767578297160315", - "94713" + "202394225136865", + "268265834079" ], [ - "767578297255028", - "99567" - ], + "220191786576128", + "14570" + ] + ] + ], + [ + "0x24367F22624f739D7F8AB2976012FbDaB8dd33f4", + [ [ - "767578297354595", - "104681" - ], + "26768674950508", + "427568784000" + ] + ] + ], + [ + "0x2437Db820DE92d8DD64B524954fA0D160767c471", + [ [ - "767578297459276", - "110058" - ], + "344730632844876", + "14480118767" + ] + ] + ], + [ + "0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe", + [ [ - "767578297569334", - "115738" - ], + "573460544800018", + "59926244178" + ] + ] + ], + [ + "0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3", + [ [ - "767578892875042", - "121681" - ], + "919026220879929", + "1124719481" + ] + ] + ], + [ + "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2", + [ [ - "767578892996723", - "127988" + "61869552594793", + "5201831386928" ], [ - "767578893124711", - "134587" + "82817668297010", + "311908399084" ], [ - "767578893259298", - "141491" - ], + "372394178664282", + "2871900000000" + ] + ] + ], + [ + "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d", + [ [ - "767578893400789", - "148745" + "362140399162224", + "6273115407" ], [ - "767583217549534", - "156392" - ], + "376426019903538", + "25515357603" + ] + ] + ], + [ + "0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a", + [ [ - "767583217705926", - "164507" - ], + "298791493215442", + "85000000000" + ] + ] + ], + [ + "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", + [ [ - "767583217870433", - "172943" - ], + "186583237080659", + "8569224376" + ] + ] + ], + [ + "0x25d5Eb0603f36c47A53529b6A745A0805467B21F", + [ [ - "767583218043376", - "181816" - ], + "299296287064019", + "22010000022" + ] + ] + ], + [ + "0x2612C1bc597799dc2A468D6537720B245f956A22", + [ [ - "767583218225192", - "191170" - ], + "649130529433065", + "220044920" + ] + ] + ], + [ + "0x262126FD37D04321D7f824c8984976542fCA2C36", + [ [ - "767583218416362", - "201004" - ], + "92555674061199", + "101864651658" + ] + ] + ], + [ + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", + [ [ - "767583218617366", - "211320" + "434130466448", + "27751913384" ], [ - "767583218828686", - "222160" + "464312835593", + "25323470663" ], [ - "767583219050846", - "233569" + "490607948331", + "9028357925" ], [ - "767583219284415", - "245547" + "520071959814", + "9564346441" ], [ - "767583219529962", - "258138" + "4931242977938", + "10898078686" ], [ - "767583219788100", - "271385" + "343529476955892", + "26569428177" ], [ - "767583220059485", - "285332" + "581145184712006", + "762766666666" ], [ - "767583220344817", - "299980" + "644413986347346", + "32" ], [ - "767583220644797", - "315373" + "644546638392929", + "32" ], [ - "767583220960170", - "331555" + "647552815161015", + "80311" ], [ - "767583221291725", - "348569" + "647823489801690", + "15368221875" ], [ - "767583221640294", - "366459" + "647953831875574", + "11699675781" ], [ - "767583222006753", - "385271" + "648064641238285", + "12204390625" ], [ - "767583222392024", - "405047" + "648143628178042", + "11488750000" ], [ - "767583222797071", - "425832" + "648162303670466", + "13655200000" ], [ - "767583223222946", - "87" + "648218529970749", + "15127645459" ], [ - "767583223223033", - "130" + "648319733131161", + "9068714111" ], [ - "767583223223163", - "174" + "648390451720158", + "17199921875" ], [ - "767583223223337", - "217" + "648437018209889", + "15524432405" ], [ - "767583223223554", - "261" + "648537251303183", + "17" ], [ - "767626793223815", - "305" + "648669852761603", + "17910660356" ], [ - "767626793224120", - "348" + "648703542243759", + "13031467277" ], [ - "767626793224468", - "392" + "649087464308065", + "13380625000" ], [ - "767626793224860", - "436" + "649130749477985", + "12668079062" ], [ - "767626793225296", - "480" + "654557370948114", + "213185000000" ], [ - "767626793225776", - "523" + "655483763856093", + "154938000000" ], [ - "767626793226299", - "567" + "663001818967242", + "28" ], [ - "767626793226866", - "611" + "664619505628960", + "22" ], [ - "767626793227477", - "655" + "665701343812538", + "20" ], [ - "767626793228132", - "699" + "666251093296344", + "277121831207" ], [ - "767626793228831", - "742" + "666528215127551", + "294971062419" ], [ - "767626793229573", - "786" + "669913176913700", + "168992222694" ], [ - "767626793230359", - "830" + "670265992890158", + "3760739846" ], [ - "767626793231189", - "874" + "670269753630004", + "195093286581" ], [ - "767626793232063", - "962" + "670708659416585", + "8315794130" ], [ - "767642320933025", - "1050" + "671204344019292", + "9227239745" ], [ - "767642320934075", - "1138" + "673990119454246", + "387240" ], [ - "767642320935213", - "1226" + "673990119841486", + "266985351613" ], [ - "767642320936439", - "1314" + "674290923945041", + "214257648238" ], [ - "767642320937753", - "1401" + "675271870072786", + "1265309093" ], [ - "767642320939154", - "1490" + "675939800999403", + "89647628696" ], [ - "767642320940644", - "1580" + "676546386034429", + "6694533342" ], [ - "767642320942224", - "1669" + "676553080567771", + "8499476521" ], [ - "767642320943893", - "1757" + "676561580044292", + "10140222821" ], [ - "767642320945650", - "1889" + "676571720267113", + "11668233878" ], [ - "767642320947539", - "2023" + "676583388500991", + "13349099640" ], [ - "767642320949562", - "2156" + "676596737600631", + "14641791657" ], [ - "767642320951718", - "2290" + "676611379392288", + "16023438417" ], [ - "767642320954008", - "2422" + "676627402830705", + "17794160449" ], [ - "767642320956430", - "2555" + "676645196991154", + "19717534095" ], [ - "767642320958985", - "2688" + "676686202345495", + "21015744781" ], [ - "767642320961673", - "2865" + "676707218090276", + "21993061317" ], [ - "767642320964538", - "3042" + "676751492794865", + "125608" ], [ - "767642320967580", - "3219" + "676751492920473", + "55278924469" ], [ - "767642320970799", - "3396" + "676879462123907", + "722460698" ], [ - "767642320974195", - "3573" + "676961397323692", + "84887658705" ], [ - "767642320977768", - "3795" + "677046284982397", + "75519741929" ], [ - "767642320981563", - "4016" + "677172387770040", + "6131806238" ], [ - "767642883204174", - "4238" + "677178519576278", + "59202430775" ], [ - "767642883208412", - "4462" + "677237722007053", + "60660646377" ], [ - "767642883212874", - "4728" + "677298382653430", + "55297098356" ], [ - "767642883217602", - "4994" + "677353679751786", + "41809339114" ], [ - "767642883222596", - "5260" + "677395489090900", + "36138699789" ], [ - "767682652111200", - "5571" + "677463173067632", + "28108721786" ], [ - "767682652116771", - "5885" + "677511504808903", + "3551817566" ], [ - "767682652122656", - "6196" + "677515056626469", + "10550613290" ], [ - "767682652128852", - "6551" + "677525607239759", + "4793787549" ], [ - "767682652135403", - "6907" + "677530401027308", + "236335204805" ], [ - "767682652142310", - "7263" + "677766895578568", + "178586879475" ], [ - "767682652149573", - "7663" + "677945482458043", + "293860207608" ], [ - "767682652157236", - "8064" + "678239342665651", + "675575202780" ], [ - "767682652165300", - "8509" + "682826275044476", + "17833430647" ], [ - "767682652173809", - "8954" + "682845259142899", + "85872956797" ], [ - "767682652182763", - "9444" + "682931132099696", + "137696415333" ], [ - "767682652192207", - "9941" - ], + "683088991506904", + "102232834268" + ] + ] + ], + [ + "0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D", + [ [ - "767682652202148", - "10476" - ], + "323262951431540", + "22464236574" + ] + ] + ], + [ + "0x26AFBbC659076B062548e8f46D424842Bc715064", + [ [ - "767682652212624", - "11055" - ], + "258943234658706", + "94067068214" + ] + ] + ], + [ + "0x26C08ce60A17a130f5483D50C404bDE46985bCaf", + [ [ - "767682652223679", - "11635" - ], + "325145004497070", + "113447201008" + ] + ] + ], + [ + "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5", + [ [ - "767682652235314", - "12259" + "682845256557823", + "2585076" ], [ - "767682652247573", - "12929" - ], + "741718653137282", + "111751582" + ] + ] + ], + [ + "0x26f781D7f59c67BBd16acED83dB4ba90d1e47689", + [ [ - "767705524974897", - "13607" - ], + "109548569427007", + "2250551935" + ] + ] + ], + [ + "0x27320AAc0E3bbc165E6048aFc0F28500091dca73", + [ [ - "767705524988504", - "14322" - ], + "240574257021760", + "14827650417" + ] + ] + ], + [ + "0x2745a1f9774FF3b59cbDfC139c6f19f003392e2C", + [ [ - "767705525002826", - "15082" + "580465682607657", + "1581698780" ], [ - "767705525017908", - "15886" + "643046212115536", + "1220733194" ], [ - "767705525033794", - "16735" + "643059909351872", + "5072600938" ], [ - "767705525050529", - "17629" + "643616429319061", + "1117067455" ], [ - "767705525068158", - "18569" + "643630556511892", + "3144911832" ], [ - "767705525086727", - "19553" + "644440076885807", + "2439339467" ], [ - "767807852800338", - "20582" - ], + "646983796131611", + "1010894641" + ] + ] + ], + [ + "0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f", + [ [ - "767812853087571", - "21651" - ], + "201441256822560", + "15818274887" + ] + ] + ], + [ + "0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9", + [ [ - "767812853109222", - "22780" - ], + "266838658304301", + "216644999935" + ] + ] + ], + [ + "0x277FC128D042B081F3EE99881802538E05af8c43", + [ [ - "767812853132002", - "23989" - ], + "267204322956411", + "8634054720" + ] + ] + ], + [ + "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", + [ [ - "767812853155991", - "25243" - ], + "311015613569053", + "6238486940" + ] + ] + ], + [ + "0x2817a8dFe9DCff27449C8C66Fa02e05530859B73", + [ [ - "767824420255993", - "27944" - ], + "495986281196209", + "327035406660" + ] + ] + ], + [ + "0x284A2d22620974fb416D866c18a1f3c848E7b7Bc", + [ [ - "767824420283937", - "29379" - ], + "644367998960591", + "103407742" + ] + ] + ], + [ + "0x284f942F11a5046a5D11BCbEC9beCb46d1172512", + [ [ - "767824420313316", - "30904" + "51088313644799", + "41188549146" ], [ - "767824420344220", - "32519" - ], + "258469319874650", + "96515746089" + ] + ] + ], + [ + "0x2894457502751d0F92ed1e740e2c8935F879E8AE", + [ [ - "767824420376739", - "34224" + "18052754491380", + "1000000000" ], [ - "767824420410963", - "36020" + "141944294169149", + "10000000000" ], [ - "767825578892582", - "37871" - ], + "744765029950609", + "18206372000" + ] + ] + ], + [ + "0x28A40076496E02a9A527D7323175b15050b6C67c", + [ [ - "767825585879797", - "41900" + "273700188355894", + "16557580124" ], [ - "767825585921697", - "44054" + "325749068110199", + "19498214619" ], [ - "767825585965751", - "46343" + "326472527780618", + "118292810725" ], [ - "767825586012094", - "48723" + "406164449052348", + "405035690" ], [ - "767825586060817", - "51237" + "406164854088038", + "499650000" ], [ - "767825586112054", - "53887" - ], + "406165353738038", + "404668999" + ] + ] + ], + [ + "0x28aB25Bf7A691416445A85290717260971151eD2", + [ [ - "767825586165941", - "56672" - ], + "267322616665401", + "11510822108" + ] + ] + ], + [ + "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", + [ [ - "767825586222613", - "59593" + "160648337135830", + "30093729527" ], [ - "767848361131422", - "62650" + "637761302275033", + "380793557160" ], [ - "767848361194072", - "65916" - ], + "766434901228015", + "15422132619" + ] + ] + ], + [ + "0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4", + [ [ - "767848361259988", - "69334" - ], + "7395832970393", + "10000000000" + ] + ] + ], + [ + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", + [ [ - "767848361329322", - "72889" + "33186875353373", + "500000000" ], [ - "767848361402211", - "76625" + "67435055994809", + "10000000000" ], [ - "767848361478836", - "80586" + "153926655075128", + "838565448" ], [ - "767848361559422", - "84728" + "282587028442772", + "17250582700" ], [ - "767848361644150", - "89097" + "525672111796446", + "70060393479" ], [ - "767848361733247", - "93691" + "595441968432834", + "80085100000" ], [ - "767848361826938", - "98512" + "630893407534395", + "196063966" ], [ - "767848361925450", - "103559" - ], + "872761488129531", + "70125007621" + ] + ] + ], + [ + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", + [ [ - "767848362029009", - "108878" + "18051338281355", + "50364336" ], [ - "767848362137887", - "114469" - ], + "18051388645691", + "1232512356" + ] + ] + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + [ [ - "767848362252356", - "120376" + "41373044931817", + "727522" ], [ - "767848362372732", - "126556" + "67097307242511", + "15" ], [ - "767848362499288", - "133053" + "87849021601047", + "80437" ], [ - "767848362632341", - "139912" + "90975474968754", + "3" ], [ - "767848362772253", - "147088" + "153701253420471", + "67407" ], [ - "767848362919341", - "154628" + "232482126144006", + "5451263" ], [ - "767848363073969", - "162575" - ], + "376489301622502", + "37387" + ] + ] + ], + [ + "0x29841AfFE231392BF0826B85488e411C3E5B9cC4", + [ [ - "767848363236544", - "170930" - ], + "631794823129224", + "1314233166" + ] + ] + ], + [ + "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3", + [ [ - "767848363407474", - "179695" + "160678430865357", + "18253993180" ], [ - "767848363587169", - "188913" + "167558036125804", + "84842866520" ], [ - "767848363776082", - "198630" - ], + "634190283997794", + "1715232990" + ] + ] + ], + [ + "0x299e4B9591993c6001822baCF41aff63F9C1C93F", + [ [ - "767848363974712", - "208846" + "260069118609084", + "794705201763" ], [ - "767848364183558", - "219562" + "267656630501959", + "150336454905" ], [ - "767848364403120", - "230823" + "295137332480012", + "2607932412299" ], [ - "767848364633943", - "242675" - ], + "297745264892311", + "766254121133" + ] + ] + ], + [ + "0x29e1A68927a46f42d3B82417A01645Ee23F86bD9", + [ [ - "767848364876618", - "255118" - ], + "324911717326872", + "115438917" + ] + ] + ], + [ + "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20", + [ [ - "767848365131736", - "268197" + "51129502193945", + "25356695159" ], [ - "767848365399933", - "281957" + "202818106667533", + "17842441406" ], [ - "767848365681890", - "296446" - ], + "408046817720715", + "10000317834" + ] + ] + ], + [ + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", + [ [ - "767848365978336", - "311662" + "76028680969604", + "604036207" ], [ - "767848366289998", - "327651" + "680317702465922", + "5002669630" ], [ - "767848366617649", - "344459" + "760184010820995", + "729833339" ], [ - "767848366962108", - "362133" - ], + "760470668898824", + "369074345" + ] + ] + ], + [ + "0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F", + [ [ - "767848367324241", - "380716" - ], + "258032653899264", + "42247542366" + ] + ] + ], + [ + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", + [ [ - "767848367704957", - "400256" + "59269854376843", + "29229453541" ], [ - "767848368105213", - "420798" + "97271320489293", + "40869054933" ], [ - "767848368526011", - "442387" + "157521724557081", + "21334750070" ], [ - "767852884968443", - "90" + "159085770998418", + "46100000000" ], [ - "767852884968533", - "135" + "189188441771200", + "19872173070" ], [ - "767852884968668", - "181" - ], + "189208313944270", + "13412667204" + ] + ] + ], + [ + "0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C", + [ [ - "767852884968849", - "226" + "186248277026701", + "1607000000" ], [ - "767852884969075", - "271" - ], + "634495210451551", + "1561000000" + ] + ] + ], + [ + "0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37", + [ [ - "767852884969346", - "317" - ], + "187153746256456", + "42281642936" + ] + ] + ], + [ + "0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C", + [ [ - "767852884969663", - "362" + "598229195571107", + "175120144248" ], [ - "767852884970025", - "408" - ], + "598404315715355", + "706556073123" + ] + ] + ], + [ + "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65", + [ [ - "767852884970433", - "453" + "75517881623550", + "38308339380" ], [ - "767852884970886", - "498" + "118284988563198", + "23400000000" ], [ - "767852884971384", - "544" + "243340907864513", + "5071931149" ], [ - "767852884971928", - "589" + "244927756280795", + "46513491853" ], [ - "767852884972517", - "635" + "319587273487138", + "99704140012" ], [ - "767852884973152", - "681" - ], + "331528394095863", + "121345718040" + ] + ] + ], + [ + "0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB", + [ [ - "767852884973833", - "727" - ], + "595522053532834", + "168039500000" + ] + ] + ], + [ + "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf", + [ [ - "767863326337265", - "91" + "786871494302699", + "450790656" ], [ - "767863362728577", - "18484478" - ], + "786871945093355", + "932517247" + ] + ] + ], + [ + "0x2bDB0cB25Db0012dF643041B3490d163A1809eE6", + [ [ - "767863381213055", - "5167937" - ], + "157417754524248", + "84608203869" + ] + ] + ], + [ + "0x2BeaB5818689309117AAfB0B89cd6F276C824D34", + [ [ - "767863386380992", - "18280626" - ], + "344363859002519", + "25254232357" + ] + ] + ], + [ + "0x2BEe2D53261B16892733B448351a8Fd8c0f743e7", + [ [ - "767863404661618", - "18414676" - ], + "919414411428634", + "147996" + ] + ] + ], + [ + "0x2bF046A052942B53Ca6746de4D3295d8f10d4562", + [ [ - "767863423076294", - "18443046" - ], + "740992675275273", + "14660252551" + ] + ] + ], + [ + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", + [ [ - "767863441519340", - "18477486" + "61022673231233", + "21700205805" ], [ - "767863459996826", - "16131224" + "91013305781059", + "21825144968" ], [ - "767863476128050", - "16087207" + "197758167416406", + "3504136084" ], [ - "767863525316862", - "10937836" + "213430473225415", + "19297575823" ], [ - "767863536254698", - "16385295" + "227257304826086", + "8838791596" ], [ - "767863569071432", - "15950506" + "227797101910617", + "34509154491" ], [ - "768114582705503", - "298231122" + "235855165427494", + "2631578947" ], [ - "768114880936625", - "18672957" - ], + "648015664036231", + "1982509180" + ] + ] + ], + [ + "0x2C01E651a64387352EbAF860165778049031e190", + [ [ - "768114899609582", - "330845521" - ], + "401140958523891", + "6000000000" + ] + ] + ], + [ + "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3", + [ [ - "768115230455103", - "331324585" + "28059702904241", + "1259635749" ], [ - "768115978889820", - "296676806" + "78570049172294", + "5603412867" ], [ - "768116275566626", - "296728765" - ], + "107446086823768", + "4363527272" + ] + ] + ], + [ + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", + [ [ - "768116572295391", - "296762499" + "136612399855910", + "1516327182560" ], [ - "768117464966063", - "298343543" + "180612996863780", + "58781595885" ], [ - "768117763309606", - "137124064" + "564786469810178", + "14382502530" ], [ - "768117900433793", - "123" + "566175469825977", + "30150907500" ], [ - "768118170560501", - "256642528" + "568987325580815", + "30150907500" ], [ - "768119631748125", - "302761187" + "570096344263715", + "30150907500" ], [ - "768119934509312", - "280418672" - ], + "572087175787753", + "30150907500" + ] + ] + ], + [ + "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", + [ [ - "768120771960939", - "279694893" + "13620320740040", + "2776257694900" ], [ - "768121602995954", - "276767301" + "345351025418338", + "1509530400000" ], [ - "768122461859189", - "296600700" + "347475827541041", + "1543861200000" ], [ - "768123348981826", - "302369890" + "763876703327895", + "46201857" ], [ - "768123947537693", - "296342950" + "763877400753507", + "53680946" ], [ - "768124836569745", - "290541691" + "763877883716757", + "1494533087" ], [ - "768125127111556", - "291176686" + "763898520549826", + "974988542" ], [ - "768295826854698", - "285816521" + "763903829825521", + "684952219" ], [ - "768296112671219", - "285381250" + "763904803936802", + "52372148" ], [ - "768296398052469", - "284997197" + "763914820231283", + "23750326521" ], [ - "768298198893914", - "68312976" + "763938570557804", + "79147734" ], [ - "768298267207290", - "201" + "763939554575290", + "4893969099" ], [ - "768298267207491", - "273021877" + "763944513817433", + "9019889238" ], [ - "768298540229368", - "317530794" + "763954688543036", + "21118416942" ], [ - "768298857760162", - "322193785" + "763976072545528", + "54845693" ], [ - "768299179953947", - "331229342" + "763976182271147", + "52203689" ], [ - "768299511183289", - "331260558" + "763976306153164", + "51007458" ], [ - "768300505169969", - "321182204" + "763976388222525", + "1300355823" ], [ - "768301129935086", - "312207718" + "763981032254637", + "2130472638" ], [ - "768301442142804", - "288907800" + "763983236435828", + "69051736" ], [ - "768302650177158", - "308531054" + "764056339138453", + "516217762" ], [ - "768303848319913", - "252106840" + "764056921985326", + "1434013875" ], [ - "768304100426753", - "244186585" + "764059354079704", + "590245000" ], [ - "768304606652316", - "114725072" + "764454359166574", + "2799546066" ], [ - "768308228492462", - "158" + "764457168269474", + "797906392781" ], [ - "768308228492620", - "197" + "765255074662255", + "857156766102" ], [ - "768308228493053", - "276" + "767510533786724", + "123" ], [ - "768308228493329", - "315" + "767510533786847", + "165" ], [ - "768308228493644", - "354" + "767510533787012", + "206" ], [ - "768308729405919", - "510" + "767510533787218", + "288" ], [ - "768308729406978", - "588" + "767510533787506", + "330" ], [ - "768309128949088", - "364833293" + "767510533787836", + "371" ], [ - "768310260215587", - "347953848" + "767510533788207", + "413" ], [ - "768310608169435", - "201082346" + "767510533788620", + "454" ], [ - "768310809251781", - "201245887" + "767510533789074", + "495" ], [ - "768311435453153", - "116" + "767510533789569", + "537" ], [ - "768311435453424", - "194" + "767510533790106", + "578" ], [ - "768311435453618", - "232" + "767511386360882", + "620" ], [ - "768311435453850", - "271" + "767511386361502", + "662" ], [ - "768311826167816", - "116" + "767511386362164", + "703" ], [ - "768311826168087", - "193" + "767511386362867", + "745" ], [ - "768311937992490", - "197071061" + "767511386363612", + "786" ], [ - "768312135063782", - "155" + "767511386364398", + "828" ], [ - "768312623349155", - "499719459" + "767511386365226", + "870" ], [ - "768313123068614", - "210719422" + "767511386366096", + "912" ], [ - "768313474127194", - "154" + "767511386367008", + "954" ], [ - "768313474128044", - "309" + "767511386367962", + "996" ], [ - "768313474128353", - "348" + "767511386368958", + "1038" ], [ - "768313474128701", - "387" + "767511386369996", + "1081" ], [ - "768313474129088", - "426" + "767511386371077", + "1123" ], [ - "768313474129514", - "465" + "767511386372200", + "1165" ], [ - "768313474129979", - "504" + "767511386373365", + "1208" ], [ - "768313474131026", - "582" + "767511386374573", + "1251" ], [ - "768313474132229", - "660" + "767511386375824", + "1293" ], [ - "768313474132889", - "699" + "767511386377117", + "1336" ], [ - "768313474134326", - "777" + "767511386378453", + "1379" ], [ - "768313474135958", - "933" + "767511386379832", + "1421" ], [ - "768313474137902", - "1089" + "767511386381253", + "1464" ], [ - "768313474138991", - "1167" + "767511386382717", + "1507" ], [ - "768313474140158", - "1245" + "767511386384265", + "83" ], [ - "768313474144127", - "1480" + "767511386384348", + "125" ], [ - "768313474145607", - "1558" + "767511386384473", + "167" ], [ - "768313474147165", - "1675" + "767511386384640", + "209" ], [ - "768313474150633", - "1910" + "767511386384849", + "251" ], [ - "768313474152543", - "2028" + "767511386385100", + "293" ], [ - "768313474154571", - "2145" + "767511386385393", + "335" ], [ - "768313474156716", - "2263" + "767511386385728", + "378" ], [ - "768314355726830", - "88909462" + "767511386386106", + "420" ], [ - "768315901357256", - "339056370" + "767511386386526", + "462" ], [ - "768316240413626", - "301378783" + "767511386386988", + "504" ], - [ - "768316541792409", - "35791954" - ] - ] - ], - [ - "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", - [ - [ - "322290480743612", - "94607705314" - ] - ] - ], - [ - "0x2E34723A04B9bb5938373DCFdD61410F43189246", - [ - [ - "67381548202218", - "1447784544" - ] - ] - ], - [ - "0x2E40961fd5Abd053128D2e724a61260C30715934", - [ - [ - "658105711671123", - "41555431100" + [ + "767511386387492", + "546" ], [ - "658877005401946", - "136033474375" + "767511386388038", + "589" ], [ - "671451812872345", - "20082877176" + "767511386388627", + "631" ], [ - "676806771844942", - "22871716433" + "767511386389258", + "673" ], [ - "676852872846308", - "12839897666" + "767511386389931", + "716" ], [ - "679500898240401", - "150688818320" + "767511386390647", + "758" ], [ - "679689278965321", - "33005857560" + "767511386391405", + "800" ], [ - "720695437014319", - "243235296262" + "767511386392205", + "843" ], [ - "720938672310581", - "12267465638" + "767511386393048", + "927" ], [ - "725824924442098", - "269398121130" + "767511386393975", + "1012" ], [ - "744798716338245", - "9220124675" + "767511386394987", + "1096" ], [ - "860106144873359", - "79143367104" - ] - ] - ], - [ - "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", - [ + "767511386396083", + "1181" + ], [ - "7415832970393", - "194762233747" + "767511386397264", + "1266" ], [ - "78648530626824", - "138292382101" + "767511386398530", + "1351" ], [ - "152208324465731", - "194272213416" + "767511386399881", + "1435" ], [ - "156096698259859", - "320440448951" + "767511386401316", + "1520" ], [ - "165896787517307", - "165634345762" + "767511386402836", + "1605" ], [ - "166062421863069", - "162668432277" + "767511386404441", + "1690" ], [ - "394996007186444", - "290768602971" + "767511386406131", + "1817" ], [ - "573762332985345", - "53986261284" + "767511386407948", + "1944" ], [ - "574794197119988", - "682695875" - ] - ] - ], - [ - "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872", - [ + "767511386409892", + "2072" + ], [ - "76216082547355", - "7329461840" + "767511386411964", + "2199" ], [ - "157638542244933", - "60174119496" + "767511386414163", + "2327" ], [ - "213285967419772", - "21267206558" + "767511386416490", + "2454" ], [ - "634864361051387", - "70921562500" + "767511386418944", + "2582" ], [ - "647439464023467", - "15004452000" - ] - ] - ], - [ - "0x2e95A39eF19c5620887C0d9822916c0406E4E75e", - [ + "767511386421526", + "2752" + ], [ - "159584961546434", - "99821724986" - ] - ] - ], - [ - "0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8", - [ + "767511386424278", + "2922" + ], [ - "783376684764145", - "1000000" - ] - ] - ], - [ - "0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F", - [ + "767511386427200", + "3092" + ], [ - "184026530861047", - "134623539909" - ] - ] - ], - [ - "0x2f89DB6B5E80C4849142789d777109D2F911F780", - [ + "767511386430292", + "3262" + ], [ - "331726102506074", - "5251308075" - ] - ] - ], - [ - "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", - [ + "767511386433554", + "3432" + ], [ - "326330661529391", - "16541491227" + "767511386436986", + "3645" ], [ - "465286109667912", - "41138509764" + "767511386440631", + "3858" ], [ - "531116209812109", - "109538139161" + "767511386444489", + "4071" ], [ - "561676842598316", - "57729458645" + "767511386448560", + "4284" ], [ - "574187702455863", - "199863307838" + "767511386452844", + "4540" ], [ - "577754454852811", - "150501595883" + "767511386457384", + "4795" ], [ - "591782385862752", - "164341630162" - ] - ] - ], - [ - "0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA", - [ + "767511386462179", + "5051" + ], [ - "744297030626026", - "11165929503" + "767511386467230", + "5349" ], [ - "744308196555529", - "33745270881" + "767511386472579", + "5648" ], [ - "744341941826410", - "16872062514" - ] - ] - ], - [ - "0x30beFd253Ca972800150dBA8114F7A4EF53183D9", - [ + "767511386478227", + "5947" + ], [ - "643649755203625", - "496254001" - ] - ] - ], - [ - "0x30d0DEb932b5535f792d359604D7341D1B357a35", - [ + "767511386484174", + "6288" + ], [ - "92715335512140", - "260797078423" - ] - ] - ], - [ - "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", - [ + "767511386490462", + "6630" + ], [ - "611709212072170", - "19083709019" - ] - ] - ], - [ - "0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F", - [ + "767511386497092", + "6971" + ], [ - "344839852767681", - "1993933960" - ] - ] - ], - [ - "0x3103c84c86a534a4f10C3823606F2a5b90923924", - [ + "767511386504063", + "7355" + ], [ - "350560995758670", - "1562442699" + "767511386511418", + "7740" ], [ - "361237680058040", - "3203293071" - ] - ] - ], - [ - "0x31188536865De4593040fAfC4e175E190518e4Ef", - [ + "767511386519158", + "8167" + ], [ - "70474963554843", - "42647602248" + "767511386527325", + "8595" ], [ - "87355264432269", - "23229244940" + "767511386535920", + "9065" ], [ - "159182841468143", - "25259530956" + "767511386544985", + "9535" ], [ - "159208100999099", - "75628998693" + "767511386554520", + "10048" ], [ - "247427787534240", - "39695519731" + "767511386564568", + "10604" ], [ - "408397582477655", - "20847822433" - ] - ] - ], - [ - "0x317B157e02c3b5A16Efc3cc4eb26ACcC1cfF24e3", - [ + "767511386575172", + "11161" + ], [ - "258450328339971", - "18991534679" - ] - ] - ], - [ - "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", - [ + "767511386586333", + "12408" + ], [ - "185408194792894", - "19585490430" + "767511386598741", + "13050" ], [ - "199678543542300", - "10849956649" + "767511386611791", + "13736" ], [ - "201457075097447", - "6841999986" + "767511386625527", + "14465" ], [ - "656568060160113", - "1550661150" + "767511386639992", + "15236" ], [ - "672612693625732", - "5000000000" - ] - ] - ], - [ - "0x31b9084568783Fd9D47c733F3799567379015e6D", - [ + "767511386655228", + "16051" + ], [ - "598066496589195", - "100033987828" - ] - ] - ], - [ - "0x3213977900A71e183818472e795c76aF8cbC3a3E", - [ + "767511386671279", + "16909" + ], [ - "209624708274640", - "2727243727" - ] - ] - ], - [ - "0x326481a3b0C792Cc7DF1df0c8e76490B5ccd7031", - [ + "767511386688188", + "17810" + ], [ - "636333094290438", - "233865679687" - ] - ] - ], - [ - "0x328e124cE7F35d9aCe181B2e2B4071f51779B363", - [ + "767511386705998", + "18754" + ], [ - "159684783271420", - "51108156265" - ] - ] - ], - [ - "0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39", - [ + "767511386724752", + "19741" + ], [ - "355785898656583", - "159354982035" - ] - ] - ], - [ - "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e", - [ + "767511386744493", + "20771" + ], [ - "51154858889104", - "22097720000" + "767511386765264", + "21845" ], [ - "78544641460294", - "25407712000" + "767511386787109", + "23004" ], [ - "85869322903816", - "96590650000" + "767511386810113", + "24207" ], [ - "93193533981954", - "51428850000" + "767511386834320", + "25454" ], [ - "160729464951818", - "27130320000" + "767511386859774", + "26786" ], [ - "170334015806894", - "21861840000" + "767511386886560", + "28162" ], [ - "198205724465484", - "17204908500" + "767511386914722", + "29624" ], [ - "210838860371618", - "31699684500" + "767548493417834", + "31172" ], [ - "249470894900355", - "141114556811" + "767548493449006", + "32823" ], [ - "394957500386195", - "2656309347" + "767548493481829", + "32830" ], [ - "451982392748406", - "3362213720" - ] - ] - ], - [ - "0x32ddCe808c77E45411CE3Bb28404499942db02a7", - [ + "767548493514659", + "34569" + ], [ - "157572697483467", - "30301264175" + "767548493549228", + "36379" ], [ - "672686690262012", - "9156068040" - ] - ] - ], - [ - "0x33033E306c89Dc5b662f01e74B12623f9a39CCE4", - [ + "767548493585607", + "38275" + ], [ - "401134958523891", - "6000000000" - ] - ] - ], - [ - "0x33314cF610C14460d3c184a55363f51d609aa076", - [ + "767548493623882", + "40258" + ], [ - "189165629280352", - "4" + "767548493664140", + "42328" ], [ - "250764687174527", - "6" - ] - ] - ], - [ - "0x334bdeAA1A66E199CE2067A205506Bf72de14593", - [ + "767548493706468", + "44528" + ], [ - "78581810315623", - "1" - ] - ] - ], - [ - "0x334f12F269213371fb59b328BB6e182C875e04B2", - [ + "767548493750996", + "46815" + ], [ - "170459154928178", - "85849064810" + "767548493797811", + "49232" ], [ - "187225592453120", - "100639688860" + "767548493847043", + "51778" ], [ - "235248755463285", - "30184796751" + "767548493898821", + "54455" ], [ - "532670891057032", - "5098240000" - ] - ] - ], - [ - "0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96", - [ + "767548493953276", + "57262" + ], [ - "343800433705719", - "25762354710" + "767548494010538", + "60200" ], [ - "355945253638618", - "61234325811" - ] - ] - ], - [ - "0x33c0BCac5c1835fe9D52D35079F6617A22c6C431", - [ + "767548494070738", + "63310" + ], [ - "326347203020618", - "125324760000" + "767548494134048", + "66594" ], [ - "328066927799830", - "36648000000" + "767549755547042", + "70009" ], [ - "511268244803978", - "49788645972" + "767549755617051", + "73632" ], [ - "533229385997211", - "202654427854" + "767578296825681", + "77439" ], [ - "552807785951017", - "16210845885" + "767578296903120", + "81459" ], [ - "553548932420572", - "43736535200" + "767578296984579", + "85659" ], [ - "575265144492570", - "31060210793" - ] - ] - ], - [ - "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", - [ + "767578297070238", + "90077" + ], [ - "28423496858037", - "1897354001" - ] - ] - ], - [ - "0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F", - [ + "767578297160315", + "94713" + ], [ - "151059913817209", - "718187220626" + "767578297255028", + "99567" ], [ - "194136445740033", - "669600000000" + "767578297354595", + "104681" ], [ - "398058157938414", - "131956563555" + "767578297459276", + "110058" ], [ - "497621309855122", - "579087801478" + "767578297569334", + "115738" ], [ - "525752878043783", - "4019068358051" + "767578892875042", + "121681" ], [ - "574443423459533", - "291778458931" + "767578892996723", + "127988" ], [ - "575412697794786", - "213651821494" - ] - ] - ], - [ - "0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91", - [ + "767578893124711", + "134587" + ], [ - "700036877911620", - "6971971500" - ] - ] - ], - [ - "0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97", - [ + "767578893259298", + "141491" + ], [ - "320197037442753", - "8912443926" - ] - ] - ], - [ - "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327", - [ + "767578893400789", + "148745" + ], [ - "202773340970944", - "44765696589" + "767583217549534", + "156392" ], [ - "274157284179751", - "130932379038" - ] - ] - ], - [ - "0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d", - [ + "767583217705926", + "164507" + ], [ - "312543047721534", - "185860975995" - ] - ] - ], - [ - "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", - [ + "767583217870433", + "172943" + ], [ - "284272720466475", - "21940000000" + "767583218043376", + "181816" ], [ - "367354986456086", - "159350000000" - ] - ] - ], - [ - "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30", - [ + "767583218225192", + "191170" + ], [ - "326049910381759", - "24" + "767583218416362", + "201004" ], [ - "340162996725906", - "1695292297" - ] - ] - ], - [ - "0x3489B1E99537432acAe2DEaDd3C289408401d893", - [ + "767583218617366", + "211320" + ], [ - "634664031419046", - "20000000000" - ] - ] - ], - [ - "0x349E8490C47f42AB633D9392a077D6F1aF4d4c85", - [ + "767583218828686", + "222160" + ], [ - "250842519878117", - "25098501333" - ] - ] - ], - [ - "0x34a649fde43cE36882091A010aAe2805A9FcFf0d", - [ + "767583219050846", + "233569" + ], [ - "634036479771284", - "5482892893" - ] - ] - ], - [ - "0x34Aec84391B6602e7624363Df85Efe02A1FF35f5", - [ + "767583219284415", + "245547" + ], [ - "248138998423714", - "100498286663" - ] - ] - ], - [ - "0x34d81294A7cf6F794F660e02B468449B31cA45fb", - [ + "767583219529962", + "258138" + ], [ - "895516510872318", - "3743357026612" - ] - ] - ], - [ - "0x34e642520F4487D7D0229c07f2EDe107966D385E", - [ + "767583219788100", + "271385" + ], [ - "367351784090731", - "3202365355" - ] - ] - ], - [ - "0x354F7a379e9478Ad1734f5c48e856F89E309a597", - [ + "767583220059485", + "285332" + ], [ - "152084889110747", - "12083942493" - ] - ] - ], - [ - "0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209", - [ + "767583220344817", + "299980" + ], [ - "292260794541850", - "2182702092311" - ] - ] - ], - [ - "0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e", - [ + "767583220644797", + "315373" + ], [ - "174758503486224", - "44765525061" - ] - ] - ], - [ - "0x358B8a97658648Bcf81103b397D571A2FED677eE", - [ + "767583220960170", + "331555" + ], [ - "917235408231892", - "32949877099" - ] - ] - ], - [ - "0x35a386D9B7517467a419DeC4af6FaFC4c669E788", - [ + "767583221291725", + "348569" + ], [ - "344823646308651", - "10024424157" - ] - ] - ], - [ - "0x362FFA9F404A14F4E805A39D4985042932D42aFe", - [ + "767583221640294", + "366459" + ], [ - "634133673151647", - "2420032442" - ] - ] - ], - [ - "0x3638570931B30FbBa478535A94D3f2ec1Cd802cB", - [ + "767583222006753", + "385271" + ], [ - "197761671552490", - "327866270649" + "767583222392024", + "405047" ], [ - "205770700307726", - "85677608975" - ] - ] - ], - [ - "0x368a5564F46Bd896C8b365A2Dd45536252008372", - [ + "767583222797071", + "425832" + ], [ - "212251016823450", - "186137117756" - ] - ] - ], - [ - "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", - [ + "767583223222946", + "87" + ], [ - "67075754733543", - "16604041484" + "767583223223033", + "130" ], [ - "67428770424441", - "6285570368" + "767583223223163", + "174" ], [ - "70451813250817", - "4716970693" + "767583223223337", + "217" ], [ - "273939484179751", - "217800000000" + "767583223223554", + "261" ], [ - "321517916923381", - "214258454662" + "767626793223815", + "305" ], [ - "429133499005020", - "436815986689" + "767626793224120", + "348" ], [ - "533603847212626", - "135734075338" + "767626793224468", + "392" ], [ - "547809199075962", - "71050000000" + "767626793224860", + "436" ], [ - "645809940109546", - "188831250000" - ] - ] - ], - [ - "0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E", - [ + "767626793225296", + "480" + ], [ - "768350362242073", - "34649098834" - ] - ] - ], - [ - "0x36C3094E86CB89e33a74F7e4c10659dd9366538C", - [ + "767626793225776", + "523" + ], [ - "634959436885365", - "19640500000" + "767626793226299", + "567" ], [ - "635245783302881", - "5356500000" - ] - ] - ], - [ - "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B", - [ + "767626793226866", + "611" + ], [ - "18115882730389", - "2184095098753" + "767626793227477", + "655" ], [ - "465379361625193", - "3458705615800" + "767626793228132", + "699" ], [ - "470054787273693", - "227774351500" - ] - ] - ], - [ - "0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc", - [ + "767626793228831", + "742" + ], [ - "531845211117628", - "3940485943" - ] - ] - ], - [ - "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", - [ + "767626793229573", + "786" + ], [ - "217264218398563", - "73188666066" + "767626793230359", + "830" ], [ - "664983563595345", - "75343043560" - ] - ] - ], - [ - "0x37435b30f92749e3083597E834d9c1D549e2494B", - [ + "767626793231189", + "874" + ], [ - "22131306224508", - "4637368726000" + "767626793232063", + "962" ], [ - "32181495640124", - "8433459586" + "767642320933025", + "1050" ], [ - "38769863596589", - "1565234930" + "767642320934075", + "1138" ], [ - "76223412009195", - "178773400000" + "767642320935213", + "1226" ], [ - "86845698678511", - "62444029452" + "767642320936439", + "1314" ], [ - "86978458498127", - "27307181096" + "767642320937753", + "1401" ], [ - "88869752900177", - "12050549452" + "767642320939154", + "1490" ], [ - "93006185741954", - "23198240000" + "767642320940644", + "1580" ], [ - "118308388563198", - "14166669028" + "767642320942224", + "1669" ], [ - "141234198150981", - "17100712995" + "767642320943893", + "1757" ], [ - "183773660297853", - "252870563194" + "767642320945650", + "1889" ], [ - "186199081638585", - "49195388116" + "767642320947539", + "2023" ], [ - "271980436404190", - "296688083935" + "767642320949562", + "2156" ], [ - "352399758201369", - "1024763326668" + "767642320951718", + "2290" ], [ - "359928453899368", - "1288012208388" + "767642320954008", + "2422" ], [ - "363939676933011", - "1412385930810" + "767642320956430", + "2555" ], [ - "395593019554380", - "654800000000" + "767642320958985", + "2688" ], [ - "437070763478235", - "3840100000000" + "767642320961673", + "2865" ], [ - "460737759569063", - "4527500000000" + "767642320964538", + "3042" ], [ - "591966036774809", - "666686929557" + "767642320967580", + "3219" ], [ - "593409232970016", - "563728148057" + "767642320970799", + "3396" ], [ - "764332208498162", - "105792331133" - ] - ] - ], - [ - "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", - [ + "767642320974195", + "3573" + ], [ - "340310565047777", - "2715874656" - ] - ] - ], - [ - "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", - [ + "767642320977768", + "3795" + ], [ - "805406787392676", - "271427897935" + "767642320981563", + "4016" ], [ - "808841378952277", - "3741772811" + "767642883204174", + "4238" ], [ - "861085838494193", - "18080297788" + "767642883208412", + "4462" ], [ - "904804646944212", - "185595194790" + "767642883212874", + "4728" ], [ - "917268358306518", - "195035742135" - ] - ] - ], - [ - "0x375C1DC69F05Ff526498C8aCa48805EeC52861d5", - [ + "767642883217602", + "4994" + ], [ - "624706749861385", - "1293514654" - ] - ] - ], - [ - "0x377f781195d494779a6CcC2AA5C9fF961C683A27", - [ + "767642883222596", + "5260" + ], [ - "677766884983003", - "10595565" - ] - ] - ], - [ - "0x3798AE2cbC444ed5B5f4fb38344044977066D13F", - [ + "767682652111200", + "5571" + ], [ - "344843846701641", - "18931968095" + "767682652116771", + "5885" ], [ - "376325075317086", - "7476138081" - ] - ] - ], - [ - "0x37d515Fa5DC710C588B93eC67DE42068090e3ED8", - [ + "767682652122656", + "6196" + ], [ - "582564609492029", - "1539351282905" + "767682652128852", + "6551" ], [ - "584103960774934", - "910855838514" + "767682652135403", + "6907" ], [ - "585059745414822", - "387855469635" + "767682652142310", + "7263" ], [ - "589065176123882", - "721956082204" + "767682652149573", + "7663" ], [ - "589789721199545", - "700119128150" + "767682652157236", + "8064" ], [ - "590489840327695", - "511974175317" - ] - ] - ], - [ - "0x3800645f556ee583E20D6491c3a60E9c32744376", - [ + "767682652165300", + "8509" + ], [ - "190509412911548", - "44590358778" - ] - ] - ], - [ - "0x3810EAcf5020D020B3317B559E59376c5d02dCB2", - [ + "767682652173809", + "8954" + ], [ - "309464729921305", - "87638844672" - ] - ] - ], - [ - "0x38293902871C8ee22720A6553585F24De019c78e", - [ + "767682652182763", + "9444" + ], [ - "632904420406334", - "6459298878" - ] - ] - ], - [ - "0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E", - [ + "767682652192207", + "9941" + ], [ - "227393755294232", - "90805720025" - ] - ] - ], - [ - "0x38AE800E603F61a43f3B02f5E429b44E32e01D84", - [ + "767682652202148", + "10476" + ], [ - "649248685749729", - "12448041335" + "767682652212624", + "11055" ], [ - "650066211440274", - "883672882" + "767682652223679", + "11635" ], [ - "651485759293845", - "3572292465" + "767682652235314", + "12259" ], [ - "735462721965817", - "38853572481" - ] - ] - ], - [ - "0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5", - [ + "767682652247573", + "12929" + ], [ - "152135543630806", - "6119470222" + "767705524974897", + "13607" ], [ - "207252364348652", - "17964245672" - ] - ] - ], - [ - "0x38f733Fb3180276bE19135B3878580126F32c5Ab", - [ + "767705524988504", + "14322" + ], [ - "33291076017861", - "103108618" + "767705525002826", + "15082" ], [ - "767122453744233", - "2293110488" + "767705525017908", + "15886" ], [ - "767642320985579", - "562218595" - ] - ] - ], - [ - "0x39167e20B785B46EBd856CC86DDc615FeFa51E76", - [ + "767705525033794", + "16735" + ], [ - "825748197827247", - "503880761345" - ] - ] - ], - [ - "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", - [ + "767705525050529", + "17629" + ], [ - "31613511996035", - "1422751578" + "767705525068158", + "18569" ], [ - "56090190254115", - "11945702437" + "767705525086727", + "19553" ], [ - "61070704728260", - "11265269800" - ] - ] - ], - [ - "0x3983b24542E637030af57a6Ca117B96Fc42Ace10", - [ + "767807852800338", + "20582" + ], [ - "344971252855340", - "54716661232" + "767812853087571", + "21651" ], [ - "357975339088994", - "60400014733" - ] - ] - ], - [ - "0x399baf8F9AD4B3289d905f416bD3e245792C5fA6", - [ + "767812853109222", + "22780" + ], [ - "31881074513162", - "2271791105" - ] - ] - ], - [ - "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608", - [ + "767812853132002", + "23989" + ], [ - "38729105409331", - "4520835534" + "767812853155991", + "25243" ], [ - "75749856969161", - "8190484804" + "767824420255993", + "27944" ], [ - "75768702250033", - "2592066456" + "767824420283937", + "29379" ], [ - "544122918974124", - "90520524431" + "767824420313316", + "30904" ], [ - "569988798013715", - "75915000000" + "767824420344220", + "32519" ], [ - "634184272767738", - "4800266302" + "767824420376739", + "34224" ], [ - "634395165820350", - "4971925933" + "767824420410963", + "36020" ], [ - "637136003689549", - "5026085154" + "767825578892582", + "37871" ], [ - "641232825579881", - "6901957424" + "767825585879797", + "41900" ], [ - "644028956669800", - "6258715658" + "767825585921697", + "44054" ], [ - "644035215385458", - "3739040895" + "767825585965751", + "46343" ], [ - "644052141349672", - "5619908813" + "767825586012094", + "48723" ], [ - "644073507478345", - "8688260900" + "767825586060817", + "51237" ], [ - "644089221861766", - "9969767834" + "767825586112054", + "53887" ], [ - "644099191629600", - "5282898032" + "767825586165941", + "56672" ], [ - "644112169106375", - "11803118121" + "767825586222613", + "59593" ], [ - "644143887959668", - "6586391868" + "767848361131422", + "62650" ], [ - "644181540147936", - "5533430900" + "767848361194072", + "65916" ], [ - "644217945713915", - "9775619115" + "767848361259988", + "69334" ], [ - "644227721333030", - "7138145970" + "767848361329322", + "72889" ], [ - "644235138725690", - "11087897889" + "767848361402211", + "76625" ], [ - "644246424265017", - "9438007812" + "767848361478836", + "80586" ], [ - "644266109923013", - "12728017527" + "767848361559422", + "84728" ], [ - "648703066319944", - "475923815" + "767848361644150", + "89097" ], [ - "650452044643940", - "210712873" + "767848361733247", + "93691" ], [ - "740444343886258", - "37039953396" - ] - ] - ], - [ - "0x3a1Bc767d7442355E96BA646Ff83706f70518dAA", - [ + "767848361826938", + "98512" + ], [ - "60534460423689", - "37943648860" + "767848361925450", + "103559" ], [ - "60613921072549", - "337056974653" + "767848362029009", + "108878" ], [ - "384808251979965", - "221162082281" + "767848362137887", + "114469" ], [ - "385114975062246", - "68895138576" + "767848362252356", + "120376" ], [ - "428730219817416", - "346162069888" + "767848362372732", + "126556" ], [ - "444016501963211", - "63083410136" + "767848362499288", + "133053" ], [ - "460460113879903", - "200388674016" + "767848362632341", + "139912" ], [ - "510804923776436", - "196096790801" - ] - ] - ], - [ - "0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264", - [ + "767848362772253", + "147088" + ], [ - "740644060961741", - "4860922695" - ] - ] - ], - [ - "0x3A529A643e5b89555712B02e911AEC6add0d3188", - [ + "767848362919341", + "154628" + ], [ - "637148882075661", - "285714285" - ] - ] - ], - [ - "0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1", - [ + "767848363073969", + "162575" + ], [ - "915394886313821", - "16285361281" - ] - ] - ], - [ - "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", - [ + "767848363236544", + "170930" + ], [ - "141910062421668", - "20166747481" + "767848363407474", + "179695" ], [ - "147404101138230", - "19708496282" + "767848363587169", + "188913" ], [ - "153213326271478", - "18867580234" + "767848363776082", + "198630" ], [ - "160718808143920", - "10656807898" + "767848363974712", + "208846" ], [ - "396504433540468", - "13250965252" + "767848364183558", + "219562" ], [ - "396517684505720", - "21196418023" - ] - ] - ], - [ - "0x3b55DF245d5350c4024Acc36259B3061d42140D2", - [ + "767848364403120", + "230823" + ], [ - "59303914981687", - "109032000000" + "767848364633943", + "242675" ], [ - "395431577902828", - "61940000000" + "767848364876618", + "255118" ], [ - "428517528130265", - "6682650000" + "767848365131736", + "268197" ], [ - "430095496589579", - "1727500000" + "767848365399933", + "281957" ], [ - "672251402712185", - "113626410" + "767848365681890", + "296446" ], [ - "768408426239740", - "10530972784" - ] - ] - ], - [ - "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", - [ + "767848365978336", + "311662" + ], [ - "33289326590234", - "1184036940" + "767848366289998", + "327651" ], [ - "33386963858115", - "4658475375814" + "767848366617649", + "344459" ], [ - "408425382414043", - "1123333332210" + "767848366962108", + "362133" ], [ - "427517763505395", - "856500000000" + "767848367324241", + "380716" ], [ - "477272425070829", - "3276576610442" + "767848367704957", + "400256" ], [ - "759127319086261", - "542512540896" - ] - ] - ], - [ - "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd", - [ + "767848368105213", + "420798" + ], [ - "561885444802308", - "194013000000" + "767848368526011", + "442387" ], [ - "565476469810977", - "194013435000" + "767852884968443", + "90" ], [ - "567291750347146", - "194013435000" + "767852884968533", + "135" ], [ - "567707182532146", - "194013435000" + "767852884968668", + "181" ], [ - "570802112669484", - "192000000000" + "767852884968849", + "226" ], [ - "571217544854484", - "194013435000" - ] - ] - ], - [ - "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", - [ + "767852884969075", + "271" + ], [ - "70932687821992", - "142530400862" + "767852884969346", + "317" ], [ - "211163571688407", - "90969668386" + "767852884969663", + "362" ], [ - "544006850006260", - "10532744358" + "767852884970025", + "408" ], [ - "653296446968959", - "1462730442" + "767852884970433", + "453" ], [ - "653477602499401", - "2382078228" + "767852884970886", + "498" ], [ - "848255254733335", - "2974087025" - ] - ] - ], - [ - "0x3BD142a93adC0554C69395AAE69433A74CFFc765", - [ + "767852884971384", + "544" + ], [ - "267825806174639", - "10928727606" + "767852884971928", + "589" ], [ - "325258451698078", - "141509657939" - ] - ] - ], - [ - "0x3BD4c721C1b547Ea42F728B5a19eB6233803963E", - [ + "767852884972517", + "635" + ], [ - "218781665879410", - "12034941079" - ] - ] - ], - [ - "0x3C087171AEBC50BE76A7C47cBB296928C32f5788", - [ + "767852884973152", + "681" + ], [ - "170943059650826", - "148060901697" + "767852884973833", + "727" ], [ - "179705651830652", - "176957775656" + "767863326337265", + "91" ], [ - "212069776260061", - "14038264688" + "767863362728577", + "18484478" ], [ - "215219527533100", - "16507846329" + "767863381213055", + "5167937" ], [ - "230427008120352", - "1592559438" + "767863386380992", + "18280626" ], [ - "232479752844281", - "2373299725" + "767863404661618", + "18414676" ], [ - "327841336645705", - "13592654125" + "767863423076294", + "18443046" ], [ - "339831945732017", - "224290993889" + "767863441519340", + "18477486" ], [ - "340465994882707", - "17923920296" + "767863459996826", + "16131224" ], [ - "408359393519053", - "10089000000" + "767863476128050", + "16087207" ], [ - "648211808724006", - "6721246743" + "767863525316862", + "10937836" ], [ - "743598654626181", - "2043540906" - ] - ] - ], - [ - "0x3C43674dfa916d791614827a50353fe65227B7f3", - [ + "767863536254698", + "16385295" + ], [ - "86224790513977", - "18752048727" + "767863569071432", + "15950506" ], [ - "249683318820186", - "10002984280" + "768114582705503", + "298231122" ], [ - "683068828515029", - "20162991875" + "768114880936625", + "18672957" ], [ - "781843303488481", - "90638399996" + "768114899609582", + "330845521" ], [ - "808097236727089", - "112991072036" + "768115230455103", + "331324585" ], [ - "883534894985575", - "82087297170" + "768115978889820", + "296676806" ], [ - "886970218030110", - "80917313200" + "768116275566626", + "296728765" ], [ - "902311722381291", - "2492924562921" + "768116572295391", + "296762499" ], [ - "911681851165911", - "148249317984" - ] - ] - ], - [ - "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", - [ + "768117464966063", + "298343543" + ], [ - "599117126788478", - "69159694993" - ] - ] - ], - [ - "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c", - [ + "768117763309606", + "137124064" + ], [ - "562585978802308", - "48492000000" + "768117900433793", + "123" ], [ - "564921455942708", - "48492118269" + "768118170560501", + "256642528" ], [ - "566579274363477", - "48492118269" + "768119631748125", + "302761187" ], [ - "568565179832546", - "48492118269" + "768119934509312", + "280418672" ], [ - "570247098801215", - "48492118269" + "768120771960939", + "279694893" ], [ - "571918080039484", - "48492118269" - ] - ] - ], - [ - "0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106", - [ + "768121602995954", + "276767301" + ], [ - "271881305006652", - "99131397538" - ] - ] - ], - [ - "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B", - [ + "768122461859189", + "296600700" + ], [ - "7282639421137", - "107872082286" + "768123348981826", + "302369890" ], [ - "67130960801289", - "208750536344" + "768123947537693", + "296342950" ], [ - "197652637069875", - "79560142678" + "768124836569745", + "290541691" ], [ - "506176315739631", - "751200000000" + "768125127111556", + "291176686" ], [ - "507737045334642", - "256843090229" + "768295826854698", + "285816521" ], [ - "551839541572649", - "464523649777" - ] - ] - ], - [ - "0x3Cdf2F8681b778E97D538DBa517bd614f2108647", - [ + "768296112671219", + "285381250" + ], [ - "158637651631405", - "96662646688" + "768296398052469", + "284997197" ], [ - "258849054768509", - "94179890197" + "768298198893914", + "68312976" ], [ - "265521940236427", - "70852648035" - ] - ] - ], - [ - "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", - [ + "768298267207290", + "201" + ], [ - "239154025576778", - "93978424610" + "768298267207491", + "273021877" ], [ - "325815231767308", - "116109191366" + "768298540229368", + "317530794" ], [ - "340483918803003", - "107540812013" - ] - ] - ], - [ - "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", - [ + "768298857760162", + "322193785" + ], [ - "31605992022782", - "4486265388" - ] - ] - ], - [ - "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", - [ + "768299179953947", + "331229342" + ], [ - "559909549098070", - "9516000000" - ] - ] - ], - [ - "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", - [ + "768299511183289", + "331260558" + ], [ - "644123972224496", - "18442405" - ] - ] - ], - [ - "0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5", - [ + "768300505169969", + "321182204" + ], [ - "80481878020743", - "2335790276267" + "768301129935086", + "312207718" ], [ - "131490207784127", - "4068458197507" - ] - ] - ], - [ - "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", - [ + "768301442142804", + "288907800" + ], [ - "768326922278702", - "643659978" + "768302650177158", + "308531054" ], [ - "911906996407371", - "24032791791" - ] - ] - ], - [ - "0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6", - [ + "768303848319913", + "252106840" + ], [ - "87489402650273", - "92067166902" - ] - ] - ], - [ - "0x3e2EfD7D46a1260b927f179bC9275f2377b00634", - [ + "768304100426753", + "244186585" + ], [ - "325399961356017", - "11508897293" - ] - ] - ], - [ - "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB", - [ + "768304606652316", + "114725072" + ], [ - "562755073802308", - "30150000000" + "768308228492462", + "158" ], [ - "649506912428795", - "36390839843" + "768308228492620", + "197" ], [ - "649853488667170", - "65015748" - ] - ] - ], - [ - "0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c", - [ + "768308228493053", + "276" + ], [ - "534857972611245", - "18731220754" - ] - ] - ], - [ - "0x3e763998E3c70B15347D68dC93a9CA021385675d", - [ + "768308228493329", + "315" + ], [ - "647229043503533", - "3184477709" - ] - ] - ], - [ - "0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC", - [ + "768308228493644", + "354" + ], [ - "340708439500138", - "107810827136" + "768308729405919", + "510" ], [ - "343181072805930", - "327389493912" - ] - ] - ], - [ - "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c", - [ + "768308729406978", + "588" + ], [ - "141030334319023", - "70000039897" + "768309128949088", + "364833293" ], [ - "595385246220334", - "56722212500" + "768310260215587", + "347953848" ], [ - "644345312837307", - "5547402539" + "768310608169435", + "201082346" ], [ - "647224666133056", - "4377370477" + "768310809251781", + "201245887" ], [ - "647382462319478", - "6271703989" + "768311435453153", + "116" ], [ - "647555129566838", - "7781608168" + "768311435453424", + "194" ], [ - "742833918745520", - "14172500000" + "768311435453618", + "232" ], [ - "848237297659532", - "17957073803" - ] - ] - ], - [ - "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0", - [ + "768311435453850", + "271" + ], [ - "355636039477093", - "9985803845" + "768311826167816", + "116" ], [ - "355646025280938", - "2373276277" + "768311826168087", + "193" ], [ - "355773362907086", - "12535749497" - ] - ] - ], - [ - "0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA", - [ + "768311937992490", + "197071061" + ], [ - "294677956974210", - "187420307596" + "768312135063782", + "155" ], [ - "298745403795012", - "21089420430" - ] - ] - ], - [ - "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", - [ + "768312623349155", + "499719459" + ], [ - "41285039823287", - "521806033" + "768313123068614", + "210719422" ], [ - "235853631746968", - "1533680526" + "768313474127194", + "154" ], [ - "531838649791416", - "6561326212" + "768313474128044", + "309" ], [ - "662650407520724", - "57172076" - ] - ] - ], - [ - "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", - [ + "768313474128353", + "348" + ], [ - "647725612230182", - "29699469080" + "768313474128701", + "387" ], [ - "768304721377388", - "3507114838" - ] - ] - ], - [ - "0x400609FDd8FD4882B503a55aeb59c24a39d66555", - [ + "768313474129088", + "426" + ], [ - "13424355740040", - "46140000000" + "768313474129514", + "465" ], [ - "385212837461278", - "12793000337" - ] - ] - ], - [ - "0x4034adD1a1A750AA19142218A177D509b7A5448F", - [ + "768313474129979", + "504" + ], [ - "643088877454629", - "2992976846" + "768313474131026", + "582" ], [ - "643091870431475", - "4644226944" + "768313474132229", + "660" ], [ - "643125864984505", - "6948011478" + "768313474132889", + "699" ], [ - "643617546386516", - "2736651405" + "768313474134326", + "777" ], [ - "643629222103340", - "1334408552" + "768313474135958", + "933" ], [ - "643653609485430", - "3361817827" + "768313474137902", + "1089" ], [ - "643656971303257", - "1840841812" + "768313474138991", + "1167" ], [ - "643658812145069", - "1886219723" + "768313474140158", + "1245" ], [ - "643660698364792", - "4196252501" + "768313474144127", + "1480" ], [ - "643664894617293", - "3945346023" + "768313474145607", + "1558" ], [ - "643697705822698", - "3069368803" + "768313474147165", + "1675" ], [ - "643700775191501", - "2616399199" + "768313474150633", + "1910" ], [ - "643704053550072", - "4354211152" + "768313474152543", + "2028" ], [ - "643715616535597", - "4120838084" + "768313474154571", + "2145" ], [ - "643735049573681", - "4950268423" + "768313474156716", + "2263" ], [ - "643739999842104", - "4592612954" + "768314355726830", + "88909462" ], [ - "643751895992677", - "4449841152" + "768315901357256", + "339056370" ], [ - "643756345833829", - "6933768558" + "768316240413626", + "301378783" ], [ - "643774597107209", - "4927912318" + "768316541792409", + "35791954" + ] + ] + ], + [ + "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", + [ + [ + "322290480743612", + "94607705314" + ] + ] + ], + [ + "0x2E34723A04B9bb5938373DCFdD61410F43189246", + [ + [ + "67381548202218", + "1447784544" + ] + ] + ], + [ + "0x2E40961fd5Abd053128D2e724a61260C30715934", + [ + [ + "658105711671123", + "41555431100" ], [ - "643856593003930", - "5819342790" + "658877005401946", + "136033474375" ], [ - "643882906499989", - "3569433363" + "671451812872345", + "20082877176" ], [ - "643939083202841", - "2637229058" + "676806771844942", + "22871716433" ], [ - "643985406845033", - "5924684744" + "676852872846308", + "12839897666" ], [ - "643991331529777", - "2352760830" + "679500898240401", + "150688818320" ], [ - "643993684290607", - "1884171975" + "679689278965321", + "33005857560" ], [ - "643995568462582", - "3724339951" + "720695437014319", + "243235296262" ], [ - "644082195739245", - "2039061143" + "720938672310581", + "12267465638" ], [ - "644168293016051", - "3645902617" + "725824924442098", + "269398121130" ], [ - "644256136851915", - "6416440826" + "744798716338245", + "9220124675" ], [ - "644279469802093", - "2923459312" + "860106144873359", + "79143367104" ] ] ], [ - "0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB", + "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", [ [ - "640996006666783", - "46563701848" + "7415832970393", + "194762233747" ], [ - "646739353301167", - "10228948233" + "78648530626824", + "138292382101" ], [ - "646772221095742", - "7915875000" + "152208324465731", + "194272213416" ], [ - "647311018597283", - "23870625000" + "156096698259859", + "320440448951" ], [ - "647458959804717", - "20307375000" + "165896787517307", + "165634345762" ], [ - "647479267179717", - "26457093750" + "166062421863069", + "162668432277" ], [ - "647637605929338", - "30143670312" + "394996007186444", + "290768602971" ], [ - "647696885372209", - "28726857973" + "573762332985345", + "53986261284" ], [ - "648474129091480", - "9060790481" + "574794197119988", + "682695875" + ] + ] + ], + [ + "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872", + [ + [ + "76216082547355", + "7329461840" ], [ - "658068499502639", - "37212168484" + "157638542244933", + "60174119496" ], [ - "658229774319898", - "29767318612" + "213285967419772", + "21267206558" + ], + [ + "634864361051387", + "70921562500" + ], + [ + "647439464023467", + "15004452000" ] ] ], [ - "0x404a75f728D7e89197C61c284d782EC246425aa6", + "0x2e95A39eF19c5620887C0d9822916c0406E4E75e", [ [ - "883958086238857", - "171169191653" + "159584961546434", + "99821724986" ] ] ], [ - "0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5", + "0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8", [ [ - "539608230930738", - "417347700552" - ], - [ - "553592668955772", - "222299277023" + "783376684764145", + "1000000" ] ] ], [ - "0x406874Ac226662369d23B4a2B76313f3Cb8da983", + "0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F", [ [ - "153232193851712", - "462937279977" - ], - [ - "338018255707329", - "357159363004" + "184026530861047", + "134623539909" ] ] ], [ - "0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b", + "0x2f89DB6B5E80C4849142789d777109D2F911F780", [ [ - "573650098517519", - "5734467826" + "331726102506074", + "5251308075" ] ] ], [ - "0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22", + "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", [ [ - "76099819242179", - "19406193406" + "326330661529391", + "16541491227" ], [ - "569797745263715", - "21159782439" + "465286109667912", + "41138509764" ], [ - "634041962664177", - "2442109027" + "531116209812109", + "109538139161" ], [ - "636931384475422", - "19937578021" + "561676842598316", + "57729458645" ], [ - "639795300300187", - "86043643136" + "574187702455863", + "199863307838" ], [ - "640684697352708", - "201965000000" + "577754454852811", + "150501595883" + ], + [ + "591782385862752", + "164341630162" ] ] ], [ - "0x40Da1406EeB71083290e2e068926F5FC8D8e0264", + "0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA", [ [ - "634461766777846", - "6291400830" + "744297030626026", + "11165929503" ], [ - "679985260625921", - "71" + "744308196555529", + "33745270881" ], [ - "742848091245520", - "1417250000" - ], + "744341941826410", + "16872062514" + ] + ] + ], + [ + "0x30beFd253Ca972800150dBA8114F7A4EF53183D9", + [ [ - "742849508495520", - "1417250000" + "643649755203625", + "496254001" ] ] ], [ - "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", + "0x30d0DEb932b5535f792d359604D7341D1B357a35", [ [ - "682116636977139", - "389208674898" - ], + "92715335512140", + "260797078423" + ] + ] + ], + [ + "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", + [ [ - "683765325492995", - "643482107799" - ], + "611709212072170", + "19083709019" + ] + ] + ], + [ + "0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F", + [ [ - "728528152871407", - "486415703664" + "344839852767681", + "1993933960" + ] + ] + ], + [ + "0x3103c84c86a534a4f10C3823606F2a5b90923924", + [ + [ + "350560995758670", + "1562442699" ], [ - "790320470681371", - "129057167288" + "361237680058040", + "3203293071" ] ] ], [ - "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7", + "0x31188536865De4593040fAfC4e175E190518e4Ef", [ [ - "75686171721947", - "63685247214" + "70474963554843", + "42647602248" ], [ - "143377079152995", - "39159248155" + "87355264432269", + "23229244940" + ], + [ + "159182841468143", + "25259530956" + ], + [ + "159208100999099", + "75628998693" + ], + [ + "247427787534240", + "39695519731" ], [ - "564444697090208", - "27405315000" + "408397582477655", + "20847822433" + ] + ] + ], + [ + "0x317B157e02c3b5A16Efc3cc4eb26ACcC1cfF24e3", + [ + [ + "258450328339971", + "18991534679" + ] + ] + ], + [ + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", + [ + [ + "185408194792894", + "19585490430" ], [ - "566108259745977", - "13702657500" + "199678543542300", + "10849956649" ], [ - "569070983910815", - "13702657500" + "201457075097447", + "6841999986" ], [ - "569784042606215", - "13702657500" + "656568060160113", + "1550661150" ], [ - "572415925695253", - "13702657500" + "672612693625732", + "5000000000" ] ] ], [ - "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8", + "0x31b9084568783Fd9D47c733F3799567379015e6D", [ [ - "284294660466475", - "32606569800" - ], + "598066496589195", + "100033987828" + ] + ] + ], + [ + "0x3213977900A71e183818472e795c76aF8cbC3a3E", + [ [ - "644738977704474", - "427917192" + "209624708274640", + "2727243727" ] ] ], [ - "0x41954b53cFB5e4292223720cB3577d3ed885D4f7", + "0x326481a3b0C792Cc7DF1df0c8e76490B5ccd7031", [ [ - "96865545670304", - "150940785067" + "636333094290438", + "233865679687" ] ] ], [ - "0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54", + "0x328e124cE7F35d9aCe181B2e2B4071f51779B363", [ [ - "230525695001648", - "46558365900" + "159684783271420", + "51108156265" ] ] ], [ - "0x41BF3C5167494cbCa4C08122237C1620A78267Ab", + "0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39", [ [ - "67474986688534", - "125375746500" - ], + "355785898656583", + "159354982035" + ] + ] + ], + [ + "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e", + [ [ - "624643963734953", - "14701274232" + "51154858889104", + "22097720000" ], [ - "630547945246894", - "2249157051" + "78544641460294", + "25407712000" ], [ - "630888770251188", - "4637283207" + "85869322903816", + "96590650000" ], [ - "631053204527095", - "1713785306" + "93193533981954", + "51428850000" ], [ - "631567031582009", - "2612709957" + "160729464951818", + "27130320000" ], [ - "631709202386668", - "1277169126" + "170334015806894", + "21861840000" ], [ - "631801066266314", - "3476565097" + "198205724465484", + "17204908500" ], [ - "631804542831411", - "5257772247" + "210838860371618", + "31699684500" ], [ - "631812869882326", - "7418551539" + "249470894900355", + "141114556811" ], [ - "632715023362792", - "17060602162" + "394957500386195", + "2656309347" ], [ - "632910879705212", - "9755905834" - ], + "451982392748406", + "3362213720" + ] + ] + ], + [ + "0x32ddCe808c77E45411CE3Bb28404499942db02a7", + [ [ - "634018729724195", - "3815159692" + "157572697483467", + "30301264175" ], [ - "634022544883887", - "4493860181" - ], + "672686690262012", + "9156068040" + ] + ] + ], + [ + "0x33033E306c89Dc5b662f01e74B12623f9a39CCE4", + [ [ - "634166749613035", - "4202744958" - ], + "401134958523891", + "6000000000" + ] + ] + ], + [ + "0x33314cF610C14460d3c184a55363f51d609aa076", + [ [ - "634170952357993", - "6931782754" + "189165629280352", + "4" ], [ - "634194611311476", - "2472437836" - ], + "250764687174527", + "6" + ] + ] + ], + [ + "0x334bdeAA1A66E199CE2067A205506Bf72de14593", + [ [ - "634421333694120", - "6913927217" - ], + "78581810315623", + "1" + ] + ] + ], + [ + "0x334f12F269213371fb59b328BB6e182C875e04B2", + [ [ - "634752629850619", - "1490458288" + "170459154928178", + "85849064810" ], [ - "634773085341398", - "8523970000" + "187225592453120", + "100639688860" ], [ - "635868338517102", - "3485021203" + "235248755463285", + "30184796751" ], [ - "636068032409490", - "221549064473" - ], + "532670891057032", + "5098240000" + ] + ] + ], + [ + "0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96", + [ [ - "641729133359289", - "8198117831" + "343800433705719", + "25762354710" ], [ - "643744592455058", - "7303537619" - ], + "355945253638618", + "61234325811" + ] + ] + ], + [ + "0x33c0BCac5c1835fe9D52D35079F6617A22c6C431", + [ [ - "644282393261405", - "7914873408" + "326347203020618", + "125324760000" ], [ - "647553646266733", - "1483300105" + "328066927799830", + "36648000000" ], [ - "681835742516223", - "494751015" + "511268244803978", + "49788645972" ], [ - "682505845652037", - "1132140582" + "533229385997211", + "202654427854" ], [ - "706035819459340", - "98080531002" + "552807785951017", + "16210845885" ], [ - "741718035195957", - "162218835" + "553548932420572", + "43736535200" ], [ - "860392088596291", - "56073594" + "575265144492570", + "31060210793" ] ] ], [ - "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B", + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", [ [ - "86790953888750", - "38576992385" - ], - [ - "200625410465815", - "27121737219" - ], - [ - "203337173447397", - "44485730835" - ], + "28423496858037", + "1897354001" + ] + ] + ], + [ + "0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F", + [ [ - "207234905273707", - "17459074945" + "151059913817209", + "718187220626" ], [ - "207270328594324", - "49984112432" + "194136445740033", + "669600000000" ], [ - "208172233828826", - "26535963154" + "398058157938414", + "131956563555" ], [ - "209057370939437", - "19654542435" + "497621309855122", + "579087801478" ], [ - "209905911270631", - "51680614449" + "525752878043783", + "4019068358051" ], [ - "209957591885080", - "193338988216" + "574443423459533", + "291778458931" ], [ - "212591835915023", - "94239272075" - ], + "575412697794786", + "213651821494" + ] + ] + ], + [ + "0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91", + [ [ - "213229524257532", - "56443162240" - ], + "700036877911620", + "6971971500" + ] + ] + ], + [ + "0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97", + [ [ - "213336723478778", - "46929014315" - ], + "320197037442753", + "8912443926" + ] + ] + ], + [ + "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327", + [ [ - "213383652493093", - "46820732322" + "202773340970944", + "44765696589" ], [ - "213658788094189", - "46596908794" - ], + "274157284179751", + "130932379038" + ] + ] + ], + [ + "0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d", + [ [ - "214949047240394", - "135385700183" - ], + "312543047721534", + "185860975995" + ] + ] + ], + [ + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", + [ [ - "215084432940577", - "135094592523" + "284272720466475", + "21940000000" ], [ - "215439620132931", - "89335158945" - ], + "367354986456086", + "159350000000" + ] + ] + ], + [ + "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30", + [ [ - "215528955291876", - "89207795460" + "326049910381759", + "24" ], [ - "215618163087336", - "89080704286" - ], + "340162996725906", + "1695292297" + ] + ] + ], + [ + "0x3489B1E99537432acAe2DEaDd3C289408401d893", + [ [ - "215707243791622", - "88953884657" - ], + "634664031419046", + "20000000000" + ] + ] + ], + [ + "0x349E8490C47f42AB633D9392a077D6F1aF4d4c85", + [ [ - "217010587764381", - "46290484227" - ], + "250842519878117", + "25098501333" + ] + ] + ], + [ + "0x34a649fde43cE36882091A010aAe2805A9FcFf0d", + [ [ - "217563869893679", - "55156826488" - ], + "634036479771284", + "5482892893" + ] + ] + ], + [ + "0x34Aec84391B6602e7624363Df85Efe02A1FF35f5", + [ [ - "221813776173855", - "37911640587" - ], + "248138998423714", + "100498286663" + ] + ] + ], + [ + "0x34d81294A7cf6F794F660e02B468449B31cA45fb", + [ [ - "233377524301320", - "80126513749" - ], + "895516510872318", + "3743357026612" + ] + ] + ], + [ + "0x34e642520F4487D7D0229c07f2EDe107966D385E", + [ [ - "237867225757655", - "94970341987" - ], + "367351784090731", + "3202365355" + ] + ] + ], + [ + "0x354F7a379e9478Ad1734f5c48e856F89E309a597", + [ [ - "238323426120979", - "141765636262" - ], + "152084889110747", + "12083942493" + ] + ] + ], + [ + "0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209", + [ [ - "238513085414760", - "141406044017" - ], + "292260794541850", + "2182702092311" + ] + ] + ], + [ + "0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e", + [ [ - "239248004001388", - "46885972163" - ], + "174758503486224", + "44765525061" + ] + ] + ], + [ + "0x358B8a97658648Bcf81103b397D571A2FED677eE", + [ [ - "239294889973551", - "24269363626" - ], + "917235408231892", + "32949877099" + ] + ] + ], + [ + "0x35a386D9B7517467a419DeC4af6FaFC4c669E788", + [ [ - "240291234403735", - "27327225251" - ], + "344823646308651", + "10024424157" + ] + ] + ], + [ + "0x362FFA9F404A14F4E805A39D4985042932D42aFe", + [ [ - "240589084672177", - "187694536015" - ], + "634133673151647", + "2420032442" + ] + ] + ], + [ + "0x3638570931B30FbBa478535A94D3f2ec1Cd802cB", + [ [ - "241109044343173", - "186820539992" + "197761671552490", + "327866270649" ], [ - "247641838339634", - "101040572048" - ], + "205770700307726", + "85677608975" + ] + ] + ], + [ + "0x368a5564F46Bd896C8b365A2Dd45536252008372", + [ [ - "409557925200195", - "13862188950" - ], + "212251016823450", + "186137117756" + ] + ] + ], + [ + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", + [ [ - "411664283436334", - "13677512381" + "67075754733543", + "16604041484" ], [ - "411709178648065", - "13606320365" + "67428770424441", + "6285570368" ], [ - "411722784968430", - "33820000000" + "70451813250817", + "4716970693" ], [ - "411756604968430", - "33820000000" + "273939484179751", + "217800000000" ], [ - "415230639081557", - "16910000000" + "321517916923381", + "214258454662" ], [ - "415247549081557", - "16910000000" + "429133499005020", + "436815986689" ], [ - "415264459081557", - "16915000000" + "533603847212626", + "135734075338" ], [ - "415281374081557", - "16915000000" + "547809199075962", + "71050000000" ], [ - "415314425991557", - "13544000000" - ], + "645809940109546", + "188831250000" + ] + ] + ], + [ + "0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E", + [ [ - "415327969991557", - "10158000000" - ], + "768350362242073", + "34649098834" + ] + ] + ], + [ + "0x36C3094E86CB89e33a74F7e4c10659dd9366538C", + [ [ - "415338127991557", - "6772000000" + "634959436885365", + "19640500000" ], [ - "415344899991557", - "16930000000" - ], + "635245783302881", + "5356500000" + ] + ] + ], + [ + "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B", + [ [ - "415383569069219", - "13548000000" + "18115882730389", + "2184095098753" ], [ - "415397117069219", - "13548000000" + "465379361625193", + "3458705615800" ], [ - "415476876421248", - "13564000000" - ], + "470054787273693", + "227774351500" + ] + ] + ], + [ + "0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc", + [ [ - "415552624743282", - "13389422861" - ], + "531845211117628", + "3940485943" + ] + ] + ], + [ + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", + [ [ - "415566014166143", - "14725577338" + "217264218398563", + "73188666066" ], [ - "415580739743481", - "17399191046" - ], + "664983563595345", + "75343043560" + ] + ] + ], + [ + "0x37435b30f92749e3083597E834d9c1D549e2494B", + [ [ - "415598138934527", - "13381218325" + "22131306224508", + "4637368726000" ], [ - "415611520152852", - "13378806625" + "32181495640124", + "8433459586" ], [ - "415624898959477", - "13380333313" + "38769863596589", + "1565234930" ], [ - "415638279292790", - "14715582102" + "76223412009195", + "178773400000" ], [ - "415652994874892", - "16050036235" + "86845698678511", + "62444029452" ], [ - "415669044911127", - "16046566435" + "86978458498127", + "27307181096" ], [ - "415685091477562", - "16043097791" + "88869752900177", + "12050549452" ], [ - "415701134575353", - "13593121522" + "93006185741954", + "23198240000" ], [ - "415714727696875", - "13370532569" + "118308388563198", + "14166669028" ], [ - "428524210780265", - "13268338278" + "141234198150981", + "17100712995" ], [ - "573818581461780", - "41982081237" + "183773660297853", + "252870563194" ], [ - "575626349616280", - "53257255812" + "186199081638585", + "49195388116" ], [ - "741131517296797", - "95195568422" + "271980436404190", + "296688083935" ], [ - "767989215426960", - "14606754787" + "352399758201369", + "1024763326668" ], [ - "771127544359367", - "12764830824" + "359928453899368", + "1288012208388" ], [ - "790591093043508", - "71074869547" + "363939676933011", + "1412385930810" ], [ - "868345234814461", - "178880088846" + "395593019554380", + "654800000000" ], [ - "869175887842680", - "80331618390" + "437070763478235", + "3840100000000" ], [ - "869256219461070", - "87734515234" + "460737759569063", + "4527500000000" ], [ - "900352767003453", - "187169856894" + "591966036774809", + "666686929557" ], [ - "912339955462822", - "95736000000" + "593409232970016", + "563728148057" ], [ - "917463394063277", - "359610000000" + "764332208498162", + "105792331133" ] ] ], [ - "0x41e2965406330A130e61B39d867c91fa86aA3bB8", + "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", [ [ - "638304410283199", - "57972833670" + "340310565047777", + "2715874656" ] ] ], [ - "0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80", + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", [ [ - "342977163712331", - "63975413862" - ] - ] - ], - [ - "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf", - [ + "805406787392676", + "271427897935" + ], [ - "861104480251463", - "324510990839" + "808841378952277", + "3741772811" ], [ - "870558058147864", - "49189108815" + "861085838494193", + "18080297788" ], [ - "887051135343310", - "60164823097" + "904804646944212", + "185595194790" ], [ - "887243147406769", - "46252901321" + "917268358306518", + "195035742135" ] ] ], [ - "0x4254e393674B85688414a2baB8C064FF96a408F1", + "0x375C1DC69F05Ff526498C8aCa48805EeC52861d5", [ [ - "79244849356805", - "51965469308" - ], - [ - "143749224578097", - "195601904457" + "624706749861385", + "1293514654" ] ] ], [ - "0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7", + "0x377f781195d494779a6CcC2AA5C9fF961C683A27", [ [ - "443860431104984", - "23385195001" + "677766884983003", + "10595565" ] ] ], [ - "0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31", + "0x3798AE2cbC444ed5B5f4fb38344044977066D13F", [ [ - "179882609606308", - "176238775506" + "344843846701641", + "18931968095" + ], + [ + "376325075317086", + "7476138081" ] ] ], [ - "0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569", + "0x37d515Fa5DC710C588B93eC67DE42068090e3ED8", [ [ - "76402185409195", - "22516244343" + "582564609492029", + "1539351282905" + ], + [ + "584103960774934", + "910855838514" + ], + [ + "585059745414822", + "387855469635" + ], + [ + "589065176123882", + "721956082204" + ], + [ + "589789721199545", + "700119128150" + ], + [ + "590489840327695", + "511974175317" ] ] ], [ - "0x43816d942FA5977425D2aF2a4Fc5Adef907dE010", + "0x3810EAcf5020D020B3317B559E59376c5d02dCB2", [ [ - "744283423047316", - "5598000000" + "309464729921305", + "87638844672" ] ] ], [ - "0x4384f7916e165F0d24Ab3935965492229dfd50ea", + "0x38293902871C8ee22720A6553585F24De019c78e", [ [ - "649143417557047", - "5043054" + "632904420406334", + "6459298878" ] ] ], [ - "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7", + "0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E", [ [ - "190560408853579", - "17822553583" - ], - [ - "385200050200822", - "12787260456" + "227393755294232", + "90805720025" ] ] ], [ - "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", + "0x38AE800E603F61a43f3B02f5E429b44E32e01D84", [ [ - "420829723023", - "12564061345" - ], - [ - "4942141056624", - "1129385753" - ], - [ - "4955774616406", - "85802365" - ], - [ - "28365015360976", - "1000000000" - ], - [ - "28366015360976", - "1000000000" - ], - [ - "28367015360976", - "1000000000" - ], - [ - "28396822783467", - "2180869530" - ], - [ - "28399003652997", - "19090914955" - ], - [ - "28436831873163", - "1109129488" - ], - [ - "28437941002651", - "1206768540" + "649248685749729", + "12448041335" ], [ - "28439199913335", - "896325564" + "650066211440274", + "883672882" ], [ - "28456831873163", - "1000000000" + "651485759293845", + "3572292465" ], [ - "28457831873163", - "1000000000" - ], + "735462721965817", + "38853572481" + ] + ] + ], + [ + "0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5", + [ [ - "28476232963741", - "1000000000" + "152135543630806", + "6119470222" ], [ - "28477232963741", - "1000000000" - ], + "207252364348652", + "17964245672" + ] + ] + ], + [ + "0x38f733Fb3180276bE19135B3878580126F32c5Ab", + [ [ - "28861157837851", - "7671502446" + "33291076017861", + "103108618" ], [ - "31620980803307", - "25104421" + "767122453744233", + "2293110488" ], [ - "32165371093183", - "5644256527" - ], + "767642320985579", + "562218595" + ] + ] + ], + [ + "0x39167e20B785B46EBd856CC86DDc615FeFa51E76", + [ [ - "33155888849890", - "522412224" - ], + "825748197827247", + "503880761345" + ] + ] + ], + [ + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", + [ [ - "33178643999918", - "8231353455" + "31613511996035", + "1422751578" ], [ - "33253286873261", - "9664144600" + "56090190254115", + "11945702437" ], [ - "76006574486488", - "12000000000" - ], + "61070704728260", + "11265269800" + ] + ] + ], + [ + "0x3983b24542E637030af57a6Ca117B96Fc42Ace10", + [ [ - "78617270835971", - "22778336323" + "344971252855340", + "54716661232" ], [ - "93244962831954", - "3466008022725" - ], + "357975339088994", + "60400014733" + ] + ] + ], + [ + "0x399baf8F9AD4B3289d905f416bD3e245792C5fA6", + [ [ - "860235430554267", - "12817228360" - ], + "31881074513162", + "2271791105" + ] + ] + ], + [ + "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608", + [ [ - "861574350043908", - "4987547355" + "38729105409331", + "4520835534" ], [ - "861688842729623", - "6378966633" + "75749856969161", + "8190484804" ], [ - "866867341387950", - "1210047061" + "75768702250033", + "2592066456" ], [ - "883474337359063", - "55249364508" + "544122918974124", + "90520524431" ], [ - "883752711206313", - "17679122867" + "569988798013715", + "75915000000" ], [ - "884692363137944", - "20022518305" + "634184272767738", + "4800266302" ], [ - "886956426850400", - "13791046304" - ] - ] - ], - [ - "0x43b43aA7Ea873e8d7650f64ca24BeC007D6CD920", - [ - [ - "119938474317595", - "231684492403" + "634395165820350", + "4971925933" ], [ - "197112848801207", - "191819355151" + "637136003689549", + "5026085154" ], [ - "197304668156358", - "347968913517" + "641232825579881", + "6901957424" ], [ - "634297257454226", - "8643272696" + "644028956669800", + "6258715658" ], [ - "634318197219686", - "20000000000" + "644035215385458", + "3739040895" ], [ - "634389262085325", - "5903735025" + "644052141349672", + "5619908813" ], [ - "634951612625176", - "6468282284" + "644073507478345", + "8688260900" ], [ - "635130589958365", - "59209280000" + "644089221861766", + "9969767834" ], [ - "641243528586934", - "224172731213" + "644099191629600", + "5282898032" ], [ - "643113131975195", - "4579348454" + "644112169106375", + "11803118121" ], [ - "644402952187282", - "11034160064" + "644143887959668", + "6586391868" ], [ - "644427143015560", - "10697128872" + "644181540147936", + "5533430900" ], [ - "682720800766215", - "105474278261" + "644217945713915", + "9775619115" ], [ - "759973111455038", - "190360000000" - ] - ] - ], - [ - "0x4432e64624F4c64633466655de3D5132ad407343", - [ - [ - "489636306256", - "76923076" + "644227721333030", + "7138145970" ], [ - "499953138393", - "1624738693" + "644235138725690", + "11087897889" ], [ - "759972749054172", - "53680953" + "644246424265017", + "9438007812" ], [ - "761858063237895", - "53575113" + "644266109923013", + "12728017527" ], [ - "762840533673019", - "40875451574" + "648703066319944", + "475923815" ], [ - "762881409124593", - "45392997396" + "650452044643940", + "210712873" ], [ - "766112516278924", - "256869092" + "740444343886258", + "37039953396" ] ] ], [ - "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", + "0x3a1Bc767d7442355E96BA646Ff83706f70518dAA", [ [ - "519636306256", - "435653558" + "60534460423689", + "37943648860" ], [ - "28061198121035", - "18536597032" + "60613921072549", + "337056974653" ], [ - "28425394212038", - "3071807226" + "384808251979965", + "221162082281" ], [ - "28859391130925", - "1549632000" - ] - ] - ], - [ - "0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545", - [ + "385114975062246", + "68895138576" + ], [ - "33151381475806", - "1044633475" + "428730219817416", + "346162069888" ], [ - "643087290738377", - "1586716252" + "444016501963211", + "63083410136" + ], + [ + "460460113879903", + "200388674016" + ], + [ + "510804923776436", + "196096790801" ] ] ], [ - "0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F", + "0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264", [ [ - "516363563859602", - "772670414147" + "740644060961741", + "4860922695" ] ] ], [ - "0x448a549593020696455D9b5e25e0b0fB7a71201E", + "0x3A529A643e5b89555712B02e911AEC6add0d3188", [ [ - "507995893644699", - "48468507344" - ], - [ - "529799210870675", - "13171499195" - ], - [ - "529862978616276", - "72277031524" + "637148882075661", + "285714285" ] ] ], [ - "0x4497aAbaa9C178dc1525827b1690a3b8f3647457", + "0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1", [ [ - "141593397391504", - "168801655493" + "915394886313821", + "16285361281" ] ] ], [ - "0x44E836EbFEF431e57442037b819B23fd29bc3B69", + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", [ [ - "585452484380922", - "590804533993" + "141910062421668", + "20166747481" ], [ - "634372867374605", - "167260560" + "147404101138230", + "19708496282" ], [ - "634373034635165", - "2955966531" + "153213326271478", + "18867580234" ], [ - "634384029519721", - "5232565604" + "160718808143920", + "10656807898" ], [ - "634414601014386", - "6732679734" + "396504433540468", + "13250965252" ], [ - "634471029687631", - "1144842671" - ], + "396517684505720", + "21196418023" + ] + ] + ], + [ + "0x3b55DF245d5350c4024Acc36259B3061d42140D2", + [ [ - "634946964475864", - "4648149312" + "59303914981687", + "109032000000" ], [ - "644729591640166", - "792144308" + "395431577902828", + "61940000000" ], [ - "648094970693749", - "4657050598" + "428517528130265", + "6682650000" ], [ - "649184311283738", - "11312622545" + "430095496589579", + "1727500000" ], [ - "649761686809083", - "11781355408" + "672251402712185", + "113626410" ], [ - "652479040083562", - "3951780206" - ] - ] - ], - [ - "0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB", - [ - [ - "273550612806852", - "119672848374" + "768408426239740", + "10530972784" ] ] ], [ - "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975", + "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", [ [ - "257953922346879", - "78731552385" + "33289326590234", + "1184036940" ], [ - "309552368765977", - "50532033501" + "33386963858115", + "4658475375814" ], [ - "638949411896201", - "2100140818" + "408425382414043", + "1123333332210" ], [ - "643118187155825", - "5070971174" + "427517763505395", + "856500000000" ], [ - "643811556089323", - "9000076282" + "477272425070829", + "3276576610442" ], [ - "643969388479223", - "2093638974" + "759127319086261", + "542512540896" ] ] ], [ - "0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA", + "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd", [ [ - "345230873758247", - "120151660091" - ] - ] - ], - [ - "0x4588a155d63CFFC23b3321b4F99E8d34128B227a", - [ + "561885444802308", + "194013000000" + ], [ - "256610609452753", - "98878990000" - ] - ] - ], - [ - "0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e", - [ + "565476469810977", + "194013435000" + ], [ - "300537735718283", - "9033860883" - ] - ] - ], - [ - "0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4", - [ + "567291750347146", + "194013435000" + ], [ - "767502219582512", - "1017640" - ] - ] - ], - [ - "0x46387563927595f5ef11952f74DcC2Ce2E871E73", - [ + "567707182532146", + "194013435000" + ], [ - "768717602283351", - "10000000" + "570802112669484", + "192000000000" ], [ - "768717622283351", - "2694500000" + "571217544854484", + "194013435000" ] ] ], [ - "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", [ [ - "185586166390180", - "4605813333" - ] - ] - ], - [ - "0x46b7c8c6513818348beF33cc5638dDe99e5c9E74", - [ + "70932687821992", + "142530400862" + ], [ - "408347529988115", - "11863530938" - ] - ] - ], - [ - "0x473812413b6A8267C62aB76095463546C1F65Dc7", - [ + "211163571688407", + "90969668386" + ], [ - "767510533790684", - "852570198" + "544006850006260", + "10532744358" ], [ - "769134631191932", - "143341492" - ] - ] - ], - [ - "0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb", - [ + "653296446968959", + "1462730442" + ], [ - "139632121602326", - "73702619695" - ] - ] - ], - [ - "0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88", - [ + "653477602499401", + "2382078228" + ], [ - "204109072732682", - "12907895307" + "848255254733335", + "2974087025" ] ] ], [ - "0x47b2EFa18736C6C211505aEFd321bEC3AC3E8779", + "0x3BD142a93adC0554C69395AAE69433A74CFFc765", [ [ - "400534613369686", - "132789821695" - ] - ] - ], - [ - "0x47C2f43D7fE9604c0f9cd4F6D209648a4E8e0209", - [ + "267825806174639", + "10928727606" + ], [ - "130708317757427", - "358852500300" + "325258451698078", + "141509657939" ] ] ], [ - "0x48070111032FE753d1a72198d29b1811825A264e", + "0x3BD4c721C1b547Ea42F728B5a19eB6233803963E", [ [ - "665432395338264", - "268948474274" - ], - [ - "668538888477323", - "173806994620" - ], - [ - "669549803608896", - "188830987043" - ], - [ - "671213571259037", - "238241613308" - ], - [ - "671471895749521", - "224577013993" + "218781665879410", + "12034941079" ] ] ], [ - "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351", + "0x3C087171AEBC50BE76A7C47cBB296928C32f5788", [ [ - "194902848948000", - "678300326761" - ], - [ - "198400769373984", - "522905317827" - ], - [ - "220690466846146", - "526712108816" - ], - [ - "234257642043144", - "86640000000" - ], - [ - "237033531028709", - "216100000000" + "170943059650826", + "148060901697" ], [ - "239428834403735", - "862400000000" + "179705651830652", + "176957775656" ], [ - "245143778851644", - "240081188008" + "212069776260061", + "14038264688" ], [ - "248239496710377", - "209638678922" + "215219527533100", + "16507846329" ], [ - "248611315273600", - "643500000000" + "230427008120352", + "1592559438" ], [ - "249254815273600", - "216079626755" + "232479752844281", + "2373299725" ], [ - "252051631959570", - "859142789165" + "327841336645705", + "13592654125" ], [ - "252910774748735", - "1020962098385" + "339831945732017", + "224290993889" ], [ - "254599239282940", - "351175706375" + "340465994882707", + "17923920296" ], [ - "254950414989315", - "1019094463438" + "408359393519053", + "10089000000" ], [ - "255969509452753", - "641100000000" + "648211808724006", + "6721246743" ], [ - "257492898458484", - "188408991793" + "743598654626181", + "2043540906" ] ] ], [ - "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", + "0x3C43674dfa916d791614827a50353fe65227B7f3", [ [ - "264978511678838", - "7633129939" - ], - [ - "311308648020422", - "23542648323" - ], - [ - "430074784791709", - "5342881647" - ], - [ - "458937267162882", - "1840684464" - ], - [ - "477187476187107", - "1918866314" - ], - [ - "477189395053421", - "1926694373" - ], - [ - "477191321747794", - "1925324510" - ], - [ - "477193247072304", - "1928422141" + "86224790513977", + "18752048727" ], [ - "480549001681271", - "1936443717" + "249683318820186", + "10002984280" ], [ - "507993888424871", - "2005219828" + "683068828515029", + "20162991875" ], [ - "508044362152043", - "2021544393" + "781843303488481", + "90638399996" ], [ - "638287014203068", - "6170341451" + "808097236727089", + "112991072036" ], [ - "640681813289989", - "2884062719" + "883534894985575", + "82087297170" ], [ - "643064981952810", - "5052470551" + "886970218030110", + "80917313200" ], [ - "643862412346720", - "5109096170" + "902311722381291", + "2492924562921" ], [ - "647209674578671", - "10179109779" + "911681851165911", + "148249317984" ] ] ], [ - "0x4888c0030b743c17C89A8AF875155cf75dCfd1E1", + "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", [ [ - "767302481235981", - "5239462203" + "599117126788478", + "69159694993" ] ] ], [ - "0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91", + "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c", [ [ - "586109598020889", - "5946000000" - ] - ] - ], - [ - "0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0", - [ + "562585978802308", + "48492000000" + ], [ - "262708652965979", - "892676539" - ] - ] - ], - [ - "0x48e9E2F211371bD2462e44Af3d2d1aA610437f82", - [ + "564921455942708", + "48492118269" + ], [ - "667085979405936", - "7331625468" - ] - ] - ], - [ - "0x48F8738386D62948148D0483a68D692492e53904", - [ + "566579274363477", + "48492118269" + ], [ - "495222864611440", - "35654060356" + "568565179832546", + "48492118269" + ], + [ + "570247098801215", + "48492118269" + ], + [ + "571918080039484", + "48492118269" ] ] ], [ - "0x4932Ad7cde36e2aD8724f86648dF772D0413c39E", + "0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106", [ [ - "83129576696094", - "517995825113" + "271881305006652", + "99131397538" ] ] ], [ - "0x49444e6d0b374f33c43D5d27c53d0504241B9553", + "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B", [ [ - "228469619062286", - "4748040000" + "7282639421137", + "107872082286" ], [ - "264656791222470", - "47931342976" + "67130960801289", + "208750536344" ], [ - "272768921777231", - "49267287724" + "197652637069875", + "79560142678" ], [ - "311332190668745", - "92255508651" + "506176315739631", + "751200000000" + ], + [ + "507737045334642", + "256843090229" + ], + [ + "551839541572649", + "464523649777" ] ] ], [ - "0x4949D9db8Af71A063971a60F918e3C63C30663d7", + "0x3Cdf2F8681b778E97D538DBa517bd614f2108647", [ [ - "41140829546546", - "132215385271" - ], - [ - "41373044931815", - "2" - ], - [ - "170707469808407", - "15353990995" + "158637651631405", + "96662646688" ], [ - "171091120552523", - "168884964002" + "258849054768509", + "94179890197" ], [ - "260026533868529", - "42584740555" + "265521940236427", + "70852648035" ] ] ], [ - "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", [ [ - "33227297183704", - "653834157" - ], - [ - "212145439369214", - "1113699755" + "239154025576778", + "93978424610" ], [ - "279405653734695", - "9627840936" + "325815231767308", + "116109191366" ], [ - "320205949886679", - "5543007376" + "340483918803003", + "107540812013" ] ] ], [ - "0x49cE991352A44f7B50AF79b89a50db6289013633", + "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", [ [ - "152187983101028", - "20341364703" - ], - [ - "152944600004612", - "25333867824" - ], - [ - "179694459833740", - "11191996912" - ], - [ - "189337100682911", - "32429850581" + "31605992022782", + "4486265388" ] ] ], [ - "0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9", + "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", [ [ - "323336011972704", - "240943746648" + "559909549098070", + "9516000000" ] ] ], [ - "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", + "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", [ [ - "216246125608251", - "21731842340" - ], - [ - "235278940260036", - "30572743902" - ], - [ - "262709545642518", - "234423710407" - ], - [ - "262943969352925", - "856400000000" - ], - [ - "365352062863821", - "32075676524" + "644123972224496", + "18442405" ] ] ], [ - "0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256", + "0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5", [ [ - "339479065013191", - "22903272033" + "80481878020743", + "2335790276267" + ], + [ + "131490207784127", + "4068458197507" ] ] ], [ - "0x4a52078E4706884fc899b2Df902c4D2d852BF527", + "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", [ [ - "764116786012760", - "434385954" + "768326922278702", + "643659978" + ], + [ + "911906996407371", + "24032791791" ] ] ], [ - "0x4A5867445A1Fa5F394268A521720D1d4E5609413", + "0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6", [ [ - "484489924611440", - "2578100000000" + "87489402650273", + "92067166902" ] ] ], [ - "0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521", + "0x3e2EfD7D46a1260b927f179bC9275f2377b00634", [ [ - "640452235842856", - "37062339827" + "325399961356017", + "11508897293" ] ] ], [ - "0x4AAE8E210F814916778259840d635AA3e73A4783", + "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB", [ [ - "201153918156661", - "24321462040" + "562755073802308", + "30150000000" ], [ - "648113005876132", - "16950613281" + "649506912428795", + "36390839843" + ], + [ + "649853488667170", + "65015748" ] ] ], [ - "0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0", + "0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c", [ [ - "345025969516572", - "39817721136" + "534857972611245", + "18731220754" ] ] ], [ - "0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e", + "0x3e763998E3c70B15347D68dC93a9CA021385675d", [ [ - "636825648638295", - "1260667121" + "647229043503533", + "3184477709" ] ] ], [ - "0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A", + "0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC", [ [ - "344862778669736", - "9133462996" + "340708439500138", + "107810827136" + ], + [ + "343181072805930", + "327389493912" ] ] ], [ - "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", + "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c", [ [ - "164597798526063", - "2630224719" - ], - [ - "265994631181050", - "8090890905" - ], - [ - "378228371871768", - "1740766894" + "141030334319023", + "70000039897" ], [ - "551460280407903", - "25275274698" + "595385246220334", + "56722212500" ], [ - "562580496802308", - "5482000000" + "644345312837307", + "5547402539" ], [ - "566627766481746", - "5482750000" + "647224666133056", + "4377370477" ], [ - "568559697082546", - "5482750000" + "647382462319478", + "6271703989" ], [ - "570295590919484", - "5482750000" + "647555129566838", + "7781608168" ], [ - "571912597289484", - "5482750000" + "742833918745520", + "14172500000" ], [ - "818727201955775", - "160270131472" + "848237297659532", + "17957073803" ] ] ], [ - "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0", [ [ - "20308652197223", - "42992538368" - ], - [ - "33128882677551", - "22434511734" - ], - [ - "38733626244865", - "36237351724" - ], - [ - "75851623491707", - "91376117280" - ], - [ - "97312189544226", - "962543493539" - ], - [ - "98274733037765", - "225761417993" - ], - [ - "109521368209337", - "25432470215" - ], - [ - "141107886434515", - "25140924405" - ], - [ - "164659166534057", - "656550874126" - ], - [ - "169398711509766", - "84912848439" - ], - [ - "182744208013826", - "594997480373" - ], - [ - "183339205494199", - "94951829258" - ], - [ - "184161154400956", - "57484083188" - ], - [ - "184684071457860", - "320813397796" - ], - [ - "203463090125887", - "277362737859" - ], - [ - "228695819280976", - "435400000000" - ], - [ - "229389778185936", - "59760464812" - ], - [ - "230333526120352", - "93482000000" - ], - [ - "230572253367548", - "434600000000" - ], - [ - "231006853367548", - "403315212327" - ], - [ - "231410168579875", - "434000000000" - ], - [ - "232256551893053", - "136081851228" - ], - [ - "234465804378976", - "433000000000" - ], - [ - "245678239246970", - "429600000000" + "355636039477093", + "9985803845" ], [ - "246405622268848", - "429000000000" + "355646025280938", + "2373276277" ], [ - "246834622268848", - "593165265392" - ], + "355773362907086", + "12535749497" + ] + ] + ], + [ + "0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA", + [ [ - "266623247476225", - "31843087062" + "294677956974210", + "187420307596" ], [ - "400533285433272", - "1327936414" - ], + "298745403795012", + "21089420430" + ] + ] + ], + [ + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", + [ [ - "524402842691769", - "277260761697" + "41285039823287", + "521806033" ], [ - "548030249075962", - "2737095195209" + "235853631746968", + "1533680526" ], [ - "574794879815863", - "470264676707" + "531838649791416", + "6561326212" ], [ - "576273196085064", - "475735746580" - ], + "662650407520724", + "57172076" + ] + ] + ], + [ + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", + [ [ - "577250185805214", - "352964012203" + "647725612230182", + "29699469080" ], [ - "577994078452897", - "428753685947" - ], + "768304721377388", + "3507114838" + ] + ] + ], + [ + "0x400609FDd8FD4882B503a55aeb59c24a39d66555", + [ [ - "578422832138844", - "621546025531" + "13424355740040", + "46140000000" ], [ - "579151783632625", - "511648078072" - ], + "385212837461278", + "12793000337" + ] + ] + ], + [ + "0x4034adD1a1A750AA19142218A177D509b7A5448F", + [ [ - "599186286483471", - "300681637829" + "643088877454629", + "2992976846" ], [ - "606325525196387", - "430288154881" + "643091870431475", + "4644226944" ], [ - "611048146529128", - "294537267480" + "643125864984505", + "6948011478" ], [ - "611342683796608", - "122585177924" + "643617546386516", + "2736651405" ], [ - "622350349441157", - "423020213781" + "643629222103340", + "1334408552" ], [ - "622773369654938", - "188613792398" + "643653609485430", + "3361817827" ], [ - "622976007236649", - "605799007104" + "643656971303257", + "1840841812" ], [ - "631737544692156", - "57278437068" + "643658812145069", + "1886219723" ], [ - "632737782810716", - "166637595618" + "643660698364792", + "4196252501" ], [ - "632923458328218", - "3562084461" + "643664894617293", + "3945346023" ], [ - "633174226086802", - "118340636454" + "643697705822698", + "3069368803" ], [ - "633293616127503", - "68451648885" + "643700775191501", + "2616399199" ], [ - "633362067776388", - "696785610" + "643704053550072", + "4354211152" ], [ - "634050042239925", - "2029010620" + "643715616535597", + "4120838084" ], [ - "634052071250545", - "1566534038" + "643735049573681", + "4950268423" ], [ - "634053637784583", - "732611220" + "643739999842104", + "4592612954" ], [ - "634200736479427", - "4790574316" + "643751895992677", + "4449841152" ], [ - "634205527053743", - "2600593701" + "643756345833829", + "6933768558" ], [ - "634433893789543", - "4541616170" + "643774597107209", + "4927912318" ], [ - "634444626397101", - "3241881404" + "643856593003930", + "5819342790" ], [ - "634447868278505", - "3785283994" + "643882906499989", + "3569433363" ], [ - "636303124680973", - "5741625032" + "643939083202841", + "2637229058" ], [ - "638269655222213", - "2789581992" + "643985406845033", + "5924684744" ], [ - "639434921077105", - "197428820134" + "643991331529777", + "2352760830" ], [ - "639687831454420", - "1841462496" + "643993684290607", + "1884171975" ], [ - "639714195158937", - "1002910636" + "643995568462582", + "3724339951" ], [ - "640275015971967", - "936457910" + "644082195739245", + "2039061143" ], [ - "641492720431748", - "6670046454" + "644168293016051", + "3645902617" ], [ - "643047432848730", - "2168510045" + "644256136851915", + "6416440826" ], [ - "643899647055493", - "6808576094" + "644279469802093", + "2923459312" + ] + ] + ], + [ + "0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB", + [ + [ + "640996006666783", + "46563701848" ], [ - "643945769210064", - "6039028984" + "646739353301167", + "10228948233" ], [ - "644368102368333", - "5786930514" + "646772221095742", + "7915875000" ], [ - "647162978371458", - "3462235904" + "647311018597283", + "23870625000" ], [ - "648721663311036", - "508035028" + "647458959804717", + "20307375000" ], [ - "680142146935616", - "114648436337" + "647479267179717", + "26457093750" ], [ - "741722138870112", - "1341090085" + "647637605929338", + "30143670312" ], [ - "744371763079127", - "20897052664" + "647696885372209", + "28726857973" ], [ - "744392660131791", - "12851063713" + "648474129091480", + "9060790481" ], [ - "782518705963072", - "9770439640" + "658068499502639", + "37212168484" ], [ - "810089111571412", - "50684223342" + "658229774319898", + "29767318612" ] ] ], [ - "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", + "0x404a75f728D7e89197C61c284d782EC246425aa6", [ [ - "319932769634923", - "69289110000" + "883958086238857", + "171169191653" ] ] ], [ - "0x4C3C27eB0C01088348132d6139F6d51FC592dDBD", + "0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5", [ [ - "310797339658113", - "5564385258" + "539608230930738", + "417347700552" + ], + [ + "553592668955772", + "222299277023" ] ] ], [ - "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", + "0x406874Ac226662369d23B4a2B76313f3Cb8da983", [ [ - "212083814524749", - "53819165244" + "153232193851712", + "462937279977" + ], + [ + "338018255707329", + "357159363004" ] ] ], [ - "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b", [ [ - "4905170401522", - "26072576416" - ], + "573650098517519", + "5734467826" + ] + ] + ], + [ + "0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22", + [ [ - "106839237525292", - "4821011987" + "76099819242179", + "19406193406" ], [ - "106846924633216", - "1424576250" + "569797745263715", + "21159782439" ], [ - "127568340031921", - "929795062302" + "634041962664177", + "2442109027" ], [ - "128498135094223", - "929805062302" + "636931384475422", + "19937578021" ], [ - "129427940156525", - "10000000" + "639795300300187", + "86043643136" ], [ - "190477983853123", - "31429058425" - ], + "640684697352708", + "201965000000" + ] + ] + ], + [ + "0x40Da1406EeB71083290e2e068926F5FC8D8e0264", + [ [ - "278886678120078", - "16930293743" + "634461766777846", + "6291400830" ], [ - "315294748069199", - "4230684000" + "679985260625921", + "71" ], [ - "315298978753199", - "38949316540" + "742848091245520", + "1417250000" ], [ - "672771638984332", - "58636813154" - ], + "742849508495520", + "1417250000" + ] + ] + ], + [ + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", + [ [ - "675003539778787", - "83138632015" + "682116636977139", + "389208674898" ], [ - "679651587058721", - "17303169600" + "683765325492995", + "643482107799" ], [ - "742546489600908", - "12755718599" + "728528152871407", + "486415703664" ], [ - "744706441326176", - "26346793433" + "790320470681371", + "129057167288" ] ] ], [ - "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", + "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7", [ [ - "148125503301315", - "613663117381" - ], - [ - "148782143329299", - "676628312802" - ], - [ - "152969933872436", - "202026433529" + "75686171721947", + "63685247214" ], [ - "157281617133575", - "136137390673" + "143377079152995", + "39159248155" ], [ - "160958961495278", - "49543800744" + "564444697090208", + "27405315000" ], [ - "166316667085303", - "492948149258" + "566108259745977", + "13702657500" ], [ - "167125029052537", - "433007073267" + "569070983910815", + "13702657500" ], [ - "168960920980615", - "413035848007" + "569784042606215", + "13702657500" ], [ - "172621356097887", - "637822580221" - ] - ] - ], - [ - "0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6", - [ - [ - "75787223567174", - "8000000000" - ] - ] - ], - [ - "0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315", - [ - [ - "670256915967082", - "9076923076" - ] - ] - ], - [ - "0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1", - [ - [ - "213167569962724", - "54975000000" + "572415925695253", + "13702657500" ] ] ], [ - "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45", + "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8", [ [ - "147423809634512", - "309692805971" + "284294660466475", + "32606569800" ], [ - "829914755106014", - "216642349742" + "644738977704474", + "427917192" ] ] ], [ - "0x4d26976EC64f11ce10325297363862669fCaAaD5", + "0x41954b53cFB5e4292223720cB3577d3ed885D4f7", [ [ - "232161195486445", - "95356406608" + "96865545670304", + "150940785067" ] ] ], [ - "0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E", + "0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54", [ [ - "220231823417551", - "8388831222" + "230525695001648", + "46558365900" ] ] ], [ - "0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59", + "0x41BF3C5167494cbCa4C08122237C1620A78267Ab", [ [ - "632628975546639", - "9910714625" + "67474986688534", + "125375746500" ], [ - "635426328011968", - "6512126913" + "624643963734953", + "14701274232" ], [ - "767307720698184", - "2572274214" - ] - ] - ], - [ - "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", - [ + "630547945246894", + "2249157051" + ], [ - "31587707407402", - "1433039440" + "630888770251188", + "4637283207" ], [ - "680815156134799", - "3527890346" + "631053204527095", + "1713785306" ], [ - "811172285844826", - "7130903829" - ] - ] - ], - [ - "0x4E2572d9161Fc58743A4622046Ca30a1fB538670", - [ + "631567031582009", + "2612709957" + ], [ - "185541048150117", - "45118240063" - ] - ] - ], - [ - "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a", - [ + "631709202386668", + "1277169126" + ], [ - "167695362380301", - "28977789728" + "631801066266314", + "3476565097" ], [ - "171893729223786", - "47575900440" + "631804542831411", + "5257772247" ], [ - "189385728874825", - "1355785855" + "631812869882326", + "7418551539" ], [ - "244974269772648", - "42559348679" + "632715023362792", + "17060602162" ], [ - "341968317849767", - "21768707480" - ] - ] - ], - [ - "0x4e6DA2D137281CaDa5E82372849CbA8D65fC88C7", - [ + "632910879705212", + "9755905834" + ], [ - "819841240087247", - "2404456000000" + "634018729724195", + "3815159692" ], [ - "825748187827247", - "10000000" - ] - ] - ], - [ - "0x4E7837928eD3E7AccF715da1aE86c0A0f5280DC0", - [ + "634022544883887", + "4493860181" + ], [ - "818887472087247", - "953768000000" + "634166749613035", + "4202744958" ], [ - "822245696087247", - "1681687000000" - ] - ] - ], - [ - "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79", - [ + "634170952357993", + "6931782754" + ], [ - "70430142099789", - "21671151028" + "634194611311476", + "2472437836" ], [ - "141461024306948", - "25160811724" + "634421333694120", + "6913927217" ], [ - "181615502967276", - "256079218906" + "634752629850619", + "1490458288" ], [ - "182111406992128", - "540739337424" + "634773085341398", + "8523970000" ], [ - "190604505005626", - "148971205022" + "635868338517102", + "3485021203" ], [ - "218398796232609", - "371633895678" + "636068032409490", + "221549064473" ], [ - "356006487964429", - "1968851124565" + "641729133359289", + "8198117831" ], [ - "458578467162882", - "358800000000" + "643744592455058", + "7303537619" ], [ - "562925665802308", - "496100000000" + "644282393261405", + "7914873408" ], [ - "642621542329649", - "422340000000" - ] - ] - ], - [ - "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8", - [ + "647553646266733", + "1483300105" + ], [ - "152096973053240", - "38570577566" + "681835742516223", + "494751015" ], [ - "168308503749870", - "17838668722" + "682505845652037", + "1132140582" ], [ - "201024333624707", - "39603521290" - ] - ] - ], - [ - "0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9", - [ + "706035819459340", + "98080531002" + ], [ - "595305161120334", - "32982900000" + "741718035195957", + "162218835" + ], + [ + "860392088596291", + "56073594" ] ] ], [ - "0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b", + "0x41e2965406330A130e61B39d867c91fa86aA3bB8", [ [ - "595129885790334", - "12195297500" + "638304410283199", + "57972833670" ] ] ], [ - "0x4fE52118aeF6CE3916a27310019af44bbc64cc31", + "0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80", [ [ - "668527480798265", - "11407679058" + "342977163712331", + "63975413862" ] ] ], [ - "0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869", + "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf", [ [ - "888282326308800", - "20896050000" + "861104480251463", + "324510990839" ], [ - "911830101743081", - "61984567762" + "870558058147864", + "49189108815" + ], + [ + "887051135343310", + "60164823097" + ], + [ + "887243147406769", + "46252901321" ] ] ], [ - "0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6", + "0x4254e393674B85688414a2baB8C064FF96a408F1", [ [ - "335865006920670", - "298975120881" + "79244849356805", + "51965469308" + ], + [ + "143749224578097", + "195601904457" ] ] ], [ - "0x5004Be84E3C40fAf175218a50779b333B7c84276", + "0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7", [ [ - "106977570072731", - "28997073991" - ], - [ - "221600570194728", - "78967589731" + "443860431104984", + "23385195001" ] ] ], [ - "0x507165FF0417126930D7F79163961DE8Ff19c8b8", + "0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31", [ [ - "299720079337431", - "61879832343" - ], - [ - "601480769346490", - "59538073434" + "179882609606308", + "176238775506" ] ] ], [ - "0x5084949C8f7bf350c646796B242010919f70898E", + "0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569", [ [ - "310785629091202", - "11710566911" + "76402185409195", + "22516244343" ] ] ], [ - "0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91", + "0x43816d942FA5977425D2aF2a4Fc5Adef907dE010", [ [ - "355452879506659", - "183159970434" + "744283423047316", + "5598000000" ] ] ], [ - "0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE", + "0x4384f7916e165F0d24Ab3935965492229dfd50ea", [ [ - "20300839138393", - "7813058830" - ], - [ - "56088817072755", - "1373181360" - ], - [ - "75850623491707", - "1000000000" - ], - [ - "190753476210648", - "20871314978" + "649143417557047", + "5043054" ] ] ], [ - "0x51b2Adf97650A8D732380f2D04f5922D740122E3", + "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7", [ [ - "429986874393417", - "2598292" + "190560408853579", + "17822553583" + ], + [ + "385200050200822", + "12787260456" ] ] ], [ - "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", [ [ - "78582810315624", - "57126564" + "420829723023", + "12564061345" ], [ - "741720392463454", - "1213327771" + "4942141056624", + "1129385753" ], [ - "741724318106214", - "903473746" + "4955774616406", + "85802365" ], [ - "768563220420978", - "624282480" + "28365015360976", + "1000000000" ], [ - "848290002730558", - "29448441435" + "28366015360976", + "1000000000" ], [ - "866984767069036", - "39504417438" - ] - ] - ], - [ - "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", - [ - [ - "4955860418771", - "1" + "28367015360976", + "1000000000" ], [ - "31614934747613", - "1" - ] - ] - ], - [ - "0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04", - [ + "28396822783467", + "2180869530" + ], [ - "160580454568520", - "48526305109" + "28399003652997", + "19090914955" ], [ - "236912893424045", - "96525595990" + "28436831873163", + "1109129488" ], [ - "265652667275489", - "38978848813" + "28437941002651", + "1206768540" ], [ - "265744121929071", - "75907148840" - ] - ] - ], - [ - "0x52c9A7E7D265A09Db125b7369BC7487c589a7604", - [ + "28439199913335", + "896325564" + ], [ - "78590049172294", - "25000000000" + "28456831873163", + "1000000000" ], [ - "78640049172294", - "8481454530" + "28457831873163", + "1000000000" ], [ - "189369530533492", - "16198341333" + "28476232963741", + "1000000000" ], [ - "661983733769654", - "15472843550" - ] - ] - ], - [ - "0x52d3aBa582A24eeB9c1210D83EC312487815f405", - [ + "28477232963741", + "1000000000" + ], [ - "28363579478364", - "1435882612" + "28861157837851", + "7671502446" ], [ - "28389816079096", - "1342441520" + "31620980803307", + "25104421" ], [ - "28543316405699", - "10000000000" + "32165371093183", + "5644256527" ], [ - "31589140446842", - "1087363286" + "33155888849890", + "522412224" ], [ - "31895311480935", - "37500000000" + "33178643999918", + "8231353455" ], [ - "33113307703346", - "1640314930" + "33253286873261", + "9664144600" ], [ - "33114948018276", - "11391726558" + "76006574486488", + "12000000000" ], [ - "87847550743905", - "1470857142" + "78617270835971", + "22778336323" ], [ - "153927493640576", - "2840837091" + "93244962831954", + "3466008022725" ], [ - "218276915754234", - "4894741242" + "860235430554267", + "12817228360" ], [ - "656417747360113", - "150312800000" + "861574350043908", + "4987547355" ], [ - "659204039516835", - "162851173415" + "861688842729623", + "6378966633" ], [ - "664082221035166", - "109968508060" + "866867341387950", + "1210047061" ], [ - "680448990498012", - "15612748908" + "883474337359063", + "55249364508" ], [ - "680583466401093", - "63765566607" + "883752711206313", + "17679122867" ], [ - "764084044302811", - "8432491225" + "884692363137944", + "20022518305" ], [ - "786445115477214", - "9733082256" + "886956426850400", + "13791046304" + ] + ] + ], + [ + "0x43b43aA7Ea873e8d7650f64ca24BeC007D6CD920", + [ + [ + "119938474317595", + "231684492403" ], [ - "786465641333843", - "361176492977" + "197112848801207", + "191819355151" ], [ - "809741706356301", - "347405215111" + "197304668156358", + "347968913517" ], [ - "831150810027751", - "4961004225375" + "634297257454226", + "8643272696" ], [ - "849324103935428", - "22264686170" + "634318197219686", + "20000000000" ], [ - "860327274630651", - "64806240466" + "634389262085325", + "5903735025" ], [ - "861428991246261", - "67915110484" + "634951612625176", + "6468282284" ], [ - "861519676698002", - "54673315682" + "635130589958365", + "59209280000" ], [ - "867913521988801", - "85134432163" + "641243528586934", + "224172731213" ], [ - "869671488793566", - "270561010095" + "643113131975195", + "4579348454" ], [ - "883314902543648", - "80750086384" + "644402952187282", + "11034160064" ], [ - "884197150881189", - "82735987498" + "644427143015560", + "10697128872" ], [ - "884544061894467", - "148297525258" + "682720800766215", + "105474278261" ], [ - "884712386053732", - "206866376884" + "759973111455038", + "190360000000" + ] + ] + ], + [ + "0x4432e64624F4c64633466655de3D5132ad407343", + [ + [ + "489636306256", + "76923076" ], [ - "887289400595318", - "528457624315" + "499953138393", + "1624738693" ], [ - "889130026620811", - "150451249816" + "759972749054172", + "53680953" ], [ - "908416080789833", - "495671778827" + "761858063237895", + "53575113" ], [ - "912103223076857", - "101489503304" + "762840533673019", + "40875451574" ], [ - "915936244419798", - "556151437225" + "762881409124593", + "45392997396" ], [ - "919459324797698", - "1874301801" + "766112516278924", + "256869092" ] ] ], [ - "0x52E03B19b1919867aC9fe7704E850287FC59d215", + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", [ [ - "127528827082220", - "23" + "519636306256", + "435653558" ], [ - "273300100037798", - "21" + "28061198121035", + "18536597032" + ], + [ + "28425394212038", + "3071807226" + ], + [ + "28859391130925", + "1549632000" ] ] ], [ - "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e", + "0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545", [ [ - "647535673796014", - "8956445312" + "33151381475806", + "1044633475" ], [ - "649914737881786", - "1060562802" - ], + "643087290738377", + "1586716252" + ] + ] + ], + [ + "0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F", + [ [ - "649961535629507", - "926753565" - ], + "516363563859602", + "772670414147" + ] + ] + ], + [ + "0x448a549593020696455D9b5e25e0b0fB7a71201E", + [ [ - "650399504800190", - "50000000000" + "507995893644699", + "48468507344" ], [ - "664371001883072", - "100000000000" + "529799210870675", + "13171499195" ], [ - "664669584727359", - "100000000000" + "529862978616276", + "72277031524" ] ] ], [ - "0x52f3F126342fca99AC76D7c8f364671C9bb3fC67", + "0x4497aAbaa9C178dc1525827b1690a3b8f3647457", [ [ - "28378489699267", - "3525661709" + "141593397391504", + "168801655493" + ] + ] + ], + [ + "0x44E836EbFEF431e57442037b819B23fd29bc3B69", + [ + [ + "585452484380922", + "590804533993" ], [ - "28527337307937", - "8602703555" + "634372867374605", + "167260560" ], [ - "682719567415141", - "1233351074" + "634373034635165", + "2955966531" ], [ - "794061190682938", - "105670000000" + "634384029519721", + "5232565604" ], [ - "798295877222658", - "224080000000" + "634414601014386", + "6732679734" ], [ - "802468945375515", - "612750000000" + "634471029687631", + "1144842671" ], [ - "826629538553740", - "1000261800000" + "634946964475864", + "4648149312" ], [ - "848319451171993", - "979453120800" + "644729591640166", + "792144308" ], [ - "859905651255175", - "304954128" + "648094970693749", + "4657050598" ], [ - "859905956209303", - "308101440" + "649184311283738", + "11312622545" ], [ - "859906264310743", - "159970000" + "649761686809083", + "11781355408" ], [ - "859906424280743", - "149236172" + "652479040083562", + "3951780206" + ] + ] + ], + [ + "0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB", + [ + [ + "273550612806852", + "119672848374" + ] + ] + ], + [ + "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975", + [ + [ + "257953922346879", + "78731552385" ], [ - "859906573516915", - "309959561" + "309552368765977", + "50532033501" + ], + [ + "638949411896201", + "2100140818" + ], + [ + "643118187155825", + "5070971174" + ], + [ + "643811556089323", + "9000076282" + ], + [ + "643969388479223", + "2093638974" + ] + ] + ], + [ + "0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA", + [ + [ + "345230873758247", + "120151660091" ] ] ], [ - "0x532744D22891C4fccd5c4250D62894b3153667a7", + "0x4588a155d63CFFC23b3321b4F99E8d34128B227a", [ [ - "313016691552535", - "2278056516664" + "256610609452753", + "98878990000" ] ] ], [ - "0x533ac5848d57672399a281b65A834d88B0b2dF45", + "0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e", [ [ - "153772625926682", - "5169447509" - ], - [ - "170545003992988", - "34261572899" + "300537735718283", + "9033860883" ] ] ], [ - "0x533af56B4E0F3B278841748E48F61566E6C763D6", + "0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4", [ [ - "50403384864418", - "684928780381" - ], - [ - "55978695528887", - "98624652124" - ], - [ - "71075218222854", - "1423422740439" - ], - [ - "85965913553816", - "246473581350" - ], - [ - "141984981846493", - "5305457400" - ], - [ - "168838927569280", - "43399440000" - ], - [ - "213156661163524", - "10908799200" - ], - [ - "395319335789415", - "10622166178" - ], - [ - "396247819554380", - "6712778652" - ], - [ - "396883196948187", - "9297374844" - ], - [ - "404830849052348", - "1333600000000" + "767502219582512", + "1017640" ] ] ], [ - "0x5355C2B0e056d032a4F11E096c235e9a59F5E6af", + "0x46387563927595f5ef11952f74DcC2Ce2E871E73", [ [ - "408369482519053", - "28099958602" + "768717602283351", + "10000000" ], [ - "441066506534105", - "177042580917" + "768717622283351", + "2694500000" ] ] ], [ - "0x53bA90071fF3224AdCa6d3c7960Ad924796FED03", + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", [ [ - "767807852820920", - "5000266651" + "185586166390180", + "4605813333" ] ] ], [ - "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", + "0x46b7c8c6513818348beF33cc5638dDe99e5c9E74", [ [ - "4962909295005", - "6537846472" - ], - [ - "88686339837893", - "72107788456" - ], - [ - "145481260679750", - "17152586398" - ], - [ - "643820556165605", - "802012435" - ], - [ - "669738634595939", - "93293333333" - ], - [ - "669838634595939", - "74368755714" - ], - [ - "677121804724326", - "50583045714" - ], - [ - "711185956536817", - "1734187672072" + "408347529988115", + "11863530938" ] ] ], [ - "0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0", + "0x473812413b6A8267C62aB76095463546C1F65Dc7", [ [ - "109550819978942", - "29596581820" + "767510533790684", + "852570198" ], [ - "664192189543226", - "178812339846" + "769134631191932", + "143341492" ] ] ], [ - "0x53dC93b33d63094770A623406277f3B83a265588", + "0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb", [ [ - "31610478288170", - "3033707865" - ], - [ - "72528477491993", - "3333333333" - ], + "139632121602326", + "73702619695" + ] + ] + ], + [ + "0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88", + [ [ - "72531810825326", - "4063998521" - ], + "204109072732682", + "12907895307" + ] + ] + ], + [ + "0x47C2f43D7fE9604c0f9cd4F6D209648a4E8e0209", + [ [ - "88758447626349", - "20833333332" - ], + "130708317757427", + "358852500300" + ] + ] + ], + [ + "0x48070111032FE753d1a72198d29b1811825A264e", + [ [ - "88779280959681", - "29006615802" + "665432395338264", + "268948474274" ], [ - "680936349640484", - "151308941294" + "668538888477323", + "173806994620" ], [ - "685845897019256", - "87924018978" + "669549803608896", + "188830987043" ], [ - "699375941774655", - "57060000000" + "671213571259037", + "238241613308" ], [ - "721168129970053", - "57100000000" + "671471895749521", + "224577013993" ] ] ], [ - "0x540dC960E3e10304723bEC44D20F682258e705fC", + "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351", [ [ - "643867521442890", - "5230119599" - ], - [ - "643941720431899", - "2570523222" + "194902848948000", + "678300326761" ], [ - "643971482118197", - "7816313681" + "198400769373984", + "522905317827" ], [ - "644041635442945", - "3961074335" + "220690466846146", + "526712108816" ], [ - "644140807474986", - "474329513" + "234257642043144", + "86640000000" ], [ - "644187073578869", - "1966296013" + "237033531028709", + "216100000000" ], [ - "644509728633115", - "5911843872" + "239428834403735", + "862400000000" ], [ - "644515640476987", - "4714730337" + "245143778851644", + "240081188008" ], [ - "644520355207324", - "4844042113" + "248239496710377", + "209638678922" ], [ - "644534799459665", - "3462430426" + "248611315273600", + "643500000000" ], [ - "644565379373403", - "2378948420" + "249254815273600", + "216079626755" ], [ - "644710856021943", - "4701268223" + "252051631959570", + "859142789165" ], [ - "646582538399546", - "4154745941" + "252910774748735", + "1020962098385" ], [ - "646763711081949", - "3202908158" + "254599239282940", + "351175706375" ], [ - "648687763421959", - "19697985" + "254950414989315", + "1019094463438" ], [ - "648731709846064", - "9695779077" + "255969509452753", + "641100000000" ], [ - "664079793068081", - "2427967085" + "257492898458484", + "188408991793" ] ] ], [ - "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d", + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", [ [ - "632920635611046", - "2822717172" + "264978511678838", + "7633129939" ], [ - "634428247621337", - "5646168206" + "311308648020422", + "23542648323" ], [ - "860392157865027", - "160" + "430074784791709", + "5342881647" ], [ - "860392157865187", - "160" + "458937267162882", + "1840684464" ], [ - "860392157865347", - "160" + "477187476187107", + "1918866314" ], [ - "860392157865507", - "160" + "477189395053421", + "1926694373" ], [ - "860392157865667", - "160" + "477191321747794", + "1925324510" ], [ - "860392157865827", - "160" + "477193247072304", + "1928422141" ], [ - "860392157865987", - "160" + "480549001681271", + "1936443717" ], [ - "860392157882045", - "160" + "507993888424871", + "2005219828" ], [ - "860392157882205", - "160" + "508044362152043", + "2021544393" + ], + [ + "638287014203068", + "6170341451" + ], + [ + "640681813289989", + "2884062719" + ], + [ + "643064981952810", + "5052470551" + ], + [ + "643862412346720", + "5109096170" + ], + [ + "647209674578671", + "10179109779" ] ] ], [ - "0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235", + "0x4888c0030b743c17C89A8AF875155cf75dCfd1E1", [ [ - "156417138708810", - "394484096414" - ], + "767302481235981", + "5239462203" + ] + ] + ], + [ + "0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91", + [ [ - "181268415341323", - "347087625953" + "586109598020889", + "5946000000" ] ] ], [ - "0x54CE05973cFadd3bbACf46497C08Fc6DAe156521", + "0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0", [ [ - "150357663657575", - "3286403040" + "262708652965979", + "892676539" ] ] ], [ - "0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529", + "0x48e9E2F211371bD2462e44Af3d2d1aA610437f82", [ [ - "460662416079583", - "75343489480" + "667085979405936", + "7331625468" ] ] ], [ - "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", + "0x48F8738386D62948148D0483a68D692492e53904", [ [ - "743594952406230", - "3702219951" + "495222864611440", + "35654060356" + ] + ] + ], + [ + "0x4932Ad7cde36e2aD8724f86648dF772D0413c39E", + [ + [ + "83129576696094", + "517995825113" + ] + ] + ], + [ + "0x49444e6d0b374f33c43D5d27c53d0504241B9553", + [ + [ + "228469619062286", + "4748040000" ], [ - "744275435422955", - "7987624361" + "264656791222470", + "47931342976" ], [ - "744783236322609", - "5670211506" + "272768921777231", + "49267287724" + ], + [ + "311332190668745", + "92255508651" ] ] ], [ - "0x55179ffEFc2d49daB14BA15D25fb023408450409", + "0x4949D9db8Af71A063971a60F918e3C63C30663d7", [ [ - "28878829340297", - "26089431820" + "41140829546546", + "132215385271" ], [ - "224456428823174", - "10654918204" + "41373044931815", + "2" ], [ - "224524060683299", - "8919410803" + "170707469808407", + "15353990995" ], [ - "224532980094102", - "6674611456" + "171091120552523", + "168884964002" ], [ - "232392633744281", - "6488496940" + "260026533868529", + "42584740555" + ] + ] + ], + [ + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", + [ + [ + "33227297183704", + "653834157" ], [ - "232609461916521", - "12502396040" + "212145439369214", + "1113699755" ], [ - "249755146143756", - "4711804625" + "279405653734695", + "9627840936" ], [ - "250087971175726", - "5374122600" + "320205949886679", + "5543007376" + ] + ] + ], + [ + "0x49cE991352A44f7B50AF79b89a50db6289013633", + [ + [ + "152187983101028", + "20341364703" ], [ - "511001020567237", - "58714000000" + "152944600004612", + "25333867824" ], [ - "764092476794036", - "1122048723" + "179694459833740", + "11191996912" ], [ - "766172653433120", - "8473331791" + "189337100682911", + "32429850581" ] ] ], [ - "0x553114377d81bC47E316E238a5fE310D60a06418", + "0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9", [ [ - "164636156534057", - "23010000000" + "323336011972704", + "240943746648" ] ] ], [ - "0x5540D536A128F584A652aA2F82FF837BeE6f5790", + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", [ [ - "201770194996450", - "17567638887" + "216246125608251", + "21731842340" + ], + [ + "235278940260036", + "30572743902" + ], + [ + "262709545642518", + "234423710407" + ], + [ + "262943969352925", + "856400000000" + ], + [ + "365352062863821", + "32075676524" ] ] ], [ - "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", + "0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256", [ [ - "415410665069219", - "66211352029" + "339479065013191", + "22903272033" ] ] ], [ - "0x558C4aFf233f17Ac0d25335410fAEa0453328da8", + "0x4a52078E4706884fc899b2Df902c4D2d852BF527", [ [ - "4943270442377", - "5311147809" + "764116786012760", + "434385954" ] ] ], [ - "0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df", + "0x4A5867445A1Fa5F394268A521720D1d4E5609413", [ [ - "726112334601716", - "9764435234" + "484489924611440", + "2578100000000" ] ] ], [ - "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", + "0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521", [ [ - "83666355470554", - "70656147044" - ], - [ - "87397034064037", - "92368586236" + "640452235842856", + "37062339827" ] ] ], [ - "0x567dA563057BE92a42B0c14a765bFB1a3dD250be", + "0x4AAE8E210F814916778259840d635AA3e73A4783", [ [ - "198134260543486", - "44675770159" + "201153918156661", + "24321462040" + ], + [ + "648113005876132", + "16950613281" ] ] ], [ - "0x568092fb0aA37027a4B75CFf2492Dbe298FcE650", + "0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0", [ [ - "322441410680368", - "320032018333" + "345025969516572", + "39817721136" ] ] ], [ - "0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE", + "0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e", [ [ - "267055303304236", - "38563788377" + "636825648638295", + "1260667121" ] ] ], [ - "0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95", + "0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A", [ [ - "192545949837218", - "35159275827" + "344862778669736", + "9133462996" ] ] ], [ - "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", [ [ - "27558939982817", - "104919293460" - ], - [ - "28704611676395", - "34985445810" - ], - [ - "28810185690105", - "49205440820" - ], - [ - "60572404072549", - "16517000000" - ], - [ - "61001668124646", - "10999922556" - ], - [ - "67382995986762", - "45774437679" - ], - [ - "67445055994809", - "29930693725" - ], - [ - "86605154393710", - "164176600500" - ], - [ - "88448221835372", - "5000000000" - ], - [ - "88950623419050", - "5174776280" - ], - [ - "135558665981634", - "60968023969" - ], - [ - "135619634005603", - "176852411011" - ], - [ - "135911624943885", - "11506814800" - ], - [ - "135923131758685", - "183632739945" - ], - [ - "136106764498630", - "505635357280" - ], - [ - "140140427866343", - "15229041840" - ], - [ - "153712262346661", - "12216139000" - ], - [ - "153724478485661", - "7868244366" - ], - [ - "180499904581500", - "18614866100" - ], - [ - "180518519447600", - "94477416180" - ], - [ - "185427780283324", - "113267866793" + "164597798526063", + "2630224719" ], [ - "185590772203513", - "67134250000" + "265994631181050", + "8090890905" ], [ - "185723300642827", - "45000000000" + "378228371871768", + "1740766894" ], [ - "190994050615925", - "156533816852" + "551460280407903", + "25275274698" ], [ - "204121980627989", - "292114744200" + "562580496802308", + "5482000000" ], [ - "211474615401946", - "234173311666" + "566627766481746", + "5482750000" ], [ - "212437153941206", - "50896592466" + "568559697082546", + "5482750000" ], [ - "212488050533672", - "36881868335" + "570295590919484", + "5482750000" ], [ - "215246589705839", - "19663672112" + "571912597289484", + "5482750000" ], [ - "216146125608251", - "100000000000" - ], + "818727201955775", + "160270131472" + ] + ] + ], + [ + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", + [ [ - "218128970981269", - "85000000000" + "20308652197223", + "42992538368" ], [ - "219566038129153", - "7309432177" + "33128882677551", + "22434511734" ], [ - "223609195625824", - "23784920032" + "38733626244865", + "36237351724" ], [ - "224386670956527", - "69757866647" + "75851623491707", + "91376117280" ], [ - "224467083741378", - "56976941921" + "97312189544226", + "962543493539" ], [ - "224539654705558", - "91774095238" + "98274733037765", + "225761417993" ], [ - "229449538650748", - "40000000000" + "109521368209337", + "25432470215" ], [ - "230164010722177", - "19574398175" + "141107886434515", + "25140924405" ], [ - "230183585120352", - "79941000000" + "164659166534057", + "656550874126" ], [ - "230263526120352", - "70000000000" + "169398711509766", + "84912848439" ], [ - "232524752844281", - "84709072240" + "182744208013826", + "594997480373" ], [ - "232624752844281", - "40000000000" + "183339205494199", + "94951829258" ], [ - "235550743976314", - "89966016400" + "184161154400956", + "57484083188" ], [ - "249616082767406", - "67236052780" + "184684071457860", + "320813397796" ], [ - "249702012822236", - "33133321520" + "203463090125887", + "277362737859" ], [ - "249775146143756", - "10000000000" + "228695819280976", + "435400000000" ], [ - "249785146143756", - "235946386490" + "229389778185936", + "59760464812" ], [ - "250060921972456", - "27049203270" + "230333526120352", + "93482000000" ], [ - "250093345298326", - "16840000000" + "230572253367548", + "434600000000" ], [ - "250747526004490", - "17161170037" + "231006853367548", + "403315212327" ], [ - "258074901441630", - "7830821110" + "231410168579875", + "434000000000" ], [ - "258830805144696", - "14803898208" + "232256551893053", + "136081851228" ], [ - "264303602202615", - "9804554407" + "234465804378976", + "433000000000" ], [ - "270466945437103", - "26274622666" + "245678239246970", + "429600000000" ], [ - "300503468200478", - "34267517805" + "246405622268848", + "429000000000" ], [ - "312842343103991", - "40248448544" + "246834622268848", + "593165265392" ], [ - "322976729089818", - "26917828556" + "266623247476225", + "31843087062" ], [ - "338388026785557", - "443282416104" + "400533285433272", + "1327936414" ], [ - "376486089733614", - "3211888888" + "524402842691769", + "277260761697" ], [ - "376489301659889", - "8274303563" + "548030249075962", + "2737095195209" ], [ - "376497575963452", - "18797185439" + "574794879815863", + "470264676707" ], [ - "648990230194838", - "19899717937" + "576273196085064", + "475735746580" ], [ - "657330275690372", - "153179376309" + "577250185805214", + "352964012203" ], [ - "658709788202512", - "167217199434" + "577994078452897", + "428753685947" ], [ - "659013038876321", - "33268342087" + "578422832138844", + "621546025531" ], [ - "663001818967270", - "379699841755" + "579151783632625", + "511648078072" ], [ - "664769584727359", - "98973775726" + "599186286483471", + "300681637829" ], [ - "665151735234090", - "280660104174" + "606325525196387", + "430288154881" ], [ - "668361111992693", - "103496806590" + "611048146529128", + "294537267480" ], [ - "668504381526555", - "23099271710" + "611342683796608", + "122585177924" ], [ - "669025371837989", - "82189769281" + "622350349441157", + "423020213781" ], [ - "670213265504450", - "43650433333" + "622773369654938", + "188613792398" ], [ - "681836237267238", - "34376130558" + "622976007236649", + "605799007104" ], [ - "682519630375542", - "199937039599" + "631737544692156", + "57278437068" ], [ - "683191224341172", - "565341232663" + "632737782810716", + "166637595618" ], [ - "684408807600794", - "2150034146" + "632923458328218", + "3562084461" ], [ - "684410957634940", - "583900111083" + "633174226086802", + "118340636454" ], [ - "685282395588202", - "221013829371" + "633293616127503", + "68451648885" ], [ - "685736066448290", - "109830570966" + "633362067776388", + "696785610" ], [ - "685933821038234", - "67873369400" + "634050042239925", + "2029010620" ], [ - "686001694407634", - "178432547398" + "634052071250545", + "1566534038" ], [ - "686180126955032", - "4714572065" + "634053637784583", + "732611220" ], [ - "699968832611949", - "68045299671" + "634200736479427", + "4790574316" ], [ - "700043865765889", - "1122080009786" + "634205527053743", + "2600593701" ], [ - "708854489473588", - "2331467063229" + "634433893789543", + "4541616170" ], [ - "720550874525684", - "144562488635" + "634444626397101", + "3241881404" ], [ - "721280717882254", - "114544305063" + "634447868278505", + "3785283994" ], [ - "741445158783872", - "271967604583" + "636303124680973", + "5741625032" ], [ - "741721605791225", - "533078887" + "638269655222213", + "2789581992" ], [ - "742050186314922", - "151582713093" + "639434921077105", + "197428820134" ], [ - "742267259580163", - "224105067098" + "639687831454420", + "1841462496" ], [ - "759864406377749", - "45278692" + "639714195158937", + "1002910636" ], [ - "759972377216198", - "1594793" + "640275015971967", + "936457910" ], [ - "759972486436407", - "34864069" + "641492720431748", + "6670046454" ], [ - "759972521300476", - "24690921" + "643047432848730", + "2168510045" ], [ - "759973028640596", - "39305197" + "643899647055493", + "6808576094" ], [ - "760196673266902", - "98401627464" + "643945769210064", + "6039028984" ], [ - "762926802121989", - "114425762" + "644368102368333", + "5786930514" ], [ - "763793608493475", - "9689035799" + "647162978371458", + "3462235904" ], [ - "764066849504423", - "17132148668" + "648721663311036", + "508035028" ], [ - "764298360543842", - "32902204320" + "680142146935616", + "114648436337" ], [ - "766113678648016", - "58974785104" + "741722138870112", + "1341090085" ], [ - "767132401168095", - "168190067886" + "744371763079127", + "20897052664" ], [ - "828862490763473", - "1052264342541" + "744392660131791", + "12851063713" ], [ - "849357802416126", - "207036916985" + "782518705963072", + "9770439640" ], [ - "868148430520173", - "107099547303" + "810089111571412", + "50684223342" ] ] ], [ - "0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF", + "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", [ [ - "343678737441661", - "114019585" + "319932769634923", + "69289110000" ] ] ], [ - "0x57068722592FeD292Aa9fdfA186A156D00A87a59", + "0x4C3C27eB0C01088348132d6139F6d51FC592dDBD", [ [ - "92388384975723", - "113668344638" + "310797339658113", + "5564385258" ] ] ], [ - "0x5775b780006cBaC39aA84432BC6157E11BC5f672", + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", [ [ - "325931340958674", - "25332961300" + "212083814524749", + "53819165244" ] ] ], [ - "0x579De8E7dA10b45b43a24aC21dA8b1a3a9452D64", + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", [ [ - "647334889222283", - "22379191354" - ] - ] - ], - [ - "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", - [ + "4905170401522", + "26072576416" + ], [ - "4839056178271", - "66114223251" + "106839237525292", + "4821011987" ], [ - "4969447141477", - "709218727" + "106846924633216", + "1424576250" ], [ - "726122099036950", - "27741210361" - ] - ] - ], - [ - "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", - [ + "127568340031921", + "929795062302" + ], [ - "786871206108027", - "177450395" - ] - ] - ], - [ - "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00", - [ + "128498135094223", + "929805062302" + ], [ - "634754120308907", - "3618830978" + "129427940156525", + "10000000" ], [ - "634821984317931", - "7385494623" - ] - ] - ], - [ - "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", - [ + "190477983853123", + "31429058425" + ], [ - "33164487220396", - "11277021864" + "278886678120078", + "16930293743" ], [ - "87853421681484", - "90152601115" + "315294748069199", + "4230684000" ], [ - "191484262155819", - "9788460106" + "315298978753199", + "38949316540" ], [ - "193305911888160", - "42398880624" + "672771638984332", + "58636813154" ], [ - "209627435518367", - "42239183866" + "675003539778787", + "83138632015" ], [ - "209767630496078", - "138280774553" + "679651587058721", + "17303169600" ], [ - "217337407064629", - "26811333934" + "742546489600908", + "12755718599" ], [ - "659581106622223", - "150000000000" + "744706441326176", + "26346793433" ] ] ], [ - "0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba", + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", [ [ - "342111695751196", - "448608504781" - ] - ] - ], - [ - "0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746", - [ + "148125503301315", + "613663117381" + ], [ - "195644797961898", - "2774320296" + "148782143329299", + "676628312802" ], [ - "767317356953914", - "3894794928" + "152969933872436", + "202026433529" ], [ - "767578893549534", - "4324000000" + "157281617133575", + "136137390673" ], [ - "767848368968398", - "4516000000" + "160958961495278", + "49543800744" ], [ - "767885198281509", - "4525000000" + "166316667085303", + "492948149258" + ], + [ + "167125029052537", + "433007073267" + ], + [ + "168960920980615", + "413035848007" + ], + [ + "172621356097887", + "637822580221" ] ] ], [ - "0x58e4e9D30Da309624c785069A99709b16276B196", + "0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6", [ [ - "595179326638334", - "9510069500" + "75787223567174", + "8000000000" ] ] ], [ - "0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9", + "0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315", [ [ - "495326332814565", - "12999411038" + "670256915967082", + "9076923076" ] ] ], [ - "0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509", + "0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1", [ [ - "327321196340864", - "12175651681" + "213167569962724", + "54975000000" ] ] ], [ - "0x59229eFD5206968301ed67D5b08E1C39e0179897", + "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45", [ [ - "342943443750453", - "4560091570" + "147423809634512", + "309692805971" ], [ - "860664797310295", - "146130245088" + "829914755106014", + "216642349742" ] ] ], [ - "0x59b9540ee2A8b2ab527a5312Ab622582b884749B", + "0x4d26976EC64f11ce10325297363862669fCaAaD5", [ [ - "213449770801238", - "900000000" + "232161195486445", + "95356406608" ] ] ], [ - "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", + "0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E", [ [ - "268214836546577", - "98936672471" + "220231823417551", + "8388831222" ] ] ], [ - "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef", + "0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59", [ [ - "529636306256", - "3231807785977" + "632628975546639", + "9910714625" ], [ - "369554524035869", - "1824524280000" + "635426328011968", + "6512126913" ], [ - "508046383696436", - "2758540080000" + "767307720698184", + "2572274214" ] ] ], [ - "0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F", + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", [ [ - "506978128481636", - "138928506054" - ] - ] - ], - [ - "0x59dC1eaE22eEbD6CfbD144ee4b6f4048F8A59880", - [ + "31587707407402", + "1433039440" + ], [ - "267569815164874", - "20246736273" + "680815156134799", + "3527890346" + ], + [ + "811172285844826", + "7130903829" ] ] ], [ - "0x5A25455Cf1c5309FE746FD3904af00e766Eca65f", + "0x4E2572d9161Fc58743A4622046Ca30a1fB538670", [ [ - "668107032501837", - "207192309402" + "185541048150117", + "45118240063" ] ] ], [ - "0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79", + "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a", [ [ - "328103575799830", - "1472314798598" - ], - [ - "329599239087424", - "1929155008439" + "167695362380301", + "28977789728" ], [ - "341145726299533", - "435082846929" + "171893729223786", + "47575900440" ], [ - "378591197691403", - "969373424488" + "189385728874825", + "1355785855" ], [ - "392591320788074", - "1062369645874" + "244974269772648", + "42559348679" ], [ - "544017382750618", - "105536223506" + "341968317849767", + "21768707480" ] ] ], [ - "0x5A32038d9a3e6b7CffC28229bB214776bf50CE50", + "0x4e6DA2D137281CaDa5E82372849CbA8D65fC88C7", [ [ - "468838067240993", - "658300036400" + "819841240087247", + "2404456000000" + ], + [ + "825748187827247", + "10000000" ] ] ], [ - "0x5a34897A6c1607811Ae763350839720c02107682", + "0x4E7837928eD3E7AccF715da1aE86c0A0f5280DC0", [ [ - "768720422249176", - "56918125000" + "818887472087247", + "953768000000" + ], + [ + "822245696087247", + "1681687000000" ] ] ], [ - "0x5a57107A58A0447066C376b211059352B617c3BA", + "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79", [ [ - "579117588495464", - "2191004882" + "70430142099789", + "21671151028" + ], + [ + "141461024306948", + "25160811724" + ], + [ + "181615502967276", + "256079218906" + ], + [ + "182111406992128", + "540739337424" + ], + [ + "190604505005626", + "148971205022" + ], + [ + "218398796232609", + "371633895678" + ], + [ + "356006487964429", + "1968851124565" + ], + [ + "458578467162882", + "358800000000" + ], + [ + "562925665802308", + "496100000000" + ], + [ + "642621542329649", + "422340000000" ] ] ], [ - "0x5A803cD039d7c427AD01875990f76886cC574339", + "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8", [ [ - "242331279929909", - "1009627934604" + "152096973053240", + "38570577566" ], [ - "243539818135023", - "823622609198" + "168308503749870", + "17838668722" + ], + [ + "201024333624707", + "39603521290" ] ] ], [ - "0x5aB883168ab03c97239CEf348D5483FB2b57aFD9", + "0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9", [ [ - "319845777373781", - "86992261142" + "595305161120334", + "32982900000" ] ] ], [ - "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", + "0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b", [ [ - "634142881550290", - "4848909225" - ], - [ - "647192844826112", - "12287980322" - ], - [ - "647667749599650", - "29135772559" - ], - [ - "647819555574890", - "3934226800" + "595129885790334", + "12195297500" ] ] ], [ - "0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b", + "0x4fE52118aeF6CE3916a27310019af44bbc64cc31", [ [ - "575296204703363", - "831862117" + "668527480798265", + "11407679058" ] ] ], [ - "0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725", + "0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869", [ [ - "270493220059769", - "1070861106258" + "888282326308800", + "20896050000" + ], + [ + "911830101743081", + "61984567762" ] ] ], [ - "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e", + "0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6", [ [ - "87943574282599", - "14956941882" - ], - [ - "181871582186182", - "25944797737" - ], - [ - "202299298031056", - "16158945430" + "335865006920670", + "298975120881" ] ] ], [ - "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "0x5004Be84E3C40fAf175218a50779b333B7c84276", [ [ - "76018574486488", - "10087313298" - ], - [ - "84547875356697", - "12856872500" - ], - [ - "86221799135166", - "2991378811" - ], - [ - "86279752500167", - "1993398346" - ], - [ - "164284645848934", - "77355000000" - ], - [ - "203382408914965", - "35447202880" - ], - [ - "218213970981269", - "62944772965" - ], - [ - "480550938124988", - "26915995911" - ], - [ - "582542383151295", - "20467308746" - ], - [ - "653082421968959", - "214025000000" - ], - [ - "655813672711333", - "156683400000" - ], - [ - "658409543724785", - "151481732090" - ], - [ - "676839643561375", - "13229284933" - ], - [ - "680256795371953", - "59389696996" - ], - [ - "744358813888924", - "12949190203" - ], - [ - "764060109940964", - "6739563459" - ], - [ - "781933941888477", - "68619328543" - ], - [ - "786454848653590", - "10604585661" - ], - [ - "800170499585294", - "1303886596053" - ], - [ - "809008960598650", - "515797412273" - ], - [ - "859662074503513", - "96628816629" - ], - [ - "859758704934542", - "80698396938" - ], - [ - "860810927686506", - "25000733085" - ], - [ - "861600293087365", - "53711143255" - ], - [ - "883395652630032", - "78684728679" - ], - [ - "884314681255677", - "229380229313" - ], - [ - "886077394374210", - "209848058617" - ], - [ - "887111300166407", - "131847120287" - ], - [ - "902015905173218", - "295817208073" - ], - [ - "908911752569097", - "2098652407026" + "106977570072731", + "28997073991" ], [ - "912015746389452", - "50058887216" - ], + "221600570194728", + "78967589731" + ] + ] + ], + [ + "0x507165FF0417126930D7F79163961DE8Ff19c8b8", + [ [ - "916492395857023", - "451136446595" + "299720079337431", + "61879832343" ], [ - "919403195205502", - "2028637197" + "601480769346490", + "59538073434" ] ] ], [ - "0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4", + "0x5084949C8f7bf350c646796B242010919f70898E", [ [ - "561775060168943", - "48462729763" + "310785629091202", + "11710566911" ] ] ], [ - "0x5c0ed0a799c7025D3C9F10c561249A996502a62F", + "0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91", [ [ - "768471843729210", - "13425961618" - ], - [ - "768485269690828", - "55862378283" - ], - [ - "768546538365412", - "16682055566" + "355452879506659", + "183159970434" ] ] ], [ - "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", + "0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE", [ [ - "56102135956552", - "2287841173" - ], - [ - "61081969998060", - "2751729452" + "20300839138393", + "7813058830" ], [ - "648056768763062", - "3850108834" + "56088817072755", + "1373181360" ], [ - "664471001883072", - "50493335822" - ] - ] - ], - [ - "0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6", - [ + "75850623491707", + "1000000000" + ], [ - "561471319192178", - "6531451600" + "190753476210648", + "20871314978" ] ] ], [ - "0x5C6cE0d90b085f29c089D054Ba816610a5d42371", + "0x51b2Adf97650A8D732380f2D04f5922D740122E3", [ [ - "250867618379450", - "59395536292" + "429986874393417", + "2598292" ] ] ], [ - "0x5c9d09716404556646B0B4567Cb4621C18581f94", + "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", [ [ - "72555956226539", - "20000000000" - ] - ] - ], - [ - "0x5D02957cF469342084e42F9f4132403Ea4c5fE01", - [ + "78582810315624", + "57126564" + ], [ - "767507188351307", - "3345435335" + "741720392463454", + "1213327771" ], [ - "786826869494538", - "44336089227" + "741724318106214", + "903473746" + ], + [ + "768563220420978", + "624282480" + ], + [ + "848290002730558", + "29448441435" + ], + [ + "866984767069036", + "39504417438" ] ] ], [ - "0x5D177d3f4878038521936e6449C17BeCd2D10cBA", + "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", [ [ - "240908580751005", - "28063592168" + "4955860418771", + "1" + ], + [ + "31614934747613", + "1" ] ] ], [ - "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", + "0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04", [ [ - "157835643639028", - "20828898066" + "160580454568520", + "48526305109" + ], + [ + "236912893424045", + "96525595990" + ], + [ + "265652667275489", + "38978848813" + ], + [ + "265744121929071", + "75907148840" ] ] ], [ - "0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee", + "0x52c9A7E7D265A09Db125b7369BC7487c589a7604", [ [ - "199564902491196", - "22657073802" + "78590049172294", + "25000000000" + ], + [ + "78640049172294", + "8481454530" + ], + [ + "189369530533492", + "16198341333" + ], + [ + "661983733769654", + "15472843550" ] ] ], [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", [ [ - "462646168927", - "1666666666" + "28363579478364", + "1435882612" ], [ - "28368015360976", + "28389816079096", + "1342441520" + ], + [ + "28543316405699", "10000000000" ], [ - "28385711672356", - "4000000000" + "31589140446842", + "1087363286" ], [ - "28553316405699", - "56203360846" + "31895311480935", + "37500000000" ], [ - "31590227810128", - "15764212654" + "33113307703346", + "1640314930" ], [ - "31772724860478", - "43540239232" + "33114948018276", + "11391726558" ], [ - "32013293099710", - "15000000000" + "87847550743905", + "1470857142" ], [ - "33106872744841", - "6434958505" + "153927493640576", + "2840837091" ], [ - "33262951017861", - "9375000000" + "218276915754234", + "4894741242" ], [ - "33290510627174", - "565390687" + "656417747360113", + "150312800000" ], [ - "38722543672289", - "250000000" + "659204039516835", + "162851173415" ], [ - "61000878716919", - "789407727" + "664082221035166", + "109968508060" ], [ - "72536373875278", - "200000000" + "680448990498012", + "15612748908" ], [ - "75784287632794", - "2935934380" + "680583466401093", + "63765566607" ], [ - "75995951619880", - "5268032293" + "764084044302811", + "8432491225" ], [ - "118322555232226", - "5892426278" + "786445115477214", + "9733082256" ], [ - "180071240663041", - "81992697619" + "786465641333843", + "361176492977" ], [ - "217474381338301", - "1293174476" + "809741706356301", + "347405215111" ], [ - "220144194502828", - "47404123300" + "831150810027751", + "4961004225375" ], [ - "317859517384357", - "291195415400" + "849324103935428", + "22264686170" ], [ - "333622810114113", - "200755943301" + "860327274630651", + "64806240466" ], [ - "338910099578361", - "72913082044" + "861428991246261", + "67915110484" ], [ - "344618618497376", - "81000597500" + "861519676698002", + "54673315682" ], [ - "378227726508635", - "645363133" + "867913521988801", + "85134432163" ], [ - "444973868346640", - "61560768641" + "869671488793566", + "270561010095" ], [ - "477195175494445", - "29857571563" + "883314902543648", + "80750086384" ], [ - "574387565763701", - "55857695832" + "884197150881189", + "82735987498" ], [ - "575679606872092", - "38492647384" + "884544061894467", + "148297525258" ], [ - "577679606726120", - "74848126691" + "884712386053732", + "206866376884" ], [ - "626184530707078", - "90718871797" + "887289400595318", + "528457624315" ], [ - "634031481420456", - "3170719864" + "889130026620811", + "150451249816" ], [ - "634034652140320", - "1827630964" + "908416080789833", + "495671778827" ], [ - "643938854351013", - "228851828" + "912103223076857", + "101489503304" ], [ - "644373889298847", - "3084780492" + "915936244419798", + "556151437225" ], [ - "647175726076112", - "16711431033" + "919459324797698", + "1874301801" + ] + ] + ], + [ + "0x52E03B19b1919867aC9fe7704E850287FC59d215", + [ + [ + "127528827082220", + "23" ], [ - "647388734023467", - "9748779666" + "273300100037798", + "21" + ] + ] + ], + [ + "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e", + [ + [ + "647535673796014", + "8956445312" ], [ - "648110674034173", - "2331841959" + "649914737881786", + "1060562802" ], [ - "670156602457239", - "16663047211" + "649961535629507", + "926753565" ], [ - "680095721530457", - "10113856826" + "650399504800190", + "50000000000" ], [ - "706133899990342", - "2720589483246" + "664371001883072", + "100000000000" ], [ - "720495305315880", - "55569209804" + "664669584727359", + "100000000000" + ] + ] + ], + [ + "0x52f3F126342fca99AC76D7c8f364671C9bb3fC67", + [ + [ + "28378489699267", + "3525661709" ], [ - "721225229970053", - "55487912201" + "28527337307937", + "8602703555" ], [ - "721409921103392", - "4415003338706" + "682719567415141", + "1233351074" ], [ - "726480740731617", - "2047412139790" + "794061190682938", + "105670000000" ], [ - "729812277370084", - "5650444595733" + "798295877222658", + "224080000000" ], [ - "735554122237517", - "2514215964115" + "802468945375515", + "612750000000" ], [ - "741007335527824", - "48848467587" + "826629538553740", + "1000261800000" ], [ - "743270084189585", - "44269246366" + "848319451171993", + "979453120800" ], [ - "743356388661755", - "284047664" + "859905651255175", + "304954128" ], [ - "743356672709419", - "804932236" + "859905956209303", + "308101440" ], [ - "743357477641655", - "744601051" + "859906264310743", + "159970000" ], [ - "743358222242706", - "636559806" + "859906424280743", + "149236172" ], [ - "743358858802512", - "569027210" + "859906573516915", + "309959561" + ] + ] + ], + [ + "0x532744D22891C4fccd5c4250D62894b3153667a7", + [ + [ + "313016691552535", + "2278056516664" + ] + ] + ], + [ + "0x533ac5848d57672399a281b65A834d88B0b2dF45", + [ + [ + "153772625926682", + "5169447509" ], [ - "743359427829722", - "616622839" + "170545003992988", + "34261572899" + ] + ] + ], + [ + "0x533af56B4E0F3B278841748E48F61566E6C763D6", + [ + [ + "50403384864418", + "684928780381" ], [ - "743360044452561", - "590416341" + "55978695528887", + "98624652124" ], [ - "743360634868902", - "576948243" + "71075218222854", + "1423422740439" ], [ - "743361211817145", - "347174290" + "85965913553816", + "246473581350" ], [ - "743361558991435", - "112939223481" + "141984981846493", + "5305457400" ], [ - "743474498214916", - "37245408077" + "168838927569280", + "43399440000" ], [ - "743511743622993", - "27738836042" + "213156661163524", + "10908799200" ], [ - "743539482459035", - "36180207225" + "395319335789415", + "10622166178" ], [ - "743575662666260", - "9251544878" + "396247819554380", + "6712778652" ], [ - "743600698167087", - "4239282" + "396883196948187", + "9297374844" ], [ - "743630495498696", - "25004744107" + "404830849052348", + "1333600000000" + ] + ] + ], + [ + "0x5355C2B0e056d032a4F11E096c235e9a59F5E6af", + [ + [ + "408369482519053", + "28099958602" ], [ - "743655500242803", - "27838968460" + "441066506534105", + "177042580917" + ] + ] + ], + [ + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", + [ + [ + "4962909295005", + "6537846472" ], [ - "743683339211263", - "1045028130" + "88686339837893", + "72107788456" ], [ - "743715232207665", - "154091444" + "145481260679750", + "17152586398" ], [ - "743715386299109", - "356610619" + "643820556165605", + "802012435" ], [ - "743715742909728", - "792560930" + "669738634595939", + "93293333333" ], [ - "743716535470658", - "930442023" + "669838634595939", + "74368755714" ], [ - "743717465912681", - "930527887" + "677121804724326", + "50583045714" ], [ - "743718396440568", - "930718264" + "711185956536817", + "1734187672072" + ] + ] + ], + [ + "0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0", + [ + [ + "109550819978942", + "29596581820" ], [ - "743719327158832", - "900100878" + "664192189543226", + "178812339846" + ] + ] + ], + [ + "0x53dC93b33d63094770A623406277f3B83a265588", + [ + [ + "31610478288170", + "3033707865" ], [ - "743720227259710", - "886888605" + "72528477491993", + "3333333333" ], [ - "743721114148315", - "1195569000" + "72531810825326", + "4063998521" ], [ - "743722931420691", - "332343086" + "88758447626349", + "20833333332" ], [ - "743723263763777", - "983775747" + "88779280959681", + "29006615802" ], [ - "743724247539524", - "409861551" + "680936349640484", + "151308941294" ], [ - "743724657401075", - "97298663" + "685845897019256", + "87924018978" + ], + [ + "699375941774655", + "57060000000" + ], + [ + "721168129970053", + "57100000000" + ] + ] + ], + [ + "0x540dC960E3e10304723bEC44D20F682258e705fC", + [ + [ + "643867521442890", + "5230119599" ], [ - "743724754699738", - "86768693" + "643941720431899", + "2570523222" ], [ - "743724841468431", - "33509916350" + "643971482118197", + "7816313681" ], [ - "743758351384781", - "69774513803" + "644041635442945", + "3961074335" ], [ - "743828125898584", - "21981814788" + "644140807474986", + "474329513" ], [ - "743850107713372", - "43182294" + "644187073578869", + "1966296013" ], [ - "743850150895666", - "37264237" + "644509728633115", + "5911843872" ], [ - "743850188159903", - "247711" + "644515640476987", + "4714730337" ], [ - "743850188407614", - "417946" + "644520355207324", + "4844042113" ], [ - "743850188825560", - "120504819738" + "644534799459665", + "3462430426" ], [ - "743970693645298", - "178855695867" + "644565379373403", + "2378948420" ], [ - "744149549341165", - "125886081790" + "644710856021943", + "4701268223" ], [ - "744819318753537", - "98324836380" + "646582538399546", + "4154745941" ], [ - "759669831627157", - "91465441036" + "646763711081949", + "3202908158" ], [ - "759761297451604", - "12346431080" + "648687763421959", + "19697985" ], [ - "759773643882684", - "1557369578" + "648731709846064", + "9695779077" ], [ - "759775201252262", - "18264975890" - ], + "664079793068081", + "2427967085" + ] + ] + ], + [ + "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d", + [ [ - "759793466228152", - "133677" + "632920635611046", + "2822717172" ], [ - "759794285432848", - "26613224094" + "634428247621337", + "5646168206" ], [ - "759820979493945", - "70435190" + "860392157865027", + "160" ], [ - "759821049929135", - "64820367" + "860392157865187", + "160" ], [ - "759821114749502", - "315142246" + "860392157865347", + "160" ], [ - "759821772251897", - "342469548" + "860392157865507", + "160" ], [ - "759822114721445", - "22786793078" + "860392157865667", + "160" ], [ - "759844955449185", - "62362349" + "860392157865827", + "160" ], [ - "759845017811534", - "79862410" + "860392157865987", + "160" ], [ - "759845097673944", - "78350903" + "860392157882045", + "160" ], [ - "759845176024847", - "81575013" - ], + "860392157882205", + "160" + ] + ] + ], + [ + "0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235", + [ [ - "759845257599860", - "81611843" + "156417138708810", + "394484096414" ], [ - "759845339211703", - "79874694" - ], + "181268415341323", + "347087625953" + ] + ] + ], + [ + "0x54CE05973cFadd3bbACf46497C08Fc6DAe156521", + [ [ - "759845419086397", - "79925681" - ], + "150357663657575", + "3286403040" + ] + ] + ], + [ + "0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529", + [ [ - "759845499012078", - "79231634" - ], + "460662416079583", + "75343489480" + ] + ] + ], + [ + "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", + [ [ - "759845578243712", - "73291169" + "743594952406230", + "3702219951" ], [ - "759845651534881", - "61264703" + "744275435422955", + "7987624361" ], [ - "759845766640518", - "56977225" - ], + "744783236322609", + "5670211506" + ] + ] + ], + [ + "0x55179ffEFc2d49daB14BA15D25fb023408450409", + [ [ - "759845823617743", - "71386527" + "28878829340297", + "26089431820" ], [ - "759845895004270", - "75906832" + "224456428823174", + "10654918204" ], [ - "759846058683685", - "75729409" + "224524060683299", + "8919410803" ], [ - "759846134413094", - "27722926" + "224532980094102", + "6674611456" ], [ - "759846162136020", - "30197986" + "232392633744281", + "6488496940" ], [ - "759846192334006", - "158241812" + "232609461916521", + "12502396040" ], [ - "759846350575818", - "123926293" + "249755146143756", + "4711804625" ], [ - "759846474502111", - "124139589" + "250087971175726", + "5374122600" ], [ - "759846598641700", - "25193251" + "511001020567237", + "58714000000" ], [ - "759846623834951", - "25387540" + "764092476794036", + "1122048723" ], [ - "759846649222491", - "665345" - ], + "766172653433120", + "8473331791" + ] + ] + ], + [ + "0x553114377d81bC47E316E238a5fE310D60a06418", + [ [ - "759846954659102", - "631976394" - ], + "164636156534057", + "23010000000" + ] + ] + ], + [ + "0x5540D536A128F584A652aA2F82FF837BeE6f5790", + [ [ - "759847586635496", - "66958527" - ], + "201770194996450", + "17567638887" + ] + ] + ], + [ + "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", + [ [ - "759847653594023", - "44950580" - ], + "415410665069219", + "66211352029" + ] + ] + ], + [ + "0x558C4aFf233f17Ac0d25335410fAEa0453328da8", + [ [ - "759847698544603", - "46547201" - ], + "4943270442377", + "5311147809" + ] + ] + ], + [ + "0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df", + [ [ - "759847745091804", - "18839036" - ], + "726112334601716", + "9764435234" + ] + ] + ], + [ + "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", + [ [ - "759847763930840", - "270669443" + "83666355470554", + "70656147044" ], [ - "759848034600283", - "365575215" - ], + "87397034064037", + "92368586236" + ] + ] + ], + [ + "0x567dA563057BE92a42B0c14a765bFB1a3dD250be", + [ [ - "759848595655012", - "187295653" - ], + "198134260543486", + "44675770159" + ] + ] + ], + [ + "0x568092fb0aA37027a4B75CFf2492Dbe298FcE650", + [ [ - "759848782950665", - "25295452" - ], + "322441410680368", + "320032018333" + ] + ] + ], + [ + "0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE", + [ [ - "759848808246117", - "173058283" - ], + "267055303304236", + "38563788377" + ] + ] + ], + [ + "0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95", + [ [ - "759848981304400", - "63821133" - ], + "192545949837218", + "35159275827" + ] + ] + ], + [ + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", + [ [ - "759849045125533", - "25336780" + "27558939982817", + "104919293460" ], [ - "759849070462313", - "29081391" + "28704611676395", + "34985445810" ], [ - "759849099543704", - "29122172" + "28810185690105", + "49205440820" ], [ - "759849128665876", - "28706993" + "60572404072549", + "16517000000" ], [ - "759849157372869", - "13456201" + "61001668124646", + "10999922556" ], [ - "759849170829070", - "36511282" + "67382995986762", + "45774437679" ], [ - "759849207340352", - "41243780" + "67445055994809", + "29930693725" ], [ - "759849248584132", - "33852678" + "86605154393710", + "164176600500" ], [ - "759849282436810", - "33956125" + "88448221835372", + "5000000000" ], [ - "759849316392935", - "34132617" + "88950623419050", + "5174776280" ], [ - "759849350525552", - "17041223" + "135558665981634", + "60968023969" ], [ - "759849367566775", - "20273897" + "135619634005603", + "176852411011" ], [ - "759849387840672", - "9037475" + "135911624943885", + "11506814800" ], [ - "759849396878147", - "45923781" + "135923131758685", + "183632739945" ], [ - "759849442801928", - "52882809" + "136106764498630", + "505635357280" ], [ - "759849495684737", - "71491609" + "140140427866343", + "15229041840" ], [ - "759849567176346", - "39781360" + "153712262346661", + "12216139000" ], [ - "759849606957706", - "35612937" + "153724478485661", + "7868244366" ], [ - "759849642570643", - "45789959" + "180499904581500", + "18614866100" ], [ - "759849688360602", - "46291324" + "180518519447600", + "94477416180" ], [ - "759849734651926", - "46416554" + "185427780283324", + "113267866793" ], [ - "759849781068480", - "46480026" + "185590772203513", + "67134250000" ], [ - "759849827548506", - "28909947" + "185723300642827", + "45000000000" ], [ - "759849856458453", - "20566561" + "190994050615925", + "156533816852" ], [ - "759849877025014", - "20612970" + "204121980627989", + "292114744200" ], [ - "759849897637984", - "9530420" + "211474615401946", + "234173311666" ], [ - "759849923422103", - "43423401" + "212437153941206", + "50896592466" ], [ - "759849966845504", - "11714877" + "212488050533672", + "36881868335" ], [ - "759864364377919", - "13050269" + "215246589705839", + "19663672112" ], [ - "759864377428188", - "28949561" + "216146125608251", + "100000000000" ], [ - "759864451656441", - "45362892" + "218128970981269", + "85000000000" ], [ - "759864497019333", - "45386397" + "219566038129153", + "7309432177" ], [ - "759864542405730", - "44251644" + "223609195625824", + "23784920032" ], [ - "759864623518170", - "16029726" + "224386670956527", + "69757866647" ], [ - "759864639547896", - "27422448" + "224467083741378", + "56976941921" ], [ - "759864666970344", - "45324196" + "224539654705558", + "91774095238" ], [ - "759864712294540", - "45381527" + "229449538650748", + "40000000000" ], [ - "759864794252615", - "45249060" + "230164010722177", + "19574398175" ], [ - "759864839501675", - "38552197" + "230183585120352", + "79941000000" ], [ - "759864878053872", - "45325980" + "230263526120352", + "70000000000" ], [ - "759864923379852", - "45332668" + "232524752844281", + "84709072240" ], [ - "759864968712520", - "14947041" + "232624752844281", + "40000000000" ], [ - "759864983659561", - "44411176" + "235550743976314", + "89966016400" ], [ - "759865028070737", - "45841550" + "249616082767406", + "67236052780" ], [ - "759865073912287", - "37491304" + "249702012822236", + "33133321520" ], [ - "759865111403591", - "35823677" + "249775146143756", + "10000000000" ], [ - "759865189244823", - "45959807" + "249785146143756", + "235946386490" ], [ - "759865235204630", - "28621023" + "250060921972456", + "27049203270" ], [ - "759865309352063", - "54352361" + "250093345298326", + "16840000000" ], [ - "759865363704424", - "37604905" + "250747526004490", + "17161170037" ], [ - "759865401309329", - "48060122" + "258074901441630", + "7830821110" ], [ - "759865502784387", - "41998112" + "258830805144696", + "14803898208" ], [ - "759865545775991", - "43017774" + "264303602202615", + "9804554407" ], [ - "759865588793765", - "45709130" + "270466945437103", + "26274622666" ], [ - "759865634502895", - "20672897" + "300503468200478", + "34267517805" ], [ - "759865655175792", - "18088532" + "312842343103991", + "40248448544" ], [ - "759865673264324", - "176142052" + "322976729089818", + "26917828556" ], [ - "759865849406376", - "249729828" + "338388026785557", + "443282416104" ], [ - "759866099136204", - "111218297" + "376486089733614", + "3211888888" ], [ - "759866210354501", - "27934473" + "376489301659889", + "8274303563" ], [ - "759866238288974", - "27468895" + "376497575963452", + "18797185439" ], [ - "759866265757869", - "1914618989" + "648990230194838", + "19899717937" ], [ - "759868180376858", - "45603693" + "657330275690372", + "153179376309" ], [ - "759868225980551", - "45842728" + "658709788202512", + "167217199434" ], [ - "759868271823279", - "46014440" + "659013038876321", + "33268342087" ], [ - "759868317837719", - "46063229" + "663001818967270", + "379699841755" ], [ - "759868363900948", - "2621289" + "664769584727359", + "98973775726" ], [ - "759868366522237", - "53709228" + "665151735234090", + "280660104174" ], [ - "759868420231465", - "52228978" + "668361111992693", + "103496806590" ], [ - "759868472460443", - "66561157603" + "668504381526555", + "23099271710" ], [ - "759935033618046", - "45751501" + "669025371837989", + "82189769281" ], [ - "759935079369547", - "45866818" + "670213265504450", + "43650433333" ], [ - "759935171141704", - "45924323" + "681836237267238", + "34376130558" ], [ - "759935217066027", - "27091944" + "682519630375542", + "199937039599" ], [ - "759935244157971", - "47094028" + "683191224341172", + "565341232663" ], [ - "759935291251999", - "4720868852" + "684408807600794", + "2150034146" ], [ - "759940035846319", - "79415211" + "684410957634940", + "583900111083" ], [ - "759940115261530", - "104887944" + "685282395588202", + "221013829371" ], [ - "759940220149474", - "104422502" + "685736066448290", + "109830570966" ], [ - "759940324571976", - "47123207" + "685933821038234", + "67873369400" ], [ - "759940371695183", - "21522781" + "686001694407634", + "178432547398" ], [ - "759940431848469", - "26567259" + "686180126955032", + "4714572065" ], [ - "759940458415728", - "28464738" + "699968832611949", + "68045299671" ], [ - "759940486880466", - "16535232" + "700043865765889", + "1122080009786" ], [ - "759940529740783", - "23798092" + "708854489473588", + "2331467063229" ], [ - "759940553538875", - "22130816" + "720550874525684", + "144562488635" ], [ - "759940575669691", - "19923295" + "721280717882254", + "114544305063" ], [ - "759940703254106", - "96921736" + "741445158783872", + "271967604583" ], [ - "759944301288885", - "148924295" + "741721605791225", + "533078887" ], [ - "759944524831820", - "94934102" + "742050186314922", + "151582713093" ], [ - "759944631176184", - "441416" + "742267259580163", + "224105067098" ], [ - "759944876402388", - "86731197" + "759864406377749", + "45278692" ], [ - "759945236861297", - "37118" + "759972377216198", + "1594793" ], [ - "759945663978694", - "33147570" + "759972486436407", + "34864069" ], [ - "759947353926358", - "19648269869" + "759972521300476", + "24690921" ], [ - "759967315893614", - "43342636" + "759973028640596", + "39305197" ], [ - "759967359236250", - "73180835" + "760196673266902", + "98401627464" ], [ - "759968303751614", - "86480048" + "762926802121989", + "114425762" ], [ - "759968390231662", - "87319503" + "763793608493475", + "9689035799" ], [ - "759968565049433", - "57445411" + "764066849504423", + "17132148668" ], [ - "759969182444540", - "86435423" + "764298360543842", + "32902204320" ], [ - "759969313128560", - "78853009" + "766113678648016", + "58974785104" ], [ - "759969922263950", - "86993082" + "767132401168095", + "168190067886" ], [ - "759970009257032", - "87071115" + "828862490763473", + "1052264342541" ], [ - "759970096328147", - "87094141" + "849357802416126", + "207036916985" ], [ - "759970659966091", - "7037654" - ], + "868148430520173", + "107099547303" + ] + ] + ], + [ + "0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF", + [ [ - "759970895945609", - "88340633" + "343678737441661", + "114019585" + ] + ] + ], + [ + "0x57068722592FeD292Aa9fdfA186A156D00A87a59", + [ + [ + "92388384975723", + "113668344638" + ] + ] + ], + [ + "0x5775b780006cBaC39aA84432BC6157E11BC5f672", + [ + [ + "325931340958674", + "25332961300" + ] + ] + ], + [ + "0x579De8E7dA10b45b43a24aC21dA8b1a3a9452D64", + [ + [ + "647334889222283", + "22379191354" + ] + ] + ], + [ + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", + [ + [ + "4839056178271", + "66114223251" ], [ - "759971171933682", - "103831674" + "4969447141477", + "709218727" ], [ - "759971792380007", - "55918771" + "726122099036950", + "27741210361" + ] + ] + ], + [ + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", + [ + [ + "786871206108027", + "177450395" + ] + ] + ], + [ + "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00", + [ + [ + "634754120308907", + "3618830978" ], [ - "759971848298778", - "51663688" + "634821984317931", + "7385494623" + ] + ] + ], + [ + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", + [ + [ + "33164487220396", + "11277021864" ], [ - "759971899962466", - "51820149" + "87853421681484", + "90152601115" ], [ - "759971951782615", - "53263163" + "191484262155819", + "9788460106" ], [ - "759972005045778", - "46273362" + "193305911888160", + "42398880624" ], [ - "759972051319140", - "11764053" + "209627435518367", + "42239183866" ], [ - "759972063083193", - "44521152" + "209767630496078", + "138280774553" ], [ - "759972107604345", - "54315334" + "217337407064629", + "26811333934" ], [ - "759972270510579", - "52771216" + "659581106622223", + "150000000000" + ] + ] + ], + [ + "0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba", + [ + [ + "342111695751196", + "448608504781" + ] + ] + ], + [ + "0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746", + [ + [ + "195644797961898", + "2774320296" ], [ - "759972378810991", - "53615733" + "767317356953914", + "3894794928" ], [ - "759972432426724", - "54009683" + "767578893549534", + "4324000000" ], [ - "759972545991397", - "40392605" + "767848368968398", + "4516000000" ], [ - "759972586384002", - "40570272" + "767885198281509", + "4525000000" + ] + ] + ], + [ + "0x58e4e9D30Da309624c785069A99709b16276B196", + [ + [ + "595179326638334", + "9510069500" + ] + ] + ], + [ + "0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9", + [ + [ + "495326332814565", + "12999411038" + ] + ] + ], + [ + "0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509", + [ + [ + "327321196340864", + "12175651681" + ] + ] + ], + [ + "0x59229eFD5206968301ed67D5b08E1C39e0179897", + [ + [ + "342943443750453", + "4560091570" ], [ - "759972626954274", - "29991995" + "860664797310295", + "146130245088" + ] + ] + ], + [ + "0x59b9540ee2A8b2ab527a5312Ab622582b884749B", + [ + [ + "213449770801238", + "900000000" + ] + ] + ], + [ + "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", + [ + [ + "268214836546577", + "98936672471" + ] + ] + ], + [ + "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef", + [ + [ + "529636306256", + "3231807785977" ], [ - "759972656946269", - "27715408" + "369554524035869", + "1824524280000" ], [ - "759972684661677", - "10745158" + "508046383696436", + "2758540080000" + ] + ] + ], + [ + "0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F", + [ + [ + "506978128481636", + "138928506054" + ] + ] + ], + [ + "0x59dC1eaE22eEbD6CfbD144ee4b6f4048F8A59880", + [ + [ + "267569815164874", + "20246736273" + ] + ] + ], + [ + "0x5A25455Cf1c5309FE746FD3904af00e766Eca65f", + [ + [ + "668107032501837", + "207192309402" + ] + ] + ], + [ + "0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79", + [ + [ + "328103575799830", + "1472314798598" ], [ - "759972695406835", - "53647337" + "329599239087424", + "1929155008439" ], [ - "759973067945793", - "43509245" + "341145726299533", + "435082846929" ], [ - "760353358762258", - "10893874" + "378591197691403", + "969373424488" ], [ - "760353369656132", - "992291" + "392591320788074", + "1062369645874" ], [ - "760353370648423", - "136316" - ], + "544017382750618", + "105536223506" + ] + ] + ], + [ + "0x5A32038d9a3e6b7CffC28229bB214776bf50CE50", + [ [ - "760353370784739", - "147677" - ], + "468838067240993", + "658300036400" + ] + ] + ], + [ + "0x5a34897A6c1607811Ae763350839720c02107682", + [ [ - "760353371573213", - "659890" - ], + "768720422249176", + "56918125000" + ] + ] + ], + [ + "0x5a57107A58A0447066C376b211059352B617c3BA", + [ [ - "760353372233103", - "46092807" - ], + "579117588495464", + "2191004882" + ] + ] + ], + [ + "0x5A803cD039d7c427AD01875990f76886cC574339", + [ [ - "760354201137939", - "3218014" + "242331279929909", + "1009627934604" ], [ - "760354238838872", - "3273321614" - ], + "243539818135023", + "823622609198" + ] + ] + ], + [ + "0x5aB883168ab03c97239CEf348D5483FB2b57aFD9", + [ [ - "760357963287583", - "52520804" - ], + "319845777373781", + "86992261142" + ] + ] + ], + [ + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", + [ [ - "760358123735957", - "112541922486" + "634142881550290", + "4848909225" ], [ - "760472183068657", - "71399999953" + "647192844826112", + "12287980322" ], [ - "760765586953427", - "195667368889" + "647667749599650", + "29135772559" ], [ - "760961254322316", - "846285958415" - ], + "647819555574890", + "3934226800" + ] + ] + ], + [ + "0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b", + [ [ - "761807542325030", - "712321671" - ], + "575296204703363", + "831862117" + ] + ] + ], + [ + "0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725", + [ [ - "761808255104338", - "10685317968" - ], + "270493220059769", + "1070861106258" + ] + ] + ], + [ + "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e", + [ [ - "761818941407193", - "38669865140" + "87943574282599", + "14956941882" ], [ - "761858011206868", - "52031027" + "181871582186182", + "25944797737" ], [ - "761858211139284", - "53537634" - ], + "202299298031056", + "16158945430" + ] + ] + ], + [ + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + [ [ - "761858291968910", - "1954482199" + "76018574486488", + "10087313298" ], [ - "761860307483525", - "798157403" + "84547875356697", + "12856872500" ], [ - "762237672060652", - "57392002182" + "86221799135166", + "2991378811" ], [ - "762295918132248", - "68617976" + "86279752500167", + "1993398346" ], [ - "762295986750224", - "181183510038" + "164284645848934", + "77355000000" ], [ - "762477170260262", - "181104817321" + "203382408914965", + "35447202880" ], [ - "762658275077583", - "181134595436" + "218213970981269", + "62944772965" ], [ - "762928154263486", - "12718343972" + "480550938124988", + "26915995911" ], [ - "762941373378458", - "61742453" + "582542383151295", + "20467308746" ], [ - "762941584284511", - "53571451" + "653082421968959", + "214025000000" ], [ - "762941637855962", - "53583667" + "655813672711333", + "156683400000" ], [ - "762941691439629", - "503128696018" + "658409543724785", + "151481732090" ], [ - "763444820135647", - "9452272123" + "676839643561375", + "13229284933" ], [ - "763454275602361", - "24685659026" + "680256795371953", + "59389696996" ], [ - "763478961261387", - "50245820668" + "744358813888924", + "12949190203" ], [ - "763529207082055", - "45323986837" + "764060109940964", + "6739563459" ], [ - "763574531068892", - "38976282600" + "781933941888477", + "68619328543" ], [ - "763877196713494", - "54224527" + "786454848653590", + "10604585661" ], [ - "763877250938021", - "54871543" + "800170499585294", + "1303886596053" ], [ - "763877347112986", - "53640521" + "809008960598650", + "515797412273" ], [ - "763879425886186", - "18918512681" + "859662074503513", + "96628816629" ], [ - "763899542751244", - "4287074277" + "859758704934542", + "80698396938" ], [ - "763904856308950", - "91042132" + "860810927686506", + "25000733085" ], [ - "763904947351082", - "3672111531" + "861600293087365", + "53711143255" ], [ - "763908632298791", - "1924103043" + "883395652630032", + "78684728679" ], [ - "763910715862653", - "4104368630" + "884314681255677", + "229380229313" ], [ - "763938664793385", - "889781905" + "886077394374210", + "209848058617" ], [ - "763975977681622", - "85746574" + "887111300166407", + "131847120287" ], [ - "763976127391221", - "54879926" + "902015905173218", + "295817208073" ], [ - "763976238932410", - "67220754" + "908911752569097", + "2098652407026" ], [ - "763978572723857", - "2432585925" + "912015746389452", + "50058887216" ], [ - "763983475557042", - "2433575022" + "916492395857023", + "451136446595" ], [ - "763985961279749", - "3362361779" - ], + "919403195205502", + "2028637197" + ] + ] + ], + [ + "0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4", + [ [ - "763989323641528", - "66961666112" - ], + "561775060168943", + "48462729763" + ] + ] + ], + [ + "0x5c0ed0a799c7025D3C9F10c561249A996502a62F", + [ [ - "764117220398714", - "5082059700" + "768471843729210", + "13425961618" ], [ - "764448523798789", - "9214910" + "768485269690828", + "55862378283" ], [ - "764448533013699", - "3175483736" - ], + "768546538365412", + "16682055566" + ] + ] + ], + [ + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", + [ [ - "764453314028098", - "886719471" + "56102135956552", + "2287841173" ], [ - "766181126764911", - "110330114890" + "61081969998060", + "2751729452" ], [ - "766291456879801", - "143444348214" + "648056768763062", + "3850108834" ], [ - "767321251748842", - "180967833670" - ], + "664471001883072", + "50493335822" + ] + ] + ], + [ + "0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6", + [ [ - "767824420446983", - "1158445599" - ], + "561471319192178", + "6531451600" + ] + ] + ], + [ + "0x5C6cE0d90b085f29c089D054Ba816610a5d42371", + [ [ - "767978192014986", - "1606680000" - ], + "250867618379450", + "59395536292" + ] + ] + ], + [ + "0x5c9d09716404556646B0B4567Cb4621C18581f94", + [ [ - "768072180047322", - "2519675802" - ], + "72555956226539", + "20000000000" + ] + ] + ], + [ + "0x5D177d3f4878038521936e6449C17BeCd2D10cBA", + [ [ - "790662167913055", - "60917382823" - ], + "240908580751005", + "28063592168" + ] + ] + ], + [ + "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", + [ [ - "792657494145217", - "11153713894" - ], + "157835643639028", + "20828898066" + ] + ] + ], + [ + "0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee", + [ [ - "845186146706783", - "62659298764" + "199564902491196", + "22657073802" ] ] ], @@ -16592,15 +16628,6 @@ ] ] ], - [ - "0x61e193e514DE408F57A648a641d9fcD412CdeD82", - [ - [ - "316297504741935", - "1134976125606" - ] - ] - ], [ "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", [ @@ -16803,19 +16830,6 @@ ] ] ], - [ - "0x647bC16DCC2A3092A59a6b9F7944928d94301042", - [ - [ - "234363994367301", - "101810011675" - ], - [ - "595338144020334", - "47102200000" - ] - ] - ], [ "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", [ @@ -30417,15 +30431,6 @@ ] ] ], - [ - "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", - [ - [ - "650020393573072", - "1098667202" - ] - ] - ], [ "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", [ @@ -31948,27 +31953,6 @@ ] ] ], - [ - "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", - [ - [ - "644156421132344", - "3789921580" - ], - [ - "644278837940540", - "631861553" - ], - [ - "648277210832933", - "20187647" - ], - [ - "648277231020580", - "5001904811" - ] - ] - ], [ "0xd16C24e9CCDdcD7630Dd59856791253F789b1640", [ @@ -33634,15 +33618,6 @@ ] ] ], - [ - "0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f", - [ - [ - "768418957212524", - "52886516686" - ] - ] - ], [ "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", [ @@ -35056,35 +35031,6 @@ ] ] ], - [ - "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc", - [ - [ - "562785223802308", - "31631000000" - ], - [ - "564739070155208", - "31631250000" - ], - [ - "566121962403477", - "31631250000" - ], - [ - "569039352660815", - "31631250000" - ], - [ - "570064713013715", - "31631250000" - ], - [ - "572117326695253", - "31631250000" - ] - ] - ], [ "0xE48436022460c33e32FC98391CD6442d55CD1c69", [ @@ -37512,27 +37458,6 @@ ] ] ], - [ - "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef", - [ - [ - "76202249214022", - "8000000000" - ], - [ - "644415322342082", - "6773000000" - ], - [ - "657971448171764", - "15036330875" - ], - [ - "740648921884436", - "39104687507" - ] - ] - ], [ "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", [ diff --git a/scripts/beanstalkShipments/data/contractAccountDistributorInit.json b/scripts/beanstalkShipments/data/contractAccountDistributorInit.json index d3b768c2..f2bddae9 100644 --- a/scripts/beanstalkShipments/data/contractAccountDistributorInit.json +++ b/scripts/beanstalkShipments/data/contractAccountDistributorInit.json @@ -7,7 +7,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x0245934a930544c7046069968eb4339b03addfcf", @@ -17,7 +17,27 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x04dc1bdcb450ea6734f5001b9cecb0cd09690f4f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "84666648086", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x0519064e3216cf6d6643cc65db1c39c20abe50e0", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "875658037", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x08e0f0de1e81051826464043e7ae513457b27a86", @@ -26,12 +46,18 @@ "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": [ - "648110674034173" - ], - "plotEnds": [ - "2331841959" - ] + "plotIds": ["648110674034173"], + "plotAmounts": ["2331841959"] + }, + { + "address": "0x0f9548165c4960624debb7e38b504e9fd524d6af", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["1002"], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", @@ -41,17 +67,27 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { - "address": "0x1f906ab7bd49059d29cac759bc84f9008dbf4112", + "address": "0x19dde5f247155293fb8c905d4a400021c12fb6f0", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "16660261", + "siloPaybackTokensOwed": "170175680", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x19dfdc194bb5cf599af78b1967dbb3783c590720", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["5000"], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", @@ -61,7 +97,27 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x224e69025a2f705c8f31efb6694398f8fd09ac5c", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": ["767578297685072"], + "plotAmounts": ["595189970"] + }, + { + "address": "0x234831d4cff3b7027e0424e23f019657005635e1", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "389763280", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["44"], + "plotIds": ["767502220600152"], + "plotAmounts": ["229602422"] }, { "address": "0x251fae8f687545bdd462ba4fcdd7581051740463", @@ -93,7 +149,7 @@ "790662167913055", "845186146706783" ], - "plotEnds": [ + "plotAmounts": [ "10000000000", "250000000", "6434958505", @@ -117,6 +173,26 @@ "62659298764" ] }, + { + "address": "0x25f030d68e56f831011c8821913ced6248dd0676", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["618"], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x2a40aaf3e076187b67ccce82e20da5ce27caa2a7", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "235604312", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, { "address": "0x2bf9b1b8cc4e6864660708498fb004e594efc0b8", "whitelisted": true, @@ -125,7 +201,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", @@ -135,7 +211,17 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x2d0ddb67b7d551afa7c8fa4d31f86da9cc947450", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": ["401401284712966"], + "plotAmounts": ["133555430770"] }, { "address": "0x2e4145a204598534ea12b772853c08e736248e7b", @@ -145,7 +231,17 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x2f65904d227c3d7e4bbbb7ea10cfc36cd2522405", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "604108560", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x305b0ecf72634825f7231058444c65d885e1f327", @@ -155,7 +251,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x33ee1fa9ed670001d1740419192142931e088e79", @@ -165,21 +261,37 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x36def8a94e727a0ff7b01d2f50780f0a28fb74b6", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": [ - "3458512" - ], - "fertilizerAmounts": [ - "130" - ], + "fertilizerIds": ["3458512"], + "fertilizerAmounts": ["130"], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x3800645f556ee583e20d6491c3a60e9c32744376", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "19806759068", + "fertilizerIds": ["3015555"], + "fertilizerAmounts": ["997"], + "plotIds": ["190509412911548"], + "plotAmounts": ["44590358778"] + }, + { + "address": "0x3cc6cc687870c972127e073e05b956a1ee270164", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", @@ -189,21 +301,17 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x4088e870e785320413288c605fd1bd6bd9d5bdae", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": [ - "3495000" - ], - "fertilizerAmounts": [ - "964" - ], + "fertilizerIds": ["3495000"], + "fertilizerAmounts": ["964"], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x40ca67ba095c038b711ad37bbebad8a586ae6f38", @@ -213,43 +321,217 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { - "address": "0x44db0002349036164dd46a04327201eb7698a53e", + "address": "0x41dd131e460e18befd262cf4fe2e2b2f43f6fb7b", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "3597838114", - "fertilizerIds": [ - "6000000" - ], - "fertilizerAmounts": [ - "444" - ], + "siloPaybackTokensOwed": "671413640603", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [ - "643938854351013", - "644373889298847", - "768072180047322" + "86790953888750", + "207234905273707", + "209057370939437", + "207270328594324", + "200625410465815", + "208172233828826", + "209957591885080", + "203337173447397", + "209905911270631", + "212591835915023", + "213229524257532", + "213658788094189", + "214949047240394", + "213383652493093", + "213336723478778", + "215084432940577", + "215439620132931", + "215618163087336", + "215707243791622", + "215528955291876", + "217010587764381", + "217563869893679", + "221813776173855", + "233377524301320", + "238323426120979", + "238513085414760", + "239248004001388", + "237867225757655", + "240291234403735", + "239294889973551", + "240589084672177", + "247641838339634", + "241109044343173", + "411709178648065", + "411722784968430", + "415230639081557", + "415397117069219", + "415476876421248", + "415247549081557", + "411756604968430", + "409557925200195", + "415264459081557", + "415338127991557", + "415383569069219", + "415566014166143", + "415611520152852", + "415652994874892", + "415327969991557", + "415580739743481", + "415685091477562", + "415552624743282", + "415624898959477", + "415714727696875", + "411664283436334", + "415314425991557", + "415701134575353", + "415344899991557", + "415281374081557", + "415669044911127", + "415638279292790", + "428524210780265", + "415598138934527", + "575626349616280", + "573818581461780", + "741131517296797", + "767989215426960", + "790591093043508", + "771127544359367", + "869175887842680", + "868345234814461", + "900352767003453", + "869256219461070", + "912339955462822", + "917463394063277" ], - "plotEnds": [ - "228851828", - "3084780492", - "2519675802" + "plotAmounts": [ + "38576992385", + "17459074945", + "19654542435", + "49984112432", + "27121737219", + "26535963154", + "193338988216", + "44485730835", + "51680614449", + "94239272075", + "56443162240", + "46596908794", + "135385700183", + "46820732322", + "46929014315", + "135094592523", + "89335158945", + "89080704286", + "88953884657", + "89207795460", + "46290484227", + "55156826488", + "37911640587", + "80126513749", + "141765636262", + "141406044017", + "46885972163", + "94970341987", + "27327225251", + "24269363626", + "187694536015", + "101040572048", + "186820539992", + "13606320365", + "33820000000", + "16910000000", + "13548000000", + "13564000000", + "16910000000", + "33820000000", + "13862188950", + "16915000000", + "6772000000", + "13548000000", + "14725577338", + "13378806625", + "16050036235", + "10158000000", + "17399191046", + "16043097791", + "13389422861", + "13380333313", + "13370532569", + "13677512381", + "13544000000", + "13593121522", + "16930000000", + "16915000000", + "16046566435", + "14715582102", + "13268338278", + "13381218325", + "53257255812", + "41982081237", + "95195568422", + "14606754787", + "71074869547", + "12764830824", + "80331618390", + "178880088846", + "187169856894", + "87734515234", + "95736000000", + "359610000000" ] }, + { + "address": "0x44db0002349036164dd46a04327201eb7698a53e", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3597838114", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["444"], + "plotIds": ["643938854351013", "644373889298847", "768072180047322"], + "plotAmounts": ["228851828", "3084780492", "2519675802"] + }, + { + "address": "0x4733a76e10819ff1fa603e52621e73df2ce5c30a", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "17", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x47b2efa18736c6c211505aefd321bec3ac3e8779", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": ["400534613369686"], + "plotAmounts": ["132789821695"] + }, { "address": "0x49072cd3bf4153da87d5eb30719bb32bda60884b", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "10646036906", - "fertilizerIds": [ - "3500000" - ], - "fertilizerAmounts": [ - "249" - ], + "fertilizerIds": ["3500000"], + "fertilizerAmounts": ["249"], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x4c22f22547855855b837b84cf5a73b4c875320cb", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "4192635750", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x4c366e92d46796d14d658e690de9b1f54bfb632f", @@ -259,7 +541,47 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x4f70ffddab3c60ad12487b2906e3e46d8bc72970", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "18845049718", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x504c11bdbe6e29b46e23e9a15d9c8d2e2e795709", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1325826360", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x512e3eb472d53df71db0252cb8dccd25cd05e9e9", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "19375570094", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x51aad11e5a5bd05b3409358853d0d6a66aa60c40", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": ["3439448", "6000000"], + "fertilizerAmounts": ["4", "10"], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x52d4d46e28dc72b1cef2cb8eb5ec75dd12bc4df3", @@ -269,21 +591,27 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x53ba90071ff3224adca6d3c7960ad924796fed03", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["1000"], + "plotIds": ["767807852820920"], + "plotAmounts": ["5000266651"] }, { "address": "0x542a94e6f4d9d15aae550f7097d089f273e38f85", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "1351212", - "fertilizerIds": [ - "6000000" - ], - "fertilizerAmounts": [ - "53" - ], + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["53"], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x554b1bd47b7d180844175ca4635880da8a3c70b9", @@ -292,12 +620,28 @@ "siloPaybackTokensOwed": "12894039148", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": [ - "31590227810128" - ], - "plotEnds": [ - "15764212654" - ] + "plotIds": ["31590227810128"], + "plotAmounts": ["15764212654"] + }, + { + "address": "0x5d02957cf469342084e42f9f4132403ea4c5fe01", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": ["786826869494538", "767507188351307"], + "plotAmounts": ["44336089227", "3345435335"] + }, + { + "address": "0x5dfbb2344727462039eb18845a911c3396d91cf2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2513", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", @@ -307,7 +651,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", @@ -317,39 +661,55 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x61e193e514de408f57a648a641d9fcd412cded82", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": ["316297504741935"], + "plotAmounts": ["1134976125606"] }, { "address": "0x63a7255c515041fd243440e3db0d10f62f9936ae", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": [ - "3268426" - ], - "fertilizerAmounts": [ - "500" - ], + "fertilizerIds": ["3268426"], + "fertilizerAmounts": ["500"], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x64298a72f4e3e23387efc409fc424a3f17356fc4", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2806", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x647bc16dcc2a3092a59a6b9f7944928d94301042", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "5802103979", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": ["234363994367301", "595338144020334"], + "plotAmounts": ["101810011675", "47102200000"] }, { "address": "0x735cab9b02fd153174763958ffb4e0a971dd7f29", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": [ - "3458512", - "3458531", - "3470220", - "6000000" - ], - "fertilizerAmounts": [ - "542767", - "56044", - "291896", - "8046712" - ], + "fertilizerIds": ["3458512", "3458531", "3470220", "6000000"], + "fertilizerAmounts": ["542767", "56044", "291896", "8046712"], "plotIds": [ "28553316405699", "33290510627174", @@ -369,7 +729,7 @@ "744819318753537", "760472183068657" ], - "plotEnds": [ + "plotAmounts": [ "56203360846", "565390687", "15000000000", @@ -389,6 +749,16 @@ "71399999953" ] }, + { + "address": "0x73cbc02516f5f4945ce2f2facf002b2c6aa359e7", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "22003048972", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, { "address": "0x749461444e750f2354cf33543c941e87d747f12f", "whitelisted": true, @@ -397,59 +767,47 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": [ - "3500000", - "6000000" - ], - "fertilizerAmounts": [ - "40000", - "51100" - ], + "fertilizerIds": ["3500000", "6000000"], + "fertilizerAmounts": ["40000", "51100"], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x7d31bf47dda62c185a057b4002f1235fc3c8ae82", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "400442104", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "22023088835", - "fertilizerIds": [ - "6000000" - ], - "fertilizerAmounts": [ - "3025" - ], - "plotIds": [ - "462646168927", - "647175726076112", - "720495305315880" - ], - "plotEnds": [ - "1666666666", - "16711431033", - "55569209804" - ] + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["3025"], + "plotIds": ["462646168927", "647175726076112", "720495305315880"], + "plotAmounts": ["1666666666", "16711431033", "55569209804"] }, { "address": "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": [ - "3471974" - ], - "fertilizerAmounts": [ - "10" - ], + "fertilizerIds": ["3471974"], + "fertilizerAmounts": ["10"], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x83a758a6a24fe27312c1f8bda7f3277993b64783", @@ -458,12 +816,18 @@ "siloPaybackTokensOwed": "99437500", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": [ - "344618618497376" - ], - "plotEnds": [ - "81000597500" - ] + "plotIds": ["344618618497376"], + "plotAmounts": ["81000597500"] + }, + { + "address": "0x843f2c19bc6df9e32b482e2f9ad6c078001088b1", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "33054062713", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x8525664820c549864982d4965a41f83a7d26af58", @@ -472,12 +836,18 @@ "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": [ - "28385711672356" - ], - "plotEnds": [ - "4000000000" - ] + "plotIds": ["28385711672356"], + "plotAmounts": ["4000000000"] + }, + { + "address": "0x85312d6a50928f3ffc7a192444601e6e04a428a2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1179375906", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["1002"], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x85789dab691cfb2f95118642d459e3301ac88aba", @@ -487,27 +857,27 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0x8950d9117c136b29a9b1ae8cd38db72226404243", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "10502638743", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0x8a6eeb9b64eeba8d3b4404bf67a7c262c555e25b", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": [ - "3500000", - "6000000" - ], - "fertilizerAmounts": [ - "500", - "500" - ], - "plotIds": [ - "764117220398714" - ], - "plotEnds": [ - "5082059700" - ] + "fertilizerIds": ["3500000", "6000000"], + "fertilizerAmounts": ["500", "500"], + "plotIds": ["764117220398714"], + "plotAmounts": ["5082059700"] }, { "address": "0x8b2dbfded8802a1af686fef45dd9f7babfd936a2", @@ -517,7 +887,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x8bea73aac4f7ef9daded46359a544f0bb2d1364f", @@ -527,7 +897,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x8fe7261b58a691e40f7a21d38d27965e2d3afd6e", @@ -537,7 +907,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x9008d19f58aabd9ed0d60971565aa8510560ab41", @@ -547,7 +917,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", @@ -557,7 +927,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0xaa420e97534ab55637957e868b658193b112a551", @@ -566,12 +936,18 @@ "siloPaybackTokensOwed": "20754000000", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": [ - "31772724860478" - ], - "plotEnds": [ - "43540239232" - ] + "plotIds": ["31772724860478"], + "plotAmounts": ["43540239232"] + }, + { + "address": "0xaab4dfe6d735c4ac46217216fe883a39fbfe8284", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "11278869500", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0xae7861c80d03826837a50b45aecf11ec677f6586", @@ -581,7 +957,17 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0xb02f6c30bcf0d42e64712c28b007b85c199db43f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0xb1720612d0131839dc489fcf20398ea925282fca", @@ -591,21 +977,17 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0xb423a1e013812fcc9ab47523297e6be42fb6157e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": [ - "6000000" - ], - "fertilizerAmounts": [ - "95" - ], + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["95"], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0xb651078d1856eb206fb090fd9101f537c33589c2", @@ -614,12 +996,18 @@ "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": [ - "670156602457239" - ], - "plotEnds": [ - "16663047211" - ] + "plotIds": ["670156602457239"], + "plotAmounts": ["16663047211"] + }, + { + "address": "0xbab04a0614a1747f6f27403450038123942cf87b", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "872941934", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", @@ -899,7 +1287,7 @@ "767321251748842", "766291456879801" ], - "plotEnds": [ + "plotAmounts": [ "284047664", "347174290", "154091444", @@ -1178,26 +1566,28 @@ "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": [ - "577679606726120" - ], - "plotEnds": [ - "74848126691" - ] + "plotIds": ["577679606726120"], + "plotAmounts": ["74848126691"] + }, + { + "address": "0xbf912cb4d1c3f93e51622fae0bfa28be1b4b6c6c", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "34791226", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "6922721398", - "fertilizerIds": [ - "6000000" - ], - "fertilizerAmounts": [ - "500" - ], + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["500"], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0xc08f967ed52dcffd5687b56485ee6497502ef91d", @@ -1207,7 +1597,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0xc1146f4a68538a35f70c70434313fef3c4456c33", @@ -1217,7 +1607,47 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0xc16aa2e25f2868fea5c33e6a0b276dce7ee1ee47", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "30171401851", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xc18676501a23a308191690262be4b5d287104564", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "6352015813", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xc3391169cbbaa16b86c625b0305cfdf0ccbba40f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1369600757", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xc51fefb9ef83f2d300448b22db6fac032f96df3f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "9", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["942"], + "plotIds": ["650020393573072"], + "plotAmounts": ["1098667202"] }, { "address": "0xc896e266368d3eb26219c5cc74a4941339218d86", @@ -1227,7 +1657,67 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0xc93678ec2b974a7ae280341cefeb85984a29fff7", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "314563805", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xca4a31c7ebcb126c60fab495a4d7b545422f3aaf", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "5595353830", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xceb15131d3c0adcffbfe229868b338ff24ed338a", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "4133000000", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xd15b5fa5370f0c3cc068f107b7691e6dab678799", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "41244612991", + "fertilizerIds": ["3472026", "6000000"], + "fertilizerAmounts": ["854", "7662"], + "plotIds": ["644156421132344", "648277210832933", "644278837940540", "648277231020580"], + "plotAmounts": ["3789921580", "20187647", "631861553", "5001904811"] + }, + { + "address": "0xd20b976584bf506baf5cc604d1f0a1b8d07138da", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "100000000", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xdbab0b75921e3008fd0bb621a8248d969d2d2f0d", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "741733199", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", @@ -1237,7 +1727,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0xdda42f12b8b2ccc6717c053a2b772bad24b08cbd", @@ -1247,25 +1737,51 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0xde33e58f056ff0f23be3ef83ab6e1e0bec95506f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1440847299", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": ["768418957212524"], + "plotAmounts": ["52886516686"] }, { "address": "0xdff24806405f62637e0b44cc2903f1dfc7c111cd", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "78016072001", - "fertilizerIds": [ - "3452316", - "3458512", - "3472026" - ], - "fertilizerAmounts": [ - "1031", - "2213", - "416" - ], + "fertilizerIds": ["3452316", "3458512", "3472026"], + "fertilizerAmounts": ["1031", "2213", "416"], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0xe4452cb39ad3faa39434b9d768677b34dc90d5dc", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "20310337401", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "569039352660815", + "564739070155208", + "562785223802308", + "566121962403477", + "572117326695253", + "570064713013715" + ], + "plotAmounts": [ + "31631250000", + "31631250000", + "31631000000", + "31631250000", + "31631250000", + "31631250000" + ] }, { "address": "0xe57384b12a2b73767cdb5d2eaddfd96cc74753a6", @@ -1275,19 +1791,35 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0xe596607344348723aa3e9a1a8551577dcca6c5b5", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "5457350695", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xe83120c1d336896de42dea2f5fd58fef1b6b9934", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "26132575726", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0xea3154098a58eebfa89d705f563e6c5ac924959e", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "63462001011", - "fertilizerIds": [ - "6000000" - ], - "fertilizerAmounts": [ - "3180" - ], + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["3180"], "plotIds": [ "634031481420456", "647388734023467", @@ -1295,13 +1827,27 @@ "741007335527824", "743270084189585" ], - "plotEnds": [ - "3170719864", - "9748779666", - "55487912201", - "48848467587", - "44269246366" - ] + "plotAmounts": ["3170719864", "9748779666", "55487912201", "48848467587", "44269246366"] + }, + { + "address": "0xefd09cc91a34659b4da25bc22bd0d1380cbc47ec", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "22059802", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xf115d93a31e79cca4697b9683c856326e0bed3c3", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "246154267", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", @@ -1311,7 +1857,7 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] }, { "address": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", @@ -1321,7 +1867,17 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0xf58f3dbb422624fe0dd9e67de9767c149bf04fdd", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "4904141400", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { "address": "0xf62405e188bb9629ed623d60b7c70dcc4e2abd81", @@ -1331,6 +1887,26 @@ "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], - "plotEnds": [] + "plotAmounts": [] + }, + { + "address": "0xf90a01af91468f5418cda5ed6b19c51550eb5352", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "275235709", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xfb5caae76af8d3ce730f3d62c6442744853d43ef", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "25836910088", + "fertilizerIds": ["6000000"], + "fertilizerAmounts": ["1852"], + "plotIds": ["740648921884436", "657971448171764", "76202249214022", "644415322342082"], + "plotAmounts": ["39104687507", "15036330875", "8000000000", "6773000000"] } -] \ No newline at end of file +] diff --git a/scripts/beanstalkShipments/data/contractAccounts.json b/scripts/beanstalkShipments/data/contractAccounts.json index c5f2aa8b..34e1ed29 100644 --- a/scripts/beanstalkShipments/data/contractAccounts.json +++ b/scripts/beanstalkShipments/data/contractAccounts.json @@ -1,37 +1,68 @@ [ "0x00000000003e04625c9001717346dd811ae5eba2", "0x0245934a930544c7046069968eb4339b03addfcf", + "0x04dc1bdcb450ea6734f5001b9cecb0cd09690f4f", + "0x0519064e3216cf6d6643cc65db1c39c20abe50e0", "0x08e0f0de1e81051826464043e7ae513457b27a86", + "0x0f9548165c4960624debb7e38b504e9fd524d6af", "0x153072c11d6dffc0f1e5489bc7c996c219668c67", - "0x1f906ab7bd49059d29cac759bc84f9008dbf4112", + "0x19dde5f247155293fb8c905d4a400021c12fb6f0", + "0x19dfdc194bb5cf599af78b1967dbb3783c590720", "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", + "0x224e69025a2f705c8f31efb6694398f8fd09ac5c", + "0x234831d4cff3b7027e0424e23f019657005635e1", "0x251fae8f687545bdd462ba4fcdd7581051740463", + "0x25f030d68e56f831011c8821913ced6248dd0676", + "0x2a40aaf3e076187b67ccce82e20da5ce27caa2a7", "0x2bf9b1b8cc4e6864660708498fb004e594efc0b8", "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "0x2d0ddb67b7d551afa7c8fa4d31f86da9cc947450", "0x2e4145a204598534ea12b772853c08e736248e7b", + "0x2f65904d227c3d7e4bbbb7ea10cfc36cd2522405", "0x305b0ecf72634825f7231058444c65d885e1f327", "0x33ee1fa9ed670001d1740419192142931e088e79", "0x36def8a94e727a0ff7b01d2f50780f0a28fb74b6", + "0x3800645f556ee583e20d6491c3a60e9c32744376", + "0x3cc6cc687870c972127e073e05b956a1ee270164", "0x3f9208f556735504e985ff1a369af2e8ff6240a3", "0x4088e870e785320413288c605fd1bd6bd9d5bdae", "0x40ca67ba095c038b711ad37bbebad8a586ae6f38", + "0x41dd131e460e18befd262cf4fe2e2b2f43f6fb7b", "0x44db0002349036164dd46a04327201eb7698a53e", + "0x4733a76e10819ff1fa603e52621e73df2ce5c30a", + "0x47b2efa18736c6c211505aefd321bec3ac3e8779", "0x49072cd3bf4153da87d5eb30719bb32bda60884b", + "0x4c22f22547855855b837b84cf5a73b4c875320cb", "0x4c366e92d46796d14d658e690de9b1f54bfb632f", + "0x4f70ffddab3c60ad12487b2906e3e46d8bc72970", + "0x504c11bdbe6e29b46e23e9a15d9c8d2e2e795709", + "0x512e3eb472d53df71db0252cb8dccd25cd05e9e9", + "0x51aad11e5a5bd05b3409358853d0d6a66aa60c40", "0x52d4d46e28dc72b1cef2cb8eb5ec75dd12bc4df3", + "0x53ba90071ff3224adca6d3c7960ad924796fed03", "0x542a94e6f4d9d15aae550f7097d089f273e38f85", "0x554b1bd47b7d180844175ca4635880da8a3c70b9", + "0x5d02957cf469342084e42f9f4132403ea4c5fe01", + "0x5dfbb2344727462039eb18845a911c3396d91cf2", "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "0x61e193e514de408f57a648a641d9fcd412cded82", "0x63a7255c515041fd243440e3db0d10f62f9936ae", + "0x64298a72f4e3e23387efc409fc424a3f17356fc4", + "0x647bc16dcc2a3092a59a6b9f7944928d94301042", "0x735cab9b02fd153174763958ffb4e0a971dd7f29", + "0x73cbc02516f5f4945ce2f2facf002b2c6aa359e7", "0x749461444e750f2354cf33543c941e87d747f12f", "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", + "0x7d31bf47dda62c185a057b4002f1235fc3c8ae82", "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", "0x83a758a6a24fe27312c1f8bda7f3277993b64783", + "0x843f2c19bc6df9e32b482e2f9ad6c078001088b1", "0x8525664820c549864982d4965a41f83a7d26af58", + "0x85312d6a50928f3ffc7a192444601e6e04a428a2", "0x85789dab691cfb2f95118642d459e3301ac88aba", + "0x8950d9117c136b29a9b1ae8cd38db72226404243", "0x8a6eeb9b64eeba8d3b4404bf67a7c262c555e25b", "0x8b2dbfded8802a1af686fef45dd9f7babfd936a2", "0x8bea73aac4f7ef9daded46359a544f0bb2d1364f", @@ -39,22 +70,45 @@ "0x9008d19f58aabd9ed0d60971565aa8510560ab41", "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", "0xaa420e97534ab55637957e868b658193b112a551", + "0xaab4dfe6d735c4ac46217216fe883a39fbfe8284", "0xae7861c80d03826837a50b45aecf11ec677f6586", + "0xb02f6c30bcf0d42e64712c28b007b85c199db43f", "0xb1720612d0131839dc489fcf20398ea925282fca", "0xb423a1e013812fcc9ab47523297e6be42fb6157e", "0xb651078d1856eb206fb090fd9101f537c33589c2", + "0xbab04a0614a1747f6f27403450038123942cf87b", "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", "0xbe9998830c38910ef83e85eb33c90dd301d5516e", + "0xbf912cb4d1c3f93e51622fae0bfa28be1b4b6c6c", "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", "0xc08f967ed52dcffd5687b56485ee6497502ef91d", "0xc1146f4a68538a35f70c70434313fef3c4456c33", + "0xc16aa2e25f2868fea5c33e6a0b276dce7ee1ee47", + "0xc18676501a23a308191690262be4b5d287104564", + "0xc3391169cbbaa16b86c625b0305cfdf0ccbba40f", + "0xc51fefb9ef83f2d300448b22db6fac032f96df3f", "0xc896e266368d3eb26219c5cc74a4941339218d86", + "0xc93678ec2b974a7ae280341cefeb85984a29fff7", + "0xca4a31c7ebcb126c60fab495a4d7b545422f3aaf", + "0xceb15131d3c0adcffbfe229868b338ff24ed338a", + "0xd15b5fa5370f0c3cc068f107b7691e6dab678799", + "0xd20b976584bf506baf5cc604d1f0a1b8d07138da", + "0xdbab0b75921e3008fd0bb621a8248d969d2d2f0d", "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", "0xdda42f12b8b2ccc6717c053a2b772bad24b08cbd", + "0xde33e58f056ff0f23be3ef83ab6e1e0bec95506f", "0xdff24806405f62637e0b44cc2903f1dfc7c111cd", + "0xe4452cb39ad3faa39434b9d768677b34dc90d5dc", "0xe57384b12a2b73767cdb5d2eaddfd96cc74753a6", + "0xe596607344348723aa3e9a1a8551577dcca6c5b5", + "0xe83120c1d336896de42dea2f5fd58fef1b6b9934", "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "0xefd09cc91a34659b4da25bc22bd0d1380cbc47ec", + "0xf115d93a31e79cca4697b9683c856326e0bed3c3", "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", - "0xf62405e188bb9629ed623d60b7c70dcc4e2abd81" + "0xf58f3dbb422624fe0dd9e67de9767c149bf04fdd", + "0xf62405e188bb9629ed623d60b7c70dcc4e2abd81", + "0xf90a01af91468f5418cda5ed6b19c51550eb5352", + "0xfb5caae76af8d3ce730f3d62c6442744853d43ef" ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json index 80fc8d40..58019827 100644 --- a/scripts/beanstalkShipments/data/unripeBdvTokens.json +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -191,18 +191,10 @@ "0x04776ef6C70C281E13deDaf50AA8bbA75fbecA31", "202866345024" ], - [ - "0x04Dc1bDcb450Ea6734F5001B9CeCb0Cd09690f4f", - "84666648086" - ], [ "0x04F095a8B608527B336DcfE5cC8A5Ac253007Dec", "1156086095" ], - [ - "0x0519064e3216cf6d6643Cc65dB1C39C20ABE50e0", - "875658037" - ], [ "0x051f77131b0ea6d149608021E06c7206317782CC", "585933144" @@ -591,6 +583,10 @@ "0x10Ec8540E82f4e0bEE54d8c8B72e00609b6CaB38", "2518567350" ], + [ + "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "7982716449900" + ], [ "0x1164fe7a76D22EAA66f6A0aDcE3E3a30d9957A5f", "266872905" @@ -931,10 +927,6 @@ "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", "4" ], - [ - "0x19Dde5f247155293FB8c905d4A400021C12fb6F0", - "170175680" - ], [ "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", "81601559770" @@ -1103,6 +1095,10 @@ "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", "2280746245" ], + [ + "0x1F906aB7Bd49059d29cac759Bc84f9008dBF4112", + "16660261" + ], [ "0x1Fa208031725Cc75Fe0C92D28ce3072a86e3cEFd", "601510683" @@ -1255,10 +1251,6 @@ "0x23444f470C8760bef7424C457c30DC2d4378974b", "5670131987" ], - [ - "0x234831d4CFF3B7027E0424e23F019657005635e1", - "389763280" - ], [ "0x237B45906A501102dFdd0cDccb1Fd3D7b869CF36", "175978742" @@ -1511,10 +1503,6 @@ "0x2A23D58Ea4b5cC2e01ef53ea5dE51447C2528F16", "2" ], - [ - "0x2a40AAf3e076187B67CcCE82E20da5Ce27Caa2A7", - "235604312" - ], [ "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", "1493696321" @@ -1675,10 +1663,6 @@ "0x2f62960f4da8f18ff4875d6F0365d7Dbc3900B8C", "18" ], - [ - "0x2f65904D227C3D7e4BbBB7EA10CFc36CD2522405", - "604108560" - ], [ "0x2F6e6687FA7F1c8cBBDf5cf5b44A94a43081621c", "4854060979" @@ -1999,10 +1983,6 @@ "0x37f8E3b0Dfc2A980Ec9CD2C233a054eAa99E9d8A", "7228030518" ], - [ - "0x3800645f556ee583E20D6491c3a60E9c32744376", - "19806759068" - ], [ "0x3804e244b0687A41619CdA590dA47ED0f9772C8B", "149246111387" @@ -2199,10 +2179,6 @@ "0x3cC431852CA2d16f6D8Cc333Ab323b748eb798eb", "1340507729" ], - [ - "0x3CC6Cc687870C972127E073E05b956A1eE270164", - "2" - ], [ "0x3CdF26e741B7298d7edc17b919FEB55fA7bc0311", "390335019639" @@ -2383,10 +2359,6 @@ "0x41CC24B4E568715f33fE803a6C3419708205304d", "1173233856" ], - [ - "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B", - "671413640603" - ], [ "0x41e2965406330A130e61B39d867c91fa86aA3bB8", "1198526094" @@ -2583,10 +2555,6 @@ "0x47217E48daAf7fe61486b265f701D449a8660A94", "2" ], - [ - "0x4733A76e10819FF1Fa603E52621E73Df2CE5C30A", - "17" - ], [ "0x473812413b6A8267C62aB76095463546C1F65Dc7", "3812137339" @@ -2779,10 +2747,6 @@ "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", "142148" ], - [ - "0x4c22f22547855855B837b84cF5a73B4C875320cb", - "4192635750" - ], [ "0x4C2b8dd251547C05188a40992843442D37eD28f2", "326797" @@ -2915,10 +2879,6 @@ "0x4f69c39fe8E37b0b4d9B439A05f89C25F2c658d3", "19302199741" ], - [ - "0x4F70FFDdAb3c60Ad12487b2906E3E46d8bC72970", - "18845049718" - ], [ "0x4F8D7711d18344F86A5F27863051964D333798E2", "418023996837" @@ -2947,10 +2907,6 @@ "0x5039ed981CeDfCBBB12c4985Df321c1F9d222440", "102170250" ], - [ - "0x504C11bDBE6E29b46E23e9A15d9c8d2e2e795709", - "1325826360" - ], [ "0x5068aed87a97c063729329c2ebE84cfEd3177F83", "84993" @@ -2975,10 +2931,6 @@ "0x511d230d3c94CadED14281d949b4D35D8575CA12", "2117753346" ], - [ - "0x512E3Eb472D53Df71Db0252cb8dccD25cd05E9e9", - "19375570094" - ], [ "0x5136a9A5D077aE4247C7706b577F77153C32A01C", "72" @@ -3439,10 +3391,6 @@ "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", "10156821650" ], - [ - "0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000", - "6901055495553" - ], [ "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", "84850273565" @@ -3451,10 +3399,6 @@ "0x5de1F0BC895c27A0c1f7E20A74016E9aE3bC3B2b", "61901890" ], - [ - "0x5dfbB2344727462039eb18845a911C3396d91cf2", - "2513" - ], [ "0x5e4c21c30c968F1D1eE37c2701b99B193B89d3f3", "1" @@ -3663,18 +3607,10 @@ "0x63C2dc8AFEdB66c9C756834ee0570028933E919C", "2601366994" ], - [ - "0x64298A72F4E3e23387EFc409fc424a3f17356fC4", - "2806" - ], [ "0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1", "546134745139" ], - [ - "0x647bC16DCC2A3092A59a6b9F7944928d94301042", - "5802103979" - ], [ "0x647EAf826c6b7171c4cA1efb59C624AAf2553CE1", "32576149546" @@ -4203,10 +4139,6 @@ "0x73C91af57C657DfD05a31DAcA7Bff1aEb5754629", "49112573767" ], - [ - "0x73Cbc02516f5F4945cE2F2fACf002b2c6aA359e7", - "22003048972" - ], [ "0x73E9f9099497Dd0593C95BBc534bdc30FD19fA86", "1065819639" @@ -4591,10 +4523,6 @@ "0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677", "6" ], - [ - "0x7D31bf47ddA62C185A057b4002f1235FC3c8ae82", - "400442104" - ], [ "0x7d50bfeAD43d4FDD47a8A61f32305b2dE21068Bd", "2385" @@ -4859,10 +4787,6 @@ "0x842411AE8a8B8eC37bAd5e63419740a2854E6527", "140990509" ], - [ - "0x843f2C19bc6df9E32B482E2F9ad6C078001088b1", - "33054062713" - ], [ "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", "5655545222" @@ -4895,10 +4819,6 @@ "0x8506B01FEC584cCaEACC7908D47725cf93E40680", "5201001331" ], - [ - "0x85312D6a50928F3ffC7a192444601E6E04A428a2", - "1179375906" - ], [ "0x853AebEc29B1DABA31de05aD58738Ed1507D3b82", "5" @@ -5087,10 +5007,6 @@ "0x8926E5956d3b3fA844F945b26855c9fB958Da269", "33184416" ], - [ - "0x8950D9117C136B29A9b1aE8cd38DB72226404243", - "10502638743" - ], [ "0x8953738233d6236c4d03bCe5372e20f58BdaAEfE", "90341955" @@ -6355,10 +6271,6 @@ "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", "250502954658" ], - [ - "0xaAB4DfE6D735c4Ac46217216fE883a39fBFE8284", - "11278869500" - ], [ "0xaB13156930AB437897eF35287161051e92FC1c77", "402457331400" @@ -6539,10 +6451,6 @@ "0xb0010aB3689B80177fF49773F1428aC9a0EDdfa0", "2364206028" ], - [ - "0xb02f6c30bcf0d42E64712C28B007b85c199Db43f", - "3" - ], [ "0xB06fF7d5560f213937fC723CC65366415B7821bd", "120193090869" @@ -6911,10 +6819,6 @@ "0xbA9d7BDc69d77b15427346D30796e0353Fa245DC", "370410744" ], - [ - "0xbAb04a0614a1747f6F27403450038123942Cf87b", - "872941934" - ], [ "0xBAe7A9B7Df36365Cb17004FD2372405773273a68", "22533142990" @@ -7151,10 +7055,6 @@ "0xBF8AfA76BcC2f7Fee2F3b358571F426a698E5edD", "15154526032" ], - [ - "0xBF912CB4d1c3f93e51622fAe0bfa28be1B4b6C6c", - "34791226" - ], [ "0xBFc87CaD2f664d4EecAbCCA45cF1407201353978", "1695630098" @@ -7215,14 +7115,6 @@ "0xC13D06194E149Ea53f6c823d9446b100eED37042", "672" ], - [ - "0xc16Aa2E25F2868fea5C33E6A0b276dcE7EE1eE47", - "30171401851" - ], - [ - "0xc18676501a23A308191690262bE4B5d287104564", - "6352015813" - ], [ "0xC1877e530858F2fE9642b47c4e6583dec0d4e089", "77546171" @@ -7315,10 +7207,6 @@ "0xc32e44288A51c864b9c194DFbab6Dc71139A3C4d", "7901011995" ], - [ - "0xC3391169cbbaa16B86c625b0305CfdF0CCbba40F", - "1369600757" - ], [ "0xC343B82Abcc6C0E60494a0F96a58f6F102B58F32", "1404714769" @@ -7387,10 +7275,6 @@ "0xc516f561098Cea752f06C4F7295d0827F1Ba0D6C", "100385471291" ], - [ - "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", - "9" - ], [ "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", "13850219367" @@ -7563,10 +7447,6 @@ "0xc90923827d774955DC6798ffF540C4E2D29F2DBe", "80" ], - [ - "0xc93678EC2b974a7aE280341cEFeb85984a29FFF7", - "314563805" - ], [ "0xC95186f04B68cfec0D9F585D08C3b5697C858fe0", "1063309612454" @@ -7615,10 +7495,6 @@ "0xca2819B74C29A1eDe92133fdfbaf06D4F5a5Ad4c", "1090464891" ], - [ - "0xca4A31c7ebcb126C60Fab495a4D7b545422f3AAF", - "5595353830" - ], [ "0xCA754d7Fc19e0c3cD56375c584aB9E61443a276d", "5851468591" @@ -7767,10 +7643,6 @@ "0xCE91783D36925bCc121D0C63376A248a2851982A", "27462726700" ], - [ - "0xCeB15131d3C0Adcffbfe229868b338FF24eD338A", - "4133000000" - ], [ "0xCeE29290c6DDa832898bA707eE9D40B311181b9A", "1" @@ -7859,10 +7731,6 @@ "0xD14f924DE730Bb2F0C6E5B45b21b37468950a2fF", "3325294180" ], - [ - "0xD15B5fA5370f0c3Cc068F107B7691e6dab678799", - "41244612991" - ], [ "0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0", "1912026726" @@ -7887,10 +7755,6 @@ "0xD1F27c782978858A2937B147aa875391Bb8Fc278", "19951466219" ], - [ - "0xD20B976584bF506BAf5cC604D1f0A1B8D07138dA", - "100000000" - ], [ "0xD2594436a220e90495cb3066b24d37A8252Fac0c", "3230998584" @@ -8299,10 +8163,6 @@ "0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661", "2215630589139" ], - [ - "0xdBab0B75921E3008Fd0bB621A8248D969d2d2F0d", - "741733199" - ], [ "0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D", "246595082116" @@ -8379,10 +8239,6 @@ "0xde1b617d64A7b7ac7cf2CD50487c472b5632ce3c", "1083110" ], - [ - "0xdE33e58F056FF0f23be3EF83Ab6E1e0bEC95506f", - "1440847299" - ], [ "0xDE3E4d173f754704a763D39e1Dcf0a90c37ec7F0", "1419999999039" @@ -8587,10 +8443,6 @@ "0xe43e06794069FeF7A93c1Ab5ef918CfC65e86E00", "5732691529" ], - [ - "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc", - "20310337401" - ], [ "0xE44E071BFE771158a7660dc13daB67de94f8273c", "24322066229" @@ -8643,10 +8495,6 @@ "0xe591F77B7D5a0a704fEBa8558430D7991e928888", "381081130" ], - [ - "0xe596607344348723Aa3E9a1A8551577dcCa6c5b5", - "5457350695" - ], [ "0xe5D36124DE24481daC81cc06b2Cd0bbE81701D14", "31692769933" @@ -8707,10 +8555,6 @@ "0xe82c4470c22ECD75393D508d709f6476043be567", "1036853231" ], - [ - "0xe83120C1D336896De42dEa2f5fD58Fef1b6b9934", - "26132575726" - ], [ "0xE8332043e54A2470e148f0c1ac0AF188d9D46524", "429169" @@ -8995,10 +8839,6 @@ "0xeFcc546826B5fa682c4931d0c83c49D208eC3B84", "3265858233" ], - [ - "0xefD09Cc91a34659B4Da25bc22Bd0D1380cBC47Ec", - "22059802" - ], [ "0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C", "18573515721" @@ -9031,10 +8871,6 @@ "0xf086898A7DB69Da014d79f7A86CC62d29F84d7b7", "2291116" ], - [ - "0xf115d93A31e79ccA4697B9683c856326E0BeD3c3", - "246154267" - ], [ "0xF1349Aa788121306c54109DB01abD5eB2f951ca0", "1264366866" @@ -9223,10 +9059,6 @@ "0xF58c02C8aD9D6C436246ca124F43c690368bBdfE", "1" ], - [ - "0xf58F3DBB422624FE0Dd9E67dE9767c149Bf04fdd", - "4904141400" - ], [ "0xf5aA301b1122B525Ab7d6bc5F224B15Bac59e1f2", "503584448618" @@ -9371,10 +9203,6 @@ "0xF904cE88D7523a54c6C1eD4b98D6fc9562E91443", "52272133582" ], - [ - "0xF90A01Af91468F5418cDA5Ed6b19C51550eB5352", - "275235709" - ], [ "0xf95ecba30184289D15926Eb61337839E973a97df", "34978297" @@ -9459,10 +9287,6 @@ "0xfb578D95837a7c8c00BacC369A79d6b962305E70", "7834379" ], - [ - "0xfb5cAAe76af8D3CE730f3D62c6442744853d43Ef", - "25836910088" - ], [ "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", "90328046207" diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 3257cc48..33b6d54b 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -264,18 +264,19 @@ async function transferContractOwnership({ siloPaybackContract, barnPaybackContract, contractPaybackDistributorContract, - L2_PCM, + newOwner, + deployer, verbose = true }) { if (verbose) console.log("šŸ”„ Transferring ownership to PCM..."); - await siloPaybackContract.transferOwnership(L2_PCM); + await siloPaybackContract.connect(deployer).transferOwnership(newOwner); if (verbose) console.log("āœ… SiloPayback ownership transferred to PCM"); - await barnPaybackContract.transferOwnership(L2_PCM); + await barnPaybackContract.connect(deployer).transferOwnership(newOwner); if (verbose) console.log("āœ… BarnPayback ownership transferred to PCM"); - await contractPaybackDistributorContract.transferOwnership(L2_PCM); + await contractPaybackDistributorContract.connect(deployer).transferOwnership(newOwner); if (verbose) console.log("āœ… ContractPaybackDistributor ownership transferred to PCM"); } diff --git a/scripts/beanstalkShipments/parsers/parseContractData.js b/scripts/beanstalkShipments/parsers/parseContractData.js index 4aab91be..956af900 100644 --- a/scripts/beanstalkShipments/parsers/parseContractData.js +++ b/scripts/beanstalkShipments/parsers/parseContractData.js @@ -71,7 +71,7 @@ async function parseContractData(includeContracts, detectedContractAddresses = [ fertilizerIds: [], fertilizerAmounts: [], plotIds: [], - plotEnds: [] // Only plotEnds needed - plotStarts is always 0 (constant in contract) + plotAmounts: [] // Only plotAmounts needed - plotStarts is always 0 (constant in contract) }; // Helper function to find contract data by normalized address @@ -145,10 +145,10 @@ async function parseContractData(includeContracts, detectedContractAddresses = [ // Convert plot map to arrays for (const [plotIndex, totalPods] of plotMap) { - // For ContractPaybackDistributor, we only need plotIds and plotEnds - // plotStarts is always 0 (constant in contract), plotEnds contains the pod amounts + // For ContractPaybackDistributor, we only need plotIds and plotAmounts + // plotStarts is always 0 (constant in contract), plotAmounts contains the pod amounts accountData.plotIds.push(plotIndex); - accountData.plotEnds.push(totalPods.toString()); // plotEnds = pod amounts, not calculated end indices + accountData.plotAmounts.push(totalPods.toString()); // plotAmounts = pod amounts, not calculated end indices } // Only include contracts that have some assets diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index a6ce2f04..7a655b8c 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -1,11 +1,7 @@ module.exports = function () { const fs = require("fs"); const { task } = require("hardhat/config"); - const { - impersonateSigner, - mintEth, - getBeanstalk - } = require("../utils"); + const { impersonateSigner, mintEth, getBeanstalk } = require("../utils"); const { L2_PINTO, L2_PCM, @@ -25,222 +21,209 @@ module.exports = function () { deployAndSetupContracts, transferContractOwnership } = require("../scripts/beanstalkShipments/deployPaybackContracts.js"); - const { - parseAllExportData - } = require("../scripts/beanstalkShipments/parsers"); + const { parseAllExportData } = require("../scripts/beanstalkShipments/parsers"); //////////////////////// BEANSTALK SHIPMENTS //////////////////////// -////// PRE-DEPLOYMENT: DEPLOY L1 CONTRACT MESSENGER ////// -// As a backup solution, ethAccounts will be able to send a message on the L1 to claim their assets on the L2 -// from the L2 ContractPaybackDistributor contract. We deploy the L1ContractMessenger contract on the L1 -// and whitelist the ethAccounts that are eligible to claim their assets. -// Make sure account[0] in the hardhat config for mainnet is the L1_CONTRACT_MESSENGER_DEPLOYER at 0xbfb5d09ffcbe67fbed9970b893293f21778be0a6 -// - npx hardhat deployL1ContractMessenger --network mainnet -task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction( - async (taskArgs) => { - const mock = true; - let deployer; - if (mock) { - deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[0]; - } + ////// PRE-DEPLOYMENT: DEPLOY L1 CONTRACT MESSENGER ////// + // As a backup solution, ethAccounts will be able to send a message on the L1 to claim their assets on the L2 + // from the L2 ContractPaybackDistributor contract. We deploy the L1ContractMessenger contract on the L1 + // and whitelist the ethAccounts that are eligible to claim their assets. + // Make sure account[0] in the hardhat config for mainnet is the L1_CONTRACT_MESSENGER_DEPLOYER at 0xbfb5d09ffcbe67fbed9970b893293f21778be0a6 + // - npx hardhat deployL1ContractMessenger --network mainnet + task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction( + async (taskArgs) => { + const mock = true; + let deployer; + if (mock) { + deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } - // log deployer address - console.log("Deployer address:", deployer.address); + // log deployer address + console.log("Deployer address:", deployer.address); - // read the contract accounts from the json file - const contractAccounts = JSON.parse( - fs.readFileSync("./scripts/beanstalkShipments/data/contractAccounts.json") - ); + // read the contract accounts from the json file + const contractAccounts = JSON.parse( + fs.readFileSync("./scripts/beanstalkShipments/data/contractAccounts.json") + ); - const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); - const l1Messenger = await L1Messenger.deploy( - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, - contractAccounts - ); - await l1Messenger.deployed(); - - console.log("L1ContractMessenger deployed to:", l1Messenger.address); - } -); - -////// STEP 0: PARSE EXPORT DATA ////// -// Run this task prior to deploying the contracts on a local fork at the latest base block to -// dynamically identify EOAs that have contract code due to contract code delegation. -// Spin up a local anvil node: -// - anvil --fork-url --chain-id 1337 --no-rate-limit --threads 0 -// Run the parseExportData task: -// - npx hardhat parseExportData --network localhost -task("parseExportData", "parses the export data and checks for contract addresses").setAction( - async (taskArgs) => { - const parseContracts = true; - // Step 0: Parse export data into required format - console.log("\n=ļæ½ STEP 0: PARSING EXPORT DATA"); - console.log("-".repeat(50)); - try { - await parseAllExportData(parseContracts); - console.log(" Export data parsing completed"); - } catch (error) { - console.error("L Failed to parse export data:", error); - throw error; + const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); + const l1Messenger = await L1Messenger.deploy( + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, + contractAccounts + ); + await l1Messenger.deployed(); + + console.log("L1ContractMessenger deployed to:", l1Messenger.address); } - } -); - -////// STEP 1: DEPLOY PAYBACK CONTRACTS ////// -// Deploy and initialize the payback contracts and the ContractPaybackDistributor contract -// Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER at 0x47c365cc9ef51052651c2be22f274470ad6afc53 -// Set mock to false to deploy the payback contracts on base. -// - npx hardhat deployPaybackContracts --network base -task( - "deployPaybackContracts", - "performs all actions to initialize the beanstalk shipments" -).setAction(async (taskArgs) => { - // params - const verbose = true; - const populateData = true; - const mock = true; - - // Use the shipments deployer to get correct addresses - let deployer; - if (mock) { - deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[1]; - } - - // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract - console.log("STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); - console.log("-".repeat(50)); - await deployAndSetupContracts({ - PINTO, - L2_PINTO, - L2_PCM, - account: deployer, - verbose, - populateData: populateData, - useChunking: true - }); - console.log(" Payback contracts deployed and configured\n"); -}); - -////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// -// To minimize the number of transaction the PCM multisig has to sign, we deploy the TempFieldFacet -// that allows an EOA to add plots to the repayment field. -// Set mock to false to deploy the TempFieldFacet -// - npx hardhat deployTempFieldFacet --network base -// Grab the diamond cut, queue it in the multisig and wait for execution before proceeding to the next step. -task("deployTempFieldFacet", "deploys the TempFieldFacet").setAction(async (taskArgs) => { - // params - const mock = true; - - // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field - console.log( - "STEP 2: ADDING NEW TEMP_REPAYMENT_FIELD_FACET AND THE TOKEN_HOOK_FACET TO THE PINTO DIAMOND" ); - console.log("-".repeat(50)); - - let deployer; - if (mock) { - deployer = await impersonateSigner(L2_PCM); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[0]; - } - - await upgradeWithNewFacets({ - diamondAddress: L2_PINTO, - facetNames: ["TempRepaymentFieldFacet"], - libraryNames: [], - facetLibraries: {}, - initArgs: [], - verbose: true, - object: !mock, - account: deployer - }); -}); - -////// STEP 3: POPULATE THE BEANSTALK FIELD WITH DATA ////// -// After the initialization of the repayment field is done and the shipments have been deployed -// The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed -// Set mock to false to populate the repayment field on base. -// - npx hardhat populateRepaymentField --network base -task("populateRepaymentField", "populates the repayment field with data").setAction( - async (taskArgs) => { + + ////// STEP 0: PARSE EXPORT DATA ////// + // Run this task prior to deploying the contracts on a local fork at the latest base block to + // dynamically identify EOAs that have contract code due to contract code delegation. + // Spin up a local anvil node: + // - anvil --fork-url --chain-id 1337 --no-rate-limit --threads 0 + // Run the parseExportData task: + // - npx hardhat parseExportData --network localhost + task("parseExportData", "parses the export data and checks for contract addresses").setAction( + async (taskArgs) => { + const parseContracts = true; + // Step 0: Parse export data into required format + console.log("\n=ļæ½ STEP 0: PARSING EXPORT DATA"); + console.log("-".repeat(50)); + try { + await parseAllExportData(parseContracts); + console.log(" Export data parsing completed"); + } catch (error) { + console.error("L Failed to parse export data:", error); + throw error; + } + } + ); + + ////// STEP 1: DEPLOY PAYBACK CONTRACTS ////// + // Deploy and initialize the payback contracts and the ContractPaybackDistributor contract + // Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER at 0x47c365cc9ef51052651c2be22f274470ad6afc53 + // Set mock to false to deploy the payback contracts on base. + // - npx hardhat deployPaybackContracts --network base + task( + "deployPaybackContracts", + "performs all actions to initialize the beanstalk shipments" + ).setAction(async (taskArgs) => { // params - const mock = true; const verbose = true; + const populateData = true; + const mock = true; - let repaymentFieldPopulator; + // Use the shipments deployer to get correct addresses + let deployer; if (mock) { - repaymentFieldPopulator = await impersonateSigner( - BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR - ); - await mintEth(repaymentFieldPopulator.address); + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); } else { - repaymentFieldPopulator = (await ethers.getSigners())[2]; + deployer = (await ethers.getSigners())[1]; } - // Populate the repayment field with data - console.log("STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); + // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract + console.log("STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); console.log("-".repeat(50)); - await populateBeanstalkField({ - diamondAddress: L2_PINTO, - account: repaymentFieldPopulator, - verbose: verbose + await deployAndSetupContracts({ + PINTO, + L2_PINTO, + L2_PCM, + account: deployer, + verbose, + populateData: populateData, + useChunking: true }); - console.log(" Beanstalk field initialized\n"); - } -); - -////// STEP 4: FINALIZE THE BEANSTALK SHIPMENTS ////// -// The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed -// At the same time, the new shipment routes that include the payback contracts will need to be set. -// Set mock to false to finalize the beanstalk shipments on base. -// - npx hardhat finalizeBeanstalkShipments --network base -task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setAction( - async (taskArgs) => { + console.log(" Payback contracts deployed and configured\n"); + }); + + ////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// + // To minimize the number of transaction the PCM multisig has to sign, we deploy the TempFieldFacet + // that allows an EOA to add plots to the repayment field. + // Set mock to false to deploy the TempFieldFacet + // - npx hardhat deployTempFieldFacet --network base + // Grab the diamond cut, queue it in the multisig and wait for execution before proceeding to the next step. + task("deployTempFieldFacet", "deploys the TempFieldFacet").setAction(async (taskArgs) => { // params const mock = true; - // Use any account for diamond cuts - let owner; + // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field + console.log( + "STEP 2: ADDING NEW TEMP_REPAYMENT_FIELD_FACET AND THE TOKEN_HOOK_FACET TO THE PINTO DIAMOND" + ); + console.log("-".repeat(50)); + + let deployer; if (mock) { - owner = await impersonateSigner(L2_PCM); - await mintEth(owner.address); + deployer = await impersonateSigner(L2_PCM); + await mintEth(deployer.address); } else { - owner = (await ethers.getSigners())[0]; + deployer = (await ethers.getSigners())[0]; } - // Step 4: Update shipment routes, create new field and remove the TempRepaymentFieldFacet - // The SeasonFacet will also need to be updated since LibReceiving was modified. - // Selectors removed: - // 0x31f2cd56: REPAYMENT_FIELD_ID() - // 0x49e40d6c: REPAYMENT_FIELD_POPULATOR() - // 0x1fd620f9: initializeRepaymentPlots() - console.log("\nSTEP 4: UPDATING SHIPMENT ROUTES, CREATING NEW FIELD AND REMOVING TEMP FACET"); - const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; - const routes = JSON.parse(fs.readFileSync(routesPath)); - await upgradeWithNewFacets({ diamondAddress: L2_PINTO, - facetNames: ["SeasonFacet", "TokenHookFacet", "ShipmentPlannerFacet"], - libraryNames: [ - "LibEvaluate", - "LibGauge", - "LibIncentive", - "LibShipping", - "LibWellMinting", - "LibFlood", - "LibGerminate", - "LibWeather" - ], - facetLibraries: { - SeasonFacet: [ + facetNames: ["TempRepaymentFieldFacet"], + libraryNames: [], + facetLibraries: {}, + initArgs: [], + verbose: true, + object: !mock, + account: deployer + }); + }); + + ////// STEP 3: POPULATE THE BEANSTALK FIELD WITH DATA ////// + // After the initialization of the repayment field is done and the shipments have been deployed + // The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed + // Set mock to false to populate the repayment field on base. + // - npx hardhat populateRepaymentField --network base + task("populateRepaymentField", "populates the repayment field with data").setAction( + async (taskArgs) => { + // params + const mock = true; + const verbose = true; + + let repaymentFieldPopulator; + if (mock) { + repaymentFieldPopulator = await impersonateSigner( + BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR + ); + await mintEth(repaymentFieldPopulator.address); + } else { + repaymentFieldPopulator = (await ethers.getSigners())[2]; + } + + // Populate the repayment field with data + console.log("STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); + console.log("-".repeat(50)); + await populateBeanstalkField({ + diamondAddress: L2_PINTO, + account: repaymentFieldPopulator, + verbose: verbose + }); + console.log(" Beanstalk field initialized\n"); + } + ); + + ////// STEP 4: FINALIZE THE BEANSTALK SHIPMENTS ////// + // The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed + // At the same time, the new shipment routes that include the payback contracts will need to be set. + // Set mock to false to finalize the beanstalk shipments on base. + // - npx hardhat finalizeBeanstalkShipments --network base + task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setAction( + async (taskArgs) => { + // params + const mock = true; + + // Use any account for diamond cuts + let owner; + if (mock) { + owner = await impersonateSigner(L2_PCM); + await mintEth(owner.address); + } else { + owner = (await ethers.getSigners())[0]; + } + + // Step 4: Update shipment routes, create new field and remove the TempRepaymentFieldFacet + // The SeasonFacet will also need to be updated since LibReceiving was modified. + // Selectors removed: + // 0x31f2cd56: REPAYMENT_FIELD_ID() + // 0x49e40d6c: REPAYMENT_FIELD_POPULATOR() + // 0x1fd620f9: initializeRepaymentPlots() + console.log("\nSTEP 4: UPDATING SHIPMENT ROUTES, CREATING NEW FIELD AND REMOVING TEMP FACET"); + const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; + const routes = JSON.parse(fs.readFileSync(routesPath)); + + await upgradeWithNewFacets({ + diamondAddress: L2_PINTO, + facetNames: ["SeasonFacet", "TokenHookFacet", "ShipmentPlannerFacet"], + libraryNames: [ "LibEvaluate", "LibGauge", "LibIncentive", @@ -249,123 +232,149 @@ task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setActio "LibFlood", "LibGerminate", "LibWeather" - ] - }, - initFacetName: "InitBeanstalkShipments", - initArgs: [routes, BEANSTALK_SILO_PAYBACK], - selectorsToRemove: ["0x31f2cd56", "0x49e40d6c", "0x1fd620f9"], - verbose: true, - object: !mock, - account: owner - }); - console.log(" Shipment routes updated and new field created\n"); - } -); - -////// STEP 5: TRANSFER OWNERSHIP OF PAYBACK CONTRACTS TO THE PCM ////// -// The deployer will need to transfer ownership of the payback contracts to the PCM -// - npx hardhat transferContractOwnership --network base -// Set mock to false to transfer ownership of the payback contracts to the PCM on base. -// The owner is the deployer account at 0x47c365cc9ef51052651c2be22f274470ad6afc53 -task( - "transferPaybackContractOwnership", - "transfers ownership of the payback contracts to the PCM" -).setAction(async (taskArgs) => { - const mock = true; - const verbose = true; - - let deployer; - if (mock) { - deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[0]; - } - - const siloPaybackContract = await ethers.getContractAt("SiloPayback", BEANSTALK_SILO_PAYBACK); - const barnPaybackContract = await ethers.getContractAt("BarnPayback", BEANSTALK_BARN_PAYBACK); - const contractPaybackDistributorContract = await ethers.getContractAt( - "ContractPaybackDistributor", - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR - ); - - await transferContractOwnership({ - siloPaybackContract: siloPaybackContract, - barnPaybackContract: barnPaybackContract, - contractPaybackDistributorContract: contractPaybackDistributorContract, - L2_PCM: L2_PCM, - verbose: verbose - }); -}); - -////// SEQUENTIAL ORCHESTRATION TASK ////// -// Runs all beanstalk shipment tasks in the correct sequential order -// Note: deployL1ContractMessenger should be run separately on mainnet before this -// - npx hardhat runBeanstalkShipments --network base -task( - "runBeanstalkShipments", - "Runs all beanstalk shipment deployment steps in sequential order" -) - .addOptionalParam("skipPause", "Set to true to skip pauses between steps", false, types.boolean) - .setAction(async (taskArgs) => { - console.log("\nšŸš€ STARTING BEANSTALK SHIPMENTS DEPLOYMENT"); - console.log("=".repeat(60)); - - // Helper function for pausing, only if !skipPause - async function pauseIfNeeded(message = "Press Enter to continue...") { - if (taskArgs.skipPause) { - return; - } - console.log(message); - await new Promise((resolve) => { - process.stdin.resume(); - process.stdin.once("data", () => { - process.stdin.pause(); - resolve(); - }); + ], + facetLibraries: { + SeasonFacet: [ + "LibEvaluate", + "LibGauge", + "LibIncentive", + "LibShipping", + "LibWellMinting", + "LibFlood", + "LibGerminate", + "LibWeather" + ] + }, + initFacetName: "InitBeanstalkShipments", + initArgs: [routes, BEANSTALK_SILO_PAYBACK], + selectorsToRemove: ["0x31f2cd56", "0x49e40d6c", "0x1fd620f9"], + verbose: true, + object: !mock, + account: owner }); + console.log(" Shipment routes updated and new field created\n"); } + ); + + ////// STEP 5: TRANSFER OWNERSHIP OF PAYBACK CONTRACTS TO THE PCM ////// + // The deployer will need to transfer ownership of the payback contracts to the PCM + // - npx hardhat transferContractOwnership --network base + // Set mock to false to transfer ownership of the payback contracts to the PCM on base. + // The owner is the deployer account at 0x47c365cc9ef51052651c2be22f274470ad6afc53 + task( + "transferPaybackContractOwnership", + "transfers ownership of the payback contracts to the PCM" + ).setAction(async (taskArgs) => { + const mock = true; + const verbose = true; - try { - // Step 0: Parse Export Data - console.log("\nšŸ“Š Running Step 0: Parse Export Data"); - await hre.run("parseExportData"); - - // Step 1: Deploy Payback Contracts - console.log("\nšŸ“¦ Running Step 1: Deploy Payback Contracts"); - await hre.run("deployPaybackContracts"); - - // Step 2: Deploy Temp Field Facet - console.log("\nšŸ”§ Running Step 2: Deploy Temp Field Facet"); - await hre.run("deployTempFieldFacet"); - console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); - await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to continue after multisig execution..."); - - // Step 3: Populate Repayment Field - console.log("\n🌾 Running Step 3: Populate Repayment Field"); - await hre.run("populateRepaymentField"); - console.log("\nāš ļø PAUSE: Proceed with the multisig as needed before moving to the next step"); - await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to continue after necessary approvals..."); - - // Step 4: Finalize Beanstalk Shipments - console.log("\nšŸŽÆ Running Step 4: Finalize Beanstalk Shipments"); - await hre.run("finalizeBeanstalkShipments"); - console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); - await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to continue after multisig execution..."); - - // Step 5: Transfer Contract Ownership - console.log("\nšŸ” Running Step 5: Transfer Contract Ownership"); - await hre.run("transferPaybackContractOwnership"); - console.log("\nāš ļø PAUSE: Ownership transfer completed. Proceed with validations as required."); - await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to finish..."); - - console.log("\n" + "=".repeat(60)); - console.log("āœ… BEANSTALK SHIPMENTS DEPLOYMENT COMPLETED SUCCESSFULLY!"); - console.log("=".repeat(60) + "\n"); - } catch (error) { - console.error("\nāŒ ERROR: Beanstalk Shipments deployment failed:", error.message); - throw error; + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; } + + const siloPaybackContract = await ethers.getContractAt("SiloPayback", BEANSTALK_SILO_PAYBACK); + const barnPaybackContract = await ethers.getContractAt("BarnPayback", BEANSTALK_BARN_PAYBACK); + const contractPaybackDistributorContract = await ethers.getContractAt( + "ContractPaybackDistributor", + BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR + ); + + await transferContractOwnership({ + siloPaybackContract: siloPaybackContract, + barnPaybackContract: barnPaybackContract, + contractPaybackDistributorContract: contractPaybackDistributorContract, + deployer: deployer, + newOwner: L2_PCM, + verbose: verbose + }); }); + ////// SEQUENTIAL ORCHESTRATION TASK ////// + // Runs all beanstalk shipment tasks in the correct sequential order + // Note: deployL1ContractMessenger should be run separately on mainnet before this + // - npx hardhat runBeanstalkShipments --network base + task("runBeanstalkShipments", "Runs all beanstalk shipment deployment steps in sequential order") + .addOptionalParam("skipPause", "Set to true to skip pauses between steps", false, types.boolean) + .addOptionalParam( + "runStep0", + "Set to true to run Step 0: Parse Export Data", + false, + types.boolean + ) + .setAction(async (taskArgs) => { + console.log("\nšŸš€ STARTING BEANSTALK SHIPMENTS DEPLOYMENT"); + console.log("=".repeat(60)); + + // Helper function for pausing, only if !skipPause + async function pauseIfNeeded(message = "Press Enter to continue...") { + if (taskArgs.skipPause) { + return; + } + console.log(message); + await new Promise((resolve) => { + process.stdin.resume(); + process.stdin.once("data", () => { + process.stdin.pause(); + resolve(); + }); + }); + } + + try { + // Step 0: Parse Export Data (optional) + if (taskArgs.runStep0) { + console.log("\nšŸ“Š Running Step 0: Parse Export Data"); + await hre.run("parseExportData"); + } + + // Step 1: Deploy Payback Contracts + console.log("\nšŸ“¦ Running Step 1: Deploy Payback Contracts"); + await hre.run("deployPaybackContracts"); + + // Step 2: Deploy Temp Field Facet + console.log("\nšŸ”§ Running Step 2: Deploy Temp Field Facet"); + await hre.run("deployTempFieldFacet"); + console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); + await pauseIfNeeded( + "Press Ctrl+C to stop, or press Enter to continue after multisig execution..." + ); + + // Step 3: Populate Repayment Field + console.log("\n🌾 Running Step 3: Populate Repayment Field"); + await hre.run("populateRepaymentField"); + console.log( + "\nāš ļø PAUSE: Proceed with the multisig as needed before moving to the next step" + ); + await pauseIfNeeded( + "Press Ctrl+C to stop, or press Enter to continue after necessary approvals..." + ); + + // Step 4: Finalize Beanstalk Shipments + console.log("\nšŸŽÆ Running Step 4: Finalize Beanstalk Shipments"); + await hre.run("finalizeBeanstalkShipments"); + console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); + await pauseIfNeeded( + "Press Ctrl+C to stop, or press Enter to continue after multisig execution..." + ); + + // Step 5: Transfer Contract Ownership + console.log("\nšŸ” Running Step 5: Transfer Contract Ownership"); + await hre.run("transferPaybackContractOwnership"); + console.log( + "\nāš ļø PAUSE: Ownership transfer completed. Proceed with validations as required." + ); + await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to finish..."); + + console.log("\n" + "=".repeat(60)); + console.log("āœ… BEANSTALK SHIPMENTS DEPLOYMENT COMPLETED SUCCESSFULLY!"); + console.log("=".repeat(60) + "\n"); + } catch (error) { + console.error("\nāŒ ERROR: Beanstalk Shipments deployment failed:", error.message); + throw error; + } + }); }; From 3a46f9526e17566cc1c470ee0e587fa9c74f850e Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 19 Nov 2025 17:03:40 -0500 Subject: [PATCH 177/270] feat: Add Foundry configuration and migrate Beanstalk Shipments testing to Foundry framework --- hardhat.config.js | 37 ++++++++----------------------------- 1 file changed, 8 insertions(+), 29 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index 111ef501..ac332804 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -11,36 +11,15 @@ require("@nomiclabs/hardhat-etherscan"); // Import task modules require("./tasks")(); -// used in the UI to run the latest upgrade +// used in the UI to run the latest upgrade. +// NOTE: when forking with anvil, one should run it with +// 1) disable gas limit, +// 2) no rate limit, +// 3) threads 0 +// 4) at a block number (to make subsequent deployments faster). +// - anvil --fork-url -disable-gas-limit --no-rate-limit --threads 0 --fork-block-number task("runLatestUpgrade", "Compiles the contracts").setAction(async function () { - const order = true; - // compile contracts. - await hre.run("compile"); - // deploy PI-13 - await hre.run("PI-13"); - - // Setup LP tokens for test addresses BEFORE running many sunrises - if (order) { - console.log("Setting up LP tokens for test addresses..."); - await hre.run("setup-convert-up-addresses"); - // increase the seeds, call sunrise. - await hre.run("mock-seeds"); - await hre.run("callSunrise"); - } - - // deploy convert up blueprint - // dev: should be deployed to : 0x53B7cF2a4A18062aFF4fA71Bb300F6eA2d3702E2 for testing purposes. - await hre.run("deployConvertUpBlueprint"); - - // Now sign and publish the convert up blueprints with grown stalk available - if (order) { - console.log("Signing and publishing convert up blueprints..."); - await hre.run("create-mock-convert-up-orders", { - execute: true, - skipSetup: true // Skip LP token setup since we already did it - }); - await hre.run("callSunrise"); - } + await hre.run("runBeanstalkShipments", { skipPause: true, runStep0: false }); }); //////////////////////// CONFIGURATION //////////////////////// From 5cfd896bbf4fa973af97a2e749791adf54eb1835 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 19 Nov 2025 17:20:48 -0500 Subject: [PATCH 178/270] feat: Update LibDiamond to use Diamond storage pattern for facet selectors mapping --- contracts/libraries/LibDiamond.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/libraries/LibDiamond.sol b/contracts/libraries/LibDiamond.sol index 05ab2f33..1c6a770b 100644 --- a/contracts/libraries/LibDiamond.sol +++ b/contracts/libraries/LibDiamond.sol @@ -3,7 +3,7 @@ */ pragma solidity ^0.8.20; -/** +/* * \ * Author: Nick Mudge (https://twitter.com/mudgen) * EIP-2535 Diamonds: https://eips.ethereum.org/EIPS/eip-2535 From fd674a2827fb22b0f5975614bb1a9086a935187d Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sat, 6 Dec 2025 17:44:27 +0000 Subject: [PATCH 179/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol | 5 ++++- test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol | 5 +---- test/foundry/field/Field.t.sol | 1 - test/foundry/utils/TestHelper.sol | 1 - 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index 47f76991..bd5b2a1d 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -257,7 +257,10 @@ abstract contract SowBlueprintBase is BlueprintBase { */ function _validateSowParams(SowBlueprintStruct memory params) internal view { // Validate source tokens (inline since base version requires calldata) - require(params.sowParams.sourceTokenIndices.length > 0, "Must provide at least one source token"); + require( + params.sowParams.sourceTokenIndices.length > 0, + "Must provide at least one source token" + ); // Require that maxAmountToSowPerSeason > 0 require( diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index fce908a8..5174c0b0 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -51,10 +51,7 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { vm.label(address(beanstalkPrice), "BeanstalkPrice"); // Deploy TractorHelpers (2 args: beanstalk, beanstalkPrice) - tractorHelpers = new TractorHelpers( - address(bs), - address(beanstalkPrice) - ); + tractorHelpers = new TractorHelpers(address(bs), address(beanstalkPrice)); vm.label(address(tractorHelpers), "TractorHelpers"); // Deploy SiloHelpers (3 args: beanstalk, tractorHelpers, priceManipulation) diff --git a/test/foundry/field/Field.t.sol b/test/foundry/field/Field.t.sol index efd111cf..6c49d112 100644 --- a/test/foundry/field/Field.t.sol +++ b/test/foundry/field/Field.t.sol @@ -673,7 +673,6 @@ contract FieldTest is TestHelper { bs.transferPlots(farmers[0], farmers[1], activeField, indexes, starts, ends); } - /////////// Merge plots /////////// /** diff --git a/test/foundry/utils/TestHelper.sol b/test/foundry/utils/TestHelper.sol index 9418e74f..c7406719 100644 --- a/test/foundry/utils/TestHelper.sol +++ b/test/foundry/utils/TestHelper.sol @@ -967,6 +967,5 @@ contract TestHelper is nonBeanReserves = 10_000e6; setReservesForPrice(BEAN_USDC_WELL, targetPrice, nonBeanReserves, true); } - } } From 570ed9267b80cd5b2c0331b2223d3859e1aada86 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 7 Dec 2025 12:10:52 +0300 Subject: [PATCH 180/270] Refactor MowPlantHarvestBlueprint to use operator-provided harvest data via transient storage, eliminating O(n) on-chain plot iteration --- .../ecosystem/MowPlantHarvestBlueprint.sol | 138 ++++++++++++------ contracts/interfaces/IBeanstalk.sol | 2 + .../ecosystem/MowPlantHarvestBlueprint.t.sol | 58 ++++++-- test/foundry/utils/TractorTestHelper.sol | 102 +++++++++++++ 4 files changed, 247 insertions(+), 53 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 7f3493c0..2297eeef 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -18,6 +18,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { */ uint256 public constant MINUTES_AFTER_SUNRISE = 55 minutes; + /** + * @dev Key for operator-provided harvest data in transient storage + * The key format is: HARVEST_DATA_KEY + fieldId + */ + uint256 public constant HARVEST_DATA_KEY = uint256(keccak256("MowPlantHarvestBlueprint.harvestData")); + /** * @notice Main struct for mow, plant and harvest blueprint * @param mowPlantHarvestParams Parameters related to mow, plant and harvest @@ -50,6 +56,19 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256[] harvestablePlots; } + /** + * @notice Struct for operator-provided harvest data via dynamic calldata + * @dev Operator passes this via tractorDynamicData to avoid on-chain plot iteration + * @param fieldId The field ID this data is for + * @param harvestablePlotIndexes Array of harvestable plot indexes + * @param totalHarvestablePods Pre-calculated total harvestable pods + */ + struct OperatorHarvestData { + uint256 fieldId; + uint256[] harvestablePlotIndexes; + uint256 totalHarvestablePods; + } + /** * @notice Struct to hold mow, plant and harvest parameters * @param minMowAmount The minimum total claimable stalk threshold to mow @@ -314,8 +333,10 @@ contract MowPlantHarvestBlueprint is BlueprintBase { /** * @notice helper function to get the user state to compare against parameters - * @dev Increasing the total claimable stalk when planting or harvesting does not really matter - * since we mow by default if we plant or harvest + * @dev Uses operator-provided harvest data from transient storage. + * Reverts if no data is provided. + * Increasing the total claimable stalk when planting or harvesting does not really matter + * since we mow by default if we plant or harvest. */ function _getUserState( address account, @@ -343,65 +364,94 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // check if user has plantable beans totalPlantableBeans = beanstalk.balanceOfEarnedBeans(account); - // for every field id, check if user has harvestable beans and append results + // for every field id, read operator-provided harvest data via dynamic calldata userFieldHarvestResults = new UserFieldHarvestResults[](fieldHarvestConfigs.length); for (uint256 i = 0; i < fieldHarvestConfigs.length; i++) { - userFieldHarvestResults[i] = _userHarvestablePods( - account, - fieldHarvestConfigs[i].fieldId + uint256 fieldId = fieldHarvestConfigs[i].fieldId; + + // Read operator-provided data from transient storage + bytes memory operatorData = beanstalk.getTractorData(HARVEST_DATA_KEY + fieldId); + + // Operator must provide harvest data for each configured field + require( + operatorData.length > 0, + "MowPlantHarvestBlueprint: Missing operator harvest data" ); + + // Decode operator-provided harvest data + OperatorHarvestData memory harvestData = abi.decode( + operatorData, + (OperatorHarvestData) + ); + + // Validate the operator-provided data + _validateOperatorHarvestData(account, fieldId, harvestData); + + // Use validated operator data + userFieldHarvestResults[i] = UserFieldHarvestResults({ + fieldId: fieldId, + totalHarvestablePods: harvestData.totalHarvestablePods, + harvestablePlots: harvestData.harvestablePlotIndexes + }); } return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestResults); } + /** - * @notice Helper function to get the total harvestable pods and plots for a user for a given field - * @param account The address of the user - * @param fieldId The field ID to check for harvestable pods - * @return userFieldHarvestResults A struct containing the total harvestable pods and plots for the given field + * @notice Validates operator-provided harvest data + * @dev Ensures plots exist, belong to the account, and are actually harvestable + * @param account The account that owns the plots + * @param expectedFieldId The field ID we expect the data to be for + * @param harvestData Operator-provided harvest data to validate */ - function _userHarvestablePods( + function _validateOperatorHarvestData( address account, - uint256 fieldId - ) internal view returns (UserFieldHarvestResults memory userFieldHarvestResults) { - // get field info and plot count directly - uint256[] memory plotIndexes = beanstalk.getPlotIndexesFromAccount(account, fieldId); - uint256 harvestableIndex = beanstalk.harvestableIndex(fieldId); - - if (plotIndexes.length == 0) return userFieldHarvestResults; - - // initialize array with full length and init field id - userFieldHarvestResults.fieldId = fieldId; - uint256[] memory harvestablePlots = new uint256[](plotIndexes.length); - uint256 harvestableCount; - - // single loop to process all plot indexes directly - for (uint256 i = 0; i < plotIndexes.length; i++) { - uint256 startIndex = plotIndexes[i]; - uint256 plotPods = beanstalk.plot(account, fieldId, startIndex); - - if (startIndex + plotPods <= harvestableIndex) { + uint256 expectedFieldId, + OperatorHarvestData memory harvestData + ) internal view { + // Verify operator provided data for the correct field + require( + harvestData.fieldId == expectedFieldId, + "MowPlantHarvestBlueprint: Field ID mismatch" + ); + + uint256 harvestableIndex = beanstalk.harvestableIndex(harvestData.fieldId); + uint256 calculatedTotalPods = 0; + + for (uint256 i = 0; i < harvestData.harvestablePlotIndexes.length; i++) { + uint256 plotIndex = harvestData.harvestablePlotIndexes[i]; + uint256 plotPods = beanstalk.plot(account, harvestData.fieldId, plotIndex); + + // Verify plot exists and belongs to account + require(plotPods > 0, "MowPlantHarvestBlueprint: Invalid plot index"); + + // Verify plot is harvestable (at least partially) + require( + plotIndex < harvestableIndex, + "MowPlantHarvestBlueprint: Plot not harvestable" + ); + + // Calculate actual harvestable pods for this plot + if (plotIndex + plotPods <= harvestableIndex) { // Fully harvestable - harvestablePlots[harvestableCount] = startIndex; - userFieldHarvestResults.totalHarvestablePods += plotPods; - harvestableCount++; - } else if (startIndex < harvestableIndex) { + calculatedTotalPods += plotPods; + } else { // Partially harvestable - harvestablePlots[harvestableCount] = startIndex; - userFieldHarvestResults.totalHarvestablePods += harvestableIndex - startIndex; - harvestableCount++; + calculatedTotalPods += harvestableIndex - plotIndex; } } - - // resize array to actual harvestable plots count - assembly { - mstore(harvestablePlots, harvestableCount) - } - // assign the harvestable plots to the user field harvest params - userFieldHarvestResults.harvestablePlots = harvestablePlots; + + // Verify operator's total matches calculated total + require( + calculatedTotalPods == harvestData.totalHarvestablePods, + "MowPlantHarvestBlueprint: Invalid total harvestable pods" + ); } + + /** * @dev validates the parameters for the mow, plant and harvest operation */ diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 0e85a861..7d1d49d8 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -224,6 +224,8 @@ interface IBeanstalk { function tractorUser() external view returns (address payable); + function getTractorData(uint256 key) external view returns (bytes memory); + function transferDeposits( address sender, address recipient, diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 5174c0b0..98c4a085 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -164,13 +164,16 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); + // Pre-calculate harvest data BEFORE expectRevert (to avoid consuming the expectation) + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(state.user); + // Try to execute before the last minutes of the season, expect revert vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); - executeRequisition(state.operator, req, address(bs)); + executeRequisitionWithDynamicData(state.operator, req, address(bs), dynamicData); // Try to execute after in last minutes of the season vm.warp(bs.getNextSeasonStart() - 1 seconds); - executeRequisition(state.operator, req, address(bs)); + executeWithHarvestData(state.operator, state.user, req); // assert all grown stalk was mowed uint256 userGrownStalkAfterMow = bs.balanceOfGrownStalk(state.user, state.beanToken); @@ -209,9 +212,12 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); + // Pre-calculate harvest data BEFORE expectRevert + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(state.user); + // Execute requisition, expect revert vm.expectRevert("Min plant amount must be greater than plant tip amount"); - executeRequisition(state.operator, req, address(bs)); + executeRequisitionWithDynamicData(state.operator, req, address(bs), dynamicData); } function test_mowPlantHarvestBlueprint_plant_revertWhenInsufficientPlantableBeans() public { @@ -237,9 +243,12 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); + // Pre-calculate harvest data BEFORE expectRevert + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(state.user); + // Execute requisition, expect revert vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); - executeRequisition(state.operator, req, address(bs)); + executeRequisitionWithDynamicData(state.operator, req, address(bs), dynamicData); } function test_mowPlantHarvestBlueprint_plant_success() public { @@ -274,7 +283,7 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { // Execute requisition, expect plant event vm.expectEmit(); emit Plant(state.user, 1933023687); - executeRequisition(state.operator, req, address(bs)); + executeWithHarvestData(state.operator, state.user, req); // Verify state changes after successful plant uint256 userTotalStalkAfterPlant = bs.balanceOfStalk(state.user); @@ -311,9 +320,12 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv ); + // Pre-calculate harvest data BEFORE expectRevert + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(state.user); + // Execute requisition, expect revert vm.expectRevert("Min harvest amount must be greater than harvest tip amount"); - executeRequisition(state.operator, req, address(bs)); + executeRequisitionWithDynamicData(state.operator, req, address(bs), dynamicData); } function test_mowPlantHarvestBlueprint_harvest_partialHarvest() public { @@ -354,7 +366,7 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { // Execute requisition, expect harvest event vm.expectEmit(); emit Harvest(state.user, bs.activeField(), harvestablePlots, 488088481); - executeRequisition(state.operator, req, address(bs)); + executeWithHarvestData(state.operator, state.user, req); // Verify state changes after partial harvest uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); @@ -403,7 +415,7 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { // Execute requisition, expect harvest event vm.expectEmit(); emit Harvest(state.user, bs.activeField(), harvestablePlots, 1000100000); - executeRequisition(state.operator, req, address(bs)); + executeWithHarvestData(state.operator, state.user, req); // Verify state changes after full harvest uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); @@ -469,7 +481,7 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { vm.expectEmit(); emit Harvest(state.user, DEFAULT_FIELD_ID, field0HarvestablePlots, 1000100000); emit Harvest(state.user, PAYBACK_FIELD_ID, field1HarvestablePlots, 250e6); - executeRequisition(state.operator, req, address(bs)); + executeWithHarvestData(state.operator, state.user, req); // Verify state changes after full harvest uint256 userTotalBdvAfterHarvest = bs.balanceOfDepositedBdv(state.user, state.beanToken); @@ -575,4 +587,32 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { advanceSeason(); advanceSeason(); } + + /** + * @notice Get harvest dynamic data for both fields + * @dev Must be called BEFORE vm.expectRevert to avoid consuming the revert expectation + */ + function getHarvestDynamicDataForUser( + address user + ) internal view returns (IMockFBeanstalk.ContractData[] memory) { + uint256[] memory fieldIds = new uint256[](2); + fieldIds[0] = DEFAULT_FIELD_ID; + fieldIds[1] = PAYBACK_FIELD_ID; + return createHarvestDynamicData(user, fieldIds); + } + + /** + * @notice Execute a requisition with harvest dynamic data for both fields + * @dev Creates harvest data for DEFAULT_FIELD_ID (0) and PAYBACK_FIELD_ID (1) + */ + function executeWithHarvestData( + address operator, + address user, + IMockFBeanstalk.Requisition memory req + ) internal { + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(user); + executeRequisitionWithDynamicData(operator, req, address(bs), dynamicData); + } } + + diff --git a/test/foundry/utils/TractorTestHelper.sol b/test/foundry/utils/TractorTestHelper.sol index a7b85881..9c8ef6ea 100644 --- a/test/foundry/utils/TractorTestHelper.sol +++ b/test/foundry/utils/TractorTestHelper.sol @@ -11,6 +11,7 @@ import {SiloHelpers} from "contracts/ecosystem/tractor/utils/SiloHelpers.sol"; import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; import {MowPlantHarvestBlueprint} from "contracts/ecosystem/MowPlantHarvestBlueprint.sol"; import {BlueprintBase} from "contracts/ecosystem/BlueprintBase.sol"; +import {LibTractor} from "contracts/libraries/LibTractor.sol"; import "forge-std/console.sol"; contract TractorTestHelper is TestHelper { @@ -131,6 +132,107 @@ contract TractorTestHelper is TestHelper { ); } + /** + * @notice Execute a requisition with dynamic contract data + * @param user The operator executing the requisition + * @param req The requisition to execute + * @param beanstalkAddress The Beanstalk address + * @param dynamicData Array of ContractData for transient storage + */ + function executeRequisitionWithDynamicData( + address user, + IMockFBeanstalk.Requisition memory req, + address beanstalkAddress, + IMockFBeanstalk.ContractData[] memory dynamicData + ) internal { + vm.prank(user); + IMockFBeanstalk(beanstalkAddress).tractorDynamicData( + IMockFBeanstalk.Requisition(req.blueprint, req.blueprintHash, req.signature), + "", + dynamicData + ); + } + + /** + * @notice Create ContractData for harvest operations + * @param account The account to query harvestable plots for + * @param fieldIds Array of field IDs to create harvest data for + * @return dynamicData Array of ContractData containing harvest information + */ + function createHarvestDynamicData( + address account, + uint256[] memory fieldIds + ) internal view returns (IMockFBeanstalk.ContractData[] memory dynamicData) { + dynamicData = new IMockFBeanstalk.ContractData[](fieldIds.length); + + for (uint256 i = 0; i < fieldIds.length; i++) { + uint256 fieldId = fieldIds[i]; + + // Get harvestable plot data + MowPlantHarvestBlueprint.OperatorHarvestData memory harvestData = + _getOperatorHarvestData(account, fieldId); + + // Create ContractData with key = HARVEST_DATA_KEY + fieldId + uint256 key = mowPlantHarvestBlueprint.HARVEST_DATA_KEY() + fieldId; + dynamicData[i] = IMockFBeanstalk.ContractData({ + key: key, + value: abi.encode(harvestData) + }); + } + } + + /** + * @notice Calculate harvestable plots for a given account and field + * @dev Simulates what operator would calculate off-chain + */ + function _getOperatorHarvestData( + address account, + uint256 fieldId + ) internal view returns (MowPlantHarvestBlueprint.OperatorHarvestData memory harvestData) { + // Get plot indexes for the account + uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, fieldId); + uint256 harvestableIndex = bs.harvestableIndex(fieldId); + + if (plotIndexes.length == 0) { + harvestData.fieldId = fieldId; + harvestData.harvestablePlotIndexes = new uint256[](0); + harvestData.totalHarvestablePods = 0; + return harvestData; + } + + // Temporary array to collect harvestable plots + uint256[] memory tempPlots = new uint256[](plotIndexes.length); + uint256 harvestableCount = 0; + uint256 totalPods = 0; + + for (uint256 i = 0; i < plotIndexes.length; i++) { + uint256 plotIndex = plotIndexes[i]; + uint256 plotPods = bs.plot(account, fieldId, plotIndex); + + if (plotIndex + plotPods <= harvestableIndex) { + // Fully harvestable + tempPlots[harvestableCount] = plotIndex; + totalPods += plotPods; + harvestableCount++; + } else if (plotIndex < harvestableIndex) { + // Partially harvestable + tempPlots[harvestableCount] = plotIndex; + totalPods += harvestableIndex - plotIndex; + harvestableCount++; + } + } + + // Resize to actual count + uint256[] memory harvestablePlots = new uint256[](harvestableCount); + for (uint256 i = 0; i < harvestableCount; i++) { + harvestablePlots[i] = tempPlots[i]; + } + + harvestData.fieldId = fieldId; + harvestData.harvestablePlotIndexes = harvestablePlots; + harvestData.totalHarvestablePods = totalPods; + } + // Helper function to sign blueprints function signBlueprint(bytes32 hash, uint256 pk) internal returns (bytes memory) { (uint8 v, bytes32 r, bytes32 s) = vm.sign(pk, hash); From 6dbd4fb5392819b0dbd73b08f6affaf00ffeed04 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sun, 7 Dec 2025 09:12:23 +0000 Subject: [PATCH 181/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/MowPlantHarvestBlueprint.sol | 33 ++++++++----------- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 18 ++++++---- test/foundry/utils/TractorTestHelper.sol | 22 ++++++------- 3 files changed, 37 insertions(+), 36 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 2297eeef..e49e4ab1 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -22,7 +22,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @dev Key for operator-provided harvest data in transient storage * The key format is: HARVEST_DATA_KEY + fieldId */ - uint256 public constant HARVEST_DATA_KEY = uint256(keccak256("MowPlantHarvestBlueprint.harvestData")); + uint256 public constant HARVEST_DATA_KEY = + uint256(keccak256("MowPlantHarvestBlueprint.harvestData")); /** * @notice Main struct for mow, plant and harvest blueprint @@ -368,25 +369,25 @@ contract MowPlantHarvestBlueprint is BlueprintBase { userFieldHarvestResults = new UserFieldHarvestResults[](fieldHarvestConfigs.length); for (uint256 i = 0; i < fieldHarvestConfigs.length; i++) { uint256 fieldId = fieldHarvestConfigs[i].fieldId; - + // Read operator-provided data from transient storage bytes memory operatorData = beanstalk.getTractorData(HARVEST_DATA_KEY + fieldId); - + // Operator must provide harvest data for each configured field require( operatorData.length > 0, "MowPlantHarvestBlueprint: Missing operator harvest data" ); - + // Decode operator-provided harvest data OperatorHarvestData memory harvestData = abi.decode( operatorData, (OperatorHarvestData) ); - + // Validate the operator-provided data _validateOperatorHarvestData(account, fieldId, harvestData); - + // Use validated operator data userFieldHarvestResults[i] = UserFieldHarvestResults({ fieldId: fieldId, @@ -398,7 +399,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestResults); } - /** * @notice Validates operator-provided harvest data * @dev Ensures plots exist, belong to the account, and are actually harvestable @@ -416,23 +416,20 @@ contract MowPlantHarvestBlueprint is BlueprintBase { harvestData.fieldId == expectedFieldId, "MowPlantHarvestBlueprint: Field ID mismatch" ); - + uint256 harvestableIndex = beanstalk.harvestableIndex(harvestData.fieldId); uint256 calculatedTotalPods = 0; - + for (uint256 i = 0; i < harvestData.harvestablePlotIndexes.length; i++) { uint256 plotIndex = harvestData.harvestablePlotIndexes[i]; uint256 plotPods = beanstalk.plot(account, harvestData.fieldId, plotIndex); - + // Verify plot exists and belongs to account require(plotPods > 0, "MowPlantHarvestBlueprint: Invalid plot index"); - + // Verify plot is harvestable (at least partially) - require( - plotIndex < harvestableIndex, - "MowPlantHarvestBlueprint: Plot not harvestable" - ); - + require(plotIndex < harvestableIndex, "MowPlantHarvestBlueprint: Plot not harvestable"); + // Calculate actual harvestable pods for this plot if (plotIndex + plotPods <= harvestableIndex) { // Fully harvestable @@ -442,7 +439,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { calculatedTotalPods += harvestableIndex - plotIndex; } } - + // Verify operator's total matches calculated total require( calculatedTotalPods == harvestData.totalHarvestablePods, @@ -450,8 +447,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ); } - - /** * @dev validates the parameters for the mow, plant and harvest operation */ diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index 98c4a085..f483a50d 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -165,7 +165,9 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { ); // Pre-calculate harvest data BEFORE expectRevert (to avoid consuming the expectation) - IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(state.user); + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser( + state.user + ); // Try to execute before the last minutes of the season, expect revert vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); @@ -213,7 +215,9 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { ); // Pre-calculate harvest data BEFORE expectRevert - IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(state.user); + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser( + state.user + ); // Execute requisition, expect revert vm.expectRevert("Min plant amount must be greater than plant tip amount"); @@ -244,7 +248,9 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { ); // Pre-calculate harvest data BEFORE expectRevert - IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(state.user); + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser( + state.user + ); // Execute requisition, expect revert vm.expectRevert("MowPlantHarvestBlueprint: None of the order conditions are met"); @@ -321,7 +327,9 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { ); // Pre-calculate harvest data BEFORE expectRevert - IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser(state.user); + IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser( + state.user + ); // Execute requisition, expect revert vm.expectRevert("Min harvest amount must be greater than harvest tip amount"); @@ -614,5 +622,3 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { executeRequisitionWithDynamicData(operator, req, address(bs), dynamicData); } } - - diff --git a/test/foundry/utils/TractorTestHelper.sol b/test/foundry/utils/TractorTestHelper.sol index 9c8ef6ea..957f8b98 100644 --- a/test/foundry/utils/TractorTestHelper.sol +++ b/test/foundry/utils/TractorTestHelper.sol @@ -164,14 +164,14 @@ contract TractorTestHelper is TestHelper { uint256[] memory fieldIds ) internal view returns (IMockFBeanstalk.ContractData[] memory dynamicData) { dynamicData = new IMockFBeanstalk.ContractData[](fieldIds.length); - + for (uint256 i = 0; i < fieldIds.length; i++) { uint256 fieldId = fieldIds[i]; - + // Get harvestable plot data - MowPlantHarvestBlueprint.OperatorHarvestData memory harvestData = - _getOperatorHarvestData(account, fieldId); - + MowPlantHarvestBlueprint.OperatorHarvestData + memory harvestData = _getOperatorHarvestData(account, fieldId); + // Create ContractData with key = HARVEST_DATA_KEY + fieldId uint256 key = mowPlantHarvestBlueprint.HARVEST_DATA_KEY() + fieldId; dynamicData[i] = IMockFBeanstalk.ContractData({ @@ -192,23 +192,23 @@ contract TractorTestHelper is TestHelper { // Get plot indexes for the account uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, fieldId); uint256 harvestableIndex = bs.harvestableIndex(fieldId); - + if (plotIndexes.length == 0) { harvestData.fieldId = fieldId; harvestData.harvestablePlotIndexes = new uint256[](0); harvestData.totalHarvestablePods = 0; return harvestData; } - + // Temporary array to collect harvestable plots uint256[] memory tempPlots = new uint256[](plotIndexes.length); uint256 harvestableCount = 0; uint256 totalPods = 0; - + for (uint256 i = 0; i < plotIndexes.length; i++) { uint256 plotIndex = plotIndexes[i]; uint256 plotPods = bs.plot(account, fieldId, plotIndex); - + if (plotIndex + plotPods <= harvestableIndex) { // Fully harvestable tempPlots[harvestableCount] = plotIndex; @@ -221,13 +221,13 @@ contract TractorTestHelper is TestHelper { harvestableCount++; } } - + // Resize to actual count uint256[] memory harvestablePlots = new uint256[](harvestableCount); for (uint256 i = 0; i < harvestableCount; i++) { harvestablePlots[i] = tempPlots[i]; } - + harvestData.fieldId = fieldId; harvestData.harvestablePlotIndexes = harvestablePlots; harvestData.totalHarvestablePods = totalPods; From c5fb7354d2b737665a6de61425feeef35a3273ba Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 7 Dec 2025 12:40:10 +0300 Subject: [PATCH 182/270] fix operator --- contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index bd5b2a1d..dadaaa03 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -445,9 +445,10 @@ abstract contract SowBlueprintBase is BlueprintBase { * @notice Validates operator parameters (memory version for internal calls) */ function _validateOperatorParamsMemory(OperatorParams memory opParams) internal view { + address currentOperator = beanstalk.operator(); bool isWhitelisted = false; for (uint256 i = 0; i < opParams.whitelistedOperators.length; i++) { - if (opParams.whitelistedOperators[i] == msg.sender) { + if (opParams.whitelistedOperators[i] == currentOperator) { isWhitelisted = true; break; } From 49e351e621ce3250b437ff1bcbc549265dc0fa38 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 7 Dec 2025 12:56:57 +0300 Subject: [PATCH 183/270] refactors --- contracts/ecosystem/BlueprintBase.sol | 2 -- .../tractor/blueprints/SowBlueprintBase.sol | 12 +++++++++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/contracts/ecosystem/BlueprintBase.sol b/contracts/ecosystem/BlueprintBase.sol index 13aa4b8f..12437b90 100644 --- a/contracts/ecosystem/BlueprintBase.sol +++ b/contracts/ecosystem/BlueprintBase.sol @@ -1,11 +1,9 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.20; -import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {TractorHelpers} from "contracts/ecosystem/tractor/utils/TractorHelpers.sol"; import {PerFunctionPausable} from "contracts/ecosystem/tractor/utils/PerFunctionPausable.sol"; -import {LibTractorHelpers} from "contracts/libraries/Silo/LibTractorHelpers.sol"; /** * @title BlueprintBase diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index dadaaa03..d1769dc0 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -4,7 +4,6 @@ pragma solidity ^0.8.20; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {BlueprintBase} from "contracts/ecosystem/BlueprintBase.sol"; -import {TractorHelpers} from "../utils/TractorHelpers.sol"; import {LibSiloHelpers} from "contracts/libraries/Silo/LibSiloHelpers.sol"; import {SiloHelpers} from "../utils/SiloHelpers.sol"; @@ -31,6 +30,17 @@ abstract contract SowBlueprintBase is BlueprintBase { /** * @notice Struct to hold local variables for the sow operation to avoid stack too deep errors + * @param beanToken Address of the Bean token + * @param availableSoil Amount of soil available for sowing at time of execution + * @param currentSeason Current season number from Beanstalk + * @param pintoLeftToSow Current value of the order counter + * @param totalBeansNeeded Total amount of beans needed including tip + * @param orderHash Hash of the current blueprint order + * @param beansWithdrawn Amount of beans withdrawn from sources + * @param tipAddress Address to send tip to + * @param account Address of the user's account (current Tractor user), not operator + * @param totalAmountToSow Total amount intended to sow + * @param withdrawalPlan The plan for withdrawing beans */ struct SowLocalVars { address beanToken; From dd85eabf224807a4d59d795d886bac82b161593a Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Tue, 9 Dec 2025 19:48:24 -0500 Subject: [PATCH 184/270] implement stateful gauges --- contracts/libraries/Gauge/LibGaugeHelpers.sol | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/contracts/libraries/Gauge/LibGaugeHelpers.sol b/contracts/libraries/Gauge/LibGaugeHelpers.sol index a4d8b3b8..1302d153 100644 --- a/contracts/libraries/Gauge/LibGaugeHelpers.sol +++ b/contracts/libraries/Gauge/LibGaugeHelpers.sol @@ -183,20 +183,19 @@ library LibGaugeHelpers { */ function callGaugeId(GaugeId gaugeId, bytes memory systemData) internal { AppStorage storage s = LibAppStorage.diamondStorage(); - Gauge memory g = s.sys.gaugeData.gauges[gaugeId]; + // gs = `gauge storage` + Gauge storage gs = s.sys.gaugeData.gauges[gaugeId]; // if the gauge is stateful, call the stateful gauge result. - bytes memory value; - bytes memory data; if (s.sys.gaugeData.stateful[gaugeId]) { - (value, data) = getStatefulGaugeResult(g, systemData); + (gs.value, gs.data) = getStatefulGaugeResult(gs, systemData); } else { - (value, data) = getStatelessGaugeResult(g, systemData); + (gs.value, gs.data) = getStatelessGaugeResult(gs, systemData); } // emit change in gauge value and data - emit Engaged(gaugeId, s.sys.gaugeData.gauges[gaugeId].value); - emit EngagedData(gaugeId, s.sys.gaugeData.gauges[gaugeId].data); + emit Engaged(gaugeId, gs.value); + emit EngagedData(gaugeId, gs.data); } /** From 188da9844d1ff125b8ff5004221013abcb7e6055 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sat, 13 Dec 2025 12:52:18 +0300 Subject: [PATCH 185/270] removed unused import --- contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index d1769dc0..54a74cc9 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -2,7 +2,6 @@ pragma solidity ^0.8.20; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; -import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {BlueprintBase} from "contracts/ecosystem/BlueprintBase.sol"; import {LibSiloHelpers} from "contracts/libraries/Silo/LibSiloHelpers.sol"; import {SiloHelpers} from "../utils/SiloHelpers.sol"; From d1a9aab07952cea5d45a1cb5602f4b4f0787881b Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sat, 13 Dec 2025 13:04:34 +0300 Subject: [PATCH 186/270] order refactors --- .../tractor/blueprints/SowBlueprintBase.sol | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index 54a74cc9..65539ab6 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -97,9 +97,6 @@ abstract contract SowBlueprintBase is BlueprintBase { OperatorParams opParams; } - // Default slippage ratio for LP token withdrawals (1%) - uint256 internal constant DEFAULT_SLIPPAGE_RATIO = 0.01e18; - /** * @notice Blueprint specific struct to hold order info * @param pintoSownCounter Counter for the number of maximum pinto that can be sown from this blueprint @@ -110,6 +107,9 @@ abstract contract SowBlueprintBase is BlueprintBase { uint32 lastExecutedSeason; } + // Default slippage ratio for LP token withdrawals (1%) + uint256 internal constant DEFAULT_SLIPPAGE_RATIO = 0.01e18; + // Combined state mapping for order info mapping(bytes32 => OrderInfo) private orderInfo; @@ -141,20 +141,6 @@ abstract contract SowBlueprintBase is BlueprintBase { return orderInfo[orderHash].lastExecutedSeason; } - /** - * @notice Updates the pinto left to sow counter for a given order hash - */ - function updatePintoLeftToSowCounter(bytes32 orderHash, uint256 newCounter) internal { - orderInfo[orderHash].pintoSownCounter = newCounter; - } - - /** - * @notice Updates the last executed season for a given order hash - */ - function _updateSowLastExecutedSeason(bytes32 orderHash, uint32 season) internal { - orderInfo[orderHash].lastExecutedSeason = season; - } - /** * @notice Internal function containing shared sow blueprint logic * @param params Parameters for sow execution @@ -261,6 +247,20 @@ abstract contract SowBlueprintBase is BlueprintBase { _updateSowLastExecutedSeason(vars.orderHash, vars.currentSeason); } + /** + * @notice Updates the pinto left to sow counter for a given order hash + */ + function updatePintoLeftToSowCounter(bytes32 orderHash, uint256 newCounter) internal { + orderInfo[orderHash].pintoSownCounter = newCounter; + } + + /** + * @notice Updates the last executed season for a given order hash + */ + function _updateSowLastExecutedSeason(bytes32 orderHash, uint32 season) internal { + orderInfo[orderHash].lastExecutedSeason = season; + } + /** * @notice Validates the initial parameters for the sow operation */ From bea7f31aa2361a6c5d6f5b180f88a420aa136195 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sat, 13 Dec 2025 13:44:49 +0300 Subject: [PATCH 187/270] move operator validation to entry points and use BlueprintBase's validation --- .../tractor/blueprints/SowBlueprint.sol | 1 + .../tractor/blueprints/SowBlueprintBase.sol | 18 ------------------ .../blueprints/SowBlueprintReferral.sol | 1 + 3 files changed, 2 insertions(+), 18 deletions(-) diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprint.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprint.sol index 209b8bd8..eb08a974 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprint.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprint.sol @@ -23,6 +23,7 @@ contract SowBlueprint is SowBlueprintBase { function sowBlueprint( SowBlueprintStruct calldata params ) external payable whenFunctionNotPaused { + _validateOperatorParams(params.opParams); _sowBlueprintInternal(params, address(0)); } diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index 65539ab6..d1e9b01a 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -165,9 +165,6 @@ abstract contract SowBlueprintBase is BlueprintBase { vars.withdrawalPlan ) = _validateParamsAndReturnBeanstalkState(params, vars.orderHash, vars.account); - // Check if the executing operator (msg.sender) is whitelisted - _validateOperatorParamsMemory(params.opParams); - // Get tip address. If tip address is not set, set it to the operator vars.tipAddress = _resolveTipAddress(params.opParams.tipAddress); @@ -449,19 +446,4 @@ abstract contract SowBlueprintBase is BlueprintBase { return totalAmountToSow; } - - /** - * @notice Validates operator parameters (memory version for internal calls) - */ - function _validateOperatorParamsMemory(OperatorParams memory opParams) internal view { - address currentOperator = beanstalk.operator(); - bool isWhitelisted = false; - for (uint256 i = 0; i < opParams.whitelistedOperators.length; i++) { - if (opParams.whitelistedOperators[i] == currentOperator) { - isWhitelisted = true; - break; - } - } - require(isWhitelisted, "Operator not whitelisted"); - } } diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintReferral.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintReferral.sol index a698f113..85b86bb5 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintReferral.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintReferral.sol @@ -33,6 +33,7 @@ contract SowBlueprintReferral is SowBlueprintBase { function sowBlueprintReferral( SowReferralBlueprintStruct calldata params ) external payable whenFunctionNotPaused { + _validateOperatorParams(params.params.opParams); _sowBlueprintInternal(params.params, params.referral); } From f6e4e63622309c385496d76c97b3e94325fa80b6 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 14:44:05 +0300 Subject: [PATCH 188/270] make getDefaultFilterParams take maxGrownStalkPerBdv parameter --- .../ecosystem/MowPlantHarvestBlueprint.sol | 5 +++-- .../tractor/blueprints/ConvertUpBlueprint.sol | 10 ++++++---- .../tractor/blueprints/SowBlueprintBase.sol | 10 ++++++---- .../ecosystem/tractor/utils/SiloHelpers.sol | 4 +++- contracts/libraries/Silo/LibSiloHelpers.sol | 9 ++++++--- test/foundry/ecosystem/TractorHelpers.t.sol | 20 +++++++++++-------- test/foundry/utils/TractorTestHelper.sol | 5 +++-- 7 files changed, 39 insertions(+), 24 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index e49e4ab1..3f85b22d 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -501,8 +501,9 @@ contract MowPlantHarvestBlueprint is BlueprintBase { LibSiloHelpers.WithdrawalPlan memory plan ) internal { // Create filter params for the withdrawal plan - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); - filterParams.maxGrownStalkPerBdv = maxGrownStalkPerBdv; + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + maxGrownStalkPerBdv + ); // Check if enough beans are available using getWithdrawalPlan LibSiloHelpers.WithdrawalPlan memory withdrawalPlan = siloHelpers diff --git a/contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol b/contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol index 2d2d06f8..7151ad4f 100644 --- a/contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol +++ b/contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol @@ -229,8 +229,9 @@ contract ConvertUpBlueprint is PerFunctionPausable { // First withdraw Beans from which to tip Operator (using a newer deposit burns less stalk) LibSiloHelpers.WithdrawalPlan memory emptyPlan; - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); - filterParams.maxGrownStalkPerBdv = params.convertUpParams.maxGrownStalkPerBdv; + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + params.convertUpParams.maxGrownStalkPerBdv + ); if (opParams.operatorTipAmount > 0) { siloHelpers.withdrawBeansFromSources( vars.account, @@ -369,8 +370,9 @@ contract ConvertUpBlueprint is PerFunctionPausable { } LibSiloHelpers.WithdrawalPlan memory emptyPlan; - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); - filterParams.maxGrownStalkPerBdv = params.convertUpParams.maxGrownStalkPerBdv; + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + params.convertUpParams.maxGrownStalkPerBdv + ); // for conversions, beans and germinating deposits are excluded filterParams.excludeBean = true; diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index d1e9b01a..394061f9 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -175,8 +175,9 @@ abstract contract SowBlueprintBase is BlueprintBase { } // Execute the withdrawal plan - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); - filterParams.maxGrownStalkPerBdv = params.sowParams.maxGrownStalkPerBdv; + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + params.sowParams.maxGrownStalkPerBdv + ); vars.beansWithdrawn = siloHelpers.withdrawBeansFromSources( vars.account, @@ -339,8 +340,9 @@ abstract contract SowBlueprintBase is BlueprintBase { } // Check if enough beans are available using getWithdrawalPlan - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); - filterParams.maxGrownStalkPerBdv = params.sowParams.maxGrownStalkPerBdv; + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + params.sowParams.maxGrownStalkPerBdv + ); plan = siloHelpers.getWithdrawalPlanExcludingPlan( blueprintPublisher, diff --git a/contracts/ecosystem/tractor/utils/SiloHelpers.sol b/contracts/ecosystem/tractor/utils/SiloHelpers.sol index 841125a3..9ede7dca 100644 --- a/contracts/ecosystem/tractor/utils/SiloHelpers.sol +++ b/contracts/ecosystem/tractor/utils/SiloHelpers.sol @@ -499,7 +499,9 @@ contract SiloHelpers { view returns (int96[] memory stems, uint256[] memory amounts, uint256 availableAmount) { - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + uint256(int256(type(int96).max)) + ); filterParams.minStem = minStem; LibSiloHelpers.WithdrawalPlan memory emptyPlan; return getDepositStemsAndAmountsToWithdraw(account, token, amount, filterParams, emptyPlan); diff --git a/contracts/libraries/Silo/LibSiloHelpers.sol b/contracts/libraries/Silo/LibSiloHelpers.sol index ea4e7ba1..d5c1d500 100644 --- a/contracts/libraries/Silo/LibSiloHelpers.sol +++ b/contracts/libraries/Silo/LibSiloHelpers.sol @@ -208,13 +208,16 @@ library LibSiloHelpers { } /** - * @notice Returns a deposit filter with no exclusions + * @notice Returns a deposit filter with default values. + * @param maxGrownStalkPerBdv The maximum grown stalk per BDV to filter deposits * @return FilterParams The default deposit filter parameters */ - function getDefaultFilterParams() public pure returns (FilterParams memory) { + function getDefaultFilterParams( + uint256 maxGrownStalkPerBdv + ) public pure returns (FilterParams memory) { return FilterParams({ - maxGrownStalkPerBdv: uint256(int256(type(int96).max)), // any amount of grown stalk per bdv is allowed. Maximum set at int96, as this is used to derive the minStem. + maxGrownStalkPerBdv: maxGrownStalkPerBdv, minStem: type(int96).min, // include all stems excludeGerminatingDeposits: false, // no germinating deposits are excluded excludeBean: false, // beans are included in the set of deposits. diff --git a/test/foundry/ecosystem/TractorHelpers.t.sol b/test/foundry/ecosystem/TractorHelpers.t.sol index 09163f88..7eabc5f8 100644 --- a/test/foundry/ecosystem/TractorHelpers.t.sol +++ b/test/foundry/ecosystem/TractorHelpers.t.sol @@ -88,8 +88,7 @@ contract TractorHelpersTest is TractorTestHelper { 10 ether // 10 ether. ); - testFilterParams = LibSiloHelpers.getDefaultFilterParams(); - testFilterParams.maxGrownStalkPerBdv = MAX_GROWN_STALK_PER_BDV; + testFilterParams = LibSiloHelpers.getDefaultFilterParams(MAX_GROWN_STALK_PER_BDV); } function test_getDepositStemsAndAmountsToWithdraw() public { @@ -1993,7 +1992,9 @@ contract TractorHelpersTest is TractorTestHelper { vm.stopPrank(); // Configure filter params with lowStalkDeposits enabled - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + uint256(int256(type(int96).max)) + ); // check that if the lowDepositLast is false, OR set true but no low stalk deposits (i.e lowGrownStalkPerBdv is 0), // the deposits are processed in the correct order. @@ -2055,7 +2056,7 @@ contract TractorHelpersTest is TractorTestHelper { // Test with lowStalkDeposits normal mode LibSiloHelpers.FilterParams memory filterParamsNormal = LibSiloHelpers - .getDefaultFilterParams(); + .getDefaultFilterParams(500e16); LibSiloHelpers.WithdrawalPlan memory withdrawalPlan; filterParamsNormal.lowStalkDeposits = LibSiloHelpers.Mode.USE; filterParamsNormal.maxGrownStalkPerBdv = 500e16; @@ -2074,9 +2075,8 @@ contract TractorHelpersTest is TractorTestHelper { // Test with lowStalkDeposits enabled LibSiloHelpers.FilterParams memory filterParamsLowLast = LibSiloHelpers - .getDefaultFilterParams(); + .getDefaultFilterParams(500e16); filterParamsLowLast.lowStalkDeposits = LibSiloHelpers.Mode.USE_LAST; - filterParamsLowLast.maxGrownStalkPerBdv = 500e16; filterParamsLowLast.lowGrownStalkPerBdv = 100e16; uint256 numDepositsToWithdraw = 2; @@ -2126,7 +2126,9 @@ contract TractorHelpersTest is TractorTestHelper { bs.siloSunrise(0); // Advance stems. } - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + uint256(int256(type(int96).max)) + ); LibSiloHelpers.WithdrawalPlan memory withdrawalPlan; filterParams.lowStalkDeposits = LibSiloHelpers.Mode.USE_LAST; filterParams.lowGrownStalkPerBdv = 1000e16; // High threshold - all deposits are low stalk @@ -2153,7 +2155,9 @@ contract TractorHelpersTest is TractorTestHelper { uint256 seeds = 2e6; uint256 totalAmount = 5000e6; int96 largestStem = int96(int256((numDeposits - 1) * seeds)); - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + uint256(int256(type(int96).max)) + ); filterParams.maxStem = int96(bound(stem, 1, largestStem)); // set a very low stem threshold. // Create mixed deposits diff --git a/test/foundry/utils/TractorTestHelper.sol b/test/foundry/utils/TractorTestHelper.sol index 957f8b98..10c0fb43 100644 --- a/test/foundry/utils/TractorTestHelper.sol +++ b/test/foundry/utils/TractorTestHelper.sol @@ -249,8 +249,9 @@ contract TractorTestHelper is TestHelper { uint256 maxGrownStalkPerBdv, LibTransfer.To mode ) internal returns (IMockFBeanstalk.Requisition memory) { - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams(); - filterParams.maxGrownStalkPerBdv = maxGrownStalkPerBdv; + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + maxGrownStalkPerBdv + ); LibSiloHelpers.WithdrawalPlan memory emptyPlan; // Create the withdrawBeansFromSources pipe call IMockFBeanstalk.AdvancedPipeCall[] memory pipes = new IMockFBeanstalk.AdvancedPipeCall[](1); From 94ec78bbfdfeda0bb1064eece81c69fbbdce72bf Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 15:04:46 +0300 Subject: [PATCH 189/270] sow order counter logic refactor --- .../tractor/blueprints/SowBlueprintBase.sol | 36 +++++++++---------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index 394061f9..61d802e3 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -189,27 +189,25 @@ abstract contract SowBlueprintBase is BlueprintBase { vars.withdrawalPlan ); - // Update the counter - // If this will use up all remaining amount, set to max to indicate completion - if (vars.pintoLeftToSow - vars.totalAmountToSow == 0) { - updatePintoLeftToSowCounter(vars.orderHash, type(uint256).max); - // Order filled completely, emit event as such - emit SowOrderComplete(vars.orderHash, vars.account, vars.totalAmountToSow, 0); - } else { - uint256 amountUnfulfilled = vars.pintoLeftToSow - vars.totalAmountToSow; - updatePintoLeftToSowCounter(vars.orderHash, amountUnfulfilled); - - // If the min sow per season is greater than the amount unfulfilled, this order will - // never be able to execute again, so emit event as such - if (amountUnfulfilled < params.sowParams.sowAmounts.minAmountToSowPerSeason) { - emit SowOrderComplete( - vars.orderHash, - vars.account, - params.sowParams.sowAmounts.totalAmountToSow - amountUnfulfilled, - amountUnfulfilled - ); + uint256 pintoRemainingAfterSow = vars.pintoLeftToSow - vars.totalAmountToSow; + uint256 sowCounter = pintoRemainingAfterSow; + // if `pintoRemainingAfterSow` is less than the min amount to sow per season, + // the order has completed, and should emit a SowOrderComplete event + if (pintoRemainingAfterSow < params.sowParams.sowAmounts.minAmountToSowPerSeason) { + if (pintoRemainingAfterSow == 0) { + // If the pinto remaining after sow is 0, + // set the sow counter to max to indicate completion + // (as `0` in `sowCounter` implies an uninitialized counter) + sowCounter = type(uint256).max; } + emit SowOrderComplete( + vars.orderHash, + vars.account, + params.sowParams.sowAmounts.totalAmountToSow - pintoRemainingAfterSow, + pintoRemainingAfterSow + ); } + updatePintoLeftToSowCounter(vars.orderHash, sowCounter); // Tip the operator tractorHelpers.tip( From 034eefba004308fdbb5e5caa1251a66f44232850 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 15:20:02 +0300 Subject: [PATCH 190/270] Add beanToken immutable to BlueprintBase to avoid repeated external calls --- contracts/ecosystem/BlueprintBase.sol | 2 ++ contracts/ecosystem/MowPlantHarvestBlueprint.sol | 2 +- contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol | 4 ++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/contracts/ecosystem/BlueprintBase.sol b/contracts/ecosystem/BlueprintBase.sol index 12437b90..fa4a42b2 100644 --- a/contracts/ecosystem/BlueprintBase.sol +++ b/contracts/ecosystem/BlueprintBase.sol @@ -31,6 +31,7 @@ abstract contract BlueprintBase is PerFunctionPausable { // Contracts IBeanstalk public immutable beanstalk; + address public immutable beanToken; TractorHelpers public immutable tractorHelpers; constructor( @@ -39,6 +40,7 @@ abstract contract BlueprintBase is PerFunctionPausable { address _tractorHelpers ) PerFunctionPausable(_owner) { beanstalk = IBeanstalk(_beanstalk); + beanToken = beanstalk.getBeanToken(); tractorHelpers = TractorHelpers(_tractorHelpers); } diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 3f85b22d..63ec3c0e 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -183,7 +183,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { vars.tipAddress = _resolveTipAddress(vars.tipAddress); // cache bean token - vars.beanToken = beanstalk.getBeanToken(); + vars.beanToken = beanToken; // Mow, Plant and Harvest // Check if user should harvest or plant diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index 61d802e3..e8443832 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -381,9 +381,9 @@ abstract contract SowBlueprintBase is BlueprintBase { */ function getAndValidateBeanstalkState( SowParams memory params - ) internal view returns (uint256 availableSoil, address beanToken, uint32 currentSeason) { + ) internal view returns (uint256 availableSoil, address beanToken_, uint32 currentSeason) { availableSoil = beanstalk.totalSoil(); - beanToken = beanstalk.getBeanToken(); + beanToken_ = beanToken; currentSeason = beanstalk.time().current; // Check temperature and soil requirements From b0dd0982d0757a326a84dcf61d326d0505c799cf Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 15:25:04 +0300 Subject: [PATCH 191/270] Add keccak256 hash value to HARVEST_DATA_KEY comment --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 63ec3c0e..af744aa6 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -21,6 +21,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { /** * @dev Key for operator-provided harvest data in transient storage * The key format is: HARVEST_DATA_KEY + fieldId + * Hash: 0x57c0c06c01076b3dedd361eef555163669978891b716ce6c5ef1355fc8ab5a36 */ uint256 public constant HARVEST_DATA_KEY = uint256(keccak256("MowPlantHarvestBlueprint.harvestData")); From 547395cbe5499afd864704dcd9ab7f8fa550dd31 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 15:42:06 +0300 Subject: [PATCH 192/270] skip fields without operator harvest data instead of reverting --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index af744aa6..1ada5a3f 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -336,7 +336,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { /** * @notice helper function to get the user state to compare against parameters * @dev Uses operator-provided harvest data from transient storage. - * Reverts if no data is provided. + * If no data is provided for a field, treats it as no harvestable pods. * Increasing the total claimable stalk when planting or harvesting does not really matter * since we mow by default if we plant or harvest. */ @@ -374,11 +374,15 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Read operator-provided data from transient storage bytes memory operatorData = beanstalk.getTractorData(HARVEST_DATA_KEY + fieldId); - // Operator must provide harvest data for each configured field - require( - operatorData.length > 0, - "MowPlantHarvestBlueprint: Missing operator harvest data" - ); + // If operator didn't provide data for this field, treat as no harvestable pods + if (operatorData.length == 0) { + userFieldHarvestResults[i] = UserFieldHarvestResults({ + fieldId: fieldId, + totalHarvestablePods: 0, + harvestablePlots: new uint256[](0) + }); + continue; + } // Decode operator-provided harvest data OperatorHarvestData memory harvestData = abi.decode( From 8b385e15ad1f10568d1dc16182c080c7cd1f23cf Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 18:32:22 +0300 Subject: [PATCH 193/270] remove totalHarvestablePods and use harvest return value for validation --- .../ecosystem/MowPlantHarvestBlueprint.sol | 98 +++++-------------- test/foundry/utils/TractorTestHelper.sol | 5 - 2 files changed, 24 insertions(+), 79 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 1ada5a3f..774d3e1c 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -47,14 +47,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } /** - * @notice Struct to hold field-specific harvest results after a _userHarvestablePods call + * @notice Struct to hold field-specific harvest results * @param fieldId The field ID to harvest from - * @param totalHarvestablePods The total harvestable pods for this field * @param harvestablePlots The harvestable plot indexes for the user */ struct UserFieldHarvestResults { uint256 fieldId; - uint256 totalHarvestablePods; uint256[] harvestablePlots; } @@ -63,12 +61,10 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @dev Operator passes this via tractorDynamicData to avoid on-chain plot iteration * @param fieldId The field ID this data is for * @param harvestablePlotIndexes Array of harvestable plot indexes - * @param totalHarvestablePods Pre-calculated total harvestable pods */ struct OperatorHarvestData { uint256 fieldId; uint256[] harvestablePlotIndexes; - uint256 totalHarvestablePods; } /** @@ -206,18 +202,23 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Harvest in all configured fields if the conditions are met if (vars.shouldHarvest) { for (uint256 i = 0; i < vars.userFieldHarvestResults.length; i++) { - // skip harvests that do not meet the minimum harvest amount - if ( - vars.userFieldHarvestResults[i].totalHarvestablePods < - params.mowPlantHarvestParams.fieldHarvestConfigs[i].minHarvestAmount - ) continue; - // harvest the pods to the user's internal balance + // Skip fields with no harvestable plots + if (vars.userFieldHarvestResults[i].harvestablePlots.length == 0) continue; + + // Harvest the pods to the user's internal balance uint256 harvestedBeans = beanstalk.harvest( vars.userFieldHarvestResults[i].fieldId, vars.userFieldHarvestResults[i].harvestablePlots, LibTransfer.To.INTERNAL ); - // deposit the harvested beans into the silo + + // Validate post-harvest: revert if harvested amount is below minimum threshold + require( + harvestedBeans >= params.mowPlantHarvestParams.fieldHarvestConfigs[i].minHarvestAmount, + "MowPlantHarvestBlueprint: Harvested amount below minimum threshold" + ); + + // Deposit the harvested beans into the silo beanstalk.deposit(vars.beanToken, harvestedBeans, LibTransfer.From.INTERNAL); } // tip for harvesting includes all specified fields @@ -280,8 +281,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; shouldHarvest = _checkHarvestConditions( - userFieldHarvestResults, - params.mowPlantHarvestParams.fieldHarvestConfigs + userFieldHarvestResults ); require( @@ -321,14 +321,11 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @return bool True if the user should harvest, false otherwise */ function _checkHarvestConditions( - UserFieldHarvestResults[] memory userFieldHarvestResults, - FieldHarvestConfig[] memory fieldHarvestConfigs - ) internal view returns (bool) { + UserFieldHarvestResults[] memory userFieldHarvestResults + ) internal pure returns (bool) { for (uint256 i = 0; i < userFieldHarvestResults.length; i++) { - if ( - userFieldHarvestResults[i].totalHarvestablePods >= - fieldHarvestConfigs[i].minHarvestAmount - ) return true; + // If operator provided any harvestable plots for this field, we should harvest + if (userFieldHarvestResults[i].harvestablePlots.length > 0) return true; } return false; } @@ -378,7 +375,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { if (operatorData.length == 0) { userFieldHarvestResults[i] = UserFieldHarvestResults({ fieldId: fieldId, - totalHarvestablePods: 0, harvestablePlots: new uint256[](0) }); continue; @@ -390,13 +386,15 @@ contract MowPlantHarvestBlueprint is BlueprintBase { (OperatorHarvestData) ); - // Validate the operator-provided data - _validateOperatorHarvestData(account, fieldId, harvestData); + // Verify operator provided data for the correct field + require( + harvestData.fieldId == fieldId, + "MowPlantHarvestBlueprint: Field ID mismatch" + ); - // Use validated operator data + // Use operator data - validation happens in harvest() call userFieldHarvestResults[i] = UserFieldHarvestResults({ fieldId: fieldId, - totalHarvestablePods: harvestData.totalHarvestablePods, harvestablePlots: harvestData.harvestablePlotIndexes }); } @@ -404,54 +402,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestResults); } - /** - * @notice Validates operator-provided harvest data - * @dev Ensures plots exist, belong to the account, and are actually harvestable - * @param account The account that owns the plots - * @param expectedFieldId The field ID we expect the data to be for - * @param harvestData Operator-provided harvest data to validate - */ - function _validateOperatorHarvestData( - address account, - uint256 expectedFieldId, - OperatorHarvestData memory harvestData - ) internal view { - // Verify operator provided data for the correct field - require( - harvestData.fieldId == expectedFieldId, - "MowPlantHarvestBlueprint: Field ID mismatch" - ); - - uint256 harvestableIndex = beanstalk.harvestableIndex(harvestData.fieldId); - uint256 calculatedTotalPods = 0; - - for (uint256 i = 0; i < harvestData.harvestablePlotIndexes.length; i++) { - uint256 plotIndex = harvestData.harvestablePlotIndexes[i]; - uint256 plotPods = beanstalk.plot(account, harvestData.fieldId, plotIndex); - - // Verify plot exists and belongs to account - require(plotPods > 0, "MowPlantHarvestBlueprint: Invalid plot index"); - - // Verify plot is harvestable (at least partially) - require(plotIndex < harvestableIndex, "MowPlantHarvestBlueprint: Plot not harvestable"); - - // Calculate actual harvestable pods for this plot - if (plotIndex + plotPods <= harvestableIndex) { - // Fully harvestable - calculatedTotalPods += plotPods; - } else { - // Partially harvestable - calculatedTotalPods += harvestableIndex - plotIndex; - } - } - - // Verify operator's total matches calculated total - require( - calculatedTotalPods == harvestData.totalHarvestablePods, - "MowPlantHarvestBlueprint: Invalid total harvestable pods" - ); - } - /** * @dev validates the parameters for the mow, plant and harvest operation */ diff --git a/test/foundry/utils/TractorTestHelper.sol b/test/foundry/utils/TractorTestHelper.sol index 10c0fb43..bdad67c5 100644 --- a/test/foundry/utils/TractorTestHelper.sol +++ b/test/foundry/utils/TractorTestHelper.sol @@ -196,14 +196,12 @@ contract TractorTestHelper is TestHelper { if (plotIndexes.length == 0) { harvestData.fieldId = fieldId; harvestData.harvestablePlotIndexes = new uint256[](0); - harvestData.totalHarvestablePods = 0; return harvestData; } // Temporary array to collect harvestable plots uint256[] memory tempPlots = new uint256[](plotIndexes.length); uint256 harvestableCount = 0; - uint256 totalPods = 0; for (uint256 i = 0; i < plotIndexes.length; i++) { uint256 plotIndex = plotIndexes[i]; @@ -212,12 +210,10 @@ contract TractorTestHelper is TestHelper { if (plotIndex + plotPods <= harvestableIndex) { // Fully harvestable tempPlots[harvestableCount] = plotIndex; - totalPods += plotPods; harvestableCount++; } else if (plotIndex < harvestableIndex) { // Partially harvestable tempPlots[harvestableCount] = plotIndex; - totalPods += harvestableIndex - plotIndex; harvestableCount++; } } @@ -230,7 +226,6 @@ contract TractorTestHelper is TestHelper { harvestData.fieldId = fieldId; harvestData.harvestablePlotIndexes = harvestablePlots; - harvestData.totalHarvestablePods = totalPods; } // Helper function to sign blueprints From 10af65de3a451f6fe302af27f27fe905e6cb96de Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 18:49:12 +0300 Subject: [PATCH 194/270] Fix sow order completion check to handle zero minAmountToSowPerSeason --- contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index e8443832..a1412768 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -193,7 +193,7 @@ abstract contract SowBlueprintBase is BlueprintBase { uint256 sowCounter = pintoRemainingAfterSow; // if `pintoRemainingAfterSow` is less than the min amount to sow per season, // the order has completed, and should emit a SowOrderComplete event - if (pintoRemainingAfterSow < params.sowParams.sowAmounts.minAmountToSowPerSeason) { + if (pintoRemainingAfterSow == 0 || pintoRemainingAfterSow < params.sowParams.sowAmounts.minAmountToSowPerSeason) { if (pintoRemainingAfterSow == 0) { // If the pinto remaining after sow is 0, // set the sow counter to max to indicate completion From 6bb020b3ddd8d4e9d6eb6ef0c422d122a68eabf2 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sun, 14 Dec 2025 15:50:54 +0000 Subject: [PATCH 195/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/MowPlantHarvestBlueprint.sol | 12 +- .../tractor/blueprints/SowBlueprintBase.sol | 5 +- yarn.lock | 219 ++++++++++-------- 3 files changed, 136 insertions(+), 100 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 774d3e1c..6332b639 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -214,7 +214,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Validate post-harvest: revert if harvested amount is below minimum threshold require( - harvestedBeans >= params.mowPlantHarvestParams.fieldHarvestConfigs[i].minHarvestAmount, + harvestedBeans >= + params.mowPlantHarvestParams.fieldHarvestConfigs[i].minHarvestAmount, "MowPlantHarvestBlueprint: Harvested amount below minimum threshold" ); @@ -280,9 +281,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { previousSeasonTimestamp ); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; - shouldHarvest = _checkHarvestConditions( - userFieldHarvestResults - ); + shouldHarvest = _checkHarvestConditions(userFieldHarvestResults); require( shouldMow || shouldPlant || shouldHarvest, @@ -387,10 +386,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ); // Verify operator provided data for the correct field - require( - harvestData.fieldId == fieldId, - "MowPlantHarvestBlueprint: Field ID mismatch" - ); + require(harvestData.fieldId == fieldId, "MowPlantHarvestBlueprint: Field ID mismatch"); // Use operator data - validation happens in harvest() call userFieldHarvestResults[i] = UserFieldHarvestResults({ diff --git a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol index a1412768..f4100bbd 100644 --- a/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol +++ b/contracts/ecosystem/tractor/blueprints/SowBlueprintBase.sol @@ -193,7 +193,10 @@ abstract contract SowBlueprintBase is BlueprintBase { uint256 sowCounter = pintoRemainingAfterSow; // if `pintoRemainingAfterSow` is less than the min amount to sow per season, // the order has completed, and should emit a SowOrderComplete event - if (pintoRemainingAfterSow == 0 || pintoRemainingAfterSow < params.sowParams.sowAmounts.minAmountToSowPerSeason) { + if ( + pintoRemainingAfterSow == 0 || + pintoRemainingAfterSow < params.sowParams.sowAmounts.minAmountToSowPerSeason + ) { if (pintoRemainingAfterSow == 0) { // If the pinto remaining after sow is 0, // set the sow counter to max to indicate completion diff --git a/yarn.lock b/yarn.lock index e6babac1..1b5ea898 100644 --- a/yarn.lock +++ b/yarn.lock @@ -237,6 +237,11 @@ resolved "https://registry.yarnpkg.com/@ethereumjs/rlp/-/rlp-4.0.1.tgz#626fabfd9081baab3d0a3074b0c7ecaf674aaa41" integrity sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw== +"@ethereumjs/rlp@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/rlp/-/rlp-5.0.2.tgz#c89bd82f2f3bec248ab2d517ae25f5bbc4aac842" + integrity sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA== + "@ethereumjs/tx@3.4.0": version "3.4.0" resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.4.0.tgz#7eb1947eefa55eb9cf05b3ca116fb7a3dbd0bce7" @@ -262,6 +267,14 @@ ethereum-cryptography "^2.0.0" micro-ftch "^0.3.1" +"@ethereumjs/util@^9.1.0": + version "9.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-9.1.0.tgz#75e3898a3116d21c135fa9e29886565609129bce" + integrity sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog== + dependencies: + "@ethereumjs/rlp" "^5.0.2" + ethereum-cryptography "^2.2.1" + "@ethereumjs/vm@5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethereumjs/vm/-/vm-5.6.0.tgz#e0ca62af07de820143674c30b776b86c1983a464" @@ -1091,6 +1104,13 @@ dependencies: "@noble/hashes" "1.4.0" +"@noble/curves@~1.9.2": + version "1.9.7" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.7.tgz#79d04b4758a43e4bca2cbdc62e7771352fa6b951" + integrity sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw== + dependencies: + "@noble/hashes" "1.8.0" + "@noble/hashes@1.2.0", "@noble/hashes@~1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.2.0.tgz#a3150eeb09cc7ab207ebf6d7b9ad311a9bdbed12" @@ -1101,7 +1121,7 @@ resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426" integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg== -"@noble/hashes@^1.4.0": +"@noble/hashes@1.8.0", "@noble/hashes@^1.4.0": version "1.8.0" resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.8.0.tgz#cee43d801fcef9644b11b8194857695acd5f815a" integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== @@ -1121,80 +1141,58 @@ resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.2.tgz#c2c3343e2dce80e15a914d7442147507f8a98e7f" integrity sha512-/qzwYl5eFLH8OWIecQWM31qld2g1NfjgylK+TNhqtaUKP37Nm+Y+z30Fjhw0Ct8p9yCQEm2N3W/AckdIb3SMcQ== -"@nomicfoundation/edr-darwin-arm64@0.6.5": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.6.5.tgz#37a31565d7ef42bed9028ac44aed82144de30bd1" - integrity sha512-A9zCCbbNxBpLgjS1kEJSpqxIvGGAX4cYbpDYCU2f3jVqOwaZ/NU761y1SvuCRVpOwhoCXqByN9b7HPpHi0L4hw== - -"@nomicfoundation/edr-darwin-x64@0.6.5": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.6.5.tgz#3252f6e86397af460b7a480bfe1b889464d75b89" - integrity sha512-x3zBY/v3R0modR5CzlL6qMfFMdgwd6oHrWpTkuuXnPFOX8SU31qq87/230f4szM+ukGK8Hi+mNq7Ro2VF4Fj+w== - -"@nomicfoundation/edr-linux-arm64-gnu@0.6.5": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.6.5.tgz#e7dc2934920b6cfabeb5ee7a5e26c8fb0d4964ac" - integrity sha512-HGpB8f1h8ogqPHTyUpyPRKZxUk2lu061g97dOQ/W4CxevI0s/qiw5DB3U3smLvSnBHKOzYS1jkxlMeGN01ky7A== - -"@nomicfoundation/edr-linux-arm64-musl@0.6.5": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.6.5.tgz#00459cd53e9fb7bd5b7e32128b508a6e89079d89" - integrity sha512-ESvJM5Y9XC03fZg9KaQg3Hl+mbx7dsSkTIAndoJS7X2SyakpL9KZpOSYrDk135o8s9P9lYJdPOyiq+Sh+XoCbQ== - -"@nomicfoundation/edr-linux-x64-gnu@0.6.5": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.6.5.tgz#5c9e4e2655caba48e0196977cba395bbde6fe97d" - integrity sha512-HCM1usyAR1Ew6RYf5AkMYGvHBy64cPA5NMbaeY72r0mpKaH3txiMyydcHibByOGdQ8iFLWpyUdpl1egotw+Tgg== - -"@nomicfoundation/edr-linux-x64-musl@0.6.5": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.6.5.tgz#9c220751b66452dc43a365f380e1e236a0a8c5a9" - integrity sha512-nB2uFRyczhAvWUH7NjCsIO6rHnQrof3xcCe6Mpmnzfl2PYcGyxN7iO4ZMmRcQS7R1Y670VH6+8ZBiRn8k43m7A== - -"@nomicfoundation/edr-win32-x64-msvc@0.6.5": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.6.5.tgz#90d3ac2a6a8a687522bda5ff2e92dd97e68126ea" - integrity sha512-B9QD/4DSSCFtWicO8A3BrsnitO1FPv7axB62wq5Q+qeJ50yJlTmyeGY3cw62gWItdvy2mh3fRM6L1LpnHiB77A== - -"@nomicfoundation/edr@^0.6.4": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@nomicfoundation/edr/-/edr-0.6.5.tgz#b3b1ebcdd0148cfe67cca128e7ebe8092e200359" - integrity sha512-tAqMslLP+/2b2sZP4qe9AuGxG3OkQ5gGgHE4isUuq6dUVjwCRPFhAOhpdFl+OjY5P3yEv3hmq9HjUGRa2VNjng== - dependencies: - "@nomicfoundation/edr-darwin-arm64" "0.6.5" - "@nomicfoundation/edr-darwin-x64" "0.6.5" - "@nomicfoundation/edr-linux-arm64-gnu" "0.6.5" - "@nomicfoundation/edr-linux-arm64-musl" "0.6.5" - "@nomicfoundation/edr-linux-x64-gnu" "0.6.5" - "@nomicfoundation/edr-linux-x64-musl" "0.6.5" - "@nomicfoundation/edr-win32-x64-msvc" "0.6.5" - -"@nomicfoundation/ethereumjs-common@4.0.4": - version "4.0.4" - resolved "https://registry.yarnpkg.com/@nomicfoundation/ethereumjs-common/-/ethereumjs-common-4.0.4.tgz#9901f513af2d4802da87c66d6f255b510bef5acb" - integrity sha512-9Rgb658lcWsjiicr5GzNCjI1llow/7r0k50dLL95OJ+6iZJcVbi15r3Y0xh2cIO+zgX0WIHcbzIu6FeQf9KPrg== - dependencies: - "@nomicfoundation/ethereumjs-util" "9.0.4" - -"@nomicfoundation/ethereumjs-rlp@5.0.4": - version "5.0.4" - resolved "https://registry.yarnpkg.com/@nomicfoundation/ethereumjs-rlp/-/ethereumjs-rlp-5.0.4.tgz#66c95256fc3c909f6fb18f6a586475fc9762fa30" - integrity sha512-8H1S3s8F6QueOc/X92SdrA4RDenpiAEqMg5vJH99kcQaCy/a3Q6fgseo75mgWlbanGJXSlAPtnCeG9jvfTYXlw== - -"@nomicfoundation/ethereumjs-tx@5.0.4": - version "5.0.4" - resolved "https://registry.yarnpkg.com/@nomicfoundation/ethereumjs-tx/-/ethereumjs-tx-5.0.4.tgz#b0ceb58c98cc34367d40a30d255d6315b2f456da" - integrity sha512-Xjv8wAKJGMrP1f0n2PeyfFCCojHd7iS3s/Ab7qzF1S64kxZ8Z22LCMynArYsVqiFx6rzYy548HNVEyI+AYN/kw== - dependencies: - "@nomicfoundation/ethereumjs-common" "4.0.4" - "@nomicfoundation/ethereumjs-rlp" "5.0.4" - "@nomicfoundation/ethereumjs-util" "9.0.4" - ethereum-cryptography "0.1.3" - -"@nomicfoundation/ethereumjs-util@9.0.4": - version "9.0.4" - resolved "https://registry.yarnpkg.com/@nomicfoundation/ethereumjs-util/-/ethereumjs-util-9.0.4.tgz#84c5274e82018b154244c877b76bc049a4ed7b38" - integrity sha512-sLOzjnSrlx9Bb9EFNtHzK/FJFsfg2re6bsGqinFinH1gCqVfz9YYlXiMWwDM4C/L4ywuHFCYwfKTVr/QHQcU0Q== +"@nomicfoundation/edr-darwin-arm64@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.11.3.tgz#d8e2609fc24cf20e75c3782e39cd5a95f7488075" + integrity sha512-w0tksbdtSxz9nuzHKsfx4c2mwaD0+l5qKL2R290QdnN9gi9AV62p9DHkOgfBdyg6/a6ZlnQqnISi7C9avk/6VA== + +"@nomicfoundation/edr-darwin-x64@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.11.3.tgz#7a9e94cee330269a33c7f1dce267560c7e12dbd3" + integrity sha512-QR4jAFrPbOcrO7O2z2ESg+eUeIZPe2bPIlQYgiJ04ltbSGW27FblOzdd5+S3RoOD/dsZGKAvvy6dadBEl0NgoA== + +"@nomicfoundation/edr-linux-arm64-gnu@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.11.3.tgz#cd5ec90c7263045c3dfd0b109c73206e488edc27" + integrity sha512-Ktjv89RZZiUmOFPspuSBVJ61mBZQ2+HuLmV67InNlh9TSUec/iDjGIwAn59dx0bF/LOSrM7qg5od3KKac4LJDQ== + +"@nomicfoundation/edr-linux-arm64-musl@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.11.3.tgz#ed23df2d9844470f5661716da27d99a72a69e99e" + integrity sha512-B3sLJx1rL2E9pfdD4mApiwOZSrX0a/KQSBWdlq1uAhFKqkl00yZaY4LejgZndsJAa4iKGQJlGnw4HCGeVt0+jA== + +"@nomicfoundation/edr-linux-x64-gnu@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.11.3.tgz#87a62496c2c4b808bc4a9ae96cca1642a21c2b51" + integrity sha512-D/4cFKDXH6UYyKPu6J3Y8TzW11UzeQI0+wS9QcJzjlrrfKj0ENW7g9VihD1O2FvXkdkTjcCZYb6ai8MMTCsaVw== + +"@nomicfoundation/edr-linux-x64-musl@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.11.3.tgz#8cfe408c73bcb9ed5e263910c313866d442f4b48" + integrity sha512-ergXuIb4nIvmf+TqyiDX5tsE49311DrBky6+jNLgsGDTBaN1GS3OFwFS8I6Ri/GGn6xOaT8sKu3q7/m+WdlFzg== + +"@nomicfoundation/edr-win32-x64-msvc@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.11.3.tgz#fb208b94553c7eb22246d73a1ac4de5bfdb97d01" + integrity sha512-snvEf+WB3OV0wj2A7kQ+ZQqBquMcrozSLXcdnMdEl7Tmn+KDCbmFKBt3Tk0X3qOU4RKQpLPnTxdM07TJNVtung== + +"@nomicfoundation/edr@^0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr/-/edr-0.11.3.tgz#e8b30b868788e45d7a2ee2359a021ef7dcb96952" + integrity sha512-kqILRkAd455Sd6v8mfP3C1/0tCOynJWY+Ir+k/9Boocu2kObCrsFgG+ZWB7fSBVdd9cPVSNrnhWS+V+PEo637g== + dependencies: + "@nomicfoundation/edr-darwin-arm64" "0.11.3" + "@nomicfoundation/edr-darwin-x64" "0.11.3" + "@nomicfoundation/edr-linux-arm64-gnu" "0.11.3" + "@nomicfoundation/edr-linux-arm64-musl" "0.11.3" + "@nomicfoundation/edr-linux-x64-gnu" "0.11.3" + "@nomicfoundation/edr-linux-x64-musl" "0.11.3" + "@nomicfoundation/edr-win32-x64-msvc" "0.11.3" + +"@nomicfoundation/hardhat-foundry@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@nomicfoundation/hardhat-foundry/-/hardhat-foundry-1.2.0.tgz#00bac127d1540c5c3900709f9f5fa511c599ba6c" + integrity sha512-2AJQLcWnUk/iQqHDVnyOadASKFQKF1PhNtt1cONEQqzUPK+fqME1IbP+EKu+RkZTRcyc4xqUMaB0sutglKRITg== dependencies: picocolors "^1.1.0" @@ -1414,6 +1412,11 @@ resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.9.tgz#e5e142fbbfe251091f9c5f1dd4c834ac04c3dbd1" integrity sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg== +"@scure/base@~1.2.5": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.2.6.tgz#ca917184b8231394dd8847509c67a0be522e59f6" + integrity sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg== + "@scure/bip32@1.1.5": version "1.1.5" resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.1.5.tgz#d2ccae16dcc2e75bc1d75f5ef3c66a338d1ba300" @@ -3372,7 +3375,7 @@ ethereum-cryptography@^1.0.3: "@scure/bip32" "1.1.5" "@scure/bip39" "1.1.1" -ethereum-cryptography@^2.0.0, ethereum-cryptography@^2.1.2: +ethereum-cryptography@^2.0.0, ethereum-cryptography@^2.1.2, ethereum-cryptography@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz#58f2810f8e020aecb97de8c8c76147600b0b8ccf" integrity sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg== @@ -3646,6 +3649,11 @@ fast-uri@^3.0.1: resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.0.tgz#66eecff6c764c0df9b762e62ca7edcfb53b4edfa" integrity sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA== +fdir@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.5.0.tgz#ed2ab967a331ade62f18d077dae192684d50d350" + integrity sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg== + file-entry-cache@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" @@ -4106,51 +4114,46 @@ hardhat-tracer@^1.1.0-rc.9: dependencies: ethers "^5.6.1" -hardhat@2.22.14, hardhat@^2.17.1, hardhat@^2.2.1: - version "2.22.14" - resolved "https://registry.yarnpkg.com/hardhat/-/hardhat-2.22.14.tgz#389bb3789a52adc0b1a3b4bfc9b891239d5a2b42" - integrity sha512-sD8vHtS9l5QQVHzyPPe3auwZDJyZ0fG3Z9YENVa4oOqVEefCuHcPzdU736rei3zUKTqkX0zPIHkSMHpu02Fq1A== +hardhat@2.26.0, hardhat@^2.17.1, hardhat@^2.2.1: + version "2.26.0" + resolved "https://registry.yarnpkg.com/hardhat/-/hardhat-2.26.0.tgz#8244d7be2ae69f89240fba78f4e35adf5883c764" + integrity sha512-hwEUBvMJzl3Iuru5bfMOEDeF2d7cbMNNF46rkwdo8AeW2GDT4VxFLyYWTi6PTLrZiftHPDiKDlAdAiGvsR9FYA== dependencies: + "@ethereumjs/util" "^9.1.0" "@ethersproject/abi" "^5.1.2" - "@metamask/eth-sig-util" "^4.0.0" - "@nomicfoundation/edr" "^0.6.4" - "@nomicfoundation/ethereumjs-common" "4.0.4" - "@nomicfoundation/ethereumjs-tx" "5.0.4" - "@nomicfoundation/ethereumjs-util" "9.0.4" + "@nomicfoundation/edr" "^0.11.3" "@nomicfoundation/solidity-analyzer" "^0.1.0" "@sentry/node" "^5.18.1" - "@types/bn.js" "^5.1.0" - "@types/lru-cache" "^5.1.0" adm-zip "^0.4.16" aggregate-error "^3.0.0" ansi-escapes "^4.3.0" boxen "^5.1.2" - chalk "^2.4.2" chokidar "^4.0.0" ci-info "^2.0.0" debug "^4.1.1" enquirer "^2.3.0" env-paths "^2.2.0" ethereum-cryptography "^1.0.3" - ethereumjs-abi "^0.6.8" - find-up "^2.1.0" + find-up "^5.0.0" fp-ts "1.19.3" fs-extra "^7.0.1" - glob "7.2.0" immutable "^4.0.0-rc.12" io-ts "1.10.4" json-stream-stringify "^3.1.4" keccak "^3.0.2" lodash "^4.17.11" + micro-eth-signer "^0.16.0" mnemonist "^0.38.0" mocha "^10.0.0" p-map "^4.0.0" + picocolors "^1.1.0" raw-body "^2.4.1" resolve "1.17.0" semver "^6.3.0" solc "0.8.26" source-map-support "^0.5.13" stacktrace-parser "^0.1.10" + tinyglobby "^0.2.6" tsort "0.0.1" undici "^5.14.0" uuid "^8.3.2" @@ -5121,11 +5124,27 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== +micro-eth-signer@^0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/micro-eth-signer/-/micro-eth-signer-0.16.0.tgz#a35d0de41ae9164ec96150a0f1fc29e7635ff106" + integrity sha512-rsSJcMGfY+kt3ROlL3U6y5BcjkK2H0zDKUQV6soo1JvjrctKKe+X7rKB0YIuwhWjlhJIoVHLuRYF+GXyyuVXxQ== + dependencies: + "@noble/curves" "~1.9.2" + "@noble/hashes" "2.0.0-beta.1" + micro-packed "~0.7.3" + micro-ftch@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/micro-ftch/-/micro-ftch-0.3.1.tgz#6cb83388de4c1f279a034fb0cf96dfc050853c5f" integrity sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg== +micro-packed@~0.7.3: + version "0.7.3" + resolved "https://registry.yarnpkg.com/micro-packed/-/micro-packed-0.7.3.tgz#59e96b139dffeda22705c7a041476f24cabb12b6" + integrity sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg== + dependencies: + "@scure/base" "~1.2.5" + miller-rabin@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" @@ -5651,11 +5670,21 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== +picocolors@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + picomatch@^2.0.4, picomatch@^2.2.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +picomatch@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.3.tgz#796c76136d1eead715db1e7bad785dedd695a042" + integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== + possible-typed-array-names@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" @@ -6632,6 +6661,14 @@ tiny-emitter@^2.1.0: resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== +tinyglobby@^0.2.6: + version "0.2.15" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.15.tgz#e228dd1e638cea993d2fdb4fcd2d4602a79951c2" + integrity sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ== + dependencies: + fdir "^6.5.0" + picomatch "^4.0.3" + tmp@0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" From 061027bd51647d293da6ec383a45575ad50faec0 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 19:39:40 +0300 Subject: [PATCH 196/270] optimize getPlotIndexesAtPositions and getPlotIndexesByRange to avoid copying entire plotIndexes array to memory --- contracts/beanstalk/facets/field/FieldFacet.sol | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 58b79690..20b5d89a 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -556,12 +556,12 @@ contract FieldFacet is Invariable, ReentrancyGuard { uint256 fieldId, uint256[] calldata arrayIndexes ) external view returns (uint256[] memory plotIndexes) { - uint256[] memory accountPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; + uint256 accountPlotIndexesLength = s.accts[account].fields[fieldId].plotIndexes.length; plotIndexes = new uint256[](arrayIndexes.length); for (uint256 i = 0; i < arrayIndexes.length; i++) { - require(arrayIndexes[i] < accountPlotIndexes.length, "Field: Index out of bounds"); - plotIndexes[i] = accountPlotIndexes[arrayIndexes[i]]; + require(arrayIndexes[i] < accountPlotIndexesLength, "Field: Index out of bounds"); + plotIndexes[i] = s.accts[account].fields[fieldId].plotIndexes[arrayIndexes[i]]; } } @@ -574,13 +574,13 @@ contract FieldFacet is Invariable, ReentrancyGuard { uint256 startIndex, uint256 endIndex ) external view returns (uint256[] memory plotIndexes) { - uint256[] memory accountPlotIndexes = s.accts[account].fields[fieldId].plotIndexes; + uint256 accountPlotIndexesLength = s.accts[account].fields[fieldId].plotIndexes.length; require(startIndex < endIndex, "Field: Invalid range"); - require(endIndex <= accountPlotIndexes.length, "Field: End index out of bounds"); + require(endIndex <= accountPlotIndexesLength, "Field: End index out of bounds"); plotIndexes = new uint256[](endIndex - startIndex); for (uint256 i = 0; i < plotIndexes.length; i++) { - plotIndexes[i] = accountPlotIndexes[startIndex + i]; + plotIndexes[i] = s.accts[account].fields[fieldId].plotIndexes[startIndex + i]; } } From 9a4d3ef8b6febc8b7fc61dfa5c81fdb9b4511171 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 22:10:11 +0300 Subject: [PATCH 197/270] Remove redundant lastExecutedSeason tracking from MowPlantHarvestBlueprint --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 8 -------- 1 file changed, 8 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 6332b639..c0ca7625 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -118,7 +118,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @dev Used to avoid stack too deep errors */ struct MowPlantHarvestLocalVars { - bytes32 orderHash; address account; address tipAddress; address beanToken; @@ -156,7 +155,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { MowPlantHarvestLocalVars memory vars; // Validate - vars.orderHash = beanstalk.getCurrentBlueprintHash(); vars.account = beanstalk.tractorUser(); vars.tipAddress = params.opParams.opParamsBase.tipAddress; // Cache the current season struct @@ -170,9 +168,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { vars.userFieldHarvestResults ) = _getAndValidateUserState(vars.account, vars.seasonInfo.timestamp, params); - // validate blueprint - _validateBlueprint(vars.orderHash, vars.seasonInfo.current); - // validate order params and revert early if invalid _validateParams(params); @@ -237,9 +232,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { params.mowPlantHarvestParams.slippageRatio, vars.plan // passed in plan is empty ); - - // Update the last executed season for this blueprint - _updateLastExecutedSeason(vars.orderHash, vars.seasonInfo.current); } /** From adade618470c8e5ce289e08870c6182ddcda8595 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 22:12:53 +0300 Subject: [PATCH 198/270] naming refactor --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 6 +++--- test/foundry/utils/TractorTestHelper.sol | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index c0ca7625..06df4cdf 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -107,7 +107,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @param harvestTipAmount Amount of tip to pay to operator for harvesting */ struct OperatorParamsExtended { - OperatorParams opParamsBase; + OperatorParams baseOpParams; int256 mowTipAmount; int256 plantTipAmount; int256 harvestTipAmount; @@ -156,7 +156,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Validate vars.account = beanstalk.tractorUser(); - vars.tipAddress = params.opParams.opParamsBase.tipAddress; + vars.tipAddress = params.opParams.baseOpParams.tipAddress; // Cache the current season struct vars.seasonInfo = beanstalk.time(); @@ -396,7 +396,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal view { // Shared validations _validateSourceTokens(params.mowPlantHarvestParams.sourceTokenIndices); - _validateOperatorParams(params.opParams.opParamsBase); + _validateOperatorParams(params.opParams.baseOpParams); // Blueprint specific validations // Validate that minPlantAmount and minHarvestAmount result in profit after their respective tips diff --git a/test/foundry/utils/TractorTestHelper.sol b/test/foundry/utils/TractorTestHelper.sol index bdad67c5..ecf1b88a 100644 --- a/test/foundry/utils/TractorTestHelper.sol +++ b/test/foundry/utils/TractorTestHelper.sol @@ -608,7 +608,7 @@ contract TractorTestHelper is TestHelper { // create OperatorParamsExtended struct MowPlantHarvestBlueprint.OperatorParamsExtended memory opParamsExtended = MowPlantHarvestBlueprint.OperatorParamsExtended({ - opParamsBase: opParams, + baseOpParams: opParams, mowTipAmount: mowTipAmount, plantTipAmount: plantTipAmount, harvestTipAmount: harvestTipAmount From 467b788a58b29a44bbedcda05a562530b219d9c0 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 22:31:35 +0300 Subject: [PATCH 199/270] naming refactor.. --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 10 +++++----- test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 06df4cdf..a3af2272 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -266,7 +266,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ) = _getUserState(account, params.mowPlantHarvestParams.fieldHarvestConfigs); // validate params - only revert if none of the conditions are met - shouldMow = _checkSmartMowConditions( + shouldMow = _checkMowConditions( params.mowPlantHarvestParams.mintwaDeltaB, params.mowPlantHarvestParams.minMowAmount, totalClaimableStalk, @@ -284,14 +284,14 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } /** - * @notice Check smart mow conditions to trigger a mow - * @dev A smart mow happens when: + * @notice Check mow conditions to trigger a mow + * @dev A mow happens when: * - `MINUTES_AFTER_SUNRISE` has passed since the last sunrise call * - The protocol is about to start the next season above the value target. * - The user has enough claimable stalk such as he gets more yield. - * @return bool True if the user should smart mow, false otherwise + * @return bool True if the user should mow, false otherwise */ - function _checkSmartMowConditions( + function _checkMowConditions( uint256 mintwaDeltaB, uint256 minMowAmount, uint256 totalClaimableStalk, diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index f483a50d..f7b43f67 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -131,7 +131,7 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { /////////////////////////// TESTS /////////////////////////// - function test_mowPlantHarvestBlueprint_smartMow() public { + function test_mowPlantHarvestBlueprint_Mow() public { // Setup test state // setupPlant: false, setupHarvest: false, abovePeg: true TestState memory state = setupMowPlantHarvestBlueprintTest(false, false, false, true); From 20bcdc31de39d80dbe5fb5f2494a41990fd769b5 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 22:47:19 +0300 Subject: [PATCH 200/270] remove redundant vars.plan and use getWithdrawalPlan instead of getWithdrawalPlanExcludingPlan --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index a3af2272..f39e8a90 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -129,7 +129,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { bool shouldHarvest; IBeanstalk.Season seasonInfo; UserFieldHarvestResults[] userFieldHarvestResults; - LibSiloHelpers.WithdrawalPlan plan; } // Silo helpers for withdrawal functionality @@ -229,8 +228,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { params.mowPlantHarvestParams.sourceTokenIndices, vars.totalBeanTip, params.mowPlantHarvestParams.maxGrownStalkPerBdv, - params.mowPlantHarvestParams.slippageRatio, - vars.plan // passed in plan is empty + params.mowPlantHarvestParams.slippageRatio ); } @@ -431,7 +429,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @param totalBeanTip The total tip for mowing, planting and harvesting * @param maxGrownStalkPerBdv The maximum amount of grown stalk allowed to be used for the withdrawal, per bdv * @param slippageRatio The price slippage ratio for a lp token withdrawal, between the instantaneous price and the current price - * @param plan The withdrawal plan to use, or null to generate one */ function _enforceWithdrawalPlanAndTip( address account, @@ -440,8 +437,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint8[] memory sourceTokenIndices, int256 totalBeanTip, uint256 maxGrownStalkPerBdv, - uint256 slippageRatio, - LibSiloHelpers.WithdrawalPlan memory plan + uint256 slippageRatio ) internal { // Create filter params for the withdrawal plan LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( @@ -450,12 +446,11 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Check if enough beans are available using getWithdrawalPlan LibSiloHelpers.WithdrawalPlan memory withdrawalPlan = siloHelpers - .getWithdrawalPlanExcludingPlan( + .getWithdrawalPlan( account, sourceTokenIndices, uint256(totalBeanTip), - filterParams, - plan // passed in plan is empty + filterParams ); // Execute the withdrawal plan to withdraw the tip amount From 732876aca98a39fae1f4afa6bd3050bc539a5528 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sun, 14 Dec 2025 19:49:36 +0000 Subject: [PATCH 201/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index f39e8a90..5831f08c 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -445,13 +445,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ); // Check if enough beans are available using getWithdrawalPlan - LibSiloHelpers.WithdrawalPlan memory withdrawalPlan = siloHelpers - .getWithdrawalPlan( - account, - sourceTokenIndices, - uint256(totalBeanTip), - filterParams - ); + LibSiloHelpers.WithdrawalPlan memory withdrawalPlan = siloHelpers.getWithdrawalPlan( + account, + sourceTokenIndices, + uint256(totalBeanTip), + filterParams + ); // Execute the withdrawal plan to withdraw the tip amount siloHelpers.withdrawBeansFromSources( From df8f07b5f6d36de19cac4cbfd7434760e2fe3cf7 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sun, 14 Dec 2025 22:57:51 +0300 Subject: [PATCH 202/270] Remove min amount vs tip amount validations from MowPlantHarvestBlueprint --- .../ecosystem/MowPlantHarvestBlueprint.sol | 35 ++----------------- 1 file changed, 2 insertions(+), 33 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 5831f08c..97d1fa8c 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -168,7 +168,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ) = _getAndValidateUserState(vars.account, vars.seasonInfo.timestamp, params); // validate order params and revert early if invalid - _validateParams(params); + _validateSourceTokens(params.mowPlantHarvestParams.sourceTokenIndices); + _validateOperatorParams(params.opParams.baseOpParams); // if tip address is not set, set it to the operator vars.tipAddress = _resolveTipAddress(vars.tipAddress); @@ -388,38 +389,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestResults); } - /** - * @dev validates the parameters for the mow, plant and harvest operation - */ - function _validateParams(MowPlantHarvestBlueprintStruct calldata params) internal view { - // Shared validations - _validateSourceTokens(params.mowPlantHarvestParams.sourceTokenIndices); - _validateOperatorParams(params.opParams.baseOpParams); - - // Blueprint specific validations - // Validate that minPlantAmount and minHarvestAmount result in profit after their respective tips - if (params.opParams.plantTipAmount >= 0) { - require( - params.mowPlantHarvestParams.minPlantAmount > - uint256(params.opParams.plantTipAmount), - "Min plant amount must be greater than plant tip amount" - ); - } - if (params.opParams.harvestTipAmount >= 0) { - uint256 totalMinHarvestAmount; - for (uint256 i = 0; i < params.mowPlantHarvestParams.fieldHarvestConfigs.length; i++) { - totalMinHarvestAmount += params - .mowPlantHarvestParams - .fieldHarvestConfigs[i] - .minHarvestAmount; - } - require( - totalMinHarvestAmount > uint256(params.opParams.harvestTipAmount), - "Min harvest amount must be greater than harvest tip amount" - ); - } - } - /** * @notice Helper function that creates a withdrawal plan and tips the operator the total bean tip amount * @param account The account to withdraw for From 0336baadf9f23cd2d400385200493dd6849da6dd Mon Sep 17 00:00:00 2001 From: pocikerim Date: Mon, 15 Dec 2025 12:45:32 +0300 Subject: [PATCH 203/270] optimize tip payment by using freshly harvested and planted beans when resolved source is Pinto --- .../ecosystem/MowPlantHarvestBlueprint.sol | 189 +++++++++++++++++- .../ecosystem/MowPlantHarvestBlueprint.t.sol | 70 ------- 2 files changed, 184 insertions(+), 75 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 97d1fa8c..fac1f080 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -124,6 +124,9 @@ contract MowPlantHarvestBlueprint is BlueprintBase { int256 totalBeanTip; uint256 totalClaimableStalk; uint256 totalPlantableBeans; + uint256 totalHarvestedBeans; + uint256 totalPlantedBeans; + int96 plantedStem; bool shouldMow; bool shouldPlant; bool shouldHarvest; @@ -190,7 +193,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Plant if the conditions are met if (vars.shouldPlant) { - beanstalk.plant(); + vars.totalPlantedBeans = beanstalk.plant(); + vars.plantedStem = beanstalk.getHighestNonGerminatingStem(vars.beanToken); vars.totalBeanTip += params.opParams.plantTipAmount; } @@ -214,20 +218,23 @@ contract MowPlantHarvestBlueprint is BlueprintBase { "MowPlantHarvestBlueprint: Harvested amount below minimum threshold" ); - // Deposit the harvested beans into the silo - beanstalk.deposit(vars.beanToken, harvestedBeans, LibTransfer.From.INTERNAL); + // Accumulate harvested beans + vars.totalHarvestedBeans += harvestedBeans; } // tip for harvesting includes all specified fields vars.totalBeanTip += params.opParams.harvestTipAmount; } - // Enforce the withdrawal plan and tip the total bean amount - _enforceWithdrawalPlanAndTip( + // Handle tip payment + _handleTip( vars.account, vars.tipAddress, vars.beanToken, params.mowPlantHarvestParams.sourceTokenIndices, vars.totalBeanTip, + vars.totalHarvestedBeans, + vars.totalPlantedBeans, + vars.plantedStem, params.mowPlantHarvestParams.maxGrownStalkPerBdv, params.mowPlantHarvestParams.slippageRatio ); @@ -389,6 +396,140 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestResults); } + /** + * @notice Handles tip payment + * @dev Optimizes gas by using freshly obtained Pinto for tips when possible: + * 1. If harvested beans >= tip: Use harvested beans only (most efficient) + * 2. If harvested + planted >= tip: Use harvested first, withdraw remainder from planted deposit + * 3. Otherwise: Fallback to full withdrawal plan + * @param account The account to withdraw for + * @param tipAddress The address to send the tip to + * @param _beanToken The cached bean token address + * @param sourceTokenIndices The indices of the source tokens to withdraw from + * @param totalBeanTip The total tip for mowing, planting and harvesting + * @param totalHarvestedBeans Total beans harvested in this transaction (in internal balance) + * @param totalPlantedBeans Total beans planted in this transaction (deposited by plant()) + * @param plantedStem The stem of the planted deposit (for withdrawal if needed) + * @param maxGrownStalkPerBdv The maximum amount of grown stalk allowed to be used for the withdrawal, per bdv + * @param slippageRatio The price slippage ratio for a lp token withdrawal + */ + function _handleTip( + address account, + address tipAddress, + address _beanToken, + uint8[] memory sourceTokenIndices, + int256 totalBeanTip, + uint256 totalHarvestedBeans, + uint256 totalPlantedBeans, + int96 plantedStem, + uint256 maxGrownStalkPerBdv, + uint256 slippageRatio + ) internal { + uint256 tipAmount = totalBeanTip > 0 ? uint256(totalBeanTip) : 0; + + if (tipAmount == 0) { + // Just deposit any harvested beans + if (totalHarvestedBeans > 0) { + beanstalk.deposit(_beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); + } + return; + } + + // Check if we can optimize (tip token resolves to Pinto) + bool canOptimize = _resolvedSourceIsPinto(sourceTokenIndices, _beanToken); + + if (canOptimize) { + // CASE 1: Harvest covers full tip (most gas efficient - no withdraw call needed) + if (totalHarvestedBeans >= tipAmount) { + _tipFromHarvestedOnly(account, tipAddress, _beanToken, totalBeanTip, totalHarvestedBeans, tipAmount); + return; + } + + // CASE 2: Need to combine harvested beans + planted beans + if (totalPlantedBeans > 0 && totalHarvestedBeans + totalPlantedBeans >= tipAmount) { + _tipFromPlantedAndHarvested(account, tipAddress, _beanToken, totalBeanTip, totalHarvestedBeans, tipAmount, plantedStem); + return; + } + } + + // FALLBACK: Deposit all harvested beans first, then use withdrawal plan for tip + if (totalHarvestedBeans > 0) { + beanstalk.deposit(_beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); + } + + _enforceWithdrawalPlanAndTip( + account, + tipAddress, + _beanToken, + sourceTokenIndices, + totalBeanTip, + maxGrownStalkPerBdv, + slippageRatio + ); + } + + /** + * @notice Handles tip payment using only harvested beans (CASE 1 - most gas efficient) + */ + function _tipFromHarvestedOnly( + address account, + address tipAddress, + address _beanToken, + int256 totalBeanTip, + uint256 totalHarvestedBeans, + uint256 tipAmount + ) internal { + // Pay tip from harvested beans (already in internal balance) + tractorHelpers.tip( + _beanToken, + account, + tipAddress, + totalBeanTip, + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); + + // Deposit remaining harvested beans to silo + uint256 remaining = totalHarvestedBeans - tipAmount; + if (remaining > 0) { + beanstalk.deposit(_beanToken, remaining, LibTransfer.From.INTERNAL); + } + } + + /** + * @notice Handles tip payment using harvested + planted beans (CASE 2) + * @dev Uses all harvested beans first, then withdraws remainder from planted deposit + */ + function _tipFromPlantedAndHarvested( + address account, + address tipAddress, + address _beanToken, + int256 totalBeanTip, + uint256 totalHarvestedBeans, + uint256 tipAmount, + int96 plantedStem + ) internal { + // Calculate how much to withdraw from planted deposit + uint256 tipFromPlant = tipAmount - totalHarvestedBeans; + + // Withdraw needed amount from planted deposit + int96[] memory stems = new int96[](1); + stems[0] = plantedStem; + uint256[] memory amounts = new uint256[](1); + amounts[0] = tipFromPlant; + beanstalk.withdrawDeposits(_beanToken, stems, amounts, LibTransfer.To.INTERNAL); + + // Now all tip amount is in internal balance, pay the tip + tractorHelpers.tip( + _beanToken, + account, + tipAddress, + totalBeanTip, + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); + } + /** * @notice Helper function that creates a withdrawal plan and tips the operator the total bean tip amount * @param account The account to withdraw for @@ -442,4 +583,42 @@ contract MowPlantHarvestBlueprint is BlueprintBase { LibTransfer.To.INTERNAL ); } + + /** + * @notice Checks if the resolved first source token is Pinto + * @dev Handles both direct token indices and strategy-based indices (LOWEST_PRICE_STRATEGY, LOWEST_SEED_STRATEGY) + * @param sourceTokenIndices The indices of the source tokens to withdraw from + * @param _beanToken The cached bean token address + * @return True if the first resolved source token is Pinto + */ + function _resolvedSourceIsPinto( + uint8[] memory sourceTokenIndices, + address _beanToken + ) internal view returns (bool) { + if (sourceTokenIndices.length == 0) return false; + + uint8 firstIdx = sourceTokenIndices[0]; + + // LOWEST_PRICE_STRATEGY = type(uint8).max + if (firstIdx == type(uint8).max) { + // For price strategy, check if Pinto is the lowest priced token + (uint8[] memory priceIndices, ) = tractorHelpers.getTokensAscendingPrice(); + if (priceIndices.length == 0) return false; + address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); + if (priceIndices[0] >= tokens.length) return false; + return tokens[priceIndices[0]] == _beanToken; + } + + // LOWEST_SEED_STRATEGY = type(uint8).max - 1 + if (firstIdx == type(uint8).max - 1) { + // For seed strategy, check if Pinto is the lowest seeded token + (address lowestSeedToken, ) = tractorHelpers.getLowestSeedToken(); + return lowestSeedToken == _beanToken; + } + + // Direct index - check if it points to Pinto + address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); + if (firstIdx >= tokens.length) return false; + return tokens[firstIdx] == _beanToken; + } } diff --git a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol index f7b43f67..2837b582 100644 --- a/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol +++ b/test/foundry/ecosystem/MowPlantHarvestBlueprint.t.sol @@ -191,39 +191,6 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { ); } - function test_mowPlantHarvestBlueprint_plant_revertWhenMinPlantAmountLessThanTip() public { - // Setup test state for planting - // setupPlant: true, setupHarvest: false, twoFields: true, abovePeg: true - TestState memory state = setupMowPlantHarvestBlueprintTest(true, false, false, true); - - // assert that the user has earned beans - assertGt(bs.balanceOfEarnedBeans(state.user), 0, "user should have earned beans to plant"); - - // Setup blueprint with minPlantAmount less than plant tip amount - (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( - state.user, // account - SourceMode.PURE_PINTO, // sourceMode for tip - 1 * STALK_DECIMALS, // minMowAmount (1 stalk) - 10e6, // mintwaDeltaB - 1e6, // minPlantAmount < 10e6 (plant tip amount) - UNEXECUTABLE_MIN_HARVEST_AMOUNT, // minHarvestAmount (for all fields) - state.operator, // tipAddress - state.mowTipAmount, // mowTipAmount - state.plantTipAmount, // plantTipAmount - state.harvestTipAmount, // harvestTipAmount - MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv - ); - - // Pre-calculate harvest data BEFORE expectRevert - IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser( - state.user - ); - - // Execute requisition, expect revert - vm.expectRevert("Min plant amount must be greater than plant tip amount"); - executeRequisitionWithDynamicData(state.operator, req, address(bs), dynamicData); - } - function test_mowPlantHarvestBlueprint_plant_revertWhenInsufficientPlantableBeans() public { // Setup test state for planting // setupPlant: true, setupHarvest: false, twoFields: true, abovePeg: true @@ -299,43 +266,6 @@ contract MowPlantHarvestBlueprintTest is TractorTestHelper { assertGt(userTotalBdvAfterPlant, userTotalBdvBeforePlant, "userTotalBdv increase"); } - function test_mowPlantHarvestBlueprint_harvest_revertWhenMinHarvestAmountLessThanTip() public { - // Setup test state for harvesting - // setupPlant: false, setupHarvest: true, twoFields: true, abovePeg: true - TestState memory state = setupMowPlantHarvestBlueprintTest(false, true, true, true); - - // advance season to print beans - advanceSeason(); - - // assert user has harvestable pods - (uint256 totalHarvestablePods, ) = _userHarvestablePods(state.user, DEFAULT_FIELD_ID); - assertGt(totalHarvestablePods, 0, "user should have harvestable pods to harvest"); - - // Setup blueprint with minHarvestAmount less than harvest tip amount - (IMockFBeanstalk.Requisition memory req, ) = setupMowPlantHarvestBlueprint( - state.user, // account - SourceMode.PURE_PINTO, // sourceMode for tip - 1 * STALK_DECIMALS, // minMowAmount (1 stalk) - 10e6, // mintwaDeltaB - 11e6, // minPlantAmount - 1e6, // minHarvestAmount < 10e6 (harvest tip amount) (for all fields) - state.operator, // tipAddress - state.mowTipAmount, // mowTipAmount - state.plantTipAmount, // plantTipAmount - state.harvestTipAmount, // harvestTipAmount - MAX_GROWN_STALK_PER_BDV // maxGrownStalkPerBdv - ); - - // Pre-calculate harvest data BEFORE expectRevert - IMockFBeanstalk.ContractData[] memory dynamicData = getHarvestDynamicDataForUser( - state.user - ); - - // Execute requisition, expect revert - vm.expectRevert("Min harvest amount must be greater than harvest tip amount"); - executeRequisitionWithDynamicData(state.operator, req, address(bs), dynamicData); - } - function test_mowPlantHarvestBlueprint_harvest_partialHarvest() public { // Setup test state for harvesting // setupPlant: false, setupHarvest: true, twoFields: true, abovePeg: true From 89dbbf0cbfcc587242b2637c12fd8ec8c1ee2504 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 15 Dec 2025 09:47:31 +0000 Subject: [PATCH 204/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/MowPlantHarvestBlueprint.sol | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index fac1f080..6e928f0a 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -441,13 +441,28 @@ contract MowPlantHarvestBlueprint is BlueprintBase { if (canOptimize) { // CASE 1: Harvest covers full tip (most gas efficient - no withdraw call needed) if (totalHarvestedBeans >= tipAmount) { - _tipFromHarvestedOnly(account, tipAddress, _beanToken, totalBeanTip, totalHarvestedBeans, tipAmount); + _tipFromHarvestedOnly( + account, + tipAddress, + _beanToken, + totalBeanTip, + totalHarvestedBeans, + tipAmount + ); return; } // CASE 2: Need to combine harvested beans + planted beans if (totalPlantedBeans > 0 && totalHarvestedBeans + totalPlantedBeans >= tipAmount) { - _tipFromPlantedAndHarvested(account, tipAddress, _beanToken, totalBeanTip, totalHarvestedBeans, tipAmount, plantedStem); + _tipFromPlantedAndHarvested( + account, + tipAddress, + _beanToken, + totalBeanTip, + totalHarvestedBeans, + tipAmount, + plantedStem + ); return; } } From 675407bfb9f5e297c3b47d24c220ae4d4f743afa Mon Sep 17 00:00:00 2001 From: pocikerim Date: Mon, 15 Dec 2025 14:42:50 +0300 Subject: [PATCH 205/270] minimize LocalVars struct by removing unused fields and inlining tipAddress --- .../ecosystem/MowPlantHarvestBlueprint.sol | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 6e928f0a..5bc8df7d 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -119,18 +119,14 @@ contract MowPlantHarvestBlueprint is BlueprintBase { */ struct MowPlantHarvestLocalVars { address account; - address tipAddress; address beanToken; int256 totalBeanTip; - uint256 totalClaimableStalk; - uint256 totalPlantableBeans; uint256 totalHarvestedBeans; uint256 totalPlantedBeans; int96 plantedStem; bool shouldMow; bool shouldPlant; bool shouldHarvest; - IBeanstalk.Season seasonInfo; UserFieldHarvestResults[] userFieldHarvestResults; } @@ -158,9 +154,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Validate vars.account = beanstalk.tractorUser(); - vars.tipAddress = params.opParams.baseOpParams.tipAddress; - // Cache the current season struct - vars.seasonInfo = beanstalk.time(); + vars.beanToken = beanToken; // get the user state from the protocol and validate against params ( @@ -168,17 +162,14 @@ contract MowPlantHarvestBlueprint is BlueprintBase { vars.shouldPlant, vars.shouldHarvest, vars.userFieldHarvestResults - ) = _getAndValidateUserState(vars.account, vars.seasonInfo.timestamp, params); + ) = _getAndValidateUserState(vars.account, beanstalk.time().timestamp, params); // validate order params and revert early if invalid _validateSourceTokens(params.mowPlantHarvestParams.sourceTokenIndices); _validateOperatorParams(params.opParams.baseOpParams); - // if tip address is not set, set it to the operator - vars.tipAddress = _resolveTipAddress(vars.tipAddress); - - // cache bean token - vars.beanToken = beanToken; + // resolve tip address (defaults to operator if not set) + address tipAddress = _resolveTipAddress(params.opParams.baseOpParams.tipAddress); // Mow, Plant and Harvest // Check if user should harvest or plant @@ -228,7 +219,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Handle tip payment _handleTip( vars.account, - vars.tipAddress, + tipAddress, vars.beanToken, params.mowPlantHarvestParams.sourceTokenIndices, vars.totalBeanTip, From cca0e819b0f17743ec5a5ebce5e62252d211dd8e Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Fri, 19 Dec 2025 20:04:30 -0500 Subject: [PATCH 206/270] update block --- test/foundry/ecosystem/TractorHelpers.t.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/foundry/ecosystem/TractorHelpers.t.sol b/test/foundry/ecosystem/TractorHelpers.t.sol index 7eabc5f8..c90bbbd0 100644 --- a/test/foundry/ecosystem/TractorHelpers.t.sol +++ b/test/foundry/ecosystem/TractorHelpers.t.sol @@ -208,7 +208,7 @@ contract TractorHelpersTest is TractorTestHelper { uint256 blockOverride ) internal returns (address testWallet, address PINTO_DIAMOND, address PINTO) { testWallet = 0xFb94D3404c1d3D9D6F08f79e58041d5EA95AccfA; - uint256 forkBlock = blockOverride > 0 ? blockOverride : 25040000; // Use override if provided + uint256 forkBlock = blockOverride > 0 ? blockOverride : 39701594; // Use override if provided vm.createSelectFork(vm.envString("BASE_RPC"), forkBlock); PINTO_DIAMOND = address(0xD1A0D188E861ed9d15773a2F3574a2e94134bA8f); From c7ef6c026133de7c26a779521b45676d0b3427bb Mon Sep 17 00:00:00 2001 From: pocikerim Date: Sat, 20 Dec 2025 17:46:23 +0300 Subject: [PATCH 207/270] Cache beanToken as immutable and remove redundant local variables to save gas --- .../ecosystem/MowPlantHarvestBlueprint.sol | 38 ++++++------------- .../ecosystem/tractor/utils/SiloHelpers.sol | 30 +++++++-------- 2 files changed, 26 insertions(+), 42 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 5bc8df7d..6fe54e50 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -119,7 +119,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { */ struct MowPlantHarvestLocalVars { address account; - address beanToken; int256 totalBeanTip; uint256 totalHarvestedBeans; uint256 totalPlantedBeans; @@ -154,7 +153,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Validate vars.account = beanstalk.tractorUser(); - vars.beanToken = beanToken; // get the user state from the protocol and validate against params ( @@ -185,7 +183,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Plant if the conditions are met if (vars.shouldPlant) { vars.totalPlantedBeans = beanstalk.plant(); - vars.plantedStem = beanstalk.getHighestNonGerminatingStem(vars.beanToken); + vars.plantedStem = beanstalk.getHighestNonGerminatingStem(beanToken); vars.totalBeanTip += params.opParams.plantTipAmount; } @@ -220,7 +218,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { _handleTip( vars.account, tipAddress, - vars.beanToken, params.mowPlantHarvestParams.sourceTokenIndices, vars.totalBeanTip, vars.totalHarvestedBeans, @@ -395,7 +392,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * 3. Otherwise: Fallback to full withdrawal plan * @param account The account to withdraw for * @param tipAddress The address to send the tip to - * @param _beanToken The cached bean token address * @param sourceTokenIndices The indices of the source tokens to withdraw from * @param totalBeanTip The total tip for mowing, planting and harvesting * @param totalHarvestedBeans Total beans harvested in this transaction (in internal balance) @@ -407,7 +403,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { function _handleTip( address account, address tipAddress, - address _beanToken, uint8[] memory sourceTokenIndices, int256 totalBeanTip, uint256 totalHarvestedBeans, @@ -421,13 +416,13 @@ contract MowPlantHarvestBlueprint is BlueprintBase { if (tipAmount == 0) { // Just deposit any harvested beans if (totalHarvestedBeans > 0) { - beanstalk.deposit(_beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); + beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); } return; } // Check if we can optimize (tip token resolves to Pinto) - bool canOptimize = _resolvedSourceIsPinto(sourceTokenIndices, _beanToken); + bool canOptimize = _resolvedSourceIsPinto(sourceTokenIndices); if (canOptimize) { // CASE 1: Harvest covers full tip (most gas efficient - no withdraw call needed) @@ -435,7 +430,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { _tipFromHarvestedOnly( account, tipAddress, - _beanToken, totalBeanTip, totalHarvestedBeans, tipAmount @@ -448,7 +442,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { _tipFromPlantedAndHarvested( account, tipAddress, - _beanToken, totalBeanTip, totalHarvestedBeans, tipAmount, @@ -460,13 +453,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // FALLBACK: Deposit all harvested beans first, then use withdrawal plan for tip if (totalHarvestedBeans > 0) { - beanstalk.deposit(_beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); + beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); } _enforceWithdrawalPlanAndTip( account, tipAddress, - _beanToken, sourceTokenIndices, totalBeanTip, maxGrownStalkPerBdv, @@ -480,14 +472,13 @@ contract MowPlantHarvestBlueprint is BlueprintBase { function _tipFromHarvestedOnly( address account, address tipAddress, - address _beanToken, int256 totalBeanTip, uint256 totalHarvestedBeans, uint256 tipAmount ) internal { // Pay tip from harvested beans (already in internal balance) tractorHelpers.tip( - _beanToken, + beanToken, account, tipAddress, totalBeanTip, @@ -498,7 +489,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Deposit remaining harvested beans to silo uint256 remaining = totalHarvestedBeans - tipAmount; if (remaining > 0) { - beanstalk.deposit(_beanToken, remaining, LibTransfer.From.INTERNAL); + beanstalk.deposit(beanToken, remaining, LibTransfer.From.INTERNAL); } } @@ -509,7 +500,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { function _tipFromPlantedAndHarvested( address account, address tipAddress, - address _beanToken, int256 totalBeanTip, uint256 totalHarvestedBeans, uint256 tipAmount, @@ -523,11 +513,11 @@ contract MowPlantHarvestBlueprint is BlueprintBase { stems[0] = plantedStem; uint256[] memory amounts = new uint256[](1); amounts[0] = tipFromPlant; - beanstalk.withdrawDeposits(_beanToken, stems, amounts, LibTransfer.To.INTERNAL); + beanstalk.withdrawDeposits(beanToken, stems, amounts, LibTransfer.To.INTERNAL); // Now all tip amount is in internal balance, pay the tip tractorHelpers.tip( - _beanToken, + beanToken, account, tipAddress, totalBeanTip, @@ -540,7 +530,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @notice Helper function that creates a withdrawal plan and tips the operator the total bean tip amount * @param account The account to withdraw for * @param tipAddress The address to send the tip to - * @param beanToken The cached bean token address * @param sourceTokenIndices The indices of the source tokens to withdraw from * @param totalBeanTip The total tip for mowing, planting and harvesting * @param maxGrownStalkPerBdv The maximum amount of grown stalk allowed to be used for the withdrawal, per bdv @@ -549,7 +538,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { function _enforceWithdrawalPlanAndTip( address account, address tipAddress, - address beanToken, uint8[] memory sourceTokenIndices, int256 totalBeanTip, uint256 maxGrownStalkPerBdv, @@ -594,12 +582,10 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @notice Checks if the resolved first source token is Pinto * @dev Handles both direct token indices and strategy-based indices (LOWEST_PRICE_STRATEGY, LOWEST_SEED_STRATEGY) * @param sourceTokenIndices The indices of the source tokens to withdraw from - * @param _beanToken The cached bean token address * @return True if the first resolved source token is Pinto */ function _resolvedSourceIsPinto( - uint8[] memory sourceTokenIndices, - address _beanToken + uint8[] memory sourceTokenIndices ) internal view returns (bool) { if (sourceTokenIndices.length == 0) return false; @@ -612,19 +598,19 @@ contract MowPlantHarvestBlueprint is BlueprintBase { if (priceIndices.length == 0) return false; address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); if (priceIndices[0] >= tokens.length) return false; - return tokens[priceIndices[0]] == _beanToken; + return tokens[priceIndices[0]] == beanToken; } // LOWEST_SEED_STRATEGY = type(uint8).max - 1 if (firstIdx == type(uint8).max - 1) { // For seed strategy, check if Pinto is the lowest seeded token (address lowestSeedToken, ) = tractorHelpers.getLowestSeedToken(); - return lowestSeedToken == _beanToken; + return lowestSeedToken == beanToken; } // Direct index - check if it points to Pinto address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); if (firstIdx >= tokens.length) return false; - return tokens[firstIdx] == _beanToken; + return tokens[firstIdx] == beanToken; } } diff --git a/contracts/ecosystem/tractor/utils/SiloHelpers.sol b/contracts/ecosystem/tractor/utils/SiloHelpers.sol index 9ede7dca..964d37e6 100644 --- a/contracts/ecosystem/tractor/utils/SiloHelpers.sol +++ b/contracts/ecosystem/tractor/utils/SiloHelpers.sol @@ -22,10 +22,10 @@ contract SiloHelpers { IBeanstalk immutable beanstalk; TractorHelpers immutable tractorHelpers; IPriceManipulation immutable priceManipulation; + address immutable beanToken; struct WithdrawLocalVars { address[] whitelistedTokens; - address beanToken; uint256 remainingBeansNeeded; uint256 amountWithdrawn; int96[] stems; @@ -45,7 +45,6 @@ contract SiloHelpers { struct WithdrawBeansLocalVars { uint256 amountWithdrawn; - address beanToken; address sourceToken; address nonBeanToken; uint256 totalLPAmount; @@ -73,6 +72,7 @@ contract SiloHelpers { beanstalk = IBeanstalk(_beanstalk); tractorHelpers = TractorHelpers(_tractorHelpers); priceManipulation = IPriceManipulation(_priceManipulation); + beanToken = beanstalk.getBeanToken(); } /** @@ -181,7 +181,6 @@ contract SiloHelpers { WithdrawLocalVars memory vars; vars.whitelistedTokens = getWhitelistStatusAddresses(); - vars.beanToken = beanstalk.getBeanToken(); vars.remainingBeansNeeded = targetAmount; // Handle strategy cases when firsrt element is a strategy @@ -197,7 +196,7 @@ contract SiloHelpers { } else if (filterParams.seedDifference != 0) { // if the seed difference is not 0, we need to filter the tokens based on the seed difference - uint256 beanSeeds = beanstalk.getSeedsForToken(vars.beanToken); + uint256 beanSeeds = beanstalk.getSeedsForToken(beanToken); uint8[] memory filteredTokenIndices = new uint8[](tokenIndices.length); uint8 index = 0; for (uint256 i = 0; i < tokenIndices.length; i++) { @@ -244,7 +243,7 @@ contract SiloHelpers { filterParams.maxStem = stemTip - int96(int256(filterParams.lowGrownStalkPerBdv)); // If source is bean token, calculate direct withdrawal - if (sourceToken == vars.beanToken) { + if (sourceToken == beanToken) { ( vars.stems, vars.amounts, @@ -300,7 +299,7 @@ contract SiloHelpers { // Calculate how many beans we can get from the available LP tokens beansAvailable = IWell(sourceToken).getRemoveLiquidityOneTokenOut( vars.availableAmount, - IERC20(vars.beanToken) + IERC20(beanToken) ); } else { // If enough LP was available, it means there was enough to fulfill the full amount @@ -398,14 +397,13 @@ contract SiloHelpers { } vars.amountWithdrawn = 0; - vars.beanToken = beanstalk.getBeanToken(); // Execute withdrawal plan for (vars.i = 0; vars.i < plan.sourceTokens.length; vars.i++) { vars.sourceToken = plan.sourceTokens[vars.i]; // Skip Bean token for price manipulation check since it's not a Well - if (vars.sourceToken != vars.beanToken) { + if (vars.sourceToken != beanToken) { // Check for price manipulation in the Well (vars.nonBeanToken, ) = IBeanstalk(beanstalk).getNonBeanTokenAndIndexFromWell( vars.sourceToken @@ -417,7 +415,7 @@ contract SiloHelpers { } // If source is bean token, withdraw directly - if (vars.sourceToken == vars.beanToken) { + if (vars.sourceToken == beanToken) { beanstalk.withdrawDeposits( vars.sourceToken, plan.stems[vars.i], @@ -453,7 +451,7 @@ contract SiloHelpers { IERC20(vars.sourceToken).approve(vars.sourceToken, vars.totalLPAmount); IWell(vars.sourceToken).removeLiquidityOneToken( vars.totalLPAmount, - IERC20(vars.beanToken), + IERC20(beanToken), plan.availableBeans[vars.i], address(this), type(uint256).max @@ -462,14 +460,14 @@ contract SiloHelpers { // Transfer from this contract's external balance to the user's internal/external balance depending on mode if (mode == LibTransfer.To.INTERNAL) { // approve spending of Beans from this contract's external balance - IERC20(vars.beanToken).approve(address(beanstalk), plan.availableBeans[vars.i]); + IERC20(beanToken).approve(address(beanstalk), plan.availableBeans[vars.i]); beanstalk.sendTokenToInternalBalance( - vars.beanToken, + beanToken, account, plan.availableBeans[vars.i] ); } else { - IERC20(vars.beanToken).transfer(account, plan.availableBeans[vars.i]); + IERC20(beanToken).transfer(account, plan.availableBeans[vars.i]); } vars.amountWithdrawn += plan.availableBeans[vars.i]; } @@ -670,7 +668,7 @@ contract SiloHelpers { */ function getTokenIndex(address token) public view returns (uint8 index) { // This relies on the assumption that the Bean token is whitelisted first - if (token == beanstalk.getBeanToken()) { + if (token == beanToken) { return 0; } address[] memory whitelistedTokens = getWhitelistStatusAddresses(); @@ -701,7 +699,7 @@ contract SiloHelpers { } // If token is Bean, return total amount - if (token == beanstalk.getBeanToken()) { + if (token == beanToken) { return totalAmount; } @@ -710,7 +708,7 @@ contract SiloHelpers { return IWell(token).getRemoveLiquidityOneTokenOut( totalAmount, - IERC20(beanstalk.getBeanToken()) + IERC20(beanToken) ); } From 3dedc34752f679b8a43feab1f52ec4f1b7495eb5 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sat, 20 Dec 2025 14:50:08 +0000 Subject: [PATCH 208/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/tractor/utils/SiloHelpers.sol | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/contracts/ecosystem/tractor/utils/SiloHelpers.sol b/contracts/ecosystem/tractor/utils/SiloHelpers.sol index 964d37e6..e673d33a 100644 --- a/contracts/ecosystem/tractor/utils/SiloHelpers.sol +++ b/contracts/ecosystem/tractor/utils/SiloHelpers.sol @@ -705,11 +705,7 @@ contract SiloHelpers { // If token is LP and we have deposits, calculate Bean amount from LP if (totalAmount > 0) { - return - IWell(token).getRemoveLiquidityOneTokenOut( - totalAmount, - IERC20(beanToken) - ); + return IWell(token).getRemoveLiquidityOneTokenOut(totalAmount, IERC20(beanToken)); } return 0; From 9d0ee4b648071ef68e0cf10230a70ad0dce0c92f Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Tue, 23 Dec 2025 03:08:51 -0500 Subject: [PATCH 209/270] remove logs --- contracts/libraries/Gauge/LibGaugeHelpers.sol | 2 -- 1 file changed, 2 deletions(-) diff --git a/contracts/libraries/Gauge/LibGaugeHelpers.sol b/contracts/libraries/Gauge/LibGaugeHelpers.sol index c93169b5..1302d153 100644 --- a/contracts/libraries/Gauge/LibGaugeHelpers.sol +++ b/contracts/libraries/Gauge/LibGaugeHelpers.sol @@ -6,7 +6,6 @@ import {AppStorage} from "contracts/beanstalk/storage/AppStorage.sol"; import {LibWhitelistedTokens} from "contracts/libraries/Silo/LibWhitelistedTokens.sol"; import {C} from "contracts/C.sol"; import {Implementation} from "contracts/beanstalk/storage/System.sol"; -import {console} from "forge-std/console.sol"; /** * @title LibGaugeHelpers @@ -183,7 +182,6 @@ library LibGaugeHelpers { * @dev Returns g.value if the call fails. */ function callGaugeId(GaugeId gaugeId, bytes memory systemData) internal { - console.log("Calling gaugeId: %s", uint256(gaugeId)); AppStorage storage s = LibAppStorage.diamondStorage(); // gs = `gauge storage` Gauge storage gs = s.sys.gaugeData.gauges[gaugeId]; From a1ff4848443fddfd2e5070646bd0e0014e8267ba Mon Sep 17 00:00:00 2001 From: pocikerim Date: Tue, 23 Dec 2025 14:50:06 +0300 Subject: [PATCH 210/270] Rename PlotCombined event to PlotsCombined for clarity --- contracts/beanstalk/facets/field/FieldFacet.sol | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 20b5d89a..a1958568 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -65,7 +65,7 @@ contract FieldFacet is Invariable, ReentrancyGuard { * @param plotIndexes The indices of the plots that were combined * @param totalPods The total number of pods in the final combined plot */ - event PlotCombined( + event PlotsCombined( address indexed account, uint256 fieldId, uint256[] plotIndexes, @@ -622,7 +622,7 @@ contract FieldFacet is Invariable, ReentrancyGuard { // update first plot with combined pods s.accts[account].fields[fieldId].plots[plotIndexes[0]] = totalPods; - emit PlotCombined(account, fieldId, plotIndexes, totalPods); + emit PlotsCombined(account, fieldId, plotIndexes, totalPods); } //////////////////// REFERRAL GETTERS //////////////////// From b74175120f1072314070eea36216b8013cd5ae03 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Tue, 23 Dec 2025 15:44:08 +0300 Subject: [PATCH 211/270] naming refactors --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 6fe54e50..e11c755d 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -215,7 +215,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } // Handle tip payment - _handleTip( + handlePintosAndTip( vars.account, tipAddress, params.mowPlantHarvestParams.sourceTokenIndices, @@ -400,7 +400,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @param maxGrownStalkPerBdv The maximum amount of grown stalk allowed to be used for the withdrawal, per bdv * @param slippageRatio The price slippage ratio for a lp token withdrawal */ - function _handleTip( + function handlePintosAndTip( address account, address tipAddress, uint8[] memory sourceTokenIndices, @@ -422,9 +422,9 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } // Check if we can optimize (tip token resolves to Pinto) - bool canOptimize = _resolvedSourceIsPinto(sourceTokenIndices); + bool tipWIthPinto = _resolvedSourceIsPinto(sourceTokenIndices); - if (canOptimize) { + if (tipWIthPinto) { // CASE 1: Harvest covers full tip (most gas efficient - no withdraw call needed) if (totalHarvestedBeans >= tipAmount) { _tipFromHarvestedOnly( From 07805a91fdd631f3778e4972bac701f3031b773d Mon Sep 17 00:00:00 2001 From: pocikerim Date: Tue, 23 Dec 2025 15:52:27 +0300 Subject: [PATCH 212/270] refactor use plant() tuple return --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 3 +-- contracts/interfaces/IBeanstalk.sol | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index e11c755d..dffa2cdd 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -182,8 +182,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Plant if the conditions are met if (vars.shouldPlant) { - vars.totalPlantedBeans = beanstalk.plant(); - vars.plantedStem = beanstalk.getHighestNonGerminatingStem(beanToken); + (vars.totalPlantedBeans, vars.plantedStem) = beanstalk.plant(); vars.totalBeanTip += params.opParams.plantTipAmount; } diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 7d1d49d8..3fa37985 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -166,7 +166,7 @@ interface IBeanstalk { function operator() external view returns (address); - function plant() external payable returns (uint256); + function plant() external payable returns (uint256 beans, int96 stem); function totalDeltaB() external view returns (int256); From 4d12449bbeba20b6e4103dca5c2c12540623810d Mon Sep 17 00:00:00 2001 From: pocikerim Date: Tue, 23 Dec 2025 16:09:07 +0300 Subject: [PATCH 213/270] refactor add local strategy constants --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index dffa2cdd..6e4ab762 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -26,6 +26,10 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 public constant HARVEST_DATA_KEY = uint256(keccak256("MowPlantHarvestBlueprint.harvestData")); + // Special token index values for withdrawal strategies (mirrors SiloHelpers constants) + uint8 private constant LOWEST_PRICE_STRATEGY = type(uint8).max; + uint8 private constant LOWEST_SEED_STRATEGY = type(uint8).max - 1; + /** * @notice Main struct for mow, plant and harvest blueprint * @param mowPlantHarvestParams Parameters related to mow, plant and harvest @@ -590,8 +594,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint8 firstIdx = sourceTokenIndices[0]; - // LOWEST_PRICE_STRATEGY = type(uint8).max - if (firstIdx == type(uint8).max) { + if (firstIdx == LOWEST_PRICE_STRATEGY) { // For price strategy, check if Pinto is the lowest priced token (uint8[] memory priceIndices, ) = tractorHelpers.getTokensAscendingPrice(); if (priceIndices.length == 0) return false; @@ -600,8 +603,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return tokens[priceIndices[0]] == beanToken; } - // LOWEST_SEED_STRATEGY = type(uint8).max - 1 - if (firstIdx == type(uint8).max - 1) { + if (firstIdx == LOWEST_SEED_STRATEGY) { // For seed strategy, check if Pinto is the lowest seeded token (address lowestSeedToken, ) = tractorHelpers.getLowestSeedToken(); return lowestSeedToken == beanToken; From ec6b24a92e68d9066306b7d0e15be07aad36c8eb Mon Sep 17 00:00:00 2001 From: pocikerim Date: Tue, 23 Dec 2025 16:22:17 +0300 Subject: [PATCH 214/270] Refactor withdrawal strategy constants to use public getters from SiloHelpers instead of redefining them locally --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 7 ++----- contracts/ecosystem/tractor/utils/SiloHelpers.sol | 4 ++-- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 6e4ab762..3ee5a153 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -26,9 +26,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 public constant HARVEST_DATA_KEY = uint256(keccak256("MowPlantHarvestBlueprint.harvestData")); - // Special token index values for withdrawal strategies (mirrors SiloHelpers constants) - uint8 private constant LOWEST_PRICE_STRATEGY = type(uint8).max; - uint8 private constant LOWEST_SEED_STRATEGY = type(uint8).max - 1; /** * @notice Main struct for mow, plant and harvest blueprint @@ -594,7 +591,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint8 firstIdx = sourceTokenIndices[0]; - if (firstIdx == LOWEST_PRICE_STRATEGY) { + if (firstIdx == siloHelpers.LOWEST_PRICE_STRATEGY()) { // For price strategy, check if Pinto is the lowest priced token (uint8[] memory priceIndices, ) = tractorHelpers.getTokensAscendingPrice(); if (priceIndices.length == 0) return false; @@ -603,7 +600,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return tokens[priceIndices[0]] == beanToken; } - if (firstIdx == LOWEST_SEED_STRATEGY) { + if (firstIdx == siloHelpers.LOWEST_SEED_STRATEGY()) { // For seed strategy, check if Pinto is the lowest seeded token (address lowestSeedToken, ) = tractorHelpers.getLowestSeedToken(); return lowestSeedToken == beanToken; diff --git a/contracts/ecosystem/tractor/utils/SiloHelpers.sol b/contracts/ecosystem/tractor/utils/SiloHelpers.sol index e673d33a..787b89a2 100644 --- a/contracts/ecosystem/tractor/utils/SiloHelpers.sol +++ b/contracts/ecosystem/tractor/utils/SiloHelpers.sol @@ -16,8 +16,8 @@ import {IPriceManipulation} from "contracts/interfaces/IPriceManipulation.sol"; */ contract SiloHelpers { // Special token index values for withdrawal strategies - uint8 internal constant LOWEST_PRICE_STRATEGY = type(uint8).max; - uint8 internal constant LOWEST_SEED_STRATEGY = type(uint8).max - 1; + uint8 public constant LOWEST_PRICE_STRATEGY = type(uint8).max; + uint8 public constant LOWEST_SEED_STRATEGY = type(uint8).max - 1; IBeanstalk immutable beanstalk; TractorHelpers immutable tractorHelpers; From 670c3099de2d1ef2a85d29d55b449518d5daf3fd Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 23 Dec 2025 13:24:23 +0000 Subject: [PATCH 215/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 3ee5a153..e9cdea96 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -26,7 +26,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 public constant HARVEST_DATA_KEY = uint256(keccak256("MowPlantHarvestBlueprint.harvestData")); - /** * @notice Main struct for mow, plant and harvest blueprint * @param mowPlantHarvestParams Parameters related to mow, plant and harvest From 074e8c69ade398dd37cb30a07088419f2e89f281 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Tue, 23 Dec 2025 16:30:51 +0300 Subject: [PATCH 216/270] check direct index before strategy based indices in _resolvedSourceIsPinto --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 3ee5a153..93beb37f 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -591,6 +591,13 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint8 firstIdx = sourceTokenIndices[0]; + // Direct index - check if it points to Pinto + if (firstIdx < siloHelpers.LOWEST_PRICE_STRATEGY()) { + address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); + if (firstIdx >= tokens.length) return false; + return tokens[firstIdx] == beanToken; + } + if (firstIdx == siloHelpers.LOWEST_PRICE_STRATEGY()) { // For price strategy, check if Pinto is the lowest priced token (uint8[] memory priceIndices, ) = tractorHelpers.getTokensAscendingPrice(); @@ -606,9 +613,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return lowestSeedToken == beanToken; } - // Direct index - check if it points to Pinto - address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); - if (firstIdx >= tokens.length) return false; - return tokens[firstIdx] == beanToken; + return false; } } From c9426f710dd943d4c1bb9fbd26f00170064e45ce Mon Sep 17 00:00:00 2001 From: pocikerim Date: Tue, 23 Dec 2025 16:35:53 +0300 Subject: [PATCH 217/270] use withdrawDeposit instead of withdrawDeposits for single stem withdrawal --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 63c4572c..f75884d5 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -508,11 +508,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 tipFromPlant = tipAmount - totalHarvestedBeans; // Withdraw needed amount from planted deposit - int96[] memory stems = new int96[](1); - stems[0] = plantedStem; - uint256[] memory amounts = new uint256[](1); - amounts[0] = tipFromPlant; - beanstalk.withdrawDeposits(beanToken, stems, amounts, LibTransfer.To.INTERNAL); + beanstalk.withdrawDeposit(beanToken, plantedStem, tipFromPlant, LibTransfer.To.INTERNAL); // Now all tip amount is in internal balance, pay the tip tractorHelpers.tip( From 51bdc1d719f2b118aacc323dfac1f9ebc85afa2c Mon Sep 17 00:00:00 2001 From: pocikerim Date: Tue, 23 Dec 2025 17:20:46 +0300 Subject: [PATCH 218/270] consolidate Pinto tip paths into single tip() call for gas optimization --- .../ecosystem/MowPlantHarvestBlueprint.sol | 170 +++++++++--------- contracts/interfaces/IBeanstalk.sol | 7 + 2 files changed, 90 insertions(+), 87 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index f75884d5..8eb217e3 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -384,11 +384,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } /** - * @notice Handles tip payment - * @dev Optimizes gas by using freshly obtained Pinto for tips when possible: - * 1. If harvested beans >= tip: Use harvested beans only (most efficient) - * 2. If harvested + planted >= tip: Use harvested first, withdraw remainder from planted deposit - * 3. Otherwise: Fallback to full withdrawal plan + * @notice Handles tip payment with optimized Pinto flow + * @dev Optimizes gas by using freshly obtained Pinto for tips when possible. + * All Pinto-based tip paths converge to a single tip() call at the end. + * 1. If harvested beans >= tip: Deposit excess, tip from harvested + * 2. If harvested + planted >= tip: Withdraw needed from planted, tip from both + * 3. Otherwise: Withdraw all planted + use withdrawal plan for remainder, then tip * @param account The account to withdraw for * @param tipAddress The address to send the tip to * @param sourceTokenIndices The indices of the source tokens to withdraw from @@ -412,8 +413,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ) internal { uint256 tipAmount = totalBeanTip > 0 ? uint256(totalBeanTip) : 0; + // Zero tip case - just deposit harvested beans if (tipAmount == 0) { - // Just deposit any harvested beans if (totalHarvestedBeans > 0) { beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); } @@ -421,103 +422,98 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } // Check if we can optimize (tip token resolves to Pinto) - bool tipWIthPinto = _resolvedSourceIsPinto(sourceTokenIndices); + bool tipWithPinto = _resolvedSourceIsPinto(sourceTokenIndices); - if (tipWIthPinto) { - // CASE 1: Harvest covers full tip (most gas efficient - no withdraw call needed) + if (tipWithPinto) { if (totalHarvestedBeans >= tipAmount) { - _tipFromHarvestedOnly( - account, - tipAddress, - totalBeanTip, - totalHarvestedBeans, - tipAmount - ); - return; + // CASE 1: Harvested covers full tip (most gas efficient) + // Deposit excess harvested beans to silo + uint256 remaining = totalHarvestedBeans - tipAmount; + if (remaining > 0) { + beanstalk.deposit(beanToken, remaining, LibTransfer.From.INTERNAL); + } + // tipAmount is already in internal balance from harvest + } else if (totalHarvestedBeans + totalPlantedBeans >= tipAmount) { + // CASE 2: Harvested + Planted covers tip + // Withdraw only what we need from planted deposit + uint256 neededFromPlant = tipAmount - totalHarvestedBeans; + beanstalk.withdrawDeposit(beanToken, plantedStem, neededFromPlant, LibTransfer.To.INTERNAL); + // Now tipAmount is in internal balance (harvested + withdrawn from planted) + } else { + // CASE 3: Need withdrawal plan for remainder + // First, withdraw ALL planted beans (they're already deposited by plant()) + if (totalPlantedBeans > 0) { + beanstalk.withdrawDeposit(beanToken, plantedStem, totalPlantedBeans, LibTransfer.To.INTERNAL); + } + // Calculate how much more we need from other sources + uint256 stillNeeded = tipAmount - totalHarvestedBeans - totalPlantedBeans; + // Withdraw only the remaining needed amount (no unnecessary deposit) + _withdrawBeansOnly(account, sourceTokenIndices, stillNeeded, maxGrownStalkPerBdv, slippageRatio); + // Now tipAmount is in internal balance } - // CASE 2: Need to combine harvested beans + planted beans - if (totalPlantedBeans > 0 && totalHarvestedBeans + totalPlantedBeans >= tipAmount) { - _tipFromPlantedAndHarvested( - account, - tipAddress, - totalBeanTip, - totalHarvestedBeans, - tipAmount, - plantedStem - ); - return; + tractorHelpers.tip( + beanToken, + account, + tipAddress, + totalBeanTip, + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); + } else { + // Non-Pinto tip - deposit harvested and use full withdrawal plan with tip + if (totalHarvestedBeans > 0) { + beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); } + _enforceWithdrawalPlanAndTip( + account, + tipAddress, + sourceTokenIndices, + totalBeanTip, + maxGrownStalkPerBdv, + slippageRatio + ); } - - // FALLBACK: Deposit all harvested beans first, then use withdrawal plan for tip - if (totalHarvestedBeans > 0) { - beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); - } - - _enforceWithdrawalPlanAndTip( - account, - tipAddress, - sourceTokenIndices, - totalBeanTip, - maxGrownStalkPerBdv, - slippageRatio - ); } /** - * @notice Handles tip payment using only harvested beans (CASE 1 - most gas efficient) + * @notice Helper function that withdraws beans from sources without tipping + * @dev Used when we need to supplement harvested/planted beans with additional withdrawals + * @param account The account to withdraw for + * @param sourceTokenIndices The indices of the source tokens to withdraw from + * @param amount The amount of beans to withdraw + * @param maxGrownStalkPerBdv The maximum amount of grown stalk allowed to be used for the withdrawal, per bdv + * @param slippageRatio The price slippage ratio for a lp token withdrawal */ - function _tipFromHarvestedOnly( + function _withdrawBeansOnly( address account, - address tipAddress, - int256 totalBeanTip, - uint256 totalHarvestedBeans, - uint256 tipAmount + uint8[] memory sourceTokenIndices, + uint256 amount, + uint256 maxGrownStalkPerBdv, + uint256 slippageRatio ) internal { - // Pay tip from harvested beans (already in internal balance) - tractorHelpers.tip( - beanToken, - account, - tipAddress, - totalBeanTip, - LibTransfer.From.INTERNAL, - LibTransfer.To.INTERNAL + // Create filter params for the withdrawal plan + LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( + maxGrownStalkPerBdv ); - // Deposit remaining harvested beans to silo - uint256 remaining = totalHarvestedBeans - tipAmount; - if (remaining > 0) { - beanstalk.deposit(beanToken, remaining, LibTransfer.From.INTERNAL); - } - } - - /** - * @notice Handles tip payment using harvested + planted beans (CASE 2) - * @dev Uses all harvested beans first, then withdraws remainder from planted deposit - */ - function _tipFromPlantedAndHarvested( - address account, - address tipAddress, - int256 totalBeanTip, - uint256 totalHarvestedBeans, - uint256 tipAmount, - int96 plantedStem - ) internal { - // Calculate how much to withdraw from planted deposit - uint256 tipFromPlant = tipAmount - totalHarvestedBeans; - - // Withdraw needed amount from planted deposit - beanstalk.withdrawDeposit(beanToken, plantedStem, tipFromPlant, LibTransfer.To.INTERNAL); + // Get withdrawal plan for the needed amount + LibSiloHelpers.WithdrawalPlan memory withdrawalPlan = siloHelpers.getWithdrawalPlan( + account, + sourceTokenIndices, + amount, + filterParams + ); - // Now all tip amount is in internal balance, pay the tip - tractorHelpers.tip( - beanToken, + // Execute the withdrawal plan + siloHelpers.withdrawBeansFromSources( account, - tipAddress, - totalBeanTip, - LibTransfer.From.INTERNAL, - LibTransfer.To.INTERNAL + sourceTokenIndices, + amount, + filterParams, + slippageRatio, + LibTransfer.To.INTERNAL, + withdrawalPlan ); } diff --git a/contracts/interfaces/IBeanstalk.sol b/contracts/interfaces/IBeanstalk.sol index 3fa37985..13addefc 100644 --- a/contracts/interfaces/IBeanstalk.sol +++ b/contracts/interfaces/IBeanstalk.sol @@ -264,6 +264,13 @@ interface IBeanstalk { uint256[] calldata sortedDepositIds ) external payable; + function withdrawDeposit( + address token, + int96 stem, + uint256 amount, + LibTransfer.To mode + ) external payable; + function withdrawDeposits( address token, int96[] calldata stems, From 149f6ce21daeed8a0147ce14d9ed95da370dd4a4 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 23 Dec 2025 14:22:48 +0000 Subject: [PATCH 219/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/MowPlantHarvestBlueprint.sol | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 8eb217e3..a450ba60 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -437,18 +437,34 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // CASE 2: Harvested + Planted covers tip // Withdraw only what we need from planted deposit uint256 neededFromPlant = tipAmount - totalHarvestedBeans; - beanstalk.withdrawDeposit(beanToken, plantedStem, neededFromPlant, LibTransfer.To.INTERNAL); + beanstalk.withdrawDeposit( + beanToken, + plantedStem, + neededFromPlant, + LibTransfer.To.INTERNAL + ); // Now tipAmount is in internal balance (harvested + withdrawn from planted) } else { // CASE 3: Need withdrawal plan for remainder // First, withdraw ALL planted beans (they're already deposited by plant()) if (totalPlantedBeans > 0) { - beanstalk.withdrawDeposit(beanToken, plantedStem, totalPlantedBeans, LibTransfer.To.INTERNAL); + beanstalk.withdrawDeposit( + beanToken, + plantedStem, + totalPlantedBeans, + LibTransfer.To.INTERNAL + ); } // Calculate how much more we need from other sources uint256 stillNeeded = tipAmount - totalHarvestedBeans - totalPlantedBeans; // Withdraw only the remaining needed amount (no unnecessary deposit) - _withdrawBeansOnly(account, sourceTokenIndices, stillNeeded, maxGrownStalkPerBdv, slippageRatio); + _withdrawBeansOnly( + account, + sourceTokenIndices, + stillNeeded, + maxGrownStalkPerBdv, + slippageRatio + ); // Now tipAmount is in internal balance } From d3d1e66446313d7d2cc588a4bdf942cfa9331bad Mon Sep 17 00:00:00 2001 From: pocikerim Date: Wed, 24 Dec 2025 12:34:23 +0300 Subject: [PATCH 220/270] refactor ConvertUpBlueprint inherit from BlueprintBase to reuse shared operator validation and tip resolution logic --- .../tractor/blueprints/ConvertUpBlueprint.sol | 51 +++++-------------- .../ecosystem/ConvertUpBlueprint.t.sol | 3 +- 2 files changed, 14 insertions(+), 40 deletions(-) diff --git a/contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol b/contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol index 7151ad4f..e89ceb19 100644 --- a/contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol +++ b/contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol @@ -2,9 +2,7 @@ pragma solidity ^0.8.20; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; -import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; -import {TractorHelpers} from "../utils/TractorHelpers.sol"; -import {PerFunctionPausable} from "../utils/PerFunctionPausable.sol"; +import {BlueprintBase} from "contracts/ecosystem/BlueprintBase.sol"; import {BeanstalkPrice} from "../../price/BeanstalkPrice.sol"; import {LibSiloHelpers} from "contracts/libraries/Silo/LibSiloHelpers.sol"; import {LibConvertData} from "contracts/libraries/Convert/LibConvertData.sol"; @@ -16,9 +14,9 @@ import {SiloHelpers} from "../utils/SiloHelpers.sol"; * @title ConvertUpBlueprint * @author FordPinto, Frijo * @notice Contract for converting up with Tractor, with a number of conditions - * @dev This contract always converts up to Bean token, which is obtained from beanstalk.getBeanToken() + * @dev This contract always converts up to Bean token (stored as immutable from BlueprintBase) */ -contract ConvertUpBlueprint is PerFunctionPausable { +contract ConvertUpBlueprint is BlueprintBase { /** * @notice Event emitted when a convert up order is complete, or no longer executable due to remaining bdv being less than min convert per season * @param blueprintHash The hash of the blueprint @@ -61,7 +59,7 @@ contract ConvertUpBlueprint is PerFunctionPausable { */ struct ConvertUpBlueprintStruct { ConvertUpParams convertUpParams; - OperatorParams opParams; + BlueprintBase.OperatorParams opParams; } /** @@ -107,20 +105,6 @@ contract ConvertUpBlueprint is PerFunctionPausable { LibSiloHelpers.Mode lowStalkDeposits; // USE (0): use low stalk deposit. OMIT (1): omit low stalk deposits. USE_LAST (2): use low stalk deposits last. } - /** - * @notice Struct to hold operator parameters - * @param whitelistedOperators Array of whitelisted operator addresses - * @param tipAddress Address to send tip to - * @param operatorTipAmount Amount of tip to pay to operator - */ - struct OperatorParams { - address[] whitelistedOperators; - address tipAddress; - int256 operatorTipAmount; - } - - IBeanstalk immutable beanstalk; - TractorHelpers public immutable tractorHelpers; BeanstalkPrice public immutable beanstalkPrice; SiloHelpers public immutable siloHelpers; @@ -146,9 +130,7 @@ contract ConvertUpBlueprint is PerFunctionPausable { address _tractorHelpers, address _siloHelpers, address _beanstalkPrice - ) PerFunctionPausable(_owner) { - beanstalk = IBeanstalk(_beanstalk); - tractorHelpers = TractorHelpers(_tractorHelpers); + ) BlueprintBase(_beanstalk, _owner, _tractorHelpers) { siloHelpers = SiloHelpers(_siloHelpers); beanstalkPrice = BeanstalkPrice(_beanstalkPrice); } @@ -180,18 +162,10 @@ contract ConvertUpBlueprint is PerFunctionPausable { ); // Check if the executing operator (msg.sender) is whitelisted - require( - tractorHelpers.isOperatorWhitelisted(params.opParams.whitelistedOperators), - "Operator not whitelisted" - ); - - // Create memory copy of opParams to make it writable - OperatorParams memory opParams = params.opParams; + _validateOperatorParams(params.opParams); // If tip address is not set, set it to the operator - if (opParams.tipAddress == address(0)) { - opParams.tipAddress = beanstalk.operator(); - } + address tipAddress = _resolveTipAddress(params.opParams.tipAddress); // Get current BDV left to convert vars.beansLeftToConvert = getBeansLeftToConvert(vars.orderHash); @@ -232,11 +206,11 @@ contract ConvertUpBlueprint is PerFunctionPausable { LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( params.convertUpParams.maxGrownStalkPerBdv ); - if (opParams.operatorTipAmount > 0) { + if (params.opParams.operatorTipAmount > 0) { siloHelpers.withdrawBeansFromSources( vars.account, params.convertUpParams.sourceTokenIndices, - uint256(opParams.operatorTipAmount), + uint256(params.opParams.operatorTipAmount), filterParams, slippageRatio, LibTransfer.To.INTERNAL, @@ -263,8 +237,6 @@ contract ConvertUpBlueprint is PerFunctionPausable { emptyPlan ); - address beanToken = beanstalk.getBeanToken(); - // Execute the conversion using Beanstalk's convert function vars.amountBeansConverted = executeConvertUp( vars, @@ -287,8 +259,8 @@ contract ConvertUpBlueprint is PerFunctionPausable { tractorHelpers.tip( beanToken, vars.account, - opParams.tipAddress, - opParams.operatorTipAmount, + tipAddress, + params.opParams.operatorTipAmount, LibTransfer.From.INTERNAL, LibTransfer.To.INTERNAL ); @@ -474,6 +446,7 @@ contract ConvertUpBlueprint is PerFunctionPausable { /** * @notice Executes the convert up operation using Beanstalk's convert function * @param vars Local variables containing the necessary data for execution + * @param beanToken The address of the Bean token (inherited from BlueprintBase) * @param slippageRatio Slippage tolerance ratio for the conversion * @param maxGrownStalkPerBdvPenalty Maximum grown stalk per BDV penalty to accept * @return totalAmountConverted The total amount converted across all token types diff --git a/test/foundry/ecosystem/ConvertUpBlueprint.t.sol b/test/foundry/ecosystem/ConvertUpBlueprint.t.sol index 54a71029..f8c7cee3 100644 --- a/test/foundry/ecosystem/ConvertUpBlueprint.t.sol +++ b/test/foundry/ecosystem/ConvertUpBlueprint.t.sol @@ -7,6 +7,7 @@ import {MockToken} from "contracts/mocks/MockToken.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {TractorHelpers} from "contracts/ecosystem/tractor/utils/TractorHelpers.sol"; import {ConvertUpBlueprint} from "contracts/ecosystem/tractor/blueprints/ConvertUpBlueprint.sol"; +import {BlueprintBase} from "contracts/ecosystem/BlueprintBase.sol"; import {PriceManipulation} from "contracts/ecosystem/tractor/utils/PriceManipulation.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; import {TractorTestHelper} from "test/foundry/utils/TractorTestHelper.sol"; @@ -949,7 +950,7 @@ contract ConvertUpBlueprintTest is TractorTestHelper { whitelistedOperators[0] = address(this); // Add the current contract as a whitelisted operator // Create the OperatorParams struct - ConvertUpBlueprint.OperatorParams memory opParams = ConvertUpBlueprint.OperatorParams({ + BlueprintBase.OperatorParams memory opParams = BlueprintBase.OperatorParams({ whitelistedOperators: whitelistedOperators, tipAddress: params.tipAddress, operatorTipAmount: params.tipAmount From dc9a458947d22bdc8a2df8d490139191e69e4e48 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Wed, 24 Dec 2025 12:44:38 +0300 Subject: [PATCH 221/270] use Bean instead of Pinto for terminology consistency --- .../ecosystem/MowPlantHarvestBlueprint.sol | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index a450ba60..e075dc99 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -214,7 +214,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } // Handle tip payment - handlePintosAndTip( + handleBeansAndTip( vars.account, tipAddress, params.mowPlantHarvestParams.sourceTokenIndices, @@ -384,9 +384,9 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } /** - * @notice Handles tip payment with optimized Pinto flow - * @dev Optimizes gas by using freshly obtained Pinto for tips when possible. - * All Pinto-based tip paths converge to a single tip() call at the end. + * @notice Handles tip payment with optimized Bean flow + * @dev Optimizes gas by using freshly obtained Bean for tips when possible. + * All Bean-based tip paths converge to a single tip() call at the end. * 1. If harvested beans >= tip: Deposit excess, tip from harvested * 2. If harvested + planted >= tip: Withdraw needed from planted, tip from both * 3. Otherwise: Withdraw all planted + use withdrawal plan for remainder, then tip @@ -400,7 +400,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @param maxGrownStalkPerBdv The maximum amount of grown stalk allowed to be used for the withdrawal, per bdv * @param slippageRatio The price slippage ratio for a lp token withdrawal */ - function handlePintosAndTip( + function handleBeansAndTip( address account, address tipAddress, uint8[] memory sourceTokenIndices, @@ -421,10 +421,10 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return; } - // Check if we can optimize (tip token resolves to Pinto) - bool tipWithPinto = _resolvedSourceIsPinto(sourceTokenIndices); + // Check if we can optimize (tip token resolves to Bean) + bool tipWithBean = _resolvedSourceIsBean(sourceTokenIndices); - if (tipWithPinto) { + if (tipWithBean) { if (totalHarvestedBeans >= tipAmount) { // CASE 1: Harvested covers full tip (most gas efficient) // Deposit excess harvested beans to silo @@ -477,7 +477,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { LibTransfer.To.INTERNAL ); } else { - // Non-Pinto tip - deposit harvested and use full withdrawal plan with tip + // Non-Bean tip - deposit harvested and use full withdrawal plan with tip if (totalHarvestedBeans > 0) { beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); } @@ -586,19 +586,19 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } /** - * @notice Checks if the resolved first source token is Pinto + * @notice Checks if the resolved first source token is Bean * @dev Handles both direct token indices and strategy-based indices (LOWEST_PRICE_STRATEGY, LOWEST_SEED_STRATEGY) * @param sourceTokenIndices The indices of the source tokens to withdraw from - * @return True if the first resolved source token is Pinto + * @return True if the first resolved source token is Bean */ - function _resolvedSourceIsPinto( + function _resolvedSourceIsBean( uint8[] memory sourceTokenIndices ) internal view returns (bool) { if (sourceTokenIndices.length == 0) return false; uint8 firstIdx = sourceTokenIndices[0]; - // Direct index - check if it points to Pinto + // Direct index - check if it points to Bean if (firstIdx < siloHelpers.LOWEST_PRICE_STRATEGY()) { address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); if (firstIdx >= tokens.length) return false; @@ -606,7 +606,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } if (firstIdx == siloHelpers.LOWEST_PRICE_STRATEGY()) { - // For price strategy, check if Pinto is the lowest priced token + // For price strategy, check if Bean is the lowest priced token (uint8[] memory priceIndices, ) = tractorHelpers.getTokensAscendingPrice(); if (priceIndices.length == 0) return false; address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); @@ -615,7 +615,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } if (firstIdx == siloHelpers.LOWEST_SEED_STRATEGY()) { - // For seed strategy, check if Pinto is the lowest seeded token + // For seed strategy, check if Bean is the lowest seeded token (address lowestSeedToken, ) = tractorHelpers.getLowestSeedToken(); return lowestSeedToken == beanToken; } From 905d012dc15edb31da4b9f646e53f9bc4fac6ab6 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Wed, 24 Dec 2025 15:02:09 +0300 Subject: [PATCH 222/270] consolidate handleBeansAndTip logic into single tip flow, remove _resolvedSourceIsBean and _enforceWithdrawalPlanAndTip --- .../ecosystem/MowPlantHarvestBlueprint.sol | 185 +++--------------- 1 file changed, 27 insertions(+), 158 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index e075dc99..7718718c 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -384,12 +384,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } /** - * @notice Handles tip payment with optimized Bean flow - * @dev Optimizes gas by using freshly obtained Bean for tips when possible. - * All Bean-based tip paths converge to a single tip() call at the end. - * 1. If harvested beans >= tip: Deposit excess, tip from harvested - * 2. If harvested + planted >= tip: Withdraw needed from planted, tip from both - * 3. Otherwise: Withdraw all planted + use withdrawal plan for remainder, then tip + * @notice Handles tip payment * @param account The account to withdraw for * @param tipAddress The address to send the tip to * @param sourceTokenIndices The indices of the source tokens to withdraw from @@ -411,85 +406,48 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 maxGrownStalkPerBdv, uint256 slippageRatio ) internal { - uint256 tipAmount = totalBeanTip > 0 ? uint256(totalBeanTip) : 0; + int256 toDeposit = int256(totalHarvestedBeans) - totalBeanTip; - // Zero tip case - just deposit harvested beans - if (tipAmount == 0) { - if (totalHarvestedBeans > 0) { - beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); - } - return; - } + if (toDeposit < 0) { + uint256 neededFromPlanted = uint256(-toDeposit); + uint256 withdrawFromPlanted = neededFromPlanted < totalPlantedBeans + ? neededFromPlanted + : totalPlantedBeans; - // Check if we can optimize (tip token resolves to Bean) - bool tipWithBean = _resolvedSourceIsBean(sourceTokenIndices); - - if (tipWithBean) { - if (totalHarvestedBeans >= tipAmount) { - // CASE 1: Harvested covers full tip (most gas efficient) - // Deposit excess harvested beans to silo - uint256 remaining = totalHarvestedBeans - tipAmount; - if (remaining > 0) { - beanstalk.deposit(beanToken, remaining, LibTransfer.From.INTERNAL); - } - // tipAmount is already in internal balance from harvest - } else if (totalHarvestedBeans + totalPlantedBeans >= tipAmount) { - // CASE 2: Harvested + Planted covers tip - // Withdraw only what we need from planted deposit - uint256 neededFromPlant = tipAmount - totalHarvestedBeans; + if (withdrawFromPlanted > 0) { beanstalk.withdrawDeposit( beanToken, plantedStem, - neededFromPlant, + withdrawFromPlanted, LibTransfer.To.INTERNAL ); - // Now tipAmount is in internal balance (harvested + withdrawn from planted) - } else { - // CASE 3: Need withdrawal plan for remainder - // First, withdraw ALL planted beans (they're already deposited by plant()) - if (totalPlantedBeans > 0) { - beanstalk.withdrawDeposit( - beanToken, - plantedStem, - totalPlantedBeans, - LibTransfer.To.INTERNAL - ); - } - // Calculate how much more we need from other sources - uint256 stillNeeded = tipAmount - totalHarvestedBeans - totalPlantedBeans; - // Withdraw only the remaining needed amount (no unnecessary deposit) + } + + // If planted wasn't enough, withdraw from other sources + uint256 remainingNeeded = neededFromPlanted - withdrawFromPlanted; + if (remainingNeeded > 0) { _withdrawBeansOnly( account, sourceTokenIndices, - stillNeeded, + remainingNeeded, maxGrownStalkPerBdv, slippageRatio ); - // Now tipAmount is in internal balance } + } - tractorHelpers.tip( - beanToken, - account, - tipAddress, - totalBeanTip, - LibTransfer.From.INTERNAL, - LibTransfer.To.INTERNAL - ); - } else { - // Non-Bean tip - deposit harvested and use full withdrawal plan with tip - if (totalHarvestedBeans > 0) { - beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); - } - _enforceWithdrawalPlanAndTip( - account, - tipAddress, - sourceTokenIndices, - totalBeanTip, - maxGrownStalkPerBdv, - slippageRatio - ); + if (toDeposit > 0) { + beanstalk.deposit(beanToken, uint256(toDeposit), LibTransfer.From.INTERNAL); } + + tractorHelpers.tip( + beanToken, + account, + tipAddress, + totalBeanTip, + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); } /** @@ -533,93 +491,4 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ); } - /** - * @notice Helper function that creates a withdrawal plan and tips the operator the total bean tip amount - * @param account The account to withdraw for - * @param tipAddress The address to send the tip to - * @param sourceTokenIndices The indices of the source tokens to withdraw from - * @param totalBeanTip The total tip for mowing, planting and harvesting - * @param maxGrownStalkPerBdv The maximum amount of grown stalk allowed to be used for the withdrawal, per bdv - * @param slippageRatio The price slippage ratio for a lp token withdrawal, between the instantaneous price and the current price - */ - function _enforceWithdrawalPlanAndTip( - address account, - address tipAddress, - uint8[] memory sourceTokenIndices, - int256 totalBeanTip, - uint256 maxGrownStalkPerBdv, - uint256 slippageRatio - ) internal { - // Create filter params for the withdrawal plan - LibSiloHelpers.FilterParams memory filterParams = LibSiloHelpers.getDefaultFilterParams( - maxGrownStalkPerBdv - ); - - // Check if enough beans are available using getWithdrawalPlan - LibSiloHelpers.WithdrawalPlan memory withdrawalPlan = siloHelpers.getWithdrawalPlan( - account, - sourceTokenIndices, - uint256(totalBeanTip), - filterParams - ); - - // Execute the withdrawal plan to withdraw the tip amount - siloHelpers.withdrawBeansFromSources( - account, - sourceTokenIndices, - uint256(totalBeanTip), - filterParams, - slippageRatio, - LibTransfer.To.INTERNAL, - withdrawalPlan - ); - - // Tip the operator with the withdrawn beans - tractorHelpers.tip( - beanToken, - account, - tipAddress, - totalBeanTip, - LibTransfer.From.INTERNAL, - LibTransfer.To.INTERNAL - ); - } - - /** - * @notice Checks if the resolved first source token is Bean - * @dev Handles both direct token indices and strategy-based indices (LOWEST_PRICE_STRATEGY, LOWEST_SEED_STRATEGY) - * @param sourceTokenIndices The indices of the source tokens to withdraw from - * @return True if the first resolved source token is Bean - */ - function _resolvedSourceIsBean( - uint8[] memory sourceTokenIndices - ) internal view returns (bool) { - if (sourceTokenIndices.length == 0) return false; - - uint8 firstIdx = sourceTokenIndices[0]; - - // Direct index - check if it points to Bean - if (firstIdx < siloHelpers.LOWEST_PRICE_STRATEGY()) { - address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); - if (firstIdx >= tokens.length) return false; - return tokens[firstIdx] == beanToken; - } - - if (firstIdx == siloHelpers.LOWEST_PRICE_STRATEGY()) { - // For price strategy, check if Bean is the lowest priced token - (uint8[] memory priceIndices, ) = tractorHelpers.getTokensAscendingPrice(); - if (priceIndices.length == 0) return false; - address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); - if (priceIndices[0] >= tokens.length) return false; - return tokens[priceIndices[0]] == beanToken; - } - - if (firstIdx == siloHelpers.LOWEST_SEED_STRATEGY()) { - // For seed strategy, check if Bean is the lowest seeded token - (address lowestSeedToken, ) = tractorHelpers.getLowestSeedToken(); - return lowestSeedToken == beanToken; - } - - return false; - } } From aae5564518d5967e2eda9b451bea87103419cdc8 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 24 Dec 2025 12:06:12 +0000 Subject: [PATCH 223/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 7718718c..e5981171 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -490,5 +490,4 @@ contract MowPlantHarvestBlueprint is BlueprintBase { withdrawalPlan ); } - } From fb8392a153be8e9b8dba6b941d706a40c6cee43c Mon Sep 17 00:00:00 2001 From: pocikerim Date: Thu, 8 Jan 2026 14:14:06 +0300 Subject: [PATCH 224/270] fix: restore tipWithBean logic for Bean vs non-Bean source handling and fix minTwaDeltaB naming --- .../ecosystem/MowPlantHarvestBlueprint.sol | 148 +++++++++++++----- test/foundry/utils/TractorTestHelper.sol | 8 +- 2 files changed, 110 insertions(+), 46 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index e5981171..5cdadd23 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -70,7 +70,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { /** * @notice Struct to hold mow, plant and harvest parameters * @param minMowAmount The minimum total claimable stalk threshold to mow - * @param mintwaDeltaB The minimum twaDeltaB to mow if the protocol + * @param minTwaDeltaB The minimum twaDeltaB to mow if the protocol * is close to starting the next season above the value target * @param minPlantAmount The earned beans threshold to plant * @param fieldHarvestConfigs Array of field-specific harvest configurations @@ -84,7 +84,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { struct MowPlantHarvestParams { // Mow uint256 minMowAmount; - uint256 mintwaDeltaB; + uint256 minTwaDeltaB; // Plant uint256 minPlantAmount; // Harvest, per field id @@ -260,7 +260,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // validate params - only revert if none of the conditions are met shouldMow = _checkMowConditions( - params.mowPlantHarvestParams.mintwaDeltaB, + params.mowPlantHarvestParams.minTwaDeltaB, params.mowPlantHarvestParams.minMowAmount, totalClaimableStalk, previousSeasonTimestamp @@ -285,7 +285,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @return bool True if the user should mow, false otherwise */ function _checkMowConditions( - uint256 mintwaDeltaB, + uint256 minTwaDeltaB, uint256 minMowAmount, uint256 totalClaimableStalk, uint256 previousSeasonTimestamp @@ -294,7 +294,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // if the totalDeltaB and totalClaimableStalk are both greater than the min amount, return true // This also guards against double dipping the blueprint after planting or harvesting since stalk will be 0 - return totalClaimableStalk > minMowAmount && beanstalk.totalDeltaB() > int256(mintwaDeltaB); + return totalClaimableStalk > minMowAmount && beanstalk.totalDeltaB() > int256(minTwaDeltaB); } /** @@ -406,48 +406,76 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256 maxGrownStalkPerBdv, uint256 slippageRatio ) internal { - int256 toDeposit = int256(totalHarvestedBeans) - totalBeanTip; - - if (toDeposit < 0) { - uint256 neededFromPlanted = uint256(-toDeposit); - uint256 withdrawFromPlanted = neededFromPlanted < totalPlantedBeans - ? neededFromPlanted - : totalPlantedBeans; - - if (withdrawFromPlanted > 0) { - beanstalk.withdrawDeposit( - beanToken, - plantedStem, - withdrawFromPlanted, - LibTransfer.To.INTERNAL - ); + // Check if tip source is Bean - enables direct use of harvested/planted beans + bool tipWithBean = _resolvedSourceIsBean(sourceTokenIndices); + + if (tipWithBean) { + // Bean tip flow: use harvested/planted beans directly without extra withdrawals + int256 toDeposit = int256(totalHarvestedBeans) - totalBeanTip; + + if (toDeposit < 0) { + uint256 neededFromPlanted = uint256(-toDeposit); + uint256 withdrawFromPlanted = neededFromPlanted < totalPlantedBeans + ? neededFromPlanted + : totalPlantedBeans; + + if (withdrawFromPlanted > 0) { + beanstalk.withdrawDeposit( + beanToken, + plantedStem, + withdrawFromPlanted, + LibTransfer.To.INTERNAL + ); + } + + // If planted wasn't enough, withdraw from other sources + uint256 remainingNeeded = neededFromPlanted - withdrawFromPlanted; + if (remainingNeeded > 0) { + _withdrawBeansOnly( + account, + sourceTokenIndices, + remainingNeeded, + maxGrownStalkPerBdv, + slippageRatio + ); + } } - // If planted wasn't enough, withdraw from other sources - uint256 remainingNeeded = neededFromPlanted - withdrawFromPlanted; - if (remainingNeeded > 0) { - _withdrawBeansOnly( - account, - sourceTokenIndices, - remainingNeeded, - maxGrownStalkPerBdv, - slippageRatio - ); + if (toDeposit > 0) { + beanstalk.deposit(beanToken, uint256(toDeposit), LibTransfer.From.INTERNAL); } - } - if (toDeposit > 0) { - beanstalk.deposit(beanToken, uint256(toDeposit), LibTransfer.From.INTERNAL); - } + tractorHelpers.tip( + beanToken, + account, + tipAddress, + totalBeanTip, + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); + } else { + // Non-Bean source: deposit harvested beans back, then withdraw tip from user's deposits + if (totalHarvestedBeans > 0) { + beanstalk.deposit(beanToken, totalHarvestedBeans, LibTransfer.From.INTERNAL); + } - tractorHelpers.tip( - beanToken, - account, - tipAddress, - totalBeanTip, - LibTransfer.From.INTERNAL, - LibTransfer.To.INTERNAL - ); + _withdrawBeansOnly( + account, + sourceTokenIndices, + uint256(totalBeanTip), + maxGrownStalkPerBdv, + slippageRatio + ); + + tractorHelpers.tip( + beanToken, + account, + tipAddress, + totalBeanTip, + LibTransfer.From.INTERNAL, + LibTransfer.To.INTERNAL + ); + } } /** @@ -490,4 +518,40 @@ contract MowPlantHarvestBlueprint is BlueprintBase { withdrawalPlan ); } + + /** + * @notice Checks if the resolved first source token is Bean + * @dev Handles both direct token indices and strategy-based indices (LOWEST_PRICE_STRATEGY, LOWEST_SEED_STRATEGY) + * @param sourceTokenIndices The indices of the source tokens to withdraw from + * @return True if the first resolved source token is Bean + */ + function _resolvedSourceIsBean( + uint8[] memory sourceTokenIndices + ) internal view returns (bool) { + uint8 firstIdx = sourceTokenIndices[0]; + + // Direct index - check if it points to Bean + if (firstIdx < siloHelpers.LOWEST_PRICE_STRATEGY()) { + address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); + if (firstIdx >= tokens.length) return false; + return tokens[firstIdx] == beanToken; + } + + if (firstIdx == siloHelpers.LOWEST_PRICE_STRATEGY()) { + // For price strategy, check if Bean is the lowest priced token + (uint8[] memory priceIndices, ) = tractorHelpers.getTokensAscendingPrice(); + if (priceIndices.length == 0) return false; + address[] memory tokens = siloHelpers.getWhitelistStatusAddresses(); + if (priceIndices[0] >= tokens.length) return false; + return tokens[priceIndices[0]] == beanToken; + } + + if (firstIdx == siloHelpers.LOWEST_SEED_STRATEGY()) { + // For seed strategy, check if Bean is the lowest seeded token + (address lowestSeedToken, ) = tractorHelpers.getLowestSeedToken(); + return lowestSeedToken == beanToken; + } + + return false; + } } diff --git a/test/foundry/utils/TractorTestHelper.sol b/test/foundry/utils/TractorTestHelper.sol index ecf1b88a..35e501c8 100644 --- a/test/foundry/utils/TractorTestHelper.sol +++ b/test/foundry/utils/TractorTestHelper.sol @@ -434,7 +434,7 @@ contract TractorTestHelper is TestHelper { address account, SourceMode sourceMode, uint256 minMowAmount, - uint256 mintwaDeltaB, + uint256 minTwaDeltaB, uint256 minPlantAmount, uint256 minHarvestAmount, address tipAddress, @@ -453,7 +453,7 @@ contract TractorTestHelper is TestHelper { params = createMowPlantHarvestBlueprintStruct( uint8(sourceMode), minMowAmount, - mintwaDeltaB, + minTwaDeltaB, minPlantAmount, minHarvestAmount, tipAddress, @@ -483,7 +483,7 @@ contract TractorTestHelper is TestHelper { function createMowPlantHarvestBlueprintStruct( uint8 sourceMode, uint256 minMowAmount, - uint256 mintwaDeltaB, + uint256 minTwaDeltaB, uint256 minPlantAmount, uint256 minHarvestAmount, address tipAddress, @@ -519,7 +519,7 @@ contract TractorTestHelper is TestHelper { MowPlantHarvestBlueprint.MowPlantHarvestParams memory mowPlantHarvestParams = MowPlantHarvestBlueprint.MowPlantHarvestParams({ minMowAmount: minMowAmount, - mintwaDeltaB: mintwaDeltaB, + minTwaDeltaB: minTwaDeltaB, minPlantAmount: minPlantAmount, fieldHarvestConfigs: fieldHarvestConfigs, sourceTokenIndices: sourceTokenIndices, From 69c2ff166fb47dc07558d378ad3bced180dec04b Mon Sep 17 00:00:00 2001 From: pocikerim Date: Thu, 8 Jan 2026 14:50:06 +0300 Subject: [PATCH 225/270] remove redundant OperatorHarvestData struct and decode harvestable plot indexes directly --- .../ecosystem/MowPlantHarvestBlueprint.sol | 23 +++---------------- test/foundry/utils/TractorTestHelper.sol | 19 +++++++-------- 2 files changed, 11 insertions(+), 31 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 5cdadd23..771b20f1 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -56,16 +56,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256[] harvestablePlots; } - /** - * @notice Struct for operator-provided harvest data via dynamic calldata - * @dev Operator passes this via tractorDynamicData to avoid on-chain plot iteration - * @param fieldId The field ID this data is for - * @param harvestablePlotIndexes Array of harvestable plot indexes - */ - struct OperatorHarvestData { - uint256 fieldId; - uint256[] harvestablePlotIndexes; - } /** * @notice Struct to hold mow, plant and harvest parameters @@ -364,19 +354,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { continue; } - // Decode operator-provided harvest data - OperatorHarvestData memory harvestData = abi.decode( - operatorData, - (OperatorHarvestData) - ); - - // Verify operator provided data for the correct field - require(harvestData.fieldId == fieldId, "MowPlantHarvestBlueprint: Field ID mismatch"); + // Decode operator-provided harvestable plot indexes + uint256[] memory harvestablePlotIndexes = abi.decode(operatorData, (uint256[])); - // Use operator data - validation happens in harvest() call userFieldHarvestResults[i] = UserFieldHarvestResults({ fieldId: fieldId, - harvestablePlots: harvestData.harvestablePlotIndexes + harvestablePlots: harvestablePlotIndexes }); } diff --git a/test/foundry/utils/TractorTestHelper.sol b/test/foundry/utils/TractorTestHelper.sol index 35e501c8..3da4cdba 100644 --- a/test/foundry/utils/TractorTestHelper.sol +++ b/test/foundry/utils/TractorTestHelper.sol @@ -168,15 +168,14 @@ contract TractorTestHelper is TestHelper { for (uint256 i = 0; i < fieldIds.length; i++) { uint256 fieldId = fieldIds[i]; - // Get harvestable plot data - MowPlantHarvestBlueprint.OperatorHarvestData - memory harvestData = _getOperatorHarvestData(account, fieldId); + // Get harvestable plot indexes + uint256[] memory harvestablePlotIndexes = _getHarvestablePlotIndexes(account, fieldId); // Create ContractData with key = HARVEST_DATA_KEY + fieldId uint256 key = mowPlantHarvestBlueprint.HARVEST_DATA_KEY() + fieldId; dynamicData[i] = IMockFBeanstalk.ContractData({ key: key, - value: abi.encode(harvestData) + value: abi.encode(harvestablePlotIndexes) }); } } @@ -184,19 +183,18 @@ contract TractorTestHelper is TestHelper { /** * @notice Calculate harvestable plots for a given account and field * @dev Simulates what operator would calculate off-chain + * @return harvestablePlotIndexes Array of harvestable plot indexes */ - function _getOperatorHarvestData( + function _getHarvestablePlotIndexes( address account, uint256 fieldId - ) internal view returns (MowPlantHarvestBlueprint.OperatorHarvestData memory harvestData) { + ) internal view returns (uint256[] memory) { // Get plot indexes for the account uint256[] memory plotIndexes = bs.getPlotIndexesFromAccount(account, fieldId); uint256 harvestableIndex = bs.harvestableIndex(fieldId); if (plotIndexes.length == 0) { - harvestData.fieldId = fieldId; - harvestData.harvestablePlotIndexes = new uint256[](0); - return harvestData; + return new uint256[](0); } // Temporary array to collect harvestable plots @@ -224,8 +222,7 @@ contract TractorTestHelper is TestHelper { harvestablePlots[i] = tempPlots[i]; } - harvestData.fieldId = fieldId; - harvestData.harvestablePlotIndexes = harvestablePlots; + return harvestablePlots; } // Helper function to sign blueprints From 4e23fb9aa02374f515169b96179b75c79c86b677 Mon Sep 17 00:00:00 2001 From: pocikerim Date: Fri, 9 Jan 2026 15:09:18 +0300 Subject: [PATCH 226/270] optimize harvest results array by skipping empty entries and embedding minHarvestAmount in struct --- .../ecosystem/MowPlantHarvestBlueprint.sol | 62 +++++++------------ 1 file changed, 23 insertions(+), 39 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index 771b20f1..afcbde29 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -49,10 +49,12 @@ contract MowPlantHarvestBlueprint is BlueprintBase { /** * @notice Struct to hold field-specific harvest results * @param fieldId The field ID to harvest from + * @param minHarvestAmount The minimum harvest amount threshold for this field * @param harvestablePlots The harvestable plot indexes for the user */ struct UserFieldHarvestResults { uint256 fieldId; + uint256 minHarvestAmount; uint256[] harvestablePlots; } @@ -115,7 +117,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { int96 plantedStem; bool shouldMow; bool shouldPlant; - bool shouldHarvest; UserFieldHarvestResults[] userFieldHarvestResults; } @@ -148,7 +149,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { ( vars.shouldMow, vars.shouldPlant, - vars.shouldHarvest, vars.userFieldHarvestResults ) = _getAndValidateUserState(vars.account, beanstalk.time().timestamp, params); @@ -162,7 +162,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Mow, Plant and Harvest // Check if user should harvest or plant // In the case a harvest or plant is executed, mow by default - if (vars.shouldPlant || vars.shouldHarvest) vars.shouldMow = true; + if (vars.shouldPlant || vars.userFieldHarvestResults.length > 0) vars.shouldMow = true; // Execute operations in order: mow first (if needed), then plant, then harvest if (vars.shouldMow) { @@ -177,11 +177,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { } // Harvest in all configured fields if the conditions are met - if (vars.shouldHarvest) { + if (vars.userFieldHarvestResults.length > 0) { for (uint256 i = 0; i < vars.userFieldHarvestResults.length; i++) { - // Skip fields with no harvestable plots - if (vars.userFieldHarvestResults[i].harvestablePlots.length == 0) continue; - // Harvest the pods to the user's internal balance uint256 harvestedBeans = beanstalk.harvest( vars.userFieldHarvestResults[i].fieldId, @@ -191,8 +188,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // Validate post-harvest: revert if harvested amount is below minimum threshold require( - harvestedBeans >= - params.mowPlantHarvestParams.fieldHarvestConfigs[i].minHarvestAmount, + harvestedBeans >= vars.userFieldHarvestResults[i].minHarvestAmount, "MowPlantHarvestBlueprint: Harvested amount below minimum threshold" ); @@ -223,9 +219,8 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @param params The parameters for the mow, plant and harvest operation * @return shouldMow True if the user should mow * @return shouldPlant True if the user should plant - * @return shouldHarvest True if the user should harvest in at least one field id - * @return userFieldHarvestResults An array of structs containing the total harvestable pods - * and plots for the user for each field id specified in the blueprint config + * @return userFieldHarvestResults An array of structs containing the harvestable pods + * and plots for the user for each field id where operator provided data */ function _getAndValidateUserState( address account, @@ -237,7 +232,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { returns ( bool shouldMow, bool shouldPlant, - bool shouldHarvest, UserFieldHarvestResults[] memory userFieldHarvestResults ) { @@ -256,14 +250,13 @@ contract MowPlantHarvestBlueprint is BlueprintBase { previousSeasonTimestamp ); shouldPlant = totalPlantableBeans >= params.mowPlantHarvestParams.minPlantAmount; - shouldHarvest = _checkHarvestConditions(userFieldHarvestResults); require( - shouldMow || shouldPlant || shouldHarvest, + shouldMow || shouldPlant || userFieldHarvestResults.length > 0, "MowPlantHarvestBlueprint: None of the order conditions are met" ); - return (shouldMow, shouldPlant, shouldHarvest, userFieldHarvestResults); + return (shouldMow, shouldPlant, userFieldHarvestResults); } /** @@ -287,23 +280,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { return totalClaimableStalk > minMowAmount && beanstalk.totalDeltaB() > int256(minTwaDeltaB); } - /** - * @notice Checks harvest conditions to trigger a harvest operation - * @dev Harvests should happen when: - * - The user has enough harvestable pods in at least one field id - * as specified by `fieldHarvestConfigs.minHarvestAmount` - * @return bool True if the user should harvest, false otherwise - */ - function _checkHarvestConditions( - UserFieldHarvestResults[] memory userFieldHarvestResults - ) internal pure returns (bool) { - for (uint256 i = 0; i < userFieldHarvestResults.length; i++) { - // If operator provided any harvestable plots for this field, we should harvest - if (userFieldHarvestResults[i].harvestablePlots.length > 0) return true; - } - return false; - } - /** * @notice helper function to get the user state to compare against parameters * @dev Uses operator-provided harvest data from transient storage. @@ -339,28 +315,36 @@ contract MowPlantHarvestBlueprint is BlueprintBase { // for every field id, read operator-provided harvest data via dynamic calldata userFieldHarvestResults = new UserFieldHarvestResults[](fieldHarvestConfigs.length); + uint256 index; for (uint256 i = 0; i < fieldHarvestConfigs.length; i++) { uint256 fieldId = fieldHarvestConfigs[i].fieldId; // Read operator-provided data from transient storage bytes memory operatorData = beanstalk.getTractorData(HARVEST_DATA_KEY + fieldId); - // If operator didn't provide data for this field, treat as no harvestable pods + // Skip if operator didn't provide data for this field if (operatorData.length == 0) { - userFieldHarvestResults[i] = UserFieldHarvestResults({ - fieldId: fieldId, - harvestablePlots: new uint256[](0) - }); continue; } // Decode operator-provided harvestable plot indexes uint256[] memory harvestablePlotIndexes = abi.decode(operatorData, (uint256[])); - userFieldHarvestResults[i] = UserFieldHarvestResults({ + // Skip if operator provided empty array + if (harvestablePlotIndexes.length == 0) { + continue; + } + + userFieldHarvestResults[index] = UserFieldHarvestResults({ fieldId: fieldId, + minHarvestAmount: fieldHarvestConfigs[i].minHarvestAmount, harvestablePlots: harvestablePlotIndexes }); + index++; + } + + assembly { + mstore(userFieldHarvestResults, index) } return (totalClaimableStalk, totalPlantableBeans, userFieldHarvestResults); From 22f3fea65bd500de79a77bc17ae306b67957acb6 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 9 Jan 2026 13:02:18 +0000 Subject: [PATCH 227/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/ecosystem/MowPlantHarvestBlueprint.sol | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/contracts/ecosystem/MowPlantHarvestBlueprint.sol b/contracts/ecosystem/MowPlantHarvestBlueprint.sol index afcbde29..0bf3fcca 100644 --- a/contracts/ecosystem/MowPlantHarvestBlueprint.sol +++ b/contracts/ecosystem/MowPlantHarvestBlueprint.sol @@ -58,7 +58,6 @@ contract MowPlantHarvestBlueprint is BlueprintBase { uint256[] harvestablePlots; } - /** * @notice Struct to hold mow, plant and harvest parameters * @param minMowAmount The minimum total claimable stalk threshold to mow @@ -146,11 +145,11 @@ contract MowPlantHarvestBlueprint is BlueprintBase { vars.account = beanstalk.tractorUser(); // get the user state from the protocol and validate against params - ( - vars.shouldMow, - vars.shouldPlant, - vars.userFieldHarvestResults - ) = _getAndValidateUserState(vars.account, beanstalk.time().timestamp, params); + (vars.shouldMow, vars.shouldPlant, vars.userFieldHarvestResults) = _getAndValidateUserState( + vars.account, + beanstalk.time().timestamp, + params + ); // validate order params and revert early if invalid _validateSourceTokens(params.mowPlantHarvestParams.sourceTokenIndices); @@ -492,9 +491,7 @@ contract MowPlantHarvestBlueprint is BlueprintBase { * @param sourceTokenIndices The indices of the source tokens to withdraw from * @return True if the first resolved source token is Bean */ - function _resolvedSourceIsBean( - uint8[] memory sourceTokenIndices - ) internal view returns (bool) { + function _resolvedSourceIsBean(uint8[] memory sourceTokenIndices) internal view returns (bool) { uint8 firstIdx = sourceTokenIndices[0]; // Direct index - check if it points to Bean From 991a8aec6a2bc4a2f08c5290915d42b7a8f10862 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Mon, 26 Jan 2026 13:43:31 -0500 Subject: [PATCH 228/270] feat: deploy Protocol Diamond with comprehensive initialization and module setup --- contracts/beanstalk/init/deployment/InitProtocol.sol | 1 - 1 file changed, 1 deletion(-) diff --git a/contracts/beanstalk/init/deployment/InitProtocol.sol b/contracts/beanstalk/init/deployment/InitProtocol.sol index 8679291c..686571fe 100644 --- a/contracts/beanstalk/init/deployment/InitProtocol.sol +++ b/contracts/beanstalk/init/deployment/InitProtocol.sol @@ -18,7 +18,6 @@ import {IERC165} from "@openzeppelin/contracts/utils/introspection/IERC165.sol"; import {IDiamondCut} from "contracts/interfaces/IDiamondCut.sol"; import {IDiamondLoupe} from "contracts/interfaces/IDiamondLoupe.sol"; import {LibSeedGauge} from "contracts/libraries/Gauge/LibSeedGauge.sol"; -import {LibGauge} from "contracts/libraries/LibGauge.sol"; /** * @title InitProtocol From 614db130750a69ef5cfaf54bfda083a0f619a412 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Tue, 27 Jan 2026 19:06:16 -0500 Subject: [PATCH 229/270] Fix delegation griefing attack and address(0) delegation 1. Prevent delegators from removing independently-earned eligibility from delegates when changing delegation targets. Now only removes old delegate's eligibility if they haven't met the threshold through their own sowing. 2. Prevent delegation to address(0) to avoid storage pollution and conceptual incorrectness of marking the zero address as eligible. The fixes: - Check if old delegate has sown enough beans independently before removing their eligibility status - Explicitly reject address(0) as a valid delegation target Co-Authored-By: Claude Sonnet 4.5 --- contracts/beanstalk/facets/field/FieldFacet.sol | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 886cd2b8..c5220cf4 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -240,17 +240,22 @@ contract FieldFacet is Invariable, ReentrancyGuard { address user = LibTractor._user(); uint256 af = s.sys.activeField; require(delegate != user, "Field: delegate cannot be the user"); + require(delegate != address(0), "Field: delegate cannot be the zero address"); // a user is eligible to delegate if they are eligible themselves via sowing the threshold number of beans. + uint256 eligibilityThreshold = s.sys.referralBeanSownEligibilityThreshold; require( - s.accts[user].fields[af].referral.beans >= s.sys.referralBeanSownEligibilityThreshold, + s.accts[user].fields[af].referral.beans >= eligibilityThreshold, "Field: user cannot delegate" ); // if the user has already delegated, reset the eligibility for the delegate. if (s.accts[user].fields[af].referral.delegate != address(0)) { address oldDelegate = s.accts[user].fields[af].referral.delegate; - s.accts[oldDelegate].fields[af].referral.eligibility = false; + // check whether the old delegate is eligible. if not, reset their eligibility. + if (s.accts[oldDelegate].fields[af].referral.beans < eligibilityThreshold) { + s.accts[oldDelegate].fields[af].referral.eligibility = false; + } } // the delegate must not be already eligible. From e989efc57eeb23bfb65c8ec16a3459ecafefafd1 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 28 Jan 2026 14:08:04 -0500 Subject: [PATCH 230/270] feat: add Beanstalk Shipments task workflow and configure Protocol Diamond deployment --- hardhat.config.js | 15 --------------- tasks/beanstalk-shipments.js | 4 ++-- 2 files changed, 2 insertions(+), 17 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index 5b09b23d..c98cb8b0 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -29,21 +29,6 @@ task("runLatestUpgrade", "Compiles the contracts").setAction(async function () { // compile contracts. await hre.run("compile"); - await hre.run("PI-14"); - - console.log("Diamond Upgraded."); - - await hre.run("addLiquidityToWstethWell", { deposit: true }); - console.log("Liquidity added to WSTETH well."); - - // deploy the new pod referral contracts: - await hre.run("deployPodReferralContracts"); - console.log("Pod referral contracts deployed."); - - // update the oracle timeouts - await hre.run("updateOracleTimeouts"); - console.log("Oracle timeouts updated."); - // run beanstalk shipments await hre.run("runBeanstalkShipments", { skipPause: true, runStep0: false }); }); diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 7a655b8c..38d48745 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -225,7 +225,7 @@ module.exports = function () { facetNames: ["SeasonFacet", "TokenHookFacet", "ShipmentPlannerFacet"], libraryNames: [ "LibEvaluate", - "LibGauge", + "LibSeedGauge", "LibIncentive", "LibShipping", "LibWellMinting", @@ -236,7 +236,7 @@ module.exports = function () { facetLibraries: { SeasonFacet: [ "LibEvaluate", - "LibGauge", + "LibSeedGauge", "LibIncentive", "LibShipping", "LibWellMinting", From e8d457e84258986de1f333af16a894f10baf1683 Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Sun, 1 Feb 2026 15:33:13 +0300 Subject: [PATCH 231/270] Fix repayment field gas limit issue by splitting large plot accounts --- .../tempFacets/TempRepaymentFieldFacet.sol | 3 +- .../mocks/MockTempRepaymentFieldFacet.sol | 73 +++++++ .../populateBeanstalkField.js | 13 +- .../simulateProductionBatches.js | 186 ++++++++++++++++++ utils/read.js | 26 +++ 5 files changed, 299 insertions(+), 2 deletions(-) create mode 100644 contracts/mocks/MockTempRepaymentFieldFacet.sol create mode 100644 scripts/beanstalkShipments/simulateProductionBatches.js diff --git a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol index e1d7355b..8e58f22e 100644 --- a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol @@ -50,7 +50,8 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { uint256 podAmount = accountPlots[i].plots[j].podAmounts; s.accts[account].fields[REPAYMENT_FIELD_ID].plots[podIndex] = podAmount; s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.push(podIndex); - s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = j; + s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = + s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length - 1; emit RepaymentPlotAdded(account, podIndex, podAmount); } } diff --git a/contracts/mocks/MockTempRepaymentFieldFacet.sol b/contracts/mocks/MockTempRepaymentFieldFacet.sol new file mode 100644 index 00000000..d2742df8 --- /dev/null +++ b/contracts/mocks/MockTempRepaymentFieldFacet.sol @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.20; + +/** + * @title MockTempRepaymentFieldFacet + * @notice Mirrors TempRepaymentFieldFacet for gas estimation in batch simulations + * @dev Includes ReentrancyGuard and require check to match real contract gas usage + */ +contract MockTempRepaymentFieldFacet { + // ReentrancyGuard state (mirrors Beanstalk ReentrancyGuard) + uint256 private constant _NOT_ENTERED = 1; + uint256 private constant _ENTERED = 2; + uint256 private _reentrantStatus = _NOT_ENTERED; + + // Mirror of Account.sol Field struct + struct Field { + mapping(uint256 => uint256) plots; + mapping(address => uint256) podAllowances; + uint256[] plotIndexes; + mapping(uint256 => uint256) piIndex; + } + + struct Plot { + uint256 podIndex; + uint256 podAmounts; + } + + struct RepaymentPlotData { + address account; + Plot[] plots; + } + + // Storage - mirrors s.accts[account].fields[fieldId] + mapping(address => Field) internal accountFields; + + // Authorized populator (matches real contract) + address public populator; + + event RepaymentPlotAdded(address indexed account, uint256 indexed plotIndex, uint256 pods); + + constructor() { + populator = msg.sender; + } + + modifier nonReentrant() { + require(_reentrantStatus != _ENTERED, "ReentrancyGuard: reentrant call"); + _reentrantStatus = _ENTERED; + _; + _reentrantStatus = _NOT_ENTERED; + } + + /** + * @notice Mirrors TempRepaymentFieldFacet.initializeRepaymentPlots exactly + * @dev Includes ReentrancyGuard + require check for accurate gas measurement + */ + function initializeRepaymentPlots(RepaymentPlotData[] calldata accountPlots) external nonReentrant { + require(msg.sender == populator, "Only the repayment field populator can call this function"); + + for (uint256 i; i < accountPlots.length; i++) { + address account = accountPlots[i].account; + for (uint256 j; j < accountPlots[i].plots.length; j++) { + uint256 podIndex = accountPlots[i].plots[j].podIndex; + uint256 podAmount = accountPlots[i].plots[j].podAmounts; + + accountFields[account].plots[podIndex] = podAmount; + accountFields[account].plotIndexes.push(podIndex); + accountFields[account].piIndex[podIndex] = accountFields[account].plotIndexes.length - 1; + + emit RepaymentPlotAdded(account, podIndex, podAmount); + } + } + } +} diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 4351c816..3e8ec06c 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -1,10 +1,15 @@ const fs = require("fs"); const { splitEntriesIntoChunksOptimized, + splitWhaleAccounts, updateProgress, retryOperation } = require("../../utils/read.js"); +// EIP-7987 tx gas limit is 16,777,216 (2^24) +// ~70,600 gas per plot, with 95% safety margin: floor(16,777,216 * 0.95 / 70,600) = 225 +const MAX_PLOTS_PER_ACCOUNT_PER_TX = 200; + /** * Populates the beanstalk field by reading data from beanstalkPlots.json * and calling initializeRepaymentPlots directly on the L2_PINTO contract @@ -16,9 +21,15 @@ async function populateBeanstalkField({ diamondAddress, account, verbose }) { const plotsPath = "./scripts/beanstalkShipments/data/beanstalkPlots.json"; const rawPlotData = JSON.parse(fs.readFileSync(plotsPath)); + // Split whale accounts to fit within EIP-7987 gas limit + const splitData = splitWhaleAccounts(rawPlotData, MAX_PLOTS_PER_ACCOUNT_PER_TX); + if (splitData.length !== rawPlotData.length) { + console.log(`Split ${rawPlotData.length} accounts into ${splitData.length} entries (whale accounts divided)`); + } + // Split into chunks for processing const targetEntriesPerChunk = 300; - const plotChunks = splitEntriesIntoChunksOptimized(rawPlotData, targetEntriesPerChunk); + const plotChunks = splitEntriesIntoChunksOptimized(splitData, targetEntriesPerChunk); console.log(`Starting to process ${plotChunks.length} chunks...`); // Get contract instance for TempRepaymentFieldFacet diff --git a/scripts/beanstalkShipments/simulateProductionBatches.js b/scripts/beanstalkShipments/simulateProductionBatches.js new file mode 100644 index 00000000..054eb510 --- /dev/null +++ b/scripts/beanstalkShipments/simulateProductionBatches.js @@ -0,0 +1,186 @@ +const fs = require("fs"); +const { ethers } = require("hardhat"); +const { splitEntriesIntoChunksOptimized, splitWhaleAccounts } = require("../../utils/read.js"); + +/** + * Production Batch Gas Simulation + * + * Simulates gas usage for TempRepaymentFieldFacet.initializeRepaymentPlots() + * using real production data from beanstalkPlots.json. + * + * Validates that all chunks fit within EIP-7987 transaction gas limit (2^24). + * + * Run: npx hardhat run scripts/beanstalkShipments/simulateProductionBatches.js + */ + +const CONFIG = { + EIP_7987_TX_GAS_LIMIT: 16_777_216, // 2^24 + SAFE_GAS_MARGIN: 0.95, + MAX_PLOTS_PER_ACCOUNT_PER_TX: 200, // ~14M gas, safely under EIP-7987 limit + TARGET_ENTRIES_PER_CHUNK: 300, + PLOTS_DATA_PATH: "./scripts/beanstalkShipments/data/beanstalkPlots.json" +}; + +async function main() { + console.log("=".repeat(80)); + console.log("PRODUCTION BATCH GAS SIMULATION"); + console.log("=".repeat(80)); + console.log(); + + console.log("1. Loading data..."); + const rawPlotData = JSON.parse(fs.readFileSync(CONFIG.PLOTS_DATA_PATH)); + const totalAccounts = rawPlotData.length; + const totalPlots = rawPlotData.reduce((sum, u) => sum + u[1].length, 0); + console.log(` Total accounts: ${totalAccounts}`); + console.log(` Total plots: ${totalPlots}`); + console.log(); + + console.log("2. Splitting whale accounts..."); + const splitData = splitWhaleAccounts(rawPlotData, CONFIG.MAX_PLOTS_PER_ACCOUNT_PER_TX); + console.log(` Entries after split: ${splitData.length}`); + if (splitData.length !== totalAccounts) { + console.log(` Whale accounts split: ${splitData.length - totalAccounts} additional entries`); + } + console.log(); + + console.log("3. Creating chunks..."); + const chunks = splitEntriesIntoChunksOptimized(splitData, CONFIG.TARGET_ENTRIES_PER_CHUNK); + console.log(` Chunks created: ${chunks.length}`); + console.log(); + + console.log("4. Deploying mock contract..."); + const MockContract = await ethers.getContractFactory("MockTempRepaymentFieldFacet"); + const testContract = await MockContract.deploy(); + await testContract.deployed(); + console.log(` Contract: ${testContract.address}`); + console.log(); + + console.log("5. Running chunk simulations..."); + console.log("-".repeat(80)); + console.log(`${"Chunk".padEnd(8)} ${"Accounts".padEnd(10)} ${"Plots".padEnd(8)} ${"Est. Gas".padEnd(15)} ${"Status"}`); + console.log("-".repeat(80)); + + const results = []; + const failedChunks = []; + const warningChunks = []; + const safeLimit = Math.floor(CONFIG.EIP_7987_TX_GAS_LIMIT * CONFIG.SAFE_GAS_MARGIN); + + for (let i = 0; i < chunks.length; i++) { + const chunk = chunks[i]; + const chunkAccounts = chunk.length; + const chunkPlots = chunk.reduce((sum, u) => sum + u[1].length, 0); + + let estimatedGas; + let status; + let error = null; + + try { + estimatedGas = await testContract.estimateGas.initializeRepaymentPlots(chunk); + estimatedGas = estimatedGas.toNumber(); + + if (estimatedGas > CONFIG.EIP_7987_TX_GAS_LIMIT) { + status = "FAIL"; + failedChunks.push({ chunk: i + 1, accounts: chunkAccounts, plots: chunkPlots, gas: estimatedGas }); + } else if (estimatedGas > safeLimit) { + status = "WARN"; + warningChunks.push({ chunk: i + 1, accounts: chunkAccounts, plots: chunkPlots, gas: estimatedGas }); + } else { + status = "OK"; + } + } catch (err) { + estimatedGas = -1; + status = "ERROR"; + error = err.message; + failedChunks.push({ chunk: i + 1, accounts: chunkAccounts, plots: chunkPlots, gas: -1, error: err.message }); + } + + let statusStr; + if (status === "FAIL") statusStr = "EXCEEDS LIMIT"; + else if (status === "WARN") statusStr = "NEAR LIMIT"; + else if (status === "ERROR") statusStr = "ERROR"; + else statusStr = "OK"; + + const gasStr = estimatedGas > 0 ? estimatedGas.toLocaleString() : "N/A"; + console.log( + `${(i + 1).toString().padEnd(8)} ` + + `${chunkAccounts.toString().padEnd(10)} ` + + `${chunkPlots.toString().padEnd(8)} ` + + `${gasStr.padEnd(15)} ` + + `${statusStr}` + ); + + results.push({ + chunk: i + 1, + accounts: chunkAccounts, + plots: chunkPlots, + estimatedGas, + status, + error, + users: chunk.map(u => ({ address: u[0], plots: u[1].length })) + }); + } + + console.log("-".repeat(80)); + console.log(); + + console.log("=".repeat(80)); + console.log("SUMMARY"); + console.log("=".repeat(80)); + console.log(); + + const totalGas = results.reduce((sum, r) => sum + (r.estimatedGas > 0 ? r.estimatedGas : 0), 0); + const okChunks = results.filter(r => r.status === "OK").length; + + console.log(`Total chunks: ${chunks.length}`); + console.log(`Total estimated gas: ${totalGas.toLocaleString()}`); + console.log(); + console.log(`EIP-7987 Limit: ${CONFIG.EIP_7987_TX_GAS_LIMIT.toLocaleString()} gas`); + console.log(`Safe Limit (95%): ${safeLimit.toLocaleString()} gas`); + console.log(); + console.log(`Passing: ${okChunks}`); + console.log(`Near limit: ${warningChunks.length}`); + console.log(`Failed: ${failedChunks.length}`); + console.log(); + + if (failedChunks.length > 0) { + console.log("FAILED CHUNKS:"); + console.log("-".repeat(60)); + for (const c of failedChunks) { + console.log(`\nChunk ${c.chunk}:`); + console.log(` Accounts: ${c.accounts}, Plots: ${c.plots}`); + if (c.gas > 0) { + console.log(` Gas: ${c.gas.toLocaleString()}`); + } + if (c.error) { + console.log(` Error: ${c.error}`); + } + const chunkData = results.find(r => r.chunk === c.chunk); + if (chunkData && chunkData.users) { + console.log(` Addresses:`); + for (const user of chunkData.users) { + console.log(` ${user.address}: ${user.plots} plots`); + } + } + } + } + + if (warningChunks.length > 0) { + console.log(); + console.log("CHUNKS NEAR LIMIT:"); + console.log("-".repeat(60)); + for (const c of warningChunks) { + const pct = ((c.gas / CONFIG.EIP_7987_TX_GAS_LIMIT) * 100).toFixed(1); + console.log(`Chunk ${c.chunk}: ${c.accounts} accounts, ${c.plots} plots, ${c.gas.toLocaleString()} gas (${pct}%)`); + } + } + + console.log(); + console.log("Done."); +} + +main() + .then(() => process.exit(0)) + .catch((error) => { + console.error(error); + process.exit(1); + }); diff --git a/utils/read.js b/utils/read.js index 32de193b..5c51157a 100644 --- a/utils/read.js +++ b/utils/read.js @@ -112,6 +112,31 @@ function splitEntriesIntoChunksOptimized(data, targetEntriesPerChunk) { return chunks; } +/** + * Splits accounts with too many plots into multiple entries. + * This allows whale accounts to be processed across multiple transactions. + * @param {Array} plotData - Array of [address, [[plotId, amount], ...]] + * @param {number} maxPlotsPerEntry - Maximum plots per entry (default: 200) + * @returns {Array} - Flattened array with whale accounts split + */ +function splitWhaleAccounts(plotData, maxPlotsPerEntry = 200) { + const result = []; + + for (const [address, plots] of plotData) { + if (plots.length <= maxPlotsPerEntry) { + result.push([address, plots]); + } else { + // Split into chunks of maxPlotsPerEntry + for (let i = 0; i < plots.length; i += maxPlotsPerEntry) { + const plotChunk = plots.slice(i, i + maxPlotsPerEntry); + result.push([address, plotChunk]); + } + } + } + + return result; +} + async function updateProgress(current, total) { const percentage = Math.round((current / total) * 100); const progressBarLength = 30; @@ -148,6 +173,7 @@ exports.readPrune = readPrune; exports.splitEntriesIntoChunks = splitEntriesIntoChunks; exports.splitIntoExactChunks = splitIntoExactChunks; exports.splitEntriesIntoChunksOptimized = splitEntriesIntoChunksOptimized; +exports.splitWhaleAccounts = splitWhaleAccounts; exports.updateProgress = updateProgress; exports.convertToBigNum = convertToBigNum; exports.retryOperation = retryOperation; From 79fc74aee789d9cfa4c85bce90e22ff0c9e19fa6 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sun, 1 Feb 2026 12:41:29 +0000 Subject: [PATCH 232/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../tempFacets/TempRepaymentFieldFacet.sol | 3 +- .../mocks/MockTempRepaymentFieldFacet.sol | 13 +- yarn.lock | 17281 +++++++--------- 3 files changed, 7286 insertions(+), 10011 deletions(-) diff --git a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol index 8e58f22e..38deffa3 100644 --- a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol @@ -51,7 +51,8 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { s.accts[account].fields[REPAYMENT_FIELD_ID].plots[podIndex] = podAmount; s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.push(podIndex); s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = - s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length - 1; + s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length - + 1; emit RepaymentPlotAdded(account, podIndex, podAmount); } } diff --git a/contracts/mocks/MockTempRepaymentFieldFacet.sol b/contracts/mocks/MockTempRepaymentFieldFacet.sol index d2742df8..33615533 100644 --- a/contracts/mocks/MockTempRepaymentFieldFacet.sol +++ b/contracts/mocks/MockTempRepaymentFieldFacet.sol @@ -53,8 +53,13 @@ contract MockTempRepaymentFieldFacet { * @notice Mirrors TempRepaymentFieldFacet.initializeRepaymentPlots exactly * @dev Includes ReentrancyGuard + require check for accurate gas measurement */ - function initializeRepaymentPlots(RepaymentPlotData[] calldata accountPlots) external nonReentrant { - require(msg.sender == populator, "Only the repayment field populator can call this function"); + function initializeRepaymentPlots( + RepaymentPlotData[] calldata accountPlots + ) external nonReentrant { + require( + msg.sender == populator, + "Only the repayment field populator can call this function" + ); for (uint256 i; i < accountPlots.length; i++) { address account = accountPlots[i].account; @@ -64,7 +69,9 @@ contract MockTempRepaymentFieldFacet { accountFields[account].plots[podIndex] = podAmount; accountFields[account].plotIndexes.push(podIndex); - accountFields[account].piIndex[podIndex] = accountFields[account].plotIndexes.length - 1; + accountFields[account].piIndex[podIndex] = + accountFields[account].plotIndexes.length - + 1; emit RepaymentPlotAdded(account, podIndex, podAmount); } diff --git a/yarn.lock b/yarn.lock index 33082446..4bd89c67 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,10011 +1,7278 @@ -# This file is generated by running "yarn install" inside your project. -# Manual changes might be lost - proceed with caution! - -__metadata: - version: 8 - cacheKey: 10c0 - -"@aws-crypto/sha256-js@npm:1.2.2": - version: 1.2.2 - resolution: "@aws-crypto/sha256-js@npm:1.2.2" - dependencies: - "@aws-crypto/util": "npm:^1.2.2" - "@aws-sdk/types": "npm:^3.1.0" - tslib: "npm:^1.11.1" - checksum: 10c0/f4e8593cfbc48591413f00c744569b21e5ed5fab0e27fa4b59c517f2024ca4f46fab7b3874f2a207ceeef8feefc22d143a82d6c6bfe5303ea717f579d8d7ad0a - languageName: node - linkType: hard - -"@aws-crypto/util@npm:^1.2.2": - version: 1.2.2 - resolution: "@aws-crypto/util@npm:1.2.2" - dependencies: - "@aws-sdk/types": "npm:^3.1.0" - "@aws-sdk/util-utf8-browser": "npm:^3.0.0" - tslib: "npm:^1.11.1" - checksum: 10c0/ade8843bf13529b1854f64d6bbb23f30b46330743c8866adfd2105d830e30ce837a868eaaf41c4c2381d27e9d225d3a0a7558ee1eee022f0192916e33bfb654c - languageName: node - linkType: hard - -"@aws-sdk/types@npm:^3.1.0": - version: 3.968.0 - resolution: "@aws-sdk/types@npm:3.968.0" - dependencies: - "@smithy/types": "npm:^4.11.0" - tslib: "npm:^2.6.2" - checksum: 10c0/a2b2a21bfd123ed160e3551d6453fb7d99fb2b9b2f597eead81cdfe6e7f76a4522acbe746c18e7fba94ac2d9a0aec1fa808e9e9fbdedb1cd874135fece5f3ca9 - languageName: node - linkType: hard - -"@aws-sdk/util-utf8-browser@npm:^3.0.0": - version: 3.259.0 - resolution: "@aws-sdk/util-utf8-browser@npm:3.259.0" - dependencies: - tslib: "npm:^2.3.1" - checksum: 10c0/ff56ff252c0ea22b760b909ba5bbe9ca59a447066097e73b1e2ae50a6d366631ba560c373ec4e83b3e225d16238eeaf8def210fdbf135070b3dd3ceb1cc2ef9a - languageName: node - linkType: hard - -"@babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.23.2": - version: 7.28.6 - resolution: "@babel/runtime@npm:7.28.6" - checksum: 10c0/358cf2429992ac1c466df1a21c1601d595c46930a13c1d4662fde908d44ee78ec3c183aaff513ecb01ef8c55c3624afe0309eeeb34715672dbfadb7feedb2c0d - languageName: node - linkType: hard - -"@beanstalk/protocol@workspace:.": - version: 0.0.0-use.local - resolution: "@beanstalk/protocol@workspace:." - dependencies: - "@beanstalk/wells": "npm:0.4.1" - "@beanstalk/wells1.2": "npm:@beanstalk/wells@1.2.0" - "@ethereum-waffle/chai": "npm:4.0.10" - "@nomicfoundation/hardhat-foundry": "npm:1.2.0" - "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.10" - "@nomiclabs/hardhat-ethers": "npm:^2.2.1" - "@nomiclabs/hardhat-etherscan": "npm:@pinto-org/hardhat-etherscan@3.1.8-pinto.1" - "@nomiclabs/hardhat-waffle": "npm:^2.0.3" - "@openzeppelin/contracts": "npm:5.0.2" - "@openzeppelin/contracts-upgradeable": "npm:5.0.2" - "@openzeppelin/hardhat-upgrades": "npm:^1.17.0" - "@openzeppelin/merkle-tree": "npm:1.0.7" - "@prb/math": "npm:v2.5.0" - "@types/cors": "npm:^2.8.17" - "@types/express": "npm:^5.0.0" - "@uniswap/v3-core": "npm:v1.0.2-solc-0.8-simulate" - axios: "npm:1.6.7" - bignumber: "npm:^1.1.0" - chai: "npm:^4.4.1" - cors: "npm:^2.8.5" - csv-parser: "npm:3.0.0" - csvtojson: "npm:^2.0.10" - dotenv: "npm:^10.0.0" - eslint: "npm:^9.12.0" - eth-gas-reporter: "npm:0.2.25" - ethereum-waffle: "npm:4.0.10" - ethers: "npm:5.7.2" - express: "npm:^4.21.1" - forge-std: "npm:^1.1.2" - ganache-cli: "npm:^6.12.2" - glob: "npm:10.3.0" - hardhat: "npm:2.26.0" - hardhat-contract-sizer: "npm:^2.8.0" - hardhat-gas-reporter: "npm:^1.0.4" - hardhat-tracer: "npm:^1.1.0-rc.9" - json-bigint: "npm:^1.0.0" - keccak256: "npm:^1.0.6" - mathjs: "npm:^11.0.1" - merkletreejs: "npm:^0.2.31" - prettier: "npm:^3.5.3" - prettier-plugin-solidity: "npm:^1.4.3" - readline-sync: "npm:^1.4.10" - ts-node: "npm:^10.9.2" - typescript: "npm:^5.6.3" - uniswap: "npm:^0.0.1" - languageName: unknown - linkType: soft +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@aws-crypto/sha256-js@1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-1.2.2.tgz#02acd1a1fda92896fc5a28ec7c6e164644ea32fc" + integrity sha512-Nr1QJIbW/afYYGzYvrF70LtaHrIRtd4TNAglX8BvlfxJLZ45SAmueIKYl5tWoNBPzp65ymXGFK0Bb1vZUpuc9g== + dependencies: + "@aws-crypto/util" "^1.2.2" + "@aws-sdk/types" "^3.1.0" + tslib "^1.11.1" + +"@aws-crypto/util@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@aws-crypto/util/-/util-1.2.2.tgz#b28f7897730eb6538b21c18bd4de22d0ea09003c" + integrity sha512-H8PjG5WJ4wz0UXAFXeJjWCW1vkvIJ3qUUD+rGRwJ2/hj+xT58Qle2MTql/2MGzkU+1JLAFuR6aJpLAjHwhmwwg== + dependencies: + "@aws-sdk/types" "^3.1.0" + "@aws-sdk/util-utf8-browser" "^3.0.0" + tslib "^1.11.1" + +"@aws-sdk/types@^3.1.0": + version "3.973.1" + resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.973.1.tgz#1b2992ec6c8380c3e74c9bd2c74703e9a807d6e0" + integrity sha512-DwHBiMNOB468JiX6+i34c+THsKHErYUdNQ3HexeXZvVn4zouLjgaS4FejiGSi2HyBuzuyHg7SuOPmjSvoU9NRg== + dependencies: + "@smithy/types" "^4.12.0" + tslib "^2.6.2" + +"@aws-sdk/util-utf8-browser@^3.0.0": + version "3.259.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz#3275a6f5eb334f96ca76635b961d3c50259fd9ff" + integrity sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw== + dependencies: + tslib "^2.3.1" + +"@babel/runtime@^7.18.6", "@babel/runtime@^7.23.2": + version "7.28.6" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.6.tgz#d267a43cb1836dc4d182cce93ae75ba954ef6d2b" + integrity sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA== "@beanstalk/wells1.2@npm:@beanstalk/wells@1.2.0": - version: 1.2.0 - resolution: "@beanstalk/wells@npm:1.2.0" - checksum: 10c0/941d028026b47b3071df90d0725f7d7899fe6f7ae22d6bcc7ec1e9b245f37275bd6e58eef93856f6078d990b08e03463ee1cc0082eec4f736e064f1784f06b72 - languageName: node - linkType: hard - -"@beanstalk/wells@npm:0.4.1": - version: 0.4.1 - resolution: "@beanstalk/wells@npm:0.4.1" - dependencies: - "@nomiclabs/hardhat-ethers": "npm:^2.2.3" - hardhat: "npm:^2.17.1" - hardhat-preprocessor: "npm:^0.1.5" - checksum: 10c0/f1ccf83ec2a64f78d8edbbf713de03d9799265473e8bd5b0fda425c6b63ce643c1104290726adcb0b6b3efb8624015ab49958ff00eecfdd919cfd76ca5e7d258 - languageName: node - linkType: hard - -"@bytecodealliance/preview2-shim@npm:0.17.0": - version: 0.17.0 - resolution: "@bytecodealliance/preview2-shim@npm:0.17.0" - checksum: 10c0/a2cb46dd0e14319ec4c6b89cc6e629884a98120c70fc831131bc0941e03b8a40b35cd7d5bf4440653ac3658a73484a0be0a7066bfb4d2c43adc122488279c10b - languageName: node - linkType: hard - -"@colors/colors@npm:1.5.0": - version: 1.5.0 - resolution: "@colors/colors@npm:1.5.0" - checksum: 10c0/eb42729851adca56d19a08e48d5a1e95efd2a32c55ae0323de8119052be0510d4b7a1611f2abcbf28c044a6c11e6b7d38f99fccdad7429300c37a8ea5fb95b44 - languageName: node - linkType: hard - -"@cspotcode/source-map-support@npm:^0.8.0": - version: 0.8.1 - resolution: "@cspotcode/source-map-support@npm:0.8.1" - dependencies: - "@jridgewell/trace-mapping": "npm:0.3.9" - checksum: 10c0/05c5368c13b662ee4c122c7bfbe5dc0b613416672a829f3e78bc49a357a197e0218d6e74e7c66cfcd04e15a179acab080bd3c69658c9fbefd0e1ccd950a07fc6 - languageName: node - linkType: hard - -"@eslint-community/eslint-utils@npm:^4.8.0": - version: 4.9.1 - resolution: "@eslint-community/eslint-utils@npm:4.9.1" - dependencies: - eslint-visitor-keys: "npm:^3.4.3" - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: 10c0/dc4ab5e3e364ef27e33666b11f4b86e1a6c1d7cbf16f0c6ff87b1619b3562335e9201a3d6ce806221887ff780ec9d828962a290bb910759fd40a674686503f02 - languageName: node - linkType: hard - -"@eslint-community/regexpp@npm:^4.12.1": - version: 4.12.2 - resolution: "@eslint-community/regexpp@npm:4.12.2" - checksum: 10c0/fddcbc66851b308478d04e302a4d771d6917a0b3740dc351513c0da9ca2eab8a1adf99f5e0aa7ab8b13fa0df005c81adeee7e63a92f3effd7d367a163b721c2d - languageName: node - linkType: hard - -"@eslint/config-array@npm:^0.21.1": - version: 0.21.1 - resolution: "@eslint/config-array@npm:0.21.1" - dependencies: - "@eslint/object-schema": "npm:^2.1.7" - debug: "npm:^4.3.1" - minimatch: "npm:^3.1.2" - checksum: 10c0/2f657d4edd6ddcb920579b72e7a5b127865d4c3fb4dda24f11d5c4f445a93ca481aebdbd6bf3291c536f5d034458dbcbb298ee3b698bc6c9dd02900fe87eec3c - languageName: node - linkType: hard - -"@eslint/config-helpers@npm:^0.4.2": - version: 0.4.2 - resolution: "@eslint/config-helpers@npm:0.4.2" - dependencies: - "@eslint/core": "npm:^0.17.0" - checksum: 10c0/92efd7a527b2d17eb1a148409d71d80f9ac160b565ac73ee092252e8bf08ecd08670699f46b306b94f13d22e88ac88a612120e7847570dd7cdc72f234d50dcb4 - languageName: node - linkType: hard - -"@eslint/core@npm:^0.17.0": - version: 0.17.0 - resolution: "@eslint/core@npm:0.17.0" - dependencies: - "@types/json-schema": "npm:^7.0.15" - checksum: 10c0/9a580f2246633bc752298e7440dd942ec421860d1946d0801f0423830e67887e4aeba10ab9a23d281727a978eb93d053d1922a587d502942a713607f40ed704e - languageName: node - linkType: hard - -"@eslint/eslintrc@npm:^3.3.1": - version: 3.3.3 - resolution: "@eslint/eslintrc@npm:3.3.3" - dependencies: - ajv: "npm:^6.12.4" - debug: "npm:^4.3.2" - espree: "npm:^10.0.1" - globals: "npm:^14.0.0" - ignore: "npm:^5.2.0" - import-fresh: "npm:^3.2.1" - js-yaml: "npm:^4.1.1" - minimatch: "npm:^3.1.2" - strip-json-comments: "npm:^3.1.1" - checksum: 10c0/532c7acc7ddd042724c28b1f020bd7bf148fcd4653bb44c8314168b5f772508c842ce4ee070299cac51c5c5757d2124bdcfcef5551c8c58ff9986e3e17f2260d - languageName: node - linkType: hard - -"@eslint/js@npm:9.39.2": - version: 9.39.2 - resolution: "@eslint/js@npm:9.39.2" - checksum: 10c0/00f51c52b04ac79faebfaa65a9652b2093b9c924e945479f1f3945473f78aee83cbc76c8d70bbffbf06f7024626575b16d97b66eab16182e1d0d39daff2f26f5 - languageName: node - linkType: hard - -"@eslint/object-schema@npm:^2.1.7": - version: 2.1.7 - resolution: "@eslint/object-schema@npm:2.1.7" - checksum: 10c0/936b6e499853d1335803f556d526c86f5fe2259ed241bc665000e1d6353828edd913feed43120d150adb75570cae162cf000b5b0dfc9596726761c36b82f4e87 - languageName: node - linkType: hard - -"@eslint/plugin-kit@npm:^0.4.1": - version: 0.4.1 - resolution: "@eslint/plugin-kit@npm:0.4.1" - dependencies: - "@eslint/core": "npm:^0.17.0" - levn: "npm:^0.4.1" - checksum: 10c0/51600f78b798f172a9915dffb295e2ffb44840d583427bc732baf12ecb963eb841b253300e657da91d890f4b323d10a1bd12934bf293e3018d8bb66fdce5217b - languageName: node - linkType: hard - -"@ethereum-waffle/chai@npm:4.0.10": - version: 4.0.10 - resolution: "@ethereum-waffle/chai@npm:4.0.10" - dependencies: - "@ethereum-waffle/provider": "npm:4.0.5" - debug: "npm:^4.3.4" - json-bigint: "npm:^1.0.0" - peerDependencies: - ethers: "*" - checksum: 10c0/3fa6e6e6a52aa804104ed4f4e3b25caaf8501c392a0421216b58d1aea5443684bae54297ea2666f30da4bfbead7f1ba004e1d4dc668a708c23614214410d2b30 - languageName: node - linkType: hard - -"@ethereum-waffle/compiler@npm:4.0.3": - version: 4.0.3 - resolution: "@ethereum-waffle/compiler@npm:4.0.3" - dependencies: - "@resolver-engine/imports": "npm:^0.3.3" - "@resolver-engine/imports-fs": "npm:^0.3.3" - "@typechain/ethers-v5": "npm:^10.0.0" - "@types/mkdirp": "npm:^0.5.2" - "@types/node-fetch": "npm:^2.6.1" - mkdirp: "npm:^0.5.1" - node-fetch: "npm:^2.6.7" - peerDependencies: - ethers: "*" - solc: "*" - typechain: ^8.0.0 - checksum: 10c0/52e936beb872060e1eecb4dbd6568652373c171156be2789044db536444b81dfc775d04b5b5abaffc5eaa9810656ec2a6cdf9c74c384241532457b58959b2147 - languageName: node - linkType: hard - -"@ethereum-waffle/ens@npm:4.0.3": - version: 4.0.3 - resolution: "@ethereum-waffle/ens@npm:4.0.3" - peerDependencies: - "@ensdomains/ens": ^0.4.4 - "@ensdomains/resolver": ^0.2.4 - ethers: "*" - checksum: 10c0/dc2db2748f708e375781170b07b018638bc925122e8ca1c555fcc8981804b2c48fb6a2cf98421db2713bc3a6ae34be7cfa63c0d2e58a3f6c4316bfe19c31ac11 - languageName: node - linkType: hard - -"@ethereum-waffle/mock-contract@npm:4.0.4": - version: 4.0.4 - resolution: "@ethereum-waffle/mock-contract@npm:4.0.4" - peerDependencies: - ethers: "*" - checksum: 10c0/ead6883a94c878989ec54775c21fb73f7db7172cebdad022bf703054b3edbcf0545bfd2ee8d58be96e0af82e3c884aa4f0ea60be5e5f68a1408bc0dabc25aa4a - languageName: node - linkType: hard - -"@ethereum-waffle/provider@npm:4.0.5": - version: 4.0.5 - resolution: "@ethereum-waffle/provider@npm:4.0.5" - dependencies: - "@ethereum-waffle/ens": "npm:4.0.3" - "@ganache/ethereum-options": "npm:0.1.4" - debug: "npm:^4.3.4" - ganache: "npm:7.4.3" - peerDependencies: - ethers: "*" - checksum: 10c0/4f591a194d1d9ecdb10e7d648d771620d4db31b74cc3102c6b3101d5915d70db3d8cc7dd2f034cc677bdc7f8f9b9cbaf0ca296b1deb63b2262f35603df65d947 - languageName: node - linkType: hard - -"@ethereumjs/block@npm:^3.5.0, @ethereumjs/block@npm:^3.6.0, @ethereumjs/block@npm:^3.6.2": - version: 3.6.3 - resolution: "@ethereumjs/block@npm:3.6.3" - dependencies: - "@ethereumjs/common": "npm:^2.6.5" - "@ethereumjs/tx": "npm:^3.5.2" - ethereumjs-util: "npm:^7.1.5" - merkle-patricia-tree: "npm:^4.2.4" - checksum: 10c0/9e2b92c3e6d511fb05fc519a7f6ee4c3fe8f5d59afe19a563d96da52e6ac532ff1c1db80d59161f7df9193348b57c006304d97e0f2fa3ecc884cd4dc58068e85 - languageName: node - linkType: hard - -"@ethereumjs/blockchain@npm:^5.5.0": - version: 5.5.3 - resolution: "@ethereumjs/blockchain@npm:5.5.3" - dependencies: - "@ethereumjs/block": "npm:^3.6.2" - "@ethereumjs/common": "npm:^2.6.4" - "@ethereumjs/ethash": "npm:^1.1.0" - debug: "npm:^4.3.3" - ethereumjs-util: "npm:^7.1.5" - level-mem: "npm:^5.0.1" - lru-cache: "npm:^5.1.1" - semaphore-async-await: "npm:^1.5.1" - checksum: 10c0/8d26b22c0e8df42fc1aaa6cf8b03bcc96b7557075f18c790a38271acbb92d582b9fc0f2bf738289eba6a76efd3b092cd2be629e7b6c7d8ce1a44dd815fbb1609 - languageName: node - linkType: hard - -"@ethereumjs/common@npm:2.6.0": - version: 2.6.0 - resolution: "@ethereumjs/common@npm:2.6.0" - dependencies: - crc-32: "npm:^1.2.0" - ethereumjs-util: "npm:^7.1.3" - checksum: 10c0/ab2dfc8420d3c0e558f1d51639a20450b198437b9cf81ad8fa3ef81a016145fae1e10a5d6d1fa3ae39c53f1726f3efa27a5efd3c136d95c03fc0364a86493c86 - languageName: node - linkType: hard - -"@ethereumjs/common@npm:^2.6.0, @ethereumjs/common@npm:^2.6.4, @ethereumjs/common@npm:^2.6.5": - version: 2.6.5 - resolution: "@ethereumjs/common@npm:2.6.5" - dependencies: - crc-32: "npm:^1.2.0" - ethereumjs-util: "npm:^7.1.5" - checksum: 10c0/065fc993e390631753e9cbc63987954338c42192d227e15a40d9a074eda9e9597916dca51970b59230c7d3b1294c5956258fe6ea29000b5555bf24fe3ff522c5 - languageName: node - linkType: hard - -"@ethereumjs/ethash@npm:^1.1.0": - version: 1.1.0 - resolution: "@ethereumjs/ethash@npm:1.1.0" - dependencies: - "@ethereumjs/block": "npm:^3.5.0" - "@types/levelup": "npm:^4.3.0" - buffer-xor: "npm:^2.0.1" - ethereumjs-util: "npm:^7.1.1" - miller-rabin: "npm:^4.0.0" - checksum: 10c0/0166fb8600578158d8e150991b968160b8b7650ec8bd9425e55a0702ec4f80a8082303d7203b174360fa29d692ab181bf6d9ff4b8a27e38ee57080352fb3119f - languageName: node - linkType: hard - -"@ethereumjs/rlp@npm:^4.0.1": - version: 4.0.1 - resolution: "@ethereumjs/rlp@npm:4.0.1" - bin: - rlp: bin/rlp - checksum: 10c0/78379f288e9d88c584c2159c725c4a667a9742981d638bad760ed908263e0e36bdbd822c0a902003e0701195fd1cbde7adad621cd97fdfbf552c45e835ce022c - languageName: node - linkType: hard - -"@ethereumjs/rlp@npm:^5.0.2": - version: 5.0.2 - resolution: "@ethereumjs/rlp@npm:5.0.2" - bin: - rlp: bin/rlp.cjs - checksum: 10c0/56162eaee96dd429f0528a9e51b453398546d57f26057b3e188f2aa09efe8bd430502971c54238ca9cc42af41b0a3f137cf67b9e020d52bc83caca043d64911b - languageName: node - linkType: hard - -"@ethereumjs/tx@npm:3.4.0": - version: 3.4.0 - resolution: "@ethereumjs/tx@npm:3.4.0" - dependencies: - "@ethereumjs/common": "npm:^2.6.0" - ethereumjs-util: "npm:^7.1.3" - checksum: 10c0/50bdac23480d742a3498b41b5ffe2c8f72429c9511fbf4846ca4c69756312dce4dd4e6e1253a90519b5ed20e71c346d13f6f0084de42f94268e481392ee9cf43 - languageName: node - linkType: hard - -"@ethereumjs/tx@npm:^3.4.0, @ethereumjs/tx@npm:^3.5.2": - version: 3.5.2 - resolution: "@ethereumjs/tx@npm:3.5.2" - dependencies: - "@ethereumjs/common": "npm:^2.6.4" - ethereumjs-util: "npm:^7.1.5" - checksum: 10c0/768cbe0834eef15f4726b44f2a4c52b6180884d90e58108d5251668c7e89d58572de7375d5e63be9d599e79c09259e643837a2afe876126b09c47ac35386cc20 - languageName: node - linkType: hard - -"@ethereumjs/util@npm:^8.1.0": - version: 8.1.0 - resolution: "@ethereumjs/util@npm:8.1.0" - dependencies: - "@ethereumjs/rlp": "npm:^4.0.1" - ethereum-cryptography: "npm:^2.0.0" - micro-ftch: "npm:^0.3.1" - checksum: 10c0/4e6e0449236f66b53782bab3b387108f0ddc050835bfe1381c67a7c038fea27cb85ab38851d98b700957022f0acb6e455ca0c634249cfcce1a116bad76500160 - languageName: node - linkType: hard - -"@ethereumjs/util@npm:^9.1.0": - version: 9.1.0 - resolution: "@ethereumjs/util@npm:9.1.0" - dependencies: - "@ethereumjs/rlp": "npm:^5.0.2" - ethereum-cryptography: "npm:^2.2.1" - checksum: 10c0/7b55c79d90e55da873037b8283c37b61164f1712b194e2783bdb0a3401ff0999dc9d1404c7051589f71fb79e8aeb6952ec43ede21dd0028d7d9b1c07abcfff27 - languageName: node - linkType: hard - -"@ethereumjs/vm@npm:5.6.0": - version: 5.6.0 - resolution: "@ethereumjs/vm@npm:5.6.0" - dependencies: - "@ethereumjs/block": "npm:^3.6.0" - "@ethereumjs/blockchain": "npm:^5.5.0" - "@ethereumjs/common": "npm:^2.6.0" - "@ethereumjs/tx": "npm:^3.4.0" - async-eventemitter: "npm:^0.2.4" - core-js-pure: "npm:^3.0.1" - debug: "npm:^2.2.0" - ethereumjs-util: "npm:^7.1.3" - functional-red-black-tree: "npm:^1.0.1" - mcl-wasm: "npm:^0.7.1" - merkle-patricia-tree: "npm:^4.2.2" - rustbn.js: "npm:~0.2.0" - checksum: 10c0/69498be5fee040dfd27e2f19f84092b83d7e32dc4461ea2d4e1c019fb5c1e9795977a59436d9316ff959b61cfd03d305150a9fca83a0380d27be860a093504cd - languageName: node - linkType: hard - -"@ethersproject/abi@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/abi@npm:5.7.0" - dependencies: - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/hash": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/7de51bf52ff03df2526546dacea6e74f15d4c5ef762d931552082b9600dcefd8e333599f02d7906ba89f7b7f48c45ab72cee76f397212b4f17fa9d9ff5615916 - languageName: node - linkType: hard - -"@ethersproject/abi@npm:5.8.0, @ethersproject/abi@npm:^5.0.0-beta.146, @ethersproject/abi@npm:^5.1.2, @ethersproject/abi@npm:^5.6.3, @ethersproject/abi@npm:^5.7.0, @ethersproject/abi@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/abi@npm:5.8.0" - dependencies: - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/hash": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/6b759247a2f43ecc1548647d0447d08de1e946dfc7e71bfb014fa2f749c1b76b742a1d37394660ebab02ff8565674b3593fdfa011e16a5adcfc87ca4d85af39c - languageName: node - linkType: hard - -"@ethersproject/abstract-provider@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/abstract-provider@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/networks": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - "@ethersproject/web": "npm:^5.7.0" - checksum: 10c0/a5708e2811b90ddc53d9318ce152511a32dd4771aa2fb59dbe9e90468bb75ca6e695d958bf44d13da684dc3b6aab03f63d425ff7591332cb5d7ddaf68dff7224 - languageName: node - linkType: hard - -"@ethersproject/abstract-provider@npm:5.8.0, @ethersproject/abstract-provider@npm:^5.7.0, @ethersproject/abstract-provider@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/abstract-provider@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/networks": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - "@ethersproject/web": "npm:^5.8.0" - checksum: 10c0/9c183da1d037b272ff2b03002c3d801088d0534f88985f4983efc5f3ebd59b05f04bc05db97792fe29ddf87eeba3c73416e5699615f183126f85f877ea6c8637 - languageName: node - linkType: hard - -"@ethersproject/abstract-signer@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/abstract-signer@npm:5.7.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - checksum: 10c0/e174966b3be17269a5974a3ae5eef6d15ac62ee8c300ceace26767f218f6bbf3de66f29d9a9c9ca300fa8551aab4c92e28d2cc772f5475fdeaa78d9b5be0e745 - languageName: node - linkType: hard - -"@ethersproject/abstract-signer@npm:5.8.0, @ethersproject/abstract-signer@npm:^5.7.0, @ethersproject/abstract-signer@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/abstract-signer@npm:5.8.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - checksum: 10c0/143f32d7cb0bc7064e45674d4a9dffdb90d6171425d20e8de9dc95765be960534bae7246ead400e6f52346624b66569d9585d790eedd34b0b6b7f481ec331cc2 - languageName: node - linkType: hard - -"@ethersproject/address@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/address@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/rlp": "npm:^5.7.0" - checksum: 10c0/db5da50abeaae8f6cf17678323e8d01cad697f9a184b0593c62b71b0faa8d7e5c2ba14da78a998d691773ed6a8eb06701f65757218e0eaaeb134e5c5f3e5a908 - languageName: node - linkType: hard - -"@ethersproject/address@npm:5.8.0, @ethersproject/address@npm:^5.0.2, @ethersproject/address@npm:^5.7.0, @ethersproject/address@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/address@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/rlp": "npm:^5.8.0" - checksum: 10c0/8bac8a4b567c75c1abc00eeca08c200de1a2d5cf76d595dc04fa4d7bff9ffa5530b2cdfc5e8656cfa8f6fa046de54be47620a092fb429830a8ddde410b9d50bc - languageName: node - linkType: hard - -"@ethersproject/base64@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/base64@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - checksum: 10c0/4f748cd82af60ff1866db699fbf2bf057feff774ea0a30d1f03ea26426f53293ea10cc8265cda1695301da61093bedb8cc0d38887f43ed9dad96b78f19d7337e - languageName: node - linkType: hard - -"@ethersproject/base64@npm:5.8.0, @ethersproject/base64@npm:^5.7.0, @ethersproject/base64@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/base64@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - checksum: 10c0/60ae6d1e2367d70f4090b717852efe62075442ae59aeac9bb1054fe8306a2de8ef0b0561e7fb4666ecb1f8efa1655d683dd240675c3a25d6fa867245525a63ca - languageName: node - linkType: hard - -"@ethersproject/basex@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/basex@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - checksum: 10c0/02304de77477506ad798eb5c68077efd2531624380d770ef4a823e631a288fb680107a0f9dc4a6339b2a0b0f5b06ee77f53429afdad8f950cde0f3e40d30167d - languageName: node - linkType: hard - -"@ethersproject/basex@npm:5.8.0, @ethersproject/basex@npm:^5.7.0, @ethersproject/basex@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/basex@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - checksum: 10c0/46a94ba9678fc458ab0bee4a0af9f659f1d3f5df5bb98485924fe8ecbd46eda37d81f95f882243d56f0f5efe051b0749163f5056e48ff836c5fba648754d4956 - languageName: node - linkType: hard - -"@ethersproject/bignumber@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/bignumber@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - bn.js: "npm:^5.2.1" - checksum: 10c0/14263cdc91a7884b141d9300f018f76f69839c47e95718ef7161b11d2c7563163096fee69724c5fa8ef6f536d3e60f1c605819edbc478383a2b98abcde3d37b2 - languageName: node - linkType: hard - -"@ethersproject/bignumber@npm:5.8.0, @ethersproject/bignumber@npm:^5.5.0, @ethersproject/bignumber@npm:^5.7.0, @ethersproject/bignumber@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/bignumber@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - bn.js: "npm:^5.2.1" - checksum: 10c0/8e87fa96999d59d0ab4c814c79e3a8354d2ba914dfa78cf9ee688f53110473cec0df0db2aaf9d447e84ab2dbbfca39979abac4f2dac69fef4d080f4cc3e29613 - languageName: node - linkType: hard - -"@ethersproject/bytes@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/bytes@npm:5.7.0" - dependencies: - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/07dd1f0341b3de584ef26c8696674ff2bb032f4e99073856fc9cd7b4c54d1d846cabe149e864be267934658c3ce799e5ea26babe01f83af0e1f06c51e5ac791f - languageName: node - linkType: hard - -"@ethersproject/bytes@npm:5.8.0, @ethersproject/bytes@npm:^5.7.0, @ethersproject/bytes@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/bytes@npm:5.8.0" - dependencies: - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/47ef798f3ab43b95dc74097b2c92365c919308ecabc3e34d9f8bf7f886fa4b99837ba5cf4dc8921baaaafe6899982f96b0e723b3fc49132c061f83d1ca3fed8b - languageName: node - linkType: hard - -"@ethersproject/constants@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/constants@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - checksum: 10c0/6df63ab753e152726b84595250ea722165a5744c046e317df40a6401f38556385a37c84dadf5b11ca651c4fb60f967046125369c57ac84829f6b30e69a096273 - languageName: node - linkType: hard - -"@ethersproject/constants@npm:5.8.0, @ethersproject/constants@npm:^5.7.0, @ethersproject/constants@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/constants@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - checksum: 10c0/374b3c2c6da24f8fef62e2316eae96faa462826c0774ef588cd7313ae7ddac8eb1bb85a28dad80123148be2ba0821c217c14ecfc18e2e683c72adc734b6248c9 - languageName: node - linkType: hard - -"@ethersproject/contracts@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/contracts@npm:5.7.0" - dependencies: - "@ethersproject/abi": "npm:^5.7.0" - "@ethersproject/abstract-provider": "npm:^5.7.0" - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - checksum: 10c0/97a10361dddaccfb3e9e20e24d071cfa570050adcb964d3452c5f7c9eaaddb4e145ec9cf928e14417948701b89e81d4907800e799a6083123e4d13a576842f41 - languageName: node - linkType: hard - -"@ethersproject/contracts@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/contracts@npm:5.8.0" - dependencies: - "@ethersproject/abi": "npm:^5.8.0" - "@ethersproject/abstract-provider": "npm:^5.8.0" - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - checksum: 10c0/49961b92334c4f2fab5f4da8f3119e97c1dc39cc8695e3043931757968213f5e732c00bf896193cf0186dcb33101dcd6efb70690dee0dd2cfbfd3843f55485aa - languageName: node - linkType: hard - -"@ethersproject/hash@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/hash@npm:5.7.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/base64": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/1a631dae34c4cf340dde21d6940dd1715fc7ae483d576f7b8ef9e8cb1d0e30bd7e8d30d4a7d8dc531c14164602323af2c3d51eb2204af18b2e15167e70c9a5ef - languageName: node - linkType: hard - -"@ethersproject/hash@npm:5.8.0, @ethersproject/hash@npm:^5.7.0, @ethersproject/hash@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/hash@npm:5.8.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/base64": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/72a287d4d70fae716827587339ffb449b8c23ef8728db6f8a661f359f7cb1e5ffba5b693c55e09d4e7162bf56af4a0e98a334784e0706d98102d1a5786241537 - languageName: node - linkType: hard - -"@ethersproject/hdnode@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/hdnode@npm:5.7.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/basex": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/pbkdf2": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/sha2": "npm:^5.7.0" - "@ethersproject/signing-key": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - "@ethersproject/wordlists": "npm:^5.7.0" - checksum: 10c0/36d5c13fe69b1e0a18ea98537bc560d8ba166e012d63faac92522a0b5f405eb67d8848c5aca69e2470f62743aaef2ac36638d9e27fd8c68f51506eb61479d51d - languageName: node - linkType: hard - -"@ethersproject/hdnode@npm:5.8.0, @ethersproject/hdnode@npm:^5.7.0, @ethersproject/hdnode@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/hdnode@npm:5.8.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/basex": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/pbkdf2": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/sha2": "npm:^5.8.0" - "@ethersproject/signing-key": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - "@ethersproject/wordlists": "npm:^5.8.0" - checksum: 10c0/da0ac7d60e76a76471be1f4f3bba3f28a24165dc3b63c6930a9ec24481e9f8b23936e5fc96363b3591cdfda4381d4623f25b06898b89bf5530b158cb5ea58fdd - languageName: node - linkType: hard - -"@ethersproject/json-wallets@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/json-wallets@npm:5.7.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/hdnode": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/pbkdf2": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/random": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - aes-js: "npm:3.0.0" - scrypt-js: "npm:3.0.1" - checksum: 10c0/f1a84d19ff38d3506f453abc4702107cbc96a43c000efcd273a056371363767a06a8d746f84263b1300266eb0c329fe3b49a9b39a37aadd016433faf9e15a4bb - languageName: node - linkType: hard - -"@ethersproject/json-wallets@npm:5.8.0, @ethersproject/json-wallets@npm:^5.7.0, @ethersproject/json-wallets@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/json-wallets@npm:5.8.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/hdnode": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/pbkdf2": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/random": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - aes-js: "npm:3.0.0" - scrypt-js: "npm:3.0.1" - checksum: 10c0/6c5cac87bdfac9ac47bf6ac25168a85865dc02e398e97f83820568c568a8cb27cf13a3a5d482f71a2534c7d704a3faa46023bb7ebe8737872b376bec1b66c67b - languageName: node - linkType: hard - -"@ethersproject/keccak256@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/keccak256@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - js-sha3: "npm:0.8.0" - checksum: 10c0/3b1a91706ff11f5ab5496840b9c36cedca27db443186d28b94847149fd16baecdc13f6fc5efb8359506392f2aba559d07e7f9c1e17a63f9d5de9f8053cfcb033 - languageName: node - linkType: hard - -"@ethersproject/keccak256@npm:5.8.0, @ethersproject/keccak256@npm:^5.7.0, @ethersproject/keccak256@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/keccak256@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - js-sha3: "npm:0.8.0" - checksum: 10c0/cd93ac6a5baf842313cde7de5e6e2c41feeea800db9e82955f96e7f3462d2ac6a6a29282b1c9e93b84ce7c91eec02347043c249fd037d6051214275bfc7fe99f - languageName: node - linkType: hard - -"@ethersproject/logger@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/logger@npm:5.7.0" - checksum: 10c0/d03d460fb2d4a5e71c627b7986fb9e50e1b59a6f55e8b42a545b8b92398b961e7fd294bd9c3d8f92b35d0f6ff9d15aa14c95eab378f8ea194e943c8ace343501 - languageName: node - linkType: hard - -"@ethersproject/logger@npm:5.8.0, @ethersproject/logger@npm:^5.7.0, @ethersproject/logger@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/logger@npm:5.8.0" - checksum: 10c0/7f39f33e8f254ee681d4778bb71ce3c5de248e1547666f85c43bfbc1c18996c49a31f969f056b66d23012f2420f2d39173107284bc41eb98d0482ace1d06403e - languageName: node - linkType: hard - -"@ethersproject/networks@npm:5.7.1": - version: 5.7.1 - resolution: "@ethersproject/networks@npm:5.7.1" - dependencies: - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/9efcdce27f150459e85d74af3f72d5c32898823a99f5410e26bf26cca2d21fb14e403377314a93aea248e57fb2964e19cee2c3f7bfc586ceba4c803a8f1b75c0 - languageName: node - linkType: hard - -"@ethersproject/networks@npm:5.8.0, @ethersproject/networks@npm:^5.7.0, @ethersproject/networks@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/networks@npm:5.8.0" - dependencies: - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/3f23bcc4c3843cc9b7e4b9f34df0a1f230b24dc87d51cdad84552302159a84d7899cd80c8a3d2cf8007b09ac373a5b10407007adde23d4c4881a4d6ee6bc4b9c - languageName: node - linkType: hard - -"@ethersproject/pbkdf2@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/pbkdf2@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/sha2": "npm:^5.7.0" - checksum: 10c0/e5a29cf28b4f4ca1def94d37cfb6a9c05c896106ed64881707813de01c1e7ded613f1e95febcccda4de96aae929068831d72b9d06beef1377b5a1a13a0eb3ff5 - languageName: node - linkType: hard - -"@ethersproject/pbkdf2@npm:5.8.0, @ethersproject/pbkdf2@npm:^5.7.0, @ethersproject/pbkdf2@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/pbkdf2@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/sha2": "npm:^5.8.0" - checksum: 10c0/0397cf5370cfd568743c3e46ac431f1bd425239baa2691689f1430997d44d310cef5051ea9ee53fabe444f96aced8d6324b41da698e8d7021389dce36251e7e9 - languageName: node - linkType: hard - -"@ethersproject/properties@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/properties@npm:5.7.0" - dependencies: - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/4fe5d36e5550b8e23a305aa236a93e8f04d891d8198eecdc8273914c761b0e198fd6f757877406ee3eb05033ec271132a3e5998c7bd7b9a187964fb4f67b1373 - languageName: node - linkType: hard - -"@ethersproject/properties@npm:5.8.0, @ethersproject/properties@npm:^5.7.0, @ethersproject/properties@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/properties@npm:5.8.0" - dependencies: - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/20256d7eed65478a38dabdea4c3980c6591b7b75f8c45089722b032ceb0e1cd3dd6dd60c436cfe259337e6909c28d99528c172d06fc74bbd61be8eb9e68be2e6 - languageName: node - linkType: hard - -"@ethersproject/providers@npm:5.7.2": - version: 5.7.2 - resolution: "@ethersproject/providers@npm:5.7.2" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.7.0" - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/base64": "npm:^5.7.0" - "@ethersproject/basex": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/hash": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/networks": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/random": "npm:^5.7.0" - "@ethersproject/rlp": "npm:^5.7.0" - "@ethersproject/sha2": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - "@ethersproject/web": "npm:^5.7.0" - bech32: "npm:1.1.4" - ws: "npm:7.4.6" - checksum: 10c0/4c8d19e6b31f769c24042fb2d02e483a4ee60dcbfca9e3291f0a029b24337c47d1ea719a390be856f8fd02997125819e834415e77da4fb2023369712348dae4c - languageName: node - linkType: hard - -"@ethersproject/providers@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/providers@npm:5.8.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.8.0" - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/base64": "npm:^5.8.0" - "@ethersproject/basex": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/hash": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/networks": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/random": "npm:^5.8.0" - "@ethersproject/rlp": "npm:^5.8.0" - "@ethersproject/sha2": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - "@ethersproject/web": "npm:^5.8.0" - bech32: "npm:1.1.4" - ws: "npm:8.18.0" - checksum: 10c0/893dba429443bbf0a3eadef850e772ad1c706cf17ae6ae48b73467a23b614a3f461e9004850e24439b5c73d30e9259bc983f0f90a911ba11af749e6384fd355a - languageName: node - linkType: hard - -"@ethersproject/random@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/random@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/23e572fc55372653c22062f6a153a68c2e2d3200db734cd0d39621fbfd0ca999585bed2d5682e3ac65d87a2893048375682e49d1473d9965631ff56d2808580b - languageName: node - linkType: hard - -"@ethersproject/random@npm:5.8.0, @ethersproject/random@npm:^5.7.0, @ethersproject/random@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/random@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/e44c010715668fc29383141ae16cd2ec00c34a434d47e23338e740b8c97372515d95d3b809b969eab2055c19e92b985ca591d326fbb71270c26333215f9925d1 - languageName: node - linkType: hard - -"@ethersproject/rlp@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/rlp@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/bc863d21dcf7adf6a99ae75c41c4a3fb99698cfdcfc6d5d82021530f3d3551c6305bc7b6f0475ad6de6f69e91802b7e872bee48c0596d98969aefcf121c2a044 - languageName: node - linkType: hard - -"@ethersproject/rlp@npm:5.8.0, @ethersproject/rlp@npm:^5.7.0, @ethersproject/rlp@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/rlp@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/db742ec9c1566d6441242cc2c2ae34c1e5304d48e1fe62bc4e53b1791f219df211e330d2de331e0e4f74482664e205c2e4220e76138bd71f1ec07884e7f5221b - languageName: node - linkType: hard - -"@ethersproject/sha2@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/sha2@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - hash.js: "npm:1.1.7" - checksum: 10c0/0e7f9ce6b1640817b921b9c6dd9dab8d5bf5a0ce7634d6a7d129b7366a576c2f90dcf4bcb15a0aa9310dde67028f3a44e4fcc2f26b565abcd2a0f465116ff3b1 - languageName: node - linkType: hard - -"@ethersproject/sha2@npm:5.8.0, @ethersproject/sha2@npm:^5.7.0, @ethersproject/sha2@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/sha2@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - hash.js: "npm:1.1.7" - checksum: 10c0/eab941907b7d40ee8436acaaedee32306ed4de2cb9ab37543bc89b1dd2a78f28c8da21efd848525fa1b04a78575be426cfca28f5392f4d28ce6c84e7c26a9421 - languageName: node - linkType: hard - -"@ethersproject/signing-key@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/signing-key@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - bn.js: "npm:^5.2.1" - elliptic: "npm:6.5.4" - hash.js: "npm:1.1.7" - checksum: 10c0/fe2ca55bcdb6e370d81372191d4e04671234a2da872af20b03c34e6e26b97dc07c1ee67e91b673680fb13344c9d5d7eae52f1fa6117733a3d68652b778843e09 - languageName: node - linkType: hard - -"@ethersproject/signing-key@npm:5.8.0, @ethersproject/signing-key@npm:^5.7.0, @ethersproject/signing-key@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/signing-key@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - bn.js: "npm:^5.2.1" - elliptic: "npm:6.6.1" - hash.js: "npm:1.1.7" - checksum: 10c0/a7ff6cd344b0609737a496b6d5b902cf5528ed5a7ce2c0db5e7b69dc491d1810d1d0cd51dddf9dc74dd562ab4961d76e982f1750359b834c53c202e85e4c8502 - languageName: node - linkType: hard - -"@ethersproject/solidity@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/solidity@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/sha2": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/bedf9918911144b0ec352b8aa7fa44abf63f0b131629c625672794ee196ba7d3992b0e0d3741935ca176813da25b9bcbc81aec454652c63113bdc3a1706beac6 - languageName: node - linkType: hard - -"@ethersproject/solidity@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/solidity@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/sha2": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/5b5e0531bcec1d919cfbd261694694c8999ca5c379c1bb276ec779b896d299bb5db8ed7aa5652eb2c7605fe66455832b56ef123dec07f6ddef44231a7aa6fe6c - languageName: node - linkType: hard - -"@ethersproject/strings@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/strings@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/570d87040ccc7d94de9861f76fc2fba6c0b84c5d6104a99a5c60b8a2401df2e4f24bf9c30afa536163b10a564a109a96f02e6290b80e8f0c610426f56ad704d1 - languageName: node - linkType: hard - -"@ethersproject/strings@npm:5.8.0, @ethersproject/strings@npm:^5.7.0, @ethersproject/strings@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/strings@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/6db39503c4be130110612b6d593a381c62657e41eebf4f553247ebe394fda32cdf74ff645daee7b7860d209fd02c7e909a95b1f39a2f001c662669b9dfe81d00 - languageName: node - linkType: hard - -"@ethersproject/transactions@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/transactions@npm:5.7.0" - dependencies: - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/rlp": "npm:^5.7.0" - "@ethersproject/signing-key": "npm:^5.7.0" - checksum: 10c0/aa4d51379caab35b9c468ed1692a23ae47ce0de121890b4f7093c982ee57e30bd2df0c743faed0f44936d7e59c55fffd80479f2c28ec6777b8de06bfb638c239 - languageName: node - linkType: hard - -"@ethersproject/transactions@npm:5.8.0, @ethersproject/transactions@npm:^5.7.0, @ethersproject/transactions@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/transactions@npm:5.8.0" - dependencies: - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/rlp": "npm:^5.8.0" - "@ethersproject/signing-key": "npm:^5.8.0" - checksum: 10c0/dd32f090df5945313aafa8430ce76834479750d6655cb786c3b65ec841c94596b14d3c8c59ee93eed7b4f32f27d321a9b8b43bc6bb51f7e1c6694f82639ffe68 - languageName: node - linkType: hard - -"@ethersproject/units@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/units@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/4da2fdefe2a506cc9f8b408b2c8638ab35b843ec413d52713143f08501a55ff67a808897f9a91874774fb526423a0821090ba294f93e8bf4933a57af9677ac5e - languageName: node - linkType: hard - -"@ethersproject/units@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/units@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/5f92b8379a58024078fce6a4cbf7323cfd79bc41ef8f0a7bbf8be9c816ce18783140ab0d5c8d34ed615639aef7fc3a2ed255e92809e3558a510c4f0d49e27309 - languageName: node - linkType: hard - -"@ethersproject/wallet@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/wallet@npm:5.7.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.7.0" - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/hash": "npm:^5.7.0" - "@ethersproject/hdnode": "npm:^5.7.0" - "@ethersproject/json-wallets": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/random": "npm:^5.7.0" - "@ethersproject/signing-key": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - "@ethersproject/wordlists": "npm:^5.7.0" - checksum: 10c0/f872b957db46f9de247d39a398538622b6c7a12f93d69bec5f47f9abf0701ef1edc10497924dd1c14a68109284c39a1686fa85586d89b3ee65df49002c40ba4c - languageName: node - linkType: hard - -"@ethersproject/wallet@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/wallet@npm:5.8.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.8.0" - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/hash": "npm:^5.8.0" - "@ethersproject/hdnode": "npm:^5.8.0" - "@ethersproject/json-wallets": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/random": "npm:^5.8.0" - "@ethersproject/signing-key": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - "@ethersproject/wordlists": "npm:^5.8.0" - checksum: 10c0/6da450872dda3d9008bad3ccf8467816a63429241e51c66627647123c0fe5625494c4f6c306e098eb8419cc5702ac017d41f5161af5ff670a41fe5d199883c09 - languageName: node - linkType: hard - -"@ethersproject/web@npm:5.7.1": - version: 5.7.1 - resolution: "@ethersproject/web@npm:5.7.1" - dependencies: - "@ethersproject/base64": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/c82d6745c7f133980e8dab203955260e07da22fa544ccafdd0f21c79fae127bd6ef30957319e37b1cc80cddeb04d6bfb60f291bb14a97c9093d81ce50672f453 - languageName: node - linkType: hard - -"@ethersproject/web@npm:5.8.0, @ethersproject/web@npm:^5.7.0, @ethersproject/web@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/web@npm:5.8.0" - dependencies: - "@ethersproject/base64": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/e3cd547225638db6e94fcd890001c778d77adb0d4f11a7f8c447e961041678f3fbfaffe77a962c7aa3f6597504232442e7015f2335b1788508a108708a30308a - languageName: node - linkType: hard - -"@ethersproject/wordlists@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/wordlists@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/hash": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/da4f3eca6d691ebf4f578e6b2ec3a76dedba791be558f6cf7e10cd0bfbaeab5a6753164201bb72ced745fb02b6ef7ef34edcb7e6065ce2b624c6556a461c3f70 - languageName: node - linkType: hard - -"@ethersproject/wordlists@npm:5.8.0, @ethersproject/wordlists@npm:^5.7.0, @ethersproject/wordlists@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/wordlists@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/hash": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/e230a2ba075006bc3a2538e096003e43ef9ba453317f37a4d99638720487ec447c1fa61a592c80483f8a8ad6466511cf4cf5c49cf84464a1679999171ce311f4 - languageName: node - linkType: hard - -"@fastify/busboy@npm:^2.0.0": - version: 2.1.1 - resolution: "@fastify/busboy@npm:2.1.1" - checksum: 10c0/6f8027a8cba7f8f7b736718b013f5a38c0476eea67034c94a0d3c375e2b114366ad4419e6a6fa7ffc2ef9c6d3e0435d76dd584a7a1cbac23962fda7650b579e3 - languageName: node - linkType: hard - -"@ganache/ethereum-address@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/ethereum-address@npm:0.1.4" - dependencies: - "@ganache/utils": "npm:0.1.4" - checksum: 10c0/3ae97179585c5eefdc16e3d707c2e31058429fce201299d2f935073163b7b3798a2528d60f6551acc9c8b4d031154bf1c5e7e20359d195fb0bdcf1159b999941 - languageName: node - linkType: hard - -"@ganache/ethereum-options@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/ethereum-options@npm:0.1.4" - dependencies: - "@ganache/ethereum-address": "npm:0.1.4" - "@ganache/ethereum-utils": "npm:0.1.4" - "@ganache/options": "npm:0.1.4" - "@ganache/utils": "npm:0.1.4" - bip39: "npm:3.0.4" - seedrandom: "npm:3.0.5" - checksum: 10c0/574555c3f27365f4de7d2f0cb1a4be70414dc61845a96adbe4c08853c8a2d82fdbd71af2c796db04d761f073294cf1d8586e4ecca58c6fa97c2bd7228b2365c3 - languageName: node - linkType: hard - -"@ganache/ethereum-utils@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/ethereum-utils@npm:0.1.4" - dependencies: - "@ethereumjs/common": "npm:2.6.0" - "@ethereumjs/tx": "npm:3.4.0" - "@ethereumjs/vm": "npm:5.6.0" - "@ganache/ethereum-address": "npm:0.1.4" - "@ganache/rlp": "npm:0.1.4" - "@ganache/utils": "npm:0.1.4" - emittery: "npm:0.10.0" - ethereumjs-abi: "npm:0.6.8" - ethereumjs-util: "npm:7.1.3" - checksum: 10c0/b2dbe8dbf39c0799f0099de75476361dd7b275ea6972d25ab819ac8bd5e8c22023ffc9d7acd43ecca1b0ba65d3b70cb8afa4095694fe0491bbb586023698c2c3 - languageName: node - linkType: hard - -"@ganache/options@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/options@npm:0.1.4" - dependencies: - "@ganache/utils": "npm:0.1.4" - bip39: "npm:3.0.4" - seedrandom: "npm:3.0.5" - checksum: 10c0/5db14c122e3e1bfdfea5b8e0b1f58fc0e12e88ebef97a5056f34a1b9ca8828c4c274a6eb81dc2625c3cc7521446df965ec41942928a01d0cc30e95f85c322aa5 - languageName: node - linkType: hard - -"@ganache/rlp@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/rlp@npm:0.1.4" - dependencies: - "@ganache/utils": "npm:0.1.4" - rlp: "npm:2.2.6" - checksum: 10c0/83c27f20a1728a8aac2735044ee274574629dad61511749da6ce3b6c22dcd2e07b33bf2f08adb52fe6bc3dc3a589fb0c63622e9190072385043d8ce7fd2e1688 - languageName: node - linkType: hard - -"@ganache/utils@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/utils@npm:0.1.4" - dependencies: - "@trufflesuite/bigint-buffer": "npm:1.1.9" - emittery: "npm:0.10.0" - keccak: "npm:3.0.1" - seedrandom: "npm:3.0.5" - dependenciesMeta: - "@trufflesuite/bigint-buffer": - optional: true - checksum: 10c0/ff658137f7d9a2011cc9ab977cdf9b40962131da4dc08ba2b2cb6060b8a8639a64fdc21815e83700b49415dfe94301d521068e848ba5001b22a85793f63b50d2 - languageName: node - linkType: hard - -"@humanfs/core@npm:^0.19.1": - version: 0.19.1 - resolution: "@humanfs/core@npm:0.19.1" - checksum: 10c0/aa4e0152171c07879b458d0e8a704b8c3a89a8c0541726c6b65b81e84fd8b7564b5d6c633feadc6598307d34564bd53294b533491424e8e313d7ab6c7bc5dc67 - languageName: node - linkType: hard - -"@humanfs/node@npm:^0.16.6": - version: 0.16.7 - resolution: "@humanfs/node@npm:0.16.7" - dependencies: - "@humanfs/core": "npm:^0.19.1" - "@humanwhocodes/retry": "npm:^0.4.0" - checksum: 10c0/9f83d3cf2cfa37383e01e3cdaead11cd426208e04c44adcdd291aa983aaf72d7d3598844d2fe9ce54896bb1bf8bd4b56883376611c8905a19c44684642823f30 - languageName: node - linkType: hard - -"@humanwhocodes/module-importer@npm:^1.0.1": - version: 1.0.1 - resolution: "@humanwhocodes/module-importer@npm:1.0.1" - checksum: 10c0/909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529 - languageName: node - linkType: hard - -"@humanwhocodes/retry@npm:^0.4.0, @humanwhocodes/retry@npm:^0.4.2": - version: 0.4.3 - resolution: "@humanwhocodes/retry@npm:0.4.3" - checksum: 10c0/3775bb30087d4440b3f7406d5a057777d90e4b9f435af488a4923ef249e93615fb78565a85f173a186a076c7706a81d0d57d563a2624e4de2c5c9c66c486ce42 - languageName: node - linkType: hard - -"@isaacs/balanced-match@npm:^4.0.1": - version: 4.0.1 - resolution: "@isaacs/balanced-match@npm:4.0.1" - checksum: 10c0/7da011805b259ec5c955f01cee903da72ad97c5e6f01ca96197267d3f33103d5b2f8a1af192140f3aa64526c593c8d098ae366c2b11f7f17645d12387c2fd420 - languageName: node - linkType: hard - -"@isaacs/brace-expansion@npm:^5.0.0": - version: 5.0.0 - resolution: "@isaacs/brace-expansion@npm:5.0.0" - dependencies: - "@isaacs/balanced-match": "npm:^4.0.1" - checksum: 10c0/b4d4812f4be53afc2c5b6c545001ff7a4659af68d4484804e9d514e183d20269bb81def8682c01a22b17c4d6aed14292c8494f7d2ac664e547101c1a905aa977 - languageName: node - linkType: hard - -"@isaacs/cliui@npm:^8.0.2": - version: 8.0.2 - resolution: "@isaacs/cliui@npm:8.0.2" - dependencies: - string-width: "npm:^5.1.2" - string-width-cjs: "npm:string-width@^4.2.0" - strip-ansi: "npm:^7.0.1" - strip-ansi-cjs: "npm:strip-ansi@^6.0.1" - wrap-ansi: "npm:^8.1.0" - wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" - checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e - languageName: node - linkType: hard - -"@isaacs/fs-minipass@npm:^4.0.0": - version: 4.0.1 - resolution: "@isaacs/fs-minipass@npm:4.0.1" - dependencies: - minipass: "npm:^7.0.4" - checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2 - languageName: node - linkType: hard - -"@jridgewell/resolve-uri@npm:^3.0.3": - version: 3.1.2 - resolution: "@jridgewell/resolve-uri@npm:3.1.2" - checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e - languageName: node - linkType: hard - -"@jridgewell/sourcemap-codec@npm:^1.4.10": - version: 1.5.5 - resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" - checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0 - languageName: node - linkType: hard - -"@jridgewell/trace-mapping@npm:0.3.9": - version: 0.3.9 - resolution: "@jridgewell/trace-mapping@npm:0.3.9" - dependencies: - "@jridgewell/resolve-uri": "npm:^3.0.3" - "@jridgewell/sourcemap-codec": "npm:^1.4.10" - checksum: 10c0/fa425b606d7c7ee5bfa6a31a7b050dd5814b4082f318e0e4190f991902181b4330f43f4805db1dd4f2433fd0ed9cc7a7b9c2683f1deeab1df1b0a98b1e24055b - languageName: node - linkType: hard - -"@noble/curves@npm:1.4.2, @noble/curves@npm:~1.4.0": - version: 1.4.2 - resolution: "@noble/curves@npm:1.4.2" - dependencies: - "@noble/hashes": "npm:1.4.0" - checksum: 10c0/65620c895b15d46e8087939db6657b46a1a15cd4e0e4de5cd84b97a0dfe0af85f33a431bb21ac88267e3dc508618245d4cb564213959d66a84d690fe18a63419 - languageName: node - linkType: hard - -"@noble/curves@npm:~1.9.2": - version: 1.9.7 - resolution: "@noble/curves@npm:1.9.7" - dependencies: - "@noble/hashes": "npm:1.8.0" - checksum: 10c0/150014751ebe8ca06a8654ca2525108452ea9ee0be23430332769f06808cddabfe84f248b6dbf836916bc869c27c2092957eec62c7506d68a1ed0a624017c2a3 - languageName: node - linkType: hard - -"@noble/hashes@npm:1.2.0, @noble/hashes@npm:~1.2.0": - version: 1.2.0 - resolution: "@noble/hashes@npm:1.2.0" - checksum: 10c0/8bd3edb7bb6a9068f806a9a5a208cc2144e42940a21c049d8e9a0c23db08bef5cf1cfd844a7e35489b5ab52c6fa6299352075319e7f531e0996d459c38cfe26a - languageName: node - linkType: hard - -"@noble/hashes@npm:1.4.0, @noble/hashes@npm:~1.4.0": - version: 1.4.0 - resolution: "@noble/hashes@npm:1.4.0" - checksum: 10c0/8c3f005ee72e7b8f9cff756dfae1241485187254e3f743873e22073d63906863df5d4f13d441b7530ea614b7a093f0d889309f28b59850f33b66cb26a779a4a5 - languageName: node - linkType: hard - -"@noble/hashes@npm:1.8.0, @noble/hashes@npm:^1.4.0": - version: 1.8.0 - resolution: "@noble/hashes@npm:1.8.0" - checksum: 10c0/06a0b52c81a6fa7f04d67762e08b2c476a00285858150caeaaff4037356dd5e119f45b2a530f638b77a5eeca013168ec1b655db41bae3236cb2e9d511484fc77 - languageName: node - linkType: hard - -"@noble/hashes@npm:2.0.0-beta.1": - version: 2.0.0-beta.1 - resolution: "@noble/hashes@npm:2.0.0-beta.1" - checksum: 10c0/dde464e841efb008e40ec2bc8431fec4de11c4778b0491c03247aa05c4e900a8b5212c9c90043b836f47d3d9ff48c22419513ed8219fed380cdaa17e1fc4fddc - languageName: node - linkType: hard - -"@noble/secp256k1@npm:1.7.1": - version: 1.7.1 - resolution: "@noble/secp256k1@npm:1.7.1" - checksum: 10c0/48091801d39daba75520012027d0ff0b1719338d96033890cfe0d287ad75af00d82769c0194a06e7e4fbd816ae3f204f4a59c9e26f0ad16b429f7e9b5403ccd5 - languageName: node - linkType: hard - -"@noble/secp256k1@npm:~1.7.0": - version: 1.7.2 - resolution: "@noble/secp256k1@npm:1.7.2" - checksum: 10c0/dda1eea78ee6d4d9ef968bd63d3f7ed387332fa1670af2c9c4c75a69bb6a0ca396bc95b5bab437e40f6f47548a12037094bda55453e30b4a23054922a13f3d27 - languageName: node - linkType: hard - -"@nomicfoundation/edr-darwin-arm64@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-darwin-arm64@npm:0.11.3" - checksum: 10c0/f5923e05a9409a9e3956b95db7e6bbd4345c3cd8de617406a308e257bd4706d59d6f6f8d6ec774d6473d956634ba5c322ec903b66830844683809eb102ec510e - languageName: node - linkType: hard - -"@nomicfoundation/edr-darwin-x64@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-darwin-x64@npm:0.11.3" - checksum: 10c0/f529d2ef57a54bb34fb7888b545f19675624086bd93383e8d91c8dee1555532d2d28e72363b6a3b84e3920911bd550333898636873922cb5899c74b496f847aa - languageName: node - linkType: hard - -"@nomicfoundation/edr-linux-arm64-gnu@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-linux-arm64-gnu@npm:0.11.3" - checksum: 10c0/4a8b4674d2e975434a1eab607f77947aa7dd501896ddb0b24f6f09e497776d197617dcac36076f4e274ac55ce0f1c85de228dff432d470459df6aa35b97176f2 - languageName: node - linkType: hard - -"@nomicfoundation/edr-linux-arm64-musl@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-linux-arm64-musl@npm:0.11.3" - checksum: 10c0/e0bf840cf209db1a8c7bb6dcd35af5c751921c2125ccf11457dbf5f66ef3c306d060933e5cbe9469ac8b440b8fcc19fa13fae8e919b5a03087c70d688cce461f - languageName: node - linkType: hard - -"@nomicfoundation/edr-linux-x64-gnu@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-linux-x64-gnu@npm:0.11.3" - checksum: 10c0/c7617c11029223998cf177d49fb4979b7dcfcc9369cadaa82d2f9fb58c7f8091a33c4c46416e3fb71d9ff2276075d69fd076917841e3912466896ba1ca45cb94 - languageName: node - linkType: hard - -"@nomicfoundation/edr-linux-x64-musl@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-linux-x64-musl@npm:0.11.3" - checksum: 10c0/ef1623581a1d7072c88c0dc342480bed1253131d8775827ae8dddda26b2ecc4f4def3d8ec83ee60ac33e70539a58ed0b7a200040a06f31f9b3eccc3003c3af8d - languageName: node - linkType: hard - -"@nomicfoundation/edr-win32-x64-msvc@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-win32-x64-msvc@npm:0.11.3" - checksum: 10c0/0b3975a22fe31cea5799a3b4020acdf01627508e5f617545ad9f5f5f6739b1a954e1cd397e6d00a56eddd2c88b24d290b8e76f871eab7a847d97ee740e825249 - languageName: node - linkType: hard - -"@nomicfoundation/edr@npm:^0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr@npm:0.11.3" - dependencies: - "@nomicfoundation/edr-darwin-arm64": "npm:0.11.3" - "@nomicfoundation/edr-darwin-x64": "npm:0.11.3" - "@nomicfoundation/edr-linux-arm64-gnu": "npm:0.11.3" - "@nomicfoundation/edr-linux-arm64-musl": "npm:0.11.3" - "@nomicfoundation/edr-linux-x64-gnu": "npm:0.11.3" - "@nomicfoundation/edr-linux-x64-musl": "npm:0.11.3" - "@nomicfoundation/edr-win32-x64-msvc": "npm:0.11.3" - checksum: 10c0/48280ca1ae6913e92a34abf8f70656bc09c217094326b5e81e9d299924a24b7041240109d0f024a3c33706f542e0668f7e320a2eb02657f9bf7bbf29cd7b8f5d - languageName: node - linkType: hard - -"@nomicfoundation/hardhat-foundry@npm:1.2.0": - version: 1.2.0 - resolution: "@nomicfoundation/hardhat-foundry@npm:1.2.0" - dependencies: - picocolors: "npm:^1.1.0" - peerDependencies: - hardhat: ^2.26.0 - checksum: 10c0/52010a4cd2d4dadd8d5ef13c7f709ef89b9a4372f03900917009f2ab7b8411de75e768a526ac8de8fb2e2128683183e3af63e20c4fc79e4f5e28460d6f69f38f - languageName: node - linkType: hard - -"@nomicfoundation/hardhat-network-helpers@npm:^1.0.10": - version: 1.1.2 - resolution: "@nomicfoundation/hardhat-network-helpers@npm:1.1.2" - dependencies: - ethereumjs-util: "npm:^7.1.4" - peerDependencies: - hardhat: ^2.26.0 - checksum: 10c0/00fb7392bc0a0c3df635a52fe350ae5e5a71610f3718e11e6b17753f6723231c81def37a19933cd96174cbc5362c0168c8fa98ea73910d46dd9d4bbba0c7990f - languageName: node - linkType: hard - -"@nomicfoundation/slang@npm:^0.18.3": - version: 0.18.3 - resolution: "@nomicfoundation/slang@npm:0.18.3" - dependencies: - "@bytecodealliance/preview2-shim": "npm:0.17.0" - checksum: 10c0/68036dd38f953451c4b5825600cd44f46931608a9905811fb1d977fac00be5f16b1a39f2f2a0c65f4bbd064d81c05f44f5cd79e626798035815511de89c3b6d0 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-darwin-arm64@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-darwin-arm64@npm:0.1.2" - checksum: 10c0/ef3b13bb2133fea6621db98f991036a3a84d2b240160edec50beafa6ce821fe2f0f5cd4aa61adb9685aff60cd0425982ffd15e0b868b7c768e90e26b8135b825 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-darwin-x64@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-darwin-x64@npm:0.1.2" - checksum: 10c0/3cb6a00cd200b94efd6f59ed626c705c6f773b92ccf8b90471285cd0e81b35f01edb30c1aa5a4633393c2adb8f20fd34e90c51990dc4e30658e8a67c026d16c9 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-linux-arm64-gnu@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-linux-arm64-gnu@npm:0.1.2" - checksum: 10c0/cb9725e7bdc3ba9c1feaef96dbf831c1a59c700ca633a9929fd97debdcb5ce06b5d7b4e6dbc076279978707214d01e2cd126d8e3f4cabc5c16525c031a47b95c - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-linux-arm64-musl@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-linux-arm64-musl@npm:0.1.2" - checksum: 10c0/82a90b1d09ad266ddc510ece2e397f51fdaf29abf7263d2a3a85accddcba2ac24cceb670a3120800611cdcc552eed04919d071e259fdda7564818359ed541f5d - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-linux-x64-gnu@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-linux-x64-gnu@npm:0.1.2" - checksum: 10c0/d1f20d4d55683bd041ead957e5461b2e43a39e959f905e8866de1d65f8d96118e9b861e994604d9002cb7f056be0844e36c241a6bb531c336b399609977c0998 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-linux-x64-musl@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-linux-x64-musl@npm:0.1.2" - checksum: 10c0/6c17f9af3aaf184c0a217cf723076051c502d85e731dbc97f34b838f9ae1b597577abac54a2af49b3fd986b09131c52fa21fd5393b22d05e1ec7fee96a8249c2 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-win32-x64-msvc@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-win32-x64-msvc@npm:0.1.2" - checksum: 10c0/da198464f5ee0d19b6decdfaa65ee0df3097b8960b8483bb7080931968815a5d60f27191229d47a198955784d763d5996f0b92bfde3551612ad972c160b0b000 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer@npm:^0.1.0": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer@npm:0.1.2" - dependencies: - "@nomicfoundation/solidity-analyzer-darwin-arm64": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-darwin-x64": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-linux-x64-musl": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "npm:0.1.2" - dependenciesMeta: - "@nomicfoundation/solidity-analyzer-darwin-arm64": - optional: true - "@nomicfoundation/solidity-analyzer-darwin-x64": - optional: true - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": - optional: true - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": - optional: true - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": - optional: true - "@nomicfoundation/solidity-analyzer-linux-x64-musl": - optional: true - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": - optional: true - checksum: 10c0/e4f503e9287e18967535af669ca7e26e2682203c45a34ea85da53122da1dee1278f2b8c76c20c67fadd7c1b1a98eeecffd2cbc136860665e3afa133817c0de54 - languageName: node - linkType: hard - -"@nomiclabs/hardhat-ethers@npm:^2.2.1, @nomiclabs/hardhat-ethers@npm:^2.2.3": - version: 2.2.3 - resolution: "@nomiclabs/hardhat-ethers@npm:2.2.3" - peerDependencies: - ethers: ^5.0.0 - hardhat: ^2.0.0 - checksum: 10c0/cae46d1966108ab02b50fabe7945c8987fa1e9d5d0a7a06f79afc274ff1abc312e8a82375191a341b28571b897c22433d3a2826eb30077ed88d5983d01e381d0 - languageName: node - linkType: hard + version "1.2.0" + resolved "https://registry.yarnpkg.com/@beanstalk/wells/-/wells-1.2.0.tgz#254ca91f9614b0360761768ab4bd42d859ce3dc4" + integrity sha512-8WIe4s/glnkS1ILoVUQT4PpVyJrm1/+9an4BrUFx5U67Wcijo1Mb11d7GtzQCjHraQfySqq1KTgrLwPsRt7UHw== + +"@beanstalk/wells@0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@beanstalk/wells/-/wells-0.4.1.tgz#40ed31b68347f5162107f306caaf1e2c0f7304d6" + integrity sha512-Ji4r3yxmfqrtmdLhiUVvl04v0GkJJLIs99391gUd+ysQK7/WaeOU8Rx+PaqRD6MzPzfwRl724LzEety9z9DdOQ== + dependencies: + "@nomiclabs/hardhat-ethers" "^2.2.3" + hardhat "^2.17.1" + hardhat-preprocessor "^0.1.5" + +"@bytecodealliance/preview2-shim@0.17.0": + version "0.17.0" + resolved "https://registry.yarnpkg.com/@bytecodealliance/preview2-shim/-/preview2-shim-0.17.0.tgz#9bc1cadbb9f86c446c6f579d3431c08a06a6672e" + integrity sha512-JorcEwe4ud0x5BS/Ar2aQWOQoFzjq/7jcnxYXCvSMh0oRm0dQXzOA+hqLDBnOMks1LLBA7dmiLLsEBl09Yd6iQ== + +"@colors/colors@1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" + integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== + +"@cspotcode/source-map-support@^0.8.0": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== + dependencies: + "@jridgewell/trace-mapping" "0.3.9" + +"@eslint-community/eslint-utils@^4.8.0": + version "4.9.1" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz#4e90af67bc51ddee6cdef5284edf572ec376b595" + integrity sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ== + dependencies: + eslint-visitor-keys "^3.4.3" + +"@eslint-community/regexpp@^4.12.1": + version "4.12.2" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.2.tgz#bccdf615bcf7b6e8db830ec0b8d21c9a25de597b" + integrity sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew== + +"@eslint/config-array@^0.21.1": + version "0.21.1" + resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.21.1.tgz#7d1b0060fea407f8301e932492ba8c18aff29713" + integrity sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA== + dependencies: + "@eslint/object-schema" "^2.1.7" + debug "^4.3.1" + minimatch "^3.1.2" + +"@eslint/config-helpers@^0.4.2": + version "0.4.2" + resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.4.2.tgz#1bd006ceeb7e2e55b2b773ab318d300e1a66aeda" + integrity sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw== + dependencies: + "@eslint/core" "^0.17.0" + +"@eslint/core@^0.17.0": + version "0.17.0" + resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.17.0.tgz#77225820413d9617509da9342190a2019e78761c" + integrity sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ== + dependencies: + "@types/json-schema" "^7.0.15" + +"@eslint/eslintrc@^3.3.1": + version "3.3.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.3.3.tgz#26393a0806501b5e2b6a43aa588a4d8df67880ac" + integrity sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^10.0.1" + globals "^14.0.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.1" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + +"@eslint/js@9.39.2": + version "9.39.2" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.39.2.tgz#2d4b8ec4c3ea13c1b3748e0c97ecd766bdd80599" + integrity sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA== + +"@eslint/object-schema@^2.1.7": + version "2.1.7" + resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.7.tgz#6e2126a1347e86a4dedf8706ec67ff8e107ebbad" + integrity sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA== + +"@eslint/plugin-kit@^0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz#9779e3fd9b7ee33571a57435cf4335a1794a6cb2" + integrity sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA== + dependencies: + "@eslint/core" "^0.17.0" + levn "^0.4.1" + +"@ethereum-waffle/chai@4.0.10": + version "4.0.10" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/chai/-/chai-4.0.10.tgz#6f600a40b6fdaed331eba42b8625ff23f3a0e59a" + integrity sha512-X5RepE7Dn8KQLFO7HHAAe+KeGaX/by14hn90wePGBhzL54tq4Y8JscZFu+/LCwCl6TnkAAy5ebiMoqJ37sFtWw== + dependencies: + "@ethereum-waffle/provider" "4.0.5" + debug "^4.3.4" + json-bigint "^1.0.0" + +"@ethereum-waffle/compiler@4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/compiler/-/compiler-4.0.3.tgz#069e2df24b879b8a7b78857bad6f8bf6ebc8a5b1" + integrity sha512-5x5U52tSvEVJS6dpCeXXKvRKyf8GICDwiTwUvGD3/WD+DpvgvaoHOL82XqpTSUHgV3bBq6ma5/8gKUJUIAnJCw== + dependencies: + "@resolver-engine/imports" "^0.3.3" + "@resolver-engine/imports-fs" "^0.3.3" + "@typechain/ethers-v5" "^10.0.0" + "@types/mkdirp" "^0.5.2" + "@types/node-fetch" "^2.6.1" + mkdirp "^0.5.1" + node-fetch "^2.6.7" + +"@ethereum-waffle/ens@4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/ens/-/ens-4.0.3.tgz#4a46ac926414f3c83b4e8cc2562c8e2aee06377a" + integrity sha512-PVLcdnTbaTfCrfSOrvtlA9Fih73EeDvFS28JQnT5M5P4JMplqmchhcZB1yg/fCtx4cvgHlZXa0+rOCAk2Jk0Jw== + +"@ethereum-waffle/mock-contract@4.0.4": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/mock-contract/-/mock-contract-4.0.4.tgz#f13fea29922d87a4d2e7c4fc8fe72ea04d2c13de" + integrity sha512-LwEj5SIuEe9/gnrXgtqIkWbk2g15imM/qcJcxpLyAkOj981tQxXmtV4XmQMZsdedEsZ/D/rbUAOtZbgwqgUwQA== + +"@ethereum-waffle/provider@4.0.5": + version "4.0.5" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/provider/-/provider-4.0.5.tgz#8a65dbf0263f4162c9209608205dee1c960e716b" + integrity sha512-40uzfyzcrPh+Gbdzv89JJTMBlZwzya1YLDyim8mVbEqYLP5VRYWoGp0JMyaizgV3hMoUFRqJKVmIUw4v7r3hYw== + dependencies: + "@ethereum-waffle/ens" "4.0.3" + "@ganache/ethereum-options" "0.1.4" + debug "^4.3.4" + ganache "7.4.3" + +"@ethereumjs/block@^3.5.0", "@ethereumjs/block@^3.6.0", "@ethereumjs/block@^3.6.2": + version "3.6.3" + resolved "https://registry.yarnpkg.com/@ethereumjs/block/-/block-3.6.3.tgz#d96cbd7af38b92ebb3424223dbf773f5ccd27f84" + integrity sha512-CegDeryc2DVKnDkg5COQrE0bJfw/p0v3GBk2W5/Dj5dOVfEmb50Ux0GLnSPypooLnfqjwFaorGuT9FokWB3GRg== + dependencies: + "@ethereumjs/common" "^2.6.5" + "@ethereumjs/tx" "^3.5.2" + ethereumjs-util "^7.1.5" + merkle-patricia-tree "^4.2.4" + +"@ethereumjs/blockchain@^5.5.0": + version "5.5.3" + resolved "https://registry.yarnpkg.com/@ethereumjs/blockchain/-/blockchain-5.5.3.tgz#aa49a6a04789da6b66b5bcbb0d0b98efc369f640" + integrity sha512-bi0wuNJ1gw4ByNCV56H0Z4Q7D+SxUbwyG12Wxzbvqc89PXLRNR20LBcSUZRKpN0+YCPo6m0XZL/JLio3B52LTw== + dependencies: + "@ethereumjs/block" "^3.6.2" + "@ethereumjs/common" "^2.6.4" + "@ethereumjs/ethash" "^1.1.0" + debug "^4.3.3" + ethereumjs-util "^7.1.5" + level-mem "^5.0.1" + lru-cache "^5.1.1" + semaphore-async-await "^1.5.1" + +"@ethereumjs/common@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.0.tgz#feb96fb154da41ee2cc2c5df667621a440f36348" + integrity sha512-Cq2qS0FTu6O2VU1sgg+WyU9Ps0M6j/BEMHN+hRaECXCV/r0aI78u4N6p52QW/BDVhwWZpCdrvG8X7NJdzlpNUA== + dependencies: + crc-32 "^1.2.0" + ethereumjs-util "^7.1.3" + +"@ethereumjs/common@^2.6.0", "@ethereumjs/common@^2.6.4", "@ethereumjs/common@^2.6.5": + version "2.6.5" + resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.5.tgz#0a75a22a046272579d91919cb12d84f2756e8d30" + integrity sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA== + dependencies: + crc-32 "^1.2.0" + ethereumjs-util "^7.1.5" + +"@ethereumjs/ethash@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/ethash/-/ethash-1.1.0.tgz#7c5918ffcaa9cb9c1dc7d12f77ef038c11fb83fb" + integrity sha512-/U7UOKW6BzpA+Vt+kISAoeDie1vAvY4Zy2KF5JJb+So7+1yKmJeJEHOGSnQIj330e9Zyl3L5Nae6VZyh2TJnAA== + dependencies: + "@ethereumjs/block" "^3.5.0" + "@types/levelup" "^4.3.0" + buffer-xor "^2.0.1" + ethereumjs-util "^7.1.1" + miller-rabin "^4.0.0" + +"@ethereumjs/rlp@^4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@ethereumjs/rlp/-/rlp-4.0.1.tgz#626fabfd9081baab3d0a3074b0c7ecaf674aaa41" + integrity sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw== + +"@ethereumjs/rlp@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/rlp/-/rlp-5.0.2.tgz#c89bd82f2f3bec248ab2d517ae25f5bbc4aac842" + integrity sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA== + +"@ethereumjs/tx@3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.4.0.tgz#7eb1947eefa55eb9cf05b3ca116fb7a3dbd0bce7" + integrity sha512-WWUwg1PdjHKZZxPPo274ZuPsJCWV3SqATrEKQP1n2DrVYVP1aZIYpo/mFaA0BDoE0tIQmBeimRCEA0Lgil+yYw== + dependencies: + "@ethereumjs/common" "^2.6.0" + ethereumjs-util "^7.1.3" + +"@ethereumjs/tx@^3.4.0", "@ethereumjs/tx@^3.5.2": + version "3.5.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.2.tgz#197b9b6299582ad84f9527ca961466fce2296c1c" + integrity sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw== + dependencies: + "@ethereumjs/common" "^2.6.4" + ethereumjs-util "^7.1.5" + +"@ethereumjs/util@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-8.1.0.tgz#299df97fb6b034e0577ce9f94c7d9d1004409ed4" + integrity sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA== + dependencies: + "@ethereumjs/rlp" "^4.0.1" + ethereum-cryptography "^2.0.0" + micro-ftch "^0.3.1" + +"@ethereumjs/util@^9.1.0": + version "9.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-9.1.0.tgz#75e3898a3116d21c135fa9e29886565609129bce" + integrity sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog== + dependencies: + "@ethereumjs/rlp" "^5.0.2" + ethereum-cryptography "^2.2.1" + +"@ethereumjs/vm@5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/vm/-/vm-5.6.0.tgz#e0ca62af07de820143674c30b776b86c1983a464" + integrity sha512-J2m/OgjjiGdWF2P9bj/4LnZQ1zRoZhY8mRNVw/N3tXliGI8ai1sI1mlDPkLpeUUM4vq54gH6n0ZlSpz8U/qlYQ== + dependencies: + "@ethereumjs/block" "^3.6.0" + "@ethereumjs/blockchain" "^5.5.0" + "@ethereumjs/common" "^2.6.0" + "@ethereumjs/tx" "^3.4.0" + async-eventemitter "^0.2.4" + core-js-pure "^3.0.1" + debug "^2.2.0" + ethereumjs-util "^7.1.3" + functional-red-black-tree "^1.0.1" + mcl-wasm "^0.7.1" + merkle-patricia-tree "^4.2.2" + rustbn.js "~0.2.0" + +"@ethersproject/abi@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abi@5.8.0", "@ethersproject/abi@^5.0.0-beta.146", "@ethersproject/abi@^5.1.2", "@ethersproject/abi@^5.6.3", "@ethersproject/abi@^5.7.0", "@ethersproject/abi@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.8.0.tgz#e79bb51940ac35fe6f3262d7fe2cdb25ad5f07d9" + integrity sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q== + dependencies: + "@ethersproject/address" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/hash" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@ethersproject/abstract-provider@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-provider@5.8.0", "@ethersproject/abstract-provider@^5.7.0", "@ethersproject/abstract-provider@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.8.0.tgz#7581f9be601afa1d02b95d26b9d9840926a35b0c" + integrity sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/networks" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + "@ethersproject/web" "^5.8.0" + +"@ethersproject/abstract-signer@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/abstract-signer@5.8.0", "@ethersproject/abstract-signer@^5.7.0", "@ethersproject/abstract-signer@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.8.0.tgz#8d7417e95e4094c1797a9762e6789c7356db0754" + integrity sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA== + dependencies: + "@ethersproject/abstract-provider" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + +"@ethersproject/address@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/address@5.8.0", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.7.0", "@ethersproject/address@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.8.0.tgz#3007a2c352eee566ad745dca1dbbebdb50a6a983" + integrity sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/rlp" "^5.8.0" + +"@ethersproject/base64@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/base64@5.8.0", "@ethersproject/base64@^5.7.0", "@ethersproject/base64@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.8.0.tgz#61c669c648f6e6aad002c228465d52ac93ee83eb" + integrity sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ== + dependencies: + "@ethersproject/bytes" "^5.8.0" + +"@ethersproject/basex@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/basex@5.8.0", "@ethersproject/basex@^5.7.0", "@ethersproject/basex@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.8.0.tgz#1d279a90c4be84d1c1139114a1f844869e57d03a" + integrity sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + +"@ethersproject/bignumber@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bignumber@5.8.0", "@ethersproject/bignumber@^5.5.0", "@ethersproject/bignumber@^5.7.0", "@ethersproject/bignumber@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.8.0.tgz#c381d178f9eeb370923d389284efa19f69efa5d7" + integrity sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/bytes@5.8.0", "@ethersproject/bytes@^5.7.0", "@ethersproject/bytes@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.8.0.tgz#9074820e1cac7507a34372cadeb035461463be34" + integrity sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A== + dependencies: + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/constants@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/constants@5.8.0", "@ethersproject/constants@^5.7.0", "@ethersproject/constants@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.8.0.tgz#12f31c2f4317b113a4c19de94e50933648c90704" + integrity sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/contracts@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.8.0.tgz#243a38a2e4aa3e757215ea64e276f8a8c9d8ed73" + integrity sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ== + dependencies: + "@ethersproject/abi" "^5.8.0" + "@ethersproject/abstract-provider" "^5.8.0" + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + +"@ethersproject/hash@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hash@5.8.0", "@ethersproject/hash@^5.7.0", "@ethersproject/hash@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.8.0.tgz#b8893d4629b7f8462a90102572f8cd65a0192b4c" + integrity sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA== + dependencies: + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/base64" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@ethersproject/hdnode@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/hdnode@5.8.0", "@ethersproject/hdnode@^5.7.0", "@ethersproject/hdnode@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.8.0.tgz#a51ae2a50bcd48ef6fd108c64cbae5e6ff34a761" + integrity sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA== + dependencies: + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/basex" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/pbkdf2" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/sha2" "^5.8.0" + "@ethersproject/signing-key" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + "@ethersproject/wordlists" "^5.8.0" + +"@ethersproject/json-wallets@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/json-wallets@5.8.0", "@ethersproject/json-wallets@^5.7.0", "@ethersproject/json-wallets@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.8.0.tgz#d18de0a4cf0f185f232eb3c17d5e0744d97eb8c9" + integrity sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w== + dependencies: + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/hdnode" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/pbkdf2" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/random" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/keccak256@5.8.0", "@ethersproject/keccak256@^5.7.0", "@ethersproject/keccak256@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.8.0.tgz#d2123a379567faf2d75d2aaea074ffd4df349e6a" + integrity sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng== + dependencies: + "@ethersproject/bytes" "^5.8.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/logger@5.8.0", "@ethersproject/logger@^5.7.0", "@ethersproject/logger@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.8.0.tgz#f0232968a4f87d29623a0481690a2732662713d6" + integrity sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA== + +"@ethersproject/networks@5.7.1": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/networks@5.8.0", "@ethersproject/networks@^5.7.0", "@ethersproject/networks@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.8.0.tgz#8b4517a3139380cba9fb00b63ffad0a979671fde" + integrity sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg== + dependencies: + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/pbkdf2@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/pbkdf2@5.8.0", "@ethersproject/pbkdf2@^5.7.0", "@ethersproject/pbkdf2@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.8.0.tgz#cd2621130e5dd51f6a0172e63a6e4a0c0a0ec37e" + integrity sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/sha2" "^5.8.0" + +"@ethersproject/properties@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/properties@5.8.0", "@ethersproject/properties@^5.7.0", "@ethersproject/properties@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.8.0.tgz#405a8affb6311a49a91dabd96aeeae24f477020e" + integrity sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw== + dependencies: + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/providers@5.7.2": + version "5.7.2" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.2.tgz#f8b1a4f275d7ce58cf0a2eec222269a08beb18cb" + integrity sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.8.0.tgz#6c2ae354f7f96ee150439f7de06236928bc04cb4" + integrity sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw== + dependencies: + "@ethersproject/abstract-provider" "^5.8.0" + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/base64" "^5.8.0" + "@ethersproject/basex" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/hash" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/networks" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/random" "^5.8.0" + "@ethersproject/rlp" "^5.8.0" + "@ethersproject/sha2" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + "@ethersproject/web" "^5.8.0" + bech32 "1.1.4" + ws "8.18.0" + +"@ethersproject/random@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/random@5.8.0", "@ethersproject/random@^5.7.0", "@ethersproject/random@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.8.0.tgz#1bced04d49449f37c6437c701735a1a022f0057a" + integrity sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/rlp@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.8.0", "@ethersproject/rlp@^5.7.0", "@ethersproject/rlp@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.8.0.tgz#5a0d49f61bc53e051532a5179472779141451de5" + integrity sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/sha2@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/sha2@5.8.0", "@ethersproject/sha2@^5.7.0", "@ethersproject/sha2@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.8.0.tgz#8954a613bb78dac9b46829c0a95de561ef74e5e1" + integrity sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.8.0", "@ethersproject/signing-key@^5.7.0", "@ethersproject/signing-key@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.8.0.tgz#9797e02c717b68239c6349394ea85febf8893119" + integrity sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + bn.js "^5.2.1" + elliptic "6.6.1" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/solidity@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.8.0.tgz#429bb9fcf5521307a9448d7358c26b93695379b9" + integrity sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/sha2" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@ethersproject/strings@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/strings@5.8.0", "@ethersproject/strings@^5.7.0", "@ethersproject/strings@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.8.0.tgz#ad79fafbf0bd272d9765603215ac74fd7953908f" + integrity sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/transactions@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/transactions@5.8.0", "@ethersproject/transactions@^5.7.0", "@ethersproject/transactions@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.8.0.tgz#1e518822403abc99def5a043d1c6f6fe0007e46b" + integrity sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg== + dependencies: + "@ethersproject/address" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/rlp" "^5.8.0" + "@ethersproject/signing-key" "^5.8.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/units@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.8.0.tgz#c12f34ba7c3a2de0e9fa0ed0ee32f3e46c5c2c6a" + integrity sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/wallet@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.8.0.tgz#49c300d10872e6986d953e8310dc33d440da8127" + integrity sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA== + dependencies: + "@ethersproject/abstract-provider" "^5.8.0" + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/hash" "^5.8.0" + "@ethersproject/hdnode" "^5.8.0" + "@ethersproject/json-wallets" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/random" "^5.8.0" + "@ethersproject/signing-key" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + "@ethersproject/wordlists" "^5.8.0" + +"@ethersproject/web@5.7.1": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/web@5.8.0", "@ethersproject/web@^5.7.0", "@ethersproject/web@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.8.0.tgz#3e54badc0013b7a801463a7008a87988efce8a37" + integrity sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw== + dependencies: + "@ethersproject/base64" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@ethersproject/wordlists@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.8.0", "@ethersproject/wordlists@^5.7.0", "@ethersproject/wordlists@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.8.0.tgz#7a5654ee8d1bb1f4dbe43f91d217356d650ad821" + integrity sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/hash" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@fastify/busboy@^2.0.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.1.1.tgz#b9da6a878a371829a0502c9b6c1c143ef6663f4d" + integrity sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA== + +"@ganache/ethereum-address@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/ethereum-address/-/ethereum-address-0.1.4.tgz#0e6d66f4a24f64bf687cb3ff7358fb85b9d9005e" + integrity sha512-sTkU0M9z2nZUzDeHRzzGlW724xhMLXo2LeX1hixbnjHWY1Zg1hkqORywVfl+g5uOO8ht8T0v+34IxNxAhmWlbw== + dependencies: + "@ganache/utils" "0.1.4" + +"@ganache/ethereum-options@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/ethereum-options/-/ethereum-options-0.1.4.tgz#6a559abb44225e2b8741a8f78a19a46714a71cd6" + integrity sha512-i4l46taoK2yC41FPkcoDlEVoqHS52wcbHPqJtYETRWqpOaoj9hAg/EJIHLb1t6Nhva2CdTO84bG+qlzlTxjAHw== + dependencies: + "@ganache/ethereum-address" "0.1.4" + "@ganache/ethereum-utils" "0.1.4" + "@ganache/options" "0.1.4" + "@ganache/utils" "0.1.4" + bip39 "3.0.4" + seedrandom "3.0.5" + +"@ganache/ethereum-utils@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/ethereum-utils/-/ethereum-utils-0.1.4.tgz#fae4b5b9e642e751ff1fa0cd7316c92996317257" + integrity sha512-FKXF3zcdDrIoCqovJmHLKZLrJ43234Em2sde/3urUT/10gSgnwlpFmrv2LUMAmSbX3lgZhW/aSs8krGhDevDAg== + dependencies: + "@ethereumjs/common" "2.6.0" + "@ethereumjs/tx" "3.4.0" + "@ethereumjs/vm" "5.6.0" + "@ganache/ethereum-address" "0.1.4" + "@ganache/rlp" "0.1.4" + "@ganache/utils" "0.1.4" + emittery "0.10.0" + ethereumjs-abi "0.6.8" + ethereumjs-util "7.1.3" + +"@ganache/options@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/options/-/options-0.1.4.tgz#325b07e6de85094667aaaaf3d653e32404a04b78" + integrity sha512-zAe/craqNuPz512XQY33MOAG6Si1Xp0hCvfzkBfj2qkuPcbJCq6W/eQ5MB6SbXHrICsHrZOaelyqjuhSEmjXRw== + dependencies: + "@ganache/utils" "0.1.4" + bip39 "3.0.4" + seedrandom "3.0.5" + +"@ganache/rlp@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/rlp/-/rlp-0.1.4.tgz#f4043afda83e1a14a4f80607b103daf166a9b374" + integrity sha512-Do3D1H6JmhikB+6rHviGqkrNywou/liVeFiKIpOBLynIpvZhRCgn3SEDxyy/JovcaozTo/BynHumfs5R085MFQ== + dependencies: + "@ganache/utils" "0.1.4" + rlp "2.2.6" + +"@ganache/utils@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/utils/-/utils-0.1.4.tgz#25d60d7689e3dda6a8a7ad70e3646f07c2c39a1f" + integrity sha512-oatUueU3XuXbUbUlkyxeLLH3LzFZ4y5aSkNbx6tjSIhVTPeh+AuBKYt4eQ73FFcTB3nj/gZoslgAh5CN7O369w== + dependencies: + emittery "0.10.0" + keccak "3.0.1" + seedrandom "3.0.5" + optionalDependencies: + "@trufflesuite/bigint-buffer" "1.1.9" + +"@humanfs/core@^0.19.1": + version "0.19.1" + resolved "https://registry.yarnpkg.com/@humanfs/core/-/core-0.19.1.tgz#17c55ca7d426733fe3c561906b8173c336b40a77" + integrity sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA== + +"@humanfs/node@^0.16.6": + version "0.16.7" + resolved "https://registry.yarnpkg.com/@humanfs/node/-/node-0.16.7.tgz#822cb7b3a12c5a240a24f621b5a2413e27a45f26" + integrity sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ== + dependencies: + "@humanfs/core" "^0.19.1" + "@humanwhocodes/retry" "^0.4.0" + +"@humanwhocodes/module-importer@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== + +"@humanwhocodes/retry@^0.4.0", "@humanwhocodes/retry@^0.4.2": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.4.3.tgz#c2b9d2e374ee62c586d3adbea87199b1d7a7a6ba" + integrity sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ== + +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + +"@jridgewell/resolve-uri@^3.0.3": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/sourcemap-codec@^1.4.10": + version "1.5.5" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz#6912b00d2c631c0d15ce1a7ab57cd657f2a8f8ba" + integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== + +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + +"@noble/curves@1.4.2", "@noble/curves@~1.4.0": + version "1.4.2" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.4.2.tgz#40309198c76ed71bc6dbf7ba24e81ceb4d0d1fe9" + integrity sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw== + dependencies: + "@noble/hashes" "1.4.0" + +"@noble/curves@~1.9.2": + version "1.9.7" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.7.tgz#79d04b4758a43e4bca2cbdc62e7771352fa6b951" + integrity sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/hashes@1.2.0", "@noble/hashes@~1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.2.0.tgz#a3150eeb09cc7ab207ebf6d7b9ad311a9bdbed12" + integrity sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ== + +"@noble/hashes@1.4.0", "@noble/hashes@~1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426" + integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg== + +"@noble/hashes@1.8.0", "@noble/hashes@^1.4.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.8.0.tgz#cee43d801fcef9644b11b8194857695acd5f815a" + integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== + +"@noble/hashes@2.0.0-beta.1": + version "2.0.0-beta.1" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-2.0.0-beta.1.tgz#641fd2f13e25ae2acdc7d0b082289a5adeda13cf" + integrity sha512-xnnogJ6ccNZ55lLgWdjhBqKUdFoznjpFr3oy23n5Qm7h+ZMtt8v4zWvHg9zRW6jcETweplD5F4iUqb0SSPC+Dw== + +"@noble/secp256k1@1.7.1": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.1.tgz#b251c70f824ce3ca7f8dc3df08d58f005cc0507c" + integrity sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw== + +"@noble/secp256k1@~1.7.0": + version "1.7.2" + resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.2.tgz#c2c3343e2dce80e15a914d7442147507f8a98e7f" + integrity sha512-/qzwYl5eFLH8OWIecQWM31qld2g1NfjgylK+TNhqtaUKP37Nm+Y+z30Fjhw0Ct8p9yCQEm2N3W/AckdIb3SMcQ== + +"@nomicfoundation/edr-darwin-arm64@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.11.3.tgz#d8e2609fc24cf20e75c3782e39cd5a95f7488075" + integrity sha512-w0tksbdtSxz9nuzHKsfx4c2mwaD0+l5qKL2R290QdnN9gi9AV62p9DHkOgfBdyg6/a6ZlnQqnISi7C9avk/6VA== + +"@nomicfoundation/edr-darwin-x64@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.11.3.tgz#7a9e94cee330269a33c7f1dce267560c7e12dbd3" + integrity sha512-QR4jAFrPbOcrO7O2z2ESg+eUeIZPe2bPIlQYgiJ04ltbSGW27FblOzdd5+S3RoOD/dsZGKAvvy6dadBEl0NgoA== + +"@nomicfoundation/edr-linux-arm64-gnu@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.11.3.tgz#cd5ec90c7263045c3dfd0b109c73206e488edc27" + integrity sha512-Ktjv89RZZiUmOFPspuSBVJ61mBZQ2+HuLmV67InNlh9TSUec/iDjGIwAn59dx0bF/LOSrM7qg5od3KKac4LJDQ== + +"@nomicfoundation/edr-linux-arm64-musl@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.11.3.tgz#ed23df2d9844470f5661716da27d99a72a69e99e" + integrity sha512-B3sLJx1rL2E9pfdD4mApiwOZSrX0a/KQSBWdlq1uAhFKqkl00yZaY4LejgZndsJAa4iKGQJlGnw4HCGeVt0+jA== + +"@nomicfoundation/edr-linux-x64-gnu@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.11.3.tgz#87a62496c2c4b808bc4a9ae96cca1642a21c2b51" + integrity sha512-D/4cFKDXH6UYyKPu6J3Y8TzW11UzeQI0+wS9QcJzjlrrfKj0ENW7g9VihD1O2FvXkdkTjcCZYb6ai8MMTCsaVw== + +"@nomicfoundation/edr-linux-x64-musl@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.11.3.tgz#8cfe408c73bcb9ed5e263910c313866d442f4b48" + integrity sha512-ergXuIb4nIvmf+TqyiDX5tsE49311DrBky6+jNLgsGDTBaN1GS3OFwFS8I6Ri/GGn6xOaT8sKu3q7/m+WdlFzg== + +"@nomicfoundation/edr-win32-x64-msvc@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.11.3.tgz#fb208b94553c7eb22246d73a1ac4de5bfdb97d01" + integrity sha512-snvEf+WB3OV0wj2A7kQ+ZQqBquMcrozSLXcdnMdEl7Tmn+KDCbmFKBt3Tk0X3qOU4RKQpLPnTxdM07TJNVtung== + +"@nomicfoundation/edr@^0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr/-/edr-0.11.3.tgz#e8b30b868788e45d7a2ee2359a021ef7dcb96952" + integrity sha512-kqILRkAd455Sd6v8mfP3C1/0tCOynJWY+Ir+k/9Boocu2kObCrsFgG+ZWB7fSBVdd9cPVSNrnhWS+V+PEo637g== + dependencies: + "@nomicfoundation/edr-darwin-arm64" "0.11.3" + "@nomicfoundation/edr-darwin-x64" "0.11.3" + "@nomicfoundation/edr-linux-arm64-gnu" "0.11.3" + "@nomicfoundation/edr-linux-arm64-musl" "0.11.3" + "@nomicfoundation/edr-linux-x64-gnu" "0.11.3" + "@nomicfoundation/edr-linux-x64-musl" "0.11.3" + "@nomicfoundation/edr-win32-x64-msvc" "0.11.3" + +"@nomicfoundation/hardhat-foundry@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@nomicfoundation/hardhat-foundry/-/hardhat-foundry-1.2.0.tgz#00bac127d1540c5c3900709f9f5fa511c599ba6c" + integrity sha512-2AJQLcWnUk/iQqHDVnyOadASKFQKF1PhNtt1cONEQqzUPK+fqME1IbP+EKu+RkZTRcyc4xqUMaB0sutglKRITg== + dependencies: + picocolors "^1.1.0" + +"@nomicfoundation/hardhat-network-helpers@^1.0.10": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/hardhat-network-helpers/-/hardhat-network-helpers-1.1.2.tgz#24ba943d27099f09f9a188f04cdfe7c136d5aafc" + integrity sha512-p7HaUVDbLj7ikFivQVNhnfMHUBgiHYMwQWvGn9AriieuopGOELIrwj2KjyM2a6z70zai5YKO264Vwz+3UFJZPQ== + dependencies: + ethereumjs-util "^7.1.4" + +"@nomicfoundation/slang@^0.18.3": + version "0.18.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/slang/-/slang-0.18.3.tgz#976b6c3820081cebf050afbea434038aac9313cc" + integrity sha512-YqAWgckqbHM0/CZxi9Nlf4hjk9wUNLC9ngWCWBiqMxPIZmzsVKYuChdlrfeBPQyvQQBoOhbx+7C1005kLVQDZQ== + dependencies: + "@bytecodealliance/preview2-shim" "0.17.0" + +"@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-darwin-arm64/-/solidity-analyzer-darwin-arm64-0.1.2.tgz#3a9c3b20d51360b20affb8f753e756d553d49557" + integrity sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw== + +"@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-darwin-x64/-/solidity-analyzer-darwin-x64-0.1.2.tgz#74dcfabeb4ca373d95bd0d13692f44fcef133c28" + integrity sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw== + +"@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-linux-arm64-gnu/-/solidity-analyzer-linux-arm64-gnu-0.1.2.tgz#4af5849a89e5a8f511acc04f28eb5d4460ba2b6a" + integrity sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA== + +"@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-linux-arm64-musl/-/solidity-analyzer-linux-arm64-musl-0.1.2.tgz#54036808a9a327b2ff84446c130a6687ee702a8e" + integrity sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA== + +"@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-linux-x64-gnu/-/solidity-analyzer-linux-x64-gnu-0.1.2.tgz#466cda0d6e43691986c944b909fc6dbb8cfc594e" + integrity sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g== + +"@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-linux-x64-musl/-/solidity-analyzer-linux-x64-musl-0.1.2.tgz#2b35826987a6e94444140ac92310baa088ee7f94" + integrity sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg== + +"@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-win32-x64-msvc/-/solidity-analyzer-win32-x64-msvc-0.1.2.tgz#e6363d13b8709ca66f330562337dbc01ce8bbbd9" + integrity sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA== + +"@nomicfoundation/solidity-analyzer@^0.1.0": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.2.tgz#8bcea7d300157bf3a770a851d9f5c5e2db34ac55" + integrity sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA== + optionalDependencies: + "@nomicfoundation/solidity-analyzer-darwin-arm64" "0.1.2" + "@nomicfoundation/solidity-analyzer-darwin-x64" "0.1.2" + "@nomicfoundation/solidity-analyzer-linux-arm64-gnu" "0.1.2" + "@nomicfoundation/solidity-analyzer-linux-arm64-musl" "0.1.2" + "@nomicfoundation/solidity-analyzer-linux-x64-gnu" "0.1.2" + "@nomicfoundation/solidity-analyzer-linux-x64-musl" "0.1.2" + "@nomicfoundation/solidity-analyzer-win32-x64-msvc" "0.1.2" + +"@nomiclabs/hardhat-ethers@^2.2.1", "@nomiclabs/hardhat-ethers@^2.2.3": + version "2.2.3" + resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.2.3.tgz#b41053e360c31a32c2640c9a45ee981a7e603fe0" + integrity sha512-YhzPdzb612X591FOe68q+qXVXGG2ANZRvDo0RRUtimev85rCrAlv/TLMEZw5c+kq9AbzocLTVX/h2jVIFPL9Xg== "@nomiclabs/hardhat-etherscan@npm:@pinto-org/hardhat-etherscan@3.1.8-pinto.1": - version: 3.1.8-pinto.1 - resolution: "@pinto-org/hardhat-etherscan@npm:3.1.8-pinto.1" - dependencies: - "@ethersproject/abi": "npm:^5.1.2" - "@ethersproject/address": "npm:^5.0.2" - cbor: "npm:^8.1.0" - chalk: "npm:^2.4.2" - debug: "npm:^4.1.1" - fs-extra: "npm:^7.0.1" - lodash: "npm:^4.17.11" - semver: "npm:^6.3.0" - table: "npm:^6.8.0" - undici: "npm:^5.14.0" - peerDependencies: - hardhat: ^2.0.4 - checksum: 10c0/6b41784c2ffa0818a5fca421dcf4b07028f4c61947f9376dea44d01300f94d1d985fa0ae26144ac2c519a506da9d9fda2ce3a34b453a316a7b1dac4d1ce067dc - languageName: node - linkType: hard - -"@nomiclabs/hardhat-waffle@npm:^2.0.3": - version: 2.0.6 - resolution: "@nomiclabs/hardhat-waffle@npm:2.0.6" - peerDependencies: - "@nomiclabs/hardhat-ethers": ^2.0.0 - "@types/sinon-chai": ^3.2.3 - ethereum-waffle: "*" - ethers: ^5.0.0 - hardhat: ^2.0.0 - checksum: 10c0/9614ab1e76959cfccc586842d990de4c2aa74cea8e82a838d017d91d4c696df931af4a77af9c16325e037ec8438a8c98c9bae5d9e4d0d0fcdaa147c86bce01b5 - languageName: node - linkType: hard - -"@npmcli/agent@npm:^4.0.0": - version: 4.0.0 - resolution: "@npmcli/agent@npm:4.0.0" - dependencies: - agent-base: "npm:^7.1.0" - http-proxy-agent: "npm:^7.0.0" - https-proxy-agent: "npm:^7.0.1" - lru-cache: "npm:^11.2.1" - socks-proxy-agent: "npm:^8.0.3" - checksum: 10c0/f7b5ce0f3dd42c3f8c6546e8433573d8049f67ef11ec22aa4704bc41483122f68bf97752e06302c455ead667af5cb753e6a09bff06632bc465c1cfd4c4b75a53 - languageName: node - linkType: hard - -"@npmcli/fs@npm:^5.0.0": - version: 5.0.0 - resolution: "@npmcli/fs@npm:5.0.0" - dependencies: - semver: "npm:^7.3.5" - checksum: 10c0/26e376d780f60ff16e874a0ac9bc3399186846baae0b6e1352286385ac134d900cc5dafaded77f38d77f86898fc923ae1cee9d7399f0275b1aa24878915d722b - languageName: node - linkType: hard - -"@openzeppelin/contracts-upgradeable@npm:5.0.2": - version: 5.0.2 - resolution: "@openzeppelin/contracts-upgradeable@npm:5.0.2" - peerDependencies: - "@openzeppelin/contracts": 5.0.2 - checksum: 10c0/0bd47a4fa0ba8084c1df9573968ff02387bc21514d846b5feb4ad42f90f3ba26bb1e40f17f03e4fa24ffbe473b9ea06c137283297884ab7d5b98d2c112904dc9 - languageName: node - linkType: hard - -"@openzeppelin/contracts@npm:5.0.2": - version: 5.0.2 - resolution: "@openzeppelin/contracts@npm:5.0.2" - checksum: 10c0/d042661db7bb2f3a4b9ef30bba332e86ac20907d171f2ebfccdc9255cc69b62786fead8d6904b8148a8f26946bc7c15eead91b95f75db0c193a99d52e528663e - languageName: node - linkType: hard - -"@openzeppelin/defender-base-client@npm:^1.46.0": - version: 1.54.6 - resolution: "@openzeppelin/defender-base-client@npm:1.54.6" - dependencies: - amazon-cognito-identity-js: "npm:^6.0.1" - async-retry: "npm:^1.3.3" - axios: "npm:^1.4.0" - lodash: "npm:^4.17.19" - node-fetch: "npm:^2.6.0" - checksum: 10c0/adeac961ae8e06e620ff6ff227090180613fbad233bbed962ae1d1769f1a936cdba24b952a1c10fec69bf9695a7faf7572fe86fd174198b86e26706391784bef - languageName: node - linkType: hard - -"@openzeppelin/hardhat-upgrades@npm:^1.17.0": - version: 1.28.0 - resolution: "@openzeppelin/hardhat-upgrades@npm:1.28.0" - dependencies: - "@openzeppelin/defender-base-client": "npm:^1.46.0" - "@openzeppelin/platform-deploy-client": "npm:^0.8.0" - "@openzeppelin/upgrades-core": "npm:^1.27.0" - chalk: "npm:^4.1.0" - debug: "npm:^4.1.1" - proper-lockfile: "npm:^4.1.1" - peerDependencies: - "@nomiclabs/hardhat-ethers": ^2.0.0 - "@nomiclabs/hardhat-etherscan": ^3.1.0 - ethers: ^5.0.5 - hardhat: ^2.0.2 - peerDependenciesMeta: - "@nomiclabs/harhdat-etherscan": - optional: true - bin: - migrate-oz-cli-project: dist/scripts/migrate-oz-cli-project.js - checksum: 10c0/8cd6c52ab966aac09435e58c8d5a80747adbd34ffbe3808205c30d6851a7e4ef35272a36f8c837da4841b4643ac3df8ea1d982218f38b99144df16e68ada3b9f - languageName: node - linkType: hard - -"@openzeppelin/merkle-tree@npm:1.0.7": - version: 1.0.7 - resolution: "@openzeppelin/merkle-tree@npm:1.0.7" - dependencies: - "@ethersproject/abi": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - checksum: 10c0/16e3f5e18e122d8cb0e86dc5ef3e1902784b8d1f395c5ef3fe37ff51838dc7a296fc35d254a0508155d35f05b0037e30bb2b15d839d538a86284ce3d1c6d105b - languageName: node - linkType: hard - -"@openzeppelin/platform-deploy-client@npm:^0.8.0": - version: 0.8.0 - resolution: "@openzeppelin/platform-deploy-client@npm:0.8.0" - dependencies: - "@ethersproject/abi": "npm:^5.6.3" - "@openzeppelin/defender-base-client": "npm:^1.46.0" - axios: "npm:^0.21.2" - lodash: "npm:^4.17.19" - node-fetch: "npm:^2.6.0" - checksum: 10c0/7a85c19fd94b268386fdcef5951218467ea146e7047fd4e0536f8044138a7867c904358e681cd6a56bf1e0d1a82ffe7172df4b291b4278c54094925c8890d35a - languageName: node - linkType: hard - -"@openzeppelin/upgrades-core@npm:^1.27.0": - version: 1.44.2 - resolution: "@openzeppelin/upgrades-core@npm:1.44.2" - dependencies: - "@nomicfoundation/slang": "npm:^0.18.3" - bignumber.js: "npm:^9.1.2" - cbor: "npm:^10.0.0" - chalk: "npm:^4.1.0" - compare-versions: "npm:^6.0.0" - debug: "npm:^4.1.1" - ethereumjs-util: "npm:^7.0.3" - minimatch: "npm:^9.0.5" - minimist: "npm:^1.2.7" - proper-lockfile: "npm:^4.1.1" - solidity-ast: "npm:^0.4.60" - bin: - openzeppelin-upgrades-core: dist/cli/cli.js - checksum: 10c0/6e4fe9d3209b656dfa2fba32fa8b9bd3c0feafc2c902d81a6c8d57e4358ddf954ea326c6df017c0365fb0c8118a03942409cde2fd60b4509b2a9f8e007fbdfab - languageName: node - linkType: hard - -"@pkgjs/parseargs@npm:^0.11.0": - version: 0.11.0 - resolution: "@pkgjs/parseargs@npm:0.11.0" - checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd - languageName: node - linkType: hard - -"@prb/math@npm:v2.5.0": - version: 2.5.0 - resolution: "@prb/math@npm:2.5.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.5.0" - decimal.js: "npm:^10.3.1" - evm-bn: "npm:^1.1.1" - mathjs: "npm:^10.4.0" - peerDependencies: - "@ethersproject/bignumber": 5.x - evm-bn: 1.x - mathjs: 10.x - checksum: 10c0/e4cb6e4d3db887359809353998637613f059ea523b1f68ed50d7b7b1412a1f375bad0252d02e3ff36a2c7c017e04d1bc655d338b467525e7026077d4fceb111b - languageName: node - linkType: hard - -"@resolver-engine/core@npm:^0.3.3": - version: 0.3.3 - resolution: "@resolver-engine/core@npm:0.3.3" - dependencies: - debug: "npm:^3.1.0" - is-url: "npm:^1.2.4" - request: "npm:^2.85.0" - checksum: 10c0/a562d412b2976b36be85878112518e85cb32a024334bb191f9657adb7e38f264c0b91429a954e7e097bb5c8fc54c6df76840cd43590c73be4dc7932150eb6e01 - languageName: node - linkType: hard - -"@resolver-engine/fs@npm:^0.3.3": - version: 0.3.3 - resolution: "@resolver-engine/fs@npm:0.3.3" - dependencies: - "@resolver-engine/core": "npm:^0.3.3" - debug: "npm:^3.1.0" - checksum: 10c0/4f21e8633eb5225aeb24ca3f0ebf74129cbb497d704ed473c5f49bfc3d4b7c33a4a02decc966b7b4d654b517a4a88661cc2b84784cf6d394c1e1e5d49f371cc7 - languageName: node - linkType: hard - -"@resolver-engine/imports-fs@npm:^0.3.3": - version: 0.3.3 - resolution: "@resolver-engine/imports-fs@npm:0.3.3" - dependencies: - "@resolver-engine/fs": "npm:^0.3.3" - "@resolver-engine/imports": "npm:^0.3.3" - debug: "npm:^3.1.0" - checksum: 10c0/bcbd1e11f10550353ba4b82f29a5d9026d9f6cb625ccaaaf52898542fee832d11fc3eedaaf5089a5f6b0e3213c810233209f8e345b19c6a9994f58d6fec1adeb - languageName: node - linkType: hard - -"@resolver-engine/imports@npm:^0.3.3": - version: 0.3.3 - resolution: "@resolver-engine/imports@npm:0.3.3" - dependencies: - "@resolver-engine/core": "npm:^0.3.3" - debug: "npm:^3.1.0" - hosted-git-info: "npm:^2.6.0" - path-browserify: "npm:^1.0.0" - url: "npm:^0.11.0" - checksum: 10c0/efdb3996ebaac05702edfa35ff4a9f53e4ef141e91ea534ce84becc65371638091b0c2e912f020ee5b654fb32a60b29591a3ea769af9ed70b9f8039bd278f571 - languageName: node - linkType: hard - -"@scure/base@npm:~1.1.0, @scure/base@npm:~1.1.6": - version: 1.1.9 - resolution: "@scure/base@npm:1.1.9" - checksum: 10c0/77a06b9a2db8144d22d9bf198338893d77367c51b58c72b99df990c0a11f7cadd066d4102abb15e3ca6798d1529e3765f55c4355742465e49aed7a0c01fe76e8 - languageName: node - linkType: hard - -"@scure/base@npm:~1.2.5": - version: 1.2.6 - resolution: "@scure/base@npm:1.2.6" - checksum: 10c0/49bd5293371c4e062cb6ba689c8fe3ea3981b7bb9c000400dc4eafa29f56814cdcdd27c04311c2fec34de26bc373c593a1d6ca6d754398a488d587943b7c128a - languageName: node - linkType: hard - -"@scure/bip32@npm:1.1.5": - version: 1.1.5 - resolution: "@scure/bip32@npm:1.1.5" - dependencies: - "@noble/hashes": "npm:~1.2.0" - "@noble/secp256k1": "npm:~1.7.0" - "@scure/base": "npm:~1.1.0" - checksum: 10c0/d0521f6de28278e06f2d517307b4de6c9bcb3dbdf9a5844bb57a6e4916a180e4136129ccab295c27bd1196ef77757608255afcd7cf927e03baec4479b3df74fc - languageName: node - linkType: hard - -"@scure/bip32@npm:1.4.0": - version: 1.4.0 - resolution: "@scure/bip32@npm:1.4.0" - dependencies: - "@noble/curves": "npm:~1.4.0" - "@noble/hashes": "npm:~1.4.0" - "@scure/base": "npm:~1.1.6" - checksum: 10c0/6849690d49a3bf1d0ffde9452eb16ab83478c1bc0da7b914f873e2930cd5acf972ee81320e3df1963eb247cf57e76d2d975b5f97093d37c0e3f7326581bf41bd - languageName: node - linkType: hard - -"@scure/bip39@npm:1.1.1": - version: 1.1.1 - resolution: "@scure/bip39@npm:1.1.1" - dependencies: - "@noble/hashes": "npm:~1.2.0" - "@scure/base": "npm:~1.1.0" - checksum: 10c0/821dc9d5be8362a32277390526db064860c2216a079ba51d63def9289c2b290599e93681ebbeebf0e93540799eec35784c1dfcf5167d0b280ef148e5023ce01b - languageName: node - linkType: hard - -"@scure/bip39@npm:1.3.0": - version: 1.3.0 - resolution: "@scure/bip39@npm:1.3.0" - dependencies: - "@noble/hashes": "npm:~1.4.0" - "@scure/base": "npm:~1.1.6" - checksum: 10c0/1ae1545a7384a4d9e33e12d9e9f8824f29b0279eb175b0f0657c0a782c217920054f9a1d28eb316a417dfc6c4e0b700d6fbdc6da160670107426d52fcbe017a8 - languageName: node - linkType: hard - -"@sentry/core@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/core@npm:5.30.0" - dependencies: - "@sentry/hub": "npm:5.30.0" - "@sentry/minimal": "npm:5.30.0" - "@sentry/types": "npm:5.30.0" - "@sentry/utils": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/6407b9c2a6a56f90c198f5714b3257df24d89d1b4ca6726bd44760d0adabc25798b69fef2c88ccea461c7e79e3c78861aaebfd51fd3cb892aee656c3f7e11801 - languageName: node - linkType: hard - -"@sentry/hub@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/hub@npm:5.30.0" - dependencies: - "@sentry/types": "npm:5.30.0" - "@sentry/utils": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/386c91d06aa44be0465fc11330d748a113e464d41cd562a9e1d222a682cbcb14e697a3e640953e7a0239997ad8a02b223a0df3d9e1d8816cb823fd3613be3e2f - languageName: node - linkType: hard - -"@sentry/minimal@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/minimal@npm:5.30.0" - dependencies: - "@sentry/hub": "npm:5.30.0" - "@sentry/types": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/34ec05503de46d01f98c94701475d5d89cc044892c86ccce30e01f62f28344eb23b718e7cf573815e46f30a4ac9da3129bed9b3d20c822938acfb40cbe72437b - languageName: node - linkType: hard - -"@sentry/node@npm:^5.18.1": - version: 5.30.0 - resolution: "@sentry/node@npm:5.30.0" - dependencies: - "@sentry/core": "npm:5.30.0" - "@sentry/hub": "npm:5.30.0" - "@sentry/tracing": "npm:5.30.0" - "@sentry/types": "npm:5.30.0" - "@sentry/utils": "npm:5.30.0" - cookie: "npm:^0.4.1" - https-proxy-agent: "npm:^5.0.0" - lru_map: "npm:^0.3.3" - tslib: "npm:^1.9.3" - checksum: 10c0/c50db7c81ace57cac17692245c2ab3c84a6149183f81d5f2dfd157eaa7b66eb4d6a727dd13a754bb129c96711389eec2944cd94126722ee1d8b11f2b627b830d - languageName: node - linkType: hard - -"@sentry/tracing@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/tracing@npm:5.30.0" - dependencies: - "@sentry/hub": "npm:5.30.0" - "@sentry/minimal": "npm:5.30.0" - "@sentry/types": "npm:5.30.0" - "@sentry/utils": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/46830265bc54a3203d7d9f0d8d9f2f7d9d2c6a977e07ccdae317fa3ea29c388b904b3bef28f7a0ba9c074845d67feab63c6d3c0ddce9aeb275b6c966253fb415 - languageName: node - linkType: hard - -"@sentry/types@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/types@npm:5.30.0" - checksum: 10c0/99c6e55c0a82c8ca95be2e9dbb35f581b29e4ff7af74b23bc62b690de4e35febfa15868184a2303480ef86babd4fea5273cf3b5ddf4a27685b841a72f13a0c88 - languageName: node - linkType: hard - -"@sentry/utils@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/utils@npm:5.30.0" - dependencies: - "@sentry/types": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/ca8eebfea7ac7db6d16f6c0b8a66ac62587df12a79ce9d0d8393f4d69880bb8d40d438f9810f7fb107a9880fe0d68bbf797b89cbafd113e89a0829eb06b205f8 - languageName: node - linkType: hard - -"@smithy/types@npm:^4.11.0": - version: 4.12.0 - resolution: "@smithy/types@npm:4.12.0" - dependencies: - tslib: "npm:^2.6.2" - checksum: 10c0/ac81de3f24b43e52a5089279bced4ff04a853e0bdc80143a234e79f7f40cbd61d85497b08a252265570b4637a3cf265cf85a7a09e5f194937fe30706498640b7 - languageName: node - linkType: hard - -"@solidity-parser/parser@npm:^0.14.0": - version: 0.14.5 - resolution: "@solidity-parser/parser@npm:0.14.5" - dependencies: - antlr4ts: "npm:^0.5.0-alpha.4" - checksum: 10c0/d5c689d8925a18e1ceb2f6449a8263915b1676117856109b7793eda8f7dafc975b6ed0d0d73fc08257903cac383484e4c8f8cf47b069621e81ba368c4ea4cf6a - languageName: node - linkType: hard - -"@solidity-parser/parser@npm:^0.20.1": - version: 0.20.2 - resolution: "@solidity-parser/parser@npm:0.20.2" - checksum: 10c0/23b0b7ed343a4fa55cb8621cf4fc81b0bdd791a4ee7e96ced7778db07de66d4e418db2c2dc1525b1f82fc0310ac829c78382327292b37e35cb30a19961fcb429 - languageName: node - linkType: hard - -"@trufflesuite/bigint-buffer@npm:1.1.10": - version: 1.1.10 - resolution: "@trufflesuite/bigint-buffer@npm:1.1.10" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:4.4.0" - checksum: 10c0/5761201f32d05f1513f6591c38026ce00ff87462e26a2640e458be23fb57fa83b5fddef433220253ee3f98d0010959b7720db0a094d048d1c825978fd7a96938 - languageName: node - linkType: hard - -"@trufflesuite/bigint-buffer@npm:1.1.9": - version: 1.1.9 - resolution: "@trufflesuite/bigint-buffer@npm:1.1.9" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:4.3.0" - checksum: 10c0/70fa30094da69e40e809f066ed6543167fce3282b06504d703cb96f4ab951a5eba3c600ec5db8e926c079da3d786b297d3289c7261208d914d29e9f2d908def6 - languageName: node - linkType: hard - -"@tsconfig/node10@npm:^1.0.7": - version: 1.0.12 - resolution: "@tsconfig/node10@npm:1.0.12" - checksum: 10c0/7bbbd7408cfaced86387a9b1b71cebc91c6fd701a120369735734da8eab1a4773fc079abd9f40c9e0b049e12586c8ac0e13f0da596bfd455b9b4c3faa813ebc5 - languageName: node - linkType: hard - -"@tsconfig/node12@npm:^1.0.7": - version: 1.0.11 - resolution: "@tsconfig/node12@npm:1.0.11" - checksum: 10c0/dddca2b553e2bee1308a056705103fc8304e42bb2d2cbd797b84403a223b25c78f2c683ec3e24a095e82cd435387c877239bffcb15a590ba817cd3f6b9a99fd9 - languageName: node - linkType: hard - -"@tsconfig/node14@npm:^1.0.0": - version: 1.0.3 - resolution: "@tsconfig/node14@npm:1.0.3" - checksum: 10c0/67c1316d065fdaa32525bc9449ff82c197c4c19092b9663b23213c8cbbf8d88b6ed6a17898e0cbc2711950fbfaf40388938c1c748a2ee89f7234fc9e7fe2bf44 - languageName: node - linkType: hard - -"@tsconfig/node16@npm:^1.0.2": - version: 1.0.4 - resolution: "@tsconfig/node16@npm:1.0.4" - checksum: 10c0/05f8f2734e266fb1839eb1d57290df1664fe2aa3b0fdd685a9035806daa635f7519bf6d5d9b33f6e69dd545b8c46bd6e2b5c79acb2b1f146e885f7f11a42a5bb - languageName: node - linkType: hard - -"@typechain/ethers-v5@npm:^10.0.0": - version: 10.2.1 - resolution: "@typechain/ethers-v5@npm:10.2.1" - dependencies: - lodash: "npm:^4.17.15" - ts-essentials: "npm:^7.0.1" - peerDependencies: - "@ethersproject/abi": ^5.0.0 - "@ethersproject/providers": ^5.0.0 - ethers: ^5.1.3 - typechain: ^8.1.1 - typescript: ">=4.3.0" - checksum: 10c0/a576aa3ad7ff270fdff295b6929cc4b5076816740a6ca2bc01ba59f00fcc4b80626e4e05c4a4dc6a8caa61e26b6b939af99d2c6183799132260c068b1dcef72c - languageName: node - linkType: hard - -"@types/abstract-leveldown@npm:*": - version: 7.2.5 - resolution: "@types/abstract-leveldown@npm:7.2.5" - checksum: 10c0/ec6c054a0a09c5a2ba8de6e640169978d34b6ef9b629183c440330208ad67e1322d7dd0aeb834963a9138b47b78730dcddd929c10138ccfddb7b06869264e173 - languageName: node - linkType: hard - -"@types/bn.js@npm:^4.11.3": - version: 4.11.6 - resolution: "@types/bn.js@npm:4.11.6" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/a5a19dafc106b1b2ab35c2024ca37b9d0938dced11cb1cca7d119de5a0dd5f54db525c82cb1392843fc921677452efcbbdce3aa96ecc1457d3de6e266915ebd0 - languageName: node - linkType: hard - -"@types/bn.js@npm:^5.1.0": - version: 5.2.0 - resolution: "@types/bn.js@npm:5.2.0" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/7a36114b8e61faba5c28b433c3e5aabded261745dabb8f3fe41b2d84e8c4c2b8282e52a88a842bd31a565ff5dbf685145ccd91171f1a8d657fb249025c17aa85 - languageName: node - linkType: hard - -"@types/body-parser@npm:*": - version: 1.19.6 - resolution: "@types/body-parser@npm:1.19.6" - dependencies: - "@types/connect": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/542da05c924dce58ee23f50a8b981fee36921850c82222e384931fda3e106f750f7880c47be665217d72dbe445129049db6eb1f44e7a06b09d62af8f3cca8ea7 - languageName: node - linkType: hard - -"@types/concat-stream@npm:^1.6.0": - version: 1.6.1 - resolution: "@types/concat-stream@npm:1.6.1" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/838a0ec89d59a11c425b7728fdd05b17b652086a27fdf5b787778521ccf6d3133d9e9a6e6b803785b28c0a0f7a437582813e37b317ed8100870af836ad49a7a2 - languageName: node - linkType: hard - -"@types/connect@npm:*": - version: 3.4.38 - resolution: "@types/connect@npm:3.4.38" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/2e1cdba2c410f25649e77856505cd60223250fa12dff7a503e492208dbfdd25f62859918f28aba95315251fd1f5e1ffbfca1e25e73037189ab85dd3f8d0a148c - languageName: node - linkType: hard - -"@types/cors@npm:^2.8.17": - version: 2.8.19 - resolution: "@types/cors@npm:2.8.19" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/b5dd407040db7d8aa1bd36e79e5f3f32292f6b075abc287529e9f48df1a25fda3e3799ba30b4656667ffb931d3b75690c1d6ca71e39f7337ea6dfda8581916d0 - languageName: node - linkType: hard - -"@types/estree@npm:^1.0.6": - version: 1.0.8 - resolution: "@types/estree@npm:1.0.8" - checksum: 10c0/39d34d1afaa338ab9763f37ad6066e3f349444f9052b9676a7cc0252ef9485a41c6d81c9c4e0d26e9077993354edf25efc853f3224dd4b447175ef62bdcc86a5 - languageName: node - linkType: hard - -"@types/express-serve-static-core@npm:^5.0.0": - version: 5.1.1 - resolution: "@types/express-serve-static-core@npm:5.1.1" - dependencies: - "@types/node": "npm:*" - "@types/qs": "npm:*" - "@types/range-parser": "npm:*" - "@types/send": "npm:*" - checksum: 10c0/ee88216e114368ef06bcafeceb74a7e8671b90900fb0ab1d49ff41542c3a344231ef0d922bf63daa79f0585f3eebe2ce5ec7f83facc581eff8bcdb136a225ef3 - languageName: node - linkType: hard - -"@types/express@npm:^5.0.0": - version: 5.0.6 - resolution: "@types/express@npm:5.0.6" - dependencies: - "@types/body-parser": "npm:*" - "@types/express-serve-static-core": "npm:^5.0.0" - "@types/serve-static": "npm:^2" - checksum: 10c0/f1071e3389a955d4f9a38aae38634121c7cd9b3171ba4201ec9b56bd534aba07866839d278adc0dda05b942b05a901a02fd174201c3b1f70ce22b10b6c68f24b - languageName: node - linkType: hard - -"@types/form-data@npm:0.0.33": - version: 0.0.33 - resolution: "@types/form-data@npm:0.0.33" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/20bd8f7491d759ce613e35612aef37b3084be43466883ce83e1261905032939bc9e51e470e61bccf6d2f08a39659c44795531bbf66af177176ab0ddbd968e155 - languageName: node - linkType: hard - -"@types/http-errors@npm:*": - version: 2.0.5 - resolution: "@types/http-errors@npm:2.0.5" - checksum: 10c0/00f8140fbc504f47356512bd88e1910c2f07e04233d99c88c854b3600ce0523c8cd0ba7d1897667243282eb44c59abb9245959e2428b9de004f93937f52f7c15 - languageName: node - linkType: hard - -"@types/json-schema@npm:^7.0.15": - version: 7.0.15 - resolution: "@types/json-schema@npm:7.0.15" - checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db - languageName: node - linkType: hard - -"@types/level-errors@npm:*": - version: 3.0.2 - resolution: "@types/level-errors@npm:3.0.2" - checksum: 10c0/5972e8e4a680252828ce34b7124f79b9b2698db68b04174119fa81251dbff185ac06fdc73f5d8bad6b10d6e4eaace53a98f96615ef64982a4fa521bddd55dddb - languageName: node - linkType: hard - -"@types/levelup@npm:^4.3.0": - version: 4.3.3 - resolution: "@types/levelup@npm:4.3.3" - dependencies: - "@types/abstract-leveldown": "npm:*" - "@types/level-errors": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/71473cbbdcd7db9c1c229f0a8a80b2bb5df4ab4bd4667740f2653510018568ee961d68f3c0bc35ed693817e8fa41433ff6991c3e689864f5b22f10650ed855c9 - languageName: node - linkType: hard - -"@types/lru-cache@npm:5.1.1": - version: 5.1.1 - resolution: "@types/lru-cache@npm:5.1.1" - checksum: 10c0/1f17ec9b202c01a89337cc5528198a690be6b61a6688242125fbfb7fa17770e453e00e4685021abf5ae605860ca0722209faac5c254b780d0104730bb0b9e354 - languageName: node - linkType: hard - -"@types/mkdirp@npm:^0.5.2": - version: 0.5.2 - resolution: "@types/mkdirp@npm:0.5.2" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/c3c6c9bdd1f13b2f114dd34122fd2b030220398501a2727bfe0442615a363dd8f3a89aa4e6d25727ee44c8478fb451aefef82e72184dc1bd04e48334808f37dd - languageName: node - linkType: hard - -"@types/node-fetch@npm:^2.6.1": - version: 2.6.13 - resolution: "@types/node-fetch@npm:2.6.13" - dependencies: - "@types/node": "npm:*" - form-data: "npm:^4.0.4" - checksum: 10c0/6313c89f62c50bd0513a6839cdff0a06727ac5495ccbb2eeda51bb2bbbc4f3c0a76c0393a491b7610af703d3d2deb6cf60e37e59c81ceeca803ffde745dbf309 - languageName: node - linkType: hard - -"@types/node@npm:*": - version: 25.0.8 - resolution: "@types/node@npm:25.0.8" - dependencies: - undici-types: "npm:~7.16.0" - checksum: 10c0/2282464cd928ab184b2310b79899c76bfaa88c8d14640dfab2f9218fdee7e2d916056492de683aa3a26050c8f3bbcade0305616a55277a7c344926c0393149e0 - languageName: node - linkType: hard - -"@types/node@npm:11.11.6": - version: 11.11.6 - resolution: "@types/node@npm:11.11.6" - checksum: 10c0/8a04d16475dc8b88031b8d9d97cbf11612802940c0514ea661c41ae02190e30fb3c69a870a523b9918477169f8c7e0d01df85d4648b9fe873d087d502fd7ba7e - languageName: node - linkType: hard - -"@types/node@npm:^10.0.3": - version: 10.17.60 - resolution: "@types/node@npm:10.17.60" - checksum: 10c0/0742294912a6e79786cdee9ed77cff6ee8ff007b55d8e21170fc3e5994ad3a8101fea741898091876f8dc32b0a5ae3d64537b7176799e92da56346028d2cbcd2 - languageName: node - linkType: hard - -"@types/node@npm:^8.0.0": - version: 8.10.66 - resolution: "@types/node@npm:8.10.66" - checksum: 10c0/425e0fca5bad0d6ff14336946a1e3577750dcfbb7449614786d3241ca78ff44e3beb43eace122682de1b9d8e25cf2a0456a0b3e500d78cb55cab68f892e38141 - languageName: node - linkType: hard - -"@types/pbkdf2@npm:^3.0.0": - version: 3.1.2 - resolution: "@types/pbkdf2@npm:3.1.2" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/4f60b0e3c73297f55023b993d3d543212aa7f61c8c0d6a2720f5dbe2cf38e2fe55ff295d550ac048dddbfc3d44c285cfe16126d65c613bd67a57662357e268d9 - languageName: node - linkType: hard - -"@types/prettier@npm:^2.1.1": - version: 2.7.3 - resolution: "@types/prettier@npm:2.7.3" - checksum: 10c0/0960b5c1115bb25e979009d0b44c42cf3d792accf24085e4bfce15aef5794ea042e04e70c2139a2c3387f781f18c89b5706f000ddb089e9a4a2ccb7536a2c5f0 - languageName: node - linkType: hard - -"@types/qs@npm:*, @types/qs@npm:^6.2.31": - version: 6.14.0 - resolution: "@types/qs@npm:6.14.0" - checksum: 10c0/5b3036df6e507483869cdb3858201b2e0b64b4793dc4974f188caa5b5732f2333ab9db45c08157975054d3b070788b35088b4bc60257ae263885016ee2131310 - languageName: node - linkType: hard - -"@types/range-parser@npm:*": - version: 1.2.7 - resolution: "@types/range-parser@npm:1.2.7" - checksum: 10c0/361bb3e964ec5133fa40644a0b942279ed5df1949f21321d77de79f48b728d39253e5ce0408c9c17e4e0fd95ca7899da36841686393b9f7a1e209916e9381a3c - languageName: node - linkType: hard - -"@types/secp256k1@npm:^4.0.1": - version: 4.0.7 - resolution: "@types/secp256k1@npm:4.0.7" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/3e4a22bb699597adc723414a841d2e8a1fa71c95c3d018c6a2dd8482500b6e9fe2d78d87e758f18c1aabe333cac22ac2a96f456e3bc147df30b7fac4e6346618 - languageName: node - linkType: hard - -"@types/seedrandom@npm:3.0.1": - version: 3.0.1 - resolution: "@types/seedrandom@npm:3.0.1" - checksum: 10c0/b9be192c99b25d7d5d93928e6106f1baff86a4ced33c7b9f94609c659c5d8cb657b70683c74798f83e12caf75af072d3e4f2608ab57a01c897c512fe991f6c9a - languageName: node - linkType: hard - -"@types/send@npm:*": - version: 1.2.1 - resolution: "@types/send@npm:1.2.1" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/7673747f8c2d8e67f3b1b3b57e9d4d681801a4f7b526ecf09987bb9a84a61cf94aa411c736183884dc762c1c402a61681eb1ef200d8d45d7e5ec0ab67ea5f6c1 - languageName: node - linkType: hard - -"@types/serve-static@npm:^2": - version: 2.2.0 - resolution: "@types/serve-static@npm:2.2.0" - dependencies: - "@types/http-errors": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/a3c6126bdbf9685e6c7dc03ad34639666eff32754e912adeed9643bf3dd3aa0ff043002a7f69039306e310d233eb8e160c59308f95b0a619f32366bbc48ee094 - languageName: node - linkType: hard - -"@uniswap/v3-core@npm:v1.0.2-solc-0.8-simulate": - version: 1.0.2-solc-0.8-simulate - resolution: "@uniswap/v3-core@npm:1.0.2-solc-0.8-simulate" - checksum: 10c0/62b1a9bb79a172be36b55c860eac7210271b6f8cfc3566c7acfec0880ea36e40e0f40343de55672e2c5ca1650969f33aecae5186f0cc26fa4fbe3aa5cc1b95be - languageName: node - linkType: hard - -"abbrev@npm:^4.0.0": - version: 4.0.0 - resolution: "abbrev@npm:4.0.0" - checksum: 10c0/b4cc16935235e80702fc90192e349e32f8ef0ed151ef506aa78c81a7c455ec18375c4125414b99f84b2e055199d66383e787675f0bcd87da7a4dbd59f9eac1d5 - languageName: node - linkType: hard - -"abstract-leveldown@npm:^6.2.1": - version: 6.3.0 - resolution: "abstract-leveldown@npm:6.3.0" - dependencies: - buffer: "npm:^5.5.0" - immediate: "npm:^3.2.3" - level-concat-iterator: "npm:~2.0.0" - level-supports: "npm:~1.0.0" - xtend: "npm:~4.0.0" - checksum: 10c0/441c7e6765b6c2e9a36999e2bda3f4421d09348c0e925e284d873bcbf5ecad809788c9eda416aed37fe5b6e6a9e75af6e27142d1fcba460b8757d70028e307b1 - languageName: node - linkType: hard - -"abstract-leveldown@npm:^7.2.0": - version: 7.2.0 - resolution: "abstract-leveldown@npm:7.2.0" - dependencies: - buffer: "npm:^6.0.3" - catering: "npm:^2.0.0" - is-buffer: "npm:^2.0.5" - level-concat-iterator: "npm:^3.0.0" - level-supports: "npm:^2.0.1" - queue-microtask: "npm:^1.2.3" - checksum: 10c0/c81765642fc2100499fadc3254470a338ba7c0ba2e597b15cd13d91f333a54619b4d5c4137765e0835817142cd23e8eb7bf01b6a217e13c492f4872c164184dc - languageName: node - linkType: hard - -"abstract-leveldown@npm:~6.2.1": - version: 6.2.3 - resolution: "abstract-leveldown@npm:6.2.3" - dependencies: - buffer: "npm:^5.5.0" - immediate: "npm:^3.2.3" - level-concat-iterator: "npm:~2.0.0" - level-supports: "npm:~1.0.0" - xtend: "npm:~4.0.0" - checksum: 10c0/a7994531a4618a409ee016dabf132014be9a2d07a3438f835c1eb5607f77f6cf12abc437e8f5bff353b1d8dcb31628c8ae65b41e7533bf606c6f7213ab61c1d1 - languageName: node - linkType: hard - -"accepts@npm:~1.3.8": - version: 1.3.8 - resolution: "accepts@npm:1.3.8" - dependencies: - mime-types: "npm:~2.1.34" - negotiator: "npm:0.6.3" - checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362 - languageName: node - linkType: hard - -"acorn-jsx@npm:^5.3.2": - version: 5.3.2 - resolution: "acorn-jsx@npm:5.3.2" - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10c0/4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1 - languageName: node - linkType: hard - -"acorn-walk@npm:^8.1.1": - version: 8.3.4 - resolution: "acorn-walk@npm:8.3.4" - dependencies: - acorn: "npm:^8.11.0" - checksum: 10c0/76537ac5fb2c37a64560feaf3342023dadc086c46da57da363e64c6148dc21b57d49ace26f949e225063acb6fb441eabffd89f7a3066de5ad37ab3e328927c62 - languageName: node - linkType: hard - -"acorn@npm:^8.11.0, acorn@npm:^8.15.0, acorn@npm:^8.4.1": - version: 8.15.0 - resolution: "acorn@npm:8.15.0" - bin: - acorn: bin/acorn - checksum: 10c0/dec73ff59b7d6628a01eebaece7f2bdb8bb62b9b5926dcad0f8931f2b8b79c2be21f6c68ac095592adb5adb15831a3635d9343e6a91d028bbe85d564875ec3ec - languageName: node - linkType: hard - -"adm-zip@npm:^0.4.16": - version: 0.4.16 - resolution: "adm-zip@npm:0.4.16" - checksum: 10c0/c56c6e138fd19006155fc716acae14d54e07c267ae19d78c8a8cdca04762bf20170a71a41aa8d8bad2f13b70d4f3e9a191009bafa5280e05a440ee506f871a55 - languageName: node - linkType: hard - -"aes-js@npm:3.0.0": - version: 3.0.0 - resolution: "aes-js@npm:3.0.0" - checksum: 10c0/87dd5b2363534b867db7cef8bc85a90c355460783744877b2db7c8be09740aac5750714f9e00902822f692662bda74cdf40e03fbb5214ffec75c2666666288b8 - languageName: node - linkType: hard - -"agent-base@npm:6": - version: 6.0.2 - resolution: "agent-base@npm:6.0.2" - dependencies: - debug: "npm:4" - checksum: 10c0/dc4f757e40b5f3e3d674bc9beb4f1048f4ee83af189bae39be99f57bf1f48dde166a8b0a5342a84b5944ee8e6ed1e5a9d801858f4ad44764e84957122fe46261 - languageName: node - linkType: hard - -"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": - version: 7.1.4 - resolution: "agent-base@npm:7.1.4" - checksum: 10c0/c2c9ab7599692d594b6a161559ada307b7a624fa4c7b03e3afdb5a5e31cd0e53269115b620fcab024c5ac6a6f37fa5eb2e004f076ad30f5f7e6b8b671f7b35fe - languageName: node - linkType: hard - -"aggregate-error@npm:^3.0.0": - version: 3.1.0 - resolution: "aggregate-error@npm:3.1.0" - dependencies: - clean-stack: "npm:^2.0.0" - indent-string: "npm:^4.0.0" - checksum: 10c0/a42f67faa79e3e6687a4923050e7c9807db3848a037076f791d10e092677d65c1d2d863b7848560699f40fc0502c19f40963fb1cd1fb3d338a7423df8e45e039 - languageName: node - linkType: hard - -"ajv@npm:^6.12.3, ajv@npm:^6.12.4": - version: 6.12.6 - resolution: "ajv@npm:6.12.6" - dependencies: - fast-deep-equal: "npm:^3.1.1" - fast-json-stable-stringify: "npm:^2.0.0" - json-schema-traverse: "npm:^0.4.1" - uri-js: "npm:^4.2.2" - checksum: 10c0/41e23642cbe545889245b9d2a45854ebba51cda6c778ebced9649420d9205f2efb39cb43dbc41e358409223b1ea43303ae4839db682c848b891e4811da1a5a71 - languageName: node - linkType: hard - -"ajv@npm:^8.0.1": - version: 8.17.1 - resolution: "ajv@npm:8.17.1" - dependencies: - fast-deep-equal: "npm:^3.1.3" - fast-uri: "npm:^3.0.1" - json-schema-traverse: "npm:^1.0.0" - require-from-string: "npm:^2.0.2" - checksum: 10c0/ec3ba10a573c6b60f94639ffc53526275917a2df6810e4ab5a6b959d87459f9ef3f00d5e7865b82677cb7d21590355b34da14d1d0b9c32d75f95a187e76fff35 - languageName: node - linkType: hard - -"amazon-cognito-identity-js@npm:^6.0.1": - version: 6.3.16 - resolution: "amazon-cognito-identity-js@npm:6.3.16" - dependencies: - "@aws-crypto/sha256-js": "npm:1.2.2" - buffer: "npm:4.9.2" - fast-base64-decode: "npm:^1.0.0" - isomorphic-unfetch: "npm:^3.0.0" - js-cookie: "npm:^2.2.1" - checksum: 10c0/59dae0d7c2659532a5977294bbe849b3181e14d7e0741c69af9f9661a1c6ffe75b699a874c4ba1fd9c3606c357e8e725a3160624f44439d9d44ddae4e1ce8e56 - languageName: node - linkType: hard - -"ansi-align@npm:^3.0.0": - version: 3.0.1 - resolution: "ansi-align@npm:3.0.1" - dependencies: - string-width: "npm:^4.1.0" - checksum: 10c0/ad8b755a253a1bc8234eb341e0cec68a857ab18bf97ba2bda529e86f6e30460416523e0ec58c32e5c21f0ca470d779503244892873a5895dbd0c39c788e82467 - languageName: node - linkType: hard - -"ansi-colors@npm:3.2.3": - version: 3.2.3 - resolution: "ansi-colors@npm:3.2.3" - checksum: 10c0/bd742873b50f9c0c1e849194bbcc2d0e7cf9100ab953446612bb5b93b3bdbfc170da27f91af1c03442f4cb45040b0a17a866a0270021f90f958888b34d95cb73 - languageName: node - linkType: hard - -"ansi-colors@npm:^4.1.1, ansi-colors@npm:^4.1.3": - version: 4.1.3 - resolution: "ansi-colors@npm:4.1.3" - checksum: 10c0/ec87a2f59902f74e61eada7f6e6fe20094a628dab765cfdbd03c3477599368768cffccdb5d3bb19a1b6c99126783a143b1fee31aab729b31ffe5836c7e5e28b9 - languageName: node - linkType: hard - -"ansi-escapes@npm:^4.3.0": - version: 4.3.2 - resolution: "ansi-escapes@npm:4.3.2" - dependencies: - type-fest: "npm:^0.21.3" - checksum: 10c0/da917be01871525a3dfcf925ae2977bc59e8c513d4423368645634bf5d4ceba5401574eb705c1e92b79f7292af5a656f78c5725a4b0e1cec97c4b413705c1d50 - languageName: node - linkType: hard - -"ansi-regex@npm:^3.0.0": - version: 3.0.1 - resolution: "ansi-regex@npm:3.0.1" - checksum: 10c0/d108a7498b8568caf4a46eea4f1784ab4e0dfb2e3f3938c697dee21443d622d765c958f2b7e2b9f6b9e55e2e2af0584eaa9915d51782b89a841c28e744e7a167 - languageName: node - linkType: hard - -"ansi-regex@npm:^4.1.0": - version: 4.1.1 - resolution: "ansi-regex@npm:4.1.1" - checksum: 10c0/d36d34234d077e8770169d980fed7b2f3724bfa2a01da150ccd75ef9707c80e883d27cdf7a0eac2f145ac1d10a785a8a855cffd05b85f778629a0db62e7033da - languageName: node - linkType: hard - -"ansi-regex@npm:^5.0.1": - version: 5.0.1 - resolution: "ansi-regex@npm:5.0.1" - checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737 - languageName: node - linkType: hard - -"ansi-regex@npm:^6.0.1": - version: 6.2.2 - resolution: "ansi-regex@npm:6.2.2" - checksum: 10c0/05d4acb1d2f59ab2cf4b794339c7b168890d44dda4bf0ce01152a8da0213aca207802f930442ce8cd22d7a92f44907664aac6508904e75e038fa944d2601b30f - languageName: node - linkType: hard - -"ansi-styles@npm:^3.2.0, ansi-styles@npm:^3.2.1": - version: 3.2.1 - resolution: "ansi-styles@npm:3.2.1" - dependencies: - color-convert: "npm:^1.9.0" - checksum: 10c0/ece5a8ef069fcc5298f67e3f4771a663129abd174ea2dfa87923a2be2abf6cd367ef72ac87942da00ce85bd1d651d4cd8595aebdb1b385889b89b205860e977b - languageName: node - linkType: hard - -"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": - version: 4.3.0 - resolution: "ansi-styles@npm:4.3.0" - dependencies: - color-convert: "npm:^2.0.1" - checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041 - languageName: node - linkType: hard - -"ansi-styles@npm:^6.1.0": - version: 6.2.3 - resolution: "ansi-styles@npm:6.2.3" - checksum: 10c0/23b8a4ce14e18fb854693b95351e286b771d23d8844057ed2e7d083cd3e708376c3323707ec6a24365f7d7eda3ca00327fe04092e29e551499ec4c8b7bfac868 - languageName: node - linkType: hard - -"antlr4ts@npm:^0.5.0-alpha.4": - version: 0.5.0-alpha.4 - resolution: "antlr4ts@npm:0.5.0-alpha.4" - checksum: 10c0/26a43d6769178fdf1b79ed2001f123fd49843e335f9a3687b63c090ab2024632fbac60a73b3f8289044c206edeb5d19c36b02603b018d8eaf3be3ce30136102f - languageName: node - linkType: hard - -"anymatch@npm:~3.1.1, anymatch@npm:~3.1.2": - version: 3.1.3 - resolution: "anymatch@npm:3.1.3" - dependencies: - normalize-path: "npm:^3.0.0" - picomatch: "npm:^2.0.4" - checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac - languageName: node - linkType: hard - -"arg@npm:^4.1.0": - version: 4.1.3 - resolution: "arg@npm:4.1.3" - checksum: 10c0/070ff801a9d236a6caa647507bdcc7034530604844d64408149a26b9e87c2f97650055c0f049abd1efc024b334635c01f29e0b632b371ac3f26130f4cf65997a - languageName: node - linkType: hard - -"argparse@npm:^1.0.7": - version: 1.0.10 - resolution: "argparse@npm:1.0.10" - dependencies: - sprintf-js: "npm:~1.0.2" - checksum: 10c0/b2972c5c23c63df66bca144dbc65d180efa74f25f8fd9b7d9a0a6c88ae839db32df3d54770dcb6460cf840d232b60695d1a6b1053f599d84e73f7437087712de - languageName: node - linkType: hard - -"argparse@npm:^2.0.1": - version: 2.0.1 - resolution: "argparse@npm:2.0.1" - checksum: 10c0/c5640c2d89045371c7cedd6a70212a04e360fd34d6edeae32f6952c63949e3525ea77dbec0289d8213a99bbaeab5abfa860b5c12cf88a2e6cf8106e90dd27a7e - languageName: node - linkType: hard - -"array-back@npm:^3.0.1, array-back@npm:^3.1.0": - version: 3.1.0 - resolution: "array-back@npm:3.1.0" - checksum: 10c0/bb1fe86aa8b39c21e73c68c7abf8b05ed939b8951a3b17527217f6a2a84e00e4cfa4fdec823081689c5e216709bf1f214a4f5feeee6726eaff83897fa1a7b8ee - languageName: node - linkType: hard - -"array-back@npm:^4.0.1, array-back@npm:^4.0.2": - version: 4.0.2 - resolution: "array-back@npm:4.0.2" - checksum: 10c0/8beb5b4c9535eab2905d4ff7d16c4d90ee5ca080d2b26b1e637434c0fcfadb3585283524aada753bd5d06bb88a5dac9e175c3a236183741d3d795a69b6678c96 - languageName: node - linkType: hard - -"array-buffer-byte-length@npm:^1.0.1, array-buffer-byte-length@npm:^1.0.2": - version: 1.0.2 - resolution: "array-buffer-byte-length@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - is-array-buffer: "npm:^3.0.5" - checksum: 10c0/74e1d2d996941c7a1badda9cabb7caab8c449db9086407cad8a1b71d2604cc8abf105db8ca4e02c04579ec58b7be40279ddb09aea4784832984485499f48432d - languageName: node - linkType: hard - -"array-flatten@npm:1.1.1": - version: 1.1.1 - resolution: "array-flatten@npm:1.1.1" - checksum: 10c0/806966c8abb2f858b08f5324d9d18d7737480610f3bd5d3498aaae6eb5efdc501a884ba019c9b4a8f02ff67002058749d05548fd42fa8643f02c9c7f22198b91 - languageName: node - linkType: hard - -"array-uniq@npm:1.0.3": - version: 1.0.3 - resolution: "array-uniq@npm:1.0.3" - checksum: 10c0/3acbaf9e6d5faeb1010e2db04ab171b8d265889e46c61762e502979bdc5e55656013726e9a61507de3c82d329a0dc1e8072630a3454b4f2b881cb19ba7fd8aa6 - languageName: node - linkType: hard - -"array.prototype.reduce@npm:^1.0.8": - version: 1.0.8 - resolution: "array.prototype.reduce@npm:1.0.8" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.9" - es-array-method-boxes-properly: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - is-string: "npm:^1.1.1" - checksum: 10c0/0a4635f468e9161f51c4a87f80057b8b3c27b0ccc3e40ad7ea77cd1e147f1119f46977b0452f3fa325f543126200f2caf8c1390bd5303edf90d9c1dcd7d5a8a0 - languageName: node - linkType: hard - -"arraybuffer.prototype.slice@npm:^1.0.4": - version: 1.0.4 - resolution: "arraybuffer.prototype.slice@npm:1.0.4" - dependencies: - array-buffer-byte-length: "npm:^1.0.1" - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.5" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - is-array-buffer: "npm:^3.0.4" - checksum: 10c0/2f2459caa06ae0f7f615003f9104b01f6435cc803e11bd2a655107d52a1781dc040532dc44d93026b694cc18793993246237423e13a5337e86b43ed604932c06 - languageName: node - linkType: hard - -"asap@npm:~2.0.6": - version: 2.0.6 - resolution: "asap@npm:2.0.6" - checksum: 10c0/c6d5e39fe1f15e4b87677460bd66b66050cd14c772269cee6688824c1410a08ab20254bb6784f9afb75af9144a9f9a7692d49547f4d19d715aeb7c0318f3136d - languageName: node - linkType: hard - -"asn1@npm:~0.2.3": - version: 0.2.6 - resolution: "asn1@npm:0.2.6" - dependencies: - safer-buffer: "npm:~2.1.0" - checksum: 10c0/00c8a06c37e548762306bcb1488388d2f76c74c36f70c803f0c081a01d3bdf26090fc088cd812afc5e56a6d49e33765d451a5f8a68ab9c2b087eba65d2e980e0 - languageName: node - linkType: hard - -"assert-plus@npm:1.0.0, assert-plus@npm:^1.0.0": - version: 1.0.0 - resolution: "assert-plus@npm:1.0.0" - checksum: 10c0/b194b9d50c3a8f872ee85ab110784911e696a4d49f7ee6fc5fb63216dedbefd2c55999c70cb2eaeb4cf4a0e0338b44e9ace3627117b5bf0d42460e9132f21b91 - languageName: node - linkType: hard - -"assertion-error@npm:^1.1.0": - version: 1.1.0 - resolution: "assertion-error@npm:1.1.0" - checksum: 10c0/25456b2aa333250f01143968e02e4884a34588a8538fbbf65c91a637f1dbfb8069249133cd2f4e530f10f624d206a664e7df30207830b659e9f5298b00a4099b - languageName: node - linkType: hard - -"astral-regex@npm:^2.0.0": - version: 2.0.0 - resolution: "astral-regex@npm:2.0.0" - checksum: 10c0/f63d439cc383db1b9c5c6080d1e240bd14dae745f15d11ec5da863e182bbeca70df6c8191cffef5deba0b566ef98834610a68be79ac6379c95eeb26e1b310e25 - languageName: node - linkType: hard - -"async-eventemitter@npm:^0.2.4": - version: 0.2.4 - resolution: "async-eventemitter@npm:0.2.4" - dependencies: - async: "npm:^2.4.0" - checksum: 10c0/ce761d1837d454efb456bd2bd5b0db0e100f600d66d9a07a9f7772e0cfd5ad3029bb07385310bd1c7d65603735b755ba457a2f8ed47fb1314a6fe275dd69a322 - languageName: node - linkType: hard - -"async-function@npm:^1.0.0": - version: 1.0.0 - resolution: "async-function@npm:1.0.0" - checksum: 10c0/669a32c2cb7e45091330c680e92eaeb791bc1d4132d827591e499cd1f776ff5a873e77e5f92d0ce795a8d60f10761dec9ddfe7225a5de680f5d357f67b1aac73 - languageName: node - linkType: hard - -"async-retry@npm:^1.3.3": - version: 1.3.3 - resolution: "async-retry@npm:1.3.3" - dependencies: - retry: "npm:0.13.1" - checksum: 10c0/cabced4fb46f8737b95cc88dc9c0ff42656c62dc83ce0650864e891b6c155a063af08d62c446269b51256f6fbcb69a6563b80e76d0ea4a5117b0c0377b6b19d8 - languageName: node - linkType: hard - -"async@npm:^2.4.0": - version: 2.6.4 - resolution: "async@npm:2.6.4" - dependencies: - lodash: "npm:^4.17.14" - checksum: 10c0/0ebb3273ef96513389520adc88e0d3c45e523d03653cc9b66f5c46f4239444294899bfd13d2b569e7dbfde7da2235c35cf5fd3ece9524f935d41bbe4efccdad0 - languageName: node - linkType: hard - -"asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 10c0/d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d - languageName: node - linkType: hard - -"available-typed-arrays@npm:^1.0.7": - version: 1.0.7 - resolution: "available-typed-arrays@npm:1.0.7" - dependencies: - possible-typed-array-names: "npm:^1.0.0" - checksum: 10c0/d07226ef4f87daa01bd0fe80f8f310982e345f372926da2e5296aecc25c41cab440916bbaa4c5e1034b453af3392f67df5961124e4b586df1e99793a1374bdb2 - languageName: node - linkType: hard - -"aws-sign2@npm:~0.7.0": - version: 0.7.0 - resolution: "aws-sign2@npm:0.7.0" - checksum: 10c0/021d2cc5547d4d9ef1633e0332e746a6f447997758b8b68d6fb33f290986872d2bff5f0c37d5832f41a7229361f093cd81c40898d96ed153493c0fb5cd8575d2 - languageName: node - linkType: hard - -"aws4@npm:^1.8.0": - version: 1.13.2 - resolution: "aws4@npm:1.13.2" - checksum: 10c0/c993d0d186d699f685d73113733695d648ec7d4b301aba2e2a559d0cd9c1c902308cc52f4095e1396b23fddbc35113644e7f0a6a32753636306e41e3ed6f1e79 - languageName: node - linkType: hard - -"axios@npm:1.6.7": - version: 1.6.7 - resolution: "axios@npm:1.6.7" - dependencies: - follow-redirects: "npm:^1.15.4" - form-data: "npm:^4.0.0" - proxy-from-env: "npm:^1.1.0" - checksum: 10c0/131bf8e62eee48ca4bd84e6101f211961bf6a21a33b95e5dfb3983d5a2fe50d9fffde0b57668d7ce6f65063d3dc10f2212cbcb554f75cfca99da1c73b210358d - languageName: node - linkType: hard - -"axios@npm:^0.21.2": - version: 0.21.4 - resolution: "axios@npm:0.21.4" - dependencies: - follow-redirects: "npm:^1.14.0" - checksum: 10c0/fbcff55ec68f71f02d3773d467db2fcecdf04e749826c82c2427a232f9eba63242150a05f15af9ef15818352b814257541155de0281f8fb2b7e8a5b79f7f2142 - languageName: node - linkType: hard - -"axios@npm:^1.4.0, axios@npm:^1.5.1": - version: 1.13.2 - resolution: "axios@npm:1.13.2" - dependencies: - follow-redirects: "npm:^1.15.6" - form-data: "npm:^4.0.4" - proxy-from-env: "npm:^1.1.0" - checksum: 10c0/e8a42e37e5568ae9c7a28c348db0e8cf3e43d06fcbef73f0048669edfe4f71219664da7b6cc991b0c0f01c28a48f037c515263cb79be1f1ae8ff034cd813867b - languageName: node - linkType: hard - -"balanced-match@npm:^1.0.0": - version: 1.0.2 - resolution: "balanced-match@npm:1.0.2" - checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee - languageName: node - linkType: hard - -"base-x@npm:^3.0.2": - version: 3.0.11 - resolution: "base-x@npm:3.0.11" - dependencies: - safe-buffer: "npm:^5.0.1" - checksum: 10c0/4c5b8cd9cef285973b0460934be4fc890eedfd22a8aca527fac3527f041c5d1c912f7b9a6816f19e43e69dc7c29a5deabfa326bd3d6a57ee46af0ad46e3991d5 - languageName: node - linkType: hard - -"base64-js@npm:^1.0.2, base64-js@npm:^1.3.1": - version: 1.5.1 - resolution: "base64-js@npm:1.5.1" - checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf - languageName: node - linkType: hard - -"bcrypt-pbkdf@npm:^1.0.0": - version: 1.0.2 - resolution: "bcrypt-pbkdf@npm:1.0.2" - dependencies: - tweetnacl: "npm:^0.14.3" - checksum: 10c0/ddfe85230b32df25aeebfdccfbc61d3bc493ace49c884c9c68575de1f5dcf733a5d7de9def3b0f318b786616b8d85bad50a28b1da1750c43e0012c93badcc148 - languageName: node - linkType: hard - -"bech32@npm:1.1.4": - version: 1.1.4 - resolution: "bech32@npm:1.1.4" - checksum: 10c0/5f62ca47b8df99ace9c0e0d8deb36a919d91bf40066700aaa9920a45f86bb10eb56d537d559416fd8703aa0fb60dddb642e58f049701e7291df678b2033e5ee5 - languageName: node - linkType: hard - -"bignumber.js@npm:^9.0.0, bignumber.js@npm:^9.0.1, bignumber.js@npm:^9.1.2": - version: 9.3.1 - resolution: "bignumber.js@npm:9.3.1" - checksum: 10c0/61342ba5fe1c10887f0ecf5be02ff6709271481aff48631f86b4d37d55a99b87ce441cfd54df3d16d10ee07ceab7e272fc0be430c657ffafbbbf7b7d631efb75 - languageName: node - linkType: hard - -"bignumber@npm:^1.1.0": - version: 1.1.0 - resolution: "bignumber@npm:1.1.0" - checksum: 10c0/20f29add7f3f75f16eefba86983f4cc8d074785e98fc42f13f08e688636628b5e0595cf6caae1dbea943da6136f400167810cb4abdc60eca46d73912b1b91e96 - languageName: node - linkType: hard - -"binary-extensions@npm:^2.0.0": - version: 2.3.0 - resolution: "binary-extensions@npm:2.3.0" - checksum: 10c0/75a59cafc10fb12a11d510e77110c6c7ae3f4ca22463d52487709ca7f18f69d886aa387557cc9864fbdb10153d0bdb4caacabf11541f55e89ed6e18d12ece2b5 - languageName: node - linkType: hard - -"bip39@npm:3.0.4": - version: 3.0.4 - resolution: "bip39@npm:3.0.4" - dependencies: - "@types/node": "npm:11.11.6" - create-hash: "npm:^1.1.0" - pbkdf2: "npm:^3.0.9" - randombytes: "npm:^2.0.1" - checksum: 10c0/f95f40613474b64c82e2db046a6245e9dd6011e09d12b90c1cd0455e92830d7f0b92b9d7e120f583974047d2da7b5eb18afa6645647d841c11ff5cca5aaeb67d - languageName: node - linkType: hard - -"blakejs@npm:^1.1.0": - version: 1.2.1 - resolution: "blakejs@npm:1.2.1" - checksum: 10c0/c284557ce55b9c70203f59d381f1b85372ef08ee616a90162174d1291a45d3e5e809fdf9edab6e998740012538515152471dc4f1f9dbfa974ba2b9c1f7b9aad7 - languageName: node - linkType: hard - -"bn.js@npm:4.11.6": - version: 4.11.6 - resolution: "bn.js@npm:4.11.6" - checksum: 10c0/e6ee7d3f597f60722cc3361071e23ccf71d3387e166de02381f180f22d2fa79f5dbbdf9e4909e81faaf5da01c16ec6857ddff02678339ce085e2058fd0e405db - languageName: node - linkType: hard - -"bn.js@npm:^4.0.0, bn.js@npm:^4.11.0, bn.js@npm:^4.11.1, bn.js@npm:^4.11.8, bn.js@npm:^4.11.9": - version: 4.12.2 - resolution: "bn.js@npm:4.12.2" - checksum: 10c0/09a249faa416a9a1ce68b5f5ec8bbca87fe54e5dd4ef8b1cc8a4969147b80035592bddcb1e9cc814c3ba79e573503d5c5178664b722b509fb36d93620dba9b57 - languageName: node - linkType: hard - -"bn.js@npm:^5.1.2, bn.js@npm:^5.2.0, bn.js@npm:^5.2.1": - version: 5.2.2 - resolution: "bn.js@npm:5.2.2" - checksum: 10c0/cb97827d476aab1a0194df33cd84624952480d92da46e6b4a19c32964aa01553a4a613502396712704da2ec8f831cf98d02e74ca03398404bd78a037ba93f2ab - languageName: node - linkType: hard - -"body-parser@npm:~1.20.3": - version: 1.20.4 - resolution: "body-parser@npm:1.20.4" - dependencies: - bytes: "npm:~3.1.2" - content-type: "npm:~1.0.5" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:~1.2.0" - http-errors: "npm:~2.0.1" - iconv-lite: "npm:~0.4.24" - on-finished: "npm:~2.4.1" - qs: "npm:~6.14.0" - raw-body: "npm:~2.5.3" - type-is: "npm:~1.6.18" - unpipe: "npm:~1.0.0" - checksum: 10c0/569c1e896297d1fcd8f34026c8d0ab70b90d45343c15c5d8dff5de2bad08125fc1e2f8c2f3f4c1ac6c0caaad115218202594d37dcb8d89d9b5dcae1c2b736aa9 - languageName: node - linkType: hard - -"boxen@npm:^5.1.2": - version: 5.1.2 - resolution: "boxen@npm:5.1.2" - dependencies: - ansi-align: "npm:^3.0.0" - camelcase: "npm:^6.2.0" - chalk: "npm:^4.1.0" - cli-boxes: "npm:^2.2.1" - string-width: "npm:^4.2.2" - type-fest: "npm:^0.20.2" - widest-line: "npm:^3.1.0" - wrap-ansi: "npm:^7.0.0" - checksum: 10c0/71f31c2eb3dcacd5fce524ae509e0cc90421752e0bfbd0281fd3352871d106c462a0f810c85f2fdb02f3a9fab2d7a84e9718b4999384d651b76104ebe5d2c024 - languageName: node - linkType: hard - -"brace-expansion@npm:^1.1.7": - version: 1.1.12 - resolution: "brace-expansion@npm:1.1.12" - dependencies: - balanced-match: "npm:^1.0.0" - concat-map: "npm:0.0.1" - checksum: 10c0/975fecac2bb7758c062c20d0b3b6288c7cc895219ee25f0a64a9de662dbac981ff0b6e89909c3897c1f84fa353113a721923afdec5f8b2350255b097f12b1f73 - languageName: node - linkType: hard - -"brace-expansion@npm:^2.0.1": - version: 2.0.2 - resolution: "brace-expansion@npm:2.0.2" - dependencies: - balanced-match: "npm:^1.0.0" - checksum: 10c0/6d117a4c793488af86b83172deb6af143e94c17bc53b0b3cec259733923b4ca84679d506ac261f4ba3c7ed37c46018e2ff442f9ce453af8643ecd64f4a54e6cf - languageName: node - linkType: hard - -"braces@npm:~3.0.2": - version: 3.0.3 - resolution: "braces@npm:3.0.3" - dependencies: - fill-range: "npm:^7.1.1" - checksum: 10c0/7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04 - languageName: node - linkType: hard - -"brorand@npm:^1.0.1, brorand@npm:^1.1.0": - version: 1.1.0 - resolution: "brorand@npm:1.1.0" - checksum: 10c0/6f366d7c4990f82c366e3878492ba9a372a73163c09871e80d82fb4ae0d23f9f8924cb8a662330308206e6b3b76ba1d528b4601c9ef73c2166b440b2ea3b7571 - languageName: node - linkType: hard - -"browser-stdout@npm:1.3.1, browser-stdout@npm:^1.3.1": - version: 1.3.1 - resolution: "browser-stdout@npm:1.3.1" - checksum: 10c0/c40e482fd82be872b6ea7b9f7591beafbf6f5ba522fe3dade98ba1573a1c29a11101564993e4eb44e5488be8f44510af072df9a9637c739217eb155ceb639205 - languageName: node - linkType: hard - -"browserify-aes@npm:^1.2.0": - version: 1.2.0 - resolution: "browserify-aes@npm:1.2.0" - dependencies: - buffer-xor: "npm:^1.0.3" - cipher-base: "npm:^1.0.0" - create-hash: "npm:^1.1.0" - evp_bytestokey: "npm:^1.0.3" - inherits: "npm:^2.0.1" - safe-buffer: "npm:^5.0.1" - checksum: 10c0/967f2ae60d610b7b252a4cbb55a7a3331c78293c94b4dd9c264d384ca93354c089b3af9c0dd023534efdc74ffbc82510f7ad4399cf82bc37bc07052eea485f18 - languageName: node - linkType: hard - -"bs58@npm:^4.0.0": - version: 4.0.1 - resolution: "bs58@npm:4.0.1" - dependencies: - base-x: "npm:^3.0.2" - checksum: 10c0/613a1b1441e754279a0e3f44d1faeb8c8e838feef81e550efe174ff021dd2e08a4c9ae5805b52dfdde79f97b5c0918c78dd24a0eb726c4a94365f0984a0ffc65 - languageName: node - linkType: hard - -"bs58check@npm:^2.1.2": - version: 2.1.2 - resolution: "bs58check@npm:2.1.2" - dependencies: - bs58: "npm:^4.0.0" - create-hash: "npm:^1.1.0" - safe-buffer: "npm:^5.1.2" - checksum: 10c0/5d33f319f0d7abbe1db786f13f4256c62a076bc8d184965444cb62ca4206b2c92bee58c93bce57150ffbbbe00c48838ac02e6f384e0da8215cac219c0556baa9 - languageName: node - linkType: hard - -"buffer-from@npm:^1.0.0": - version: 1.1.2 - resolution: "buffer-from@npm:1.1.2" - checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34 - languageName: node - linkType: hard - -"buffer-reverse@npm:^1.0.1": - version: 1.0.1 - resolution: "buffer-reverse@npm:1.0.1" - checksum: 10c0/72f05072a72dc1ec0574693b8358e6d3882abe8d0a7daa875ed145b360d68ea3b95eb1b5fd435bf1f38a80d85021ecdf670bbb57694926cc1a02ea56cbbf4468 - languageName: node - linkType: hard - -"buffer-xor@npm:^1.0.3": - version: 1.0.3 - resolution: "buffer-xor@npm:1.0.3" - checksum: 10c0/fd269d0e0bf71ecac3146187cfc79edc9dbb054e2ee69b4d97dfb857c6d997c33de391696d04bdd669272751fa48e7872a22f3a6c7b07d6c0bc31dbe02a4075c - languageName: node - linkType: hard - -"buffer-xor@npm:^2.0.1": - version: 2.0.2 - resolution: "buffer-xor@npm:2.0.2" - dependencies: - safe-buffer: "npm:^5.1.1" - checksum: 10c0/84c39f316c3f7d194b6313fdd047ddae02619dcb7eccfc9675731ac6fe9c01b42d94f8b8d3f04271803618c7db2eebdca82c1de5c1fc37210c1c112998b09671 - languageName: node - linkType: hard - -"buffer@npm:4.9.2": - version: 4.9.2 - resolution: "buffer@npm:4.9.2" - dependencies: - base64-js: "npm:^1.0.2" - ieee754: "npm:^1.1.4" - isarray: "npm:^1.0.0" - checksum: 10c0/dc443d7e7caab23816b58aacdde710b72f525ad6eecd7d738fcaa29f6d6c12e8d9c13fed7219fd502be51ecf0615f5c077d4bdc6f9308dde2e53f8e5393c5b21 - languageName: node - linkType: hard - -"buffer@npm:^5.5.0, buffer@npm:^5.6.0": - version: 5.7.1 - resolution: "buffer@npm:5.7.1" - dependencies: - base64-js: "npm:^1.3.1" - ieee754: "npm:^1.1.13" - checksum: 10c0/27cac81cff434ed2876058d72e7c4789d11ff1120ef32c9de48f59eab58179b66710c488987d295ae89a228f835fc66d088652dffeb8e3ba8659f80eb091d55e - languageName: node - linkType: hard - -"buffer@npm:^6.0.3": - version: 6.0.3 - resolution: "buffer@npm:6.0.3" - dependencies: - base64-js: "npm:^1.3.1" - ieee754: "npm:^1.2.1" - checksum: 10c0/2a905fbbcde73cc5d8bd18d1caa23715d5f83a5935867c2329f0ac06104204ba7947be098fe1317fbd8830e26090ff8e764f08cd14fefc977bb248c3487bcbd0 - languageName: node - linkType: hard - -"bufferutil@npm:4.0.5": - version: 4.0.5 - resolution: "bufferutil@npm:4.0.5" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10c0/307d1131dbfd01b1451585931db05bc83a5a94bb3f720f9ee2d8e1ce37d39b23251bce350b06152dba003ad4fbddc804fc94b3d5ce1f70e7871c6898ce3b4f7e - languageName: node - linkType: hard - -"bytes@npm:~3.1.2": - version: 3.1.2 - resolution: "bytes@npm:3.1.2" - checksum: 10c0/76d1c43cbd602794ad8ad2ae94095cddeb1de78c5dddaa7005c51af10b0176c69971a6d88e805a90c2b6550d76636e43c40d8427a808b8645ede885de4a0358e - languageName: node - linkType: hard - -"cacache@npm:^20.0.1": - version: 20.0.3 - resolution: "cacache@npm:20.0.3" - dependencies: - "@npmcli/fs": "npm:^5.0.0" - fs-minipass: "npm:^3.0.0" - glob: "npm:^13.0.0" - lru-cache: "npm:^11.1.0" - minipass: "npm:^7.0.3" - minipass-collect: "npm:^2.0.1" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - p-map: "npm:^7.0.2" - ssri: "npm:^13.0.0" - unique-filename: "npm:^5.0.0" - checksum: 10c0/c7da1ca694d20e8f8aedabd21dc11518f809a7d2b59aa76a1fc655db5a9e62379e465c157ddd2afe34b19230808882288effa6911b2de26a088a6d5645123462 - languageName: node - linkType: hard - -"call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": - version: 1.0.2 - resolution: "call-bind-apply-helpers@npm:1.0.2" - dependencies: - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938 - languageName: node - linkType: hard - -"call-bind@npm:^1.0.7, call-bind@npm:^1.0.8": - version: 1.0.8 - resolution: "call-bind@npm:1.0.8" - dependencies: - call-bind-apply-helpers: "npm:^1.0.0" - es-define-property: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.4" - set-function-length: "npm:^1.2.2" - checksum: 10c0/a13819be0681d915144467741b69875ae5f4eba8961eb0bf322aab63ec87f8250eb6d6b0dcbb2e1349876412a56129ca338592b3829ef4343527f5f18a0752d4 - languageName: node - linkType: hard - -"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3, call-bound@npm:^1.0.4": - version: 1.0.4 - resolution: "call-bound@npm:1.0.4" - dependencies: - call-bind-apply-helpers: "npm:^1.0.2" - get-intrinsic: "npm:^1.3.0" - checksum: 10c0/f4796a6a0941e71c766aea672f63b72bc61234c4f4964dc6d7606e3664c307e7d77845328a8f3359ce39ddb377fed67318f9ee203dea1d47e46165dcf2917644 - languageName: node - linkType: hard - -"callsites@npm:^3.0.0": - version: 3.1.0 - resolution: "callsites@npm:3.1.0" - checksum: 10c0/fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301 - languageName: node - linkType: hard - -"camelcase@npm:^5.0.0": - version: 5.3.1 - resolution: "camelcase@npm:5.3.1" - checksum: 10c0/92ff9b443bfe8abb15f2b1513ca182d16126359ad4f955ebc83dc4ddcc4ef3fdd2c078bc223f2673dc223488e75c99b16cc4d056624374b799e6a1555cf61b23 - languageName: node - linkType: hard - -"camelcase@npm:^6.0.0, camelcase@npm:^6.2.0": - version: 6.3.0 - resolution: "camelcase@npm:6.3.0" - checksum: 10c0/0d701658219bd3116d12da3eab31acddb3f9440790c0792e0d398f0a520a6a4058018e546862b6fba89d7ae990efaeb97da71e1913e9ebf5a8b5621a3d55c710 - languageName: node - linkType: hard - -"caseless@npm:^0.12.0, caseless@npm:~0.12.0": - version: 0.12.0 - resolution: "caseless@npm:0.12.0" - checksum: 10c0/ccf64bcb6c0232cdc5b7bd91ddd06e23a4b541f138336d4725233ac538041fb2f29c2e86c3c4a7a61ef990b665348db23a047060b9414c3a6603e9fa61ad4626 - languageName: node - linkType: hard - -"catering@npm:^2.0.0, catering@npm:^2.1.0": - version: 2.1.1 - resolution: "catering@npm:2.1.1" - checksum: 10c0/a69f946f82cba85509abcb399759ed4c39d2cc9e33ba35674f242130c1b3c56673da3c3e85804db6898dfd966c395aa128ba484b31c7b906cc2faca6a581e133 - languageName: node - linkType: hard - -"cbor@npm:^10.0.0": - version: 10.0.11 - resolution: "cbor@npm:10.0.11" - dependencies: - nofilter: "npm:^3.0.2" - checksum: 10c0/0cb6fb3d5e98c7af4443200ff107049f6132b5649b8a0e586940ca811e5ab5622bf3d0a36f154f43107acfd9685cc462e6eac77876ef4c060bcec96c71b90d8a - languageName: node - linkType: hard - -"cbor@npm:^8.1.0": - version: 8.1.0 - resolution: "cbor@npm:8.1.0" - dependencies: - nofilter: "npm:^3.1.0" - checksum: 10c0/a836e2e7ea0efb1b9c4e5a4be906c57113d730cc42293a34072e0164ed110bb8ac035dc7dca2e3ebb641bd4b37e00fdbbf09c951aa864b3d4888a6ed8c6243f7 - languageName: node - linkType: hard - -"chai@npm:^4.4.1": - version: 4.5.0 - resolution: "chai@npm:4.5.0" - dependencies: - assertion-error: "npm:^1.1.0" - check-error: "npm:^1.0.3" - deep-eql: "npm:^4.1.3" - get-func-name: "npm:^2.0.2" - loupe: "npm:^2.3.6" - pathval: "npm:^1.1.1" - type-detect: "npm:^4.1.0" - checksum: 10c0/b8cb596bd1aece1aec659e41a6e479290c7d9bee5b3ad63d2898ad230064e5b47889a3bc367b20100a0853b62e026e2dc514acf25a3c9385f936aa3614d4ab4d - languageName: node - linkType: hard - -"chalk@npm:^2.4.2": - version: 2.4.2 - resolution: "chalk@npm:2.4.2" - dependencies: - ansi-styles: "npm:^3.2.1" - escape-string-regexp: "npm:^1.0.5" - supports-color: "npm:^5.3.0" - checksum: 10c0/e6543f02ec877732e3a2d1c3c3323ddb4d39fbab687c23f526e25bd4c6a9bf3b83a696e8c769d078e04e5754921648f7821b2a2acfd16c550435fd630026e073 - languageName: node - linkType: hard - -"chalk@npm:^4.0.0, chalk@npm:^4.1.0": - version: 4.1.2 - resolution: "chalk@npm:4.1.2" - dependencies: - ansi-styles: "npm:^4.1.0" - supports-color: "npm:^7.1.0" - checksum: 10c0/4a3fef5cc34975c898ffe77141450f679721df9dde00f6c304353fa9c8b571929123b26a0e4617bde5018977eb655b31970c297b91b63ee83bb82aeb04666880 - languageName: node - linkType: hard - -"charenc@npm:>= 0.0.1": - version: 0.0.2 - resolution: "charenc@npm:0.0.2" - checksum: 10c0/a45ec39363a16799d0f9365c8dd0c78e711415113c6f14787a22462ef451f5013efae8a28f1c058f81fc01f2a6a16955f7a5fd0cd56247ce94a45349c89877d8 - languageName: node - linkType: hard - -"check-error@npm:^1.0.3": - version: 1.0.3 - resolution: "check-error@npm:1.0.3" - dependencies: - get-func-name: "npm:^2.0.2" - checksum: 10c0/94aa37a7315c0e8a83d0112b5bfb5a8624f7f0f81057c73e4707729cdd8077166c6aefb3d8e2b92c63ee130d4a2ff94bad46d547e12f3238cc1d78342a973841 - languageName: node - linkType: hard - -"chokidar@npm:3.3.0": - version: 3.3.0 - resolution: "chokidar@npm:3.3.0" - dependencies: - anymatch: "npm:~3.1.1" - braces: "npm:~3.0.2" - fsevents: "npm:~2.1.1" - glob-parent: "npm:~5.1.0" - is-binary-path: "npm:~2.1.0" - is-glob: "npm:~4.0.1" - normalize-path: "npm:~3.0.0" - readdirp: "npm:~3.2.0" - dependenciesMeta: - fsevents: - optional: true - checksum: 10c0/5db1f4353499f17dc4c3c397197fd003383c2d802df88ab52d41413c357754d7c894557c85e887bfa11bfac3c220677efae2bf4e5686d301571255d7c737077b - languageName: node - linkType: hard - -"chokidar@npm:^3.5.3": - version: 3.6.0 - resolution: "chokidar@npm:3.6.0" - dependencies: - anymatch: "npm:~3.1.2" - braces: "npm:~3.0.2" - fsevents: "npm:~2.3.2" - glob-parent: "npm:~5.1.2" - is-binary-path: "npm:~2.1.0" - is-glob: "npm:~4.0.1" - normalize-path: "npm:~3.0.0" - readdirp: "npm:~3.6.0" - dependenciesMeta: - fsevents: - optional: true - checksum: 10c0/8361dcd013f2ddbe260eacb1f3cb2f2c6f2b0ad118708a343a5ed8158941a39cb8fb1d272e0f389712e74ee90ce8ba864eece9e0e62b9705cb468a2f6d917462 - languageName: node - linkType: hard - -"chokidar@npm:^4.0.0": - version: 4.0.3 - resolution: "chokidar@npm:4.0.3" - dependencies: - readdirp: "npm:^4.0.1" - checksum: 10c0/a58b9df05bb452f7d105d9e7229ac82fa873741c0c40ddcc7bb82f8a909fbe3f7814c9ebe9bc9a2bef9b737c0ec6e2d699d179048ef06ad3ec46315df0ebe6ad - languageName: node - linkType: hard - -"chownr@npm:^3.0.0": - version: 3.0.0 - resolution: "chownr@npm:3.0.0" - checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10 - languageName: node - linkType: hard - -"ci-info@npm:^2.0.0": - version: 2.0.0 - resolution: "ci-info@npm:2.0.0" - checksum: 10c0/8c5fa3830a2bcee2b53c2e5018226f0141db9ec9f7b1e27a5c57db5512332cde8a0beb769bcbaf0d8775a78afbf2bb841928feca4ea6219638a5b088f9884b46 - languageName: node - linkType: hard - -"cipher-base@npm:^1.0.0, cipher-base@npm:^1.0.1, cipher-base@npm:^1.0.3": - version: 1.0.7 - resolution: "cipher-base@npm:1.0.7" - dependencies: - inherits: "npm:^2.0.4" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.2" - checksum: 10c0/53c5046a9d9b60c586479b8f13fde263c3f905e13f11e8e04c7a311ce399c91d9c3ec96642332e0de077d356e1014ee12bba96f74fbaad0de750f49122258836 - languageName: node - linkType: hard - -"clean-stack@npm:^2.0.0": - version: 2.2.0 - resolution: "clean-stack@npm:2.2.0" - checksum: 10c0/1f90262d5f6230a17e27d0c190b09d47ebe7efdd76a03b5a1127863f7b3c9aec4c3e6c8bb3a7bbf81d553d56a1fd35728f5a8ef4c63f867ac8d690109742a8c1 - languageName: node - linkType: hard - -"cli-boxes@npm:^2.2.1": - version: 2.2.1 - resolution: "cli-boxes@npm:2.2.1" - checksum: 10c0/6111352edbb2f62dbc7bfd58f2d534de507afed7f189f13fa894ce5a48badd94b2aa502fda28f1d7dd5f1eb456e7d4033d09a76660013ef50c7f66e7a034f050 - languageName: node - linkType: hard - -"cli-table3@npm:^0.5.0": - version: 0.5.1 - resolution: "cli-table3@npm:0.5.1" - dependencies: - colors: "npm:^1.1.2" - object-assign: "npm:^4.1.0" - string-width: "npm:^2.1.1" - dependenciesMeta: - colors: - optional: true - checksum: 10c0/659c40ead17539d0665aa9dea85a7650fc161939f9d8bd3842c6cf5da51dc867057d3066fe8c962dafa163da39ce2029357754aee2c8f9513ea7a0810511d1d6 - languageName: node - linkType: hard - -"cli-table3@npm:^0.6.0": - version: 0.6.5 - resolution: "cli-table3@npm:0.6.5" - dependencies: - "@colors/colors": "npm:1.5.0" - string-width: "npm:^4.2.0" - dependenciesMeta: - "@colors/colors": - optional: true - checksum: 10c0/d7cc9ed12212ae68241cc7a3133c52b844113b17856e11f4f81308acc3febcea7cc9fd298e70933e294dd642866b29fd5d113c2c098948701d0c35f09455de78 - languageName: node - linkType: hard - -"cliui@npm:^5.0.0": - version: 5.0.0 - resolution: "cliui@npm:5.0.0" - dependencies: - string-width: "npm:^3.1.0" - strip-ansi: "npm:^5.2.0" - wrap-ansi: "npm:^5.1.0" - checksum: 10c0/76142bf306965850a71efd10c9755bd7f447c7c20dd652e1c1ce27d987f862a3facb3cceb2909cef6f0cb363646ee7a1735e3dfdd49f29ed16d733d33e15e2f8 - languageName: node - linkType: hard - -"cliui@npm:^7.0.2": - version: 7.0.4 - resolution: "cliui@npm:7.0.4" - dependencies: - string-width: "npm:^4.2.0" - strip-ansi: "npm:^6.0.0" - wrap-ansi: "npm:^7.0.0" - checksum: 10c0/6035f5daf7383470cef82b3d3db00bec70afb3423538c50394386ffbbab135e26c3689c41791f911fa71b62d13d3863c712fdd70f0fbdffd938a1e6fd09aac00 - languageName: node - linkType: hard - -"color-convert@npm:^1.9.0": - version: 1.9.3 - resolution: "color-convert@npm:1.9.3" - dependencies: - color-name: "npm:1.1.3" - checksum: 10c0/5ad3c534949a8c68fca8fbc6f09068f435f0ad290ab8b2f76841b9e6af7e0bb57b98cb05b0e19fe33f5d91e5a8611ad457e5f69e0a484caad1f7487fd0e8253c - languageName: node - linkType: hard - -"color-convert@npm:^2.0.1": - version: 2.0.1 - resolution: "color-convert@npm:2.0.1" - dependencies: - color-name: "npm:~1.1.4" - checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7 - languageName: node - linkType: hard - -"color-name@npm:1.1.3": - version: 1.1.3 - resolution: "color-name@npm:1.1.3" - checksum: 10c0/566a3d42cca25b9b3cd5528cd7754b8e89c0eb646b7f214e8e2eaddb69994ac5f0557d9c175eb5d8f0ad73531140d9c47525085ee752a91a2ab15ab459caf6d6 - languageName: node - linkType: hard - -"color-name@npm:~1.1.4": - version: 1.1.4 - resolution: "color-name@npm:1.1.4" - checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 - languageName: node - linkType: hard - -"colors@npm:1.4.0, colors@npm:^1.1.2": - version: 1.4.0 - resolution: "colors@npm:1.4.0" - checksum: 10c0/9af357c019da3c5a098a301cf64e3799d27549d8f185d86f79af23069e4f4303110d115da98483519331f6fb71c8568d5688fa1c6523600044fd4a54e97c4efb - languageName: node - linkType: hard - -"combined-stream@npm:^1.0.6, combined-stream@npm:^1.0.8, combined-stream@npm:~1.0.6": - version: 1.0.8 - resolution: "combined-stream@npm:1.0.8" - dependencies: - delayed-stream: "npm:~1.0.0" - checksum: 10c0/0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5 - languageName: node - linkType: hard - -"command-exists@npm:^1.2.8": - version: 1.2.9 - resolution: "command-exists@npm:1.2.9" - checksum: 10c0/75040240062de46cd6cd43e6b3032a8b0494525c89d3962e280dde665103f8cc304a8b313a5aa541b91da2f5a9af75c5959dc3a77893a2726407a5e9a0234c16 - languageName: node - linkType: hard - -"command-line-args@npm:^5.1.1": - version: 5.2.1 - resolution: "command-line-args@npm:5.2.1" - dependencies: - array-back: "npm:^3.1.0" - find-replace: "npm:^3.0.0" - lodash.camelcase: "npm:^4.3.0" - typical: "npm:^4.0.0" - checksum: 10c0/a4f6a23a1e420441bd1e44dee24efd12d2e49af7efe6e21eb32fca4e843ca3d5501ddebad86a4e9d99aa626dd6dcb64c04a43695388be54e3a803dbc326cc89f - languageName: node - linkType: hard - -"command-line-usage@npm:^6.1.0": - version: 6.1.3 - resolution: "command-line-usage@npm:6.1.3" - dependencies: - array-back: "npm:^4.0.2" - chalk: "npm:^2.4.2" - table-layout: "npm:^1.0.2" - typical: "npm:^5.2.0" - checksum: 10c0/23d7577ccb6b6c004e67bb6a9a8cb77282ae7b7507ae92249a9548a39050b7602fef70f124c765000ab23b8f7e0fb7a3352419ab73ea42a2d9ea32f520cdfe9e - languageName: node - linkType: hard - -"commander@npm:^8.1.0": - version: 8.3.0 - resolution: "commander@npm:8.3.0" - checksum: 10c0/8b043bb8322ea1c39664a1598a95e0495bfe4ca2fad0d84a92d7d1d8d213e2a155b441d2470c8e08de7c4a28cf2bc6e169211c49e1b21d9f7edc6ae4d9356060 - languageName: node - linkType: hard - -"compare-versions@npm:^6.0.0": - version: 6.1.1 - resolution: "compare-versions@npm:6.1.1" - checksum: 10c0/415205c7627f9e4f358f571266422980c9fe2d99086be0c9a48008ef7c771f32b0fbe8e97a441ffedc3910872f917a0675fe0fe3c3b6d331cda6d8690be06338 - languageName: node - linkType: hard - -"complex.js@npm:^2.1.1": - version: 2.4.3 - resolution: "complex.js@npm:2.4.3" - checksum: 10c0/c61b225c4c2925c922ebaf2c4c6d7d0c2f9cebf4fb5eb8dce231aea7508f15db0920b52107279fdd9947b54a0320eae2911d430a421c2db8d0d24df6c2cb2cf8 - languageName: node - linkType: hard - -"concat-map@npm:0.0.1": - version: 0.0.1 - resolution: "concat-map@npm:0.0.1" - checksum: 10c0/c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f - languageName: node - linkType: hard - -"concat-stream@npm:^1.6.0, concat-stream@npm:^1.6.2": - version: 1.6.2 - resolution: "concat-stream@npm:1.6.2" - dependencies: - buffer-from: "npm:^1.0.0" - inherits: "npm:^2.0.3" - readable-stream: "npm:^2.2.2" - typedarray: "npm:^0.0.6" - checksum: 10c0/2e9864e18282946dabbccb212c5c7cec0702745e3671679eb8291812ca7fd12023f7d8cb36493942a62f770ac96a7f90009dc5c82ad69893438371720fa92617 - languageName: node - linkType: hard - -"content-disposition@npm:~0.5.4": - version: 0.5.4 - resolution: "content-disposition@npm:0.5.4" - dependencies: - safe-buffer: "npm:5.2.1" - checksum: 10c0/bac0316ebfeacb8f381b38285dc691c9939bf0a78b0b7c2d5758acadad242d04783cee5337ba7d12a565a19075af1b3c11c728e1e4946de73c6ff7ce45f3f1bb - languageName: node - linkType: hard - -"content-type@npm:~1.0.4, content-type@npm:~1.0.5": - version: 1.0.5 - resolution: "content-type@npm:1.0.5" - checksum: 10c0/b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af - languageName: node - linkType: hard - -"cookie-signature@npm:~1.0.6": - version: 1.0.7 - resolution: "cookie-signature@npm:1.0.7" - checksum: 10c0/e7731ad2995ae2efeed6435ec1e22cdd21afef29d300c27281438b1eab2bae04ef0d1a203928c0afec2cee72aa36540b8747406ebe308ad23c8e8cc3c26c9c51 - languageName: node - linkType: hard - -"cookie@npm:^0.4.1": - version: 0.4.2 - resolution: "cookie@npm:0.4.2" - checksum: 10c0/beab41fbd7c20175e3a2799ba948c1dcc71ef69f23fe14eeeff59fc09f50c517b0f77098db87dbb4c55da802f9d86ee86cdc1cd3efd87760341551838d53fca2 - languageName: node - linkType: hard - -"cookie@npm:~0.7.1": - version: 0.7.2 - resolution: "cookie@npm:0.7.2" - checksum: 10c0/9596e8ccdbf1a3a88ae02cf5ee80c1c50959423e1022e4e60b91dd87c622af1da309253d8abdb258fb5e3eacb4f08e579dc58b4897b8087574eee0fd35dfa5d2 - languageName: node - linkType: hard - -"core-js-pure@npm:^3.0.1": - version: 3.47.0 - resolution: "core-js-pure@npm:3.47.0" - checksum: 10c0/7eb5f897e532b33e6ea85ec2c60073fc2fe943e4543ec9903340450fc0f3b46b5b118d57d332e9f2c3d681a8b7b219a4cc64ccf548d933f6b79f754b682696dd - languageName: node - linkType: hard - -"core-util-is@npm:1.0.2": - version: 1.0.2 - resolution: "core-util-is@npm:1.0.2" - checksum: 10c0/980a37a93956d0de8a828ce508f9b9e3317039d68922ca79995421944146700e4aaf490a6dbfebcb1c5292a7184600c7710b957d724be1e37b8254c6bc0fe246 - languageName: node - linkType: hard - -"core-util-is@npm:~1.0.0": - version: 1.0.3 - resolution: "core-util-is@npm:1.0.3" - checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 - languageName: node - linkType: hard - -"cors@npm:^2.8.5": - version: 2.8.5 - resolution: "cors@npm:2.8.5" - dependencies: - object-assign: "npm:^4" - vary: "npm:^1" - checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761 - languageName: node - linkType: hard - -"crc-32@npm:^1.2.0": - version: 1.2.2 - resolution: "crc-32@npm:1.2.2" - bin: - crc32: bin/crc32.njs - checksum: 10c0/11dcf4a2e77ee793835d49f2c028838eae58b44f50d1ff08394a610bfd817523f105d6ae4d9b5bef0aad45510f633eb23c903e9902e4409bed1ce70cb82b9bf0 - languageName: node - linkType: hard - -"create-hash@npm:^1.1.0, create-hash@npm:^1.1.2, create-hash@npm:^1.2.0": - version: 1.2.0 - resolution: "create-hash@npm:1.2.0" - dependencies: - cipher-base: "npm:^1.0.1" - inherits: "npm:^2.0.1" - md5.js: "npm:^1.3.4" - ripemd160: "npm:^2.0.1" - sha.js: "npm:^2.4.0" - checksum: 10c0/d402e60e65e70e5083cb57af96d89567954d0669e90550d7cec58b56d49c4b193d35c43cec8338bc72358198b8cbf2f0cac14775b651e99238e1cf411490f915 - languageName: node - linkType: hard - -"create-hmac@npm:^1.1.7": - version: 1.1.7 - resolution: "create-hmac@npm:1.1.7" - dependencies: - cipher-base: "npm:^1.0.3" - create-hash: "npm:^1.1.0" - inherits: "npm:^2.0.1" - ripemd160: "npm:^2.0.0" - safe-buffer: "npm:^5.0.1" - sha.js: "npm:^2.4.8" - checksum: 10c0/24332bab51011652a9a0a6d160eed1e8caa091b802335324ae056b0dcb5acbc9fcf173cf10d128eba8548c3ce98dfa4eadaa01bd02f44a34414baee26b651835 - languageName: node - linkType: hard - -"create-require@npm:^1.1.0": - version: 1.1.1 - resolution: "create-require@npm:1.1.1" - checksum: 10c0/157cbc59b2430ae9a90034a5f3a1b398b6738bf510f713edc4d4e45e169bc514d3d99dd34d8d01ca7ae7830b5b8b537e46ae8f3c8f932371b0875c0151d7ec91 - languageName: node - linkType: hard - -"cross-spawn@npm:^6.0.0": - version: 6.0.6 - resolution: "cross-spawn@npm:6.0.6" - dependencies: - nice-try: "npm:^1.0.4" - path-key: "npm:^2.0.1" - semver: "npm:^5.5.0" - shebang-command: "npm:^1.2.0" - which: "npm:^1.2.9" - checksum: 10c0/bf61fb890e8635102ea9bce050515cf915ff6a50ccaa0b37a17dc82fded0fb3ed7af5478b9367b86baee19127ad86af4be51d209f64fd6638c0862dca185fe1d - languageName: node - linkType: hard - -"cross-spawn@npm:^7.0.6": - version: 7.0.6 - resolution: "cross-spawn@npm:7.0.6" - dependencies: - path-key: "npm:^3.1.0" - shebang-command: "npm:^2.0.0" - which: "npm:^2.0.1" - checksum: 10c0/053ea8b2135caff68a9e81470e845613e374e7309a47731e81639de3eaeb90c3d01af0e0b44d2ab9d50b43467223b88567dfeb3262db942dc063b9976718ffc1 - languageName: node - linkType: hard - -"crypt@npm:>= 0.0.1": - version: 0.0.2 - resolution: "crypt@npm:0.0.2" - checksum: 10c0/adbf263441dd801665d5425f044647533f39f4612544071b1471962209d235042fb703c27eea2795c7c53e1dfc242405173003f83cf4f4761a633d11f9653f18 - languageName: node - linkType: hard - -"crypto-js@npm:^3.1.9-1": - version: 3.3.0 - resolution: "crypto-js@npm:3.3.0" - checksum: 10c0/10b5d91bdc85095df9be01f9d0d954b8a3aba6202f143efa6215b8b3d5dd984e0883e10aeff792ef4a51b77cd4442320242b496acf6dce5069d0e0fc2e1d75d2 - languageName: node - linkType: hard - -"csv-parser@npm:3.0.0": - version: 3.0.0 - resolution: "csv-parser@npm:3.0.0" - dependencies: - minimist: "npm:^1.2.0" - bin: - csv-parser: bin/csv-parser - checksum: 10c0/206aef102c10d532a31c7d85e6b1b0e53c7cb8346037eb9f23e0bd7369788960d8f2431639ea9f62e34ddf54d0182dfb345691c11c666802324f25c51dba79bc - languageName: node - linkType: hard - -"csvtojson@npm:^2.0.10": - version: 2.0.14 - resolution: "csvtojson@npm:2.0.14" - dependencies: - lodash: "npm:^4.17.21" - bin: - csvtojson: bin/csvtojson - checksum: 10c0/94f35e903560e428e8ab922c3f122d46e921df616754577e410d79a50d6405c145ac64d01e825ae6238254d8024cd1c5acddacf2c6b4b38ad1c08bee1a900851 - languageName: node - linkType: hard - -"dashdash@npm:^1.12.0": - version: 1.14.1 - resolution: "dashdash@npm:1.14.1" - dependencies: - assert-plus: "npm:^1.0.0" - checksum: 10c0/64589a15c5bd01fa41ff7007e0f2c6552c5ef2028075daa16b188a3721f4ba001841bf306dfc2eee6e2e6e7f76b38f5f17fb21fa847504192290ffa9e150118a - languageName: node - linkType: hard - -"data-view-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "data-view-buffer@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.2" - checksum: 10c0/7986d40fc7979e9e6241f85db8d17060dd9a71bd53c894fa29d126061715e322a4cd47a00b0b8c710394854183d4120462b980b8554012acc1c0fa49df7ad38c - languageName: node - linkType: hard - -"data-view-byte-length@npm:^1.0.2": - version: 1.0.2 - resolution: "data-view-byte-length@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.2" - checksum: 10c0/f8a4534b5c69384d95ac18137d381f18a5cfae1f0fc1df0ef6feef51ef0d568606d970b69e02ea186c6c0f0eac77fe4e6ad96fec2569cc86c3afcc7475068c55 - languageName: node - linkType: hard - -"data-view-byte-offset@npm:^1.0.1": - version: 1.0.1 - resolution: "data-view-byte-offset@npm:1.0.1" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.1" - checksum: 10c0/fa7aa40078025b7810dcffc16df02c480573b7b53ef1205aa6a61533011005c1890e5ba17018c692ce7c900212b547262d33279fde801ad9843edc0863bf78c4 - languageName: node - linkType: hard - -"debug@npm:2.6.9, debug@npm:^2.2.0": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: "npm:2.0.0" - checksum: 10c0/121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589 - languageName: node - linkType: hard - -"debug@npm:3.2.6": - version: 3.2.6 - resolution: "debug@npm:3.2.6" - dependencies: - ms: "npm:^2.1.1" - checksum: 10c0/406ae034424c5570c83bb7f7baf6a2321ace5b94d6f0032ec796c686e277a55bbb575712bb9e6f204e044b1a8c31981ba97fab725a09fcdc7f85cd89daf4de30 - languageName: node - linkType: hard - -"debug@npm:4, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4, debug@npm:^4.3.5": - version: 4.4.3 - resolution: "debug@npm:4.4.3" - dependencies: - ms: "npm:^2.1.3" - peerDependenciesMeta: - supports-color: - optional: true - checksum: 10c0/d79136ec6c83ecbefd0f6a5593da6a9c91ec4d7ddc4b54c883d6e71ec9accb5f67a1a5e96d00a328196b5b5c86d365e98d8a3a70856aaf16b4e7b1985e67f5a6 - languageName: node - linkType: hard - -"debug@npm:^3.1.0": - version: 3.2.7 - resolution: "debug@npm:3.2.7" - dependencies: - ms: "npm:^2.1.1" - checksum: 10c0/37d96ae42cbc71c14844d2ae3ba55adf462ec89fd3a999459dec3833944cd999af6007ff29c780f1c61153bcaaf2c842d1e4ce1ec621e4fc4923244942e4a02a - languageName: node - linkType: hard - -"decamelize@npm:^1.2.0": - version: 1.2.0 - resolution: "decamelize@npm:1.2.0" - checksum: 10c0/85c39fe8fbf0482d4a1e224ef0119db5c1897f8503bcef8b826adff7a1b11414972f6fef2d7dec2ee0b4be3863cf64ac1439137ae9e6af23a3d8dcbe26a5b4b2 - languageName: node - linkType: hard - -"decamelize@npm:^4.0.0": - version: 4.0.0 - resolution: "decamelize@npm:4.0.0" - checksum: 10c0/e06da03fc05333e8cd2778c1487da67ffbea5b84e03ca80449519b8fa61f888714bbc6f459ea963d5641b4aa98832130eb5cd193d90ae9f0a27eee14be8e278d - languageName: node - linkType: hard - -"decimal.js@npm:^10.3.1, decimal.js@npm:^10.4.3": - version: 10.6.0 - resolution: "decimal.js@npm:10.6.0" - checksum: 10c0/07d69fbcc54167a340d2d97de95f546f9ff1f69d2b45a02fd7a5292412df3cd9eb7e23065e532a318f5474a2e1bccf8392fdf0443ef467f97f3bf8cb0477e5aa - languageName: node - linkType: hard - -"deep-eql@npm:^4.1.3": - version: 4.1.4 - resolution: "deep-eql@npm:4.1.4" - dependencies: - type-detect: "npm:^4.0.0" - checksum: 10c0/264e0613493b43552fc908f4ff87b8b445c0e6e075656649600e1b8a17a57ee03e960156fce7177646e4d2ddaf8e5ee616d76bd79929ff593e5c79e4e5e6c517 - languageName: node - linkType: hard - -"deep-extend@npm:~0.6.0": - version: 0.6.0 - resolution: "deep-extend@npm:0.6.0" - checksum: 10c0/1c6b0abcdb901e13a44c7d699116d3d4279fdb261983122a3783e7273844d5f2537dc2e1c454a23fcf645917f93fbf8d07101c1d03c015a87faa662755212566 - languageName: node - linkType: hard - -"deep-is@npm:^0.1.3": - version: 0.1.4 - resolution: "deep-is@npm:0.1.4" - checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c - languageName: node - linkType: hard - -"deferred-leveldown@npm:~5.3.0": - version: 5.3.0 - resolution: "deferred-leveldown@npm:5.3.0" - dependencies: - abstract-leveldown: "npm:~6.2.1" - inherits: "npm:^2.0.3" - checksum: 10c0/b1021314bfd5875b10e4c8c69429a69d37affc79df53aedf3c18a4bcd7460619220fa6b1bc309bcd85851c2c9c2b4da6cb03127abc08b715ff56da8aeae6b74f - languageName: node - linkType: hard - -"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.4": - version: 1.1.4 - resolution: "define-data-property@npm:1.1.4" - dependencies: - es-define-property: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - gopd: "npm:^1.0.1" - checksum: 10c0/dea0606d1483eb9db8d930d4eac62ca0fa16738b0b3e07046cddfacf7d8c868bbe13fa0cb263eb91c7d0d527960dc3f2f2471a69ed7816210307f6744fe62e37 - languageName: node - linkType: hard - -"define-properties@npm:^1.1.2, define-properties@npm:^1.2.1": - version: 1.2.1 - resolution: "define-properties@npm:1.2.1" - dependencies: - define-data-property: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.0" - object-keys: "npm:^1.1.1" - checksum: 10c0/88a152319ffe1396ccc6ded510a3896e77efac7a1bfbaa174a7b00414a1747377e0bb525d303794a47cf30e805c2ec84e575758512c6e44a993076d29fd4e6c3 - languageName: node - linkType: hard - -"delayed-stream@npm:~1.0.0": - version: 1.0.0 - resolution: "delayed-stream@npm:1.0.0" - checksum: 10c0/d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19 - languageName: node - linkType: hard - -"depd@npm:2.0.0, depd@npm:~2.0.0": - version: 2.0.0 - resolution: "depd@npm:2.0.0" - checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c - languageName: node - linkType: hard - -"destroy@npm:1.2.0, destroy@npm:~1.2.0": - version: 1.2.0 - resolution: "destroy@npm:1.2.0" - checksum: 10c0/bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643 - languageName: node - linkType: hard - -"diff@npm:3.5.0": - version: 3.5.0 - resolution: "diff@npm:3.5.0" - checksum: 10c0/fc62d5ba9f6d1b8b5833380969037007913d4886997838c247c54ec6934f09ae5a07e17ae28b1f016018149d81df8ad89306f52eac1afa899e0bed49015a64d1 - languageName: node - linkType: hard - -"diff@npm:^4.0.1": - version: 4.0.2 - resolution: "diff@npm:4.0.2" - checksum: 10c0/81b91f9d39c4eaca068eb0c1eb0e4afbdc5bb2941d197f513dd596b820b956fef43485876226d65d497bebc15666aa2aa82c679e84f65d5f2bfbf14ee46e32c1 - languageName: node - linkType: hard - -"diff@npm:^5.2.0": - version: 5.2.0 - resolution: "diff@npm:5.2.0" - checksum: 10c0/aed0941f206fe261ecb258dc8d0ceea8abbde3ace5827518ff8d302f0fc9cc81ce116c4d8f379151171336caf0516b79e01abdc1ed1201b6440d895a66689eb4 - languageName: node - linkType: hard - -"dotenv@npm:^10.0.0": - version: 10.0.0 - resolution: "dotenv@npm:10.0.0" - checksum: 10c0/2d8d4ba64bfaff7931402aa5e8cbb8eba0acbc99fe9ae442300199af021079eafa7171ce90e150821a5cb3d74f0057721fbe7ec201a6044b68c8a7615f8c123f - languageName: node - linkType: hard - -"dunder-proto@npm:^1.0.0, dunder-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "dunder-proto@npm:1.0.1" - dependencies: - call-bind-apply-helpers: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - gopd: "npm:^1.2.0" - checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031 - languageName: node - linkType: hard - -"eastasianwidth@npm:^0.2.0": - version: 0.2.0 - resolution: "eastasianwidth@npm:0.2.0" - checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39 - languageName: node - linkType: hard - -"ecc-jsbn@npm:~0.1.1": - version: 0.1.2 - resolution: "ecc-jsbn@npm:0.1.2" - dependencies: - jsbn: "npm:~0.1.0" - safer-buffer: "npm:^2.1.0" - checksum: 10c0/6cf168bae1e2dad2e46561d9af9cbabfbf5ff592176ad4e9f0f41eaaf5fe5e10bb58147fe0a804de62b1ee9dad42c28810c88d652b21b6013c47ba8efa274ca1 - languageName: node - linkType: hard - -"ee-first@npm:1.1.1": - version: 1.1.1 - resolution: "ee-first@npm:1.1.1" - checksum: 10c0/b5bb125ee93161bc16bfe6e56c6b04de5ad2aa44234d8f644813cc95d861a6910903132b05093706de2b706599367c4130eb6d170f6b46895686b95f87d017b7 - languageName: node - linkType: hard - -"elliptic@npm:6.5.4": - version: 6.5.4 - resolution: "elliptic@npm:6.5.4" - dependencies: - bn.js: "npm:^4.11.9" - brorand: "npm:^1.1.0" - hash.js: "npm:^1.0.0" - hmac-drbg: "npm:^1.0.1" - inherits: "npm:^2.0.4" - minimalistic-assert: "npm:^1.0.1" - minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 10c0/5f361270292c3b27cf0843e84526d11dec31652f03c2763c6c2b8178548175ff5eba95341dd62baff92b2265d1af076526915d8af6cc9cb7559c44a62f8ca6e2 - languageName: node - linkType: hard - -"elliptic@npm:6.6.1, elliptic@npm:^6.5.2, elliptic@npm:^6.5.4, elliptic@npm:^6.5.7": - version: 6.6.1 - resolution: "elliptic@npm:6.6.1" - dependencies: - bn.js: "npm:^4.11.9" - brorand: "npm:^1.1.0" - hash.js: "npm:^1.0.0" - hmac-drbg: "npm:^1.0.1" - inherits: "npm:^2.0.4" - minimalistic-assert: "npm:^1.0.1" - minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 10c0/8b24ef782eec8b472053793ea1e91ae6bee41afffdfcb78a81c0a53b191e715cbe1292aa07165958a9bbe675bd0955142560b1a007ffce7d6c765bcaf951a867 - languageName: node - linkType: hard - -"emittery@npm:0.10.0": - version: 0.10.0 - resolution: "emittery@npm:0.10.0" - checksum: 10c0/c2ad40e5bab53094070f7cb9d1b9a26fbbba6ab4b952cf5f33b8f64032356767c80c5aec2523aa7e44940c1cdb4f125d06a9cffd489a9be65103bb8a16ce173b - languageName: node - linkType: hard - -"emoji-regex@npm:^7.0.1": - version: 7.0.3 - resolution: "emoji-regex@npm:7.0.3" - checksum: 10c0/a8917d695c3a3384e4b7230a6a06fd2de6b3db3709116792e8b7b36ddbb3db4deb28ad3e983e70d4f2a1f9063b5dab9025e4e26e9ca08278da4fbb73e213743f - languageName: node - linkType: hard - -"emoji-regex@npm:^8.0.0": - version: 8.0.0 - resolution: "emoji-regex@npm:8.0.0" - checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010 - languageName: node - linkType: hard - -"emoji-regex@npm:^9.2.2": - version: 9.2.2 - resolution: "emoji-regex@npm:9.2.2" - checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639 - languageName: node - linkType: hard - -"encode-utf8@npm:^1.0.2": - version: 1.0.3 - resolution: "encode-utf8@npm:1.0.3" - checksum: 10c0/6b3458b73e868113d31099d7508514a5c627d8e16d1e0542d1b4e3652299b8f1f590c468e2b9dcdf1b4021ee961f31839d0be9d70a7f2a8a043c63b63c9b3a88 - languageName: node - linkType: hard - -"encodeurl@npm:~2.0.0": - version: 2.0.0 - resolution: "encodeurl@npm:2.0.0" - checksum: 10c0/5d317306acb13e6590e28e27924c754163946a2480de11865c991a3a7eed4315cd3fba378b543ca145829569eefe9b899f3d84bb09870f675ae60bc924b01ceb - languageName: node - linkType: hard - -"encoding-down@npm:^6.3.0": - version: 6.3.0 - resolution: "encoding-down@npm:6.3.0" - dependencies: - abstract-leveldown: "npm:^6.2.1" - inherits: "npm:^2.0.3" - level-codec: "npm:^9.0.0" - level-errors: "npm:^2.0.0" - checksum: 10c0/f7e92149863863c11e04d71ceb71baa1772270dc9ef15cbdbb155fed0a7d31c823682e043af3100f96ce8ab2e0a70a2464c1fa4902d4dce9a0584498f40d07bf - languageName: node - linkType: hard - -"encoding@npm:^0.1.13": - version: 0.1.13 - resolution: "encoding@npm:0.1.13" - dependencies: - iconv-lite: "npm:^0.6.2" - checksum: 10c0/36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039 - languageName: node - linkType: hard - -"end-of-stream@npm:^1.1.0": - version: 1.4.5 - resolution: "end-of-stream@npm:1.4.5" - dependencies: - once: "npm:^1.4.0" - checksum: 10c0/b0701c92a10b89afb1cb45bf54a5292c6f008d744eb4382fa559d54775ff31617d1d7bc3ef617575f552e24fad2c7c1a1835948c66b3f3a4be0a6c1f35c883d8 - languageName: node - linkType: hard - -"enquirer@npm:^2.3.0": - version: 2.4.1 - resolution: "enquirer@npm:2.4.1" - dependencies: - ansi-colors: "npm:^4.1.1" - strip-ansi: "npm:^6.0.1" - checksum: 10c0/43850479d7a51d36a9c924b518dcdc6373b5a8ae3401097d336b7b7e258324749d0ad37a1fcaa5706f04799baa05585cd7af19ebdf7667673e7694435fcea918 - languageName: node - linkType: hard - -"env-paths@npm:^2.2.0": - version: 2.2.1 - resolution: "env-paths@npm:2.2.1" - checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4 - languageName: node - linkType: hard - -"err-code@npm:^2.0.2": - version: 2.0.3 - resolution: "err-code@npm:2.0.3" - checksum: 10c0/b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66 - languageName: node - linkType: hard - -"errno@npm:~0.1.1": - version: 0.1.8 - resolution: "errno@npm:0.1.8" - dependencies: - prr: "npm:~1.0.1" - bin: - errno: cli.js - checksum: 10c0/83758951967ec57bf00b5f5b7dc797e6d65a6171e57ea57adcf1bd1a0b477fd9b5b35fae5be1ff18f4090ed156bce1db749fe7e317aac19d485a5d150f6a4936 - languageName: node - linkType: hard - -"es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.9, es-abstract@npm:^1.24.0": - version: 1.24.1 - resolution: "es-abstract@npm:1.24.1" - dependencies: - array-buffer-byte-length: "npm:^1.0.2" - arraybuffer.prototype.slice: "npm:^1.0.4" - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - data-view-buffer: "npm:^1.0.2" - data-view-byte-length: "npm:^1.0.2" - data-view-byte-offset: "npm:^1.0.1" - es-define-property: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - es-set-tostringtag: "npm:^2.1.0" - es-to-primitive: "npm:^1.3.0" - function.prototype.name: "npm:^1.1.8" - get-intrinsic: "npm:^1.3.0" - get-proto: "npm:^1.0.1" - get-symbol-description: "npm:^1.1.0" - globalthis: "npm:^1.0.4" - gopd: "npm:^1.2.0" - has-property-descriptors: "npm:^1.0.2" - has-proto: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - hasown: "npm:^2.0.2" - internal-slot: "npm:^1.1.0" - is-array-buffer: "npm:^3.0.5" - is-callable: "npm:^1.2.7" - is-data-view: "npm:^1.0.2" - is-negative-zero: "npm:^2.0.3" - is-regex: "npm:^1.2.1" - is-set: "npm:^2.0.3" - is-shared-array-buffer: "npm:^1.0.4" - is-string: "npm:^1.1.1" - is-typed-array: "npm:^1.1.15" - is-weakref: "npm:^1.1.1" - math-intrinsics: "npm:^1.1.0" - object-inspect: "npm:^1.13.4" - object-keys: "npm:^1.1.1" - object.assign: "npm:^4.1.7" - own-keys: "npm:^1.0.1" - regexp.prototype.flags: "npm:^1.5.4" - safe-array-concat: "npm:^1.1.3" - safe-push-apply: "npm:^1.0.0" - safe-regex-test: "npm:^1.1.0" - set-proto: "npm:^1.0.0" - stop-iteration-iterator: "npm:^1.1.0" - string.prototype.trim: "npm:^1.2.10" - string.prototype.trimend: "npm:^1.0.9" - string.prototype.trimstart: "npm:^1.0.8" - typed-array-buffer: "npm:^1.0.3" - typed-array-byte-length: "npm:^1.0.3" - typed-array-byte-offset: "npm:^1.0.4" - typed-array-length: "npm:^1.0.7" - unbox-primitive: "npm:^1.1.0" - which-typed-array: "npm:^1.1.19" - checksum: 10c0/fca062ef8b5daacf743732167d319a212d45cb655b0bb540821d38d715416ae15b04b84fc86da9e2c89135aa7b337337b6c867f84dcde698d75d55688d5d765c - languageName: node - linkType: hard - -"es-array-method-boxes-properly@npm:^1.0.0": - version: 1.0.0 - resolution: "es-array-method-boxes-properly@npm:1.0.0" - checksum: 10c0/4b7617d3fbd460d6f051f684ceca6cf7e88e6724671d9480388d3ecdd72119ddaa46ca31f2c69c5426a82e4b3091c1e81867c71dcdc453565cd90005ff2c382d - languageName: node - linkType: hard - -"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": - version: 1.0.1 - resolution: "es-define-property@npm:1.0.1" - checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c - languageName: node - linkType: hard - -"es-errors@npm:^1.3.0": - version: 1.3.0 - resolution: "es-errors@npm:1.3.0" - checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85 - languageName: node - linkType: hard - -"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1": - version: 1.1.1 - resolution: "es-object-atoms@npm:1.1.1" - dependencies: - es-errors: "npm:^1.3.0" - checksum: 10c0/65364812ca4daf48eb76e2a3b7a89b3f6a2e62a1c420766ce9f692665a29d94fe41fe88b65f24106f449859549711e4b40d9fb8002d862dfd7eb1c512d10be0c - languageName: node - linkType: hard - -"es-set-tostringtag@npm:^2.1.0": - version: 2.1.0 - resolution: "es-set-tostringtag@npm:2.1.0" - dependencies: - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - has-tostringtag: "npm:^1.0.2" - hasown: "npm:^2.0.2" - checksum: 10c0/ef2ca9ce49afe3931cb32e35da4dcb6d86ab02592cfc2ce3e49ced199d9d0bb5085fc7e73e06312213765f5efa47cc1df553a6a5154584b21448e9fb8355b1af - languageName: node - linkType: hard - -"es-to-primitive@npm:^1.3.0": - version: 1.3.0 - resolution: "es-to-primitive@npm:1.3.0" - dependencies: - is-callable: "npm:^1.2.7" - is-date-object: "npm:^1.0.5" - is-symbol: "npm:^1.0.4" - checksum: 10c0/c7e87467abb0b438639baa8139f701a06537d2b9bc758f23e8622c3b42fd0fdb5bde0f535686119e446dd9d5e4c0f238af4e14960f4771877cf818d023f6730b - languageName: node - linkType: hard - -"escalade@npm:^3.1.1": - version: 3.2.0 - resolution: "escalade@npm:3.2.0" - checksum: 10c0/ced4dd3a78e15897ed3be74e635110bbf3b08877b0a41be50dcb325ee0e0b5f65fc2d50e9845194d7c4633f327e2e1c6cce00a71b617c5673df0374201d67f65 - languageName: node - linkType: hard - -"escape-html@npm:~1.0.3": - version: 1.0.3 - resolution: "escape-html@npm:1.0.3" - checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3 - languageName: node - linkType: hard - -"escape-latex@npm:^1.2.0": - version: 1.2.0 - resolution: "escape-latex@npm:1.2.0" - checksum: 10c0/b77ea1594a38625295793a61105222c283c1792d1b2511bbfd6338cf02cc427dcabce7e7c1e22ec2f5c40baf3eaf2eeaf229a62dbbb74c6e69bb4a4209f2544f - languageName: node - linkType: hard - -"escape-string-regexp@npm:1.0.5, escape-string-regexp@npm:^1.0.5": - version: 1.0.5 - resolution: "escape-string-regexp@npm:1.0.5" - checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^4.0.0": - version: 4.0.0 - resolution: "escape-string-regexp@npm:4.0.0" - checksum: 10c0/9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9 - languageName: node - linkType: hard - -"eslint-scope@npm:^8.4.0": - version: 8.4.0 - resolution: "eslint-scope@npm:8.4.0" - dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^5.2.0" - checksum: 10c0/407f6c600204d0f3705bd557f81bd0189e69cd7996f408f8971ab5779c0af733d1af2f1412066b40ee1588b085874fc37a2333986c6521669cdbdd36ca5058e0 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^3.4.3": - version: 3.4.3 - resolution: "eslint-visitor-keys@npm:3.4.3" - checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^4.2.1": - version: 4.2.1 - resolution: "eslint-visitor-keys@npm:4.2.1" - checksum: 10c0/fcd43999199d6740db26c58dbe0c2594623e31ca307e616ac05153c9272f12f1364f5a0b1917a8e962268fdecc6f3622c1c2908b4fcc2e047a106fe6de69dc43 - languageName: node - linkType: hard - -"eslint@npm:^9.12.0": - version: 9.39.2 - resolution: "eslint@npm:9.39.2" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.8.0" - "@eslint-community/regexpp": "npm:^4.12.1" - "@eslint/config-array": "npm:^0.21.1" - "@eslint/config-helpers": "npm:^0.4.2" - "@eslint/core": "npm:^0.17.0" - "@eslint/eslintrc": "npm:^3.3.1" - "@eslint/js": "npm:9.39.2" - "@eslint/plugin-kit": "npm:^0.4.1" - "@humanfs/node": "npm:^0.16.6" - "@humanwhocodes/module-importer": "npm:^1.0.1" - "@humanwhocodes/retry": "npm:^0.4.2" - "@types/estree": "npm:^1.0.6" - ajv: "npm:^6.12.4" - chalk: "npm:^4.0.0" - cross-spawn: "npm:^7.0.6" - debug: "npm:^4.3.2" - escape-string-regexp: "npm:^4.0.0" - eslint-scope: "npm:^8.4.0" - eslint-visitor-keys: "npm:^4.2.1" - espree: "npm:^10.4.0" - esquery: "npm:^1.5.0" - esutils: "npm:^2.0.2" - fast-deep-equal: "npm:^3.1.3" - file-entry-cache: "npm:^8.0.0" - find-up: "npm:^5.0.0" - glob-parent: "npm:^6.0.2" - ignore: "npm:^5.2.0" - imurmurhash: "npm:^0.1.4" - is-glob: "npm:^4.0.0" - json-stable-stringify-without-jsonify: "npm:^1.0.1" - lodash.merge: "npm:^4.6.2" - minimatch: "npm:^3.1.2" - natural-compare: "npm:^1.4.0" - optionator: "npm:^0.9.3" - peerDependencies: - jiti: "*" - peerDependenciesMeta: - jiti: - optional: true - bin: - eslint: bin/eslint.js - checksum: 10c0/bb88ca8fd16bb7e1ac3e13804c54d41c583214460c0faa7b3e7c574e69c5600c7122295500fb4b0c06067831111db740931e98da1340329527658e1cf80073d3 - languageName: node - linkType: hard - -"espree@npm:^10.0.1, espree@npm:^10.4.0": - version: 10.4.0 - resolution: "espree@npm:10.4.0" - dependencies: - acorn: "npm:^8.15.0" - acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^4.2.1" - checksum: 10c0/c63fe06131c26c8157b4083313cb02a9a54720a08e21543300e55288c40e06c3fc284bdecf108d3a1372c5934a0a88644c98714f38b6ae8ed272b40d9ea08d6b - languageName: node - linkType: hard - -"esprima@npm:^4.0.0": - version: 4.0.1 - resolution: "esprima@npm:4.0.1" - bin: - esparse: ./bin/esparse.js - esvalidate: ./bin/esvalidate.js - checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 - languageName: node - linkType: hard - -"esquery@npm:^1.5.0": - version: 1.7.0 - resolution: "esquery@npm:1.7.0" - dependencies: - estraverse: "npm:^5.1.0" - checksum: 10c0/77d5173db450b66f3bc685d11af4c90cffeedb340f34a39af96d43509a335ce39c894fd79233df32d38f5e4e219fa0f7076f6ec90bae8320170ba082c0db4793 - languageName: node - linkType: hard - -"esrecurse@npm:^4.3.0": - version: 4.3.0 - resolution: "esrecurse@npm:4.3.0" - dependencies: - estraverse: "npm:^5.2.0" - checksum: 10c0/81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5 - languageName: node - linkType: hard - -"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": - version: 5.3.0 - resolution: "estraverse@npm:5.3.0" - checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107 - languageName: node - linkType: hard - -"esutils@npm:^2.0.2": - version: 2.0.3 - resolution: "esutils@npm:2.0.3" - checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7 - languageName: node - linkType: hard - -"etag@npm:~1.8.1": - version: 1.8.1 - resolution: "etag@npm:1.8.1" - checksum: 10c0/12be11ef62fb9817314d790089a0a49fae4e1b50594135dcb8076312b7d7e470884b5100d249b28c18581b7fd52f8b485689ffae22a11ed9ec17377a33a08f84 - languageName: node - linkType: hard - -"eth-gas-reporter@npm:0.2.25": - version: 0.2.25 - resolution: "eth-gas-reporter@npm:0.2.25" - dependencies: - "@ethersproject/abi": "npm:^5.0.0-beta.146" - "@solidity-parser/parser": "npm:^0.14.0" - cli-table3: "npm:^0.5.0" - colors: "npm:1.4.0" - ethereum-cryptography: "npm:^1.0.3" - ethers: "npm:^4.0.40" - fs-readdir-recursive: "npm:^1.1.0" - lodash: "npm:^4.17.14" - markdown-table: "npm:^1.1.3" - mocha: "npm:^7.1.1" - req-cwd: "npm:^2.0.0" - request: "npm:^2.88.0" - request-promise-native: "npm:^1.0.5" - sha1: "npm:^1.1.1" - sync-request: "npm:^6.0.0" - peerDependencies: - "@codechecks/client": ^0.1.0 - peerDependenciesMeta: - "@codechecks/client": - optional: true - checksum: 10c0/c05c1b3371c614cddf91486874f7abfdb7cd75dc2d4530be45b14999785512d69489dbc08c251766bf93ed516184bf94d5a9ff1505f3969cb9f0659b93d9d571 - languageName: node - linkType: hard - -"eth-gas-reporter@npm:^0.2.25": - version: 0.2.27 - resolution: "eth-gas-reporter@npm:0.2.27" - dependencies: - "@solidity-parser/parser": "npm:^0.14.0" - axios: "npm:^1.5.1" - cli-table3: "npm:^0.5.0" - colors: "npm:1.4.0" - ethereum-cryptography: "npm:^1.0.3" - ethers: "npm:^5.7.2" - fs-readdir-recursive: "npm:^1.1.0" - lodash: "npm:^4.17.14" - markdown-table: "npm:^1.1.3" - mocha: "npm:^10.2.0" - req-cwd: "npm:^2.0.0" - sha1: "npm:^1.1.1" - sync-request: "npm:^6.0.0" - peerDependencies: - "@codechecks/client": ^0.1.0 - peerDependenciesMeta: - "@codechecks/client": - optional: true - checksum: 10c0/62a7b8ea41d82731fe91a7741eb2362f08d55e0fece1c12e69effe1684933999961d97d1011037a54063fda20c33a61ef143f04b7ccef36c3002f40975b0415f - languageName: node - linkType: hard - -"ethereum-bloom-filters@npm:^1.0.6": - version: 1.2.0 - resolution: "ethereum-bloom-filters@npm:1.2.0" - dependencies: - "@noble/hashes": "npm:^1.4.0" - checksum: 10c0/7a0ed420cb2e85f621042d78576eb4ddea535a57f3186e314160604b29c37bcd0d3561b03695971e3a96e9c9db402b87de7248a1ac640cbc3dda1b8077cf841f - languageName: node - linkType: hard - -"ethereum-cryptography@npm:^0.1.3": - version: 0.1.3 - resolution: "ethereum-cryptography@npm:0.1.3" - dependencies: - "@types/pbkdf2": "npm:^3.0.0" - "@types/secp256k1": "npm:^4.0.1" - blakejs: "npm:^1.1.0" - browserify-aes: "npm:^1.2.0" - bs58check: "npm:^2.1.2" - create-hash: "npm:^1.2.0" - create-hmac: "npm:^1.1.7" - hash.js: "npm:^1.1.7" - keccak: "npm:^3.0.0" - pbkdf2: "npm:^3.0.17" - randombytes: "npm:^2.1.0" - safe-buffer: "npm:^5.1.2" - scrypt-js: "npm:^3.0.0" - secp256k1: "npm:^4.0.1" - setimmediate: "npm:^1.0.5" - checksum: 10c0/aa36e11fca9d67d67c96e02a98b33bae2e1add20bd11af43feb7f28cdafe0cd3bdbae3bfecc7f2d9ec8f504b10a1c8f7590f5f7fe236560fd8083dd321ad7144 - languageName: node - linkType: hard - -"ethereum-cryptography@npm:^1.0.3": - version: 1.2.0 - resolution: "ethereum-cryptography@npm:1.2.0" - dependencies: - "@noble/hashes": "npm:1.2.0" - "@noble/secp256k1": "npm:1.7.1" - "@scure/bip32": "npm:1.1.5" - "@scure/bip39": "npm:1.1.1" - checksum: 10c0/93e486a4a8b266dc2f274b69252e751345ef47551163371939b01231afb7b519133e2572b5975bb9cb4cc77ac54ccd36002c7c759a72488abeeaf216e4d55b46 - languageName: node - linkType: hard - -"ethereum-cryptography@npm:^2.0.0, ethereum-cryptography@npm:^2.1.2, ethereum-cryptography@npm:^2.2.1": - version: 2.2.1 - resolution: "ethereum-cryptography@npm:2.2.1" - dependencies: - "@noble/curves": "npm:1.4.2" - "@noble/hashes": "npm:1.4.0" - "@scure/bip32": "npm:1.4.0" - "@scure/bip39": "npm:1.3.0" - checksum: 10c0/c6c7626d393980577b57f709878b2eb91f270fe56116044b1d7afb70d5c519cddc0c072e8c05e4a335e05342eb64d9c3ab39d52f78bb75f76ad70817da9645ef - languageName: node - linkType: hard - -"ethereum-waffle@npm:4.0.10": - version: 4.0.10 - resolution: "ethereum-waffle@npm:4.0.10" - dependencies: - "@ethereum-waffle/chai": "npm:4.0.10" - "@ethereum-waffle/compiler": "npm:4.0.3" - "@ethereum-waffle/mock-contract": "npm:4.0.4" - "@ethereum-waffle/provider": "npm:4.0.5" - solc: "npm:0.8.15" - typechain: "npm:^8.0.0" - peerDependencies: - ethers: "*" - bin: - waffle: bin/waffle - checksum: 10c0/a7dd9cc02b5a404edc05168f3f565025426e3e648186d472366cb50348ee8106d71adcb435aecd4f9589b43c2d91dc51826b74c76a56cf2aad94a53ec21e9c12 - languageName: node - linkType: hard - -"ethereumjs-abi@npm:0.6.8": - version: 0.6.8 - resolution: "ethereumjs-abi@npm:0.6.8" - dependencies: - bn.js: "npm:^4.11.8" - ethereumjs-util: "npm:^6.0.0" - checksum: 10c0/a7ff1917625e3c812cb3bca6c1231fc0ece282cc7d202d60545a9c31cd379fd751bfed5ff78dae4279cb1ba4d0e8967f9fdd4f135a334a38dbf04e7afd0c4bcf - languageName: node - linkType: hard - -"ethereumjs-util@npm:6.2.1, ethereumjs-util@npm:^6.0.0": - version: 6.2.1 - resolution: "ethereumjs-util@npm:6.2.1" - dependencies: - "@types/bn.js": "npm:^4.11.3" - bn.js: "npm:^4.11.0" - create-hash: "npm:^1.1.2" - elliptic: "npm:^6.5.2" - ethereum-cryptography: "npm:^0.1.3" - ethjs-util: "npm:0.1.6" - rlp: "npm:^2.2.3" - checksum: 10c0/64aa7e6d591a0b890eb147c5d81f80a6456e87b3056e6bbafb54dff63f6ae9e646406763e8bd546c3b0b0162d027aecb3844873e894681826b03e0298f57e7a4 - languageName: node - linkType: hard - -"ethereumjs-util@npm:7.1.3": - version: 7.1.3 - resolution: "ethereumjs-util@npm:7.1.3" - dependencies: - "@types/bn.js": "npm:^5.1.0" - bn.js: "npm:^5.1.2" - create-hash: "npm:^1.1.2" - ethereum-cryptography: "npm:^0.1.3" - rlp: "npm:^2.2.4" - checksum: 10c0/555baf030032bf908e553e7d605206a78a3cf1073ba3e1851195e24672ba730ab87b0b916a58923efe2f935f3b6b402d82c88d76be9aaed8e416ff3798acb3f4 - languageName: node - linkType: hard - -"ethereumjs-util@npm:^7.0.3, ethereumjs-util@npm:^7.1.1, ethereumjs-util@npm:^7.1.3, ethereumjs-util@npm:^7.1.4, ethereumjs-util@npm:^7.1.5": - version: 7.1.5 - resolution: "ethereumjs-util@npm:7.1.5" - dependencies: - "@types/bn.js": "npm:^5.1.0" - bn.js: "npm:^5.1.2" - create-hash: "npm:^1.1.2" - ethereum-cryptography: "npm:^0.1.3" - rlp: "npm:^2.2.4" - checksum: 10c0/8b9487f35ecaa078bf9af6858eba6855fc61c73cc2b90c8c37486fcf94faf4fc1c5cda9758e6769f9ef2658daedaf2c18b366312ac461f8c8a122b392e3041eb - languageName: node - linkType: hard - -"ethers@npm:5.7.2": - version: 5.7.2 - resolution: "ethers@npm:5.7.2" - dependencies: - "@ethersproject/abi": "npm:5.7.0" - "@ethersproject/abstract-provider": "npm:5.7.0" - "@ethersproject/abstract-signer": "npm:5.7.0" - "@ethersproject/address": "npm:5.7.0" - "@ethersproject/base64": "npm:5.7.0" - "@ethersproject/basex": "npm:5.7.0" - "@ethersproject/bignumber": "npm:5.7.0" - "@ethersproject/bytes": "npm:5.7.0" - "@ethersproject/constants": "npm:5.7.0" - "@ethersproject/contracts": "npm:5.7.0" - "@ethersproject/hash": "npm:5.7.0" - "@ethersproject/hdnode": "npm:5.7.0" - "@ethersproject/json-wallets": "npm:5.7.0" - "@ethersproject/keccak256": "npm:5.7.0" - "@ethersproject/logger": "npm:5.7.0" - "@ethersproject/networks": "npm:5.7.1" - "@ethersproject/pbkdf2": "npm:5.7.0" - "@ethersproject/properties": "npm:5.7.0" - "@ethersproject/providers": "npm:5.7.2" - "@ethersproject/random": "npm:5.7.0" - "@ethersproject/rlp": "npm:5.7.0" - "@ethersproject/sha2": "npm:5.7.0" - "@ethersproject/signing-key": "npm:5.7.0" - "@ethersproject/solidity": "npm:5.7.0" - "@ethersproject/strings": "npm:5.7.0" - "@ethersproject/transactions": "npm:5.7.0" - "@ethersproject/units": "npm:5.7.0" - "@ethersproject/wallet": "npm:5.7.0" - "@ethersproject/web": "npm:5.7.1" - "@ethersproject/wordlists": "npm:5.7.0" - checksum: 10c0/90629a4cdb88cde7a7694f5610a83eb00d7fbbaea687446b15631397988f591c554dd68dfa752ddf00aabefd6285e5b298be44187e960f5e4962684e10b39962 - languageName: node - linkType: hard - -"ethers@npm:^4.0.40": - version: 4.0.49 - resolution: "ethers@npm:4.0.49" - dependencies: - aes-js: "npm:3.0.0" - bn.js: "npm:^4.11.9" - elliptic: "npm:6.5.4" - hash.js: "npm:1.1.3" - js-sha3: "npm:0.5.7" - scrypt-js: "npm:2.0.4" - setimmediate: "npm:1.0.4" - uuid: "npm:2.0.1" - xmlhttprequest: "npm:1.8.0" - checksum: 10c0/c2d6e659faca917469f95c1384db6717ad56fd386183b220907ab4fd31c7b8f649ec5975679245a482c9cfb63f2f796c014d465a0538cc2525b0f7b701753002 - languageName: node - linkType: hard - -"ethers@npm:^5.6.1, ethers@npm:^5.7.2": - version: 5.8.0 - resolution: "ethers@npm:5.8.0" - dependencies: - "@ethersproject/abi": "npm:5.8.0" - "@ethersproject/abstract-provider": "npm:5.8.0" - "@ethersproject/abstract-signer": "npm:5.8.0" - "@ethersproject/address": "npm:5.8.0" - "@ethersproject/base64": "npm:5.8.0" - "@ethersproject/basex": "npm:5.8.0" - "@ethersproject/bignumber": "npm:5.8.0" - "@ethersproject/bytes": "npm:5.8.0" - "@ethersproject/constants": "npm:5.8.0" - "@ethersproject/contracts": "npm:5.8.0" - "@ethersproject/hash": "npm:5.8.0" - "@ethersproject/hdnode": "npm:5.8.0" - "@ethersproject/json-wallets": "npm:5.8.0" - "@ethersproject/keccak256": "npm:5.8.0" - "@ethersproject/logger": "npm:5.8.0" - "@ethersproject/networks": "npm:5.8.0" - "@ethersproject/pbkdf2": "npm:5.8.0" - "@ethersproject/properties": "npm:5.8.0" - "@ethersproject/providers": "npm:5.8.0" - "@ethersproject/random": "npm:5.8.0" - "@ethersproject/rlp": "npm:5.8.0" - "@ethersproject/sha2": "npm:5.8.0" - "@ethersproject/signing-key": "npm:5.8.0" - "@ethersproject/solidity": "npm:5.8.0" - "@ethersproject/strings": "npm:5.8.0" - "@ethersproject/transactions": "npm:5.8.0" - "@ethersproject/units": "npm:5.8.0" - "@ethersproject/wallet": "npm:5.8.0" - "@ethersproject/web": "npm:5.8.0" - "@ethersproject/wordlists": "npm:5.8.0" - checksum: 10c0/8f187bb6af3736fbafcb613d8fb5be31fe7667a1bae480dd0a4c31b597ed47e0693d552adcababcb05111da39a059fac22e44840ce1671b1cc972de22d6d85d9 - languageName: node - linkType: hard - -"ethjs-unit@npm:0.1.6": - version: 0.1.6 - resolution: "ethjs-unit@npm:0.1.6" - dependencies: - bn.js: "npm:4.11.6" - number-to-bn: "npm:1.7.0" - checksum: 10c0/0115ddeb4bc932026b9cd259f6eb020a45b38be62e3786526b70e4c5fb0254184bf6e8b7b3f0c8bb80d4d596a73893e386c02221faf203895db7cb9c29b37188 - languageName: node - linkType: hard - -"ethjs-util@npm:0.1.6": - version: 0.1.6 - resolution: "ethjs-util@npm:0.1.6" - dependencies: - is-hex-prefixed: "npm:1.0.0" - strip-hex-prefix: "npm:1.0.0" - checksum: 10c0/9b4d6268705fd0620e73a56d2fa7b8a7c6b9770b2cf7f8ffe3a9c46b8bd1c5a08fff3d1181bb18cf85cf12b6fdbb6dca6d9aff6506005f3f565e742f026e6339 - languageName: node - linkType: hard - -"evm-bn@npm:^1.1.1": - version: 1.1.2 - resolution: "evm-bn@npm:1.1.2" - dependencies: - "@ethersproject/bignumber": "npm:^5.5.0" - from-exponential: "npm:^1.1.1" - peerDependencies: - "@ethersproject/bignumber": 5.x - checksum: 10c0/18ae4f8cae76c46df3c09f5a493cb0f8245dccfbe501c72e35cde5e27a1a8fd8d4c72876e4448cdaba7da68916140385d892653cc951084a9f436f0fda4e105f - languageName: node - linkType: hard - -"evp_bytestokey@npm:^1.0.3": - version: 1.0.3 - resolution: "evp_bytestokey@npm:1.0.3" - dependencies: - md5.js: "npm:^1.3.4" - node-gyp: "npm:latest" - safe-buffer: "npm:^5.1.1" - checksum: 10c0/77fbe2d94a902a80e9b8f5a73dcd695d9c14899c5e82967a61b1fc6cbbb28c46552d9b127cff47c45fcf684748bdbcfa0a50410349109de87ceb4b199ef6ee99 - languageName: node - linkType: hard - -"execa@npm:^1.0.0": - version: 1.0.0 - resolution: "execa@npm:1.0.0" - dependencies: - cross-spawn: "npm:^6.0.0" - get-stream: "npm:^4.0.0" - is-stream: "npm:^1.1.0" - npm-run-path: "npm:^2.0.0" - p-finally: "npm:^1.0.0" - signal-exit: "npm:^3.0.0" - strip-eof: "npm:^1.0.0" - checksum: 10c0/cc71707c9aa4a2552346893ee63198bf70a04b5a1bc4f8a0ef40f1d03c319eae80932c59191f037990d7d102193e83a38ec72115fff814ec2fb3099f3661a590 - languageName: node - linkType: hard - -"exponential-backoff@npm:^3.1.1": - version: 3.1.3 - resolution: "exponential-backoff@npm:3.1.3" - checksum: 10c0/77e3ae682b7b1f4972f563c6dbcd2b0d54ac679e62d5d32f3e5085feba20483cf28bd505543f520e287a56d4d55a28d7874299941faf637e779a1aa5994d1267 - languageName: node - linkType: hard - -"express@npm:^4.21.1": - version: 4.22.1 - resolution: "express@npm:4.22.1" - dependencies: - accepts: "npm:~1.3.8" - array-flatten: "npm:1.1.1" - body-parser: "npm:~1.20.3" - content-disposition: "npm:~0.5.4" - content-type: "npm:~1.0.4" - cookie: "npm:~0.7.1" - cookie-signature: "npm:~1.0.6" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - finalhandler: "npm:~1.3.1" - fresh: "npm:~0.5.2" - http-errors: "npm:~2.0.0" - merge-descriptors: "npm:1.0.3" - methods: "npm:~1.1.2" - on-finished: "npm:~2.4.1" - parseurl: "npm:~1.3.3" - path-to-regexp: "npm:~0.1.12" - proxy-addr: "npm:~2.0.7" - qs: "npm:~6.14.0" - range-parser: "npm:~1.2.1" - safe-buffer: "npm:5.2.1" - send: "npm:~0.19.0" - serve-static: "npm:~1.16.2" - setprototypeof: "npm:1.2.0" - statuses: "npm:~2.0.1" - type-is: "npm:~1.6.18" - utils-merge: "npm:1.0.1" - vary: "npm:~1.1.2" - checksum: 10c0/ea57f512ab1e05e26b53a14fd432f65a10ec735ece342b37d0b63a7bcb8d337ffbb830ecb8ca15bcdfe423fbff88cea09786277baff200e8cde3ab40faa665cd - languageName: node - linkType: hard - -"extend@npm:~3.0.2": - version: 3.0.2 - resolution: "extend@npm:3.0.2" - checksum: 10c0/73bf6e27406e80aa3e85b0d1c4fd987261e628064e170ca781125c0b635a3dabad5e05adbf07595ea0cf1e6c5396cacb214af933da7cbaf24fe75ff14818e8f9 - languageName: node - linkType: hard - -"extsprintf@npm:1.3.0": - version: 1.3.0 - resolution: "extsprintf@npm:1.3.0" - checksum: 10c0/f75114a8388f0cbce68e277b6495dc3930db4dde1611072e4a140c24e204affd77320d004b947a132e9a3b97b8253017b2b62dce661975fb0adced707abf1ab5 - languageName: node - linkType: hard - -"extsprintf@npm:^1.2.0": - version: 1.4.1 - resolution: "extsprintf@npm:1.4.1" - checksum: 10c0/e10e2769985d0e9b6c7199b053a9957589d02e84de42832c295798cb422a025e6d4a92e0259c1fb4d07090f5bfde6b55fd9f880ac5855bd61d775f8ab75a7ab0 - languageName: node - linkType: hard - -"fast-base64-decode@npm:^1.0.0": - version: 1.0.0 - resolution: "fast-base64-decode@npm:1.0.0" - checksum: 10c0/6d8feab513222a463d1cb58d24e04d2e04b0791ac6559861f99543daaa590e2636d040d611b40a50799bfb5c5304265d05e3658b5adf6b841a50ef6bf833d821 - languageName: node - linkType: hard - -"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": - version: 3.1.3 - resolution: "fast-deep-equal@npm:3.1.3" - checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0 - languageName: node - linkType: hard - -"fast-json-stable-stringify@npm:^2.0.0": - version: 2.1.0 - resolution: "fast-json-stable-stringify@npm:2.1.0" - checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b - languageName: node - linkType: hard - -"fast-levenshtein@npm:^2.0.6": - version: 2.0.6 - resolution: "fast-levenshtein@npm:2.0.6" - checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4 - languageName: node - linkType: hard - -"fast-uri@npm:^3.0.1": - version: 3.1.0 - resolution: "fast-uri@npm:3.1.0" - checksum: 10c0/44364adca566f70f40d1e9b772c923138d47efeac2ae9732a872baafd77061f26b097ba2f68f0892885ad177becd065520412b8ffeec34b16c99433c5b9e2de7 - languageName: node - linkType: hard - -"fdir@npm:^6.5.0": - version: 6.5.0 - resolution: "fdir@npm:6.5.0" - peerDependencies: - picomatch: ^3 || ^4 - peerDependenciesMeta: - picomatch: - optional: true - checksum: 10c0/e345083c4306b3aed6cb8ec551e26c36bab5c511e99ea4576a16750ddc8d3240e63826cc624f5ae17ad4dc82e68a253213b60d556c11bfad064b7607847ed07f - languageName: node - linkType: hard - -"file-entry-cache@npm:^8.0.0": - version: 8.0.0 - resolution: "file-entry-cache@npm:8.0.0" - dependencies: - flat-cache: "npm:^4.0.0" - checksum: 10c0/9e2b5938b1cd9b6d7e3612bdc533afd4ac17b2fc646569e9a8abbf2eb48e5eb8e316bc38815a3ef6a1b456f4107f0d0f055a614ca613e75db6bf9ff4d72c1638 - languageName: node - linkType: hard - -"fill-range@npm:^7.1.1": - version: 7.1.1 - resolution: "fill-range@npm:7.1.1" - dependencies: - to-regex-range: "npm:^5.0.1" - checksum: 10c0/b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018 - languageName: node - linkType: hard - -"finalhandler@npm:~1.3.1": - version: 1.3.2 - resolution: "finalhandler@npm:1.3.2" - dependencies: - debug: "npm:2.6.9" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - on-finished: "npm:~2.4.1" - parseurl: "npm:~1.3.3" - statuses: "npm:~2.0.2" - unpipe: "npm:~1.0.0" - checksum: 10c0/435a4fd65e4e4e4c71bb5474980090b73c353a123dd415583f67836bdd6516e528cf07298e219a82b94631dee7830eae5eece38d3c178073cf7df4e8c182f413 - languageName: node - linkType: hard - -"find-replace@npm:^3.0.0": - version: 3.0.0 - resolution: "find-replace@npm:3.0.0" - dependencies: - array-back: "npm:^3.0.1" - checksum: 10c0/fcd1bf7960388c8193c2861bcdc760c18ac14edb4bde062a961915d9a25727b2e8aabf0229e90cc09c753fd557e5a3e5ae61e49cadbe727be89a9e8e49ce7668 - languageName: node - linkType: hard - -"find-up@npm:3.0.0, find-up@npm:^3.0.0": - version: 3.0.0 - resolution: "find-up@npm:3.0.0" - dependencies: - locate-path: "npm:^3.0.0" - checksum: 10c0/2c2e7d0a26db858e2f624f39038c74739e38306dee42b45f404f770db357947be9d0d587f1cac72d20c114deb38aa57316e879eb0a78b17b46da7dab0a3bd6e3 - languageName: node - linkType: hard - -"find-up@npm:^5.0.0": - version: 5.0.0 - resolution: "find-up@npm:5.0.0" - dependencies: - locate-path: "npm:^6.0.0" - path-exists: "npm:^4.0.0" - checksum: 10c0/062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a - languageName: node - linkType: hard - -"flat-cache@npm:^4.0.0": - version: 4.0.1 - resolution: "flat-cache@npm:4.0.1" - dependencies: - flatted: "npm:^3.2.9" - keyv: "npm:^4.5.4" - checksum: 10c0/2c59d93e9faa2523e4fda6b4ada749bed432cfa28c8e251f33b25795e426a1c6dbada777afb1f74fcfff33934fdbdea921ee738fcc33e71adc9d6eca984a1cfc - languageName: node - linkType: hard - -"flat@npm:^4.1.0": - version: 4.1.1 - resolution: "flat@npm:4.1.1" - dependencies: - is-buffer: "npm:~2.0.3" - bin: - flat: cli.js - checksum: 10c0/5a94ddd3162275ddf10898d68968005388e1a3ef31a91d9dc1d53891caa1f143e4d03b9e8c88ca6b46782be19d153a9ca90899937f234c8fb3b58e7b03aa3615 - languageName: node - linkType: hard - -"flat@npm:^5.0.2": - version: 5.0.2 - resolution: "flat@npm:5.0.2" - bin: - flat: cli.js - checksum: 10c0/f178b13482f0cd80c7fede05f4d10585b1f2fdebf26e12edc138e32d3150c6ea6482b7f12813a1091143bad52bb6d3596bca51a162257a21163c0ff438baa5fe - languageName: node - linkType: hard - -"flatted@npm:^3.2.9": - version: 3.3.3 - resolution: "flatted@npm:3.3.3" - checksum: 10c0/e957a1c6b0254aa15b8cce8533e24165abd98fadc98575db082b786b5da1b7d72062b81bfdcd1da2f4d46b6ed93bec2434e62333e9b4261d79ef2e75a10dd538 - languageName: node - linkType: hard - -"fmix@npm:^0.1.0": - version: 0.1.0 - resolution: "fmix@npm:0.1.0" - dependencies: - imul: "npm:^1.0.0" - checksum: 10c0/af9e54eacc00b46e1c4a77229840e37252fff7634f81026591da9d24438ca15a1afa2786f579eb7865489ded21b76af7327d111b90b944e7409cd60f4d4f2ded - languageName: node - linkType: hard - -"follow-redirects@npm:^1.12.1, follow-redirects@npm:^1.14.0, follow-redirects@npm:^1.15.4, follow-redirects@npm:^1.15.6": - version: 1.15.11 - resolution: "follow-redirects@npm:1.15.11" - peerDependenciesMeta: - debug: - optional: true - checksum: 10c0/d301f430542520a54058d4aeeb453233c564aaccac835d29d15e050beb33f339ad67d9bddbce01739c5dc46a6716dbe3d9d0d5134b1ca203effa11a7ef092343 - languageName: node - linkType: hard - -"for-each@npm:^0.3.3, for-each@npm:^0.3.5": - version: 0.3.5 - resolution: "for-each@npm:0.3.5" - dependencies: - is-callable: "npm:^1.2.7" - checksum: 10c0/0e0b50f6a843a282637d43674d1fb278dda1dd85f4f99b640024cfb10b85058aac0cc781bf689d5fe50b4b7f638e91e548560723a4e76e04fe96ae35ef039cee - languageName: node - linkType: hard - -"foreground-child@npm:^3.1.0": - version: 3.3.1 - resolution: "foreground-child@npm:3.3.1" - dependencies: - cross-spawn: "npm:^7.0.6" - signal-exit: "npm:^4.0.1" - checksum: 10c0/8986e4af2430896e65bc2788d6679067294d6aee9545daefc84923a0a4b399ad9c7a3ea7bd8c0b2b80fdf4a92de4c69df3f628233ff3224260e9c1541a9e9ed3 - languageName: node - linkType: hard - -"forever-agent@npm:~0.6.1": - version: 0.6.1 - resolution: "forever-agent@npm:0.6.1" - checksum: 10c0/364f7f5f7d93ab661455351ce116a67877b66f59aca199559a999bd39e3cfadbfbfacc10415a915255e2210b30c23febe9aec3ca16bf2d1ff11c935a1000e24c - languageName: node - linkType: hard - -"forge-std@npm:^1.1.2": - version: 1.1.2 - resolution: "forge-std@npm:1.1.2" - checksum: 10c0/8e6c4de83323f92dfcd29c53b385d7253833f1028ad44780c4499d62d6778a61d6187d17065cd7d96f55c7c1227b7b32da5a45c87d450b4445da74b7d37a6ed2 - languageName: node - linkType: hard - -"form-data@npm:^2.2.0": - version: 2.5.5 - resolution: "form-data@npm:2.5.5" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.8" - es-set-tostringtag: "npm:^2.1.0" - hasown: "npm:^2.0.2" - mime-types: "npm:^2.1.35" - safe-buffer: "npm:^5.2.1" - checksum: 10c0/7fb70447849fc9bce4d01fe9a626f6587441f85779a2803b67f803e1ab52b0bd78db0a7acd80d944c665f68ca90936c327f1244b730719b638a0219e98b20488 - languageName: node - linkType: hard - -"form-data@npm:^4.0.0, form-data@npm:^4.0.4": - version: 4.0.5 - resolution: "form-data@npm:4.0.5" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.8" - es-set-tostringtag: "npm:^2.1.0" - hasown: "npm:^2.0.2" - mime-types: "npm:^2.1.12" - checksum: 10c0/dd6b767ee0bbd6d84039db12a0fa5a2028160ffbfaba1800695713b46ae974a5f6e08b3356c3195137f8530dcd9dfcb5d5ae1eeff53d0db1e5aad863b619ce3b - languageName: node - linkType: hard - -"form-data@npm:~2.3.2": - version: 2.3.3 - resolution: "form-data@npm:2.3.3" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.6" - mime-types: "npm:^2.1.12" - checksum: 10c0/706ef1e5649286b6a61e5bb87993a9842807fd8f149cd2548ee807ea4fb882247bdf7f6e64ac4720029c0cd5c80343de0e22eee1dc9e9882e12db9cc7bc016a4 - languageName: node - linkType: hard - -"forwarded@npm:0.2.0": - version: 0.2.0 - resolution: "forwarded@npm:0.2.0" - checksum: 10c0/9b67c3fac86acdbc9ae47ba1ddd5f2f81526fa4c8226863ede5600a3f7c7416ef451f6f1e240a3cc32d0fd79fcfe6beb08fd0da454f360032bde70bf80afbb33 - languageName: node - linkType: hard - -"fp-ts@npm:1.19.3": - version: 1.19.3 - resolution: "fp-ts@npm:1.19.3" - checksum: 10c0/a016cfc98ad5e61564ab2d53a5379bbb8254642b66df13ced47e8c1d8d507abf4588d8bb43530198dfe1907211d8bae8f112cab52ba0ac6ab055da9168a6e260 - languageName: node - linkType: hard - -"fp-ts@npm:^1.0.0": - version: 1.19.5 - resolution: "fp-ts@npm:1.19.5" - checksum: 10c0/2a330fa1779561307740c26a7255fdffeb1ca2d0c7448d4dc094b477b772b0c8f7da1dfc88569b6f13f6958169b63b5df7361e514535b46b2e215bbf03a3722d - languageName: node - linkType: hard - -"fraction.js@npm:4.3.4": - version: 4.3.4 - resolution: "fraction.js@npm:4.3.4" - checksum: 10c0/095f60a914637b996ee1a4758edd529bee7379aecd528d3cf641402ec1225c3146ec2b4a8575d58aa48600c5ee79dcc9e7dd799076acff4cfdeed8e73541cdf1 - languageName: node - linkType: hard - -"fraction.js@npm:^4.2.0": - version: 4.3.7 - resolution: "fraction.js@npm:4.3.7" - checksum: 10c0/df291391beea9ab4c263487ffd9d17fed162dbb736982dee1379b2a8cc94e4e24e46ed508c6d278aded9080ba51872f1bc5f3a5fd8d7c74e5f105b508ac28711 - languageName: node - linkType: hard - -"fresh@npm:~0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 10c0/c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a - languageName: node - linkType: hard - -"from-exponential@npm:^1.1.1": - version: 1.1.1 - resolution: "from-exponential@npm:1.1.1" - checksum: 10c0/b0f81fae79c94017e818f59e232a16dcdac9bffe005a2ca65cb6d9e9e3e8a694bd1b45e6bf7c3b5137cea74f4fb29e36a89a1472cfe28247aea2b12ac10cf85b - languageName: node - linkType: hard - -"fs-extra@npm:^7.0.0, fs-extra@npm:^7.0.1": - version: 7.0.1 - resolution: "fs-extra@npm:7.0.1" - dependencies: - graceful-fs: "npm:^4.1.2" - jsonfile: "npm:^4.0.0" - universalify: "npm:^0.1.0" - checksum: 10c0/1943bb2150007e3739921b8d13d4109abdc3cc481e53b97b7ea7f77eda1c3c642e27ae49eac3af074e3496ea02fde30f411ef410c760c70a38b92e656e5da784 - languageName: node - linkType: hard - -"fs-minipass@npm:^3.0.0": - version: 3.0.3 - resolution: "fs-minipass@npm:3.0.3" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94 - languageName: node - linkType: hard - -"fs-readdir-recursive@npm:^1.1.0": - version: 1.1.0 - resolution: "fs-readdir-recursive@npm:1.1.0" - checksum: 10c0/7e190393952143e674b6d1ad4abcafa1b5d3e337fcc21b0cb051079a7140a54617a7df193d562ef9faf21bd7b2148a38601b3d5c16261fa76f278d88dc69989c - languageName: node - linkType: hard - -"fs.realpath@npm:^1.0.0": - version: 1.0.0 - resolution: "fs.realpath@npm:1.0.0" - checksum: 10c0/444cf1291d997165dfd4c0d58b69f0e4782bfd9149fd72faa4fe299e68e0e93d6db941660b37dd29153bf7186672ececa3b50b7e7249477b03fdf850f287c948 - languageName: node - linkType: hard - -"fsevents@npm:~2.1.1": - version: 2.1.3 - resolution: "fsevents@npm:2.1.3" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/87b5933c5e01d17883f5c6d8c84146dc12c75e7f349b465c9e41fb4efe9992cfc6f527e30ef5f96bc24f19ca36d9e7414c0fe2dcd519f6d7649c0668efe12556 - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@npm:~2.3.2": - version: 2.3.3 - resolution: "fsevents@npm:2.3.3" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@patch:fsevents@npm%3A~2.1.1#optional!builtin": - version: 2.1.3 - resolution: "fsevents@patch:fsevents@npm%3A2.1.3#optional!builtin::version=2.1.3&hash=31d12a" - dependencies: - node-gyp: "npm:latest" - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin": - version: 2.3.3 - resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" - dependencies: - node-gyp: "npm:latest" - conditions: os=darwin - languageName: node - linkType: hard - -"function-bind@npm:^1.1.1, function-bind@npm:^1.1.2": - version: 1.1.2 - resolution: "function-bind@npm:1.1.2" - checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5 - languageName: node - linkType: hard - -"function.prototype.name@npm:^1.1.6, function.prototype.name@npm:^1.1.8": - version: 1.1.8 - resolution: "function.prototype.name@npm:1.1.8" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - define-properties: "npm:^1.2.1" - functions-have-names: "npm:^1.2.3" - hasown: "npm:^2.0.2" - is-callable: "npm:^1.2.7" - checksum: 10c0/e920a2ab52663005f3cbe7ee3373e3c71c1fb5558b0b0548648cdf3e51961085032458e26c71ff1a8c8c20e7ee7caeb03d43a5d1fa8610c459333323a2e71253 - languageName: node - linkType: hard - -"functional-red-black-tree@npm:^1.0.1, functional-red-black-tree@npm:~1.0.1": - version: 1.0.1 - resolution: "functional-red-black-tree@npm:1.0.1" - checksum: 10c0/5959eed0375803d9924f47688479bb017e0c6816a0e5ac151e22ba6bfe1d12c41de2f339188885e0aa8eeea2072dad509d8e4448467e816bde0a2ca86a0670d3 - languageName: node - linkType: hard - -"functions-have-names@npm:^1.2.3": - version: 1.2.3 - resolution: "functions-have-names@npm:1.2.3" - checksum: 10c0/33e77fd29bddc2d9bb78ab3eb854c165909201f88c75faa8272e35899e2d35a8a642a15e7420ef945e1f64a9670d6aa3ec744106b2aa42be68ca5114025954ca - languageName: node - linkType: hard - -"ganache-cli@npm:^6.12.2": - version: 6.12.2 - resolution: "ganache-cli@npm:6.12.2" - dependencies: - ethereumjs-util: "npm:6.2.1" - source-map-support: "npm:0.5.12" - yargs: "npm:13.2.4" - bin: - ganache-cli: cli.js - checksum: 10c0/15fb0410b9a04e9477232482901a53fb9de6464128fe790d1d714d722324b85a6b7e3889e661bc1d36a82bdf3e99631b04c27b600908c837aeaa57499cea0723 - languageName: node - linkType: hard - -"ganache@npm:7.4.3": - version: 7.4.3 - resolution: "ganache@npm:7.4.3" - dependencies: - "@trufflesuite/bigint-buffer": "npm:1.1.10" - "@types/bn.js": "npm:^5.1.0" - "@types/lru-cache": "npm:5.1.1" - "@types/seedrandom": "npm:3.0.1" - bufferutil: "npm:4.0.5" - emittery: "npm:0.10.0" - keccak: "npm:3.0.2" - leveldown: "npm:6.1.0" - secp256k1: "npm:4.0.3" - utf-8-validate: "npm:5.0.7" - dependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - bin: - ganache: dist/node/cli.js - ganache-cli: dist/node/cli.js - checksum: 10c0/37b08ba71801db75229285457e6db089c388135b74104bd698d99120241e2879f70afbde36e68a3cd68fc9bc60a25cdf23c96a29ce0e67d2792ea11be7637cb2 - languageName: node - linkType: hard - -"generator-function@npm:^2.0.0": - version: 2.0.1 - resolution: "generator-function@npm:2.0.1" - checksum: 10c0/8a9f59df0f01cfefafdb3b451b80555e5cf6d76487095db91ac461a0e682e4ff7a9dbce15f4ecec191e53586d59eece01949e05a4b4492879600bbbe8e28d6b8 - languageName: node - linkType: hard - -"get-caller-file@npm:^2.0.1, get-caller-file@npm:^2.0.5": - version: 2.0.5 - resolution: "get-caller-file@npm:2.0.5" - checksum: 10c0/c6c7b60271931fa752aeb92f2b47e355eac1af3a2673f47c9589e8f8a41adc74d45551c1bc57b5e66a80609f10ffb72b6f575e4370d61cc3f7f3aaff01757cde - languageName: node - linkType: hard - -"get-func-name@npm:^2.0.1, get-func-name@npm:^2.0.2": - version: 2.0.2 - resolution: "get-func-name@npm:2.0.2" - checksum: 10c0/89830fd07623fa73429a711b9daecdb304386d237c71268007f788f113505ef1d4cc2d0b9680e072c5082490aec9df5d7758bf5ac6f1c37062855e8e3dc0b9df - languageName: node - linkType: hard - -"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.2.7, get-intrinsic@npm:^1.3.0": - version: 1.3.0 - resolution: "get-intrinsic@npm:1.3.0" - dependencies: - call-bind-apply-helpers: "npm:^1.0.2" - es-define-property: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - function-bind: "npm:^1.1.2" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - hasown: "npm:^2.0.2" - math-intrinsics: "npm:^1.1.0" - checksum: 10c0/52c81808af9a8130f581e6a6a83e1ba4a9f703359e7a438d1369a5267a25412322f03dcbd7c549edaef0b6214a0630a28511d7df0130c93cfd380f4fa0b5b66a - languageName: node - linkType: hard - -"get-port@npm:^3.1.0": - version: 3.2.0 - resolution: "get-port@npm:3.2.0" - checksum: 10c0/1b6c3fe89074be3753d9ddf3d67126ea351ab9890537fe53fefebc2912d1d66fdc112451bbc76d33ae5ceb6ca70be2a91017944e3ee8fb0814ac9b295bf2a5b8 - languageName: node - linkType: hard - -"get-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "get-proto@npm:1.0.1" - dependencies: - dunder-proto: "npm:^1.0.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c - languageName: node - linkType: hard - -"get-stream@npm:^4.0.0": - version: 4.1.0 - resolution: "get-stream@npm:4.1.0" - dependencies: - pump: "npm:^3.0.0" - checksum: 10c0/294d876f667694a5ca23f0ca2156de67da950433b6fb53024833733975d32582896dbc7f257842d331809979efccf04d5e0b6b75ad4d45744c45f193fd497539 - languageName: node - linkType: hard - -"get-symbol-description@npm:^1.1.0": - version: 1.1.0 - resolution: "get-symbol-description@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - checksum: 10c0/d6a7d6afca375779a4b307738c9e80dbf7afc0bdbe5948768d54ab9653c865523d8920e670991a925936eb524b7cb6a6361d199a760b21d0ca7620194455aa4b - languageName: node - linkType: hard - -"getpass@npm:^0.1.1": - version: 0.1.7 - resolution: "getpass@npm:0.1.7" - dependencies: - assert-plus: "npm:^1.0.0" - checksum: 10c0/c13f8530ecf16fc509f3fa5cd8dd2129ffa5d0c7ccdf5728b6022d52954c2d24be3706b4cdf15333eec52f1fbb43feb70a01dabc639d1d10071e371da8aaa52f - languageName: node - linkType: hard - -"glob-parent@npm:^6.0.2": - version: 6.0.2 - resolution: "glob-parent@npm:6.0.2" - dependencies: - is-glob: "npm:^4.0.3" - checksum: 10c0/317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8 - languageName: node - linkType: hard - -"glob-parent@npm:~5.1.0, glob-parent@npm:~5.1.2": - version: 5.1.2 - resolution: "glob-parent@npm:5.1.2" - dependencies: - is-glob: "npm:^4.0.1" - checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee - languageName: node - linkType: hard - -"glob@npm:10.3.0": - version: 10.3.0 - resolution: "glob@npm:10.3.0" - dependencies: - foreground-child: "npm:^3.1.0" - jackspeak: "npm:^2.0.3" - minimatch: "npm:^9.0.1" - minipass: "npm:^5.0.0 || ^6.0.2" - path-scurry: "npm:^1.7.0" - bin: - glob: dist/cjs/src/bin.js - checksum: 10c0/0ed8f32c3ff68710b9c09d6988901bca7b20f4786e7617d2ccdc6673efaf391b562e483871747d625415c394f61abda22a6adfdce554019ad09b7515292041f9 - languageName: node - linkType: hard - -"glob@npm:7.1.3": - version: 7.1.3 - resolution: "glob@npm:7.1.3" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^3.0.4" - once: "npm:^1.3.0" - path-is-absolute: "npm:^1.0.0" - checksum: 10c0/7ffc36238ebbceb2868e2c1244a3eda7281c602b89cc785ddeb32e6b6fd2ca92adcf6ac0886e86dcd08bd40c96689865ffbf90fce49df402a49ed9ef5e3522e4 - languageName: node - linkType: hard - -"glob@npm:7.1.7": - version: 7.1.7 - resolution: "glob@npm:7.1.7" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^3.0.4" - once: "npm:^1.3.0" - path-is-absolute: "npm:^1.0.0" - checksum: 10c0/173245e6f9ccf904309eb7ef4a44a11f3bf68e9e341dff5a28b5db0dd7123b7506daf41497f3437a0710f57198187b758c2351eeaabce4d16935e956920da6a4 - languageName: node - linkType: hard - -"glob@npm:^13.0.0": - version: 13.0.0 - resolution: "glob@npm:13.0.0" - dependencies: - minimatch: "npm:^10.1.1" - minipass: "npm:^7.1.2" - path-scurry: "npm:^2.0.0" - checksum: 10c0/8e2f5821f3f7c312dd102e23a15b80c79e0837a9872784293ba2e15ec73b3f3749a49a42a31bfcb4e52c84820a474e92331c2eebf18819d20308f5c33876630a - languageName: node - linkType: hard - -"glob@npm:^8.1.0": - version: 8.1.0 - resolution: "glob@npm:8.1.0" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^5.0.1" - once: "npm:^1.3.0" - checksum: 10c0/cb0b5cab17a59c57299376abe5646c7070f8acb89df5595b492dba3bfb43d301a46c01e5695f01154e6553168207cb60d4eaf07d3be4bc3eb9b0457c5c561d0f - languageName: node - linkType: hard - -"globals@npm:^14.0.0": - version: 14.0.0 - resolution: "globals@npm:14.0.0" - checksum: 10c0/b96ff42620c9231ad468d4c58ff42afee7777ee1c963013ff8aabe095a451d0ceeb8dcd8ef4cbd64d2538cef45f787a78ba3a9574f4a634438963e334471302d - languageName: node - linkType: hard - -"globalthis@npm:^1.0.4": - version: 1.0.4 - resolution: "globalthis@npm:1.0.4" - dependencies: - define-properties: "npm:^1.2.1" - gopd: "npm:^1.0.1" - checksum: 10c0/9d156f313af79d80b1566b93e19285f481c591ad6d0d319b4be5e03750d004dde40a39a0f26f7e635f9007a3600802f53ecd85a759b86f109e80a5f705e01846 - languageName: node - linkType: hard - -"gopd@npm:^1.0.1, gopd@npm:^1.2.0": - version: 1.2.0 - resolution: "gopd@npm:1.2.0" - checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead - languageName: node - linkType: hard - -"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6": - version: 4.2.11 - resolution: "graceful-fs@npm:4.2.11" - checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 - languageName: node - linkType: hard - -"growl@npm:1.10.5": - version: 1.10.5 - resolution: "growl@npm:1.10.5" - checksum: 10c0/a6a8f4df1269ac321f9e41c310552f3568768160942b6c9a7c116fcff1e3921f6a48fb7520689660412f7d1e5d46f76214e05406b23eee9e213830fdc2f772fe - languageName: node - linkType: hard - -"har-schema@npm:^2.0.0": - version: 2.0.0 - resolution: "har-schema@npm:2.0.0" - checksum: 10c0/3856cb76152658e0002b9c2b45b4360bb26b3e832c823caed8fcf39a01096030bf09fa5685c0f7b0f2cb3ecba6e9dce17edaf28b64a423d6201092e6be56e592 - languageName: node - linkType: hard - -"har-validator@npm:~5.1.3": - version: 5.1.5 - resolution: "har-validator@npm:5.1.5" - dependencies: - ajv: "npm:^6.12.3" - har-schema: "npm:^2.0.0" - checksum: 10c0/f1d606eb1021839e3a905be5ef7cca81c2256a6be0748efb8fefc14312214f9e6c15d7f2eaf37514104071207d84f627b68bb9f6178703da4e06fbd1a0649a5e - languageName: node - linkType: hard - -"hardhat-contract-sizer@npm:^2.8.0": - version: 2.10.1 - resolution: "hardhat-contract-sizer@npm:2.10.1" - dependencies: - chalk: "npm:^4.0.0" - cli-table3: "npm:^0.6.0" - strip-ansi: "npm:^6.0.0" - peerDependencies: - hardhat: ^2.0.0 - checksum: 10c0/c339c91d166ba27c4230682690d1c0ca5f104dc55001983e152236f73717bf5f97aeb8ac601fd0e2037e7ba1789c998726bf367e0ddd2c268ab40b33f51dcef1 - languageName: node - linkType: hard - -"hardhat-gas-reporter@npm:^1.0.4": - version: 1.0.10 - resolution: "hardhat-gas-reporter@npm:1.0.10" - dependencies: - array-uniq: "npm:1.0.3" - eth-gas-reporter: "npm:^0.2.25" - sha1: "npm:^1.1.1" - peerDependencies: - hardhat: ^2.0.2 - checksum: 10c0/3711ea331bcbbff4d37057cb3de47a9127011e3ee128c2254a68f3b7f12ab2133965cbcfa3a7ce1bba8461f3b1bda1b175c4814a048c8b06b3ad450001d119d8 - languageName: node - linkType: hard - -"hardhat-preprocessor@npm:^0.1.5": - version: 0.1.5 - resolution: "hardhat-preprocessor@npm:0.1.5" - dependencies: - murmur-128: "npm:^0.2.1" - peerDependencies: - hardhat: ^2.0.5 - checksum: 10c0/bdc0990b3f95c7fc7ebc0cab5200e4934e5b2dc489574c521747329146e0a242b7109b875dedf61bf5cb3f1785a0a600139c4872529d36b83f48639a3f7eb2d1 - languageName: node - linkType: hard - -"hardhat-tracer@npm:^1.1.0-rc.9": - version: 1.3.0 - resolution: "hardhat-tracer@npm:1.3.0" - dependencies: - ethers: "npm:^5.6.1" - peerDependencies: - chalk: 4.x - ethers: 5.x - hardhat: 2.x - checksum: 10c0/488d8e704cc5ddcd9d536b33d1dc8a126b129ee24c8ff3b345bfc14703b251621ab606de2587a2aef6ae9b23bdf051d83997c7adb002add357a097a9deca3ecb - languageName: node - linkType: hard - -"hardhat@npm:2.26.0": - version: 2.26.0 - resolution: "hardhat@npm:2.26.0" - dependencies: - "@ethereumjs/util": "npm:^9.1.0" - "@ethersproject/abi": "npm:^5.1.2" - "@nomicfoundation/edr": "npm:^0.11.3" - "@nomicfoundation/solidity-analyzer": "npm:^0.1.0" - "@sentry/node": "npm:^5.18.1" - adm-zip: "npm:^0.4.16" - aggregate-error: "npm:^3.0.0" - ansi-escapes: "npm:^4.3.0" - boxen: "npm:^5.1.2" - chokidar: "npm:^4.0.0" - ci-info: "npm:^2.0.0" - debug: "npm:^4.1.1" - enquirer: "npm:^2.3.0" - env-paths: "npm:^2.2.0" - ethereum-cryptography: "npm:^1.0.3" - find-up: "npm:^5.0.0" - fp-ts: "npm:1.19.3" - fs-extra: "npm:^7.0.1" - immutable: "npm:^4.0.0-rc.12" - io-ts: "npm:1.10.4" - json-stream-stringify: "npm:^3.1.4" - keccak: "npm:^3.0.2" - lodash: "npm:^4.17.11" - micro-eth-signer: "npm:^0.16.0" - mnemonist: "npm:^0.38.0" - mocha: "npm:^10.0.0" - p-map: "npm:^4.0.0" - picocolors: "npm:^1.1.0" - raw-body: "npm:^2.4.1" - resolve: "npm:1.17.0" - semver: "npm:^6.3.0" - solc: "npm:0.8.26" - source-map-support: "npm:^0.5.13" - stacktrace-parser: "npm:^0.1.10" - tinyglobby: "npm:^0.2.6" - tsort: "npm:0.0.1" - undici: "npm:^5.14.0" - uuid: "npm:^8.3.2" - ws: "npm:^7.4.6" - peerDependencies: - ts-node: "*" - typescript: "*" - peerDependenciesMeta: - ts-node: - optional: true - typescript: - optional: true - bin: - hardhat: internal/cli/bootstrap.js - checksum: 10c0/8f94dc8ecc73a590723a3b5d45e29e5fdd16ece0164ef705d571e8bd895944b14d7d294d17fd231b811438f69bd79465ec16252404cf00d39cfcb43f5a84ae35 - languageName: node - linkType: hard - -"has-bigints@npm:^1.0.2": - version: 1.1.0 - resolution: "has-bigints@npm:1.1.0" - checksum: 10c0/2de0cdc4a1ccf7a1e75ffede1876994525ac03cc6f5ae7392d3415dd475cd9eee5bceec63669ab61aa997ff6cceebb50ef75561c7002bed8988de2b9d1b40788 - languageName: node - linkType: hard - -"has-flag@npm:^3.0.0": - version: 3.0.0 - resolution: "has-flag@npm:3.0.0" - checksum: 10c0/1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473 - languageName: node - linkType: hard - -"has-flag@npm:^4.0.0": - version: 4.0.0 - resolution: "has-flag@npm:4.0.0" - checksum: 10c0/2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1 - languageName: node - linkType: hard - -"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.2": - version: 1.0.2 - resolution: "has-property-descriptors@npm:1.0.2" - dependencies: - es-define-property: "npm:^1.0.0" - checksum: 10c0/253c1f59e80bb476cf0dde8ff5284505d90c3bdb762983c3514d36414290475fe3fd6f574929d84de2a8eec00d35cf07cb6776205ff32efd7c50719125f00236 - languageName: node - linkType: hard - -"has-proto@npm:^1.2.0": - version: 1.2.0 - resolution: "has-proto@npm:1.2.0" - dependencies: - dunder-proto: "npm:^1.0.0" - checksum: 10c0/46538dddab297ec2f43923c3d35237df45d8c55a6fc1067031e04c13ed8a9a8f94954460632fd4da84c31a1721eefee16d901cbb1ae9602bab93bb6e08f93b95 - languageName: node - linkType: hard - -"has-symbols@npm:^1.0.0, has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": - version: 1.1.0 - resolution: "has-symbols@npm:1.1.0" - checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e - languageName: node - linkType: hard - -"has-tostringtag@npm:^1.0.2": - version: 1.0.2 - resolution: "has-tostringtag@npm:1.0.2" - dependencies: - has-symbols: "npm:^1.0.3" - checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c - languageName: node - linkType: hard - -"hash-base@npm:^3.0.0, hash-base@npm:^3.1.2": - version: 3.1.2 - resolution: "hash-base@npm:3.1.2" - dependencies: - inherits: "npm:^2.0.4" - readable-stream: "npm:^2.3.8" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.1" - checksum: 10c0/f3b7fae1853b31340048dd659f40f5260ca6f3ff53b932f807f4ab701ee09039f6e9dbe1841723ff61e20f3f69d6387a352e4ccc5f997dedb0d375c7d88bc15e - languageName: node - linkType: hard - -"hash.js@npm:1.1.3": - version: 1.1.3 - resolution: "hash.js@npm:1.1.3" - dependencies: - inherits: "npm:^2.0.3" - minimalistic-assert: "npm:^1.0.0" - checksum: 10c0/f085a856c31d51556f6153edcd4bb1c01a9d22e5882a7b9bae4e813c4abfad012d060b8fde1b993e353d6af1cf82b094599b65348cb529ca19a4b80ab32efded - languageName: node - linkType: hard - -"hash.js@npm:1.1.7, hash.js@npm:^1.0.0, hash.js@npm:^1.0.3, hash.js@npm:^1.1.7": - version: 1.1.7 - resolution: "hash.js@npm:1.1.7" - dependencies: - inherits: "npm:^2.0.3" - minimalistic-assert: "npm:^1.0.1" - checksum: 10c0/41ada59494eac5332cfc1ce6b7ebdd7b88a3864a6d6b08a3ea8ef261332ed60f37f10877e0c825aaa4bddebf164fbffa618286aeeec5296675e2671cbfa746c4 - languageName: node - linkType: hard - -"hasown@npm:^2.0.2": - version: 2.0.2 - resolution: "hasown@npm:2.0.2" - dependencies: - function-bind: "npm:^1.1.2" - checksum: 10c0/3769d434703b8ac66b209a4cca0737519925bbdb61dd887f93a16372b14694c63ff4e797686d87c90f08168e81082248b9b028bad60d4da9e0d1148766f56eb9 - languageName: node - linkType: hard - -"he@npm:1.2.0, he@npm:^1.2.0": - version: 1.2.0 - resolution: "he@npm:1.2.0" - bin: - he: bin/he - checksum: 10c0/a27d478befe3c8192f006cdd0639a66798979dfa6e2125c6ac582a19a5ebfec62ad83e8382e6036170d873f46e4536a7e795bf8b95bf7c247f4cc0825ccc8c17 - languageName: node - linkType: hard - -"hmac-drbg@npm:^1.0.1": - version: 1.0.1 - resolution: "hmac-drbg@npm:1.0.1" - dependencies: - hash.js: "npm:^1.0.3" - minimalistic-assert: "npm:^1.0.0" - minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 10c0/f3d9ba31b40257a573f162176ac5930109816036c59a09f901eb2ffd7e5e705c6832bedfff507957125f2086a0ab8f853c0df225642a88bf1fcaea945f20600d - languageName: node - linkType: hard - -"hosted-git-info@npm:^2.6.0": - version: 2.8.9 - resolution: "hosted-git-info@npm:2.8.9" - checksum: 10c0/317cbc6b1bbbe23c2a40ae23f3dafe9fa349ce42a89a36f930e3f9c0530c179a3882d2ef1e4141a4c3674d6faaea862138ec55b43ad6f75e387fda2483a13c70 - languageName: node - linkType: hard - -"http-basic@npm:^8.1.1": - version: 8.1.3 - resolution: "http-basic@npm:8.1.3" - dependencies: - caseless: "npm:^0.12.0" - concat-stream: "npm:^1.6.2" - http-response-object: "npm:^3.0.1" - parse-cache-control: "npm:^1.0.1" - checksum: 10c0/dbc67b943067db7f43d1dd94539f874e6b78614227491c0a5c0acb9b0490467a4ec97247da21eb198f8968a5dc4089160165cb0103045cadb9b47bb844739752 - languageName: node - linkType: hard - -"http-cache-semantics@npm:^4.1.1": - version: 4.2.0 - resolution: "http-cache-semantics@npm:4.2.0" - checksum: 10c0/45b66a945cf13ec2d1f29432277201313babf4a01d9e52f44b31ca923434083afeca03f18417f599c9ab3d0e7b618ceb21257542338b57c54b710463b4a53e37 - languageName: node - linkType: hard - -"http-errors@npm:~2.0.0, http-errors@npm:~2.0.1": - version: 2.0.1 - resolution: "http-errors@npm:2.0.1" - dependencies: - depd: "npm:~2.0.0" - inherits: "npm:~2.0.4" - setprototypeof: "npm:~1.2.0" - statuses: "npm:~2.0.2" - toidentifier: "npm:~1.0.1" - checksum: 10c0/fb38906cef4f5c83952d97661fe14dc156cb59fe54812a42cd448fa57b5c5dfcb38a40a916957737bd6b87aab257c0648d63eb5b6a9ca9f548e105b6072712d4 - languageName: node - linkType: hard - -"http-proxy-agent@npm:^7.0.0": - version: 7.0.2 - resolution: "http-proxy-agent@npm:7.0.2" - dependencies: - agent-base: "npm:^7.1.0" - debug: "npm:^4.3.4" - checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921 - languageName: node - linkType: hard - -"http-response-object@npm:^3.0.1": - version: 3.0.2 - resolution: "http-response-object@npm:3.0.2" - dependencies: - "@types/node": "npm:^10.0.3" - checksum: 10c0/f161db99184087798563cb14c48a67eebe9405668a5ed2341faf85d3079a2c00262431df8e0ccbe274dc6415b6729179f12b09f875d13ad33d83401e4b1ed22e - languageName: node - linkType: hard - -"http-signature@npm:~1.2.0": - version: 1.2.0 - resolution: "http-signature@npm:1.2.0" - dependencies: - assert-plus: "npm:^1.0.0" - jsprim: "npm:^1.2.2" - sshpk: "npm:^1.7.0" - checksum: 10c0/582f7af7f354429e1fb19b3bbb9d35520843c69bb30a25b88ca3c5c2c10715f20ae7924e20cffbed220b1d3a726ef4fe8ccc48568d5744db87be9a79887d6733 - languageName: node - linkType: hard - -"https-proxy-agent@npm:^5.0.0": - version: 5.0.1 - resolution: "https-proxy-agent@npm:5.0.1" - dependencies: - agent-base: "npm:6" - debug: "npm:4" - checksum: 10c0/6dd639f03434003577c62b27cafdb864784ef19b2de430d8ae2a1d45e31c4fd60719e5637b44db1a88a046934307da7089e03d6089ec3ddacc1189d8de8897d1 - languageName: node - linkType: hard - -"https-proxy-agent@npm:^7.0.1": - version: 7.0.6 - resolution: "https-proxy-agent@npm:7.0.6" - dependencies: - agent-base: "npm:^7.1.2" - debug: "npm:4" - checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac - languageName: node - linkType: hard - -"iconv-lite@npm:^0.6.2": - version: 0.6.3 - resolution: "iconv-lite@npm:0.6.3" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3.0.0" - checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1 - languageName: node - linkType: hard - -"iconv-lite@npm:~0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3" - checksum: 10c0/c6886a24cc00f2a059767440ec1bc00d334a89f250db8e0f7feb4961c8727118457e27c495ba94d082e51d3baca378726cd110aaf7ded8b9bbfd6a44760cf1d4 - languageName: node - linkType: hard - -"ieee754@npm:^1.1.13, ieee754@npm:^1.1.4, ieee754@npm:^1.2.1": - version: 1.2.1 - resolution: "ieee754@npm:1.2.1" - checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb - languageName: node - linkType: hard - -"ignore@npm:^5.2.0": - version: 5.3.2 - resolution: "ignore@npm:5.3.2" - checksum: 10c0/f9f652c957983634ded1e7f02da3b559a0d4cc210fca3792cb67f1b153623c9c42efdc1c4121af171e295444459fc4a9201101fb041b1104a3c000bccb188337 - languageName: node - linkType: hard - -"immediate@npm:^3.2.3": - version: 3.3.0 - resolution: "immediate@npm:3.3.0" - checksum: 10c0/40eab095d5944ad79af054700beee97000271fde8743720932d8eb41ccbf2cb8c855ff95b128cf9a7fec523a4f11ee2e392b9f2fa6456b055b1160f1b4ad3e3b - languageName: node - linkType: hard - -"immediate@npm:~3.2.3": - version: 3.2.3 - resolution: "immediate@npm:3.2.3" - checksum: 10c0/e2affb7f1a1335a3d0404073bcec5e6b09cdd15f0a4ec82b9a0f0496add2e0b020843123c021238934c3eac8792f8d48f523c48e7c3c0cd45b540dc9d149adae - languageName: node - linkType: hard - -"immutable@npm:^4.0.0-rc.12": - version: 4.3.7 - resolution: "immutable@npm:4.3.7" - checksum: 10c0/9b099197081b22f6433003e34929da8ecddbbdc1474cdc8aa3b7669dee4adda349c06143de22def36016d1b6de5322b043eccd7a11db1dad2ca85dad4fff5435 - languageName: node - linkType: hard - -"import-fresh@npm:^3.2.1": - version: 3.3.1 - resolution: "import-fresh@npm:3.3.1" - dependencies: - parent-module: "npm:^1.0.0" - resolve-from: "npm:^4.0.0" - checksum: 10c0/bf8cc494872fef783249709385ae883b447e3eb09db0ebd15dcead7d9afe7224dad7bd7591c6b73b0b19b3c0f9640eb8ee884f01cfaf2887ab995b0b36a0cbec - languageName: node - linkType: hard - -"imul@npm:^1.0.0": - version: 1.0.1 - resolution: "imul@npm:1.0.1" - checksum: 10c0/d564c45a5017f01f965509ef409fad8175749bc96a52a95e1a09f05378d135fb37051cea7194d0eeca5147541d8e80d68853f5f681eef05f9f14f1d551edae2f - languageName: node - linkType: hard - -"imurmurhash@npm:^0.1.4": - version: 0.1.4 - resolution: "imurmurhash@npm:0.1.4" - checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6 - languageName: node - linkType: hard - -"indent-string@npm:^4.0.0": - version: 4.0.0 - resolution: "indent-string@npm:4.0.0" - checksum: 10c0/1e1904ddb0cb3d6cce7cd09e27a90184908b7a5d5c21b92e232c93579d314f0b83c246ffb035493d0504b1e9147ba2c9b21df0030f48673fba0496ecd698161f - languageName: node - linkType: hard - -"inflight@npm:^1.0.4": - version: 1.0.6 - resolution: "inflight@npm:1.0.6" - dependencies: - once: "npm:^1.3.0" - wrappy: "npm:1" - checksum: 10c0/7faca22584600a9dc5b9fca2cd5feb7135ac8c935449837b315676b4c90aa4f391ec4f42240178244b5a34e8bede1948627fda392ca3191522fc46b34e985ab2 - languageName: node - linkType: hard - -"inherits@npm:2, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.1, inherits@npm:~2.0.3, inherits@npm:~2.0.4": - version: 2.0.4 - resolution: "inherits@npm:2.0.4" - checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2 - languageName: node - linkType: hard - -"internal-slot@npm:^1.1.0": - version: 1.1.0 - resolution: "internal-slot@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - hasown: "npm:^2.0.2" - side-channel: "npm:^1.1.0" - checksum: 10c0/03966f5e259b009a9bf1a78d60da920df198af4318ec004f57b8aef1dd3fe377fbc8cce63a96e8c810010302654de89f9e19de1cd8ad0061d15be28a695465c7 - languageName: node - linkType: hard - -"invert-kv@npm:^2.0.0": - version: 2.0.0 - resolution: "invert-kv@npm:2.0.0" - checksum: 10c0/1a614b9025875e2009a23b8b56bfcbc7727e81ce949ccb6e0700caa6ce04ef92f0cbbcdb120528b6409317d08a7d5671044e520df48719437b5005ae6a1cbf74 - languageName: node - linkType: hard - -"io-ts@npm:1.10.4": - version: 1.10.4 - resolution: "io-ts@npm:1.10.4" - dependencies: - fp-ts: "npm:^1.0.0" - checksum: 10c0/9370988a7e17fc23c194115808168ccd1ccf7b7ebe92c39c1cc2fd91c1dc641552a5428bb04fe28c01c826fa4f230e856eb4f7d27c774a1400af3fecf2936ab5 - languageName: node - linkType: hard - -"ip-address@npm:^10.0.1": - version: 10.1.0 - resolution: "ip-address@npm:10.1.0" - checksum: 10c0/0103516cfa93f6433b3bd7333fa876eb21263912329bfa47010af5e16934eeeff86f3d2ae700a3744a137839ddfad62b900c7a445607884a49b5d1e32a3d7566 - languageName: node - linkType: hard - -"ipaddr.js@npm:1.9.1": - version: 1.9.1 - resolution: "ipaddr.js@npm:1.9.1" - checksum: 10c0/0486e775047971d3fdb5fb4f063829bac45af299ae0b82dcf3afa2145338e08290563a2a70f34b732d795ecc8311902e541a8530eeb30d75860a78ff4e94ce2a - languageName: node - linkType: hard - -"is-array-buffer@npm:^3.0.4, is-array-buffer@npm:^3.0.5": - version: 3.0.5 - resolution: "is-array-buffer@npm:3.0.5" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - get-intrinsic: "npm:^1.2.6" - checksum: 10c0/c5c9f25606e86dbb12e756694afbbff64bc8b348d1bc989324c037e1068695131930199d6ad381952715dad3a9569333817f0b1a72ce5af7f883ce802e49c83d - languageName: node - linkType: hard - -"is-async-function@npm:^2.0.0": - version: 2.1.1 - resolution: "is-async-function@npm:2.1.1" - dependencies: - async-function: "npm:^1.0.0" - call-bound: "npm:^1.0.3" - get-proto: "npm:^1.0.1" - has-tostringtag: "npm:^1.0.2" - safe-regex-test: "npm:^1.1.0" - checksum: 10c0/d70c236a5e82de6fc4d44368ffd0c2fee2b088b893511ce21e679da275a5ecc6015ff59a7d7e1bdd7ca39f71a8dbdd253cf8cce5c6b3c91cdd5b42b5ce677298 - languageName: node - linkType: hard - -"is-bigint@npm:^1.1.0": - version: 1.1.0 - resolution: "is-bigint@npm:1.1.0" - dependencies: - has-bigints: "npm:^1.0.2" - checksum: 10c0/f4f4b905ceb195be90a6ea7f34323bf1c18e3793f18922e3e9a73c684c29eeeeff5175605c3a3a74cc38185fe27758f07efba3dbae812e5c5afbc0d2316b40e4 - languageName: node - linkType: hard - -"is-binary-path@npm:~2.1.0": - version: 2.1.0 - resolution: "is-binary-path@npm:2.1.0" - dependencies: - binary-extensions: "npm:^2.0.0" - checksum: 10c0/a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38 - languageName: node - linkType: hard - -"is-boolean-object@npm:^1.2.1": - version: 1.2.2 - resolution: "is-boolean-object@npm:1.2.2" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/36ff6baf6bd18b3130186990026f5a95c709345c39cd368468e6c1b6ab52201e9fd26d8e1f4c066357b4938b0f0401e1a5000e08257787c1a02f3a719457001e - languageName: node - linkType: hard - -"is-buffer@npm:^2.0.5, is-buffer@npm:~2.0.3": - version: 2.0.5 - resolution: "is-buffer@npm:2.0.5" - checksum: 10c0/e603f6fced83cf94c53399cff3bda1a9f08e391b872b64a73793b0928be3e5f047f2bcece230edb7632eaea2acdbfcb56c23b33d8a20c820023b230f1485679a - languageName: node - linkType: hard - -"is-callable@npm:^1.2.7": - version: 1.2.7 - resolution: "is-callable@npm:1.2.7" - checksum: 10c0/ceebaeb9d92e8adee604076971dd6000d38d6afc40bb843ea8e45c5579b57671c3f3b50d7f04869618242c6cee08d1b67806a8cb8edaaaf7c0748b3720d6066f - languageName: node - linkType: hard - -"is-data-view@npm:^1.0.1, is-data-view@npm:^1.0.2": - version: 1.0.2 - resolution: "is-data-view@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.6" - is-typed-array: "npm:^1.1.13" - checksum: 10c0/ef3548a99d7e7f1370ce21006baca6d40c73e9f15c941f89f0049c79714c873d03b02dae1c64b3f861f55163ecc16da06506c5b8a1d4f16650b3d9351c380153 - languageName: node - linkType: hard - -"is-date-object@npm:^1.0.5, is-date-object@npm:^1.1.0": - version: 1.1.0 - resolution: "is-date-object@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.2" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/1a4d199c8e9e9cac5128d32e6626fa7805175af9df015620ac0d5d45854ccf348ba494679d872d37301032e35a54fc7978fba1687e8721b2139aea7870cafa2f - languageName: node - linkType: hard - -"is-extglob@npm:^2.1.1": - version: 2.1.1 - resolution: "is-extglob@npm:2.1.1" - checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912 - languageName: node - linkType: hard - -"is-finalizationregistry@npm:^1.1.0": - version: 1.1.1 - resolution: "is-finalizationregistry@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10c0/818dff679b64f19e228a8205a1e2d09989a98e98def3a817f889208cfcbf918d321b251aadf2c05918194803ebd2eb01b14fc9d0b2bea53d984f4137bfca5e97 - languageName: node - linkType: hard - -"is-fullwidth-code-point@npm:^2.0.0": - version: 2.0.0 - resolution: "is-fullwidth-code-point@npm:2.0.0" - checksum: 10c0/e58f3e4a601fc0500d8b2677e26e9fe0cd450980e66adb29d85b6addf7969731e38f8e43ed2ec868a09c101a55ac3d8b78902209269f38c5286bc98f5bc1b4d9 - languageName: node - linkType: hard - -"is-fullwidth-code-point@npm:^3.0.0": - version: 3.0.0 - resolution: "is-fullwidth-code-point@npm:3.0.0" - checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc - languageName: node - linkType: hard - -"is-generator-function@npm:^1.0.10": - version: 1.1.2 - resolution: "is-generator-function@npm:1.1.2" - dependencies: - call-bound: "npm:^1.0.4" - generator-function: "npm:^2.0.0" - get-proto: "npm:^1.0.1" - has-tostringtag: "npm:^1.0.2" - safe-regex-test: "npm:^1.1.0" - checksum: 10c0/83da102e89c3e3b71d67b51d47c9f9bc862bceb58f87201727e27f7fa19d1d90b0ab223644ecaee6fc6e3d2d622bb25c966fbdaf87c59158b01ce7c0fe2fa372 - languageName: node - linkType: hard - -"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": - version: 4.0.3 - resolution: "is-glob@npm:4.0.3" - dependencies: - is-extglob: "npm:^2.1.1" - checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a - languageName: node - linkType: hard - -"is-hex-prefixed@npm:1.0.0": - version: 1.0.0 - resolution: "is-hex-prefixed@npm:1.0.0" - checksum: 10c0/767fa481020ae654ab085ca24c63c518705ff36fdfbfc732292dc69092c6f8fdc551f6ce8c5f6ae704b0a19294e6f62be1b4b9859f0e1ac76e3b1b0733599d94 - languageName: node - linkType: hard - -"is-map@npm:^2.0.3": - version: 2.0.3 - resolution: "is-map@npm:2.0.3" - checksum: 10c0/2c4d431b74e00fdda7162cd8e4b763d6f6f217edf97d4f8538b94b8702b150610e2c64961340015fe8df5b1fcee33ccd2e9b62619c4a8a3a155f8de6d6d355fc - languageName: node - linkType: hard - -"is-negative-zero@npm:^2.0.3": - version: 2.0.3 - resolution: "is-negative-zero@npm:2.0.3" - checksum: 10c0/bcdcf6b8b9714063ffcfa9929c575ac69bfdabb8f4574ff557dfc086df2836cf07e3906f5bbc4f2a5c12f8f3ba56af640c843cdfc74da8caed86c7c7d66fd08e - languageName: node - linkType: hard - -"is-number-object@npm:^1.1.1": - version: 1.1.1 - resolution: "is-number-object@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/97b451b41f25135ff021d85c436ff0100d84a039bb87ffd799cbcdbea81ef30c464ced38258cdd34f080be08fc3b076ca1f472086286d2aa43521d6ec6a79f53 - languageName: node - linkType: hard - -"is-number@npm:^7.0.0": - version: 7.0.0 - resolution: "is-number@npm:7.0.0" - checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811 - languageName: node - linkType: hard - -"is-plain-obj@npm:^2.1.0": - version: 2.1.0 - resolution: "is-plain-obj@npm:2.1.0" - checksum: 10c0/e5c9814cdaa627a9ad0a0964ded0e0491bfd9ace405c49a5d63c88b30a162f1512c069d5b80997893c4d0181eadc3fed02b4ab4b81059aba5620bfcdfdeb9c53 - languageName: node - linkType: hard - -"is-regex@npm:^1.2.1": - version: 1.2.1 - resolution: "is-regex@npm:1.2.1" - dependencies: - call-bound: "npm:^1.0.2" - gopd: "npm:^1.2.0" - has-tostringtag: "npm:^1.0.2" - hasown: "npm:^2.0.2" - checksum: 10c0/1d3715d2b7889932349241680032e85d0b492cfcb045acb75ffc2c3085e8d561184f1f7e84b6f8321935b4aea39bc9c6ba74ed595b57ce4881a51dfdbc214e04 - languageName: node - linkType: hard - -"is-set@npm:^2.0.3": - version: 2.0.3 - resolution: "is-set@npm:2.0.3" - checksum: 10c0/f73732e13f099b2dc879c2a12341cfc22ccaca8dd504e6edae26484bd5707a35d503fba5b4daad530a9b088ced1ae6c9d8200fd92e09b428fe14ea79ce8080b7 - languageName: node - linkType: hard - -"is-shared-array-buffer@npm:^1.0.4": - version: 1.0.4 - resolution: "is-shared-array-buffer@npm:1.0.4" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10c0/65158c2feb41ff1edd6bbd6fd8403a69861cf273ff36077982b5d4d68e1d59278c71691216a4a64632bd76d4792d4d1d2553901b6666d84ade13bba5ea7bc7db - languageName: node - linkType: hard - -"is-stream@npm:^1.1.0": - version: 1.1.0 - resolution: "is-stream@npm:1.1.0" - checksum: 10c0/b8ae7971e78d2e8488d15f804229c6eed7ed36a28f8807a1815938771f4adff0e705218b7dab968270433f67103e4fef98062a0beea55d64835f705ee72c7002 - languageName: node - linkType: hard - -"is-string@npm:^1.1.1": - version: 1.1.1 - resolution: "is-string@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/2f518b4e47886bb81567faba6ffd0d8a8333cf84336e2e78bf160693972e32ad00fe84b0926491cc598dee576fdc55642c92e62d0cbe96bf36f643b6f956f94d - languageName: node - linkType: hard - -"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1": - version: 1.1.1 - resolution: "is-symbol@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.2" - has-symbols: "npm:^1.1.0" - safe-regex-test: "npm:^1.1.0" - checksum: 10c0/f08f3e255c12442e833f75a9e2b84b2d4882fdfd920513cf2a4a2324f0a5b076c8fd913778e3ea5d258d5183e9d92c0cd20e04b03ab3df05316b049b2670af1e - languageName: node - linkType: hard - -"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15": - version: 1.1.15 - resolution: "is-typed-array@npm:1.1.15" - dependencies: - which-typed-array: "npm:^1.1.16" - checksum: 10c0/415511da3669e36e002820584e264997ffe277ff136643a3126cc949197e6ca3334d0f12d084e83b1994af2e9c8141275c741cf2b7da5a2ff62dd0cac26f76c4 - languageName: node - linkType: hard - -"is-typedarray@npm:~1.0.0": - version: 1.0.0 - resolution: "is-typedarray@npm:1.0.0" - checksum: 10c0/4c096275ba041a17a13cca33ac21c16bc4fd2d7d7eb94525e7cd2c2f2c1a3ab956e37622290642501ff4310601e413b675cf399ad6db49855527d2163b3eeeec - languageName: node - linkType: hard - -"is-unicode-supported@npm:^0.1.0": - version: 0.1.0 - resolution: "is-unicode-supported@npm:0.1.0" - checksum: 10c0/00cbe3455c3756be68d2542c416cab888aebd5012781d6819749fefb15162ff23e38501fe681b3d751c73e8ff561ac09a5293eba6f58fdf0178462ce6dcb3453 - languageName: node - linkType: hard - -"is-url@npm:^1.2.4": - version: 1.2.4 - resolution: "is-url@npm:1.2.4" - checksum: 10c0/0157a79874f8f95fdd63540e3f38c8583c2ef572661cd0693cda80ae3e42dfe8e9a4a972ec1b827f861d9a9acf75b37f7d58a37f94a8a053259642912c252bc3 - languageName: node - linkType: hard - -"is-weakmap@npm:^2.0.2": - version: 2.0.2 - resolution: "is-weakmap@npm:2.0.2" - checksum: 10c0/443c35bb86d5e6cc5929cd9c75a4024bb0fff9586ed50b092f94e700b89c43a33b186b76dbc6d54f3d3d09ece689ab38dcdc1af6a482cbe79c0f2da0a17f1299 - languageName: node - linkType: hard - -"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.1": - version: 1.1.1 - resolution: "is-weakref@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10c0/8e0a9c07b0c780949a100e2cab2b5560a48ecd4c61726923c1a9b77b6ab0aa0046c9e7fb2206042296817045376dee2c8ab1dabe08c7c3dfbf195b01275a085b - languageName: node - linkType: hard - -"is-weakset@npm:^2.0.3": - version: 2.0.4 - resolution: "is-weakset@npm:2.0.4" - dependencies: - call-bound: "npm:^1.0.3" - get-intrinsic: "npm:^1.2.6" - checksum: 10c0/6491eba08acb8dc9532da23cb226b7d0192ede0b88f16199e592e4769db0a077119c1f5d2283d1e0d16d739115f70046e887e477eb0e66cd90e1bb29f28ba647 - languageName: node - linkType: hard - -"isarray@npm:^1.0.0, isarray@npm:~1.0.0": - version: 1.0.0 - resolution: "isarray@npm:1.0.0" - checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d - languageName: node - linkType: hard - -"isarray@npm:^2.0.5": - version: 2.0.5 - resolution: "isarray@npm:2.0.5" - checksum: 10c0/4199f14a7a13da2177c66c31080008b7124331956f47bca57dd0b6ea9f11687aa25e565a2c7a2b519bc86988d10398e3049a1f5df13c9f6b7664154690ae79fd - languageName: node - linkType: hard - -"isexe@npm:^2.0.0": - version: 2.0.0 - resolution: "isexe@npm:2.0.0" - checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d - languageName: node - linkType: hard - -"isexe@npm:^3.1.1": - version: 3.1.1 - resolution: "isexe@npm:3.1.1" - checksum: 10c0/9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7 - languageName: node - linkType: hard - -"isomorphic-unfetch@npm:^3.0.0": - version: 3.1.0 - resolution: "isomorphic-unfetch@npm:3.1.0" - dependencies: - node-fetch: "npm:^2.6.1" - unfetch: "npm:^4.2.0" - checksum: 10c0/d3b61fca06304db692b7f76bdfd3a00f410e42cfa7403c3b250546bf71589d18cf2f355922f57198e4cc4a9872d3647b20397a5c3edf1a347c90d57c83cf2a89 - languageName: node - linkType: hard - -"isstream@npm:~0.1.2": - version: 0.1.2 - resolution: "isstream@npm:0.1.2" - checksum: 10c0/a6686a878735ca0a48e0d674dd6d8ad31aedfaf70f07920da16ceadc7577b46d67179a60b313f2e6860cb097a2c2eb3cbd0b89e921ae89199a59a17c3273d66f - languageName: node - linkType: hard - -"jackspeak@npm:^2.0.3": - version: 2.3.6 - resolution: "jackspeak@npm:2.3.6" - dependencies: - "@isaacs/cliui": "npm:^8.0.2" - "@pkgjs/parseargs": "npm:^0.11.0" - dependenciesMeta: - "@pkgjs/parseargs": - optional: true - checksum: 10c0/f01d8f972d894cd7638bc338e9ef5ddb86f7b208ce177a36d718eac96ec86638a6efa17d0221b10073e64b45edc2ce15340db9380b1f5d5c5d000cbc517dc111 - languageName: node - linkType: hard - -"javascript-natural-sort@npm:^0.7.1": - version: 0.7.1 - resolution: "javascript-natural-sort@npm:0.7.1" - checksum: 10c0/340f8ffc5d30fb516e06dc540e8fa9e0b93c865cf49d791fed3eac3bdc5fc71f0066fc81d44ec1433edc87caecaf9f13eec4a1fce8c5beafc709a71eaedae6fe - languageName: node - linkType: hard - -"js-cookie@npm:^2.2.1": - version: 2.2.1 - resolution: "js-cookie@npm:2.2.1" - checksum: 10c0/ee67fc0f8495d0800b851910b5eb5bf49d3033adff6493d55b5c097ca6da46f7fe666b10e2ecb13cfcaf5b88d71c205ce00a7e646de791689bfd053bbb36a376 - languageName: node - linkType: hard - -"js-sha3@npm:0.5.7": - version: 0.5.7 - resolution: "js-sha3@npm:0.5.7" - checksum: 10c0/17b17d557f9d594ed36ba6c8cdc234bedd7b74ce4baf171e23a1f16b9a89b1527ae160e4eb1b836520acf5919b00732a22183fb00b7808702c36f646c1e9e973 - languageName: node - linkType: hard - -"js-sha3@npm:0.8.0, js-sha3@npm:^0.8.0": - version: 0.8.0 - resolution: "js-sha3@npm:0.8.0" - checksum: 10c0/43a21dc7967c871bd2c46cb1c2ae97441a97169f324e509f382d43330d8f75cf2c96dba7c806ab08a425765a9c847efdd4bffbac2d99c3a4f3de6c0218f40533 - languageName: node - linkType: hard - -"js-yaml@npm:3.13.1": - version: 3.13.1 - resolution: "js-yaml@npm:3.13.1" - dependencies: - argparse: "npm:^1.0.7" - esprima: "npm:^4.0.0" - bin: - js-yaml: bin/js-yaml.js - checksum: 10c0/6a4f78b998d2eb58964cc5e051c031865bf292dc3c156a8057cf468d9e60a8739f4e8f607a267e97f09eb8d08263b8262df57eddb16b920ec5a04a259c3b4960 - languageName: node - linkType: hard - -"js-yaml@npm:^4.1.0, js-yaml@npm:^4.1.1": - version: 4.1.1 - resolution: "js-yaml@npm:4.1.1" - dependencies: - argparse: "npm:^2.0.1" - bin: - js-yaml: bin/js-yaml.js - checksum: 10c0/561c7d7088c40a9bb53cc75becbfb1df6ae49b34b5e6e5a81744b14ae8667ec564ad2527709d1a6e7d5e5fa6d483aa0f373a50ad98d42fde368ec4a190d4fae7 - languageName: node - linkType: hard - -"jsbn@npm:~0.1.0": - version: 0.1.1 - resolution: "jsbn@npm:0.1.1" - checksum: 10c0/e046e05c59ff880ee4ef68902dbdcb6d2f3c5d60c357d4d68647dc23add556c31c0e5f41bdb7e69e793dd63468bd9e085da3636341048ef577b18f5b713877c0 - languageName: node - linkType: hard - -"json-bigint@npm:^1.0.0": - version: 1.0.0 - resolution: "json-bigint@npm:1.0.0" - dependencies: - bignumber.js: "npm:^9.0.0" - checksum: 10c0/e3f34e43be3284b573ea150a3890c92f06d54d8ded72894556357946aeed9877fd795f62f37fe16509af189fd314ab1104d0fd0f163746ad231b9f378f5b33f4 - languageName: node - linkType: hard - -"json-buffer@npm:3.0.1": - version: 3.0.1 - resolution: "json-buffer@npm:3.0.1" - checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7 - languageName: node - linkType: hard - -"json-schema-traverse@npm:^0.4.1": - version: 0.4.1 - resolution: "json-schema-traverse@npm:0.4.1" - checksum: 10c0/108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce - languageName: node - linkType: hard - -"json-schema-traverse@npm:^1.0.0": - version: 1.0.0 - resolution: "json-schema-traverse@npm:1.0.0" - checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6 - languageName: node - linkType: hard - -"json-schema@npm:0.4.0": - version: 0.4.0 - resolution: "json-schema@npm:0.4.0" - checksum: 10c0/d4a637ec1d83544857c1c163232f3da46912e971d5bf054ba44fdb88f07d8d359a462b4aec46f2745efbc57053365608d88bc1d7b1729f7b4fc3369765639ed3 - languageName: node - linkType: hard - -"json-stable-stringify-without-jsonify@npm:^1.0.1": - version: 1.0.1 - resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" - checksum: 10c0/cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5 - languageName: node - linkType: hard - -"json-stream-stringify@npm:^3.1.4": - version: 3.1.6 - resolution: "json-stream-stringify@npm:3.1.6" - checksum: 10c0/cb45e65143f4634ebb2dc0732410a942eaf86f88a7938b2f6397f4c6b96a7ba936e74d4d17db48c9221f669153996362b2ff50fe8c7fed8a7548646f98ae1f58 - languageName: node - linkType: hard - -"json-stringify-safe@npm:~5.0.1": - version: 5.0.1 - resolution: "json-stringify-safe@npm:5.0.1" - checksum: 10c0/7dbf35cd0411d1d648dceb6d59ce5857ec939e52e4afc37601aa3da611f0987d5cee5b38d58329ceddf3ed48bd7215229c8d52059ab01f2444a338bf24ed0f37 - languageName: node - linkType: hard - -"jsonfile@npm:^4.0.0": - version: 4.0.0 - resolution: "jsonfile@npm:4.0.0" - dependencies: - graceful-fs: "npm:^4.1.6" - dependenciesMeta: - graceful-fs: - optional: true - checksum: 10c0/7dc94b628d57a66b71fb1b79510d460d662eb975b5f876d723f81549c2e9cd316d58a2ddf742b2b93a4fa6b17b2accaf1a738a0e2ea114bdfb13a32e5377e480 - languageName: node - linkType: hard - -"jsprim@npm:^1.2.2": - version: 1.4.2 - resolution: "jsprim@npm:1.4.2" - dependencies: - assert-plus: "npm:1.0.0" - extsprintf: "npm:1.3.0" - json-schema: "npm:0.4.0" - verror: "npm:1.10.0" - checksum: 10c0/5e4bca99e90727c2040eb4c2190d0ef1fe51798ed5714e87b841d304526190d960f9772acc7108fa1416b61e1122bcd60e4460c91793dce0835df5852aab55af - languageName: node - linkType: hard - -"keccak256@npm:^1.0.6": - version: 1.0.6 - resolution: "keccak256@npm:1.0.6" - dependencies: - bn.js: "npm:^5.2.0" - buffer: "npm:^6.0.3" - keccak: "npm:^3.0.2" - checksum: 10c0/2a3f1e281ffd65bcbbae2ee8d62e27f0336efe6f16b7ed9932ad642ed398da62ccbc3d38dcdf43bd2fad9885f02df501dc77a900c358644df296396ed194056f - languageName: node - linkType: hard - -"keccak@npm:3.0.1": - version: 3.0.1 - resolution: "keccak@npm:3.0.1" - dependencies: - node-addon-api: "npm:^2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - checksum: 10c0/dd274c2e177c12c9f5a05bd7460f04b49c03711770ecdb5f1a7fa56169994f9f0a7857c426cf65a2a4078908b12fe8bb6fdf1c28c9baab69835c5e678c10d7ab - languageName: node - linkType: hard - -"keccak@npm:3.0.2": - version: 3.0.2 - resolution: "keccak@npm:3.0.2" - dependencies: - node-addon-api: "npm:^2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - readable-stream: "npm:^3.6.0" - checksum: 10c0/f1673e0f9bab4eb8a5bd232227916c592716d3b961e14e6ab3fabcf703c896c83fdbcd230f7b4a44f076d50fb0931ec1b093a98e4b0e74680b56be123a4a93f6 - languageName: node - linkType: hard - -"keccak@npm:^3.0.0, keccak@npm:^3.0.2": - version: 3.0.4 - resolution: "keccak@npm:3.0.4" - dependencies: - node-addon-api: "npm:^2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - readable-stream: "npm:^3.6.0" - checksum: 10c0/153525c1c1f770beadb8f8897dec2f1d2dcbee11d063fe5f61957a5b236bfd3d2a111ae2727e443aa6a848df5edb98b9ef237c78d56df49087b0ca8a232ca9cd - languageName: node - linkType: hard - -"keyv@npm:^4.5.4": - version: 4.5.4 - resolution: "keyv@npm:4.5.4" - dependencies: - json-buffer: "npm:3.0.1" - checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e - languageName: node - linkType: hard - -"lcid@npm:^2.0.0": - version: 2.0.0 - resolution: "lcid@npm:2.0.0" - dependencies: - invert-kv: "npm:^2.0.0" - checksum: 10c0/53777f5946ee7cfa600ebdd8f18019c110f5ca1fd776e183a1f24e74cd200eb3718e535b2693caf762af1efed0714559192a095c4665e7808fd6d807b9797502 - languageName: node - linkType: hard - -"level-codec@npm:^9.0.0": - version: 9.0.2 - resolution: "level-codec@npm:9.0.2" - dependencies: - buffer: "npm:^5.6.0" - checksum: 10c0/38a7eb8beed37969ad93160251d5be8e667d4ea0ee199d5e72e61739e552987a71acaa2daa1d2dbc7541f0cfb64e2bd8b50c3d8757cfa41468d8631aa45cc0eb - languageName: node - linkType: hard - -"level-concat-iterator@npm:^3.0.0": - version: 3.1.0 - resolution: "level-concat-iterator@npm:3.1.0" - dependencies: - catering: "npm:^2.1.0" - checksum: 10c0/7bb1b8e991a179de2fecfd38d2c34544a139e1228cb730f3024ef11dcbd514cc89be30b02a2a81ef4e16b0c1553f604378f67302ea23868d98f055f9fa241ae4 - languageName: node - linkType: hard - -"level-concat-iterator@npm:~2.0.0": - version: 2.0.1 - resolution: "level-concat-iterator@npm:2.0.1" - checksum: 10c0/b0a55ec63137b159fdb69204fbac02f33fbfbaa61563db21121300f6da6a35dd4654dc872df6ca1067c0ca4f98074ccbb59c28044d0043600a940a506c3d4a71 - languageName: node - linkType: hard - -"level-errors@npm:^2.0.0, level-errors@npm:~2.0.0": - version: 2.0.1 - resolution: "level-errors@npm:2.0.1" - dependencies: - errno: "npm:~0.1.1" - checksum: 10c0/9e664afb98febe22e6ccde063be85e2b6e472414325bea87f0b2288bec589ef97658028f8654dc4716a06cda15c205e910b6cf5eb3906ed3ca06ea84d370002f - languageName: node - linkType: hard - -"level-iterator-stream@npm:~4.0.0": - version: 4.0.2 - resolution: "level-iterator-stream@npm:4.0.2" - dependencies: - inherits: "npm:^2.0.4" - readable-stream: "npm:^3.4.0" - xtend: "npm:^4.0.2" - checksum: 10c0/29994d5449428c246dc7d983220ca333ddaaa9e0fe9a664bb23750693db6cff4be62e8e31b6e8a0e1057c09a94580b965206c048701f96c3e8e97720a3c1e7c8 - languageName: node - linkType: hard - -"level-mem@npm:^5.0.1": - version: 5.0.1 - resolution: "level-mem@npm:5.0.1" - dependencies: - level-packager: "npm:^5.0.3" - memdown: "npm:^5.0.0" - checksum: 10c0/d393bf659eca373d420d03b20ed45057fbcbbe37423dd6aed661bae1e4ac690fda5b667669c7812b880c8776f1bb5e30c71b45e82ca7de6f54cae7815b39cafb - languageName: node - linkType: hard - -"level-packager@npm:^5.0.3": - version: 5.1.1 - resolution: "level-packager@npm:5.1.1" - dependencies: - encoding-down: "npm:^6.3.0" - levelup: "npm:^4.3.2" - checksum: 10c0/dc3ad1d3bc1fc85154ab85ac8220ffc7ff4da7b2be725c53ea8716780a2ef37d392c7dffae769a0419341f19febe78d86da998981b4ba3be673db1cb95051e95 - languageName: node - linkType: hard - -"level-supports@npm:^2.0.1": - version: 2.1.0 - resolution: "level-supports@npm:2.1.0" - checksum: 10c0/60481dd403234c64e2c01ed2aafdc75250ddd49d770f75ebef3f92a2a5b2271bf774858bfd8c47cfae3955855f9ff9dd536683d6cffb7c085cd0e57245c4c039 - languageName: node - linkType: hard - -"level-supports@npm:~1.0.0": - version: 1.0.1 - resolution: "level-supports@npm:1.0.1" - dependencies: - xtend: "npm:^4.0.2" - checksum: 10c0/6e8eb2be4c2c55e04e71dff831421a81d95df571e0004b6e6e0cee8421e792e22b3ab94ecaa925dc626164f442185b2e2bfb5d52b257d1639f8f9da8714c8335 - languageName: node - linkType: hard - -"level-ws@npm:^2.0.0": - version: 2.0.0 - resolution: "level-ws@npm:2.0.0" - dependencies: - inherits: "npm:^2.0.3" - readable-stream: "npm:^3.1.0" - xtend: "npm:^4.0.1" - checksum: 10c0/1d4538d417756a6fbcd4fb157f1076765054c7e9bbd3cd2c72d21510eae55948f51c7c67f2d4d05257ff196a5c1a4eb6b78ce697b7fb3486906d9d97a98a6979 - languageName: node - linkType: hard - -"leveldown@npm:6.1.0": - version: 6.1.0 - resolution: "leveldown@npm:6.1.0" - dependencies: - abstract-leveldown: "npm:^7.2.0" - napi-macros: "npm:~2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10c0/5af0a9596baf44187a5cce5095d78b7c085d8c5a94d652ed42e7a40c60f057135d17b52ae473f9719c674e93db3941831406206f469c4e9f62987ceed92c33e1 - languageName: node - linkType: hard - -"levelup@npm:^4.3.2": - version: 4.4.0 - resolution: "levelup@npm:4.4.0" - dependencies: - deferred-leveldown: "npm:~5.3.0" - level-errors: "npm:~2.0.0" - level-iterator-stream: "npm:~4.0.0" - level-supports: "npm:~1.0.0" - xtend: "npm:~4.0.0" - checksum: 10c0/e67eeb72cf10face92f73527b63ea0754bc3ab7ced76f8bf909fb51db1a2e687e2206415807c2de6862902eb00046e5bf34d64d587e3892d4cb89db687c2a957 - languageName: node - linkType: hard - -"levn@npm:^0.4.1": - version: 0.4.1 - resolution: "levn@npm:0.4.1" - dependencies: - prelude-ls: "npm:^1.2.1" - type-check: "npm:~0.4.0" - checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e - languageName: node - linkType: hard - -"locate-path@npm:^3.0.0": - version: 3.0.0 - resolution: "locate-path@npm:3.0.0" - dependencies: - p-locate: "npm:^3.0.0" - path-exists: "npm:^3.0.0" - checksum: 10c0/3db394b7829a7fe2f4fbdd25d3c4689b85f003c318c5da4052c7e56eed697da8f1bce5294f685c69ff76e32cba7a33629d94396976f6d05fb7f4c755c5e2ae8b - languageName: node - linkType: hard - -"locate-path@npm:^6.0.0": - version: 6.0.0 - resolution: "locate-path@npm:6.0.0" - dependencies: - p-locate: "npm:^5.0.0" - checksum: 10c0/d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3 - languageName: node - linkType: hard - -"lodash.camelcase@npm:^4.3.0": - version: 4.3.0 - resolution: "lodash.camelcase@npm:4.3.0" - checksum: 10c0/fcba15d21a458076dd309fce6b1b4bf611d84a0ec252cb92447c948c533ac250b95d2e00955801ebc367e5af5ed288b996d75d37d2035260a937008e14eaf432 - languageName: node - linkType: hard - -"lodash.merge@npm:^4.6.2": - version: 4.6.2 - resolution: "lodash.merge@npm:4.6.2" - checksum: 10c0/402fa16a1edd7538de5b5903a90228aa48eb5533986ba7fa26606a49db2572bf414ff73a2c9f5d5fd36b31c46a5d5c7e1527749c07cbcf965ccff5fbdf32c506 - languageName: node - linkType: hard - -"lodash.truncate@npm:^4.4.2": - version: 4.4.2 - resolution: "lodash.truncate@npm:4.4.2" - checksum: 10c0/4e870d54e8a6c86c8687e057cec4069d2e941446ccab7f40b4d9555fa5872d917d0b6aa73bece7765500a3123f1723bcdba9ae881b679ef120bba9e1a0b0ed70 - languageName: node - linkType: hard - -"lodash@npm:^4.17.11, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.21": - version: 4.17.21 - resolution: "lodash@npm:4.17.21" - checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c - languageName: node - linkType: hard - -"log-symbols@npm:3.0.0": - version: 3.0.0 - resolution: "log-symbols@npm:3.0.0" - dependencies: - chalk: "npm:^2.4.2" - checksum: 10c0/d11582a1b499b76aa1415988234ad54d9fb3f888f4cb4186cbc20ee4d314ac4b5f3d9fe9edd828748d2c0d372df2ea9f5dfd89100510988a8ce5ddf483ae015e - languageName: node - linkType: hard - -"log-symbols@npm:^4.1.0": - version: 4.1.0 - resolution: "log-symbols@npm:4.1.0" - dependencies: - chalk: "npm:^4.1.0" - is-unicode-supported: "npm:^0.1.0" - checksum: 10c0/67f445a9ffa76db1989d0fa98586e5bc2fd5247260dafb8ad93d9f0ccd5896d53fb830b0e54dade5ad838b9de2006c826831a3c528913093af20dff8bd24aca6 - languageName: node - linkType: hard - -"loupe@npm:^2.3.6": - version: 2.3.7 - resolution: "loupe@npm:2.3.7" - dependencies: - get-func-name: "npm:^2.0.1" - checksum: 10c0/71a781c8fc21527b99ed1062043f1f2bb30bdaf54fa4cf92463427e1718bc6567af2988300bc243c1f276e4f0876f29e3cbf7b58106fdc186915687456ce5bf4 - languageName: node - linkType: hard - -"lru-cache@npm:^10.2.0": - version: 10.4.3 - resolution: "lru-cache@npm:10.4.3" - checksum: 10c0/ebd04fbca961e6c1d6c0af3799adcc966a1babe798f685bb84e6599266599cd95d94630b10262f5424539bc4640107e8a33aa28585374abf561d30d16f4b39fb - languageName: node - linkType: hard - -"lru-cache@npm:^11.0.0, lru-cache@npm:^11.1.0, lru-cache@npm:^11.2.1": - version: 11.2.4 - resolution: "lru-cache@npm:11.2.4" - checksum: 10c0/4a24f9b17537619f9144d7b8e42cd5a225efdfd7076ebe7b5e7dc02b860a818455201e67fbf000765233fe7e339d3c8229fc815e9b58ee6ede511e07608c19b2 - languageName: node - linkType: hard - -"lru-cache@npm:^5.1.1": - version: 5.1.1 - resolution: "lru-cache@npm:5.1.1" - dependencies: - yallist: "npm:^3.0.2" - checksum: 10c0/89b2ef2ef45f543011e38737b8a8622a2f8998cddf0e5437174ef8f1f70a8b9d14a918ab3e232cb3ba343b7abddffa667f0b59075b2b80e6b4d63c3de6127482 - languageName: node - linkType: hard - -"lru_map@npm:^0.3.3": - version: 0.3.3 - resolution: "lru_map@npm:0.3.3" - checksum: 10c0/d861f14a142a4a74ebf8d3ad57f2e768a5b820db4100ae53eed1a64eb6350912332e6ebc87cb7415ad6d0cd8f3ce6d20beab9a5e6042ccb5996ea0067a220448 - languageName: node - linkType: hard - -"ltgt@npm:~2.2.0": - version: 2.2.1 - resolution: "ltgt@npm:2.2.1" - checksum: 10c0/60fdad732c3aa6acf37e927a5ef58c0d1776192321d55faa1f8775c134c27fbf20ef8ec542fb7f7f33033f79c2a2df75cac39b43e274b32e9d95400154cd41f3 - languageName: node - linkType: hard - -"make-error@npm:^1.1.1": - version: 1.3.6 - resolution: "make-error@npm:1.3.6" - checksum: 10c0/171e458d86854c6b3fc46610cfacf0b45149ba043782558c6875d9f42f222124384ad0b468c92e996d815a8a2003817a710c0a160e49c1c394626f76fa45396f - languageName: node - linkType: hard - -"make-fetch-happen@npm:^15.0.0": - version: 15.0.3 - resolution: "make-fetch-happen@npm:15.0.3" - dependencies: - "@npmcli/agent": "npm:^4.0.0" - cacache: "npm:^20.0.1" - http-cache-semantics: "npm:^4.1.1" - minipass: "npm:^7.0.2" - minipass-fetch: "npm:^5.0.0" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - negotiator: "npm:^1.0.0" - proc-log: "npm:^6.0.0" - promise-retry: "npm:^2.0.1" - ssri: "npm:^13.0.0" - checksum: 10c0/525f74915660be60b616bcbd267c4a5b59481b073ba125e45c9c3a041bb1a47a2bd0ae79d028eb6f5f95bf9851a4158423f5068539c3093621abb64027e8e461 - languageName: node - linkType: hard - -"map-age-cleaner@npm:^0.1.1": - version: 0.1.3 - resolution: "map-age-cleaner@npm:0.1.3" - dependencies: - p-defer: "npm:^1.0.0" - checksum: 10c0/7495236c7b0950956c144fd8b4bc6399d4e78072a8840a4232fe1c4faccbb5eb5d842e5c0a56a60afc36d723f315c1c672325ca03c1b328650f7fcc478f385fd - languageName: node - linkType: hard - -"markdown-table@npm:^1.1.3": - version: 1.1.3 - resolution: "markdown-table@npm:1.1.3" - checksum: 10c0/aea6eb998900449d938ce46819630492792dd26ac9737f8b506f98baf88c98b7cc1e69c33b72959e0f8578fc0a4b4b44d740daf2db9d8e92ccf3c3522f749fda - languageName: node - linkType: hard - -"math-intrinsics@npm:^1.1.0": - version: 1.1.0 - resolution: "math-intrinsics@npm:1.1.0" - checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f - languageName: node - linkType: hard - -"mathjs@npm:^10.4.0": - version: 10.6.4 - resolution: "mathjs@npm:10.6.4" - dependencies: - "@babel/runtime": "npm:^7.18.6" - complex.js: "npm:^2.1.1" - decimal.js: "npm:^10.3.1" - escape-latex: "npm:^1.2.0" - fraction.js: "npm:^4.2.0" - javascript-natural-sort: "npm:^0.7.1" - seedrandom: "npm:^3.0.5" - tiny-emitter: "npm:^2.1.0" - typed-function: "npm:^2.1.0" - bin: - mathjs: bin/cli.js - checksum: 10c0/c12401def3bcd53bc74efd41dee081f4b5b95be5a738ec48fbb64d8dc220368a41b08624e28b30a0ec959184cbbe39d68de709f1ab1cfbb1f2f0ae52fd0cfd57 - languageName: node - linkType: hard - -"mathjs@npm:^11.0.1": - version: 11.12.0 - resolution: "mathjs@npm:11.12.0" - dependencies: - "@babel/runtime": "npm:^7.23.2" - complex.js: "npm:^2.1.1" - decimal.js: "npm:^10.4.3" - escape-latex: "npm:^1.2.0" - fraction.js: "npm:4.3.4" - javascript-natural-sort: "npm:^0.7.1" - seedrandom: "npm:^3.0.5" - tiny-emitter: "npm:^2.1.0" - typed-function: "npm:^4.1.1" - bin: - mathjs: bin/cli.js - checksum: 10c0/4ddd38e2e7441e524b9e50c572582d0c1a4502a42a27c8ba1b4931c710f3f446560c95e6539f29c07d835db3fe663add7907c883871e7a28c572f5eb958280eb - languageName: node - linkType: hard - -"mcl-wasm@npm:^0.7.1": - version: 0.7.9 - resolution: "mcl-wasm@npm:0.7.9" - checksum: 10c0/12acd074621741ac61f4b3d36d72da6317320b5db02734abaaf77c0c7886ced14926de2f637ca9ab70a458419200d7edb8e0a4f9f02c85feb8d5bbbe430e60ad - languageName: node - linkType: hard - -"md5.js@npm:^1.3.4": - version: 1.3.5 - resolution: "md5.js@npm:1.3.5" - dependencies: - hash-base: "npm:^3.0.0" - inherits: "npm:^2.0.1" - safe-buffer: "npm:^5.1.2" - checksum: 10c0/b7bd75077f419c8e013fc4d4dada48be71882e37d69a44af65a2f2804b91e253441eb43a0614423a1c91bb830b8140b0dc906bc797245e2e275759584f4efcc5 - languageName: node - linkType: hard - -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: 10c0/d160f31246907e79fed398470285f21bafb45a62869dc469b1c8877f3f064f5eabc4bcc122f9479b8b605bc5c76187d7871cf84c4ee3ecd3e487da1993279928 - languageName: node - linkType: hard - -"mem@npm:^4.0.0": - version: 4.3.0 - resolution: "mem@npm:4.3.0" - dependencies: - map-age-cleaner: "npm:^0.1.1" - mimic-fn: "npm:^2.0.0" - p-is-promise: "npm:^2.0.0" - checksum: 10c0/fc74e16d877322aafe869fe92a5c3109b1683195f4ef507920322a2fc8cd9998f3299f716c9853e10304c06a528fd9b763de24bdd7ce0b448155f05c9fad8612 - languageName: node - linkType: hard - -"memdown@npm:^5.0.0": - version: 5.1.0 - resolution: "memdown@npm:5.1.0" - dependencies: - abstract-leveldown: "npm:~6.2.1" - functional-red-black-tree: "npm:~1.0.1" - immediate: "npm:~3.2.3" - inherits: "npm:~2.0.1" - ltgt: "npm:~2.2.0" - safe-buffer: "npm:~5.2.0" - checksum: 10c0/9971f8dbcc20c8b5530b535446c045bd5014fe615af76350b1398b5580ee828f28c0a19227252efd686011713381c2d0f4456ca8ee5f595769a774367027e0da - languageName: node - linkType: hard - -"memorystream@npm:^0.3.1": - version: 0.3.1 - resolution: "memorystream@npm:0.3.1" - checksum: 10c0/4bd164657711d9747ff5edb0508b2944414da3464b7fe21ac5c67cf35bba975c4b446a0124bd0f9a8be54cfc18faf92e92bd77563a20328b1ccf2ff04e9f39b9 - languageName: node - linkType: hard - -"merge-descriptors@npm:1.0.3": - version: 1.0.3 - resolution: "merge-descriptors@npm:1.0.3" - checksum: 10c0/866b7094afd9293b5ea5dcd82d71f80e51514bed33b4c4e9f516795dc366612a4cbb4dc94356e943a8a6914889a914530badff27f397191b9b75cda20b6bae93 - languageName: node - linkType: hard - -"merkle-patricia-tree@npm:^4.2.2, merkle-patricia-tree@npm:^4.2.4": - version: 4.2.4 - resolution: "merkle-patricia-tree@npm:4.2.4" - dependencies: - "@types/levelup": "npm:^4.3.0" - ethereumjs-util: "npm:^7.1.4" - level-mem: "npm:^5.0.1" - level-ws: "npm:^2.0.0" - readable-stream: "npm:^3.6.0" - semaphore-async-await: "npm:^1.5.1" - checksum: 10c0/d3f49f2d48b544e20a4bc68c17f2585f67c6210423d382625f708166b721d902c4e118e689fe48e4c27b8f26bc93b77a5f341b91cf4e1426c38c0d2203083e50 - languageName: node - linkType: hard - -"merkletreejs@npm:^0.2.31": - version: 0.2.32 - resolution: "merkletreejs@npm:0.2.32" - dependencies: - bignumber.js: "npm:^9.0.1" - buffer-reverse: "npm:^1.0.1" - crypto-js: "npm:^3.1.9-1" - treeify: "npm:^1.1.0" - web3-utils: "npm:^1.3.4" - checksum: 10c0/76227a46e38f0812743ac745f5c3d5fc9223b01f1cb040b59c19b457c6d10f4464140c1edc6ea3041cbded4c488c83f8013c363e4bfd6ace005ec515a5c241bc - languageName: node - linkType: hard - -"methods@npm:~1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 10c0/bdf7cc72ff0a33e3eede03708c08983c4d7a173f91348b4b1e4f47d4cdbf734433ad971e7d1e8c77247d9e5cd8adb81ea4c67b0a2db526b758b2233d7814b8b2 - languageName: node - linkType: hard - -"micro-eth-signer@npm:^0.16.0": - version: 0.16.0 - resolution: "micro-eth-signer@npm:0.16.0" - dependencies: - "@noble/curves": "npm:~1.9.2" - "@noble/hashes": "npm:2.0.0-beta.1" - micro-packed: "npm:~0.7.3" - checksum: 10c0/daac43e339c3bcb4c1598bfb0cfa83878a25f3464bdbecbf1135dd8ffbe1fa687eec6e5fc82fb5a8d007b5fafcae682f66cddee24724c75c95019625d735a36f - languageName: node - linkType: hard - -"micro-ftch@npm:^0.3.1": - version: 0.3.1 - resolution: "micro-ftch@npm:0.3.1" - checksum: 10c0/b87d35a52aded13cf2daca8d4eaa84e218722b6f83c75ddd77d74f32cc62e699a672e338e1ee19ceae0de91d19cc24dcc1a7c7d78c81f51042fe55f01b196ed3 - languageName: node - linkType: hard - -"micro-packed@npm:~0.7.3": - version: 0.7.3 - resolution: "micro-packed@npm:0.7.3" - dependencies: - "@scure/base": "npm:~1.2.5" - checksum: 10c0/1fde48a96d8d5606d3298ff36717bf7483d6d59e2d96f50cb88727379127a4d52881f48e7e1ce0d4906b2711b1902fb04d2128576326ce4d07e171ac022a4c2d - languageName: node - linkType: hard - -"miller-rabin@npm:^4.0.0": - version: 4.0.1 - resolution: "miller-rabin@npm:4.0.1" - dependencies: - bn.js: "npm:^4.0.0" - brorand: "npm:^1.0.1" - bin: - miller-rabin: bin/miller-rabin - checksum: 10c0/26b2b96f6e49dbcff7faebb78708ed2f5f9ae27ac8cbbf1d7c08f83cf39bed3d418c0c11034dce997da70d135cc0ff6f3a4c15dc452f8e114c11986388a64346 - languageName: node - linkType: hard - -"mime-db@npm:1.52.0": - version: 1.52.0 - resolution: "mime-db@npm:1.52.0" - checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa - languageName: node - linkType: hard - -"mime-types@npm:^2.1.12, mime-types@npm:^2.1.35, mime-types@npm:~2.1.19, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": - version: 2.1.35 - resolution: "mime-types@npm:2.1.35" - dependencies: - mime-db: "npm:1.52.0" - checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2 - languageName: node - linkType: hard - -"mime@npm:1.6.0": - version: 1.6.0 - resolution: "mime@npm:1.6.0" - bin: - mime: cli.js - checksum: 10c0/b92cd0adc44888c7135a185bfd0dddc42c32606401c72896a842ae15da71eb88858f17669af41e498b463cd7eb998f7b48939a25b08374c7924a9c8a6f8a81b0 - languageName: node - linkType: hard - -"mimic-fn@npm:^2.0.0": - version: 2.1.0 - resolution: "mimic-fn@npm:2.1.0" - checksum: 10c0/b26f5479d7ec6cc2bce275a08f146cf78f5e7b661b18114e2506dd91ec7ec47e7a25bf4360e5438094db0560bcc868079fb3b1fb3892b833c1ecbf63f80c95a4 - languageName: node - linkType: hard - -"minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1": - version: 1.0.1 - resolution: "minimalistic-assert@npm:1.0.1" - checksum: 10c0/96730e5601cd31457f81a296f521eb56036e6f69133c0b18c13fe941109d53ad23a4204d946a0d638d7f3099482a0cec8c9bb6d642604612ce43ee536be3dddd - languageName: node - linkType: hard - -"minimalistic-crypto-utils@npm:^1.0.1": - version: 1.0.1 - resolution: "minimalistic-crypto-utils@npm:1.0.1" - checksum: 10c0/790ecec8c5c73973a4fbf2c663d911033e8494d5fb0960a4500634766ab05d6107d20af896ca2132e7031741f19888154d44b2408ada0852446705441383e9f8 - languageName: node - linkType: hard - -"minimatch@npm:3.0.4": - version: 3.0.4 - resolution: "minimatch@npm:3.0.4" - dependencies: - brace-expansion: "npm:^1.1.7" - checksum: 10c0/d0a2bcd93ebec08a9eef3ca83ba33c9fb6feb93932e0b4dc6aa46c5f37a9404bea7ad9ff7cafe23ce6634f1fe3b206f5315ecbb05812da6e692c21d8ecfd3dae - languageName: node - linkType: hard - -"minimatch@npm:^10.1.1": - version: 10.1.1 - resolution: "minimatch@npm:10.1.1" - dependencies: - "@isaacs/brace-expansion": "npm:^5.0.0" - checksum: 10c0/c85d44821c71973d636091fddbfbffe62370f5ee3caf0241c5b60c18cd289e916200acb2361b7e987558cd06896d153e25d505db9fc1e43e6b4b6752e2702902 - languageName: node - linkType: hard - -"minimatch@npm:^3.0.4, minimatch@npm:^3.1.2": - version: 3.1.2 - resolution: "minimatch@npm:3.1.2" - dependencies: - brace-expansion: "npm:^1.1.7" - checksum: 10c0/0262810a8fc2e72cca45d6fd86bd349eee435eb95ac6aa45c9ea2180e7ee875ef44c32b55b5973ceabe95ea12682f6e3725cbb63d7a2d1da3ae1163c8b210311 - languageName: node - linkType: hard - -"minimatch@npm:^5.0.1, minimatch@npm:^5.1.6": - version: 5.1.6 - resolution: "minimatch@npm:5.1.6" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/3defdfd230914f22a8da203747c42ee3c405c39d4d37ffda284dac5e45b7e1f6c49aa8be606509002898e73091ff2a3bbfc59c2c6c71d4660609f63aa92f98e3 - languageName: node - linkType: hard - -"minimatch@npm:^9.0.1, minimatch@npm:^9.0.5": - version: 9.0.5 - resolution: "minimatch@npm:9.0.5" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/de96cf5e35bdf0eab3e2c853522f98ffbe9a36c37797778d2665231ec1f20a9447a7e567cb640901f89e4daaa95ae5d70c65a9e8aa2bb0019b6facbc3c0575ed - languageName: node - linkType: hard - -"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6, minimist@npm:^1.2.7": - version: 1.2.8 - resolution: "minimist@npm:1.2.8" - checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 - languageName: node - linkType: hard - -"minipass-collect@npm:^2.0.1": - version: 2.0.1 - resolution: "minipass-collect@npm:2.0.1" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/5167e73f62bb74cc5019594709c77e6a742051a647fe9499abf03c71dca75515b7959d67a764bdc4f8b361cf897fbf25e2d9869ee039203ed45240f48b9aa06e - languageName: node - linkType: hard - -"minipass-fetch@npm:^5.0.0": - version: 5.0.0 - resolution: "minipass-fetch@npm:5.0.0" - dependencies: - encoding: "npm:^0.1.13" - minipass: "npm:^7.0.3" - minipass-sized: "npm:^1.0.3" - minizlib: "npm:^3.0.1" - dependenciesMeta: - encoding: - optional: true - checksum: 10c0/9443aab5feab190972f84b64116e54e58dd87a58e62399cae0a4a7461b80568281039b7c3a38ba96453431ebc799d1e26999e548540156216729a4967cd5ef06 - languageName: node - linkType: hard - -"minipass-flush@npm:^1.0.5": - version: 1.0.5 - resolution: "minipass-flush@npm:1.0.5" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd - languageName: node - linkType: hard - -"minipass-pipeline@npm:^1.2.4": - version: 1.2.4 - resolution: "minipass-pipeline@npm:1.2.4" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2 - languageName: node - linkType: hard - -"minipass-sized@npm:^1.0.3": - version: 1.0.3 - resolution: "minipass-sized@npm:1.0.3" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb - languageName: node - linkType: hard - -"minipass@npm:^3.0.0": - version: 3.3.6 - resolution: "minipass@npm:3.3.6" - dependencies: - yallist: "npm:^4.0.0" - checksum: 10c0/a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c - languageName: node - linkType: hard - -"minipass@npm:^5.0.0 || ^6.0.2": - version: 6.0.2 - resolution: "minipass@npm:6.0.2" - checksum: 10c0/3878076578f44ef4078ceed10af2cfebbec1b6217bf9f7a3d8b940da8153769db29bf88498b2de0d1e0c12dfb7b634c5729b7ca03457f46435e801578add210a - languageName: node - linkType: hard - -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": - version: 7.1.2 - resolution: "minipass@npm:7.1.2" - checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557 - languageName: node - linkType: hard - -"minizlib@npm:^3.0.1, minizlib@npm:^3.1.0": - version: 3.1.0 - resolution: "minizlib@npm:3.1.0" - dependencies: - minipass: "npm:^7.1.2" - checksum: 10c0/5aad75ab0090b8266069c9aabe582c021ae53eb33c6c691054a13a45db3b4f91a7fb1bd79151e6b4e9e9a86727b522527c0a06ec7d45206b745d54cd3097bcec - languageName: node - linkType: hard - -"mkdirp@npm:0.5.5": - version: 0.5.5 - resolution: "mkdirp@npm:0.5.5" - dependencies: - minimist: "npm:^1.2.5" - bin: - mkdirp: bin/cmd.js - checksum: 10c0/4469faeeba703bc46b7cdbe3097d6373747a581eb8b556ce41c8fd25a826eb3254466c6522ba823c2edb0b6f0da7beb91cf71f040bc4e361534a3e67f0994bd0 - languageName: node - linkType: hard - -"mkdirp@npm:^0.5.1": - version: 0.5.6 - resolution: "mkdirp@npm:0.5.6" - dependencies: - minimist: "npm:^1.2.6" - bin: - mkdirp: bin/cmd.js - checksum: 10c0/e2e2be789218807b58abced04e7b49851d9e46e88a2f9539242cc8a92c9b5c3a0b9bab360bd3014e02a140fc4fbc58e31176c408b493f8a2a6f4986bd7527b01 - languageName: node - linkType: hard - -"mkdirp@npm:^1.0.4": - version: 1.0.4 - resolution: "mkdirp@npm:1.0.4" - bin: - mkdirp: bin/cmd.js - checksum: 10c0/46ea0f3ffa8bc6a5bc0c7081ffc3907777f0ed6516888d40a518c5111f8366d97d2678911ad1a6882bf592fa9de6c784fea32e1687bb94e1f4944170af48a5cf - languageName: node - linkType: hard - -"mnemonist@npm:^0.38.0": - version: 0.38.5 - resolution: "mnemonist@npm:0.38.5" - dependencies: - obliterator: "npm:^2.0.0" - checksum: 10c0/a73a2718f88cd12c3b108ecc530619a1b0f2783d479c7f98e7367375102cc3a28811bab384e17eb731553dc8d7ee9d60283d694a9f676af5f306104e75027d4f - languageName: node - linkType: hard - -"mocha@npm:^10.0.0, mocha@npm:^10.2.0": - version: 10.8.2 - resolution: "mocha@npm:10.8.2" - dependencies: - ansi-colors: "npm:^4.1.3" - browser-stdout: "npm:^1.3.1" - chokidar: "npm:^3.5.3" - debug: "npm:^4.3.5" - diff: "npm:^5.2.0" - escape-string-regexp: "npm:^4.0.0" - find-up: "npm:^5.0.0" - glob: "npm:^8.1.0" - he: "npm:^1.2.0" - js-yaml: "npm:^4.1.0" - log-symbols: "npm:^4.1.0" - minimatch: "npm:^5.1.6" - ms: "npm:^2.1.3" - serialize-javascript: "npm:^6.0.2" - strip-json-comments: "npm:^3.1.1" - supports-color: "npm:^8.1.1" - workerpool: "npm:^6.5.1" - yargs: "npm:^16.2.0" - yargs-parser: "npm:^20.2.9" - yargs-unparser: "npm:^2.0.0" - bin: - _mocha: bin/_mocha - mocha: bin/mocha.js - checksum: 10c0/1f786290a32a1c234f66afe2bfcc68aa50fe9c7356506bd39cca267efb0b4714a63a0cb333815578d63785ba2fba058bf576c2512db73997c0cae0d659a88beb - languageName: node - linkType: hard - -"mocha@npm:^7.1.1": - version: 7.2.0 - resolution: "mocha@npm:7.2.0" - dependencies: - ansi-colors: "npm:3.2.3" - browser-stdout: "npm:1.3.1" - chokidar: "npm:3.3.0" - debug: "npm:3.2.6" - diff: "npm:3.5.0" - escape-string-regexp: "npm:1.0.5" - find-up: "npm:3.0.0" - glob: "npm:7.1.3" - growl: "npm:1.10.5" - he: "npm:1.2.0" - js-yaml: "npm:3.13.1" - log-symbols: "npm:3.0.0" - minimatch: "npm:3.0.4" - mkdirp: "npm:0.5.5" - ms: "npm:2.1.1" - node-environment-flags: "npm:1.0.6" - object.assign: "npm:4.1.0" - strip-json-comments: "npm:2.0.1" - supports-color: "npm:6.0.0" - which: "npm:1.3.1" - wide-align: "npm:1.1.3" - yargs: "npm:13.3.2" - yargs-parser: "npm:13.1.2" - yargs-unparser: "npm:1.6.0" - bin: - _mocha: bin/_mocha - mocha: bin/mocha - checksum: 10c0/424d1f6f43271b19e7a8b5b0b4ea74841aa8ca136f9d3b2ed54cba49cf62fcd2abb7cc559a76fb8a00dadfe22db34a438002b5d35e982afb4d80b849dc0cef4c - languageName: node - linkType: hard - -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 10c0/f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d - languageName: node - linkType: hard - -"ms@npm:2.1.1": - version: 2.1.1 - resolution: "ms@npm:2.1.1" - checksum: 10c0/056140c631e740369fa21142417aba1bd629ab912334715216c666eb681c8f015c622dd4e38bc1d836b30852b05641331661703af13a0397eb0ca420fc1e75d9 - languageName: node - linkType: hard - -"ms@npm:2.1.3, ms@npm:^2.1.1, ms@npm:^2.1.3": - version: 2.1.3 - resolution: "ms@npm:2.1.3" - checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48 - languageName: node - linkType: hard - -"murmur-128@npm:^0.2.1": - version: 0.2.1 - resolution: "murmur-128@npm:0.2.1" - dependencies: - encode-utf8: "npm:^1.0.2" - fmix: "npm:^0.1.0" - imul: "npm:^1.0.0" - checksum: 10c0/1ae871af53693a9159794b92ace63c1b5c1cc137d235cc954a56af00e48856625131605517e1ee00f60295d0223a13091b88d33a55686011774a63db3b94ecd5 - languageName: node - linkType: hard - -"napi-macros@npm:~2.0.0": - version: 2.0.0 - resolution: "napi-macros@npm:2.0.0" - checksum: 10c0/583ef5084b43e49a12488cdcd4c5142f11e114e249b359161579b64f06776ed523c209d96e4ee2689e2e824c92445d0f529d817cc153f7cec549210296ec4be6 - languageName: node - linkType: hard - -"natural-compare@npm:^1.4.0": - version: 1.4.0 - resolution: "natural-compare@npm:1.4.0" - checksum: 10c0/f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447 - languageName: node - linkType: hard - -"negotiator@npm:0.6.3": - version: 0.6.3 - resolution: "negotiator@npm:0.6.3" - checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2 - languageName: node - linkType: hard - -"negotiator@npm:^1.0.0": - version: 1.0.0 - resolution: "negotiator@npm:1.0.0" - checksum: 10c0/4c559dd52669ea48e1914f9d634227c561221dd54734070791f999c52ed0ff36e437b2e07d5c1f6e32909fc625fe46491c16e4a8f0572567d4dd15c3a4fda04b - languageName: node - linkType: hard - -"nice-try@npm:^1.0.4": - version: 1.0.5 - resolution: "nice-try@npm:1.0.5" - checksum: 10c0/95568c1b73e1d0d4069a3e3061a2102d854513d37bcfda73300015b7ba4868d3b27c198d1dbbd8ebdef4112fc2ed9e895d4a0f2e1cce0bd334f2a1346dc9205f - languageName: node - linkType: hard - -"node-addon-api@npm:^2.0.0": - version: 2.0.2 - resolution: "node-addon-api@npm:2.0.2" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/ade6c097ba829fa4aee1ca340117bb7f8f29fdae7b777e343a9d5cbd548481d1f0894b7b907d23ce615c70d932e8f96154caed95c3fa935cfe8cf87546510f64 - languageName: node - linkType: hard - -"node-addon-api@npm:^5.0.0": - version: 5.1.0 - resolution: "node-addon-api@npm:5.1.0" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/0eb269786124ba6fad9df8007a149e03c199b3e5a3038125dfb3e747c2d5113d406a4e33f4de1ea600aa2339be1f137d55eba1a73ee34e5fff06c52a5c296d1d - languageName: node - linkType: hard - -"node-environment-flags@npm:1.0.6": - version: 1.0.6 - resolution: "node-environment-flags@npm:1.0.6" - dependencies: - object.getownpropertydescriptors: "npm:^2.0.3" - semver: "npm:^5.7.0" - checksum: 10c0/8be86f294f8b065a1e126e9ceb7a4b38b75eb7ec6391060e6e093ab9649e5c1fa977f2a5fe799b6ada862d65ce8259d1b7eabf2057774d641306e467d58cb96b - languageName: node - linkType: hard - -"node-fetch@npm:^2.6.0, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.7": - version: 2.7.0 - resolution: "node-fetch@npm:2.7.0" - dependencies: - whatwg-url: "npm:^5.0.0" - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - checksum: 10c0/b55786b6028208e6fbe594ccccc213cab67a72899c9234eb59dba51062a299ea853210fcf526998eaa2867b0963ad72338824450905679ff0fa304b8c5093ae8 - languageName: node - linkType: hard - -"node-gyp-build@npm:4.3.0": - version: 4.3.0 - resolution: "node-gyp-build@npm:4.3.0" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 10c0/817917b256e5193c1b2f832a8e41e82cfb9915e44dfc01a9b2745ddda203344c82e27c177c1e4da39083a08d6e30859a0ce6672801ac4f0cd1df94a8c43f22b5 - languageName: node - linkType: hard - -"node-gyp-build@npm:4.4.0": - version: 4.4.0 - resolution: "node-gyp-build@npm:4.4.0" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 10c0/11bbec933352004c6a754c9d2e3ac7ad02a09750cd06800fdcfdf111638bd897767ab94b7ed386ceaa155bb195ca8404037d7e79c2cbe7e9cd38ec74e5f5b5d2 - languageName: node - linkType: hard - -"node-gyp-build@npm:^4.2.0, node-gyp-build@npm:^4.3.0": - version: 4.8.4 - resolution: "node-gyp-build@npm:4.8.4" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 10c0/444e189907ece2081fe60e75368784f7782cfddb554b60123743dfb89509df89f1f29c03bbfa16b3a3e0be3f48799a4783f487da6203245fa5bed239ba7407e1 - languageName: node - linkType: hard - -"node-gyp@npm:latest": - version: 12.1.0 - resolution: "node-gyp@npm:12.1.0" - dependencies: - env-paths: "npm:^2.2.0" - exponential-backoff: "npm:^3.1.1" - graceful-fs: "npm:^4.2.6" - make-fetch-happen: "npm:^15.0.0" - nopt: "npm:^9.0.0" - proc-log: "npm:^6.0.0" - semver: "npm:^7.3.5" - tar: "npm:^7.5.2" - tinyglobby: "npm:^0.2.12" - which: "npm:^6.0.0" - bin: - node-gyp: bin/node-gyp.js - checksum: 10c0/f43efea8aaf0beb6b2f6184e533edad779b2ae38062953e21951f46221dd104006cc574154f2ad4a135467a5aae92c49e84ef289311a82e08481c5df0e8dc495 - languageName: node - linkType: hard - -"nofilter@npm:^3.0.2, nofilter@npm:^3.1.0": - version: 3.1.0 - resolution: "nofilter@npm:3.1.0" - checksum: 10c0/92459f3864a067b347032263f0b536223cbfc98153913b5dce350cb39c8470bc1813366e41993f22c33cc6400c0f392aa324a4b51e24c22040635c1cdb046499 - languageName: node - linkType: hard - -"nopt@npm:^9.0.0": - version: 9.0.0 - resolution: "nopt@npm:9.0.0" - dependencies: - abbrev: "npm:^4.0.0" - bin: - nopt: bin/nopt.js - checksum: 10c0/1822eb6f9b020ef6f7a7516d7b64a8036e09666ea55ac40416c36e4b2b343122c3cff0e2f085675f53de1d2db99a2a89a60ccea1d120bcd6a5347bf6ceb4a7fd - languageName: node - linkType: hard - -"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": - version: 3.0.0 - resolution: "normalize-path@npm:3.0.0" - checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046 - languageName: node - linkType: hard - -"npm-run-path@npm:^2.0.0": - version: 2.0.2 - resolution: "npm-run-path@npm:2.0.2" - dependencies: - path-key: "npm:^2.0.0" - checksum: 10c0/95549a477886f48346568c97b08c4fda9cdbf7ce8a4fbc2213f36896d0d19249e32d68d7451bdcbca8041b5fba04a6b2c4a618beaf19849505c05b700740f1de - languageName: node - linkType: hard - -"number-to-bn@npm:1.7.0": - version: 1.7.0 - resolution: "number-to-bn@npm:1.7.0" - dependencies: - bn.js: "npm:4.11.6" - strip-hex-prefix: "npm:1.0.0" - checksum: 10c0/83d1540173c4fc60ef4e91e88ed17f2c38418c8e5e62f469d62404527efba48d9c40f364da5c5e6857234a6c1154ff32b3642d80f873ba6cb8d2dd05fb6bc303 - languageName: node - linkType: hard - -"oauth-sign@npm:~0.9.0": - version: 0.9.0 - resolution: "oauth-sign@npm:0.9.0" - checksum: 10c0/fc92a516f6ddbb2699089a2748b04f55c47b6ead55a77cd3a2cbbce5f7af86164cb9425f9ae19acfd066f1ad7d3a96a67b8928c6ea946426f6d6c29e448497c2 - languageName: node - linkType: hard - -"object-assign@npm:^4, object-assign@npm:^4.1.0": - version: 4.1.1 - resolution: "object-assign@npm:4.1.1" - checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414 - languageName: node - linkType: hard - -"object-inspect@npm:^1.13.3, object-inspect@npm:^1.13.4": - version: 1.13.4 - resolution: "object-inspect@npm:1.13.4" - checksum: 10c0/d7f8711e803b96ea3191c745d6f8056ce1f2496e530e6a19a0e92d89b0fa3c76d910c31f0aa270432db6bd3b2f85500a376a83aaba849a8d518c8845b3211692 - languageName: node - linkType: hard - -"object-keys@npm:^1.0.11, object-keys@npm:^1.1.1": - version: 1.1.1 - resolution: "object-keys@npm:1.1.1" - checksum: 10c0/b11f7ccdbc6d406d1f186cdadb9d54738e347b2692a14439ca5ac70c225fa6db46db809711b78589866d47b25fc3e8dee0b4c722ac751e11180f9380e3d8601d - languageName: node - linkType: hard - -"object.assign@npm:4.1.0": - version: 4.1.0 - resolution: "object.assign@npm:4.1.0" - dependencies: - define-properties: "npm:^1.1.2" - function-bind: "npm:^1.1.1" - has-symbols: "npm:^1.0.0" - object-keys: "npm:^1.0.11" - checksum: 10c0/86e6c2a0c169924dc5fb8965c58760d1480ff57e60600c6bf32b083dc094f9587e9e765258485077480e70ae4ea10cf4d81eb4193e49c197821da37f0686a930 - languageName: node - linkType: hard - -"object.assign@npm:^4.1.7": - version: 4.1.7 - resolution: "object.assign@npm:4.1.7" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - has-symbols: "npm:^1.1.0" - object-keys: "npm:^1.1.1" - checksum: 10c0/3b2732bd860567ea2579d1567525168de925a8d852638612846bd8082b3a1602b7b89b67b09913cbb5b9bd6e95923b2ae73580baa9d99cb4e990564e8cbf5ddc - languageName: node - linkType: hard - -"object.getownpropertydescriptors@npm:^2.0.3": - version: 2.1.9 - resolution: "object.getownpropertydescriptors@npm:2.1.9" - dependencies: - array.prototype.reduce: "npm:^1.0.8" - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.24.0" - es-object-atoms: "npm:^1.1.1" - gopd: "npm:^1.2.0" - safe-array-concat: "npm:^1.1.3" - checksum: 10c0/8ccc9a4f28afb39cf7ab4d8acaf2ee817e47d59863d54a29b0e140648d841d2af3fc1564501a9b400862095258e3b28ee2c0506e1f5c04705ff781a8770f5eca - languageName: node - linkType: hard - -"obliterator@npm:^2.0.0": - version: 2.0.5 - resolution: "obliterator@npm:2.0.5" - checksum: 10c0/36e67d88271c51aa6412a7d449d6c60ae6387176f94dbc557eea67456bf6ccedbcbcecdb1e56438aa4f4694f68f531b3bf2be87b019e2f69961b144bec124e70 - languageName: node - linkType: hard - -"on-finished@npm:~2.4.1": - version: 2.4.1 - resolution: "on-finished@npm:2.4.1" - dependencies: - ee-first: "npm:1.1.1" - checksum: 10c0/46fb11b9063782f2d9968863d9cbba33d77aa13c17f895f56129c274318b86500b22af3a160fe9995aa41317efcd22941b6eba747f718ced08d9a73afdb087b4 - languageName: node - linkType: hard - -"once@npm:^1.3.0, once@npm:^1.3.1, once@npm:^1.4.0": - version: 1.4.0 - resolution: "once@npm:1.4.0" - dependencies: - wrappy: "npm:1" - checksum: 10c0/5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0 - languageName: node - linkType: hard - -"optionator@npm:^0.9.3": - version: 0.9.4 - resolution: "optionator@npm:0.9.4" - dependencies: - deep-is: "npm:^0.1.3" - fast-levenshtein: "npm:^2.0.6" - levn: "npm:^0.4.1" - prelude-ls: "npm:^1.2.1" - type-check: "npm:^0.4.0" - word-wrap: "npm:^1.2.5" - checksum: 10c0/4afb687a059ee65b61df74dfe87d8d6815cd6883cb8b3d5883a910df72d0f5d029821f37025e4bccf4048873dbdb09acc6d303d27b8f76b1a80dd5a7d5334675 - languageName: node - linkType: hard - -"os-locale@npm:^3.1.0": - version: 3.1.0 - resolution: "os-locale@npm:3.1.0" - dependencies: - execa: "npm:^1.0.0" - lcid: "npm:^2.0.0" - mem: "npm:^4.0.0" - checksum: 10c0/db017958884d111af9060613f55aa8a41d67d7210a96cd8e20ac2bc93daed945f6d6dbb0e2085355fe954258fe42e82bfc180c5b6bdbc90151d135d435dde2da - languageName: node - linkType: hard - -"os-tmpdir@npm:~1.0.2": - version: 1.0.2 - resolution: "os-tmpdir@npm:1.0.2" - checksum: 10c0/f438450224f8e2687605a8dd318f0db694b6293c5d835ae509a69e97c8de38b6994645337e5577f5001115470414638978cc49da1cdcc25106dad8738dc69990 - languageName: node - linkType: hard - -"own-keys@npm:^1.0.1": - version: 1.0.1 - resolution: "own-keys@npm:1.0.1" - dependencies: - get-intrinsic: "npm:^1.2.6" - object-keys: "npm:^1.1.1" - safe-push-apply: "npm:^1.0.0" - checksum: 10c0/6dfeb3455bff92ec3f16a982d4e3e65676345f6902d9f5ded1d8265a6318d0200ce461956d6d1c70053c7fe9f9fe65e552faac03f8140d37ef0fdd108e67013a - languageName: node - linkType: hard - -"p-defer@npm:^1.0.0": - version: 1.0.0 - resolution: "p-defer@npm:1.0.0" - checksum: 10c0/ed603c3790e74b061ac2cb07eb6e65802cf58dce0fbee646c113a7b71edb711101329ad38f99e462bd2e343a74f6e9366b496a35f1d766c187084d3109900487 - languageName: node - linkType: hard - -"p-finally@npm:^1.0.0": - version: 1.0.0 - resolution: "p-finally@npm:1.0.0" - checksum: 10c0/6b8552339a71fe7bd424d01d8451eea92d379a711fc62f6b2fe64cad8a472c7259a236c9a22b4733abca0b5666ad503cb497792a0478c5af31ded793d00937e7 - languageName: node - linkType: hard - -"p-is-promise@npm:^2.0.0": - version: 2.1.0 - resolution: "p-is-promise@npm:2.1.0" - checksum: 10c0/115c50960739c26e9b3e8a3bd453341a3b02a2e5ba41109b904ff53deb0b941ef81b196e106dc11f71698f591b23055c82d81188b7b670e9d5e28bc544b0674d - languageName: node - linkType: hard - -"p-limit@npm:^2.0.0": - version: 2.3.0 - resolution: "p-limit@npm:2.3.0" - dependencies: - p-try: "npm:^2.0.0" - checksum: 10c0/8da01ac53efe6a627080fafc127c873da40c18d87b3f5d5492d465bb85ec7207e153948df6b9cbaeb130be70152f874229b8242ee2be84c0794082510af97f12 - languageName: node - linkType: hard - -"p-limit@npm:^3.0.2": - version: 3.1.0 - resolution: "p-limit@npm:3.1.0" - dependencies: - yocto-queue: "npm:^0.1.0" - checksum: 10c0/9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a - languageName: node - linkType: hard - -"p-locate@npm:^3.0.0": - version: 3.0.0 - resolution: "p-locate@npm:3.0.0" - dependencies: - p-limit: "npm:^2.0.0" - checksum: 10c0/7b7f06f718f19e989ce6280ed4396fb3c34dabdee0df948376483032f9d5ec22fdf7077ec942143a75827bb85b11da72016497fc10dac1106c837ed593969ee8 - languageName: node - linkType: hard - -"p-locate@npm:^5.0.0": - version: 5.0.0 - resolution: "p-locate@npm:5.0.0" - dependencies: - p-limit: "npm:^3.0.2" - checksum: 10c0/2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a - languageName: node - linkType: hard - -"p-map@npm:^4.0.0": - version: 4.0.0 - resolution: "p-map@npm:4.0.0" - dependencies: - aggregate-error: "npm:^3.0.0" - checksum: 10c0/592c05bd6262c466ce269ff172bb8de7c6975afca9b50c975135b974e9bdaafbfe80e61aaaf5be6d1200ba08b30ead04b88cfa7e25ff1e3b93ab28c9f62a2c75 - languageName: node - linkType: hard - -"p-map@npm:^7.0.2": - version: 7.0.4 - resolution: "p-map@npm:7.0.4" - checksum: 10c0/a5030935d3cb2919d7e89454d1ce82141e6f9955413658b8c9403cfe379283770ed3048146b44cde168aa9e8c716505f196d5689db0ae3ce9a71521a2fef3abd - languageName: node - linkType: hard - -"p-try@npm:^2.0.0": - version: 2.2.0 - resolution: "p-try@npm:2.2.0" - checksum: 10c0/c36c19907734c904b16994e6535b02c36c2224d433e01a2f1ab777237f4d86e6289fd5fd464850491e940379d4606ed850c03e0f9ab600b0ebddb511312e177f - languageName: node - linkType: hard - -"parent-module@npm:^1.0.0": - version: 1.0.1 - resolution: "parent-module@npm:1.0.1" - dependencies: - callsites: "npm:^3.0.0" - checksum: 10c0/c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556 - languageName: node - linkType: hard - -"parse-cache-control@npm:^1.0.1": - version: 1.0.1 - resolution: "parse-cache-control@npm:1.0.1" - checksum: 10c0/330a0d9e3a22a7b0f6e8a973c0b9f51275642ee28544cd0d546420273946d555d20a5c7b49fca24d68d2e698bae0186f0f41f48d62133d3153c32454db05f2df - languageName: node - linkType: hard - -"parseurl@npm:~1.3.3": - version: 1.3.3 - resolution: "parseurl@npm:1.3.3" - checksum: 10c0/90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5 - languageName: node - linkType: hard - -"path-browserify@npm:^1.0.0": - version: 1.0.1 - resolution: "path-browserify@npm:1.0.1" - checksum: 10c0/8b8c3fd5c66bd340272180590ae4ff139769e9ab79522e2eb82e3d571a89b8117c04147f65ad066dccfb42fcad902e5b7d794b3d35e0fd840491a8ddbedf8c66 - languageName: node - linkType: hard - -"path-exists@npm:^3.0.0": - version: 3.0.0 - resolution: "path-exists@npm:3.0.0" - checksum: 10c0/17d6a5664bc0a11d48e2b2127d28a0e58822c6740bde30403f08013da599182289c56518bec89407e3f31d3c2b6b296a4220bc3f867f0911fee6952208b04167 - languageName: node - linkType: hard - -"path-exists@npm:^4.0.0": - version: 4.0.0 - resolution: "path-exists@npm:4.0.0" - checksum: 10c0/8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b - languageName: node - linkType: hard - -"path-is-absolute@npm:^1.0.0": - version: 1.0.1 - resolution: "path-is-absolute@npm:1.0.1" - checksum: 10c0/127da03c82172a2a50099cddbf02510c1791fc2cc5f7713ddb613a56838db1e8168b121a920079d052e0936c23005562059756d653b7c544c53185efe53be078 - languageName: node - linkType: hard - -"path-key@npm:^2.0.0, path-key@npm:^2.0.1": - version: 2.0.1 - resolution: "path-key@npm:2.0.1" - checksum: 10c0/dd2044f029a8e58ac31d2bf34c34b93c3095c1481942960e84dd2faa95bbb71b9b762a106aead0646695330936414b31ca0bd862bf488a937ad17c8c5d73b32b - languageName: node - linkType: hard - -"path-key@npm:^3.1.0": - version: 3.1.1 - resolution: "path-key@npm:3.1.1" - checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c - languageName: node - linkType: hard - -"path-parse@npm:^1.0.6": - version: 1.0.7 - resolution: "path-parse@npm:1.0.7" - checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1 - languageName: node - linkType: hard - -"path-scurry@npm:^1.7.0": - version: 1.11.1 - resolution: "path-scurry@npm:1.11.1" - dependencies: - lru-cache: "npm:^10.2.0" - minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" - checksum: 10c0/32a13711a2a505616ae1cc1b5076801e453e7aae6ac40ab55b388bb91b9d0547a52f5aaceff710ea400205f18691120d4431e520afbe4266b836fadede15872d - languageName: node - linkType: hard - -"path-scurry@npm:^2.0.0": - version: 2.0.1 - resolution: "path-scurry@npm:2.0.1" - dependencies: - lru-cache: "npm:^11.0.0" - minipass: "npm:^7.1.2" - checksum: 10c0/2a16ed0e81fbc43513e245aa5763354e25e787dab0d539581a6c3f0f967461a159ed6236b2559de23aa5b88e7dc32b469b6c47568833dd142a4b24b4f5cd2620 - languageName: node - linkType: hard - -"path-to-regexp@npm:~0.1.12": - version: 0.1.12 - resolution: "path-to-regexp@npm:0.1.12" - checksum: 10c0/1c6ff10ca169b773f3bba943bbc6a07182e332464704572962d277b900aeee81ac6aa5d060ff9e01149636c30b1f63af6e69dd7786ba6e0ddb39d4dee1f0645b - languageName: node - linkType: hard - -"pathval@npm:^1.1.1": - version: 1.1.1 - resolution: "pathval@npm:1.1.1" - checksum: 10c0/f63e1bc1b33593cdf094ed6ff5c49c1c0dc5dc20a646ca9725cc7fe7cd9995002d51d5685b9b2ec6814342935748b711bafa840f84c0bb04e38ff40a335c94dc - languageName: node - linkType: hard - -"pbkdf2@npm:^3.0.17, pbkdf2@npm:^3.0.9": - version: 3.1.5 - resolution: "pbkdf2@npm:3.1.5" - dependencies: - create-hash: "npm:^1.2.0" - create-hmac: "npm:^1.1.7" - ripemd160: "npm:^2.0.3" - safe-buffer: "npm:^5.2.1" - sha.js: "npm:^2.4.12" - to-buffer: "npm:^1.2.1" - checksum: 10c0/ea42e8695e49417eefabb19a08ab19a602cc6cc72d2df3f109c39309600230dee3083a6f678d5d42fe035d6ae780038b80ace0e68f9792ee2839bf081fe386f3 - languageName: node - linkType: hard - -"performance-now@npm:^2.1.0": - version: 2.1.0 - resolution: "performance-now@npm:2.1.0" - checksum: 10c0/22c54de06f269e29f640e0e075207af57de5052a3d15e360c09b9a8663f393f6f45902006c1e71aa8a5a1cdfb1a47fe268826f8496d6425c362f00f5bc3e85d9 - languageName: node - linkType: hard - -"picocolors@npm:^1.1.0": - version: 1.1.1 - resolution: "picocolors@npm:1.1.1" - checksum: 10c0/e2e3e8170ab9d7c7421969adaa7e1b31434f789afb9b3f115f6b96d91945041ac3ceb02e9ec6fe6510ff036bcc0bf91e69a1772edc0b707e12b19c0f2d6bcf58 - languageName: node - linkType: hard - -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1": - version: 2.3.1 - resolution: "picomatch@npm:2.3.1" - checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be - languageName: node - linkType: hard - -"picomatch@npm:^4.0.3": - version: 4.0.3 - resolution: "picomatch@npm:4.0.3" - checksum: 10c0/9582c951e95eebee5434f59e426cddd228a7b97a0161a375aed4be244bd3fe8e3a31b846808ea14ef2c8a2527a6eeab7b3946a67d5979e81694654f939473ae2 - languageName: node - linkType: hard - -"possible-typed-array-names@npm:^1.0.0": - version: 1.1.0 - resolution: "possible-typed-array-names@npm:1.1.0" - checksum: 10c0/c810983414142071da1d644662ce4caebce890203eb2bc7bf119f37f3fe5796226e117e6cca146b521921fa6531072674174a3325066ac66fce089a53e1e5196 - languageName: node - linkType: hard - -"prelude-ls@npm:^1.2.1": - version: 1.2.1 - resolution: "prelude-ls@npm:1.2.1" - checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd - languageName: node - linkType: hard - -"prettier-plugin-solidity@npm:^1.4.3": - version: 1.4.3 - resolution: "prettier-plugin-solidity@npm:1.4.3" - dependencies: - "@solidity-parser/parser": "npm:^0.20.1" - semver: "npm:^7.7.1" - peerDependencies: - prettier: ">=2.3.0" - checksum: 10c0/461fd5a7fa2a46e9f6ef46db0ad07f2f51b8e7c7f9cddc6c642b2af027d822f1b1f79185cb42b02bf09b6ba8f9130048e00bc260b6bfe53c736ee7a773b10231 - languageName: node - linkType: hard - -"prettier@npm:^2.3.1": - version: 2.8.8 - resolution: "prettier@npm:2.8.8" - bin: - prettier: bin-prettier.js - checksum: 10c0/463ea8f9a0946cd5b828d8cf27bd8b567345cf02f56562d5ecde198b91f47a76b7ac9eae0facd247ace70e927143af6135e8cf411986b8cb8478784a4d6d724a - languageName: node - linkType: hard - -"prettier@npm:^3.5.3": - version: 3.7.4 - resolution: "prettier@npm:3.7.4" - bin: - prettier: bin/prettier.cjs - checksum: 10c0/9675d2cd08eacb1faf1d1a2dbfe24bfab6a912b059fc9defdb380a408893d88213e794a40a2700bd29b140eb3172e0b07c852853f6e22f16f3374659a1a13389 - languageName: node - linkType: hard - -"proc-log@npm:^6.0.0": - version: 6.1.0 - resolution: "proc-log@npm:6.1.0" - checksum: 10c0/4f178d4062733ead9d71a9b1ab24ebcecdfe2250916a5b1555f04fe2eda972a0ec76fbaa8df1ad9c02707add6749219d118a4fc46dc56bdfe4dde4b47d80bb82 - languageName: node - linkType: hard - -"process-nextick-args@npm:~2.0.0": - version: 2.0.1 - resolution: "process-nextick-args@npm:2.0.1" - checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367 - languageName: node - linkType: hard - -"promise-retry@npm:^2.0.1": - version: 2.0.1 - resolution: "promise-retry@npm:2.0.1" - dependencies: - err-code: "npm:^2.0.2" - retry: "npm:^0.12.0" - checksum: 10c0/9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96 - languageName: node - linkType: hard - -"promise@npm:^8.0.0": - version: 8.3.0 - resolution: "promise@npm:8.3.0" - dependencies: - asap: "npm:~2.0.6" - checksum: 10c0/6fccae27a10bcce7442daf090279968086edd2e3f6cebe054b71816403e2526553edf510d13088a4d0f14d7dfa9b9dfb188cab72d6f942e186a4353b6a29c8bf - languageName: node - linkType: hard - -"proper-lockfile@npm:^4.1.1": - version: 4.1.2 - resolution: "proper-lockfile@npm:4.1.2" - dependencies: - graceful-fs: "npm:^4.2.4" - retry: "npm:^0.12.0" - signal-exit: "npm:^3.0.2" - checksum: 10c0/2f265dbad15897a43110a02dae55105c04d356ec4ed560723dcb9f0d34bc4fb2f13f79bb930e7561be10278e2314db5aca2527d5d3dcbbdee5e6b331d1571f6d - languageName: node - linkType: hard - -"proxy-addr@npm:~2.0.7": - version: 2.0.7 - resolution: "proxy-addr@npm:2.0.7" - dependencies: - forwarded: "npm:0.2.0" - ipaddr.js: "npm:1.9.1" - checksum: 10c0/c3eed999781a35f7fd935f398b6d8920b6fb00bbc14287bc6de78128ccc1a02c89b95b56742bf7cf0362cc333c61d138532049c7dedc7a328ef13343eff81210 - languageName: node - linkType: hard - -"proxy-from-env@npm:^1.1.0": - version: 1.1.0 - resolution: "proxy-from-env@npm:1.1.0" - checksum: 10c0/fe7dd8b1bdbbbea18d1459107729c3e4a2243ca870d26d34c2c1bcd3e4425b7bcc5112362df2d93cc7fb9746f6142b5e272fd1cc5c86ddf8580175186f6ad42b - languageName: node - linkType: hard - -"prr@npm:~1.0.1": - version: 1.0.1 - resolution: "prr@npm:1.0.1" - checksum: 10c0/5b9272c602e4f4472a215e58daff88f802923b84bc39c8860376bb1c0e42aaf18c25d69ad974bd06ec6db6f544b783edecd5502cd3d184748d99080d68e4be5f - languageName: node - linkType: hard - -"psl@npm:^1.1.28": - version: 1.15.0 - resolution: "psl@npm:1.15.0" - dependencies: - punycode: "npm:^2.3.1" - checksum: 10c0/d8d45a99e4ca62ca12ac3c373e63d80d2368d38892daa40cfddaa1eb908be98cd549ac059783ef3a56cfd96d57ae8e2fd9ae53d1378d90d42bc661ff924e102a - languageName: node - linkType: hard - -"pump@npm:^3.0.0": - version: 3.0.3 - resolution: "pump@npm:3.0.3" - dependencies: - end-of-stream: "npm:^1.1.0" - once: "npm:^1.3.1" - checksum: 10c0/ada5cdf1d813065bbc99aa2c393b8f6beee73b5de2890a8754c9f488d7323ffd2ca5f5a0943b48934e3fcbd97637d0337369c3c631aeb9614915db629f1c75c9 - languageName: node - linkType: hard - -"punycode@npm:^1.4.1": - version: 1.4.1 - resolution: "punycode@npm:1.4.1" - checksum: 10c0/354b743320518aef36f77013be6e15da4db24c2b4f62c5f1eb0529a6ed02fbaf1cb52925785f6ab85a962f2b590d9cd5ad730b70da72b5f180e2556b8bd3ca08 - languageName: node - linkType: hard - -"punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.1": - version: 2.3.1 - resolution: "punycode@npm:2.3.1" - checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9 - languageName: node - linkType: hard - -"qs@npm:^6.12.3, qs@npm:^6.4.0, qs@npm:~6.14.0": - version: 6.14.1 - resolution: "qs@npm:6.14.1" - dependencies: - side-channel: "npm:^1.1.0" - checksum: 10c0/0e3b22dc451f48ce5940cbbc7c7d9068d895074f8c969c0801ac15c1313d1859c4d738e46dc4da2f498f41a9ffd8c201bd9fb12df67799b827db94cc373d2613 - languageName: node - linkType: hard - -"qs@npm:~6.5.2": - version: 6.5.3 - resolution: "qs@npm:6.5.3" - checksum: 10c0/6631d4f2fa9d315e480662646745a4aa3a708817fbffe2cbdacec8ab9be130f92740c66191770fe9b704bc5fa9c1cc1f6596f55ad132fef7bd3ad1582f199eb0 - languageName: node - linkType: hard - -"queue-microtask@npm:^1.2.3": - version: 1.2.3 - resolution: "queue-microtask@npm:1.2.3" - checksum: 10c0/900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102 - languageName: node - linkType: hard - -"randombytes@npm:^2.0.1, randombytes@npm:^2.1.0": - version: 2.1.0 - resolution: "randombytes@npm:2.1.0" - dependencies: - safe-buffer: "npm:^5.1.0" - checksum: 10c0/50395efda7a8c94f5dffab564f9ff89736064d32addf0cc7e8bf5e4166f09f8ded7a0849ca6c2d2a59478f7d90f78f20d8048bca3cdf8be09d8e8a10790388f3 - languageName: node - linkType: hard - -"range-parser@npm:~1.2.1": - version: 1.2.1 - resolution: "range-parser@npm:1.2.1" - checksum: 10c0/96c032ac2475c8027b7a4e9fe22dc0dfe0f6d90b85e496e0f016fbdb99d6d066de0112e680805075bd989905e2123b3b3d002765149294dce0c1f7f01fcc2ea0 - languageName: node - linkType: hard - -"raw-body@npm:^2.4.1, raw-body@npm:~2.5.3": - version: 2.5.3 - resolution: "raw-body@npm:2.5.3" - dependencies: - bytes: "npm:~3.1.2" - http-errors: "npm:~2.0.1" - iconv-lite: "npm:~0.4.24" - unpipe: "npm:~1.0.0" - checksum: 10c0/449844344fc90547fb994383a494b83300e4f22199f146a79f68d78a199a8f2a923ea9fd29c3be979bfd50291a3884733619ffc15ba02a32e703b612f8d3f74a - languageName: node - linkType: hard - -"readable-stream@npm:^2.2.2, readable-stream@npm:^2.3.8": - version: 2.3.8 - resolution: "readable-stream@npm:2.3.8" - dependencies: - core-util-is: "npm:~1.0.0" - inherits: "npm:~2.0.3" - isarray: "npm:~1.0.0" - process-nextick-args: "npm:~2.0.0" - safe-buffer: "npm:~5.1.1" - string_decoder: "npm:~1.1.1" - util-deprecate: "npm:~1.0.1" - checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa - languageName: node - linkType: hard - -"readable-stream@npm:^3.1.0, readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0": - version: 3.6.2 - resolution: "readable-stream@npm:3.6.2" - dependencies: - inherits: "npm:^2.0.3" - string_decoder: "npm:^1.1.1" - util-deprecate: "npm:^1.0.1" - checksum: 10c0/e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7 - languageName: node - linkType: hard - -"readdirp@npm:^4.0.1": - version: 4.1.2 - resolution: "readdirp@npm:4.1.2" - checksum: 10c0/60a14f7619dec48c9c850255cd523e2717001b0e179dc7037cfa0895da7b9e9ab07532d324bfb118d73a710887d1e35f79c495fa91582784493e085d18c72c62 - languageName: node - linkType: hard - -"readdirp@npm:~3.2.0": - version: 3.2.0 - resolution: "readdirp@npm:3.2.0" - dependencies: - picomatch: "npm:^2.0.4" - checksum: 10c0/249d49fc31132bb2cd8fe37aceeab3ca4995e2d548effe0af69d0d55593d38c6f83f6e0c9606e4d0acdba9bfc64245fe45265128170ad4545a7a4efffbd330c2 - languageName: node - linkType: hard - -"readdirp@npm:~3.6.0": - version: 3.6.0 - resolution: "readdirp@npm:3.6.0" - dependencies: - picomatch: "npm:^2.2.1" - checksum: 10c0/6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b - languageName: node - linkType: hard - -"readline-sync@npm:^1.4.10": - version: 1.4.10 - resolution: "readline-sync@npm:1.4.10" - checksum: 10c0/0a4d0fe4ad501f8f005a3c9cbf3cc0ae6ca2ced93e9a1c7c46f226bdfcb6ef5d3f437ae7e9d2e1098ee13524a3739c830e4c8dbc7f543a693eecd293e41093a3 - languageName: node - linkType: hard - -"reduce-flatten@npm:^2.0.0": - version: 2.0.0 - resolution: "reduce-flatten@npm:2.0.0" - checksum: 10c0/9275064535bc070a787824c835a4f18394942f8a78f08e69fb500920124ce1c46a287c8d9e565a7ffad8104875a6feda14efa8e951e8e4585370b8ff007b0abd - languageName: node - linkType: hard - -"reflect.getprototypeof@npm:^1.0.6, reflect.getprototypeof@npm:^1.0.9": - version: 1.0.10 - resolution: "reflect.getprototypeof@npm:1.0.10" - dependencies: - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.9" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.7" - get-proto: "npm:^1.0.1" - which-builtin-type: "npm:^1.2.1" - checksum: 10c0/7facec28c8008876f8ab98e80b7b9cb4b1e9224353fd4756dda5f2a4ab0d30fa0a5074777c6df24e1e0af463a2697513b0a11e548d99cf52f21f7bc6ba48d3ac - languageName: node - linkType: hard - -"regexp.prototype.flags@npm:^1.5.4": - version: 1.5.4 - resolution: "regexp.prototype.flags@npm:1.5.4" - dependencies: - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-errors: "npm:^1.3.0" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - set-function-name: "npm:^2.0.2" - checksum: 10c0/83b88e6115b4af1c537f8dabf5c3744032cb875d63bc05c288b1b8c0ef37cbe55353f95d8ca817e8843806e3e150b118bc624e4279b24b4776b4198232735a77 - languageName: node - linkType: hard - -"req-cwd@npm:^2.0.0": - version: 2.0.0 - resolution: "req-cwd@npm:2.0.0" - dependencies: - req-from: "npm:^2.0.0" - checksum: 10c0/9cefc80353594b07d1a31d7ee4e4b5c7252f054f0fda7d5caf038c1cb5aa4b322acb422de7e18533734e8557f5769c2318f3ee9256e2e4f4e359b9b776c7ed1a - languageName: node - linkType: hard - -"req-from@npm:^2.0.0": - version: 2.0.0 - resolution: "req-from@npm:2.0.0" - dependencies: - resolve-from: "npm:^3.0.0" - checksum: 10c0/84aa6b4f7291675d9443ac156139841c7c1ae7eccf080f3b344972d6470170b0c32682656c560763b330d00e133196bcfdb1fcb4c5031f59ecbe80dea4dd1c82 - languageName: node - linkType: hard - -"request-promise-core@npm:1.1.4": - version: 1.1.4 - resolution: "request-promise-core@npm:1.1.4" - dependencies: - lodash: "npm:^4.17.19" - peerDependencies: - request: ^2.34 - checksum: 10c0/103eb9043450b9312c005ed859c2150825a555b72e4c0a83841f6793d368eddeacde425f8688effa215eb3eb14ff8c486a3c3e80f6246e9c195628db2bf9020e - languageName: node - linkType: hard - -"request-promise-native@npm:^1.0.5": - version: 1.0.9 - resolution: "request-promise-native@npm:1.0.9" - dependencies: - request-promise-core: "npm:1.1.4" - stealthy-require: "npm:^1.1.1" - tough-cookie: "npm:^2.3.3" - peerDependencies: - request: ^2.34 - checksum: 10c0/e4edae38675c3492a370fd7a44718df3cc8357993373156a66cb329fcde7480a2652591279cd48ba52326ea529ee99805da37119ad91563a901d3fba0ab5be92 - languageName: node - linkType: hard - -"request@npm:^2.85.0, request@npm:^2.88.0": - version: 2.88.2 - resolution: "request@npm:2.88.2" - dependencies: - aws-sign2: "npm:~0.7.0" - aws4: "npm:^1.8.0" - caseless: "npm:~0.12.0" - combined-stream: "npm:~1.0.6" - extend: "npm:~3.0.2" - forever-agent: "npm:~0.6.1" - form-data: "npm:~2.3.2" - har-validator: "npm:~5.1.3" - http-signature: "npm:~1.2.0" - is-typedarray: "npm:~1.0.0" - isstream: "npm:~0.1.2" - json-stringify-safe: "npm:~5.0.1" - mime-types: "npm:~2.1.19" - oauth-sign: "npm:~0.9.0" - performance-now: "npm:^2.1.0" - qs: "npm:~6.5.2" - safe-buffer: "npm:^5.1.2" - tough-cookie: "npm:~2.5.0" - tunnel-agent: "npm:^0.6.0" - uuid: "npm:^3.3.2" - checksum: 10c0/0ec66e7af1391e51ad231de3b1c6c6aef3ebd0a238aa50d4191c7a792dcdb14920eea8d570c702dc5682f276fe569d176f9b8ebc6031a3cf4a630a691a431a63 - languageName: node - linkType: hard - -"require-directory@npm:^2.1.1": - version: 2.1.1 - resolution: "require-directory@npm:2.1.1" - checksum: 10c0/83aa76a7bc1531f68d92c75a2ca2f54f1b01463cb566cf3fbc787d0de8be30c9dbc211d1d46be3497dac5785fe296f2dd11d531945ac29730643357978966e99 - languageName: node - linkType: hard - -"require-from-string@npm:^2.0.2": - version: 2.0.2 - resolution: "require-from-string@npm:2.0.2" - checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2 - languageName: node - linkType: hard - -"require-main-filename@npm:^2.0.0": - version: 2.0.0 - resolution: "require-main-filename@npm:2.0.0" - checksum: 10c0/db91467d9ead311b4111cbd73a4e67fa7820daed2989a32f7023785a2659008c6d119752d9c4ac011ae07e537eb86523adff99804c5fdb39cd3a017f9b401bb6 - languageName: node - linkType: hard - -"resolve-from@npm:^3.0.0": - version: 3.0.0 - resolution: "resolve-from@npm:3.0.0" - checksum: 10c0/24affcf8e81f4c62f0dcabc774afe0e19c1f38e34e43daac0ddb409d79435fc3037f612b0cc129178b8c220442c3babd673e88e870d27215c99454566e770ebc - languageName: node - linkType: hard - -"resolve-from@npm:^4.0.0": - version: 4.0.0 - resolution: "resolve-from@npm:4.0.0" - checksum: 10c0/8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190 - languageName: node - linkType: hard - -"resolve@npm:1.17.0": - version: 1.17.0 - resolution: "resolve@npm:1.17.0" - dependencies: - path-parse: "npm:^1.0.6" - checksum: 10c0/4e6c76cc1a7b08bff637b092ce035d7901465067915605bc5a23ac0c10fe42ec205fc209d5d5f7a5f27f37ce71d687def7f656bbb003631cd46a8374f55ec73d - languageName: node - linkType: hard - -"resolve@patch:resolve@npm%3A1.17.0#optional!builtin": - version: 1.17.0 - resolution: "resolve@patch:resolve@npm%3A1.17.0#optional!builtin::version=1.17.0&hash=c3c19d" - dependencies: - path-parse: "npm:^1.0.6" - checksum: 10c0/e072e52be3c3dbfd086761115db4a5136753e7aefc0e665e66e7307ddcd9d6b740274516055c74aee44921625e95993f03570450aa310b8d73b1c9daa056c4cd - languageName: node - linkType: hard - -"retry@npm:0.13.1": - version: 0.13.1 - resolution: "retry@npm:0.13.1" - checksum: 10c0/9ae822ee19db2163497e074ea919780b1efa00431d197c7afdb950e42bf109196774b92a49fc9821f0b8b328a98eea6017410bfc5e8a0fc19c85c6d11adb3772 - languageName: node - linkType: hard - -"retry@npm:^0.12.0": - version: 0.12.0 - resolution: "retry@npm:0.12.0" - checksum: 10c0/59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe - languageName: node - linkType: hard - -"ripemd160@npm:^2.0.0, ripemd160@npm:^2.0.1, ripemd160@npm:^2.0.3": - version: 2.0.3 - resolution: "ripemd160@npm:2.0.3" - dependencies: - hash-base: "npm:^3.1.2" - inherits: "npm:^2.0.4" - checksum: 10c0/3f472fb453241cfe692a77349accafca38dbcdc9d96d5848c088b2932ba41eb968630ecff7b175d291c7487a4945aee5a81e30c064d1f94e36070f7e0c37ed6c - languageName: node - linkType: hard - -"rlp@npm:2.2.6": - version: 2.2.6 - resolution: "rlp@npm:2.2.6" - dependencies: - bn.js: "npm:^4.11.1" - bin: - rlp: bin/rlp - checksum: 10c0/e12b57bf74c44d94c7d9d6273655e0afa46844d89738ee34ebdcf00bc699f0025309759e834b4fbd3e9fdf54a0fbc9a5e4aa7cae49bbf33aaf76e4c01e643f66 - languageName: node - linkType: hard - -"rlp@npm:^2.2.3, rlp@npm:^2.2.4": - version: 2.2.7 - resolution: "rlp@npm:2.2.7" - dependencies: - bn.js: "npm:^5.2.0" - bin: - rlp: bin/rlp - checksum: 10c0/166c449f4bc794d47f8e337bf0ffbcfdb26c33109030aac4b6e5a33a91fa85783f2290addeb7b3c89d6d9b90c8276e719494d193129bed0a60a2d4a6fd658277 - languageName: node - linkType: hard - -"rustbn.js@npm:~0.2.0": - version: 0.2.0 - resolution: "rustbn.js@npm:0.2.0" - checksum: 10c0/be2d55d4a53465cfd5c7900153cfae54c904f0941acd30191009cf473cacbfcf45082ffd8dc473a354c8e3dcfe2c2bdf5d7ea9cc9b188d892b4aa8d012b94701 - languageName: node - linkType: hard - -"safe-array-concat@npm:^1.1.3": - version: 1.1.3 - resolution: "safe-array-concat@npm:1.1.3" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.6" - has-symbols: "npm:^1.1.0" - isarray: "npm:^2.0.5" - checksum: 10c0/43c86ffdddc461fb17ff8a17c5324f392f4868f3c7dd2c6a5d9f5971713bc5fd755667212c80eab9567595f9a7509cc2f83e590ddaebd1bd19b780f9c79f9a8d - languageName: node - linkType: hard - -"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.1, safe-buffer@npm:~5.2.0": - version: 5.2.1 - resolution: "safe-buffer@npm:5.2.1" - checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 - languageName: node - linkType: hard - -"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21 - languageName: node - linkType: hard - -"safe-push-apply@npm:^1.0.0": - version: 1.0.0 - resolution: "safe-push-apply@npm:1.0.0" - dependencies: - es-errors: "npm:^1.3.0" - isarray: "npm:^2.0.5" - checksum: 10c0/831f1c9aae7436429e7862c7e46f847dfe490afac20d0ee61bae06108dbf5c745a0de3568ada30ccdd3eeb0864ca8331b2eef703abd69bfea0745b21fd320750 - languageName: node - linkType: hard - -"safe-regex-test@npm:^1.1.0": - version: 1.1.0 - resolution: "safe-regex-test@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - is-regex: "npm:^1.2.1" - checksum: 10c0/f2c25281bbe5d39cddbbce7f86fca5ea9b3ce3354ea6cd7c81c31b006a5a9fff4286acc5450a3b9122c56c33eba69c56b9131ad751457b2b4a585825e6a10665 - languageName: node - linkType: hard - -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": - version: 2.1.2 - resolution: "safer-buffer@npm:2.1.2" - checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4 - languageName: node - linkType: hard - -"scrypt-js@npm:2.0.4": - version: 2.0.4 - resolution: "scrypt-js@npm:2.0.4" - checksum: 10c0/dc6df482f9befa395b577ea40c5cebe96df8fc5f376d23871c50800eacbec1b0d6a49a03f35e9d4405ceb96f43b8047a8f3f99ce7cda0c727cfc754d9e7060f8 - languageName: node - linkType: hard - -"scrypt-js@npm:3.0.1, scrypt-js@npm:^3.0.0": - version: 3.0.1 - resolution: "scrypt-js@npm:3.0.1" - checksum: 10c0/e2941e1c8b5c84c7f3732b0153fee624f5329fc4e772a06270ee337d4d2df4174b8abb5e6ad53804a29f53890ecbc78f3775a319323568c0313040c0e55f5b10 - languageName: node - linkType: hard - -"secp256k1@npm:4.0.3": - version: 4.0.3 - resolution: "secp256k1@npm:4.0.3" - dependencies: - elliptic: "npm:^6.5.4" - node-addon-api: "npm:^2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - checksum: 10c0/de0a0e525a6f8eb2daf199b338f0797dbfe5392874285a145bb005a72cabacb9d42c0197d0de129a1a0f6094d2cc4504d1f87acb6a8bbfb7770d4293f252c401 - languageName: node - linkType: hard - -"secp256k1@npm:^4.0.1": - version: 4.0.4 - resolution: "secp256k1@npm:4.0.4" - dependencies: - elliptic: "npm:^6.5.7" - node-addon-api: "npm:^5.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - checksum: 10c0/cf7a74343566d4774c64332c07fc2caf983c80507f63be5c653ff2205242143d6320c50ee4d793e2b714a56540a79e65a8f0056e343b25b0cdfed878bc473fd8 - languageName: node - linkType: hard - -"seedrandom@npm:3.0.5, seedrandom@npm:^3.0.5": - version: 3.0.5 - resolution: "seedrandom@npm:3.0.5" - checksum: 10c0/929752ac098ff4990b3f8e0ac39136534916e72879d6eb625230141d20db26e2f44c4d03d153d457682e8cbaab0fb7d58a1e7267a157cf23fd8cf34e25044e88 - languageName: node - linkType: hard - -"semaphore-async-await@npm:^1.5.1": - version: 1.5.1 - resolution: "semaphore-async-await@npm:1.5.1" - checksum: 10c0/b5cc7bcbe755fa73d414b6ebabd9b73cec9193988ecb14b489753287acef77f4cf4c4eaa9c2cd942f24ec8e230d26116788c7405b256c39111b75c81e953a92f - languageName: node - linkType: hard - -"semver@npm:^5.5.0, semver@npm:^5.7.0": - version: 5.7.2 - resolution: "semver@npm:5.7.2" - bin: - semver: bin/semver - checksum: 10c0/e4cf10f86f168db772ae95d86ba65b3fd6c5967c94d97c708ccb463b778c2ee53b914cd7167620950fc07faf5a564e6efe903836639e512a1aa15fbc9667fa25 - languageName: node - linkType: hard - -"semver@npm:^6.3.0": - version: 6.3.1 - resolution: "semver@npm:6.3.1" - bin: - semver: bin/semver.js - checksum: 10c0/e3d79b609071caa78bcb6ce2ad81c7966a46a7431d9d58b8800cfa9cb6a63699b3899a0e4bcce36167a284578212d9ae6942b6929ba4aa5015c079a67751d42d - languageName: node - linkType: hard - -"semver@npm:^7.3.5, semver@npm:^7.7.1": - version: 7.7.3 - resolution: "semver@npm:7.7.3" - bin: - semver: bin/semver.js - checksum: 10c0/4afe5c986567db82f44c8c6faef8fe9df2a9b1d98098fc1721f57c696c4c21cebd572f297fc21002f81889492345b8470473bc6f4aff5fb032a6ea59ea2bc45e - languageName: node - linkType: hard - -"send@npm:~0.19.0, send@npm:~0.19.1": - version: 0.19.2 - resolution: "send@npm:0.19.2" - dependencies: - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - fresh: "npm:~0.5.2" - http-errors: "npm:~2.0.1" - mime: "npm:1.6.0" - ms: "npm:2.1.3" - on-finished: "npm:~2.4.1" - range-parser: "npm:~1.2.1" - statuses: "npm:~2.0.2" - checksum: 10c0/20c2389fe0fdf3fc499938cac598bc32272287e993c4960717381a10de8550028feadfb9076f959a3a3ebdea42e1f690e116f0d16468fa56b9fd41866d3dc267 - languageName: node - linkType: hard - -"serialize-javascript@npm:^6.0.2": - version: 6.0.2 - resolution: "serialize-javascript@npm:6.0.2" - dependencies: - randombytes: "npm:^2.1.0" - checksum: 10c0/2dd09ef4b65a1289ba24a788b1423a035581bef60817bea1f01eda8e3bda623f86357665fe7ac1b50f6d4f583f97db9615b3f07b2a2e8cbcb75033965f771dd2 - languageName: node - linkType: hard - -"serve-static@npm:~1.16.2": - version: 1.16.3 - resolution: "serve-static@npm:1.16.3" - dependencies: - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - parseurl: "npm:~1.3.3" - send: "npm:~0.19.1" - checksum: 10c0/36320397a073c71bedf58af48a4a100fe6d93f07459af4d6f08b9a7217c04ce2a4939e0effd842dc7bece93ffcd59eb52f58c4fff2a8e002dc29ae6b219cd42b - languageName: node - linkType: hard - -"set-blocking@npm:^2.0.0": - version: 2.0.0 - resolution: "set-blocking@npm:2.0.0" - checksum: 10c0/9f8c1b2d800800d0b589de1477c753492de5c1548d4ade52f57f1d1f5e04af5481554d75ce5e5c43d4004b80a3eb714398d6907027dc0534177b7539119f4454 - languageName: node - linkType: hard - -"set-function-length@npm:^1.2.2": - version: 1.2.2 - resolution: "set-function-length@npm:1.2.2" - dependencies: - define-data-property: "npm:^1.1.4" - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.4" - gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.2" - checksum: 10c0/82850e62f412a258b71e123d4ed3873fa9377c216809551192bb6769329340176f109c2eeae8c22a8d386c76739855f78e8716515c818bcaef384b51110f0f3c - languageName: node - linkType: hard - -"set-function-name@npm:^2.0.2": - version: 2.0.2 - resolution: "set-function-name@npm:2.0.2" - dependencies: - define-data-property: "npm:^1.1.4" - es-errors: "npm:^1.3.0" - functions-have-names: "npm:^1.2.3" - has-property-descriptors: "npm:^1.0.2" - checksum: 10c0/fce59f90696c450a8523e754abb305e2b8c73586452619c2bad5f7bf38c7b6b4651895c9db895679c5bef9554339cf3ef1c329b66ece3eda7255785fbe299316 - languageName: node - linkType: hard - -"set-proto@npm:^1.0.0": - version: 1.0.0 - resolution: "set-proto@npm:1.0.0" - dependencies: - dunder-proto: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/ca5c3ccbba479d07c30460e367e66337cec825560b11e8ba9c5ebe13a2a0d6021ae34eddf94ff3dfe17a3104dc1f191519cb6c48378b503e5c3f36393938776a - languageName: node - linkType: hard - -"setimmediate@npm:1.0.4": - version: 1.0.4 - resolution: "setimmediate@npm:1.0.4" - checksum: 10c0/78d1098320ac16a5500fc683491665333e16a6a99103c52d0550f0b31b680c6967d405b3d2b6284d99645c373e0d2ed7d2305c924f12de911a74ffb6c2c3eabe - languageName: node - linkType: hard - -"setimmediate@npm:^1.0.5": - version: 1.0.5 - resolution: "setimmediate@npm:1.0.5" - checksum: 10c0/5bae81bfdbfbd0ce992893286d49c9693c82b1bcc00dcaaf3a09c8f428fdeacf4190c013598b81875dfac2b08a572422db7df779a99332d0fce186d15a3e4d49 - languageName: node - linkType: hard - -"setprototypeof@npm:1.2.0, setprototypeof@npm:~1.2.0": - version: 1.2.0 - resolution: "setprototypeof@npm:1.2.0" - checksum: 10c0/68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc - languageName: node - linkType: hard - -"sha.js@npm:^2.4.0, sha.js@npm:^2.4.12, sha.js@npm:^2.4.8": - version: 2.4.12 - resolution: "sha.js@npm:2.4.12" - dependencies: - inherits: "npm:^2.0.4" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.0" - bin: - sha.js: bin.js - checksum: 10c0/9d36bdd76202c8116abbe152a00055ccd8a0099cb28fc17c01fa7bb2c8cffb9ca60e2ab0fe5f274ed6c45dc2633d8c39cf7ab050306c231904512ba9da4d8ab1 - languageName: node - linkType: hard - -"sha1@npm:^1.1.1": - version: 1.1.1 - resolution: "sha1@npm:1.1.1" - dependencies: - charenc: "npm:>= 0.0.1" - crypt: "npm:>= 0.0.1" - checksum: 10c0/1bb36c89c112c741c265cca66712f883ae01d5c55b71aec80635fe2ad5d0c976a1a8a994dda774ae9f93b2da99fd111238758a8bf985adc400bd86f0e4452865 - languageName: node - linkType: hard - -"shebang-command@npm:^1.2.0": - version: 1.2.0 - resolution: "shebang-command@npm:1.2.0" - dependencies: - shebang-regex: "npm:^1.0.0" - checksum: 10c0/7b20dbf04112c456b7fc258622dafd566553184ac9b6938dd30b943b065b21dabd3776460df534cc02480db5e1b6aec44700d985153a3da46e7db7f9bd21326d - languageName: node - linkType: hard - -"shebang-command@npm:^2.0.0": - version: 2.0.0 - resolution: "shebang-command@npm:2.0.0" - dependencies: - shebang-regex: "npm:^3.0.0" - checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e - languageName: node - linkType: hard - -"shebang-regex@npm:^1.0.0": - version: 1.0.0 - resolution: "shebang-regex@npm:1.0.0" - checksum: 10c0/9abc45dee35f554ae9453098a13fdc2f1730e525a5eb33c51f096cc31f6f10a4b38074c1ebf354ae7bffa7229506083844008dfc3bb7818228568c0b2dc1fff2 - languageName: node - linkType: hard - -"shebang-regex@npm:^3.0.0": - version: 3.0.0 - resolution: "shebang-regex@npm:3.0.0" - checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 - languageName: node - linkType: hard - -"side-channel-list@npm:^1.0.0": - version: 1.0.0 - resolution: "side-channel-list@npm:1.0.0" - dependencies: - es-errors: "npm:^1.3.0" - object-inspect: "npm:^1.13.3" - checksum: 10c0/644f4ac893456c9490ff388bf78aea9d333d5e5bfc64cfb84be8f04bf31ddc111a8d4b83b85d7e7e8a7b845bc185a9ad02c052d20e086983cf59f0be517d9b3d - languageName: node - linkType: hard - -"side-channel-map@npm:^1.0.1": - version: 1.0.1 - resolution: "side-channel-map@npm:1.0.1" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.5" - object-inspect: "npm:^1.13.3" - checksum: 10c0/010584e6444dd8a20b85bc926d934424bd809e1a3af941cace229f7fdcb751aada0fb7164f60c2e22292b7fa3c0ff0bce237081fd4cdbc80de1dc68e95430672 - languageName: node - linkType: hard - -"side-channel-weakmap@npm:^1.0.2": - version: 1.0.2 - resolution: "side-channel-weakmap@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.5" - object-inspect: "npm:^1.13.3" - side-channel-map: "npm:^1.0.1" - checksum: 10c0/71362709ac233e08807ccd980101c3e2d7efe849edc51455030327b059f6c4d292c237f94dc0685031dd11c07dd17a68afde235d6cf2102d949567f98ab58185 - languageName: node - linkType: hard - -"side-channel@npm:^1.1.0": - version: 1.1.0 - resolution: "side-channel@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - object-inspect: "npm:^1.13.3" - side-channel-list: "npm:^1.0.0" - side-channel-map: "npm:^1.0.1" - side-channel-weakmap: "npm:^1.0.2" - checksum: 10c0/cb20dad41eb032e6c24c0982e1e5a24963a28aa6122b4f05b3f3d6bf8ae7fd5474ef382c8f54a6a3ab86e0cac4d41a23bd64ede3970e5bfb50326ba02a7996e6 - languageName: node - linkType: hard - -"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2": - version: 3.0.7 - resolution: "signal-exit@npm:3.0.7" - checksum: 10c0/25d272fa73e146048565e08f3309d5b942c1979a6f4a58a8c59d5fa299728e9c2fcd1a759ec870863b1fd38653670240cd420dad2ad9330c71f36608a6a1c912 - languageName: node - linkType: hard - -"signal-exit@npm:^4.0.1": - version: 4.1.0 - resolution: "signal-exit@npm:4.1.0" - checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 - languageName: node - linkType: hard - -"slice-ansi@npm:^4.0.0": - version: 4.0.0 - resolution: "slice-ansi@npm:4.0.0" - dependencies: - ansi-styles: "npm:^4.0.0" - astral-regex: "npm:^2.0.0" - is-fullwidth-code-point: "npm:^3.0.0" - checksum: 10c0/6c25678db1270d4793e0327620f1e0f9f5bea4630123f51e9e399191bc52c87d6e6de53ed33538609e5eacbd1fab769fae00f3705d08d029f02102a540648918 - languageName: node - linkType: hard - -"smart-buffer@npm:^4.2.0": - version: 4.2.0 - resolution: "smart-buffer@npm:4.2.0" - checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539 - languageName: node - linkType: hard - -"socks-proxy-agent@npm:^8.0.3": - version: 8.0.5 - resolution: "socks-proxy-agent@npm:8.0.5" - dependencies: - agent-base: "npm:^7.1.2" - debug: "npm:^4.3.4" - socks: "npm:^2.8.3" - checksum: 10c0/5d2c6cecba6821389aabf18728325730504bf9bb1d9e342e7987a5d13badd7a98838cc9a55b8ed3cb866ad37cc23e1086f09c4d72d93105ce9dfe76330e9d2a6 - languageName: node - linkType: hard - -"socks@npm:^2.8.3": - version: 2.8.7 - resolution: "socks@npm:2.8.7" - dependencies: - ip-address: "npm:^10.0.1" - smart-buffer: "npm:^4.2.0" - checksum: 10c0/2805a43a1c4bcf9ebf6e018268d87b32b32b06fbbc1f9282573583acc155860dc361500f89c73bfbb157caa1b4ac78059eac0ef15d1811eb0ca75e0bdadbc9d2 - languageName: node - linkType: hard - -"solc@npm:0.8.15": - version: 0.8.15 - resolution: "solc@npm:0.8.15" - dependencies: - command-exists: "npm:^1.2.8" - commander: "npm:^8.1.0" - follow-redirects: "npm:^1.12.1" - js-sha3: "npm:0.8.0" - memorystream: "npm:^0.3.1" - semver: "npm:^5.5.0" - tmp: "npm:0.0.33" - bin: - solcjs: solc.js - checksum: 10c0/201a5bd8a7dc0665b839a69ef5efd5be06e6558b884e29cce2631e01225eaf4602da072b99c2809e36c5cc9880f17525107f49c64fa88f493de345f6e81c5e92 - languageName: node - linkType: hard - -"solc@npm:0.8.26": - version: 0.8.26 - resolution: "solc@npm:0.8.26" - dependencies: - command-exists: "npm:^1.2.8" - commander: "npm:^8.1.0" - follow-redirects: "npm:^1.12.1" - js-sha3: "npm:0.8.0" - memorystream: "npm:^0.3.1" - semver: "npm:^5.5.0" - tmp: "npm:0.0.33" - bin: - solcjs: solc.js - checksum: 10c0/1eea35da99c228d0dc1d831c29f7819e7921b67824c889a5e5f2e471a2ef5856a15fabc0b5de067f5ba994fa36fb5a563361963646fe98dad58a0e4fa17c8b2d - languageName: node - linkType: hard - -"solidity-ast@npm:^0.4.60": - version: 0.4.61 - resolution: "solidity-ast@npm:0.4.61" - checksum: 10c0/525f4f2f52d580a23fdaa6975d09e7507074a5892aa0a0964ce3865463392f16a831177856377f7022ba2ea83cff0c18f3513ee8c281ce080aca70fd8e1d5c36 - languageName: node - linkType: hard - -"source-map-support@npm:0.5.12": - version: 0.5.12 - resolution: "source-map-support@npm:0.5.12" - dependencies: - buffer-from: "npm:^1.0.0" - source-map: "npm:^0.6.0" - checksum: 10c0/e37f0dd5e78bae64493cc201a4869ee8bd08f409b372ddb8452aab355dead19e2060a5a2e9c2ab981c6ade45122419562320710fade1b694fe848a48c01c2960 - languageName: node - linkType: hard - -"source-map-support@npm:^0.5.13": - version: 0.5.21 - resolution: "source-map-support@npm:0.5.21" - dependencies: - buffer-from: "npm:^1.0.0" - source-map: "npm:^0.6.0" - checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d - languageName: node - linkType: hard - -"source-map@npm:^0.6.0": - version: 0.6.1 - resolution: "source-map@npm:0.6.1" - checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 - languageName: node - linkType: hard - -"sprintf-js@npm:~1.0.2": - version: 1.0.3 - resolution: "sprintf-js@npm:1.0.3" - checksum: 10c0/ecadcfe4c771890140da5023d43e190b7566d9cf8b2d238600f31bec0fc653f328da4450eb04bd59a431771a8e9cc0e118f0aa3974b683a4981b4e07abc2a5bb - languageName: node - linkType: hard - -"sshpk@npm:^1.7.0": - version: 1.18.0 - resolution: "sshpk@npm:1.18.0" - dependencies: - asn1: "npm:~0.2.3" - assert-plus: "npm:^1.0.0" - bcrypt-pbkdf: "npm:^1.0.0" - dashdash: "npm:^1.12.0" - ecc-jsbn: "npm:~0.1.1" - getpass: "npm:^0.1.1" - jsbn: "npm:~0.1.0" - safer-buffer: "npm:^2.0.2" - tweetnacl: "npm:~0.14.0" - bin: - sshpk-conv: bin/sshpk-conv - sshpk-sign: bin/sshpk-sign - sshpk-verify: bin/sshpk-verify - checksum: 10c0/e516e34fa981cfceef45fd2e947772cc70dbd57523e5c608e2cd73752ba7f8a99a04df7c3ed751588e8d91956b6f16531590b35d3489980d1c54c38bebcd41b1 - languageName: node - linkType: hard - -"ssri@npm:^13.0.0": - version: 13.0.0 - resolution: "ssri@npm:13.0.0" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/405f3a531cd98b013cecb355d63555dca42fd12c7bc6671738aaa9a82882ff41cdf0ef9a2b734ca4f9a760338f114c29d01d9238a65db3ccac27929bd6e6d4b2 - languageName: node - linkType: hard - -"stacktrace-parser@npm:^0.1.10": - version: 0.1.11 - resolution: "stacktrace-parser@npm:0.1.11" - dependencies: - type-fest: "npm:^0.7.1" - checksum: 10c0/4633d9afe8cd2f6c7fb2cebdee3cc8de7fd5f6f9736645fd08c0f66872a303061ce9cc0ccf46f4216dc94a7941b56e331012398dc0024dc25e46b5eb5d4ff018 - languageName: node - linkType: hard - -"statuses@npm:~2.0.1, statuses@npm:~2.0.2": - version: 2.0.2 - resolution: "statuses@npm:2.0.2" - checksum: 10c0/a9947d98ad60d01f6b26727570f3bcceb6c8fa789da64fe6889908fe2e294d57503b14bf2b5af7605c2d36647259e856635cd4c49eab41667658ec9d0080ec3f - languageName: node - linkType: hard - -"stealthy-require@npm:^1.1.1": - version: 1.1.1 - resolution: "stealthy-require@npm:1.1.1" - checksum: 10c0/714b61e152ba03a5e098b5364cc3076d8036edabc2892143fe3c64291194a401b74f071fadebba94551fb013a02f3bcad56a8be29a67b3c644ac78ffda921f80 - languageName: node - linkType: hard - -"stop-iteration-iterator@npm:^1.1.0": - version: 1.1.0 - resolution: "stop-iteration-iterator@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - internal-slot: "npm:^1.1.0" - checksum: 10c0/de4e45706bb4c0354a4b1122a2b8cc45a639e86206807ce0baf390ee9218d3ef181923fa4d2b67443367c491aa255c5fbaa64bb74648e3c5b48299928af86c09 - languageName: node - linkType: hard - -"string-format@npm:^2.0.0": - version: 2.0.0 - resolution: "string-format@npm:2.0.0" - checksum: 10c0/7bca13ba9f942f635c74d637da5e9e375435cbd428f35eeef28c3a30f81d4e63b95ff2c6cca907d897dd3951bbf52e03e3b945a0e9681358e33bd67222436538 - languageName: node - linkType: hard - -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.0.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.2, string-width@npm:^4.2.3": - version: 4.2.3 - resolution: "string-width@npm:4.2.3" - dependencies: - emoji-regex: "npm:^8.0.0" - is-fullwidth-code-point: "npm:^3.0.0" - strip-ansi: "npm:^6.0.1" - checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b - languageName: node - linkType: hard - -"string-width@npm:^1.0.2 || 2, string-width@npm:^2.1.1": - version: 2.1.1 - resolution: "string-width@npm:2.1.1" - dependencies: - is-fullwidth-code-point: "npm:^2.0.0" - strip-ansi: "npm:^4.0.0" - checksum: 10c0/e5f2b169fcf8a4257a399f95d069522f056e92ec97dbdcb9b0cdf14d688b7ca0b1b1439a1c7b9773cd79446cbafd582727279d6bfdd9f8edd306ea5e90e5b610 - languageName: node - linkType: hard - -"string-width@npm:^3.0.0, string-width@npm:^3.1.0": - version: 3.1.0 - resolution: "string-width@npm:3.1.0" - dependencies: - emoji-regex: "npm:^7.0.1" - is-fullwidth-code-point: "npm:^2.0.0" - strip-ansi: "npm:^5.1.0" - checksum: 10c0/85fa0d4f106e7999bb68c1c640c76fa69fb8c069dab75b009e29c123914e2d3b532e6cfa4b9d1bd913176fc83dedd7a2d7bf40d21a81a8a1978432cedfb65b91 - languageName: node - linkType: hard - -"string-width@npm:^5.0.1, string-width@npm:^5.1.2": - version: 5.1.2 - resolution: "string-width@npm:5.1.2" - dependencies: - eastasianwidth: "npm:^0.2.0" - emoji-regex: "npm:^9.2.2" - strip-ansi: "npm:^7.0.1" - checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca - languageName: node - linkType: hard - -"string.prototype.trim@npm:^1.2.10": - version: 1.2.10 - resolution: "string.prototype.trim@npm:1.2.10" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - define-data-property: "npm:^1.1.4" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.5" - es-object-atoms: "npm:^1.0.0" - has-property-descriptors: "npm:^1.0.2" - checksum: 10c0/8a8854241c4b54a948e992eb7dd6b8b3a97185112deb0037a134f5ba57541d8248dd610c966311887b6c2fd1181a3877bffb14d873ce937a344535dabcc648f8 - languageName: node - linkType: hard - -"string.prototype.trimend@npm:^1.0.9": - version: 1.0.9 - resolution: "string.prototype.trimend@npm:1.0.9" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/59e1a70bf9414cb4c536a6e31bef5553c8ceb0cf44d8b4d0ed65c9653358d1c64dd0ec203b100df83d0413bbcde38b8c5d49e14bc4b86737d74adc593a0d35b6 - languageName: node - linkType: hard - -"string.prototype.trimstart@npm:^1.0.8": - version: 1.0.8 - resolution: "string.prototype.trimstart@npm:1.0.8" - dependencies: - call-bind: "npm:^1.0.7" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/d53af1899959e53c83b64a5fd120be93e067da740e7e75acb433849aa640782fb6c7d4cd5b84c954c84413745a3764df135a8afeb22908b86a835290788d8366 - languageName: node - linkType: hard - -"string_decoder@npm:^1.1.1": - version: 1.3.0 - resolution: "string_decoder@npm:1.3.0" - dependencies: - safe-buffer: "npm:~5.2.0" - checksum: 10c0/810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d - languageName: node - linkType: hard - -"string_decoder@npm:~1.1.1": - version: 1.1.1 - resolution: "string_decoder@npm:1.1.1" - dependencies: - safe-buffer: "npm:~5.1.0" - checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e - languageName: node - linkType: hard - -"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": - version: 6.0.1 - resolution: "strip-ansi@npm:6.0.1" - dependencies: - ansi-regex: "npm:^5.0.1" - checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952 - languageName: node - linkType: hard - -"strip-ansi@npm:^4.0.0": - version: 4.0.0 - resolution: "strip-ansi@npm:4.0.0" - dependencies: - ansi-regex: "npm:^3.0.0" - checksum: 10c0/d75d9681e0637ea316ddbd7d4d3be010b1895a17e885155e0ed6a39755ae0fd7ef46e14b22162e66a62db122d3a98ab7917794e255532ab461bb0a04feb03e7d - languageName: node - linkType: hard - -"strip-ansi@npm:^5.0.0, strip-ansi@npm:^5.1.0, strip-ansi@npm:^5.2.0": - version: 5.2.0 - resolution: "strip-ansi@npm:5.2.0" - dependencies: - ansi-regex: "npm:^4.1.0" - checksum: 10c0/de4658c8a097ce3b15955bc6008f67c0790f85748bdc025b7bc8c52c7aee94bc4f9e50624516150ed173c3db72d851826cd57e7a85fe4e4bb6dbbebd5d297fdf - languageName: node - linkType: hard - -"strip-ansi@npm:^7.0.1": - version: 7.1.2 - resolution: "strip-ansi@npm:7.1.2" - dependencies: - ansi-regex: "npm:^6.0.1" - checksum: 10c0/0d6d7a023de33368fd042aab0bf48f4f4077abdfd60e5393e73c7c411e85e1b3a83507c11af2e656188511475776215df9ca589b4da2295c9455cc399ce1858b - languageName: node - linkType: hard - -"strip-eof@npm:^1.0.0": - version: 1.0.0 - resolution: "strip-eof@npm:1.0.0" - checksum: 10c0/f336beed8622f7c1dd02f2cbd8422da9208fae81daf184f73656332899978919d5c0ca84dc6cfc49ad1fc4dd7badcde5412a063cf4e0d7f8ed95a13a63f68f45 - languageName: node - linkType: hard - -"strip-hex-prefix@npm:1.0.0": - version: 1.0.0 - resolution: "strip-hex-prefix@npm:1.0.0" - dependencies: - is-hex-prefixed: "npm:1.0.0" - checksum: 10c0/ec9a48c334c2ba4afff2e8efebb42c3ab5439f0e1ec2b8525e184eabef7fecade7aee444af802b1be55d2df6da5b58c55166c32f8461cc7559b401137ad51851 - languageName: node - linkType: hard - -"strip-json-comments@npm:2.0.1": - version: 2.0.1 - resolution: "strip-json-comments@npm:2.0.1" - checksum: 10c0/b509231cbdee45064ff4f9fd73609e2bcc4e84a4d508e9dd0f31f70356473fde18abfb5838c17d56fb236f5a06b102ef115438de0600b749e818a35fbbc48c43 - languageName: node - linkType: hard - -"strip-json-comments@npm:^3.1.1": - version: 3.1.1 - resolution: "strip-json-comments@npm:3.1.1" - checksum: 10c0/9681a6257b925a7fa0f285851c0e613cc934a50661fa7bb41ca9cbbff89686bb4a0ee366e6ecedc4daafd01e83eee0720111ab294366fe7c185e935475ebcecd - languageName: node - linkType: hard - -"supports-color@npm:6.0.0": - version: 6.0.0 - resolution: "supports-color@npm:6.0.0" - dependencies: - has-flag: "npm:^3.0.0" - checksum: 10c0/bb88ccbfe1f60a6d580254ea29c3f1afbc41ed7e654596a276b83f6b1686266c3c91a56b54efe1c2f004ea7d505dc37890fefd1b12c3bbc76d8022de76233d0b - languageName: node - linkType: hard - -"supports-color@npm:^5.3.0": - version: 5.5.0 - resolution: "supports-color@npm:5.5.0" - dependencies: - has-flag: "npm:^3.0.0" - checksum: 10c0/6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05 - languageName: node - linkType: hard - -"supports-color@npm:^7.1.0": - version: 7.2.0 - resolution: "supports-color@npm:7.2.0" - dependencies: - has-flag: "npm:^4.0.0" - checksum: 10c0/afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124 - languageName: node - linkType: hard - -"supports-color@npm:^8.1.1": - version: 8.1.1 - resolution: "supports-color@npm:8.1.1" - dependencies: - has-flag: "npm:^4.0.0" - checksum: 10c0/ea1d3c275dd604c974670f63943ed9bd83623edc102430c05adb8efc56ba492746b6e95386e7831b872ec3807fd89dd8eb43f735195f37b5ec343e4234cc7e89 - languageName: node - linkType: hard - -"sync-request@npm:^6.0.0": - version: 6.1.0 - resolution: "sync-request@npm:6.1.0" - dependencies: - http-response-object: "npm:^3.0.1" - sync-rpc: "npm:^1.2.1" - then-request: "npm:^6.0.0" - checksum: 10c0/02b31c5d543933ce8cc2cdfa7dd7b278e2645eb54299d56f3bc9c778de3130301370f25d54ecc3f6b8b2c7bfb034daabd2b866e0c18badbde26404513212c1f5 - languageName: node - linkType: hard - -"sync-rpc@npm:^1.2.1": - version: 1.3.6 - resolution: "sync-rpc@npm:1.3.6" - dependencies: - get-port: "npm:^3.1.0" - checksum: 10c0/2abaa0e6482fe8b72e29af1f7d5f484fac5a8ea0132969bf370f59b044c4f2eb109f95b222cb06e037f89b42b374a2918e5f90aff5fb7cf3e146d8088c56f6db - languageName: node - linkType: hard - -"table-layout@npm:^1.0.2": - version: 1.0.2 - resolution: "table-layout@npm:1.0.2" - dependencies: - array-back: "npm:^4.0.1" - deep-extend: "npm:~0.6.0" - typical: "npm:^5.2.0" - wordwrapjs: "npm:^4.0.0" - checksum: 10c0/c1d16d5ba2199571606ff574a5c91cff77f14e8477746e191e7dfd294da03e61af4e8004f1f6f783da9582e1365f38d3c469980428998750d558bf29462cc6c3 - languageName: node - linkType: hard - -"table@npm:^6.8.0": - version: 6.9.0 - resolution: "table@npm:6.9.0" - dependencies: - ajv: "npm:^8.0.1" - lodash.truncate: "npm:^4.4.2" - slice-ansi: "npm:^4.0.0" - string-width: "npm:^4.2.3" - strip-ansi: "npm:^6.0.1" - checksum: 10c0/35646185712bb65985fbae5975dda46696325844b78735f95faefae83e86df0a265277819a3e67d189de6e858c509b54e66ca3958ffd51bde56ef1118d455bf4 - languageName: node - linkType: hard - -"tar@npm:^7.5.2": - version: 7.5.2 - resolution: "tar@npm:7.5.2" - dependencies: - "@isaacs/fs-minipass": "npm:^4.0.0" - chownr: "npm:^3.0.0" - minipass: "npm:^7.1.2" - minizlib: "npm:^3.1.0" - yallist: "npm:^5.0.0" - checksum: 10c0/a7d8b801139b52f93a7e34830db0de54c5aa45487c7cb551f6f3d44a112c67f1cb8ffdae856b05fd4f17b1749911f1c26f1e3a23bbe0279e17fd96077f13f467 - languageName: node - linkType: hard - -"then-request@npm:^6.0.0": - version: 6.0.2 - resolution: "then-request@npm:6.0.2" - dependencies: - "@types/concat-stream": "npm:^1.6.0" - "@types/form-data": "npm:0.0.33" - "@types/node": "npm:^8.0.0" - "@types/qs": "npm:^6.2.31" - caseless: "npm:~0.12.0" - concat-stream: "npm:^1.6.0" - form-data: "npm:^2.2.0" - http-basic: "npm:^8.1.1" - http-response-object: "npm:^3.0.1" - promise: "npm:^8.0.0" - qs: "npm:^6.4.0" - checksum: 10c0/9d2998c3470d6aa5b49993612be40627c57a89534cff5bbcc1d57f18457c14675cf3f59310816a1f85fdd40fa66feb64c63c5b76fb2163221f57223609c47949 - languageName: node - linkType: hard - -"tiny-emitter@npm:^2.1.0": - version: 2.1.0 - resolution: "tiny-emitter@npm:2.1.0" - checksum: 10c0/459c0bd6e636e80909898220eb390e1cba2b15c430b7b06cec6ac29d87acd29ef618b9b32532283af749f5d37af3534d0e3bde29fdf6bcefbf122784333c953d - languageName: node - linkType: hard - -"tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.6": - version: 0.2.15 - resolution: "tinyglobby@npm:0.2.15" - dependencies: - fdir: "npm:^6.5.0" - picomatch: "npm:^4.0.3" - checksum: 10c0/869c31490d0d88eedb8305d178d4c75e7463e820df5a9b9d388291daf93e8b1eb5de1dad1c1e139767e4269fe75f3b10d5009b2cc14db96ff98986920a186844 - languageName: node - linkType: hard - -"tmp@npm:0.0.33": - version: 0.0.33 - resolution: "tmp@npm:0.0.33" - dependencies: - os-tmpdir: "npm:~1.0.2" - checksum: 10c0/69863947b8c29cabad43fe0ce65cec5bb4b481d15d4b4b21e036b060b3edbf3bc7a5541de1bacb437bb3f7c4538f669752627fdf9b4aaf034cebd172ba373408 - languageName: node - linkType: hard - -"to-buffer@npm:^1.2.0, to-buffer@npm:^1.2.1, to-buffer@npm:^1.2.2": - version: 1.2.2 - resolution: "to-buffer@npm:1.2.2" - dependencies: - isarray: "npm:^2.0.5" - safe-buffer: "npm:^5.2.1" - typed-array-buffer: "npm:^1.0.3" - checksum: 10c0/56bc56352f14a2c4a0ab6277c5fc19b51e9534882b98eb068b39e14146591e62fa5b06bf70f7fed1626230463d7e60dca81e815096656e5e01c195c593873d12 - languageName: node - linkType: hard - -"to-regex-range@npm:^5.0.1": - version: 5.0.1 - resolution: "to-regex-range@npm:5.0.1" - dependencies: - is-number: "npm:^7.0.0" - checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892 - languageName: node - linkType: hard - -"toidentifier@npm:~1.0.1": - version: 1.0.1 - resolution: "toidentifier@npm:1.0.1" - checksum: 10c0/93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1 - languageName: node - linkType: hard - -"tough-cookie@npm:^2.3.3, tough-cookie@npm:~2.5.0": - version: 2.5.0 - resolution: "tough-cookie@npm:2.5.0" - dependencies: - psl: "npm:^1.1.28" - punycode: "npm:^2.1.1" - checksum: 10c0/e1cadfb24d40d64ca16de05fa8192bc097b66aeeb2704199b055ff12f450e4f30c927ce250f53d01f39baad18e1c11d66f65e545c5c6269de4c366fafa4c0543 - languageName: node - linkType: hard - -"tr46@npm:~0.0.3": - version: 0.0.3 - resolution: "tr46@npm:0.0.3" - checksum: 10c0/047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11 - languageName: node - linkType: hard - -"treeify@npm:^1.1.0": - version: 1.1.0 - resolution: "treeify@npm:1.1.0" - checksum: 10c0/2f0dea9e89328b8a42296a3963d341ab19897a05b723d6b0bced6b28701a340d2a7b03241aef807844198e46009aaf3755139274eb082cfce6fdc1935cbd69dd - languageName: node - linkType: hard - -"ts-command-line-args@npm:^2.2.0": - version: 2.5.1 - resolution: "ts-command-line-args@npm:2.5.1" - dependencies: - chalk: "npm:^4.1.0" - command-line-args: "npm:^5.1.1" - command-line-usage: "npm:^6.1.0" - string-format: "npm:^2.0.0" - bin: - write-markdown: dist/write-markdown.js - checksum: 10c0/affb43fd4e17b496b6fd195888c7a80e6d7fe54f121501926bb2376f2167c238f7fa8f2e2d98bf2498ff883240d9f914e3558701807f40dca882616a8fd763b1 - languageName: node - linkType: hard - -"ts-essentials@npm:^7.0.1": - version: 7.0.3 - resolution: "ts-essentials@npm:7.0.3" - peerDependencies: - typescript: ">=3.7.0" - checksum: 10c0/ea1919534ec6ce4ca4d9cb0ff1ab8e053509237da8d4298762ab3bfba4e78ca5649a599ce78a5c7c2624f3a7a971f62b265b7b0c3c881336e4fa6acaf6f37544 - languageName: node - linkType: hard - -"ts-node@npm:^10.9.2": - version: 10.9.2 - resolution: "ts-node@npm:10.9.2" - dependencies: - "@cspotcode/source-map-support": "npm:^0.8.0" - "@tsconfig/node10": "npm:^1.0.7" - "@tsconfig/node12": "npm:^1.0.7" - "@tsconfig/node14": "npm:^1.0.0" - "@tsconfig/node16": "npm:^1.0.2" - acorn: "npm:^8.4.1" - acorn-walk: "npm:^8.1.1" - arg: "npm:^4.1.0" - create-require: "npm:^1.1.0" - diff: "npm:^4.0.1" - make-error: "npm:^1.1.1" - v8-compile-cache-lib: "npm:^3.0.1" - yn: "npm:3.1.1" - peerDependencies: - "@swc/core": ">=1.2.50" - "@swc/wasm": ">=1.2.50" - "@types/node": "*" - typescript: ">=2.7" - peerDependenciesMeta: - "@swc/core": - optional: true - "@swc/wasm": - optional: true - bin: - ts-node: dist/bin.js - ts-node-cwd: dist/bin-cwd.js - ts-node-esm: dist/bin-esm.js - ts-node-script: dist/bin-script.js - ts-node-transpile-only: dist/bin-transpile.js - ts-script: dist/bin-script-deprecated.js - checksum: 10c0/5f29938489f96982a25ba650b64218e83a3357d76f7bede80195c65ab44ad279c8357264639b7abdd5d7e75fc269a83daa0e9c62fd8637a3def67254ecc9ddc2 - languageName: node - linkType: hard - -"tslib@npm:^1.11.1, tslib@npm:^1.9.3": - version: 1.14.1 - resolution: "tslib@npm:1.14.1" - checksum: 10c0/69ae09c49eea644bc5ebe1bca4fa4cc2c82b7b3e02f43b84bd891504edf66dbc6b2ec0eef31a957042de2269139e4acff911e6d186a258fb14069cd7f6febce2 - languageName: node - linkType: hard - -"tslib@npm:^2.3.1, tslib@npm:^2.6.2": - version: 2.8.1 - resolution: "tslib@npm:2.8.1" - checksum: 10c0/9c4759110a19c53f992d9aae23aac5ced636e99887b51b9e61def52611732872ff7668757d4e4c61f19691e36f4da981cd9485e869b4a7408d689f6bf1f14e62 - languageName: node - linkType: hard - -"tsort@npm:0.0.1": - version: 0.0.1 - resolution: "tsort@npm:0.0.1" - checksum: 10c0/ea3d034ab341dd9282c972710496e98539408d77f1cd476ad0551a9731f40586b65ab917b39745f902bf32037a3161eee3821405f6ab15bcd2ce4cc0a52d1da6 - languageName: node - linkType: hard - -"tunnel-agent@npm:^0.6.0": - version: 0.6.0 - resolution: "tunnel-agent@npm:0.6.0" - dependencies: - safe-buffer: "npm:^5.0.1" - checksum: 10c0/4c7a1b813e7beae66fdbf567a65ec6d46313643753d0beefb3c7973d66fcec3a1e7f39759f0a0b4465883499c6dc8b0750ab8b287399af2e583823e40410a17a - languageName: node - linkType: hard - -"tweetnacl@npm:^0.14.3, tweetnacl@npm:~0.14.0": - version: 0.14.5 - resolution: "tweetnacl@npm:0.14.5" - checksum: 10c0/4612772653512c7bc19e61923fbf42903f5e0389ec76a4a1f17195859d114671ea4aa3b734c2029ce7e1fa7e5cc8b80580f67b071ecf0b46b5636d030a0102a2 - languageName: node - linkType: hard - -"type-check@npm:^0.4.0, type-check@npm:~0.4.0": - version: 0.4.0 - resolution: "type-check@npm:0.4.0" - dependencies: - prelude-ls: "npm:^1.2.1" - checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58 - languageName: node - linkType: hard - -"type-detect@npm:^4.0.0, type-detect@npm:^4.1.0": - version: 4.1.0 - resolution: "type-detect@npm:4.1.0" - checksum: 10c0/df8157ca3f5d311edc22885abc134e18ff8ffbc93d6a9848af5b682730ca6a5a44499259750197250479c5331a8a75b5537529df5ec410622041650a7f293e2a - languageName: node - linkType: hard - -"type-fest@npm:^0.20.2": - version: 0.20.2 - resolution: "type-fest@npm:0.20.2" - checksum: 10c0/dea9df45ea1f0aaa4e2d3bed3f9a0bfe9e5b2592bddb92eb1bf06e50bcf98dbb78189668cd8bc31a0511d3fc25539b4cd5c704497e53e93e2d40ca764b10bfc3 - languageName: node - linkType: hard - -"type-fest@npm:^0.21.3": - version: 0.21.3 - resolution: "type-fest@npm:0.21.3" - checksum: 10c0/902bd57bfa30d51d4779b641c2bc403cdf1371fb9c91d3c058b0133694fcfdb817aef07a47f40faf79039eecbaa39ee9d3c532deff244f3a19ce68cea71a61e8 - languageName: node - linkType: hard - -"type-fest@npm:^0.7.1": - version: 0.7.1 - resolution: "type-fest@npm:0.7.1" - checksum: 10c0/ce6b5ef806a76bf08d0daa78d65e61f24d9a0380bd1f1df36ffb61f84d14a0985c3a921923cf4b97831278cb6fa9bf1b89c751df09407e0510b14e8c081e4e0f - languageName: node - linkType: hard - -"type-is@npm:~1.6.18": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" - dependencies: - media-typer: "npm:0.3.0" - mime-types: "npm:~2.1.24" - checksum: 10c0/a23daeb538591b7efbd61ecf06b6feb2501b683ffdc9a19c74ef5baba362b4347e42f1b4ed81f5882a8c96a3bfff7f93ce3ffaf0cbbc879b532b04c97a55db9d - languageName: node - linkType: hard - -"typechain@npm:^8.0.0": - version: 8.3.2 - resolution: "typechain@npm:8.3.2" - dependencies: - "@types/prettier": "npm:^2.1.1" - debug: "npm:^4.3.1" - fs-extra: "npm:^7.0.0" - glob: "npm:7.1.7" - js-sha3: "npm:^0.8.0" - lodash: "npm:^4.17.15" - mkdirp: "npm:^1.0.4" - prettier: "npm:^2.3.1" - ts-command-line-args: "npm:^2.2.0" - ts-essentials: "npm:^7.0.1" - peerDependencies: - typescript: ">=4.3.0" - bin: - typechain: dist/cli/cli.js - checksum: 10c0/1ea660cc7c699c6ac68da67b76454eb4e9395c54666d924ca67f983ae8eb5b5e7dab0a576beb55dbfad75ea784a3f68cb1ca019d332293b7291731c156ead5b5 - languageName: node - linkType: hard - -"typed-array-buffer@npm:^1.0.3": - version: 1.0.3 - resolution: "typed-array-buffer@npm:1.0.3" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-typed-array: "npm:^1.1.14" - checksum: 10c0/1105071756eb248774bc71646bfe45b682efcad93b55532c6ffa4518969fb6241354e4aa62af679ae83899ec296d69ef88f1f3763657cdb3a4d29321f7b83079 - languageName: node - linkType: hard - -"typed-array-byte-length@npm:^1.0.3": - version: 1.0.3 - resolution: "typed-array-byte-length@npm:1.0.3" - dependencies: - call-bind: "npm:^1.0.8" - for-each: "npm:^0.3.3" - gopd: "npm:^1.2.0" - has-proto: "npm:^1.2.0" - is-typed-array: "npm:^1.1.14" - checksum: 10c0/6ae083c6f0354f1fce18b90b243343b9982affd8d839c57bbd2c174a5d5dc71be9eb7019ffd12628a96a4815e7afa85d718d6f1e758615151d5f35df841ffb3e - languageName: node - linkType: hard - -"typed-array-byte-offset@npm:^1.0.4": - version: 1.0.4 - resolution: "typed-array-byte-offset@npm:1.0.4" - dependencies: - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - for-each: "npm:^0.3.3" - gopd: "npm:^1.2.0" - has-proto: "npm:^1.2.0" - is-typed-array: "npm:^1.1.15" - reflect.getprototypeof: "npm:^1.0.9" - checksum: 10c0/3d805b050c0c33b51719ee52de17c1cd8e6a571abdf0fffb110e45e8dd87a657e8b56eee94b776b13006d3d347a0c18a730b903cf05293ab6d92e99ff8f77e53 - languageName: node - linkType: hard - -"typed-array-length@npm:^1.0.7": - version: 1.0.7 - resolution: "typed-array-length@npm:1.0.7" - dependencies: - call-bind: "npm:^1.0.7" - for-each: "npm:^0.3.3" - gopd: "npm:^1.0.1" - is-typed-array: "npm:^1.1.13" - possible-typed-array-names: "npm:^1.0.0" - reflect.getprototypeof: "npm:^1.0.6" - checksum: 10c0/e38f2ae3779584c138a2d8adfa8ecf749f494af3cd3cdafe4e688ce51418c7d2c5c88df1bd6be2bbea099c3f7cea58c02ca02ed438119e91f162a9de23f61295 - languageName: node - linkType: hard - -"typed-function@npm:^2.1.0": - version: 2.1.0 - resolution: "typed-function@npm:2.1.0" - checksum: 10c0/faf82c1c70d147e103662be8856b5adfa5721a318955df8daf4d73f5fbfeb28741df2a3b277cf0145e139271731ad2db704232a0acab5188016e20738271d63a - languageName: node - linkType: hard - -"typed-function@npm:^4.1.1": - version: 4.2.2 - resolution: "typed-function@npm:4.2.2" - checksum: 10c0/92f2acc7e6d94431f4b37c2219d131cc90c1f43c19c097b7e337408cfd91336e481680d3362e30b5616318272950480ba670572b4585e8c690ca509d65c97554 - languageName: node - linkType: hard - -"typedarray@npm:^0.0.6": - version: 0.0.6 - resolution: "typedarray@npm:0.0.6" - checksum: 10c0/6005cb31df50eef8b1f3c780eb71a17925f3038a100d82f9406ac2ad1de5eb59f8e6decbdc145b3a1f8e5836e17b0c0002fb698b9fe2516b8f9f9ff602d36412 - languageName: node - linkType: hard - -"typescript@npm:^5.6.3": - version: 5.9.3 - resolution: "typescript@npm:5.9.3" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10c0/6bd7552ce39f97e711db5aa048f6f9995b53f1c52f7d8667c1abdc1700c68a76a308f579cd309ce6b53646deb4e9a1be7c813a93baaf0a28ccd536a30270e1c5 - languageName: node - linkType: hard - -"typescript@patch:typescript@npm%3A^5.6.3#optional!builtin": - version: 5.9.3 - resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=8c6c40" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10c0/6f7e53bf0d9702350deeb6f35e08b69cbc8b958c33e0ec77bdc0ad6a6c8e280f3959dcbfde6f5b0848bece57810696489deaaa53d75de3578ff255d168c1efbd - languageName: node - linkType: hard - -"typical@npm:^4.0.0": - version: 4.0.0 - resolution: "typical@npm:4.0.0" - checksum: 10c0/f300b198fb9fe743859b75ec761d53c382723dc178bbce4957d9cb754f2878a44ce17dc0b6a5156c52be1065449271f63754ba594dac225b80ce3aa39f9241ed - languageName: node - linkType: hard - -"typical@npm:^5.2.0": - version: 5.2.0 - resolution: "typical@npm:5.2.0" - checksum: 10c0/1cceaa20d4b77a02ab8eccfe4a20500729431aecc1e1b7dc70c0e726e7966efdca3bf0b4bee285555b751647e37818fd99154ea73f74b5c29adc95d3c13f5973 - languageName: node - linkType: hard - -"unbox-primitive@npm:^1.1.0": - version: 1.1.0 - resolution: "unbox-primitive@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.3" - has-bigints: "npm:^1.0.2" - has-symbols: "npm:^1.1.0" - which-boxed-primitive: "npm:^1.1.1" - checksum: 10c0/7dbd35ab02b0e05fe07136c72cb9355091242455473ec15057c11430129bab38b7b3624019b8778d02a881c13de44d63cd02d122ee782fb519e1de7775b5b982 - languageName: node - linkType: hard - -"undici-types@npm:~7.16.0": - version: 7.16.0 - resolution: "undici-types@npm:7.16.0" - checksum: 10c0/3033e2f2b5c9f1504bdc5934646cb54e37ecaca0f9249c983f7b1fc2e87c6d18399ebb05dc7fd5419e02b2e915f734d872a65da2e3eeed1813951c427d33cc9a - languageName: node - linkType: hard - -"undici@npm:^5.14.0": - version: 5.29.0 - resolution: "undici@npm:5.29.0" - dependencies: - "@fastify/busboy": "npm:^2.0.0" - checksum: 10c0/e4e4d631ca54ee0ad82d2e90e7798fa00a106e27e6c880687e445cc2f13b4bc87c5eba2a88c266c3eecffb18f26e227b778412da74a23acc374fca7caccec49b - languageName: node - linkType: hard - -"unfetch@npm:^4.2.0": - version: 4.2.0 - resolution: "unfetch@npm:4.2.0" - checksum: 10c0/a5c0a896a6f09f278b868075aea65652ad185db30e827cb7df45826fe5ab850124bf9c44c4dafca4bf0c55a0844b17031e8243467fcc38dd7a7d435007151f1b - languageName: node - linkType: hard - -"unique-filename@npm:^5.0.0": - version: 5.0.0 - resolution: "unique-filename@npm:5.0.0" - dependencies: - unique-slug: "npm:^6.0.0" - checksum: 10c0/afb897e9cf4c2fb622ea716f7c2bb462001928fc5f437972213afdf1cc32101a230c0f1e9d96fc91ee5185eca0f2feb34127145874975f347be52eb91d6ccc2c - languageName: node - linkType: hard - -"unique-slug@npm:^6.0.0": - version: 6.0.0 - resolution: "unique-slug@npm:6.0.0" - dependencies: - imurmurhash: "npm:^0.1.4" - checksum: 10c0/da7ade4cb04eb33ad0499861f82fe95ce9c7c878b7139dc54d140ecfb6a6541c18a5c8dac16188b8b379fe62c0c1f1b710814baac910cde5f4fec06212126c6a - languageName: node - linkType: hard - -"uniswap@npm:^0.0.1": - version: 0.0.1 - resolution: "uniswap@npm:0.0.1" - dependencies: - hardhat: "npm:^2.2.1" - checksum: 10c0/52c8245f792c218ffd0f1b65ae00548d09497d2d956e2e6f166bb8890951bc48ebc08df541e96648b640e13ac061f5c957047ab69230dd5eb26a24ccced492d6 - languageName: node - linkType: hard - -"universalify@npm:^0.1.0": - version: 0.1.2 - resolution: "universalify@npm:0.1.2" - checksum: 10c0/e70e0339f6b36f34c9816f6bf9662372bd241714dc77508d231d08386d94f2c4aa1ba1318614f92015f40d45aae1b9075cd30bd490efbe39387b60a76ca3f045 - languageName: node - linkType: hard - -"unpipe@npm:~1.0.0": - version: 1.0.0 - resolution: "unpipe@npm:1.0.0" - checksum: 10c0/193400255bd48968e5c5383730344fbb4fa114cdedfab26e329e50dd2d81b134244bb8a72c6ac1b10ab0281a58b363d06405632c9d49ca9dfd5e90cbd7d0f32c - languageName: node - linkType: hard - -"uri-js@npm:^4.2.2": - version: 4.4.1 - resolution: "uri-js@npm:4.4.1" - dependencies: - punycode: "npm:^2.1.0" - checksum: 10c0/4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c - languageName: node - linkType: hard - -"url@npm:^0.11.0": - version: 0.11.4 - resolution: "url@npm:0.11.4" - dependencies: - punycode: "npm:^1.4.1" - qs: "npm:^6.12.3" - checksum: 10c0/cc93405ae4a9b97a2aa60ca67f1cb1481c0221cb4725a7341d149be5e2f9cfda26fd432d64dbbec693d16593b68b8a46aad8e5eab21f814932134c9d8620c662 - languageName: node - linkType: hard - -"utf-8-validate@npm:5.0.7": - version: 5.0.7 - resolution: "utf-8-validate@npm:5.0.7" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10c0/1f343467b4509a37e4d8b06be527b78869a7a950fe039f24fad9bc5951208730227789c1f22665988124762e05a2080056a6cd68ba6bec5988c16ee30bfa9737 - languageName: node - linkType: hard - -"utf8@npm:3.0.0": - version: 3.0.0 - resolution: "utf8@npm:3.0.0" - checksum: 10c0/675d008bab65fc463ce718d5cae8fd4c063540f269e4f25afebce643098439d53e7164bb1f193e0c3852825c7e3e32fbd8641163d19a618dbb53f1f09acb0d5a - languageName: node - linkType: hard - -"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1": - version: 1.0.2 - resolution: "util-deprecate@npm:1.0.2" - checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942 - languageName: node - linkType: hard - -"utils-merge@npm:1.0.1": - version: 1.0.1 - resolution: "utils-merge@npm:1.0.1" - checksum: 10c0/02ba649de1b7ca8854bfe20a82f1dfbdda3fb57a22ab4a8972a63a34553cf7aa51bc9081cf7e001b035b88186d23689d69e71b510e610a09a4c66f68aa95b672 - languageName: node - linkType: hard - -"uuid@npm:2.0.1": - version: 2.0.1 - resolution: "uuid@npm:2.0.1" - checksum: 10c0/8241e74e709bf0398a64c350ebdac8ba8340ee74858f239eee06972b7fbe09f2babd20df486692f68a695510df806f6bd17ffce3eadc4d3c13f2128b262d6f06 - languageName: node - linkType: hard - -"uuid@npm:^3.3.2": - version: 3.4.0 - resolution: "uuid@npm:3.4.0" - bin: - uuid: ./bin/uuid - checksum: 10c0/1c13950df865c4f506ebfe0a24023571fa80edf2e62364297a537c80af09c618299797bbf2dbac6b1f8ae5ad182ba474b89db61e0e85839683991f7e08795347 - languageName: node - linkType: hard - -"uuid@npm:^8.3.2": - version: 8.3.2 - resolution: "uuid@npm:8.3.2" - bin: - uuid: dist/bin/uuid - checksum: 10c0/bcbb807a917d374a49f475fae2e87fdca7da5e5530820ef53f65ba1d12131bd81a92ecf259cc7ce317cbe0f289e7d79fdfebcef9bfa3087c8c8a2fa304c9be54 - languageName: node - linkType: hard - -"v8-compile-cache-lib@npm:^3.0.1": - version: 3.0.1 - resolution: "v8-compile-cache-lib@npm:3.0.1" - checksum: 10c0/bdc36fb8095d3b41df197f5fb6f11e3a26adf4059df3213e3baa93810d8f0cc76f9a74aaefc18b73e91fe7e19154ed6f134eda6fded2e0f1c8d2272ed2d2d391 - languageName: node - linkType: hard - -"vary@npm:^1, vary@npm:~1.1.2": - version: 1.1.2 - resolution: "vary@npm:1.1.2" - checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f - languageName: node - linkType: hard - -"verror@npm:1.10.0": - version: 1.10.0 - resolution: "verror@npm:1.10.0" - dependencies: - assert-plus: "npm:^1.0.0" - core-util-is: "npm:1.0.2" - extsprintf: "npm:^1.2.0" - checksum: 10c0/37ccdf8542b5863c525128908ac80f2b476eed36a32cb944de930ca1e2e78584cc435c4b9b4c68d0fc13a47b45ff364b4be43aa74f8804f9050140f660fb660d - languageName: node - linkType: hard - -"web3-utils@npm:^1.3.4": - version: 1.10.4 - resolution: "web3-utils@npm:1.10.4" - dependencies: - "@ethereumjs/util": "npm:^8.1.0" - bn.js: "npm:^5.2.1" - ethereum-bloom-filters: "npm:^1.0.6" - ethereum-cryptography: "npm:^2.1.2" - ethjs-unit: "npm:0.1.6" - number-to-bn: "npm:1.7.0" - randombytes: "npm:^2.1.0" - utf8: "npm:3.0.0" - checksum: 10c0/fbd5c8ec71e944e9e66e3436dbd4446927c3edc95f81928723f9ac137e0d821c5cbb92dba0ed5bbac766f919f919c9d8e316e459c51d876d5188321642676677 - languageName: node - linkType: hard - -"webidl-conversions@npm:^3.0.0": - version: 3.0.1 - resolution: "webidl-conversions@npm:3.0.1" - checksum: 10c0/5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db - languageName: node - linkType: hard - -"whatwg-url@npm:^5.0.0": - version: 5.0.0 - resolution: "whatwg-url@npm:5.0.0" - dependencies: - tr46: "npm:~0.0.3" - webidl-conversions: "npm:^3.0.0" - checksum: 10c0/1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5 - languageName: node - linkType: hard - -"which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1": - version: 1.1.1 - resolution: "which-boxed-primitive@npm:1.1.1" - dependencies: - is-bigint: "npm:^1.1.0" - is-boolean-object: "npm:^1.2.1" - is-number-object: "npm:^1.1.1" - is-string: "npm:^1.1.1" - is-symbol: "npm:^1.1.1" - checksum: 10c0/aceea8ede3b08dede7dce168f3883323f7c62272b49801716e8332ff750e7ae59a511ae088840bc6874f16c1b7fd296c05c949b0e5b357bfe3c431b98c417abe - languageName: node - linkType: hard - -"which-builtin-type@npm:^1.2.1": - version: 1.2.1 - resolution: "which-builtin-type@npm:1.2.1" - dependencies: - call-bound: "npm:^1.0.2" - function.prototype.name: "npm:^1.1.6" - has-tostringtag: "npm:^1.0.2" - is-async-function: "npm:^2.0.0" - is-date-object: "npm:^1.1.0" - is-finalizationregistry: "npm:^1.1.0" - is-generator-function: "npm:^1.0.10" - is-regex: "npm:^1.2.1" - is-weakref: "npm:^1.0.2" - isarray: "npm:^2.0.5" - which-boxed-primitive: "npm:^1.1.0" - which-collection: "npm:^1.0.2" - which-typed-array: "npm:^1.1.16" - checksum: 10c0/8dcf323c45e5c27887800df42fbe0431d0b66b1163849bb7d46b5a730ad6a96ee8bfe827d078303f825537844ebf20c02459de41239a0a9805e2fcb3cae0d471 - languageName: node - linkType: hard - -"which-collection@npm:^1.0.2": - version: 1.0.2 - resolution: "which-collection@npm:1.0.2" - dependencies: - is-map: "npm:^2.0.3" - is-set: "npm:^2.0.3" - is-weakmap: "npm:^2.0.2" - is-weakset: "npm:^2.0.3" - checksum: 10c0/3345fde20964525a04cdf7c4a96821f85f0cc198f1b2ecb4576e08096746d129eb133571998fe121c77782ac8f21cbd67745a3d35ce100d26d4e684c142ea1f2 - languageName: node - linkType: hard - -"which-module@npm:^2.0.0": - version: 2.0.1 - resolution: "which-module@npm:2.0.1" - checksum: 10c0/087038e7992649eaffa6c7a4f3158d5b53b14cf5b6c1f0e043dccfacb1ba179d12f17545d5b85ebd94a42ce280a6fe65d0cbcab70f4fc6daad1dfae85e0e6a3e - languageName: node - linkType: hard - -"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.19": - version: 1.1.19 - resolution: "which-typed-array@npm:1.1.19" - dependencies: - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - for-each: "npm:^0.3.5" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/702b5dc878addafe6c6300c3d0af5983b175c75fcb4f2a72dfc3dd38d93cf9e89581e4b29c854b16ea37e50a7d7fca5ae42ece5c273d8060dcd603b2404bbb3f - languageName: node - linkType: hard - -"which@npm:1.3.1, which@npm:^1.2.9": - version: 1.3.1 - resolution: "which@npm:1.3.1" - dependencies: - isexe: "npm:^2.0.0" - bin: - which: ./bin/which - checksum: 10c0/e945a8b6bbf6821aaaef7f6e0c309d4b615ef35699576d5489b4261da9539f70393c6b2ce700ee4321c18f914ebe5644bc4631b15466ffbaad37d83151f6af59 - languageName: node - linkType: hard - -"which@npm:^2.0.1": - version: 2.0.2 - resolution: "which@npm:2.0.2" - dependencies: - isexe: "npm:^2.0.0" - bin: - node-which: ./bin/node-which - checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f - languageName: node - linkType: hard - -"which@npm:^6.0.0": - version: 6.0.0 - resolution: "which@npm:6.0.0" - dependencies: - isexe: "npm:^3.1.1" - bin: - node-which: bin/which.js - checksum: 10c0/fe9d6463fe44a76232bb6e3b3181922c87510a5b250a98f1e43a69c99c079b3f42ddeca7e03d3e5f2241bf2d334f5a7657cfa868b97c109f3870625842f4cc15 - languageName: node - linkType: hard - -"wide-align@npm:1.1.3": - version: 1.1.3 - resolution: "wide-align@npm:1.1.3" - dependencies: - string-width: "npm:^1.0.2 || 2" - checksum: 10c0/9bf69ad55f7bcccd5a7af2ebbb8115aebf1b17e6d4f0a2a40a84f5676e099153b9adeab331e306661bf2a8419361bacba83057a62163947507473ce7ac4116b7 - languageName: node - linkType: hard - -"widest-line@npm:^3.1.0": - version: 3.1.0 - resolution: "widest-line@npm:3.1.0" - dependencies: - string-width: "npm:^4.0.0" - checksum: 10c0/b1e623adcfb9df35350dd7fc61295d6d4a1eaa65a406ba39c4b8360045b614af95ad10e05abf704936ed022569be438c4bfa02d6d031863c4166a238c301119f - languageName: node - linkType: hard - -"word-wrap@npm:^1.2.5": - version: 1.2.5 - resolution: "word-wrap@npm:1.2.5" - checksum: 10c0/e0e4a1ca27599c92a6ca4c32260e8a92e8a44f4ef6ef93f803f8ed823f486e0889fc0b93be4db59c8d51b3064951d25e43d434e95dc8c960cc3a63d65d00ba20 - languageName: node - linkType: hard - -"wordwrapjs@npm:^4.0.0": - version: 4.0.1 - resolution: "wordwrapjs@npm:4.0.1" - dependencies: - reduce-flatten: "npm:^2.0.0" - typical: "npm:^5.2.0" - checksum: 10c0/4cc43eb0f6adb7214d427e68918357a9df483815efbb4c59beb30972714b1804ede2a551b1dfd2234c0bd413c6f07d6daa6522d1c53f43f89a376d815fbf3c43 - languageName: node - linkType: hard - -"workerpool@npm:^6.5.1": - version: 6.5.1 - resolution: "workerpool@npm:6.5.1" - checksum: 10c0/58e8e969782292cb3a7bfba823f1179a7615250a0cefb4841d5166234db1880a3d0fe83a31dd8d648329ec92c2d0cd1890ad9ec9e53674bb36ca43e9753cdeac - languageName: node - linkType: hard - -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": - version: 7.0.0 - resolution: "wrap-ansi@npm:7.0.0" - dependencies: - ansi-styles: "npm:^4.0.0" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da - languageName: node - linkType: hard - -"wrap-ansi@npm:^5.1.0": - version: 5.1.0 - resolution: "wrap-ansi@npm:5.1.0" - dependencies: - ansi-styles: "npm:^3.2.0" - string-width: "npm:^3.0.0" - strip-ansi: "npm:^5.0.0" - checksum: 10c0/fcd0b39b7453df512f2fe8c714a1c1b147fe3e6a4b5a2e4de6cadc3af47212f335eceaffe588e98322d6345e72672137e2c0b834d8a662e73a32296c1c8216bb - languageName: node - linkType: hard - -"wrap-ansi@npm:^8.1.0": - version: 8.1.0 - resolution: "wrap-ansi@npm:8.1.0" - dependencies: - ansi-styles: "npm:^6.1.0" - string-width: "npm:^5.0.1" - strip-ansi: "npm:^7.0.1" - checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60 - languageName: node - linkType: hard - -"wrappy@npm:1": - version: 1.0.2 - resolution: "wrappy@npm:1.0.2" - checksum: 10c0/56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0 - languageName: node - linkType: hard - -"ws@npm:7.4.6": - version: 7.4.6 - resolution: "ws@npm:7.4.6" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 10c0/4b44b59bbc0549c852fb2f0cdb48e40e122a1b6078aeed3d65557cbeb7d37dda7a4f0027afba2e6a7a695de17701226d02b23bd15c97b0837808c16345c62f8e - languageName: node - linkType: hard - -"ws@npm:8.18.0": - version: 8.18.0 - resolution: "ws@npm:8.18.0" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ">=5.0.2" - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 10c0/25eb33aff17edcb90721ed6b0eb250976328533ad3cd1a28a274bd263682e7296a6591ff1436d6cbc50fa67463158b062f9d1122013b361cec99a05f84680e06 - languageName: node - linkType: hard - -"ws@npm:^7.4.6": - version: 7.5.10 - resolution: "ws@npm:7.5.10" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 10c0/bd7d5f4aaf04fae7960c23dcb6c6375d525e00f795dd20b9385902bd008c40a94d3db3ce97d878acc7573df852056ca546328b27b39f47609f80fb22a0a9b61d - languageName: node - linkType: hard - -"xmlhttprequest@npm:1.8.0": - version: 1.8.0 - resolution: "xmlhttprequest@npm:1.8.0" - checksum: 10c0/c890661562e4cb6c36a126071e956047164296f58b0058ab28a9c9f1c3b46a65bf421a242d3449363a2aadc3d9769146160b10a501710d476a17d77d41a5c99e - languageName: node - linkType: hard - -"xtend@npm:^4.0.1, xtend@npm:^4.0.2, xtend@npm:~4.0.0": - version: 4.0.2 - resolution: "xtend@npm:4.0.2" - checksum: 10c0/366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e - languageName: node - linkType: hard - -"y18n@npm:^4.0.0": - version: 4.0.3 - resolution: "y18n@npm:4.0.3" - checksum: 10c0/308a2efd7cc296ab2c0f3b9284fd4827be01cfeb647b3ba18230e3a416eb1bc887ac050de9f8c4fd9e7856b2e8246e05d190b53c96c5ad8d8cb56dffb6f81024 - languageName: node - linkType: hard - -"y18n@npm:^5.0.5": - version: 5.0.8 - resolution: "y18n@npm:5.0.8" - checksum: 10c0/4df2842c36e468590c3691c894bc9cdbac41f520566e76e24f59401ba7d8b4811eb1e34524d57e54bc6d864bcb66baab7ffd9ca42bf1eda596618f9162b91249 - languageName: node - linkType: hard - -"yallist@npm:^3.0.2": - version: 3.1.1 - resolution: "yallist@npm:3.1.1" - checksum: 10c0/c66a5c46bc89af1625476f7f0f2ec3653c1a1791d2f9407cfb4c2ba812a1e1c9941416d71ba9719876530e3340a99925f697142989371b72d93b9ee628afd8c1 - languageName: node - linkType: hard - -"yallist@npm:^4.0.0": - version: 4.0.0 - resolution: "yallist@npm:4.0.0" - checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a - languageName: node - linkType: hard - -"yallist@npm:^5.0.0": - version: 5.0.0 - resolution: "yallist@npm:5.0.0" - checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416 - languageName: node - linkType: hard - -"yargs-parser@npm:13.1.2, yargs-parser@npm:^13.1.0, yargs-parser@npm:^13.1.2": - version: 13.1.2 - resolution: "yargs-parser@npm:13.1.2" - dependencies: - camelcase: "npm:^5.0.0" - decamelize: "npm:^1.2.0" - checksum: 10c0/aeded49d2285c5e284e48b7c69eab4a6cf1c94decfdba073125cc4054ff49da7128a3c7c840edb6b497a075e455be304e89ba4b9228be35f1ed22f4a7bba62cc - languageName: node - linkType: hard - -"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.9": - version: 20.2.9 - resolution: "yargs-parser@npm:20.2.9" - checksum: 10c0/0685a8e58bbfb57fab6aefe03c6da904a59769bd803a722bb098bd5b0f29d274a1357762c7258fb487512811b8063fb5d2824a3415a0a4540598335b3b086c72 - languageName: node - linkType: hard - -"yargs-unparser@npm:1.6.0": - version: 1.6.0 - resolution: "yargs-unparser@npm:1.6.0" - dependencies: - flat: "npm:^4.1.0" - lodash: "npm:^4.17.15" - yargs: "npm:^13.3.0" - checksum: 10c0/47e3eb081d1745a8e05332fef8c5aaecfae4e824f915280dccd44401b4e2342d6827cf8fd7b86cdebd1d08ec19f84ea51a555a3968525fd8c59564bdc3bb283d - languageName: node - linkType: hard - -"yargs-unparser@npm:^2.0.0": - version: 2.0.0 - resolution: "yargs-unparser@npm:2.0.0" - dependencies: - camelcase: "npm:^6.0.0" - decamelize: "npm:^4.0.0" - flat: "npm:^5.0.2" - is-plain-obj: "npm:^2.1.0" - checksum: 10c0/a5a7d6dc157efa95122e16780c019f40ed91d4af6d2bac066db8194ed0ec5c330abb115daa5a79ff07a9b80b8ea80c925baacf354c4c12edd878c0529927ff03 - languageName: node - linkType: hard - -"yargs@npm:13.2.4": - version: 13.2.4 - resolution: "yargs@npm:13.2.4" - dependencies: - cliui: "npm:^5.0.0" - find-up: "npm:^3.0.0" - get-caller-file: "npm:^2.0.1" - os-locale: "npm:^3.1.0" - require-directory: "npm:^2.1.1" - require-main-filename: "npm:^2.0.0" - set-blocking: "npm:^2.0.0" - string-width: "npm:^3.0.0" - which-module: "npm:^2.0.0" - y18n: "npm:^4.0.0" - yargs-parser: "npm:^13.1.0" - checksum: 10c0/7909814a6347d7bf162d7bd209d9bfd5789d88ae6bf488d567c83fc558c0a729cc8eb80beccd56b15039e345e0d4ee03d7f9a057f685c73eac8641f4c3722795 - languageName: node - linkType: hard - -"yargs@npm:13.3.2, yargs@npm:^13.3.0": - version: 13.3.2 - resolution: "yargs@npm:13.3.2" - dependencies: - cliui: "npm:^5.0.0" - find-up: "npm:^3.0.0" - get-caller-file: "npm:^2.0.1" - require-directory: "npm:^2.1.1" - require-main-filename: "npm:^2.0.0" - set-blocking: "npm:^2.0.0" - string-width: "npm:^3.0.0" - which-module: "npm:^2.0.0" - y18n: "npm:^4.0.0" - yargs-parser: "npm:^13.1.2" - checksum: 10c0/6612f9f0ffeee07fff4c85f153d10eba4072bf5c11e1acba96153169f9d771409dfb63253dbb0841ace719264b663cd7b18c75c0eba91af7740e76094239d386 - languageName: node - linkType: hard - -"yargs@npm:^16.2.0": - version: 16.2.0 - resolution: "yargs@npm:16.2.0" - dependencies: - cliui: "npm:^7.0.2" - escalade: "npm:^3.1.1" - get-caller-file: "npm:^2.0.5" - require-directory: "npm:^2.1.1" - string-width: "npm:^4.2.0" - y18n: "npm:^5.0.5" - yargs-parser: "npm:^20.2.2" - checksum: 10c0/b1dbfefa679848442454b60053a6c95d62f2d2e21dd28def92b647587f415969173c6e99a0f3bab4f1b67ee8283bf735ebe3544013f09491186ba9e8a9a2b651 - languageName: node - linkType: hard - -"yn@npm:3.1.1": - version: 3.1.1 - resolution: "yn@npm:3.1.1" - checksum: 10c0/0732468dd7622ed8a274f640f191f3eaf1f39d5349a1b72836df484998d7d9807fbea094e2f5486d6b0cd2414aad5775972df0e68f8604db89a239f0f4bf7443 - languageName: node - linkType: hard - -"yocto-queue@npm:^0.1.0": - version: 0.1.0 - resolution: "yocto-queue@npm:0.1.0" - checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f - languageName: node - linkType: hard + version "3.1.8-pinto.1" + resolved "https://registry.yarnpkg.com/@pinto-org/hardhat-etherscan/-/hardhat-etherscan-3.1.8-pinto.1.tgz#5373eaefc4490b7d08473592c8d011e70a20c506" + integrity sha512-JqGN3pm7J2mlzZGMsmI7ngi0GMmogZSjBMkAS3V6jZ85ysCZQesYYgHpAJIsi60ActM+koATcr7xWEc/q4Uqsw== + dependencies: + "@ethersproject/abi" "^5.1.2" + "@ethersproject/address" "^5.0.2" + cbor "^8.1.0" + chalk "^2.4.2" + debug "^4.1.1" + fs-extra "^7.0.1" + lodash "^4.17.11" + semver "^6.3.0" + table "^6.8.0" + undici "^5.14.0" + +"@nomiclabs/hardhat-waffle@^2.0.3": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-waffle/-/hardhat-waffle-2.0.6.tgz#d11cb063a5f61a77806053e54009c40ddee49a54" + integrity sha512-+Wz0hwmJGSI17B+BhU/qFRZ1l6/xMW82QGXE/Gi+WTmwgJrQefuBs1lIf7hzQ1hLk6hpkvb/zwcNkpVKRYTQYg== + +"@openzeppelin/contracts-upgradeable@5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-5.0.2.tgz#3e5321a2ecdd0b206064356798c21225b6ec7105" + integrity sha512-0MmkHSHiW2NRFiT9/r5Lu4eJq5UJ4/tzlOgYXNAIj/ONkQTVnz22pLxDvp4C4uZ9he7ZFvGn3Driptn1/iU7tQ== + +"@openzeppelin/contracts@5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-5.0.2.tgz#b1d03075e49290d06570b2fd42154d76c2a5d210" + integrity sha512-ytPc6eLGcHHnapAZ9S+5qsdomhjo6QBHTDRRBFfTxXIpsicMhVPouPgmUPebZZZGX7vt9USA+Z+0M0dSVtSUEA== + +"@openzeppelin/defender-base-client@^1.46.0": + version "1.54.6" + resolved "https://registry.yarnpkg.com/@openzeppelin/defender-base-client/-/defender-base-client-1.54.6.tgz#b65a90dba49375ac1439d638832382344067a0b9" + integrity sha512-PTef+rMxkM5VQ7sLwLKSjp2DBakYQd661ZJiSRywx+q/nIpm3B/HYGcz5wPZCA5O/QcEP6TatXXDoeMwimbcnw== + dependencies: + amazon-cognito-identity-js "^6.0.1" + async-retry "^1.3.3" + axios "^1.4.0" + lodash "^4.17.19" + node-fetch "^2.6.0" + +"@openzeppelin/hardhat-upgrades@^1.17.0": + version "1.28.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/hardhat-upgrades/-/hardhat-upgrades-1.28.0.tgz#6361f313a8a879d8a08a5e395acf0933bc190950" + integrity sha512-7sb/Jf+X+uIufOBnmHR0FJVWuxEs2lpxjJnLNN6eCJCP8nD0v+Ot5lTOW2Qb/GFnh+fLvJtEkhkowz4ZQ57+zQ== + dependencies: + "@openzeppelin/defender-base-client" "^1.46.0" + "@openzeppelin/platform-deploy-client" "^0.8.0" + "@openzeppelin/upgrades-core" "^1.27.0" + chalk "^4.1.0" + debug "^4.1.1" + proper-lockfile "^4.1.1" + +"@openzeppelin/merkle-tree@1.0.7": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@openzeppelin/merkle-tree/-/merkle-tree-1.0.7.tgz#88f815df8ba39033e312e5f3dc6debeb62845916" + integrity sha512-i93t0YYv6ZxTCYU3CdO5Q+DXK0JH10A4dCBOMlzYbX+ujTXm+k1lXiEyVqmf94t3sqmv8sm/XT5zTa0+efnPgQ== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + +"@openzeppelin/platform-deploy-client@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/platform-deploy-client/-/platform-deploy-client-0.8.0.tgz#af6596275a19c283d6145f0128cc1247d18223c1" + integrity sha512-POx3AsnKwKSV/ZLOU/gheksj0Lq7Is1q2F3pKmcFjGZiibf+4kjGxr4eSMrT+2qgKYZQH1ZLQZ+SkbguD8fTvA== + dependencies: + "@ethersproject/abi" "^5.6.3" + "@openzeppelin/defender-base-client" "^1.46.0" + axios "^0.21.2" + lodash "^4.17.19" + node-fetch "^2.6.0" + +"@openzeppelin/upgrades-core@^1.27.0": + version "1.44.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/upgrades-core/-/upgrades-core-1.44.2.tgz#c38d6adc075f4d5e946c0fef9ba4b68953adec6a" + integrity sha512-m6iorjyhPK9ow5/trNs7qsBC/SOzJCO51pvvAF2W9nOiZ1t0RtCd+rlRmRmlWTv4M33V0wzIUeamJ2BPbzgUXA== + dependencies: + "@nomicfoundation/slang" "^0.18.3" + bignumber.js "^9.1.2" + cbor "^10.0.0" + chalk "^4.1.0" + compare-versions "^6.0.0" + debug "^4.1.1" + ethereumjs-util "^7.0.3" + minimatch "^9.0.5" + minimist "^1.2.7" + proper-lockfile "^4.1.1" + solidity-ast "^0.4.60" + +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + +"@prb/math@v2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@prb/math/-/math-2.5.0.tgz#5f26dee609030d3584bfbff92be8dc3d6c7d91a8" + integrity sha512-iSNQd4L3HaYuAIhJliLVa7WGsyjFiQHGpomrFgdj7FhYGHT6Yo8bBwbmwAPF1bHD3LN8gdg+ssKrRUPNaNPEVw== + dependencies: + "@ethersproject/bignumber" "^5.5.0" + decimal.js "^10.3.1" + evm-bn "^1.1.1" + mathjs "^10.4.0" + +"@resolver-engine/core@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@resolver-engine/core/-/core-0.3.3.tgz#590f77d85d45bc7ecc4e06c654f41345db6ca967" + integrity sha512-eB8nEbKDJJBi5p5SrvrvILn4a0h42bKtbCTri3ZxCGt6UvoQyp7HnGOfki944bUjBSHKK3RvgfViHn+kqdXtnQ== + dependencies: + debug "^3.1.0" + is-url "^1.2.4" + request "^2.85.0" + +"@resolver-engine/fs@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@resolver-engine/fs/-/fs-0.3.3.tgz#fbf83fa0c4f60154a82c817d2fe3f3b0c049a973" + integrity sha512-wQ9RhPUcny02Wm0IuJwYMyAG8fXVeKdmhm8xizNByD4ryZlx6PP6kRen+t/haF43cMfmaV7T3Cx6ChOdHEhFUQ== + dependencies: + "@resolver-engine/core" "^0.3.3" + debug "^3.1.0" + +"@resolver-engine/imports-fs@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@resolver-engine/imports-fs/-/imports-fs-0.3.3.tgz#4085db4b8d3c03feb7a425fbfcf5325c0d1e6c1b" + integrity sha512-7Pjg/ZAZtxpeyCFlZR5zqYkz+Wdo84ugB5LApwriT8XFeQoLwGUj4tZFFvvCuxaNCcqZzCYbonJgmGObYBzyCA== + dependencies: + "@resolver-engine/fs" "^0.3.3" + "@resolver-engine/imports" "^0.3.3" + debug "^3.1.0" + +"@resolver-engine/imports@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@resolver-engine/imports/-/imports-0.3.3.tgz#badfb513bb3ff3c1ee9fd56073e3144245588bcc" + integrity sha512-anHpS4wN4sRMwsAbMXhMfOD/y4a4Oo0Cw/5+rue7hSwGWsDOQaAU1ClK1OxjUC35/peazxEl8JaSRRS+Xb8t3Q== + dependencies: + "@resolver-engine/core" "^0.3.3" + debug "^3.1.0" + hosted-git-info "^2.6.0" + path-browserify "^1.0.0" + url "^0.11.0" + +"@scure/base@~1.1.0", "@scure/base@~1.1.6": + version "1.1.9" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.9.tgz#e5e142fbbfe251091f9c5f1dd4c834ac04c3dbd1" + integrity sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg== + +"@scure/base@~1.2.5": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.2.6.tgz#ca917184b8231394dd8847509c67a0be522e59f6" + integrity sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg== + +"@scure/bip32@1.1.5": + version "1.1.5" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.1.5.tgz#d2ccae16dcc2e75bc1d75f5ef3c66a338d1ba300" + integrity sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw== + dependencies: + "@noble/hashes" "~1.2.0" + "@noble/secp256k1" "~1.7.0" + "@scure/base" "~1.1.0" + +"@scure/bip32@1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.4.0.tgz#4e1f1e196abedcef395b33b9674a042524e20d67" + integrity sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg== + dependencies: + "@noble/curves" "~1.4.0" + "@noble/hashes" "~1.4.0" + "@scure/base" "~1.1.6" + +"@scure/bip39@1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.1.1.tgz#b54557b2e86214319405db819c4b6a370cf340c5" + integrity sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg== + dependencies: + "@noble/hashes" "~1.2.0" + "@scure/base" "~1.1.0" + +"@scure/bip39@1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.3.0.tgz#0f258c16823ddd00739461ac31398b4e7d6a18c3" + integrity sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ== + dependencies: + "@noble/hashes" "~1.4.0" + "@scure/base" "~1.1.6" + +"@sentry/core@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-5.30.0.tgz#6b203664f69e75106ee8b5a2fe1d717379b331f3" + integrity sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/minimal" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + +"@sentry/hub@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-5.30.0.tgz#2453be9b9cb903404366e198bd30c7ca74cdc100" + integrity sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ== + dependencies: + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + +"@sentry/minimal@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-5.30.0.tgz#ce3d3a6a273428e0084adcb800bc12e72d34637b" + integrity sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/types" "5.30.0" + tslib "^1.9.3" + +"@sentry/node@^5.18.1": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/node/-/node-5.30.0.tgz#4ca479e799b1021285d7fe12ac0858951c11cd48" + integrity sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg== + dependencies: + "@sentry/core" "5.30.0" + "@sentry/hub" "5.30.0" + "@sentry/tracing" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + cookie "^0.4.1" + https-proxy-agent "^5.0.0" + lru_map "^0.3.3" + tslib "^1.9.3" + +"@sentry/tracing@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-5.30.0.tgz#501d21f00c3f3be7f7635d8710da70d9419d4e1f" + integrity sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/minimal" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + +"@sentry/types@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-5.30.0.tgz#19709bbe12a1a0115bc790b8942917da5636f402" + integrity sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw== + +"@sentry/utils@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-5.30.0.tgz#9a5bd7ccff85ccfe7856d493bffa64cabc41e980" + integrity sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww== + dependencies: + "@sentry/types" "5.30.0" + tslib "^1.9.3" + +"@smithy/types@^4.12.0": + version "4.12.0" + resolved "https://registry.yarnpkg.com/@smithy/types/-/types-4.12.0.tgz#55d2479080922bda516092dbf31916991d9c6fee" + integrity sha512-9YcuJVTOBDjg9LWo23Qp0lTQ3D7fQsQtwle0jVfpbUHy9qBwCEgKuVH4FqFB3VYu0nwdHKiEMA+oXz7oV8X1kw== + dependencies: + tslib "^2.6.2" + +"@solidity-parser/parser@^0.14.0": + version "0.14.5" + resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.14.5.tgz#87bc3cc7b068e08195c219c91cd8ddff5ef1a804" + integrity sha512-6dKnHZn7fg/iQATVEzqyUOyEidbn05q7YA2mQ9hC0MMXhhV3/JrsxmFSYZAcr7j1yUP700LLhTruvJ3MiQmjJg== + dependencies: + antlr4ts "^0.5.0-alpha.4" + +"@solidity-parser/parser@^0.20.1": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.20.2.tgz#e07053488ed60dae1b54f6fe37bb6d2c5fe146a7" + integrity sha512-rbu0bzwNvMcwAjH86hiEAcOeRI2EeK8zCkHDrFykh/Al8mvJeFmjy3UrE7GYQjNwOgbGUUtCn5/k8CB8zIu7QA== + +"@trufflesuite/bigint-buffer@1.1.10": + version "1.1.10" + resolved "https://registry.yarnpkg.com/@trufflesuite/bigint-buffer/-/bigint-buffer-1.1.10.tgz#a1d9ca22d3cad1a138b78baaf15543637a3e1692" + integrity sha512-pYIQC5EcMmID74t26GCC67946mgTJFiLXOT/BYozgrd4UEY2JHEGLhWi9cMiQCt5BSqFEvKkCHNnoj82SRjiEw== + dependencies: + node-gyp-build "4.4.0" + +"@trufflesuite/bigint-buffer@1.1.9": + version "1.1.9" + resolved "https://registry.yarnpkg.com/@trufflesuite/bigint-buffer/-/bigint-buffer-1.1.9.tgz#e2604d76e1e4747b74376d68f1312f9944d0d75d" + integrity sha512-bdM5cEGCOhDSwminryHJbRmXc1x7dPKg6Pqns3qyTwFlxsqUgxE29lsERS3PlIW1HTjoIGMUqsk1zQQwST1Yxw== + dependencies: + node-gyp-build "4.3.0" + +"@tsconfig/node10@^1.0.7": + version "1.0.12" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.12.tgz#be57ceac1e4692b41be9de6be8c32a106636dba4" + integrity sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ== + +"@tsconfig/node12@^1.0.7": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" + integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== + +"@tsconfig/node14@^1.0.0": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" + integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== + +"@tsconfig/node16@^1.0.2": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" + integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== + +"@typechain/ethers-v5@^10.0.0": + version "10.2.1" + resolved "https://registry.yarnpkg.com/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz#50241e6957683281ecfa03fb5a6724d8a3ce2391" + integrity sha512-n3tQmCZjRE6IU4h6lqUGiQ1j866n5MTCBJreNEHHVWXa2u9GJTaeYyU1/k+1qLutkyw+sS6VAN+AbeiTqsxd/A== + dependencies: + lodash "^4.17.15" + ts-essentials "^7.0.1" + +"@types/abstract-leveldown@*": + version "7.2.5" + resolved "https://registry.yarnpkg.com/@types/abstract-leveldown/-/abstract-leveldown-7.2.5.tgz#db2cf364c159fb1f12be6cd3549f56387eaf8d73" + integrity sha512-/2B0nQF4UdupuxeKTJA2+Rj1D+uDemo6P4kMwKCpbfpnzeVaWSELTsAw4Lxn3VJD6APtRrZOCuYo+4nHUQfTfg== + +"@types/bn.js@^4.11.3": + version "4.11.6" + resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-4.11.6.tgz#c306c70d9358aaea33cd4eda092a742b9505967c" + integrity sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg== + dependencies: + "@types/node" "*" + +"@types/bn.js@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-5.2.0.tgz#4349b9710e98f9ab3cdc50f1c5e4dcbd8ef29c80" + integrity sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q== + dependencies: + "@types/node" "*" + +"@types/body-parser@*": + version "1.19.6" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.6.tgz#1859bebb8fd7dac9918a45d54c1971ab8b5af474" + integrity sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/concat-stream@^1.6.0": + version "1.6.1" + resolved "https://registry.yarnpkg.com/@types/concat-stream/-/concat-stream-1.6.1.tgz#24bcfc101ecf68e886aaedce60dfd74b632a1b74" + integrity sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA== + dependencies: + "@types/node" "*" + +"@types/connect@*": + version "3.4.38" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.38.tgz#5ba7f3bc4fbbdeaff8dded952e5ff2cc53f8d858" + integrity sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug== + dependencies: + "@types/node" "*" + +"@types/cors@^2.8.17": + version "2.8.19" + resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.19.tgz#d93ea2673fd8c9f697367f5eeefc2bbfa94f0342" + integrity sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg== + dependencies: + "@types/node" "*" + +"@types/estree@^1.0.6": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" + integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== + +"@types/express-serve-static-core@^5.0.0": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.1.1.tgz#1a77faffee9572d39124933259be2523837d7eaa" + integrity sha512-v4zIMr/cX7/d2BpAEX3KNKL/JrT1s43s96lLvvdTmza1oEvDudCqK9aF/djc/SWgy8Yh0h30TZx5VpzqFCxk5A== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + "@types/send" "*" + +"@types/express@^5.0.0": + version "5.0.6" + resolved "https://registry.yarnpkg.com/@types/express/-/express-5.0.6.tgz#2d724b2c990dcb8c8444063f3580a903f6d500cc" + integrity sha512-sKYVuV7Sv9fbPIt/442koC7+IIwK5olP1KWeD88e/idgoJqDm3JV/YUiPwkoKK92ylff2MGxSz1CSjsXelx0YA== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^5.0.0" + "@types/serve-static" "^2" + +"@types/form-data@0.0.33": + version "0.0.33" + resolved "https://registry.yarnpkg.com/@types/form-data/-/form-data-0.0.33.tgz#c9ac85b2a5fd18435b8c85d9ecb50e6d6c893ff8" + integrity sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw== + dependencies: + "@types/node" "*" + +"@types/http-errors@*": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.5.tgz#5b749ab2b16ba113423feb1a64a95dcd30398472" + integrity sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg== + +"@types/json-schema@^7.0.15": + version "7.0.15" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== + +"@types/level-errors@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/level-errors/-/level-errors-3.0.2.tgz#f33ec813c50780b547463da9ad8acac89ee457d9" + integrity sha512-gyZHbcQ2X5hNXf/9KS2qGEmgDe9EN2WDM3rJ5Ele467C0nA1sLhtmv1bZiPMDYfAYCfPWft0uQIaTvXbASSTRA== + +"@types/levelup@^4.3.0": + version "4.3.3" + resolved "https://registry.yarnpkg.com/@types/levelup/-/levelup-4.3.3.tgz#4dc2b77db079b1cf855562ad52321aa4241b8ef4" + integrity sha512-K+OTIjJcZHVlZQN1HmU64VtrC0jC3dXWQozuEIR9zVvltIk90zaGPM2AgT+fIkChpzHhFE3YnvFLCbLtzAmexA== + dependencies: + "@types/abstract-leveldown" "*" + "@types/level-errors" "*" + "@types/node" "*" + +"@types/lru-cache@5.1.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@types/lru-cache/-/lru-cache-5.1.1.tgz#c48c2e27b65d2a153b19bfc1a317e30872e01eef" + integrity sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw== + +"@types/mkdirp@^0.5.2": + version "0.5.2" + resolved "https://registry.yarnpkg.com/@types/mkdirp/-/mkdirp-0.5.2.tgz#503aacfe5cc2703d5484326b1b27efa67a339c1f" + integrity sha512-U5icWpv7YnZYGsN4/cmh3WD2onMY0aJIiTE6+51TwJCttdHvtCYmkBNOobHlXwrJRL0nkH9jH4kD+1FAdMN4Tg== + dependencies: + "@types/node" "*" + +"@types/node-fetch@^2.6.1": + version "2.6.13" + resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.13.tgz#e0c9b7b5edbdb1b50ce32c127e85e880872d56ee" + integrity sha512-QGpRVpzSaUs30JBSGPjOg4Uveu384erbHBoT1zeONvyCfwQxIkUshLAOqN/k9EjGviPRmWTTe6aH2qySWKTVSw== + dependencies: + "@types/node" "*" + form-data "^4.0.4" + +"@types/node@*": + version "25.1.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-25.1.0.tgz#95cc584f1f478301efc86de4f1867e5875e83571" + integrity sha512-t7frlewr6+cbx+9Ohpl0NOTKXZNV9xHRmNOvql47BFJKcEG1CxtxlPEEe+gR9uhVWM4DwhnvTF110mIL4yP9RA== + dependencies: + undici-types "~7.16.0" + +"@types/node@11.11.6": + version "11.11.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-11.11.6.tgz#df929d1bb2eee5afdda598a41930fe50b43eaa6a" + integrity sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ== + +"@types/node@^10.0.3": + version "10.17.60" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b" + integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== + +"@types/node@^8.0.0": + version "8.10.66" + resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.66.tgz#dd035d409df322acc83dff62a602f12a5783bbb3" + integrity sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw== + +"@types/pbkdf2@^3.0.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@types/pbkdf2/-/pbkdf2-3.1.2.tgz#2dc43808e9985a2c69ff02e2d2027bd4fe33e8dc" + integrity sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew== + dependencies: + "@types/node" "*" + +"@types/prettier@^2.1.1": + version "2.7.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" + integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA== + +"@types/qs@*", "@types/qs@^6.2.31": + version "6.14.0" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.14.0.tgz#d8b60cecf62f2db0fb68e5e006077b9178b85de5" + integrity sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ== + +"@types/range-parser@*": + version "1.2.7" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" + integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== + +"@types/secp256k1@^4.0.1": + version "4.0.7" + resolved "https://registry.yarnpkg.com/@types/secp256k1/-/secp256k1-4.0.7.tgz#534c9814eb80964962108ad45d549d1555c75fa0" + integrity sha512-Rcvjl6vARGAKRO6jHeKMatGrvOMGrR/AR11N1x2LqintPCyDZ7NBhrh238Z2VZc7aM7KIwnFpFQ7fnfK4H/9Qw== + dependencies: + "@types/node" "*" + +"@types/seedrandom@3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/seedrandom/-/seedrandom-3.0.1.tgz#1254750a4fec4aff2ebec088ccd0bb02e91fedb4" + integrity sha512-giB9gzDeiCeloIXDgzFBCgjj1k4WxcDrZtGl6h1IqmUPlxF+Nx8Ve+96QCyDZ/HseB/uvDsKbpib9hU5cU53pw== + +"@types/send@*": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@types/send/-/send-1.2.1.tgz#6a784e45543c18c774c049bff6d3dbaf045c9c74" + integrity sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ== + dependencies: + "@types/node" "*" + +"@types/serve-static@^2": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-2.2.0.tgz#d4a447503ead0d1671132d1ab6bd58b805d8de6a" + integrity sha512-8mam4H1NHLtu7nmtalF7eyBH14QyOASmcxHhSfEoRyr0nP/YdoesEtU+uSRvMe96TW/HPTtkoKqQLl53N7UXMQ== + dependencies: + "@types/http-errors" "*" + "@types/node" "*" + +"@uniswap/v3-core@v1.0.2-solc-0.8-simulate": + version "1.0.2-solc-0.8-simulate" + resolved "https://registry.yarnpkg.com/@uniswap/v3-core/-/v3-core-1.0.2-solc-0.8-simulate.tgz#77fb42f2b502b4fec81844736d039fc059e8688c" + integrity sha512-ALAZbsb3wvUrRzeAjrTKjv1fH7UrueJ/+D8uX4yintXHxxzbnnp78Kis2pa4D26cFQ72rwM3DrZpUES9rhsEuQ== + +abstract-leveldown@^6.2.1: + version "6.3.0" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz#d25221d1e6612f820c35963ba4bd739928f6026a" + integrity sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ== + dependencies: + buffer "^5.5.0" + immediate "^3.2.3" + level-concat-iterator "~2.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +abstract-leveldown@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz#08d19d4e26fb5be426f7a57004851b39e1795a2e" + integrity sha512-DnhQwcFEaYsvYDnACLZhMmCWd3rkOeEvglpa4q5i/5Jlm3UIsWaxVzuXvDLFCSCWRO3yy2/+V/G7FusFgejnfQ== + dependencies: + buffer "^6.0.3" + catering "^2.0.0" + is-buffer "^2.0.5" + level-concat-iterator "^3.0.0" + level-supports "^2.0.1" + queue-microtask "^1.2.3" + +abstract-leveldown@~6.2.1: + version "6.2.3" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz#036543d87e3710f2528e47040bc3261b77a9a8eb" + integrity sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ== + dependencies: + buffer "^5.5.0" + immediate "^3.2.3" + level-concat-iterator "~2.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +accepts@~1.3.8: + version "1.3.8" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + +acorn-jsx@^5.3.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn-walk@^8.1.1: + version "8.3.4" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.4.tgz#794dd169c3977edf4ba4ea47583587c5866236b7" + integrity sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g== + dependencies: + acorn "^8.11.0" + +acorn@^8.11.0, acorn@^8.15.0, acorn@^8.4.1: + version "8.15.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" + integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== + +adm-zip@^0.4.16: + version "0.4.16" + resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.16.tgz#cf4c508fdffab02c269cbc7f471a875f05570365" + integrity sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg== + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + +ajv@^6.12.3, ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ajv@^8.0.1: + version "8.17.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" + integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== + dependencies: + fast-deep-equal "^3.1.3" + fast-uri "^3.0.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + +amazon-cognito-identity-js@^6.0.1: + version "6.3.16" + resolved "https://registry.yarnpkg.com/amazon-cognito-identity-js/-/amazon-cognito-identity-js-6.3.16.tgz#4a6aceb64c80406b9ee4344980794ff9e506017a" + integrity sha512-HPGSBGD6Q36t99puWh0LnptxO/4icnk2kqIQ9cTJ2tFQo5NMUnWQIgtrTAk8nm+caqUbjDzXzG56GBjI2tS6jQ== + dependencies: + "@aws-crypto/sha256-js" "1.2.2" + buffer "4.9.2" + fast-base64-decode "^1.0.0" + isomorphic-unfetch "^3.0.0" + js-cookie "^2.2.1" + +ansi-align@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" + integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== + dependencies: + string-width "^4.1.0" + +ansi-colors@3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" + integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== + +ansi-colors@^4.1.1, ansi-colors@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== + +ansi-escapes@^4.3.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-regex@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" + integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== + +ansi-regex@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" + integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== + +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-regex@^6.0.1: + version "6.2.2" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" + integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== + +ansi-styles@^3.2.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-styles@^6.1.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" + integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== + +antlr4ts@^0.5.0-alpha.4: + version "0.5.0-alpha.4" + resolved "https://registry.yarnpkg.com/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz#71702865a87478ed0b40c0709f422cf14d51652a" + integrity sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ== + +anymatch@~3.1.1, anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +arg@^4.1.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +array-back@^3.0.1, array-back@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/array-back/-/array-back-3.1.0.tgz#b8859d7a508871c9a7b2cf42f99428f65e96bfb0" + integrity sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q== + +array-back@^4.0.1, array-back@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/array-back/-/array-back-4.0.2.tgz#8004e999a6274586beeb27342168652fdb89fa1e" + integrity sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg== + +array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" + integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw== + dependencies: + call-bound "^1.0.3" + is-array-buffer "^3.0.5" + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== + +array-uniq@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== + +array.prototype.reduce@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.8.tgz#42f97f5078daedca687d4463fd3c05cbfd83da57" + integrity sha512-DwuEqgXFBwbmZSRqt3BpQigWNUoqw9Ml2dTWdF3B2zQlQX4OeUE0zyuzX0fX0IbTvjdkZbcBTU3idgpO78qkTw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.4" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-array-method-boxes-properly "^1.0.0" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + is-string "^1.1.1" + +arraybuffer.prototype.slice@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz#9d760d84dbdd06d0cbf92c8849615a1a7ab3183c" + integrity sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ== + dependencies: + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + is-array-buffer "^3.0.4" + +asap@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== + +asn1@~0.2.3: + version "0.2.6" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" + integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== + dependencies: + safer-buffer "~2.1.0" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== + +assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +async-eventemitter@^0.2.4: + version "0.2.4" + resolved "https://registry.yarnpkg.com/async-eventemitter/-/async-eventemitter-0.2.4.tgz#f5e7c8ca7d3e46aab9ec40a292baf686a0bafaca" + integrity sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw== + dependencies: + async "^2.4.0" + +async-function@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/async-function/-/async-function-1.0.0.tgz#509c9fca60eaf85034c6829838188e4e4c8ffb2b" + integrity sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA== + +async-retry@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/async-retry/-/async-retry-1.3.3.tgz#0e7f36c04d8478e7a58bdbed80cedf977785f280" + integrity sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw== + dependencies: + retry "0.13.1" + +async@^2.4.0: + version "2.6.4" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221" + integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA== + dependencies: + lodash "^4.17.14" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== + +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== + +aws4@^1.8.0: + version "1.13.2" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.13.2.tgz#0aa167216965ac9474ccfa83892cfb6b3e1e52ef" + integrity sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw== + +axios@1.6.7: + version "1.6.7" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.6.7.tgz#7b48c2e27c96f9c68a2f8f31e2ab19f59b06b0a7" + integrity sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA== + dependencies: + follow-redirects "^1.15.4" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + +axios@^0.21.2: + version "0.21.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== + dependencies: + follow-redirects "^1.14.0" + +axios@^1.4.0, axios@^1.5.1: + version "1.13.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.4.tgz#15d109a4817fb82f73aea910d41a2c85606076bc" + integrity sha512-1wVkUaAO6WyaYtCkcYCOx12ZgpGf9Zif+qXa4n+oYzK558YryKqiL6UWwd5DqiH3VRW0GYhTZQ/vlgJrCoNQlg== + dependencies: + follow-redirects "^1.15.6" + form-data "^4.0.4" + proxy-from-env "^1.1.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +base-x@^3.0.2: + version "3.0.11" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.11.tgz#40d80e2a1aeacba29792ccc6c5354806421287ff" + integrity sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA== + dependencies: + safe-buffer "^5.0.1" + +base64-js@^1.0.2, base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== + dependencies: + tweetnacl "^0.14.3" + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +bignumber.js@^9.0.0, bignumber.js@^9.0.1, bignumber.js@^9.1.2: + version "9.3.1" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.3.1.tgz#759c5aaddf2ffdc4f154f7b493e1c8770f88c4d7" + integrity sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ== + +bignumber@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/bignumber/-/bignumber-1.1.0.tgz#e6ab0a743da5f3ea018e5c17597d121f7868c159" + integrity sha512-EGqHCKkEAwVwufcEOCYhZQqdVH+7cNCyPZ9yxisYvSjHFB+d9YcGMvorsFpeN5IJpC+lC6K+FHhu8+S4MgJazw== + +binary-extensions@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== + +bip39@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/bip39/-/bip39-3.0.4.tgz#5b11fed966840b5e1b8539f0f54ab6392969b2a0" + integrity sha512-YZKQlb752TrUWqHWj7XAwCSjYEgGAk+/Aas3V7NyjQeZYsztO8JnQUaCWhcnL4T+jL8nvB8typ2jRPzTlgugNw== + dependencies: + "@types/node" "11.11.6" + create-hash "^1.1.0" + pbkdf2 "^3.0.9" + randombytes "^2.0.1" + +blakejs@^1.1.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814" + integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ== + +bn.js@4.11.6: + version "4.11.6" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" + integrity sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA== + +bn.js@^4.0.0, bn.js@^4.11.0, bn.js@^4.11.1, bn.js@^4.11.8, bn.js@^4.11.9: + version "4.12.2" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.2.tgz#3d8fed6796c24e177737f7cc5172ee04ef39ec99" + integrity sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw== + +bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1: + version "5.2.2" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.2.tgz#82c09f9ebbb17107cd72cb7fd39bd1f9d0aaa566" + integrity sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw== + +body-parser@~1.20.3: + version "1.20.4" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.4.tgz#f8e20f4d06ca8a50a71ed329c15dccad1cdc547f" + integrity sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA== + dependencies: + bytes "~3.1.2" + content-type "~1.0.5" + debug "2.6.9" + depd "2.0.0" + destroy "~1.2.0" + http-errors "~2.0.1" + iconv-lite "~0.4.24" + on-finished "~2.4.1" + qs "~6.14.0" + raw-body "~2.5.3" + type-is "~1.6.18" + unpipe "~1.0.0" + +boxen@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50" + integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ== + dependencies: + ansi-align "^3.0.0" + camelcase "^6.2.0" + chalk "^4.1.0" + cli-boxes "^2.2.1" + string-width "^4.2.2" + type-fest "^0.20.2" + widest-line "^3.1.0" + wrap-ansi "^7.0.0" + +brace-expansion@^1.1.7: + version "1.1.12" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843" + integrity sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +brace-expansion@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" + integrity sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== + dependencies: + balanced-match "^1.0.0" + +braces@~3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + +brorand@^1.0.1, brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +browser-stdout@1.3.1, browser-stdout@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" + integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== + +browserify-aes@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +bs58@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" + integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw== + dependencies: + base-x "^3.0.2" + +bs58check@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/bs58check/-/bs58check-2.1.2.tgz#53b018291228d82a5aa08e7d796fdafda54aebfc" + integrity sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA== + dependencies: + bs58 "^4.0.0" + create-hash "^1.1.0" + safe-buffer "^5.1.2" + +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +buffer-reverse@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-reverse/-/buffer-reverse-1.0.1.tgz#49283c8efa6f901bc01fa3304d06027971ae2f60" + integrity sha512-M87YIUBsZ6N924W57vDwT/aOu8hw7ZgdByz6ijksLjmHJELBASmYTTlNHRgjE+pTsT9oJXGaDSgqqwfdHotDUg== + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== + +buffer-xor@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-2.0.2.tgz#34f7c64f04c777a1f8aac5e661273bb9dd320289" + integrity sha512-eHslX0bin3GB+Lx2p7lEYRShRewuNZL3fUl4qlVJGGiwoPGftmt8JQgk2Y9Ji5/01TnVDo33E5b5O3vUB1HdqQ== + dependencies: + safe-buffer "^5.1.1" + +buffer@4.9.2: + version "4.9.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + +buffer@^5.5.0, buffer@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.2.1" + +bufferutil@4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.5.tgz#da9ea8166911cc276bf677b8aed2d02d31f59028" + integrity sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A== + dependencies: + node-gyp-build "^4.3.0" + +bytes@~3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + +call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + +call-bind@^1.0.7, call-bind@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" + integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== + dependencies: + call-bind-apply-helpers "^1.0.0" + es-define-property "^1.0.0" + get-intrinsic "^1.2.4" + set-function-length "^1.2.2" + +call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" + integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== + dependencies: + call-bind-apply-helpers "^1.0.2" + get-intrinsic "^1.3.0" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase@^5.0.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +camelcase@^6.0.0, camelcase@^6.2.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +caseless@^0.12.0, caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== + +catering@^2.0.0, catering@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/catering/-/catering-2.1.1.tgz#66acba06ed5ee28d5286133982a927de9a04b510" + integrity sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w== + +cbor@^10.0.0: + version "10.0.11" + resolved "https://registry.yarnpkg.com/cbor/-/cbor-10.0.11.tgz#f60e7cc2be6c943fecec159874ae651e75661745" + integrity sha512-vIwORDd/WyB8Nc23o2zNN5RrtFGlR6Fca61TtjkUXueI3Jf2DOZDl1zsshvBntZ3wZHBM9ztjnkXSmzQDaq3WA== + dependencies: + nofilter "^3.0.2" + +cbor@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/cbor/-/cbor-8.1.0.tgz#cfc56437e770b73417a2ecbfc9caf6b771af60d5" + integrity sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg== + dependencies: + nofilter "^3.1.0" + +chai@^4.4.1: + version "4.5.0" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.5.0.tgz#707e49923afdd9b13a8b0b47d33d732d13812fd8" + integrity sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.3" + deep-eql "^4.1.3" + get-func-name "^2.0.2" + loupe "^2.3.6" + pathval "^1.1.1" + type-detect "^4.1.0" + +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0, chalk@^4.1.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +"charenc@>= 0.0.1": + version "0.0.2" + resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== + +check-error@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== + dependencies: + get-func-name "^2.0.2" + +chokidar@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" + integrity sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.2.0" + optionalDependencies: + fsevents "~2.1.1" + +chokidar@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +chokidar@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-4.0.3.tgz#7be37a4c03c9aee1ecfe862a4a23b2c70c205d30" + integrity sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA== + dependencies: + readdirp "^4.0.1" + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.7" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.7.tgz#bd094bfef42634ccfd9e13b9fc73274997111e39" + integrity sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA== + dependencies: + inherits "^2.0.4" + safe-buffer "^5.2.1" + to-buffer "^1.2.2" + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +cli-boxes@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" + integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== + +cli-table3@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.5.1.tgz#0252372d94dfc40dbd8df06005f48f31f656f202" + integrity sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw== + dependencies: + object-assign "^4.1.0" + string-width "^2.1.1" + optionalDependencies: + colors "^1.1.2" + +cli-table3@^0.6.0: + version "0.6.5" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.5.tgz#013b91351762739c16a9567c21a04632e449bf2f" + integrity sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ== + dependencies: + string-width "^4.2.0" + optionalDependencies: + "@colors/colors" "1.5.0" + +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colors@1.4.0, colors@^1.1.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +command-exists@^1.2.8: + version "1.2.9" + resolved "https://registry.yarnpkg.com/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69" + integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w== + +command-line-args@^5.1.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.1.tgz#c44c32e437a57d7c51157696893c5909e9cec42e" + integrity sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg== + dependencies: + array-back "^3.1.0" + find-replace "^3.0.0" + lodash.camelcase "^4.3.0" + typical "^4.0.0" + +command-line-usage@^6.1.0: + version "6.1.3" + resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-6.1.3.tgz#428fa5acde6a838779dfa30e44686f4b6761d957" + integrity sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw== + dependencies: + array-back "^4.0.2" + chalk "^2.4.2" + table-layout "^1.0.2" + typical "^5.2.0" + +commander@^8.1.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== + +compare-versions@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-6.1.1.tgz#7af3cc1099ba37d244b3145a9af5201b629148a9" + integrity sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg== + +complex.js@^2.1.1: + version "2.4.3" + resolved "https://registry.yarnpkg.com/complex.js/-/complex.js-2.4.3.tgz#72ee9c303a9b89ebcfeca0d39f74927d38721fce" + integrity sha512-UrQVSUur14tNX6tiP4y8T4w4FeJAX3bi2cIv0pu/DTLFNxoq7z2Yh83Vfzztj6Px3X/lubqQ9IrPp7Bpn6p4MQ== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +concat-stream@^1.6.0, concat-stream@^1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +content-disposition@~0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== + dependencies: + safe-buffer "5.2.1" + +content-type@~1.0.4, content-type@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + +cookie-signature@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.7.tgz#ab5dd7ab757c54e60f37ef6550f481c426d10454" + integrity sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA== + +cookie@^0.4.1: + version "0.4.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" + integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== + +cookie@~0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" + integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== + +core-js-pure@^3.0.1: + version "3.48.0" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.48.0.tgz#7d5a3fe1ec3631b9aa76a81c843ac2ce918e5023" + integrity sha512-1slJgk89tWC51HQ1AEqG+s2VuwpTRr8ocu4n20QUcH1v9lAN0RXen0Q0AABa/DK1I7RrNWLucplOHMx8hfTGTw== + +core-util-is@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== + +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + +cors@^2.8.5: + version "2.8.6" + resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.6.tgz#ff5dd69bd95e547503820d29aba4f8faf8dfec96" + integrity sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw== + dependencies: + object-assign "^4" + vary "^1" + +crc-32@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" + integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== + +create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + md5.js "^1.3.4" + ripemd160 "^2.0.1" + sha.js "^2.4.0" + +create-hmac@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +create-require@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== + +cross-spawn@^6.0.0: + version "6.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.6.tgz#30d0efa0712ddb7eb5a76e1e8721bffafa6b5d57" + integrity sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +"crypt@>= 0.0.1": + version "0.0.2" + resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" + integrity sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow== + +crypto-js@^3.1.9-1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.3.0.tgz#846dd1cce2f68aacfa156c8578f926a609b7976b" + integrity sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q== + +csv-parser@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/csv-parser/-/csv-parser-3.0.0.tgz#b88a6256d79e090a97a1b56451f9327b01d710e7" + integrity sha512-s6OYSXAK3IdKqYO33y09jhypG/bSDHPuyCme/IdEHfWpLf/jKcpitVFyOC6UemgGk8v7Q5u2XE0vvwmanxhGlQ== + dependencies: + minimist "^1.2.0" + +csvtojson@^2.0.10: + version "2.0.14" + resolved "https://registry.yarnpkg.com/csvtojson/-/csvtojson-2.0.14.tgz#89b46c302bb1aae1f2f7a9d8a5a3d7a6c301750b" + integrity sha512-F7NNvhhDyob7OsuEGRsH0FM1aqLs/WYITyza3l+hTEEmOK9sGPBlYQZwlVG0ezCojXYpE17lhS5qL6BCOZSPyA== + dependencies: + lodash "^4.17.21" + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== + dependencies: + assert-plus "^1.0.0" + +data-view-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.2.tgz#211a03ba95ecaf7798a8c7198d79536211f88570" + integrity sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz#9e80f7ca52453ce3e93d25a35318767ea7704735" + integrity sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-offset@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz#068307f9b71ab76dbbe10291389e020856606191" + integrity sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +debug@2.6.9, debug@^2.2.0: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@3.2.6: + version "3.2.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" + integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== + dependencies: + ms "^2.1.1" + +debug@4, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.3.5: + version "4.4.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" + integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== + dependencies: + ms "^2.1.3" + +debug@^3.1.0: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +decamelize@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" + integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== + +decimal.js@^10.3.1, decimal.js@^10.4.3: + version "10.6.0" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.6.0.tgz#e649a43e3ab953a72192ff5983865e509f37ed9a" + integrity sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg== + +deep-eql@^4.1.3: + version "4.1.4" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.4.tgz#d0d3912865911bb8fac5afb4e3acfa6a28dc72b7" + integrity sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg== + dependencies: + type-detect "^4.0.0" + +deep-extend@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== + +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +deferred-leveldown@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz#27a997ad95408b61161aa69bd489b86c71b78058" + integrity sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw== + dependencies: + abstract-leveldown "~6.2.1" + inherits "^2.0.3" + +define-data-property@^1.0.1, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + +define-properties@^1.1.2, define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== + +depd@2.0.0, depd@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +destroy@1.2.0, destroy@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== + +diff@3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== + +diff@^4.0.1: + version "4.0.4" + resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.4.tgz#7a6dbfda325f25f07517e9b518f897c08332e07d" + integrity sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ== + +diff@^5.2.0: + version "5.2.2" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.2.tgz#0a4742797281d09cfa699b79ea32d27723623bad" + integrity sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A== + +dotenv@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" + integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== + +dunder-proto@^1.0.0, dunder-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== + dependencies: + call-bind-apply-helpers "^1.0.1" + es-errors "^1.3.0" + gopd "^1.2.0" + +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +elliptic@6.6.1, elliptic@^6.5.2, elliptic@^6.5.4, elliptic@^6.5.7: + version "6.6.1" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.1.tgz#3b8ffb02670bf69e382c7f65bf524c97c5405c06" + integrity sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +emittery@0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.10.0.tgz#bb373c660a9d421bb44706ec4967ed50c02a8026" + integrity sha512-AGvFfs+d0JKCJQ4o01ASQLGPmSCxgfU9RFXvzPvZdjKK8oscynksuJhWrSTSw7j7Ep/sZct5b5ZhYCi8S/t0HQ== + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + +encode-utf8@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/encode-utf8/-/encode-utf8-1.0.3.tgz#f30fdd31da07fb596f281beb2f6b027851994cda" + integrity sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw== + +encodeurl@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" + integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== + +encoding-down@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-6.3.0.tgz#b1c4eb0e1728c146ecaef8e32963c549e76d082b" + integrity sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw== + dependencies: + abstract-leveldown "^6.2.1" + inherits "^2.0.3" + level-codec "^9.0.0" + level-errors "^2.0.0" + +end-of-stream@^1.1.0: + version "1.4.5" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.5.tgz#7344d711dea40e0b74abc2ed49778743ccedb08c" + integrity sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg== + dependencies: + once "^1.4.0" + +enquirer@^2.3.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.4.1.tgz#93334b3fbd74fc7097b224ab4a8fb7e40bf4ae56" + integrity sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ== + dependencies: + ansi-colors "^4.1.1" + strip-ansi "^6.0.1" + +env-paths@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + +errno@~0.1.1: + version "0.1.8" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" + integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== + dependencies: + prr "~1.0.1" + +es-abstract@^1.23.5, es-abstract@^1.23.9, es-abstract@^1.24.0: + version "1.24.1" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.24.1.tgz#f0c131ed5ea1bb2411134a8dd94def09c46c7899" + integrity sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw== + dependencies: + array-buffer-byte-length "^1.0.2" + arraybuffer.prototype.slice "^1.0.4" + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + data-view-buffer "^1.0.2" + data-view-byte-length "^1.0.2" + data-view-byte-offset "^1.0.1" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + es-set-tostringtag "^2.1.0" + es-to-primitive "^1.3.0" + function.prototype.name "^1.1.8" + get-intrinsic "^1.3.0" + get-proto "^1.0.1" + get-symbol-description "^1.1.0" + globalthis "^1.0.4" + gopd "^1.2.0" + has-property-descriptors "^1.0.2" + has-proto "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + internal-slot "^1.1.0" + is-array-buffer "^3.0.5" + is-callable "^1.2.7" + is-data-view "^1.0.2" + is-negative-zero "^2.0.3" + is-regex "^1.2.1" + is-set "^2.0.3" + is-shared-array-buffer "^1.0.4" + is-string "^1.1.1" + is-typed-array "^1.1.15" + is-weakref "^1.1.1" + math-intrinsics "^1.1.0" + object-inspect "^1.13.4" + object-keys "^1.1.1" + object.assign "^4.1.7" + own-keys "^1.0.1" + regexp.prototype.flags "^1.5.4" + safe-array-concat "^1.1.3" + safe-push-apply "^1.0.0" + safe-regex-test "^1.1.0" + set-proto "^1.0.0" + stop-iteration-iterator "^1.1.0" + string.prototype.trim "^1.2.10" + string.prototype.trimend "^1.0.9" + string.prototype.trimstart "^1.0.8" + typed-array-buffer "^1.0.3" + typed-array-byte-length "^1.0.3" + typed-array-byte-offset "^1.0.4" + typed-array-length "^1.0.7" + unbox-primitive "^1.1.0" + which-typed-array "^1.1.19" + +es-array-method-boxes-properly@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" + integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== + +es-define-property@^1.0.0, es-define-property@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + +es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== + dependencies: + es-errors "^1.3.0" + +es-set-tostringtag@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" + integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== + dependencies: + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +es-to-primitive@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18" + integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g== + dependencies: + is-callable "^1.2.7" + is-date-object "^1.0.5" + is-symbol "^1.0.4" + +escalade@^3.1.1: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + +escape-latex@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/escape-latex/-/escape-latex-1.2.0.tgz#07c03818cf7dac250cce517f4fda1b001ef2bca1" + integrity sha512-nV5aVWW1K0wEiUIEdZ4erkGGH8mDxGyxSeqPzRNtWP7ataw+/olFObw7hujFWlVjNsaDFw5VZ5NzVSIqRgfTiw== + +escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +eslint-scope@^8.4.0: + version "8.4.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-8.4.0.tgz#88e646a207fad61436ffa39eb505147200655c82" + integrity sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg== + dependencies: + esrecurse "^4.3.0" + estraverse "^5.2.0" + +eslint-visitor-keys@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== + +eslint-visitor-keys@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz#4cfea60fe7dd0ad8e816e1ed026c1d5251b512c1" + integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== + +eslint@^9.12.0: + version "9.39.2" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.39.2.tgz#cb60e6d16ab234c0f8369a3fe7cc87967faf4b6c" + integrity sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw== + dependencies: + "@eslint-community/eslint-utils" "^4.8.0" + "@eslint-community/regexpp" "^4.12.1" + "@eslint/config-array" "^0.21.1" + "@eslint/config-helpers" "^0.4.2" + "@eslint/core" "^0.17.0" + "@eslint/eslintrc" "^3.3.1" + "@eslint/js" "9.39.2" + "@eslint/plugin-kit" "^0.4.1" + "@humanfs/node" "^0.16.6" + "@humanwhocodes/module-importer" "^1.0.1" + "@humanwhocodes/retry" "^0.4.2" + "@types/estree" "^1.0.6" + ajv "^6.12.4" + chalk "^4.0.0" + cross-spawn "^7.0.6" + debug "^4.3.2" + escape-string-regexp "^4.0.0" + eslint-scope "^8.4.0" + eslint-visitor-keys "^4.2.1" + espree "^10.4.0" + esquery "^1.5.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^8.0.0" + find-up "^5.0.0" + glob-parent "^6.0.2" + ignore "^5.2.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + json-stable-stringify-without-jsonify "^1.0.1" + lodash.merge "^4.6.2" + minimatch "^3.1.2" + natural-compare "^1.4.0" + optionator "^0.9.3" + +espree@^10.0.1, espree@^10.4.0: + version "10.4.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.4.0.tgz#d54f4949d4629005a1fa168d937c3ff1f7e2a837" + integrity sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ== + dependencies: + acorn "^8.15.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^4.2.1" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.5.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.7.0.tgz#08d048f261f0ddedb5bae95f46809463d9c9496d" + integrity sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + +eth-gas-reporter@0.2.25: + version "0.2.25" + resolved "https://registry.yarnpkg.com/eth-gas-reporter/-/eth-gas-reporter-0.2.25.tgz#546dfa946c1acee93cb1a94c2a1162292d6ff566" + integrity sha512-1fRgyE4xUB8SoqLgN3eDfpDfwEfRxh2Sz1b7wzFbyQA+9TekMmvSjjoRu9SKcSVyK+vLkLIsVbJDsTWjw195OQ== + dependencies: + "@ethersproject/abi" "^5.0.0-beta.146" + "@solidity-parser/parser" "^0.14.0" + cli-table3 "^0.5.0" + colors "1.4.0" + ethereum-cryptography "^1.0.3" + ethers "^4.0.40" + fs-readdir-recursive "^1.1.0" + lodash "^4.17.14" + markdown-table "^1.1.3" + mocha "^7.1.1" + req-cwd "^2.0.0" + request "^2.88.0" + request-promise-native "^1.0.5" + sha1 "^1.1.1" + sync-request "^6.0.0" + +eth-gas-reporter@^0.2.25: + version "0.2.27" + resolved "https://registry.yarnpkg.com/eth-gas-reporter/-/eth-gas-reporter-0.2.27.tgz#928de8548a674ed64c7ba0bf5795e63079150d4e" + integrity sha512-femhvoAM7wL0GcI8ozTdxfuBtBFJ9qsyIAsmKVjlWAHUbdnnXHt+lKzz/kmldM5lA9jLuNHGwuIxorNpLbR1Zw== + dependencies: + "@solidity-parser/parser" "^0.14.0" + axios "^1.5.1" + cli-table3 "^0.5.0" + colors "1.4.0" + ethereum-cryptography "^1.0.3" + ethers "^5.7.2" + fs-readdir-recursive "^1.1.0" + lodash "^4.17.14" + markdown-table "^1.1.3" + mocha "^10.2.0" + req-cwd "^2.0.0" + sha1 "^1.1.1" + sync-request "^6.0.0" + +ethereum-bloom-filters@^1.0.6: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ethereum-bloom-filters/-/ethereum-bloom-filters-1.2.0.tgz#8294f074c1a6cbd32c39d2cc77ce86ff14797dab" + integrity sha512-28hyiE7HVsWubqhpVLVmZXFd4ITeHi+BUu05o9isf0GUpMtzBUi+8/gFrGaGYzvGAJQmJ3JKj77Mk9G98T84rA== + dependencies: + "@noble/hashes" "^1.4.0" + +ethereum-cryptography@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz#8d6143cfc3d74bf79bbd8edecdf29e4ae20dd191" + integrity sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ== + dependencies: + "@types/pbkdf2" "^3.0.0" + "@types/secp256k1" "^4.0.1" + blakejs "^1.1.0" + browserify-aes "^1.2.0" + bs58check "^2.1.2" + create-hash "^1.2.0" + create-hmac "^1.1.7" + hash.js "^1.1.7" + keccak "^3.0.0" + pbkdf2 "^3.0.17" + randombytes "^2.1.0" + safe-buffer "^5.1.2" + scrypt-js "^3.0.0" + secp256k1 "^4.0.1" + setimmediate "^1.0.5" + +ethereum-cryptography@^1.0.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz#5ccfa183e85fdaf9f9b299a79430c044268c9b3a" + integrity sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw== + dependencies: + "@noble/hashes" "1.2.0" + "@noble/secp256k1" "1.7.1" + "@scure/bip32" "1.1.5" + "@scure/bip39" "1.1.1" + +ethereum-cryptography@^2.0.0, ethereum-cryptography@^2.1.2, ethereum-cryptography@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz#58f2810f8e020aecb97de8c8c76147600b0b8ccf" + integrity sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg== + dependencies: + "@noble/curves" "1.4.2" + "@noble/hashes" "1.4.0" + "@scure/bip32" "1.4.0" + "@scure/bip39" "1.3.0" + +ethereum-waffle@4.0.10: + version "4.0.10" + resolved "https://registry.yarnpkg.com/ethereum-waffle/-/ethereum-waffle-4.0.10.tgz#f1ef1564c0155236f1a66c6eae362a5d67c9f64c" + integrity sha512-iw9z1otq7qNkGDNcMoeNeLIATF9yKl1M8AIeu42ElfNBplq0e+5PeasQmm8ybY/elkZ1XyRO0JBQxQdVRb8bqQ== + dependencies: + "@ethereum-waffle/chai" "4.0.10" + "@ethereum-waffle/compiler" "4.0.3" + "@ethereum-waffle/mock-contract" "4.0.4" + "@ethereum-waffle/provider" "4.0.5" + solc "0.8.15" + typechain "^8.0.0" + +ethereumjs-abi@0.6.8: + version "0.6.8" + resolved "https://registry.yarnpkg.com/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz#71bc152db099f70e62f108b7cdfca1b362c6fcae" + integrity sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA== + dependencies: + bn.js "^4.11.8" + ethereumjs-util "^6.0.0" + +ethereumjs-util@6.2.1, ethereumjs-util@^6.0.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz#fcb4e4dd5ceacb9d2305426ab1a5cd93e3163b69" + integrity sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw== + dependencies: + "@types/bn.js" "^4.11.3" + bn.js "^4.11.0" + create-hash "^1.1.2" + elliptic "^6.5.2" + ethereum-cryptography "^0.1.3" + ethjs-util "0.1.6" + rlp "^2.2.3" + +ethereumjs-util@7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.3.tgz#b55d7b64dde3e3e45749e4c41288238edec32d23" + integrity sha512-y+82tEbyASO0K0X1/SRhbJJoAlfcvq8JbrG4a5cjrOks7HS/36efU/0j2flxCPOUM++HFahk33kr/ZxyC4vNuw== + dependencies: + "@types/bn.js" "^5.1.0" + bn.js "^5.1.2" + create-hash "^1.1.2" + ethereum-cryptography "^0.1.3" + rlp "^2.2.4" + +ethereumjs-util@^7.0.3, ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.3, ethereumjs-util@^7.1.4, ethereumjs-util@^7.1.5: + version "7.1.5" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181" + integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg== + dependencies: + "@types/bn.js" "^5.1.0" + bn.js "^5.1.2" + create-hash "^1.1.2" + ethereum-cryptography "^0.1.3" + rlp "^2.2.4" + +ethers@5.7.2: + version "5.7.2" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e" + integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.1" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.2" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.1" + "@ethersproject/wordlists" "5.7.0" + +ethers@^4.0.40: + version "4.0.49" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-4.0.49.tgz#0eb0e9161a0c8b4761be547396bbe2fb121a8894" + integrity sha512-kPltTvWiyu+OktYy1IStSO16i2e7cS9D9OxZ81q2UUaiNPVrm/RTcbxamCXF9VUSKzJIdJV68EAIhTEVBalRWg== + dependencies: + aes-js "3.0.0" + bn.js "^4.11.9" + elliptic "6.5.4" + hash.js "1.1.3" + js-sha3 "0.5.7" + scrypt-js "2.0.4" + setimmediate "1.0.4" + uuid "2.0.1" + xmlhttprequest "1.8.0" + +ethers@^5.6.1, ethers@^5.7.2: + version "5.8.0" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.8.0.tgz#97858dc4d4c74afce83ea7562fe9493cedb4d377" + integrity sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg== + dependencies: + "@ethersproject/abi" "5.8.0" + "@ethersproject/abstract-provider" "5.8.0" + "@ethersproject/abstract-signer" "5.8.0" + "@ethersproject/address" "5.8.0" + "@ethersproject/base64" "5.8.0" + "@ethersproject/basex" "5.8.0" + "@ethersproject/bignumber" "5.8.0" + "@ethersproject/bytes" "5.8.0" + "@ethersproject/constants" "5.8.0" + "@ethersproject/contracts" "5.8.0" + "@ethersproject/hash" "5.8.0" + "@ethersproject/hdnode" "5.8.0" + "@ethersproject/json-wallets" "5.8.0" + "@ethersproject/keccak256" "5.8.0" + "@ethersproject/logger" "5.8.0" + "@ethersproject/networks" "5.8.0" + "@ethersproject/pbkdf2" "5.8.0" + "@ethersproject/properties" "5.8.0" + "@ethersproject/providers" "5.8.0" + "@ethersproject/random" "5.8.0" + "@ethersproject/rlp" "5.8.0" + "@ethersproject/sha2" "5.8.0" + "@ethersproject/signing-key" "5.8.0" + "@ethersproject/solidity" "5.8.0" + "@ethersproject/strings" "5.8.0" + "@ethersproject/transactions" "5.8.0" + "@ethersproject/units" "5.8.0" + "@ethersproject/wallet" "5.8.0" + "@ethersproject/web" "5.8.0" + "@ethersproject/wordlists" "5.8.0" + +ethjs-unit@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699" + integrity sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw== + dependencies: + bn.js "4.11.6" + number-to-bn "1.7.0" + +ethjs-util@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.6.tgz#f308b62f185f9fe6237132fb2a9818866a5cd536" + integrity sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w== + dependencies: + is-hex-prefixed "1.0.0" + strip-hex-prefix "1.0.0" + +evm-bn@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/evm-bn/-/evm-bn-1.1.2.tgz#0bfd19d13b18765eac6bdea51d286266cfeab2bc" + integrity sha512-Lq8CT1EAjSeN+Yk0h1hpSwnZyMA4Xir6fQD4vlStljAuW2xr7qLOEGDLGsTa9sU2e40EYIumA4wYhMC/e+lyKw== + dependencies: + "@ethersproject/bignumber" "^5.5.0" + from-exponential "^1.1.1" + +evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +express@^4.21.1: + version "4.22.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.22.1.tgz#1de23a09745a4fffdb39247b344bb5eaff382069" + integrity sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "~1.20.3" + content-disposition "~0.5.4" + content-type "~1.0.4" + cookie "~0.7.1" + cookie-signature "~1.0.6" + debug "2.6.9" + depd "2.0.0" + encodeurl "~2.0.0" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "~1.3.1" + fresh "~0.5.2" + http-errors "~2.0.0" + merge-descriptors "1.0.3" + methods "~1.1.2" + on-finished "~2.4.1" + parseurl "~1.3.3" + path-to-regexp "~0.1.12" + proxy-addr "~2.0.7" + qs "~6.14.0" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "~0.19.0" + serve-static "~1.16.2" + setprototypeof "1.2.0" + statuses "~2.0.1" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +extend@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== + +extsprintf@^1.2.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" + integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== + +fast-base64-decode@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fast-base64-decode/-/fast-base64-decode-1.0.0.tgz#b434a0dd7d92b12b43f26819300d2dafb83ee418" + integrity sha512-qwaScUgUGBYeDNRnbc/KyllVU88Jk1pRHPStuF/lO7B0/RTRLj7U0lkdTAutlBblY08rwZDff6tNU9cjv6j//Q== + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + +fast-uri@^3.0.1: + version "3.1.0" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.0.tgz#66eecff6c764c0df9b762e62ca7edcfb53b4edfa" + integrity sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA== + +fdir@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.5.0.tgz#ed2ab967a331ade62f18d077dae192684d50d350" + integrity sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg== + +file-entry-cache@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" + integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ== + dependencies: + flat-cache "^4.0.0" + +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== + dependencies: + to-regex-range "^5.0.1" + +finalhandler@~1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.2.tgz#1ebc2228fc7673aac4a472c310cc05b77d852b88" + integrity sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg== + dependencies: + debug "2.6.9" + encodeurl "~2.0.0" + escape-html "~1.0.3" + on-finished "~2.4.1" + parseurl "~1.3.3" + statuses "~2.0.2" + unpipe "~1.0.0" + +find-replace@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-replace/-/find-replace-3.0.0.tgz#3e7e23d3b05167a76f770c9fbd5258b0def68c38" + integrity sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ== + dependencies: + array-back "^3.0.1" + +find-up@3.0.0, find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +flat-cache@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-4.0.1.tgz#0ece39fcb14ee012f4b0410bd33dd9c1f011127c" + integrity sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw== + dependencies: + flatted "^3.2.9" + keyv "^4.5.4" + +flat@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.1.tgz#a392059cc382881ff98642f5da4dde0a959f309b" + integrity sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA== + dependencies: + is-buffer "~2.0.3" + +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== + +flatted@^3.2.9: + version "3.3.3" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358" + integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg== + +fmix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/fmix/-/fmix-0.1.0.tgz#c7bbf124dec42c9d191cfb947d0a9778dd986c0c" + integrity sha512-Y6hyofImk9JdzU8k5INtTXX1cu8LDlePWDFU5sftm9H+zKCr5SGrVjdhkvsim646cw5zD0nADj8oHyXMZmCZ9w== + dependencies: + imul "^1.0.0" + +follow-redirects@^1.12.1, follow-redirects@^1.14.0, follow-redirects@^1.15.4, follow-redirects@^1.15.6: + version "1.15.11" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" + integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== + +for-each@^0.3.3, for-each@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.5.tgz#d650688027826920feeb0af747ee7b9421a41d47" + integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg== + dependencies: + is-callable "^1.2.7" + +foreground-child@^3.1.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" + integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== + dependencies: + cross-spawn "^7.0.6" + signal-exit "^4.0.1" + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== + +forge-std@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/forge-std/-/forge-std-1.1.2.tgz#f4a0eda103538d56f9c563f3cd1fa2fd01bd9378" + integrity sha512-Wfb0iAS9PcfjMKtGpWQw9mXzJxrWD62kJCUqqLcyuI0+VRtJ3j20XembjF3kS20qELYdXft1vD/SPFVWVKMFOw== + +form-data@^2.2.0: + version "2.5.5" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.5.tgz#a5f6364ad7e4e67e95b4a07e2d8c6f711c74f624" + integrity sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + es-set-tostringtag "^2.1.0" + hasown "^2.0.2" + mime-types "^2.1.35" + safe-buffer "^5.2.1" + +form-data@^4.0.0, form-data@^4.0.4: + version "4.0.5" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053" + integrity sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + es-set-tostringtag "^2.1.0" + hasown "^2.0.2" + mime-types "^2.1.12" + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== + +fp-ts@1.19.3: + version "1.19.3" + resolved "https://registry.yarnpkg.com/fp-ts/-/fp-ts-1.19.3.tgz#261a60d1088fbff01f91256f91d21d0caaaaa96f" + integrity sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg== + +fp-ts@^1.0.0: + version "1.19.5" + resolved "https://registry.yarnpkg.com/fp-ts/-/fp-ts-1.19.5.tgz#3da865e585dfa1fdfd51785417357ac50afc520a" + integrity sha512-wDNqTimnzs8QqpldiId9OavWK2NptormjXnRJTQecNjzwfyp6P/8s/zG8e4h3ja3oqkKaY72UlTjQYt/1yXf9A== + +fraction.js@4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.4.tgz#b2bac8249a610c3396106da97c5a71da75b94b1c" + integrity sha512-pwiTgt0Q7t+GHZA4yaLjObx4vXmmdcS0iSJ19o8d/goUGgItX9UZWKWNnLHehxviD8wU2IWRsnR8cD5+yOJP2Q== + +fraction.js@^4.2.0: + version "4.3.7" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" + integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== + +fresh@~0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== + +from-exponential@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/from-exponential/-/from-exponential-1.1.1.tgz#41caff748d22e9c195713802cdac31acbe4b1b83" + integrity sha512-VBE7f5OVnYwdgB3LHa+Qo29h8qVpxhVO9Trlc+AWm+/XNAgks1tAwMFHb33mjeiof77GglsJzeYF7OqXrROP/A== + +fs-extra@^7.0.0, fs-extra@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" + integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-readdir-recursive@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" + integrity sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA== + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@~2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" + integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== + +fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.1, function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +function.prototype.name@^1.1.6, function.prototype.name@^1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.8.tgz#e68e1df7b259a5c949eeef95cdbde53edffabb78" + integrity sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + functions-have-names "^1.2.3" + hasown "^2.0.2" + is-callable "^1.2.7" + +functional-red-black-tree@^1.0.1, functional-red-black-tree@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== + +functions-have-names@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== + +ganache-cli@^6.12.2: + version "6.12.2" + resolved "https://registry.yarnpkg.com/ganache-cli/-/ganache-cli-6.12.2.tgz#c0920f7db0d4ac062ffe2375cb004089806f627a" + integrity sha512-bnmwnJDBDsOWBUP8E/BExWf85TsdDEFelQSzihSJm9VChVO1SHp94YXLP5BlA4j/OTxp0wR4R1Tje9OHOuAJVw== + dependencies: + ethereumjs-util "6.2.1" + source-map-support "0.5.12" + yargs "13.2.4" + +ganache@7.4.3: + version "7.4.3" + resolved "https://registry.yarnpkg.com/ganache/-/ganache-7.4.3.tgz#e995f1250697264efbb34d4241c374a2b0271415" + integrity sha512-RpEDUiCkqbouyE7+NMXG26ynZ+7sGiODU84Kz+FVoXUnQ4qQM4M8wif3Y4qUCt+D/eM1RVeGq0my62FPD6Y1KA== + dependencies: + "@trufflesuite/bigint-buffer" "1.1.10" + "@types/bn.js" "^5.1.0" + "@types/lru-cache" "5.1.1" + "@types/seedrandom" "3.0.1" + emittery "0.10.0" + keccak "3.0.2" + leveldown "6.1.0" + secp256k1 "4.0.3" + optionalDependencies: + bufferutil "4.0.5" + utf-8-validate "5.0.7" + +generator-function@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/generator-function/-/generator-function-2.0.1.tgz#0e75dd410d1243687a0ba2e951b94eedb8f737a2" + integrity sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g== + +get-caller-file@^2.0.1, get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-func-name@^2.0.1, get-func-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== + +get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.2.7, get-intrinsic@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== + dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + function-bind "^1.1.2" + get-proto "^1.0.1" + gopd "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + math-intrinsics "^1.1.0" + +get-port@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-3.2.0.tgz#dd7ce7de187c06c8bf353796ac71e099f0980ebc" + integrity sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg== + +get-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== + dependencies: + dunder-proto "^1.0.1" + es-object-atoms "^1.0.0" + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-symbol-description@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.1.0.tgz#7bdd54e0befe8ffc9f3b4e203220d9f1e881b6ee" + integrity sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== + dependencies: + assert-plus "^1.0.0" + +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + +glob-parent@~5.1.0, glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@10.3.0: + version "10.3.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.0.tgz#763d02a894f3cdfc521b10bbbbc8e0309e750cce" + integrity sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.0.3" + minimatch "^9.0.1" + minipass "^5.0.0 || ^6.0.2" + path-scurry "^1.7.0" + +glob@7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" + integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@7.1.7: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + +globals@^14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" + integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== + +globalthis@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" + integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== + dependencies: + define-properties "^1.2.1" + gopd "^1.0.1" + +gopd@^1.0.1, gopd@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== + +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.4: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +growl@1.10.5: + version "1.10.5" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" + integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q== + +har-validator@~5.1.3: + version "5.1.5" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== + dependencies: + ajv "^6.12.3" + har-schema "^2.0.0" + +hardhat-contract-sizer@^2.8.0: + version "2.10.1" + resolved "https://registry.yarnpkg.com/hardhat-contract-sizer/-/hardhat-contract-sizer-2.10.1.tgz#125092f9398105d0d23001056aac61c936ad841a" + integrity sha512-/PPQQbUMgW6ERzk8M0/DA8/v2TEM9xRRAnF9qKPNMYF6FX5DFWcnxBsQvtp8uBz+vy7rmLyV9Elti2wmmhgkbg== + dependencies: + chalk "^4.0.0" + cli-table3 "^0.6.0" + strip-ansi "^6.0.0" + +hardhat-gas-reporter@^1.0.4: + version "1.0.10" + resolved "https://registry.yarnpkg.com/hardhat-gas-reporter/-/hardhat-gas-reporter-1.0.10.tgz#ebe5bda5334b5def312747580cd923c2b09aef1b" + integrity sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA== + dependencies: + array-uniq "1.0.3" + eth-gas-reporter "^0.2.25" + sha1 "^1.1.1" + +hardhat-preprocessor@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/hardhat-preprocessor/-/hardhat-preprocessor-0.1.5.tgz#75b22641fd6a680739c995d03bd5f7868eb72144" + integrity sha512-j8m44mmPxpxAAd0G8fPHRHOas/INZdzptSur0TNJvMEGcFdLDhbHHxBcqZVQ/bmiW42q4gC60AP4CXn9EF018g== + dependencies: + murmur-128 "^0.2.1" + +hardhat-tracer@^1.1.0-rc.9: + version "1.3.0" + resolved "https://registry.yarnpkg.com/hardhat-tracer/-/hardhat-tracer-1.3.0.tgz#273d8aeca57283f597f2eaef2c8acdd0162f3672" + integrity sha512-mUYuRJWlxCwY4R2urCpNM4ecVSq/iMLiVP9YZKlfXyv4R8T+4HAcTfumilUOXHGe6wHI+8Ki2EaTon3KgzATDA== + dependencies: + ethers "^5.6.1" + +hardhat@2.26.0, hardhat@^2.17.1, hardhat@^2.2.1: + version "2.26.0" + resolved "https://registry.yarnpkg.com/hardhat/-/hardhat-2.26.0.tgz#8244d7be2ae69f89240fba78f4e35adf5883c764" + integrity sha512-hwEUBvMJzl3Iuru5bfMOEDeF2d7cbMNNF46rkwdo8AeW2GDT4VxFLyYWTi6PTLrZiftHPDiKDlAdAiGvsR9FYA== + dependencies: + "@ethereumjs/util" "^9.1.0" + "@ethersproject/abi" "^5.1.2" + "@nomicfoundation/edr" "^0.11.3" + "@nomicfoundation/solidity-analyzer" "^0.1.0" + "@sentry/node" "^5.18.1" + adm-zip "^0.4.16" + aggregate-error "^3.0.0" + ansi-escapes "^4.3.0" + boxen "^5.1.2" + chokidar "^4.0.0" + ci-info "^2.0.0" + debug "^4.1.1" + enquirer "^2.3.0" + env-paths "^2.2.0" + ethereum-cryptography "^1.0.3" + find-up "^5.0.0" + fp-ts "1.19.3" + fs-extra "^7.0.1" + immutable "^4.0.0-rc.12" + io-ts "1.10.4" + json-stream-stringify "^3.1.4" + keccak "^3.0.2" + lodash "^4.17.11" + micro-eth-signer "^0.16.0" + mnemonist "^0.38.0" + mocha "^10.0.0" + p-map "^4.0.0" + picocolors "^1.1.0" + raw-body "^2.4.1" + resolve "1.17.0" + semver "^6.3.0" + solc "0.8.26" + source-map-support "^0.5.13" + stacktrace-parser "^0.1.10" + tinyglobby "^0.2.6" + tsort "0.0.1" + undici "^5.14.0" + uuid "^8.3.2" + ws "^7.4.6" + +has-bigints@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.1.0.tgz#28607e965ac967e03cd2a2c70a2636a1edad49fe" + integrity sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-proto@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.2.0.tgz#5de5a6eabd95fdffd9818b43055e8065e39fe9d5" + integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ== + dependencies: + dunder-proto "^1.0.0" + +has-symbols@^1.0.0, has-symbols@^1.0.3, has-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== + +has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + +hash-base@^3.0.0, hash-base@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.2.tgz#79d72def7611c3f6e3c3b5730652638001b10a74" + integrity sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg== + dependencies: + inherits "^2.0.4" + readable-stream "^2.3.8" + safe-buffer "^5.2.1" + to-buffer "^1.2.1" + +hash.js@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" + integrity sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.0" + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + +he@1.2.0, he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hosted-git-info@^2.6.0: + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +http-basic@^8.1.1: + version "8.1.3" + resolved "https://registry.yarnpkg.com/http-basic/-/http-basic-8.1.3.tgz#a7cabee7526869b9b710136970805b1004261bbf" + integrity sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw== + dependencies: + caseless "^0.12.0" + concat-stream "^1.6.2" + http-response-object "^3.0.1" + parse-cache-control "^1.0.1" + +http-errors@~2.0.0, http-errors@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.1.tgz#36d2f65bc909c8790018dd36fb4d93da6caae06b" + integrity sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ== + dependencies: + depd "~2.0.0" + inherits "~2.0.4" + setprototypeof "~1.2.0" + statuses "~2.0.2" + toidentifier "~1.0.1" + +http-response-object@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/http-response-object/-/http-response-object-3.0.2.tgz#7f435bb210454e4360d074ef1f989d5ea8aa9810" + integrity sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA== + dependencies: + "@types/node" "^10.0.3" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ== + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +https-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== + dependencies: + agent-base "6" + debug "4" + +iconv-lite@~0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ieee754@^1.1.13, ieee754@^1.1.4, ieee754@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +ignore@^5.2.0: + version "5.3.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + +immediate@^3.2.3: + version "3.3.0" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.3.0.tgz#1aef225517836bcdf7f2a2de2600c79ff0269266" + integrity sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q== + +immediate@~3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.2.3.tgz#d140fa8f614659bd6541233097ddaac25cdd991c" + integrity sha512-RrGCXRm/fRVqMIhqXrGEX9rRADavPiDFSoMb/k64i9XMk8uH4r/Omi5Ctierj6XzNecwDbO4WuFbDD1zmpl3Tg== + +immutable@^4.0.0-rc.12: + version "4.3.7" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.7.tgz#c70145fc90d89fb02021e65c84eb0226e4e5a381" + integrity sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw== + +import-fresh@^3.2.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" + integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +imul@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/imul/-/imul-1.0.1.tgz#9d5867161e8b3de96c2c38d5dc7cb102f35e2ac9" + integrity sha512-WFAgfwPLAjU66EKt6vRdTlKj4nAgIDQzh29JonLa4Bqtl6D8JrIMvWjCnx7xEjVNmP3U0fM5o8ZObk7d0f62bA== + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +internal-slot@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.1.0.tgz#1eac91762947d2f7056bc838d93e13b2e9604961" + integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw== + dependencies: + es-errors "^1.3.0" + hasown "^2.0.2" + side-channel "^1.1.0" + +invert-kv@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" + integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== + +io-ts@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/io-ts/-/io-ts-1.10.4.tgz#cd5401b138de88e4f920adbcb7026e2d1967e6e2" + integrity sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g== + dependencies: + fp-ts "^1.0.0" + +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + +is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.5.tgz#65742e1e687bd2cc666253068fd8707fe4d44280" + integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + get-intrinsic "^1.2.6" + +is-async-function@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.1.1.tgz#3e69018c8e04e73b738793d020bfe884b9fd3523" + integrity sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ== + dependencies: + async-function "^1.0.0" + call-bound "^1.0.3" + get-proto "^1.0.1" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-bigint@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.1.0.tgz#dda7a3445df57a42583db4228682eba7c4170672" + integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ== + dependencies: + has-bigints "^1.0.2" + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-boolean-object@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.2.2.tgz#7067f47709809a393c71ff5bb3e135d8a9215d9e" + integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-buffer@^2.0.5, is-buffer@~2.0.3: + version "2.0.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + +is-callable@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== + +is-data-view@^1.0.1, is-data-view@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.2.tgz#bae0a41b9688986c2188dda6657e56b8f9e63b8e" + integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw== + dependencies: + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + is-typed-array "^1.1.13" + +is-date-object@^1.0.5, is-date-object@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.1.0.tgz#ad85541996fc7aa8b2729701d27b7319f95d82f7" + integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg== + dependencies: + call-bound "^1.0.2" + has-tostringtag "^1.0.2" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-finalizationregistry@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz#eefdcdc6c94ddd0674d9c85887bf93f944a97c90" + integrity sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg== + dependencies: + call-bound "^1.0.3" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-function@^1.0.10: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.1.2.tgz#ae3b61e3d5ea4e4839b90bad22b02335051a17d5" + integrity sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA== + dependencies: + call-bound "^1.0.4" + generator-function "^2.0.0" + get-proto "^1.0.1" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-hex-prefixed@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" + integrity sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA== + +is-map@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" + integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== + +is-negative-zero@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" + integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== + +is-number-object@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.1.1.tgz#144b21e95a1bc148205dcc2814a9134ec41b2541" + integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-plain-obj@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + +is-regex@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22" + integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g== + dependencies: + call-bound "^1.0.2" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +is-set@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" + integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== + +is-shared-array-buffer@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz#9b67844bd9b7f246ba0708c3a93e34269c774f6f" + integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A== + dependencies: + call-bound "^1.0.3" + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + +is-string@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9" + integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-symbol@^1.0.4, is-symbol@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.1.1.tgz#f47761279f532e2b05a7024a7506dbbedacd0634" + integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w== + dependencies: + call-bound "^1.0.2" + has-symbols "^1.1.0" + safe-regex-test "^1.1.0" + +is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15: + version "1.1.15" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.15.tgz#4bfb4a45b61cee83a5a46fba778e4e8d59c0ce0b" + integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== + dependencies: + which-typed-array "^1.1.16" + +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + +is-unicode-supported@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== + +is-url@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52" + integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww== + +is-weakmap@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" + integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== + +is-weakref@^1.0.2, is-weakref@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.1.1.tgz#eea430182be8d64174bd96bffbc46f21bf3f9293" + integrity sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew== + dependencies: + call-bound "^1.0.3" + +is-weakset@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.4.tgz#c9f5deb0bc1906c6d6f1027f284ddf459249daca" + integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ== + dependencies: + call-bound "^1.0.3" + get-intrinsic "^1.2.6" + +isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isarray@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +isomorphic-unfetch@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" + integrity sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q== + dependencies: + node-fetch "^2.6.1" + unfetch "^4.2.0" + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== + +jackspeak@^2.0.3: + version "2.3.6" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" + integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + +javascript-natural-sort@^0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz#f9e2303d4507f6d74355a73664d1440fb5a0ef59" + integrity sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw== + +js-cookie@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-2.2.1.tgz#69e106dc5d5806894562902aa5baec3744e9b2b8" + integrity sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ== + +js-sha3@0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7" + integrity sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g== + +js-sha3@0.8.0, js-sha3@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +js-yaml@3.13.1: + version "3.13.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@^4.1.0, js-yaml@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.1.tgz#854c292467705b699476e1a2decc0c8a3458806b" + integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA== + dependencies: + argparse "^2.0.1" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== + +json-bigint@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1" + integrity sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ== + dependencies: + bignumber.js "^9.0.0" + +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== + +json-stream-stringify@^3.1.4: + version "3.1.6" + resolved "https://registry.yarnpkg.com/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz#ebe32193876fb99d4ec9f612389a8d8e2b5d54d4" + integrity sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog== + +json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== + optionalDependencies: + graceful-fs "^4.1.6" + +jsprim@^1.2.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" + integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw== + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.4.0" + verror "1.10.0" + +keccak256@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/keccak256/-/keccak256-1.0.6.tgz#dd32fb771558fed51ce4e45a035ae7515573da58" + integrity sha512-8GLiM01PkdJVGUhR1e6M/AvWnSqYS0HaERI+K/QtStGDGlSTx2B1zTqZk4Zlqu5TxHJNTxWAdP9Y+WI50OApUw== + dependencies: + bn.js "^5.2.0" + buffer "^6.0.3" + keccak "^3.0.2" + +keccak@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.1.tgz#ae30a0e94dbe43414f741375cff6d64c8bea0bff" + integrity sha512-epq90L9jlFWCW7+pQa6JOnKn2Xgl2mtI664seYR6MHskvI9agt7AnDqmAlp9TqU4/caMYbA08Hi5DMZAl5zdkA== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + +keccak@3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.2.tgz#4c2c6e8c54e04f2670ee49fa734eb9da152206e0" + integrity sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + readable-stream "^3.6.0" + +keccak@^3.0.0, keccak@^3.0.2: + version "3.0.4" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.4.tgz#edc09b89e633c0549da444432ecf062ffadee86d" + integrity sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + readable-stream "^3.6.0" + +keyv@^4.5.4: + version "4.5.4" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + +lcid@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" + integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== + dependencies: + invert-kv "^2.0.0" + +level-codec@^9.0.0: + version "9.0.2" + resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-9.0.2.tgz#fd60df8c64786a80d44e63423096ffead63d8cbc" + integrity sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ== + dependencies: + buffer "^5.6.0" + +level-concat-iterator@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-3.1.0.tgz#5235b1f744bc34847ed65a50548aa88d22e881cf" + integrity sha512-BWRCMHBxbIqPxJ8vHOvKUsaO0v1sLYZtjN3K2iZJsRBYtp+ONsY6Jfi6hy9K3+zolgQRryhIn2NRZjZnWJ9NmQ== + dependencies: + catering "^2.1.0" + +level-concat-iterator@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz#1d1009cf108340252cb38c51f9727311193e6263" + integrity sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw== + +level-errors@^2.0.0, level-errors@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-2.0.1.tgz#2132a677bf4e679ce029f517c2f17432800c05c8" + integrity sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw== + dependencies: + errno "~0.1.1" + +level-iterator-stream@~4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz#7ceba69b713b0d7e22fcc0d1f128ccdc8a24f79c" + integrity sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q== + dependencies: + inherits "^2.0.4" + readable-stream "^3.4.0" + xtend "^4.0.2" + +level-mem@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/level-mem/-/level-mem-5.0.1.tgz#c345126b74f5b8aa376dc77d36813a177ef8251d" + integrity sha512-qd+qUJHXsGSFoHTziptAKXoLX87QjR7v2KMbqncDXPxQuCdsQlzmyX+gwrEHhlzn08vkf8TyipYyMmiC6Gobzg== + dependencies: + level-packager "^5.0.3" + memdown "^5.0.0" + +level-packager@^5.0.3: + version "5.1.1" + resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-5.1.1.tgz#323ec842d6babe7336f70299c14df2e329c18939" + integrity sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ== + dependencies: + encoding-down "^6.3.0" + levelup "^4.3.2" + +level-supports@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-2.1.0.tgz#9af908d853597ecd592293b2fad124375be79c5f" + integrity sha512-E486g1NCjW5cF78KGPrMDRBYzPuueMZ6VBXHT6gC7A8UYWGiM14fGgp+s/L1oFfDWSPV/+SFkYCmZ0SiESkRKA== + +level-supports@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-1.0.1.tgz#2f530a596834c7301622521988e2c36bb77d122d" + integrity sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg== + dependencies: + xtend "^4.0.2" + +level-ws@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/level-ws/-/level-ws-2.0.0.tgz#207a07bcd0164a0ec5d62c304b4615c54436d339" + integrity sha512-1iv7VXx0G9ec1isqQZ7y5LmoZo/ewAsyDHNA8EFDW5hqH2Kqovm33nSFkSdnLLAK+I5FlT+lo5Cw9itGe+CpQA== + dependencies: + inherits "^2.0.3" + readable-stream "^3.1.0" + xtend "^4.0.1" + +leveldown@6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/leveldown/-/leveldown-6.1.0.tgz#7ab1297706f70c657d1a72b31b40323aa612b9ee" + integrity sha512-8C7oJDT44JXxh04aSSsfcMI8YiaGRhOFI9/pMEL7nWJLVsWajDPTRxsSHTM2WcTVY5nXM+SuRHzPPi0GbnDX+w== + dependencies: + abstract-leveldown "^7.2.0" + napi-macros "~2.0.0" + node-gyp-build "^4.3.0" + +levelup@^4.3.2: + version "4.4.0" + resolved "https://registry.yarnpkg.com/levelup/-/levelup-4.4.0.tgz#f89da3a228c38deb49c48f88a70fb71f01cafed6" + integrity sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ== + dependencies: + deferred-leveldown "~5.3.0" + level-errors "~2.0.0" + level-iterator-stream "~4.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== + +lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21: + version "4.17.23" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" + integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== + +log-symbols@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" + integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== + dependencies: + chalk "^2.4.2" + +log-symbols@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== + dependencies: + chalk "^4.1.0" + is-unicode-supported "^0.1.0" + +loupe@^2.3.6: + version "2.3.7" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.7.tgz#6e69b7d4db7d3ab436328013d37d1c8c3540c697" + integrity sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA== + dependencies: + get-func-name "^2.0.1" + +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +lru_map@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/lru_map/-/lru_map-0.3.3.tgz#b5c8351b9464cbd750335a79650a0ec0e56118dd" + integrity sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ== + +ltgt@~2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" + integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== + +make-error@^1.1.1: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +map-age-cleaner@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +markdown-table@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-1.1.3.tgz#9fcb69bcfdb8717bfd0398c6ec2d93036ef8de60" + integrity sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q== + +math-intrinsics@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== + +mathjs@^10.4.0: + version "10.6.4" + resolved "https://registry.yarnpkg.com/mathjs/-/mathjs-10.6.4.tgz#1b87a1268781d64f0c8b4e5e1b36cf7ecf58bb05" + integrity sha512-omQyvRE1jIy+3k2qsqkWASOcd45aZguXZDckr3HtnTYyXk5+2xpVfC3kATgbO2Srjxlqww3TVdhD0oUdZ/hiFA== + dependencies: + "@babel/runtime" "^7.18.6" + complex.js "^2.1.1" + decimal.js "^10.3.1" + escape-latex "^1.2.0" + fraction.js "^4.2.0" + javascript-natural-sort "^0.7.1" + seedrandom "^3.0.5" + tiny-emitter "^2.1.0" + typed-function "^2.1.0" + +mathjs@^11.0.1: + version "11.12.0" + resolved "https://registry.yarnpkg.com/mathjs/-/mathjs-11.12.0.tgz#e933e5941930d44763ddfc5bfb08b90059449b2c" + integrity sha512-UGhVw8rS1AyedyI55DGz9q1qZ0p98kyKPyc9vherBkoueLntPfKtPBh14x+V4cdUWK0NZV2TBwqRFlvadscSuw== + dependencies: + "@babel/runtime" "^7.23.2" + complex.js "^2.1.1" + decimal.js "^10.4.3" + escape-latex "^1.2.0" + fraction.js "4.3.4" + javascript-natural-sort "^0.7.1" + seedrandom "^3.0.5" + tiny-emitter "^2.1.0" + typed-function "^4.1.1" + +mcl-wasm@^0.7.1: + version "0.7.9" + resolved "https://registry.yarnpkg.com/mcl-wasm/-/mcl-wasm-0.7.9.tgz#c1588ce90042a8700c3b60e40efb339fc07ab87f" + integrity sha512-iJIUcQWA88IJB/5L15GnJVnSQJmf/YaxxV6zRavv83HILHaJQb6y0iFyDMdDO0gN8X37tdxmAOrH/P8B6RB8sQ== + +md5.js@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== + +mem@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" + integrity sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w== + dependencies: + map-age-cleaner "^0.1.1" + mimic-fn "^2.0.0" + p-is-promise "^2.0.0" + +memdown@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/memdown/-/memdown-5.1.0.tgz#608e91a9f10f37f5b5fe767667a8674129a833cb" + integrity sha512-B3J+UizMRAlEArDjWHTMmadet+UKwHd3UjMgGBkZcKAxAYVPS9o0Yeiha4qvz7iGiL2Sb3igUft6p7nbFWctpw== + dependencies: + abstract-leveldown "~6.2.1" + functional-red-black-tree "~1.0.1" + immediate "~3.2.3" + inherits "~2.0.1" + ltgt "~2.2.0" + safe-buffer "~5.2.0" + +memorystream@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" + integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== + +merge-descriptors@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" + integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== + +merkle-patricia-tree@^4.2.2, merkle-patricia-tree@^4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-4.2.4.tgz#ff988d045e2bf3dfa2239f7fabe2d59618d57413" + integrity sha512-eHbf/BG6eGNsqqfbLED9rIqbsF4+sykEaBn6OLNs71tjclbMcMOk1tEPmJKcNcNCLkvbpY/lwyOlizWsqPNo8w== + dependencies: + "@types/levelup" "^4.3.0" + ethereumjs-util "^7.1.4" + level-mem "^5.0.1" + level-ws "^2.0.0" + readable-stream "^3.6.0" + semaphore-async-await "^1.5.1" + +merkletreejs@^0.2.31: + version "0.2.32" + resolved "https://registry.yarnpkg.com/merkletreejs/-/merkletreejs-0.2.32.tgz#cf1c0760e2904e4a1cc269108d6009459fd06223" + integrity sha512-TostQBiwYRIwSE5++jGmacu3ODcKAgqb0Y/pnIohXS7sWxh1gCkSptbmF1a43faehRDpcHf7J/kv0Ml2D/zblQ== + dependencies: + bignumber.js "^9.0.1" + buffer-reverse "^1.0.1" + crypto-js "^3.1.9-1" + treeify "^1.1.0" + web3-utils "^1.3.4" + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== + +micro-eth-signer@^0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/micro-eth-signer/-/micro-eth-signer-0.16.0.tgz#a35d0de41ae9164ec96150a0f1fc29e7635ff106" + integrity sha512-rsSJcMGfY+kt3ROlL3U6y5BcjkK2H0zDKUQV6soo1JvjrctKKe+X7rKB0YIuwhWjlhJIoVHLuRYF+GXyyuVXxQ== + dependencies: + "@noble/curves" "~1.9.2" + "@noble/hashes" "2.0.0-beta.1" + micro-packed "~0.7.3" + +micro-ftch@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/micro-ftch/-/micro-ftch-0.3.1.tgz#6cb83388de4c1f279a034fb0cf96dfc050853c5f" + integrity sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg== + +micro-packed@~0.7.3: + version "0.7.3" + resolved "https://registry.yarnpkg.com/micro-packed/-/micro-packed-0.7.3.tgz#59e96b139dffeda22705c7a041476f24cabb12b6" + integrity sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg== + dependencies: + "@scure/base" "~1.2.5" + +miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12, mime-types@^2.1.35, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mimic-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^3.0.4, minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^5.0.1, minimatch@^5.1.6: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^9.0.1, minimatch@^9.0.5: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6, minimist@^1.2.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +"minipass@^5.0.0 || ^6.0.2": + version "6.0.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-6.0.2.tgz#542844b6c4ce95b202c0995b0a471f1229de4c81" + integrity sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w== + +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + +mkdirp@0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + +mkdirp@^0.5.1: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== + dependencies: + minimist "^1.2.6" + +mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +mnemonist@^0.38.0: + version "0.38.5" + resolved "https://registry.yarnpkg.com/mnemonist/-/mnemonist-0.38.5.tgz#4adc7f4200491237fe0fa689ac0b86539685cade" + integrity sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg== + dependencies: + obliterator "^2.0.0" + +mocha@^10.0.0, mocha@^10.2.0: + version "10.8.2" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.8.2.tgz#8d8342d016ed411b12a429eb731b825f961afb96" + integrity sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg== + dependencies: + ansi-colors "^4.1.3" + browser-stdout "^1.3.1" + chokidar "^3.5.3" + debug "^4.3.5" + diff "^5.2.0" + escape-string-regexp "^4.0.0" + find-up "^5.0.0" + glob "^8.1.0" + he "^1.2.0" + js-yaml "^4.1.0" + log-symbols "^4.1.0" + minimatch "^5.1.6" + ms "^2.1.3" + serialize-javascript "^6.0.2" + strip-json-comments "^3.1.1" + supports-color "^8.1.1" + workerpool "^6.5.1" + yargs "^16.2.0" + yargs-parser "^20.2.9" + yargs-unparser "^2.0.0" + +mocha@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.2.0.tgz#01cc227b00d875ab1eed03a75106689cfed5a604" + integrity sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ== + dependencies: + ansi-colors "3.2.3" + browser-stdout "1.3.1" + chokidar "3.3.0" + debug "3.2.6" + diff "3.5.0" + escape-string-regexp "1.0.5" + find-up "3.0.0" + glob "7.1.3" + growl "1.10.5" + he "1.2.0" + js-yaml "3.13.1" + log-symbols "3.0.0" + minimatch "3.0.4" + mkdirp "0.5.5" + ms "2.1.1" + node-environment-flags "1.0.6" + object.assign "4.1.0" + strip-json-comments "2.0.1" + supports-color "6.0.0" + which "1.3.1" + wide-align "1.1.3" + yargs "13.3.2" + yargs-parser "13.1.2" + yargs-unparser "1.6.0" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + +ms@2.1.3, ms@^2.1.1, ms@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +murmur-128@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/murmur-128/-/murmur-128-0.2.1.tgz#a9f6568781d2350ecb1bf80c14968cadbeaa4b4d" + integrity sha512-WseEgiRkI6aMFBbj8Cg9yBj/y+OdipwVC7zUo3W2W1JAJITwouUOtpqsmGSg67EQmwwSyod7hsVsWY5LsrfQVg== + dependencies: + encode-utf8 "^1.0.2" + fmix "^0.1.0" + imul "^1.0.0" + +napi-macros@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b" + integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +negotiator@0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +node-addon-api@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32" + integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA== + +node-addon-api@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" + integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== + +node-environment-flags@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" + integrity sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw== + dependencies: + object.getownpropertydescriptors "^2.0.3" + semver "^5.7.0" + +node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.7: + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + dependencies: + whatwg-url "^5.0.0" + +node-gyp-build@4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3" + integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q== + +node-gyp-build@4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.4.0.tgz#42e99687ce87ddeaf3a10b99dc06abc11021f3f4" + integrity sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ== + +node-gyp-build@^4.2.0, node-gyp-build@^4.3.0: + version "4.8.4" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" + integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== + +nofilter@^3.0.2, nofilter@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/nofilter/-/nofilter-3.1.0.tgz#c757ba68801d41ff930ba2ec55bab52ca184aa66" + integrity sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g== + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== + dependencies: + path-key "^2.0.0" + +number-to-bn@1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0" + integrity sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig== + dependencies: + bn.js "4.11.6" + strip-hex-prefix "1.0.0" + +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +object-assign@^4, object-assign@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +object-inspect@^1.13.3, object-inspect@^1.13.4: + version "1.13.4" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" + integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== + +object-keys@^1.0.11, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" + +object.assign@^4.1.7: + version "4.1.7" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" + integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + has-symbols "^1.1.0" + object-keys "^1.1.1" + +object.getownpropertydescriptors@^2.0.3: + version "2.1.9" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.9.tgz#bf9e7520f14d50de88dee2b9c9eca841166322dc" + integrity sha512-mt8YM6XwsTTovI+kdZdHSxoyF2DI59up034orlC9NfweclcWOt7CVascNNLp6U+bjFVCVCIh9PwS76tDM/rH8g== + dependencies: + array.prototype.reduce "^1.0.8" + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.24.0" + es-object-atoms "^1.1.1" + gopd "^1.2.0" + safe-array-concat "^1.1.3" + +obliterator@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-2.0.5.tgz#031e0145354b0c18840336ae51d41e7d6d2c76aa" + integrity sha512-42CPE9AhahZRsMNslczq0ctAEtqk8Eka26QofnqC346BZdHDySk3LWka23LI7ULIw11NmltpiLagIq8gBozxTw== + +on-finished@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +optionator@^0.9.3: + version "0.9.4" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" + integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.5" + +os-locale@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" + integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== + dependencies: + execa "^1.0.0" + lcid "^2.0.0" + mem "^4.0.0" + +os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== + +own-keys@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/own-keys/-/own-keys-1.0.1.tgz#e4006910a2bf913585289676eebd6f390cf51358" + integrity sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg== + dependencies: + get-intrinsic "^1.2.6" + object-keys "^1.1.1" + safe-push-apply "^1.0.0" + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + +p-is-promise@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== + +p-limit@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-cache-control@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parse-cache-control/-/parse-cache-control-1.0.1.tgz#8eeab3e54fa56920fe16ba38f77fa21aacc2d74e" + integrity sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg== + +parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-browserify@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-scurry@^1.7.0: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + +path-to-regexp@~0.1.12: + version "0.1.12" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.12.tgz#d5e1a12e478a976d432ef3c58d534b9923164bb7" + integrity sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ== + +pathval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== + +pbkdf2@^3.0.17, pbkdf2@^3.0.9: + version "3.1.5" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.5.tgz#444a59d7a259a95536c56e80c89de31cc01ed366" + integrity sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ== + dependencies: + create-hash "^1.2.0" + create-hmac "^1.1.7" + ripemd160 "^2.0.3" + safe-buffer "^5.2.1" + sha.js "^2.4.12" + to-buffer "^1.2.1" + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== + +picocolors@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + +picomatch@^2.0.4, picomatch@^2.2.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +picomatch@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.3.tgz#796c76136d1eead715db1e7bad785dedd695a042" + integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== + +possible-typed-array-names@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" + integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prettier-plugin-solidity@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/prettier-plugin-solidity/-/prettier-plugin-solidity-1.4.3.tgz#73f8adeb0214fb3db1c2d59023b39e079be69019" + integrity sha512-Mrr/iiR9f9IaeGRMZY2ApumXcn/C5Gs3S7B7hWB3gigBFML06C0yEyW86oLp0eqiA0qg+46FaChgLPJCj/pIlg== + dependencies: + "@solidity-parser/parser" "^0.20.1" + semver "^7.7.1" + +prettier@^2.3.1: + version "2.8.8" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" + integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== + +prettier@^3.5.3: + version "3.8.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.8.1.tgz#edf48977cf991558f4fcbd8a3ba6015ba2a3a173" + integrity sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg== + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +promise@^8.0.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/promise/-/promise-8.3.0.tgz#8cb333d1edeb61ef23869fbb8a4ea0279ab60e0a" + integrity sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg== + dependencies: + asap "~2.0.6" + +proper-lockfile@^4.1.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-4.1.2.tgz#c8b9de2af6b2f1601067f98e01ac66baa223141f" + integrity sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA== + dependencies: + graceful-fs "^4.2.4" + retry "^0.12.0" + signal-exit "^3.0.2" + +proxy-addr@~2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.1" + +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== + +psl@^1.1.28: + version "1.15.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.15.0.tgz#bdace31896f1d97cec6a79e8224898ce93d974c6" + integrity sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w== + dependencies: + punycode "^2.3.1" + +pump@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.3.tgz#151d979f1a29668dc0025ec589a455b53282268d" + integrity sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== + +punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== + +qs@^6.12.3, qs@^6.4.0, qs@~6.14.0: + version "6.14.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" + integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== + dependencies: + side-channel "^1.1.0" + +qs@~6.5.2: + version "6.5.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" + integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== + +queue-microtask@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +randombytes@^2.0.1, randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@^2.4.1, raw-body@~2.5.3: + version "2.5.3" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.3.tgz#11c6650ee770a7de1b494f197927de0c923822e2" + integrity sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA== + dependencies: + bytes "~3.1.2" + http-errors "~2.0.1" + iconv-lite "~0.4.24" + unpipe "~1.0.0" + +readable-stream@^2.2.2, readable-stream@^2.3.8: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + +readable-stream@^3.1.0, readable-stream@^3.4.0, readable-stream@^3.6.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readdirp@^4.0.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-4.1.2.tgz#eb85801435fbf2a7ee58f19e0921b068fc69948d" + integrity sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg== + +readdirp@~3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.2.0.tgz#c30c33352b12c96dfb4b895421a49fd5a9593839" + integrity sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ== + dependencies: + picomatch "^2.0.4" + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +readline-sync@^1.4.10: + version "1.4.10" + resolved "https://registry.yarnpkg.com/readline-sync/-/readline-sync-1.4.10.tgz#41df7fbb4b6312d673011594145705bf56d8873b" + integrity sha512-gNva8/6UAe8QYepIQH/jQ2qn91Qj0B9sYjMBBs3QOB8F2CXcKgLxQaJRP76sWVRQt+QU+8fAkCbCvjjMFu7Ycw== + +reduce-flatten@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-2.0.0.tgz#734fd84e65f375d7ca4465c69798c25c9d10ae27" + integrity sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w== + +reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9: + version "1.0.10" + resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz#c629219e78a3316d8b604c765ef68996964e7bf9" + integrity sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.7" + get-proto "^1.0.1" + which-builtin-type "^1.2.1" + +regexp.prototype.flags@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" + integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-errors "^1.3.0" + get-proto "^1.0.1" + gopd "^1.2.0" + set-function-name "^2.0.2" + +req-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/req-cwd/-/req-cwd-2.0.0.tgz#d4082b4d44598036640fb73ddea01ed53db49ebc" + integrity sha512-ueoIoLo1OfB6b05COxAA9UpeoscNpYyM+BqYlA7H6LVF4hKGPXQQSSaD2YmvDVJMkk4UDpAHIeU1zG53IqjvlQ== + dependencies: + req-from "^2.0.0" + +req-from@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/req-from/-/req-from-2.0.0.tgz#d74188e47f93796f4aa71df6ee35ae689f3e0e70" + integrity sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA== + dependencies: + resolve-from "^3.0.0" + +request-promise-core@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" + integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw== + dependencies: + lodash "^4.17.19" + +request-promise-native@^1.0.5: + version "1.0.9" + resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.9.tgz#e407120526a5efdc9a39b28a5679bf47b9d9dc28" + integrity sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g== + dependencies: + request-promise-core "1.1.4" + stealthy-require "^1.1.1" + tough-cookie "^2.3.3" + +request@^2.85.0, request@^2.88.0: + version "2.88.2" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.8.0" + caseless "~0.12.0" + combined-stream "~1.0.6" + extend "~3.0.2" + forever-agent "~0.6.1" + form-data "~2.3.2" + har-validator "~5.1.3" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.5.0" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + integrity sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw== + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve@1.17.0: + version "1.17.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" + integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== + dependencies: + path-parse "^1.0.6" + +retry@0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" + integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== + +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== + +ripemd160@^2.0.0, ripemd160@^2.0.1, ripemd160@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.3.tgz#9be54e4ba5e3559c8eee06a25cd7648bbccdf5a8" + integrity sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA== + dependencies: + hash-base "^3.1.2" + inherits "^2.0.4" + +rlp@2.2.6: + version "2.2.6" + resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.6.tgz#c80ba6266ac7a483ef1e69e8e2f056656de2fb2c" + integrity sha512-HAfAmL6SDYNWPUOJNrM500x4Thn4PZsEy5pijPh40U9WfNk0z15hUYzO9xVIMAdIHdFtD8CBDHd75Td1g36Mjg== + dependencies: + bn.js "^4.11.1" + +rlp@^2.2.3, rlp@^2.2.4: + version "2.2.7" + resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.7.tgz#33f31c4afac81124ac4b283e2bd4d9720b30beaf" + integrity sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ== + dependencies: + bn.js "^5.2.0" + +rustbn.js@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/rustbn.js/-/rustbn.js-0.2.0.tgz#8082cb886e707155fd1cb6f23bd591ab8d55d0ca" + integrity sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA== + +safe-array-concat@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3" + integrity sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + has-symbols "^1.1.0" + isarray "^2.0.5" + +safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-push-apply@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/safe-push-apply/-/safe-push-apply-1.0.0.tgz#01850e981c1602d398c85081f360e4e6d03d27f5" + integrity sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA== + dependencies: + es-errors "^1.3.0" + isarray "^2.0.5" + +safe-regex-test@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz#7f87dfb67a3150782eaaf18583ff5d1711ac10c1" + integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-regex "^1.2.1" + +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +scrypt-js@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-2.0.4.tgz#32f8c5149f0797672e551c07e230f834b6af5f16" + integrity sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw== + +scrypt-js@3.0.1, scrypt-js@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +secp256k1@4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-4.0.3.tgz#c4559ecd1b8d3c1827ed2d1b94190d69ce267303" + integrity sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA== + dependencies: + elliptic "^6.5.4" + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + +secp256k1@^4.0.1: + version "4.0.4" + resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-4.0.4.tgz#58f0bfe1830fe777d9ca1ffc7574962a8189f8ab" + integrity sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw== + dependencies: + elliptic "^6.5.7" + node-addon-api "^5.0.0" + node-gyp-build "^4.2.0" + +seedrandom@3.0.5, seedrandom@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-3.0.5.tgz#54edc85c95222525b0c7a6f6b3543d8e0b3aa0a7" + integrity sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg== + +semaphore-async-await@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/semaphore-async-await/-/semaphore-async-await-1.5.1.tgz#857bef5e3644601ca4b9570b87e9df5ca12974fa" + integrity sha512-b/ptP11hETwYWpeilHXXQiV5UJNJl7ZWWooKRE5eBIYWoom6dZ0SluCIdCtKycsMtZgKWE01/qAw6jblw1YVhg== + +semver@^5.5.0, semver@^5.7.0: + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== + +semver@^6.3.0: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^7.7.1: + version "7.7.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" + integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== + +send@~0.19.0, send@~0.19.1: + version "0.19.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.19.2.tgz#59bc0da1b4ea7ad42736fd642b1c4294e114ff29" + integrity sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~2.0.0" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "~0.5.2" + http-errors "~2.0.1" + mime "1.6.0" + ms "2.1.3" + on-finished "~2.4.1" + range-parser "~1.2.1" + statuses "~2.0.2" + +serialize-javascript@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" + integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== + dependencies: + randombytes "^2.1.0" + +serve-static@~1.16.2: + version "1.16.3" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.3.tgz#a97b74d955778583f3862a4f0b841eb4d5d78cf9" + integrity sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA== + dependencies: + encodeurl "~2.0.0" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "~0.19.1" + +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== + +set-function-length@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + +set-function-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + functions-have-names "^1.2.3" + has-property-descriptors "^1.0.2" + +set-proto@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/set-proto/-/set-proto-1.0.0.tgz#0760dbcff30b2d7e801fd6e19983e56da337565e" + integrity sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw== + dependencies: + dunder-proto "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + +setimmediate@1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.4.tgz#20e81de622d4a02588ce0c8da8973cbcf1d3138f" + integrity sha512-/TjEmXQVEzdod/FFskf3o7oOAsGhHf2j1dZqRFbDzq4F3mvvxflIIi4Hd3bLQE9y/CpwqfSQam5JakI/mi3Pog== + +setimmediate@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== + +setprototypeof@1.2.0, setprototypeof@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +sha.js@^2.4.0, sha.js@^2.4.12, sha.js@^2.4.8: + version "2.4.12" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.12.tgz#eb8b568bf383dfd1867a32c3f2b74eb52bdbf23f" + integrity sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w== + dependencies: + inherits "^2.0.4" + safe-buffer "^5.2.1" + to-buffer "^1.2.0" + +sha1@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/sha1/-/sha1-1.1.1.tgz#addaa7a93168f393f19eb2b15091618e2700f848" + integrity sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA== + dependencies: + charenc ">= 0.0.1" + crypt ">= 0.0.1" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== + dependencies: + shebang-regex "^1.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +side-channel-list@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" + integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + +side-channel-map@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" + integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + +side-channel-weakmap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" + integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + side-channel-map "^1.0.1" + +side-channel@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" + integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + side-channel-list "^1.0.0" + side-channel-map "^1.0.1" + side-channel-weakmap "^1.0.2" + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +solc@0.8.15: + version "0.8.15" + resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.15.tgz#d274dca4d5a8b7d3c9295d4cbdc9291ee1c52152" + integrity sha512-Riv0GNHNk/SddN/JyEuFKwbcWcEeho15iyupTSHw5Np6WuXA5D8kEHbyzDHi6sqmvLzu2l+8b1YmL8Ytple+8w== + dependencies: + command-exists "^1.2.8" + commander "^8.1.0" + follow-redirects "^1.12.1" + js-sha3 "0.8.0" + memorystream "^0.3.1" + semver "^5.5.0" + tmp "0.0.33" + +solc@0.8.26: + version "0.8.26" + resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.26.tgz#afc78078953f6ab3e727c338a2fefcd80dd5b01a" + integrity sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g== + dependencies: + command-exists "^1.2.8" + commander "^8.1.0" + follow-redirects "^1.12.1" + js-sha3 "0.8.0" + memorystream "^0.3.1" + semver "^5.5.0" + tmp "0.0.33" + +solidity-ast@^0.4.60: + version "0.4.61" + resolved "https://registry.yarnpkg.com/solidity-ast/-/solidity-ast-0.4.61.tgz#b51720ece553a2c7d84551ee5a7a2306080d23d0" + integrity sha512-OYBJYcYyG7gLV0VuXl9CUrvgJXjV/v0XnR4+1YomVe3q+QyENQXJJxAEASUz4vN6lMAl+C8RSRSr5MBAz09f6w== + +source-map-support@0.5.12: + version "0.5.12" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" + integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-support@^0.5.13: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== + +sshpk@^1.7.0: + version "1.18.0" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.18.0.tgz#1663e55cddf4d688b86a46b77f0d5fe363aba028" + integrity sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +stacktrace-parser@^0.1.10: + version "0.1.11" + resolved "https://registry.yarnpkg.com/stacktrace-parser/-/stacktrace-parser-0.1.11.tgz#c7c08f9b29ef566b9a6f7b255d7db572f66fabc4" + integrity sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg== + dependencies: + type-fest "^0.7.1" + +statuses@~2.0.1, statuses@~2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.2.tgz#8f75eecef765b5e1cfcdc080da59409ed424e382" + integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw== + +stealthy-require@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" + integrity sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g== + +stop-iteration-iterator@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz#f481ff70a548f6124d0312c3aa14cbfa7aa542ad" + integrity sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ== + dependencies: + es-errors "^1.3.0" + internal-slot "^1.1.0" + +string-format@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/string-format/-/string-format-2.0.0.tgz#f2df2e7097440d3b65de31b6d40d54c96eaffb9b" + integrity sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA== + +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +"string-width@^1.0.2 || 2", string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0, string-width@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +string.prototype.trim@^1.2.10: + version "1.2.10" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz#40b2dd5ee94c959b4dcfb1d65ce72e90da480c81" + integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-data-property "^1.1.4" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-object-atoms "^1.0.0" + has-property-descriptors "^1.0.2" + +string.prototype.trimend@^1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942" + integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +string.prototype.trimstart@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" + integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow== + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^7.0.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.2.tgz#132875abde678c7ea8d691533f2e7e22bb744dba" + integrity sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA== + dependencies: + ansi-regex "^6.0.1" + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== + +strip-hex-prefix@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" + integrity sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A== + dependencies: + is-hex-prefixed "1.0.0" + +strip-json-comments@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== + +strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +supports-color@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" + integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== + dependencies: + has-flag "^3.0.0" + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-color@^8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + +sync-request@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/sync-request/-/sync-request-6.1.0.tgz#e96217565b5e50bbffe179868ba75532fb597e68" + integrity sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw== + dependencies: + http-response-object "^3.0.1" + sync-rpc "^1.2.1" + then-request "^6.0.0" + +sync-rpc@^1.2.1: + version "1.3.6" + resolved "https://registry.yarnpkg.com/sync-rpc/-/sync-rpc-1.3.6.tgz#b2e8b2550a12ccbc71df8644810529deb68665a7" + integrity sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw== + dependencies: + get-port "^3.1.0" + +table-layout@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-1.0.2.tgz#c4038a1853b0136d63365a734b6931cf4fad4a04" + integrity sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A== + dependencies: + array-back "^4.0.1" + deep-extend "~0.6.0" + typical "^5.2.0" + wordwrapjs "^4.0.0" + +table@^6.8.0: + version "6.9.0" + resolved "https://registry.yarnpkg.com/table/-/table-6.9.0.tgz#50040afa6264141c7566b3b81d4d82c47a8668f5" + integrity sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A== + dependencies: + ajv "^8.0.1" + lodash.truncate "^4.4.2" + slice-ansi "^4.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + +then-request@^6.0.0: + version "6.0.2" + resolved "https://registry.yarnpkg.com/then-request/-/then-request-6.0.2.tgz#ec18dd8b5ca43aaee5cb92f7e4c1630e950d4f0c" + integrity sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA== + dependencies: + "@types/concat-stream" "^1.6.0" + "@types/form-data" "0.0.33" + "@types/node" "^8.0.0" + "@types/qs" "^6.2.31" + caseless "~0.12.0" + concat-stream "^1.6.0" + form-data "^2.2.0" + http-basic "^8.1.1" + http-response-object "^3.0.1" + promise "^8.0.0" + qs "^6.4.0" + +tiny-emitter@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" + integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== + +tinyglobby@^0.2.6: + version "0.2.15" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.15.tgz#e228dd1e638cea993d2fdb4fcd2d4602a79951c2" + integrity sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ== + dependencies: + fdir "^6.5.0" + picomatch "^4.0.3" + +tmp@0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== + dependencies: + os-tmpdir "~1.0.2" + +to-buffer@^1.2.0, to-buffer@^1.2.1, to-buffer@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.2.2.tgz#ffe59ef7522ada0a2d1cb5dfe03bb8abc3cdc133" + integrity sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw== + dependencies: + isarray "^2.0.5" + safe-buffer "^5.2.1" + typed-array-buffer "^1.0.3" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +toidentifier@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + +tough-cookie@^2.3.3, tough-cookie@~2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== + dependencies: + psl "^1.1.28" + punycode "^2.1.1" + +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== + +treeify@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/treeify/-/treeify-1.1.0.tgz#4e31c6a463accd0943879f30667c4fdaff411bb8" + integrity sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A== + +ts-command-line-args@^2.2.0: + version "2.5.1" + resolved "https://registry.yarnpkg.com/ts-command-line-args/-/ts-command-line-args-2.5.1.tgz#e64456b580d1d4f6d948824c274cf6fa5f45f7f0" + integrity sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw== + dependencies: + chalk "^4.1.0" + command-line-args "^5.1.1" + command-line-usage "^6.1.0" + string-format "^2.0.0" + +ts-essentials@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-7.0.3.tgz#686fd155a02133eedcc5362dc8b5056cde3e5a38" + integrity sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ== + +ts-node@^10.9.2: + version "10.9.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.2.tgz#70f021c9e185bccdca820e26dc413805c101c71f" + integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== + dependencies: + "@cspotcode/source-map-support" "^0.8.0" + "@tsconfig/node10" "^1.0.7" + "@tsconfig/node12" "^1.0.7" + "@tsconfig/node14" "^1.0.0" + "@tsconfig/node16" "^1.0.2" + acorn "^8.4.1" + acorn-walk "^8.1.1" + arg "^4.1.0" + create-require "^1.1.0" + diff "^4.0.1" + make-error "^1.1.1" + v8-compile-cache-lib "^3.0.1" + yn "3.1.1" + +tslib@^1.11.1, tslib@^1.9.3: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tslib@^2.3.1, tslib@^2.6.2: + version "2.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== + +tsort@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/tsort/-/tsort-0.0.1.tgz#e2280f5e817f8bf4275657fd0f9aebd44f5a2786" + integrity sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw== + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-detect@^4.0.0, type-detect@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.1.0.tgz#deb2453e8f08dcae7ae98c626b13dddb0155906c" + integrity sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw== + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48" + integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg== + +type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typechain@^8.0.0: + version "8.3.2" + resolved "https://registry.yarnpkg.com/typechain/-/typechain-8.3.2.tgz#1090dd8d9c57b6ef2aed3640a516bdbf01b00d73" + integrity sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q== + dependencies: + "@types/prettier" "^2.1.1" + debug "^4.3.1" + fs-extra "^7.0.0" + glob "7.1.7" + js-sha3 "^0.8.0" + lodash "^4.17.15" + mkdirp "^1.0.4" + prettier "^2.3.1" + ts-command-line-args "^2.2.0" + ts-essentials "^7.0.1" + +typed-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz#a72395450a4869ec033fd549371b47af3a2ee536" + integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-typed-array "^1.1.14" + +typed-array-byte-length@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz#8407a04f7d78684f3d252aa1a143d2b77b4160ce" + integrity sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg== + dependencies: + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.14" + +typed-array-byte-offset@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz#ae3698b8ec91a8ab945016108aef00d5bff12355" + integrity sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.15" + reflect.getprototypeof "^1.0.9" + +typed-array-length@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.7.tgz#ee4deff984b64be1e118b0de8c9c877d5ce73d3d" + integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" + reflect.getprototypeof "^1.0.6" + +typed-function@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/typed-function/-/typed-function-2.1.0.tgz#ded6f8a442ba8749ff3fe75bc41419c8d46ccc3f" + integrity sha512-bctQIOqx2iVbWGDGPWwIm18QScpu2XRmkC19D8rQGFsjKSgteq/o1hTZvIG/wuDq8fanpBDrLkLq+aEN/6y5XQ== + +typed-function@^4.1.1: + version "4.2.2" + resolved "https://registry.yarnpkg.com/typed-function/-/typed-function-4.2.2.tgz#49939f58d133a40cb03bdc05d969f59e4bdc3190" + integrity sha512-VwaXim9Gp1bngi/q3do8hgttYn2uC3MoT/gfuMWylnj1IeZBUAyPddHZlo1K05BDoj8DYPpMdiHqH1dDYdJf2A== + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== + +typescript@^5.6.3: + version "5.9.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.9.3.tgz#5b4f59e15310ab17a216f5d6cf53ee476ede670f" + integrity sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw== + +typical@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/typical/-/typical-4.0.0.tgz#cbeaff3b9d7ae1e2bbfaf5a4e6f11eccfde94fc4" + integrity sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw== + +typical@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/typical/-/typical-5.2.0.tgz#4daaac4f2b5315460804f0acf6cb69c52bb93066" + integrity sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg== + +unbox-primitive@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz#8d9d2c9edeea8460c7f35033a88867944934d1e2" + integrity sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw== + dependencies: + call-bound "^1.0.3" + has-bigints "^1.0.2" + has-symbols "^1.1.0" + which-boxed-primitive "^1.1.1" + +undici-types@~7.16.0: + version "7.16.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.16.0.tgz#ffccdff36aea4884cbfce9a750a0580224f58a46" + integrity sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw== + +undici@^5.14.0: + version "5.29.0" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.29.0.tgz#419595449ae3f2cdcba3580a2e8903399bd1f5a3" + integrity sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg== + dependencies: + "@fastify/busboy" "^2.0.0" + +unfetch@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" + integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== + +uniswap@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/uniswap/-/uniswap-0.0.1.tgz#582ccde4b14ab5c2333d9aed429e921005936837" + integrity sha512-2ppSS+liwbH7kvnCnxoNSsFBIUdVJpwo6Q0IcDHdLfayFg/kOgIKt3Qq6WFi0SGYfU+bNTDIHxckapStnRvPVA== + dependencies: + hardhat "^2.2.1" + +universalify@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + +unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +url@^0.11.0: + version "0.11.4" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.4.tgz#adca77b3562d56b72746e76b330b7f27b6721f3c" + integrity sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg== + dependencies: + punycode "^1.4.1" + qs "^6.12.3" + +utf-8-validate@5.0.7: + version "5.0.7" + resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.7.tgz#c15a19a6af1f7ad9ec7ddc425747ca28c3644922" + integrity sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q== + dependencies: + node-gyp-build "^4.3.0" + +utf8@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1" + integrity sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ== + +util-deprecate@^1.0.1, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== + +uuid@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.1.tgz#c2a30dedb3e535d72ccf82e343941a50ba8533ac" + integrity sha512-nWg9+Oa3qD2CQzHIP4qKUqwNfzKn8P0LtFhotaCTFchsV7ZfDhAybeip/HZVeMIpZi9JgY1E3nUlwaCmZT1sEg== + +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-compile-cache-lib@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== + +vary@^1, vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +web3-utils@^1.3.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.10.4.tgz#0daee7d6841641655d8b3726baf33b08eda1cbec" + integrity sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A== + dependencies: + "@ethereumjs/util" "^8.1.0" + bn.js "^5.2.1" + ethereum-bloom-filters "^1.0.6" + ethereum-cryptography "^2.1.2" + ethjs-unit "0.1.6" + number-to-bn "1.7.0" + randombytes "^2.1.0" + utf8 "3.0.0" + +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== + +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + +which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz#d76ec27df7fa165f18d5808374a5fe23c29b176e" + integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA== + dependencies: + is-bigint "^1.1.0" + is-boolean-object "^1.2.1" + is-number-object "^1.1.1" + is-string "^1.1.1" + is-symbol "^1.1.1" + +which-builtin-type@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.2.1.tgz#89183da1b4907ab089a6b02029cc5d8d6574270e" + integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q== + dependencies: + call-bound "^1.0.2" + function.prototype.name "^1.1.6" + has-tostringtag "^1.0.2" + is-async-function "^2.0.0" + is-date-object "^1.1.0" + is-finalizationregistry "^1.1.0" + is-generator-function "^1.0.10" + is-regex "^1.2.1" + is-weakref "^1.0.2" + isarray "^2.0.5" + which-boxed-primitive "^1.1.0" + which-collection "^1.0.2" + which-typed-array "^1.1.16" + +which-collection@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0" + integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== + dependencies: + is-map "^2.0.3" + is-set "^2.0.3" + is-weakmap "^2.0.2" + is-weakset "^2.0.3" + +which-module@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + +which-typed-array@^1.1.16, which-typed-array@^1.1.19: + version "1.1.20" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.20.tgz#3fdb7adfafe0ea69157b1509f3a1cd892bd1d122" + integrity sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + for-each "^0.3.5" + get-proto "^1.0.1" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + +which@1.3.1, which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wide-align@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== + dependencies: + string-width "^1.0.2 || 2" + +widest-line@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" + integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== + dependencies: + string-width "^4.0.0" + +word-wrap@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" + integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== + +wordwrapjs@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-4.0.1.tgz#d9790bccfb110a0fc7836b5ebce0937b37a8b98f" + integrity sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA== + dependencies: + reduce-flatten "^2.0.0" + typical "^5.2.0" + +workerpool@^6.5.1: + version "6.5.1" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" + integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== + +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + +ws@8.18.0: + version "8.18.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" + integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== + +ws@^7.4.6: + version "7.5.10" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" + integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== + +xmlhttprequest@1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" + integrity sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA== + +xtend@^4.0.1, xtend@^4.0.2, xtend@~4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yargs-parser@13.1.2, yargs-parser@^13.1.0, yargs-parser@^13.1.2: + version "13.1.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" + integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^20.2.2, yargs-parser@^20.2.9: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs-unparser@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" + integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== + dependencies: + flat "^4.1.0" + lodash "^4.17.15" + yargs "^13.3.0" + +yargs-unparser@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" + integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== + dependencies: + camelcase "^6.0.0" + decamelize "^4.0.0" + flat "^5.0.2" + is-plain-obj "^2.1.0" + +yargs@13.2.4: + version "13.2.4" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.4.tgz#0b562b794016eb9651b98bd37acf364aa5d6dc83" + integrity sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + os-locale "^3.1.0" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.0" + +yargs@13.3.2, yargs@^13.3.0: + version "13.3.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.2" + +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yn@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From ae61347e62891ad45e87856c71a88e1387889549 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Mon, 2 Feb 2026 16:40:41 -0500 Subject: [PATCH 233/270] Update ABI with PI-15 release changes: shipment plans, plot combining, referral system, and token hooks --- abi/Beanstalk.json | 651 ++++++++++++++++++---------- abi/MockBeanstalk.json | 958 ++++++++++++++++++++++++++++++++++------- 2 files changed, 1232 insertions(+), 377 deletions(-) diff --git a/abi/Beanstalk.json b/abi/Beanstalk.json index 4efba384..194df89a 100644 --- a/abi/Beanstalk.json +++ b/abi/Beanstalk.json @@ -493,9 +493,9 @@ }, { "indexed": false, - "internalType": "bytes4", - "name": "selector", - "type": "bytes4" + "internalType": "bytes", + "name": "encodedCall", + "type": "bytes" } ], "name": "TokenHookCalled", @@ -1259,57 +1259,6 @@ "stateMutability": "payable", "type": "function" }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "token", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "indexed": false, - "internalType": "bytes4", - "name": "selector", - "type": "bytes4" - } - ], - "name": "TokenHookRegistered", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "token", - "type": "address" - } - ], - "name": "TokenHookRemoved", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "token", - "type": "address" - } - ], - "name": "dewhitelistTokenHook", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, { "inputs": [ { @@ -1336,9 +1285,14 @@ "internalType": "bytes1", "name": "encodeType", "type": "bytes1" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" } ], - "internalType": "struct TokenHook", + "internalType": "struct Implementation", "name": "", "type": "tuple" } @@ -1365,76 +1319,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "token", - "type": "address" - }, - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bytes4", - "name": "selector", - "type": "bytes4" - }, - { - "internalType": "bytes1", - "name": "encodeType", - "type": "bytes1" - } - ], - "internalType": "struct TokenHook", - "name": "hook", - "type": "tuple" - } - ], - "name": "updateTokenHook", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "token", - "type": "address" - }, - { - "components": [ - { - "internalType": "address", - "name": "target", - "type": "address" - }, - { - "internalType": "bytes4", - "name": "selector", - "type": "bytes4" - }, - { - "internalType": "bytes1", - "name": "encodeType", - "type": "bytes1" - } - ], - "internalType": "struct TokenHook", - "name": "hook", - "type": "tuple" - } - ], - "name": "whitelistTokenHook", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, { "anonymous": false, "inputs": [ @@ -2202,94 +2086,6 @@ "stateMutability": "view", "type": "function" }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "plotIndex", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "pods", - "type": "uint256" - } - ], - "name": "ReplaymentPlotAdded", - "type": "event" - }, - { - "inputs": [], - "name": "REPAYMENT_FIELD_ID", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "REPAYMENT_FIELD_POPULATOR", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "podIndex", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "podAmounts", - "type": "uint256" - } - ], - "internalType": "struct TempRepaymentFieldFacet.Plot[]", - "name": "plots", - "type": "tuple[]" - } - ], - "internalType": "struct TempRepaymentFieldFacet.ReplaymentPlotData[]", - "name": "accountPlots", - "type": "tuple[]" - } - ], - "name": "initializeRepaymentPlots", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [ { @@ -2390,6 +2186,37 @@ "name": "Harvest", "type": "event" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "totalPods", + "type": "uint256" + } + ], + "name": "PlotsCombined", + "type": "event" + }, { "anonymous": false, "inputs": [ @@ -2578,6 +2405,29 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" + } + ], + "name": "combinePlots", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, { "inputs": [ { @@ -2622,9 +2472,105 @@ "name": "getBeanSownEligibilityThreshold", "outputs": [ { - "internalType": "uint256", - "name": "", - "type": "uint256" + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "referrer", + "type": "address" + } + ], + "name": "getBeansSownForReferral", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "referrer", + "type": "address" + } + ], + "name": "getDelegate", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "getPiIndexFromAccount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "arrayIndexes", + "type": "uint256[]" + } + ], + "name": "getPlotIndexesAtPositions", + "outputs": [ + { + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" } ], "stateMutability": "view", @@ -2634,16 +2580,31 @@ "inputs": [ { "internalType": "address", - "name": "referrer", + "name": "account", "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endIndex", + "type": "uint256" } ], - "name": "getBeansSownForReferral", + "name": "getPlotIndexesByRange", "outputs": [ { - "internalType": "uint256", - "name": "", - "type": "uint256" + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" } ], "stateMutability": "view", @@ -2653,16 +2614,21 @@ "inputs": [ { "internalType": "address", - "name": "referrer", + "name": "account", "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" } ], - "name": "getDelegate", + "name": "getPlotIndexesFromAccount", "outputs": [ { - "internalType": "address", - "name": "", - "type": "address" + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" } ], "stateMutability": "view", @@ -2681,12 +2647,12 @@ "type": "uint256" } ], - "name": "getPlotIndexesFromAccount", + "name": "getPlotIndexesLengthFromAccount", "outputs": [ { - "internalType": "uint256[]", - "name": "plotIndexes", - "type": "uint256[]" + "internalType": "uint256", + "name": "", + "type": "uint256" } ], "stateMutability": "view", @@ -2780,6 +2746,32 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [], + "name": "getTargetReferralPods", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getTotalReferralPods", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [ { @@ -2860,6 +2852,19 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [], + "name": "isReferralSystemEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [ { @@ -9636,6 +9641,192 @@ "name": "UpdatedGaugeValue", "type": "event" }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "getBudgetPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "getFieldPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "getPaybackBarnPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "getPaybackFieldPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "getPaybackSiloPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "getSiloPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "pure", + "type": "function" + }, { "inputs": [], "name": "abovePeg", diff --git a/abi/MockBeanstalk.json b/abi/MockBeanstalk.json index 129685d8..0fe304f3 100644 --- a/abi/MockBeanstalk.json +++ b/abi/MockBeanstalk.json @@ -476,6 +476,31 @@ "name": "PublishRequisition", "type": "event" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "encodedCall", + "type": "bytes" + } + ], + "name": "TokenHookCalled", + "type": "event" + }, { "anonymous": false, "inputs": [ @@ -1234,6 +1259,66 @@ "stateMutability": "payable", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "getTokenHook", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "bytes1", + "name": "encodeType", + "type": "bytes1" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "internalType": "struct Implementation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "hasTokenHook", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, { "anonymous": false, "inputs": [ @@ -2101,6 +2186,37 @@ "name": "Harvest", "type": "event" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "totalPods", + "type": "uint256" + } + ], + "name": "PlotsCombined", + "type": "event" + }, { "anonymous": false, "inputs": [ @@ -2289,6 +2405,29 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" + } + ], + "name": "combinePlots", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, { "inputs": [ { @@ -2379,6 +2518,98 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "getPiIndexFromAccount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "arrayIndexes", + "type": "uint256[]" + } + ], + "name": "getPlotIndexesAtPositions", + "outputs": [ + { + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "startIndex", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "endIndex", + "type": "uint256" + } + ], + "name": "getPlotIndexesByRange", + "outputs": [ + { + "internalType": "uint256[]", + "name": "plotIndexes", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [ { @@ -2403,6 +2634,30 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + } + ], + "name": "getPlotIndexesLengthFromAccount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [ { @@ -2492,21 +2747,47 @@ "type": "function" }, { - "inputs": [ + "inputs": [], + "name": "getTargetReferralPods", + "outputs": [ { "internalType": "uint256", - "name": "fieldId", + "name": "", "type": "uint256" - }, - { - "internalType": "uint256[]", - "name": "plots", - "type": "uint256[]" - }, - { - "internalType": "enum LibTransfer.To", - "name": "mode", - "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getTotalReferralPods", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "plots", + "type": "uint256[]" + }, + { + "internalType": "enum LibTransfer.To", + "name": "mode", + "type": "uint8" } ], "name": "harvest", @@ -2571,6 +2852,19 @@ "stateMutability": "view", "type": "function" }, + { + "inputs": [], + "name": "isReferralSystemEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, { "inputs": [ { @@ -9347,6 +9641,192 @@ "name": "UpdatedGaugeValue", "type": "event" }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "getBudgetPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "getFieldPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "getPaybackBarnPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "getPaybackFieldPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "getPaybackSiloPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "getSiloPlan", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "cap", + "type": "uint256" + } + ], + "internalType": "struct ShipmentPlan", + "name": "shipmentPlan", + "type": "tuple" + } + ], + "stateMutability": "pure", + "type": "function" + }, { "inputs": [], "name": "abovePeg", @@ -12185,6 +12665,29 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "newPlotIndexes", + "type": "uint256[]" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "reorderPlotIndexes", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -12276,39 +12779,93 @@ { "inputs": [ { - "internalType": "uint256", + "internalType": "uint128", "name": "amount", - "type": "uint256" + "type": "uint128" } ], - "name": "setUnharvestable", + "name": "setTargetReferralPods", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { - "inputs": [], - "name": "totalRealSoil", - "outputs": [ + "inputs": [ { - "internalType": "uint256", - "name": "", - "type": "uint256" + "internalType": "uint128", + "name": "amount", + "type": "uint128" } ], - "stateMutability": "view", + "name": "setTotalReferralPods", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", - "name": "morningTemperature", + "name": "amount", "type": "uint256" } ], - "name": "totalSoilAtMorningTemp", - "outputs": [ + "name": "setUnharvestable", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "fieldId", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "setUserPodsAtField", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalRealSoil", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "morningTemperature", + "type": "uint256" + } + ], + "name": "totalSoilAtMorningTemp", + "outputs": [ { "internalType": "uint256", "name": "totalSoil", @@ -12781,6 +13338,88 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "inputs": [ + { + "internalType": "int256", + "name": "deltaB", + "type": "int256" + } + ], + "name": "mockCalcCaseIdAndHandleRain", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "internalType": "struct Decimal.D256", + "name": "deltaPodDemand", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "internalType": "struct Decimal.D256", + "name": "lpToSupplyRatio", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "internalType": "struct Decimal.D256", + "name": "podRate", + "type": "tuple" + }, + { + "internalType": "address", + "name": "largestLiqWell", + "type": "address" + }, + { + "internalType": "bool", + "name": "oracleFailure", + "type": "bool" + }, + { + "internalType": "uint256", + "name": "largestLiquidWellTwapBeanPrice", + "type": "uint256" + }, + { + "internalType": "int256", + "name": "twaDeltaB", + "type": "int256" + }, + { + "internalType": "uint256", + "name": "caseId", + "type": "uint256" + } + ], + "internalType": "struct LibEvaluate.BeanstalkState", + "name": "bs", + "type": "tuple" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, { "inputs": [ { @@ -12992,128 +13631,6 @@ "stateMutability": "nonpayable", "type": "function" }, - { - "inputs": [], - "name": "mockUpdateAverageStalkPerBdvPerSeason", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "int256", - "name": "deltaB", - "type": "int256" - } - ], - "name": "mockcalcCaseIdAndHandleRain", - "outputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "internalType": "struct Decimal.D256", - "name": "deltaPodDemand", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "internalType": "struct Decimal.D256", - "name": "lpToSupplyRatio", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "internalType": "struct Decimal.D256", - "name": "podRate", - "type": "tuple" - }, - { - "internalType": "address", - "name": "largestLiqWell", - "type": "address" - }, - { - "internalType": "bool", - "name": "oracleFailure", - "type": "bool" - }, - { - "internalType": "uint256", - "name": "largestLiquidWellTwapBeanPrice", - "type": "uint256" - }, - { - "internalType": "int256", - "name": "twaDeltaB", - "type": "int256" - }, - { - "internalType": "uint256", - "name": "caseId", - "type": "uint256" - } - ], - "internalType": "struct LibEvaluate.BeanstalkState", - "name": "bs", - "type": "tuple" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "token", - "type": "address" - }, - { - "internalType": "bytes4", - "name": "gaugePointSelector", - "type": "bytes4" - }, - { - "internalType": "bytes4", - "name": "liquidityWeightSelector", - "type": "bytes4" - }, - { - "internalType": "uint96", - "name": "", - "type": "uint96" - }, - { - "internalType": "uint64", - "name": "optimalPercentDepositedBdv", - "type": "uint64" - } - ], - "name": "mockinitializeGaugeForToken", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [ { @@ -14060,6 +14577,153 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "components": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "bytes1", + "name": "encodeType", + "type": "bytes1" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "indexed": false, + "internalType": "struct Implementation", + "name": "hook", + "type": "tuple" + } + ], + "name": "AddedTokenHook", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "RemovedTokenHook", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "components": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "bytes1", + "name": "encodeType", + "type": "bytes1" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "internalType": "struct Implementation", + "name": "hook", + "type": "tuple" + } + ], + "name": "addTokenHook", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "removeTokenHook", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "components": [ + { + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "internalType": "bytes4", + "name": "selector", + "type": "bytes4" + }, + { + "internalType": "bytes1", + "name": "encodeType", + "type": "bytes1" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "internalType": "struct Implementation", + "name": "hook", + "type": "tuple" + } + ], + "name": "updateTokenHook", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, { "inputs": [], "name": "woohoo", From 9313bb16e24e25d887e4a25dc477fa5efa6cf141 Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Tue, 3 Feb 2026 18:43:16 +0300 Subject: [PATCH 234/270] Add contract claimability analysis script --- .../analyzeShipmentContracts.js | 659 + .../data/eip7702Addresses.json | 72 + .../data/shipmentContractAnalysis.json | 12808 ++++++++++++++++ .../data/unclaimableContractAddresses.json | 52 + 4 files changed, 13591 insertions(+) create mode 100644 scripts/beanstalkShipments/analyzeShipmentContracts.js create mode 100644 scripts/beanstalkShipments/data/eip7702Addresses.json create mode 100644 scripts/beanstalkShipments/data/shipmentContractAnalysis.json create mode 100644 scripts/beanstalkShipments/data/unclaimableContractAddresses.json diff --git a/scripts/beanstalkShipments/analyzeShipmentContracts.js b/scripts/beanstalkShipments/analyzeShipmentContracts.js new file mode 100644 index 00000000..c134d13d --- /dev/null +++ b/scripts/beanstalkShipments/analyzeShipmentContracts.js @@ -0,0 +1,659 @@ +/** + * Analyze Shipment Contracts for Beanstalk Shipments + * + * Analyzes all addresses with Beanstalk assets to determine claimability on Base. + * Detects contract types, Safe wallet versions, upgrades, and cross-chain deployability. + * + * Usage: + * node scripts/beanstalkShipments/analyzeShipmentContracts.js + * + * Required env vars (set in .env): + * - MAINNET_RPC + * - ARBITRUM_RPC + * - BASE_RPC + */ + +require('dotenv').config(); +const fs = require('fs'); +const path = require('path'); +const ethers = require('ethers'); + +const isEthersV6 = ethers.JsonRpcProvider !== undefined; +const createProvider = (url) => { + if (isEthersV6) { + return new ethers.JsonRpcProvider(url); + } else { + return new ethers.providers.JsonRpcProvider(url); + } +}; + +const RPC_URLS = { + ethereum: process.env.MAINNET_RPC, + arbitrum: process.env.ARBITRUM_RPC, + base: process.env.BASE_RPC +}; + +// Concurrency for parallel requests +const BATCH_SIZE = 30; +const MAX_RETRIES = 3; +const RETRY_DELAY = 1000; + +// Known Safe singleton addresses (normalized to lowercase) +const SAFE_SINGLETONS = { + '0xb6029ea3b2c51d09a50b53ca8012feeb05bda35a': '1.0.0', + '0x34cfac646f301356faa8b21e94227e3583fe3f5f': '1.1.0', + '0xae32496491b53841efb51829d6f886387708f99b': '1.1.1', + '0x6851d6fdfafd08c0295c392436245e5bc78b0185': '1.2.0', + '0xd9db270c1b5e3bd161e8c8503c55ceabee709552': '1.3.0', + '0x3e5c63644e683549055b9be8653de26e0b4cd36e': '1.3.0-L2', + '0x69f4d1788e39c87893c980c06edf4b7f686e2938': '1.3.0', + '0x41675c099f32341bf84bfc5382af534df5c7461a': '1.4.1', + '0x29fcb43b46531bca003ddc8fcb67ffe91900c762': '1.4.1-L2', +}; + +// Ambire known addresses +const AMBIRE_IDENTITIES = [ + '0x2a2b85eb1054d6f0c6c2e37da05ed3e5fea684ef', + '0xf1822eb71b8f09ca07f10c4bebb064c36faf39bb', +]; + +// Safe ABI +const SAFE_ABI = [ + 'function VERSION() view returns (string)', + 'function getThreshold() view returns (uint256)', +]; + +async function withRetry(fn, retries = MAX_RETRIES) { + for (let i = 0; i < retries; i++) { + try { + return await fn(); + } catch (e) { + if (i === retries - 1) throw e; + await new Promise(r => setTimeout(r, RETRY_DELAY * (i + 1))); + } + } +} + +function parseVersion(version) { + if (!version) return 0; + const clean = version.replace('-L2', '').replace(/[^0-9.]/g, ''); + const parts = clean.split('.').map(Number); + return parts[0] * 10000 + (parts[1] || 0) * 100 + (parts[2] || 0); +} + +function isVersionClaimable(version) { + return parseVersion(version) >= parseVersion('1.3.0'); +} + +// Binary search for the first block where the contract has code. +async function findDeploymentBlock(provider, address) { + const currentBlock = await provider.getBlockNumber(); + let low = 0; + let high = currentBlock; + + while (low < high) { + const mid = Math.floor((low + high) / 2); + const code = await provider.getCode(address, mid); + if (code && code !== '0x') { + high = mid; + } else { + low = mid + 1; + } + } + + const code = await provider.getCode(address, low); + if (!code || code === '0x') return null; + + return low; +} + +// Compare singleton at deployment vs current to detect upgrades. +// Safe proxies store the singleton in slot 0; changeMasterCopy() only updates slot 0. +async function detectSafeUpgrade(provider, address) { + try { + const currentSlot0 = await provider.getStorageAt(address, 0); + const currentSingleton = '0x' + currentSlot0.slice(26).toLowerCase(); + + const deployBlock = await findDeploymentBlock(provider, address); + if (!deployBlock) return null; + + const originalSlot0 = await provider.getStorageAt(address, 0, deployBlock); + const originalSingleton = '0x' + originalSlot0.slice(26).toLowerCase(); + + const originalVersion = SAFE_SINGLETONS[originalSingleton] || null; + const currentVersion = SAFE_SINGLETONS[currentSingleton] || null; + const isUpgraded = currentSingleton !== originalSingleton; + + return { + deployBlock, + originalSingleton, + originalVersion, + currentSingleton, + currentVersion, + isUpgraded, + }; + } catch (e) { + return null; + } +} + +async function batchCheckSafeUpgrades(safeAddresses, providers) { + const results = new Map(); + + for (let i = 0; i < safeAddresses.length; i++) { + const { address, chainName } = safeAddresses[i]; + const provider = providers[chainName]; + + process.stdout.write(`\r Checking ${i + 1}/${safeAddresses.length}: ${address.slice(0, 10)}...`); + + try { + const upgrade = await detectSafeUpgrade(provider, address); + if (upgrade) { + results.set(address, { + ...upgrade, + isUpgraded: upgrade.isUpgraded && upgrade.originalVersion && !isVersionClaimable(upgrade.originalVersion) + }); + } + } catch (e) {} + } + + process.stdout.write('\r' + ' '.repeat(80) + '\r'); + return results; +} + +async function getCode(provider, address) { + try { + return await withRetry(async () => { + const code = await provider.getCode(address); + return code && code !== '0x' ? code : null; + }); + } catch (e) { + return { error: e.message }; + } +} + +function detectEIP7702(code) { + if (code && code.toLowerCase().startsWith('0xef0100')) { + return { + type: 'EIP-7702', + delegateAddress: '0x' + code.slice(8, 48) + }; + } + return null; +} + +function detectEIP1167Proxy(code) { + if (!code) return null; + const hex = code.slice(2).toLowerCase(); + if (hex.startsWith('363d3d373d3d3d363d73')) { + const impl = '0x' + hex.slice(20, 60); + return { implementation: impl.toLowerCase() }; + } + return null; +} + +function detectAmbire(code) { + const proxy = detectEIP1167Proxy(code); + if (proxy && AMBIRE_IDENTITIES.includes(proxy.implementation)) { + return { implementation: proxy.implementation }; + } + return null; +} + +async function detectSafeVersion(provider, address, code) { + try { + const proxy = detectEIP1167Proxy(code); + if (proxy && SAFE_SINGLETONS[proxy.implementation]) { + return { version: SAFE_SINGLETONS[proxy.implementation], method: 'EIP-1167' }; + } + + try { + const contract = new ethers.Contract(address, SAFE_ABI, provider); + const version = await withRetry(async () => { + const v = await contract.VERSION(); + await contract.getThreshold(); + return v; + }, 2); + return { version, method: 'VERSION()' }; + } catch (e) {} + + return null; + } catch (e) { + return null; + } +} + +async function analyzeAddressOnChain(provider, address, code) { + const result = { + isContract: false, + type: null, + details: null, + error: null + }; + + if (code && code.error) { + result.error = code.error; + return result; + } + + if (!code) { + return result; + } + + result.isContract = true; + result.codeSize = (code.length - 2) / 2; + + const eip7702 = detectEIP7702(code); + if (eip7702) { + result.type = 'EIP-7702'; + result.details = eip7702; + return result; + } + + const ambire = detectAmbire(code); + if (ambire) { + result.type = 'Ambire'; + result.details = ambire; + return result; + } + + const safe = await detectSafeVersion(provider, address, code); + if (safe) { + result.type = 'Safe'; + result.details = safe; + return result; + } + + const proxy = detectEIP1167Proxy(code); + if (proxy) { + result.type = 'EIP-1167 Proxy'; + result.details = proxy; + return result; + } + + result.type = 'Unknown'; + result.details = { codePrefix: code.slice(0, 22) }; + return result; +} + +async function analyzeAddressBatch(providers, addresses, addressInfoMap, errorAddresses) { + const results = []; + + const codePromises = addresses.map(async (address) => { + const codeResults = await Promise.allSettled([ + getCode(providers.ethereum, address), + getCode(providers.arbitrum, address), + getCode(providers.base, address) + ]); + + return { + address, + ethCode: codeResults[0].status === 'fulfilled' ? codeResults[0].value : { error: codeResults[0].reason?.message }, + arbCode: codeResults[1].status === 'fulfilled' ? codeResults[1].value : { error: codeResults[1].reason?.message }, + baseCode: codeResults[2].status === 'fulfilled' ? codeResults[2].value : { error: codeResults[2].reason?.message } + }; + }); + + const codesSettled = await Promise.allSettled(codePromises); + + for (const codeResult of codesSettled) { + if (codeResult.status === 'rejected') { + const address = 'unknown'; + errorAddresses.push({ address, error: codeResult.reason?.message || 'Unknown error' }); + continue; + } + + const { address, ethCode, arbCode, baseCode } = codeResult.value; + + try { + const analysisResults = await Promise.allSettled([ + analyzeAddressOnChain(providers.ethereum, address, ethCode), + analyzeAddressOnChain(providers.arbitrum, address, arbCode), + analyzeAddressOnChain(providers.base, address, baseCode) + ]); + + const ethereum = analysisResults[0].status === 'fulfilled' + ? analysisResults[0].value + : { isContract: false, type: null, details: null, error: analysisResults[0].reason?.message }; + const arbitrum = analysisResults[1].status === 'fulfilled' + ? analysisResults[1].value + : { isContract: false, type: null, details: null, error: analysisResults[1].reason?.message }; + const base = analysisResults[2].status === 'fulfilled' + ? analysisResults[2].value + : { isContract: false, type: null, details: null, error: analysisResults[2].reason?.message }; + + const hasErrors = ethereum.error || arbitrum.error || base.error; + if (hasErrors) { + errorAddresses.push({ + address, + errors: { + ethereum: ethereum.error || null, + arbitrum: arbitrum.error || null, + base: base.error || null + } + }); + } + + results.push({ + address, + info: addressInfoMap.get(address), + chains: { ethereum, arbitrum, base }, + hasErrors + }); + } catch (e) { + errorAddresses.push({ address, error: e.message }); + } + } + + return results; +} + +function loadAllAddresses() { + const dataDir = path.join(__dirname, 'data/exports'); + + const siloData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_silo.json'))); + const fieldData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_field.json'))); + const barnData = JSON.parse(fs.readFileSync(path.join(dataDir, 'beanstalk_barn.json'))); + + const allAddresses = new Map(); + + const addAddress = (addr, source, category, assets) => { + const normalized = addr.toLowerCase(); + if (!allAddresses.has(normalized)) { + allAddresses.set(normalized, { + sources: [], + categories: new Set(), + assets: { silo: null, field: null, barn: null } + }); + } + const entry = allAddresses.get(normalized); + if (!entry.sources.includes(source)) entry.sources.push(source); + entry.categories.add(category); + if (source === 'silo') entry.assets.silo = assets; + if (source === 'field') entry.assets.field = assets; + if (source === 'barn') entry.assets.barn = assets; + }; + + for (const [addr, data] of Object.entries(siloData.arbEOAs || {})) addAddress(addr, 'silo', 'arbEOA', data); + for (const [addr, data] of Object.entries(siloData.arbContracts || {})) addAddress(addr, 'silo', 'arbContract', data); + for (const [addr, data] of Object.entries(siloData.ethContracts || {})) addAddress(addr, 'silo', 'ethContract', data); + + for (const [addr, data] of Object.entries(fieldData.arbEOAs || {})) addAddress(addr, 'field', 'arbEOA', data); + for (const [addr, data] of Object.entries(fieldData.arbContracts || {})) addAddress(addr, 'field', 'arbContract', data); + for (const [addr, data] of Object.entries(fieldData.ethContracts || {})) addAddress(addr, 'field', 'ethContract', data); + + for (const [addr, data] of Object.entries(barnData.arbEOAs || {})) addAddress(addr, 'barn', 'arbEOA', data); + for (const [addr, data] of Object.entries(barnData.arbContracts || {})) addAddress(addr, 'barn', 'arbContract', data); + for (const [addr, data] of Object.entries(barnData.ethContracts || {})) addAddress(addr, 'barn', 'ethContract', data); + + return allAddresses; +} + +function determineClaimability(analysis, upgradeInfo) { + const { ethereum, arbitrum, base } = analysis.chains; + + const isContractOnEthOrArb = ethereum.isContract || arbitrum.isContract; + const isContractOnBase = base.isContract; + + if (!isContractOnEthOrArb) { + return { canClaim: true, reason: 'EOA', category: 'eoa' }; + } + + if (isContractOnBase) { + return { canClaim: true, reason: 'Already on Base', category: 'onBase' }; + } + + if (ethereum.type === 'EIP-7702' || arbitrum.type === 'EIP-7702') { + return { canClaim: true, reason: 'EIP-7702 (private key)', category: 'eip7702' }; + } + + if (ethereum.type === 'Ambire' || arbitrum.type === 'Ambire') { + return { canClaim: true, reason: 'Ambire (CREATE2 deploy)', category: 'ambire' }; + } + + const safeDetails = ethereum.details || arbitrum.details; + if (ethereum.type === 'Safe' || arbitrum.type === 'Safe') { + if (safeDetails) { + const version = safeDetails.version; + + if (isVersionClaimable(version) && upgradeInfo) { + const upgrade = upgradeInfo.get(analysis.address); + if (upgrade && upgrade.isUpgraded) { + return { + canClaim: false, + reason: `Safe ${version} (upgraded from ${upgrade.originalVersion})`, + category: 'upgradedSafe' + }; + } + } + + if (isVersionClaimable(version)) { + return { + canClaim: true, + reason: `Safe ${version} (cross-chain deploy)`, + category: 'claimableSafe' + }; + } + return { + canClaim: false, + reason: `Safe ${version} (too old for cross-chain)`, + category: 'oldSafe' + }; + } + } + + const contractType = ethereum.type || arbitrum.type || 'Unknown'; + return { + canClaim: false, + reason: `${contractType} contract`, + category: 'unknownContract' + }; +} + +async function main() { + console.log('Analyzing Shipment Contracts for Beanstalk'); + console.log('='.repeat(60) + '\n'); + + const missingRpcs = Object.entries(RPC_URLS).filter(([, url]) => !url).map(([name]) => name); + if (missingRpcs.length > 0) { + console.error(`Missing RPC URLs in .env: ${missingRpcs.map(n => n === 'ethereum' ? 'MAINNET_RPC' : n === 'arbitrum' ? 'ARBITRUM_RPC' : 'BASE_RPC').join(', ')}`); + process.exit(1); + } + + console.log('Connecting to networks...'); + const providers = { + ethereum: createProvider(RPC_URLS.ethereum), + arbitrum: createProvider(RPC_URLS.arbitrum), + base: createProvider(RPC_URLS.base) + }; + + for (const [name, provider] of Object.entries(providers)) { + try { + const block = await provider.getBlockNumber(); + console.log(` ${name}: block ${block}`); + } catch (e) { + console.error(` ${name}: FAILED - ${e.message}`); + process.exit(1); + } + } + + console.log('\nLoading addresses from export files...'); + const allAddresses = loadAllAddresses(); + const addressList = Array.from(allAddresses.keys()); + console.log(` Found ${addressList.length} unique addresses\n`); + + console.log(`Analyzing addresses (batch size: ${BATCH_SIZE})...\n`); + + const allResults = []; + const errorAddresses = []; + const startTime = Date.now(); + + for (let i = 0; i < addressList.length; i += BATCH_SIZE) { + const batch = addressList.slice(i, i + BATCH_SIZE); + const batchNum = Math.floor(i / BATCH_SIZE) + 1; + const totalBatches = Math.ceil(addressList.length / BATCH_SIZE); + + process.stdout.write(`\r Batch ${batchNum}/${totalBatches} (${Math.round((i + batch.length) / addressList.length * 100)}%)...`); + + try { + const results = await analyzeAddressBatch(providers, batch, allAddresses, errorAddresses); + allResults.push(...results); + } catch (e) { + console.error(`\n Batch ${batchNum} failed: ${e.message}`); + for (const addr of batch) { + errorAddresses.push({ address: addr, error: `Batch failed: ${e.message}` }); + } + } + + if (i + BATCH_SIZE < addressList.length) { + await new Promise(r => setTimeout(r, 1000)); + } + } + + const elapsed = ((Date.now() - startTime) / 1000).toFixed(1); + console.log(`\n Completed in ${elapsed}s`); + if (errorAddresses.length > 0) { + console.log(` ${errorAddresses.length} addresses had errors\n`); + } else { + console.log(''); + } + + // Check Safe wallets showing >= 1.3.0 for upgrades from older versions + const safesToCheck = []; + for (const result of allResults) { + const { ethereum, arbitrum, base } = result.chains; + if (base.isContract) continue; + + for (const chainName of ['ethereum', 'arbitrum']) { + const chain = result.chains[chainName]; + if (chain.type === 'Safe' && chain.details && isVersionClaimable(chain.details.version)) { + safesToCheck.push({ address: result.address, chainName }); + break; + } + } + } + + let upgradeInfo = new Map(); + if (safesToCheck.length > 0) { + console.log(`Checking ${safesToCheck.length} Safe wallet(s) for upgrades...`); + upgradeInfo = await batchCheckSafeUpgrades(safesToCheck, providers); + const upgradedCount = Array.from(upgradeInfo.values()).filter(v => v.isUpgraded).length; + if (upgradedCount > 0) { + console.log(` Found ${upgradedCount} upgraded Safe wallet(s) (originally < 1.3.0)`); + } else { + console.log(' No upgraded Safe wallets detected'); + } + console.log(''); + } + + const stats = { + total: allResults.length, + claimable: { eoa: 0, onBase: 0, eip7702: 0, ambire: 0, claimableSafe: 0 }, + unclaimable: { oldSafe: 0, upgradedSafe: 0, unknownContract: 0 } + }; + + const unclaimableContracts = []; + const claimableContracts = []; + const eip7702Addresses = []; + + for (const result of allResults) { + const claimability = determineClaimability(result, upgradeInfo); + result.claimability = claimability; + + const info = result.info; + const contractData = { + address: result.address, + sources: info.sources, + categories: Array.from(info.categories), + claimability, + chains: result.chains, + assets: { + hasSilo: info.assets.silo !== null, + hasField: info.assets.field !== null, + hasBarn: info.assets.barn !== null, + siloBdv: info.assets.silo?.bdvAtRecapitalization?.total || '0' + } + }; + + const upgrade = upgradeInfo.get(result.address); + if (upgrade) { + contractData.upgradeInfo = upgrade; + } + + if (claimability.canClaim) { + if (claimability.category === 'eoa') { + stats.claimable.eoa++; + } else { + stats.claimable[claimability.category]++; + claimableContracts.push(contractData); + + if (claimability.category === 'eip7702') { + eip7702Addresses.push(contractData); + } + } + } else { + stats.unclaimable[claimability.category]++; + unclaimableContracts.push(contractData); + } + } + + unclaimableContracts.sort((a, b) => { + if (a.claimability.category !== b.claimability.category) { + return a.claimability.category.localeCompare(b.claimability.category); + } + return a.address.localeCompare(b.address); + }); + + const outputPath = path.join(__dirname, 'data/shipmentContractAnalysis.json'); + const output = { + generatedAt: new Date().toISOString(), + description: 'Analysis of contracts for Beanstalk Shipments claimability on Base', + stats, + errorCount: errorAddresses.length, + unclaimableContracts, + claimableContracts, + eip7702Addresses, + errorAddresses: errorAddresses.length > 0 ? errorAddresses : undefined + }; + + fs.writeFileSync(outputPath, JSON.stringify(output, null, 2)); + + const eip7702Path = path.join(__dirname, 'data/eip7702Addresses.json'); + const eip7702List = eip7702Addresses.map(e => e.address).sort(); + fs.writeFileSync(eip7702Path, JSON.stringify(eip7702List, null, 2) + '\n'); + + const unclaimablePath = path.join(__dirname, 'data/unclaimableContractAddresses.json'); + const unclaimableList = unclaimableContracts.map(e => e.address).sort(); + fs.writeFileSync(unclaimablePath, JSON.stringify(unclaimableList, null, 2) + '\n'); + + console.log('='.repeat(60)); + console.log('ANALYSIS COMPLETE\n'); + + console.log('Claimable:'); + console.log(` EOAs: ${stats.claimable.eoa}`); + console.log(` Already on Base: ${stats.claimable.onBase}`); + console.log(` EIP-7702 (private key): ${stats.claimable.eip7702}`); + console.log(` Ambire (CREATE2): ${stats.claimable.ambire}`); + console.log(` Safe >= 1.3.0 (cross-chain): ${stats.claimable.claimableSafe}`); + + console.log('\nUnclaimable (need special handling):'); + console.log(` Old Safe (< 1.3.0): ${stats.unclaimable.oldSafe}`); + console.log(` Upgraded Safe (originally < 1.3.0): ${stats.unclaimable.upgradedSafe}`); + console.log(` Unknown contracts: ${stats.unclaimable.unknownContract}`); + + const totalUnclaimable = Object.values(stats.unclaimable).reduce((a, b) => a + b, 0); + console.log(`\nTotal unclaimable: ${totalUnclaimable}`); + + if (errorAddresses.length > 0) { + console.log(`\nErrors: ${errorAddresses.length} addresses failed to analyze`); + } + + console.log(`\nResults written to: ${outputPath}`); +} + +main() + .then(() => process.exit(0)) + .catch((error) => { + console.error('Error:', error); + process.exit(1); + }); diff --git a/scripts/beanstalkShipments/data/eip7702Addresses.json b/scripts/beanstalkShipments/data/eip7702Addresses.json new file mode 100644 index 00000000..de406dae --- /dev/null +++ b/scripts/beanstalkShipments/data/eip7702Addresses.json @@ -0,0 +1,72 @@ +[ + "0x078ad2aa3b4527e4996d087906b2a3da51bba122", + "0x1202fba35cc425c07202baa4b17fa9a37d2dbebb", + "0x130ffd7485a0459fb34b9adbecf1a6dda4a497d5", + "0x16cfa7ca52268cfc6d701b0d47f86bfc152694f3", + "0x18ed928719a8951729fbd4dbf617b7968d940c7b", + "0x1b91e045e59c18aefb02a29b38bccd46323632ef", + "0x1d0a4fee04892d90e2b8a4c1836598b081bb949f", + "0x21194d506ab47c531a7874b563dfa3787b3938a5", + "0x226cb5b4f8aae44fbc4374a2be35b3070403e9da", + "0x22aa1f4173b826451763ebfce22cf54a0603163c", + "0x23444f470c8760bef7424c457c30dc2d4378974b", + "0x25f69051858d6a8f9a6e54dafb073e8ef3a94c1e", + "0x2745a1f9774ff3b59cbdfc139c6f19f003392e2c", + "0x2800b279e11e268d9d74af01c551a9c52eab1be3", + "0x2908a0379cbafe2e8e523f735717447579fc3c37", + "0x2f0424705ab89e72c6b9faebff6d4265f9d25fa2", + "0x326481a3b0c792cc7df1df0c8e76490b5ccd7031", + "0x334f12f269213371fb59b328bb6e182c875e04b2", + "0x5136a9a5d077ae4247c7706b577f77153c32a01c", + "0x51cf86829ed08be4ab9ebe48630f4d2ed9f54f56", + "0x51e7b8564f50ec4ad91877e39274bda7e6eb880a", + "0x562f223a5847daae5faa56a0883ed4d5e8ee0ee0", + "0x59dc1eae22eebd6cfbd144ee4b6f4048f8a59880", + "0x609a7742acb183f5a365c2d40d80e0f30007a597", + "0x6301add4fb128de9778b8651a2a9278b86761423", + "0x6363f3da9d28c1310c2eabdd8e57593269f03ff8", + "0x68781516d80ec9339ecdf5996dfbcafb8afe8e22", + "0x68ca44ed5d5df216d10b14c13d18395a9151224a", + "0x6a9d63cbb02b6a7d5d09ce11d0a4b981bb1a221d", + "0x6e93e171c5223493ad5434ac406140e89bd606de", + "0x6f9cee855cb1f362f31256c65e1709222e0f2037", + "0x70c8ee0223d10c150b0db98a0423ec18ec5aca89", + "0x78fd06a971d8bd1ccf3ba2e16cd2d5ea451933e2", + "0x7ac34681f6aaeb691e150c43ee494177c0e2c183", + "0x7cd222530d4d10e175c939f55c5dc394d51aadaa", + "0x86a41524cb61edd8b115a72ad9735f8068996688", + "0x87b6c8734180d89a7c5497ab91854165d71fad60", + "0x89aa0d7ebdcc58d230af421676a8f62ca168d57a", + "0x8d06ffb1500343975571cc0240152c413d803778", + "0x8f21151d98052ec4250f41632798716695fb6f52", + "0x9ec255f1af4d3e4a813aadab8ff0497398037d56", + "0xa5f158e596d0e4051e70631d5d72a8ee9d5a3b8a", + "0xa8dc7990450cf6a9d40371ef71b6fa132eeabb0e", + "0xaa44cac4777dcb5019160a96fbf05a39b41edd15", + "0xad503b72fc36a699bf849bb2ed4c3db1967a73da", + "0xad63e4d4be2229b080d20311c1402a2e45cf7e75", + "0xaeb9a1fddc21b1624f5ed6acc22d659fc0e381ca", + "0xb03f5438f9a243de5c3b830b7841ec315034cd5f", + "0xb3f7df25cb052052df6d73d83edbf6a2238c67de", + "0xb490ac9d599c2d4fc24cc902ea4cd5af95eff6e9", + "0xb788d42d5f9b50eacbf04253135e9dd73a790bb4", + "0xb9919d9b5609328f1ab7b2a9202d4d4bbe3be202", + "0xba9d7bdc69d77b15427346d30796e0353fa245dc", + "0xc1d1f253e40d2796fb652f9494f2cee8255a0a4f", + "0xcaf0cdbf6fd201ce4f673f5c232d21dd8225f437", + "0xcb1667b6f0cd39c9a38edadcfa743de95cb65368", + "0xcd1d766aa27655cba70d10723bcc9f03a3fe489a", + "0xcd5561b1be55c1fa4bba4749919a03219497b6ef", + "0xd1818a80dac94fa1db124b9b1a1bb71dc20f228d", + "0xd5ae1639e5ef6ecf241389894a289a7c0c398241", + "0xe8ab75921d5f00cc982be1e8a5cf435e137319e9", + "0xec62e790d671439812a9958973acadb017d5ff4d", + "0xed0f30677c760ea8f0bff70c76eafc79d5f7c3c8", + "0xf55f7118fa68ae5a52e0b2d519bffcbdb7387afa", + "0xf75e363f695eb259d00bfa90e2c2a35d3bfd585f", + "0xf7d4699bb387bc4152855fcd22a1031511c6e9b6", + "0xf7d48932f456e98d2ff824e38830e8f59de13f4a", + "0xfcf6a3d7eb8c62a5256a020e48f153c6d5dd6909", + "0xfefe31009b95c04e062aa89c975fb61b5bd9e785", + "0xff4a6b6f1016695551355737d4f1236141ec018d" +] diff --git a/scripts/beanstalkShipments/data/shipmentContractAnalysis.json b/scripts/beanstalkShipments/data/shipmentContractAnalysis.json new file mode 100644 index 00000000..786418cd --- /dev/null +++ b/scripts/beanstalkShipments/data/shipmentContractAnalysis.json @@ -0,0 +1,12808 @@ +{ + "generatedAt": "2026-02-03T15:08:39.457Z", + "description": "Analysis of contracts for Beanstalk Shipments claimability on Base", + "stats": { + "total": 3462, + "claimable": { + "eoa": 3256, + "onBase": 72, + "eip7702": 70, + "ambire": 3, + "claimableSafe": 11 + }, + "unclaimable": { + "oldSafe": 0, + "upgradedSafe": 1, + "unknownContract": 49 + } + }, + "errorCount": 0, + "unclaimableContracts": [ + { + "address": "0x0000000000003f5e74c1ba8a66b48e6f3d71ae82", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040523480156100" + }, + "error": null, + "codeSize": 11699 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x0000000000007f150bd6f54c40a34d7c3d5e9f56", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 8933 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x000000000035b5e5ad9019092c665357240f594e", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x600436116046575b5f60" + }, + "error": null, + "codeSize": 169 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "87" + } + }, + { + "address": "0x00000000003b3cc22af3ae1eac0440bcee416b40", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 10611 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4397" + } + }, + { + "address": "0x00000000500e2fece27a7600435d0c48d64e0c00", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x463560601c3373cc8efe" + }, + "error": null, + "codeSize": 3040 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "35019" + } + }, + { + "address": "0x000000005736775feb0c8568e7dee77222a26880", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x600080358060e01c9081" + }, + "error": null, + "codeSize": 1427 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "27" + } + }, + { + "address": "0x00000000a1f2d3063ed639d19a6a56be87e25b1a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60003560e01c600f8114" + }, + "error": null, + "codeSize": 2464 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5" + } + }, + { + "address": "0x01ff6318440f7d5553a82294d78262d5f5084eff", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x36610007575b005b3d35" + }, + "error": null, + "codeSize": 2661 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x0245934a930544c7046069968eb4339b03addfcf", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2141 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3" + } + }, + { + "address": "0x07197a25bf7297c2c41dd09a79160d05b6232bcf", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 3919 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x0c565f3a167df783cf6bb9fcf174e6c7d0d3892b", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040523480156100" + }, + "error": null, + "codeSize": 22142 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3" + } + }, + { + "address": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2141 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1210864256332" + } + }, + { + "address": "0x162852f5d4007b76d3cdc432945516b9bbf1a01f", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040523480156100" + }, + "error": null, + "codeSize": 22142 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x1d6e8bac6ea3730825bde4b005ed7b2b39a2932d", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 13979 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x22f92b5cb630524af4e6c5031249931a77c43845", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 10271 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x251fae8f687545bdd462ba4fcdd7581051740463", + "sources": [ + "field" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 4744 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x2c6a44918f12fdea9cd14c951e7b71df824fdba4", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040523480156100" + }, + "error": null, + "codeSize": 22142 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "18258" + } + }, + { + "address": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2141 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1918965278639" + } + }, + { + "address": "0x3d93420aa8512e2bc7d77cb9352d752881706638", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 10020 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "95422611" + } + }, + { + "address": "0x42b2c65db7f9e3b6c26bc6151ccf30cce0fb99ea", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2210 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x46c4128981525aa446e02ffb2ff762f1d6a49170", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x5f80358060e01c63fa46" + }, + "error": null, + "codeSize": 2318 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x499dd900f800fd0a2ed300006000a57f00fa009b", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 9993 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x5e4c21c30c968f1d1ee37c2701b99b193b89d3f3", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 8406 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x66f049111958809841bbe4b81c034da2d953aa0c", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x73607bd5bbc7c6a21112" + }, + "error": null, + "codeSize": 489 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "9" + } + }, + { + "address": "0x6f98da2d5098604239c07875c6b7fd583bc520b9", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "EIP-1167 Proxy contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-1167 Proxy", + "details": { + "implementation": "0x5ae854b098727a9f1603a1e21c50d52dc834d846" + }, + "error": null, + "codeSize": 45 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "81825207835" + } + }, + { + "address": "0x7ca44c05aa9fcb723741cbf8d5c837931c08971a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 9623 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x83a758a6a24fe27312c1f8bda7f3277993b64783", + "sources": [ + "silo", + "field" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2141 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "99437500" + } + }, + { + "address": "0x897f27d11c2dd9f4e80770d33b681232e93e2b62", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 1764 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "116901663" + } + }, + { + "address": "0x90746a1393a772af40c9f396b730a4ffd024bb63", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2009 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "244153356" + } + }, + { + "address": "0x9362c5f4fd3fa3989e88268fb3e0d69e9eeb1705", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2351 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "324094915" + } + }, + { + "address": "0x96d4f9d8f23eadee78fc6824fc60b8c1ce578443", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 11114 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2141 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2852385621956" + } + }, + { + "address": "0xa1006d0051a35b0000f961a8000000009ea8d2db", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x6000803560f81c806101" + }, + "error": null, + "codeSize": 3802 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "240" + } + }, + { + "address": "0xa10fca31a2cb432c9ac976779dc947cfdb003ef0", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x3661000657005b604060" + }, + "error": null, + "codeSize": 14757 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "10086331" + } + }, + { + "address": "0xa405e822d1c3a8568c6b82eb6e570fca0136f802", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x5860607372f3888c765e" + }, + "error": null, + "codeSize": 399 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "514" + } + }, + { + "address": "0xa6b2876743d22a11d6941d84738abda7669fcacf", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 10496 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0xa8ecaf8745c56d5935c232d2c5b83b9cd3de1f6a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 4382 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0xaa420e97534ab55637957e868b658193b112a551", + "sources": [ + "silo", + "field" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2141 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "20754000000" + } + }, + { + "address": "0xb3fcd22ffd34d75c979d49e2e5fb3a3405644831", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60006020816020376001" + }, + "error": null, + "codeSize": 4471 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "sources": [ + "silo", + "field" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2141 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "4" + } + }, + { + "address": "0xbcc7f6355bc08f6b7d3a41322ce4627118314763", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x6000735aa17fc7f2950e" + }, + "error": null, + "codeSize": 100 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "14" + } + }, + { + "address": "0xbe7395d579cba0e3d7813334ff5e2d3cfe1311ba", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 3100 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "8" + } + }, + { + "address": "0xbf3f6477dbd514ef85b7d3ec6ac2205fd0962039", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 4046 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 2764 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "116127823" + } + }, + { + "address": "0xeef86c2e49e11345f1a693675df9a38f7d880c8f", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x3661000657005b604060" + }, + "error": null, + "codeSize": 14629 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "44975655" + } + }, + { + "address": "0xf25ba658b15a49d66b5b414f7718c2e579950aac", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 7506 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 1743 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1893551014" + } + }, + { + "address": "0xf6cca4d94772fff831bf3a250a29de413d304fc5", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 9088 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "72915448" + } + }, + { + "address": "0xfe84ced1581a0943abea7d57ac47e2d01d132c98", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": false, + "reason": "Unknown contract", + "category": "unknownContract" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 9080 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": false, + "reason": "Safe 1.3.0 (upgraded from 1.1.0, factory undefined)", + "category": "upgradedSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 170 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "62672894779" + }, + "upgradeInfo": { + "deployBlock": 12719542, + "originalSingleton": "0x34cfac646f301356faa8b21e94227e3583fe3f5f", + "originalVersion": "1.1.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": true + } + } + ], + "claimableContracts": [ + { + "address": "0x04dc1bdcb450ea6734f5001b9cecb0cd09690f4f", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "84666648086" + } + }, + { + "address": "0x078ad2aa3b4527e4996d087906b2a3da51bba122", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "1290863" + } + }, + { + "address": "0x1202fba35cc425c07202baa4b17fa9a37d2dbebb", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "117603362911" + } + }, + { + "address": "0x16cfa7ca52268cfc6d701b0d47f86bfc152694f3", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2654304111" + } + }, + { + "address": "0x19dde5f247155293fb8c905d4a400021c12fb6f0", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "170175680" + } + }, + { + "address": "0x1d0a4fee04892d90e2b8a4c1836598b081bb949f", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "276154236" + } + }, + { + "address": "0x22aa1f4173b826451763ebfce22cf54a0603163c", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "627861" + } + }, + { + "address": "0x226cb5b4f8aae44fbc4374a2be35b3070403e9da", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2079878" + } + }, + { + "address": "0x234831d4cff3b7027e0424e23f019657005635e1", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x000000009b1d0af20d8c6d0a44e162d11f9b8f00" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x000000009b1d0af20d8c6d0a44e162d11f9b8f00" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "389763280" + } + }, + { + "address": "0x2800b279e11e268d9d74af01c551a9c52eab1be3", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1290998707760" + } + }, + { + "address": "0x2908a0379cbafe2e8e523f735717447579fc3c37", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "136257580592" + } + }, + { + "address": "0x2a40aaf3e076187b67ccce82e20da5ce27caa2a7", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x36d3cbd83961868398d056efbf50f5ce15528c0d" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x7702cb554e6bfb442cb743a7df23154544a7176c" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "235604312" + } + }, + { + "address": "0x2bf9b1b8cc4e6864660708498fb004e594efc0b8", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5984096636" + } + }, + { + "address": "0x2f65904d227c3d7e4bbbb7ea10cfc36cd2522405", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "604108560" + } + }, + { + "address": "0x305b0ecf72634825f7231058444c65d885e1f327", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb56c1b9d03ba4b3958092bfdd27b25cba02c5031" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x1ee8e3b6ca95606e21be70cff6a0bd24c134b96f" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "8952303501" + } + }, + { + "address": "0x334f12f269213371fb59b328bb6e182c875e04b2", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "327126090709" + } + }, + { + "address": "0x3cc6cc687870c972127e073e05b956a1ee270164", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2" + } + }, + { + "address": "0x49072cd3bf4153da87d5eb30719bb32bda60884b", + "sources": [ + "silo", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": true, + "siloBdv": "10646036906" + } + }, + { + "address": "0x4c22f22547855855b837b84cf5a73b4c875320cb", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4192635750" + } + }, + { + "address": "0x4c366e92d46796d14d658e690de9b1f54bfb632f", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x17cb2452565c192706f93203a6326f35b8e0d899" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb56c1b9d03ba4b3958092bfdd27b25cba02c5031" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x24be67cbe39483da97efacce750b16dd34585a2f" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3906876161" + } + }, + { + "address": "0x4f70ffddab3c60ad12487b2906e3e46d8bc72970", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x09f056da164b563d1071e9deed529dd89f46a1d9" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x8b7121d558f343ba6fa1e18d6ef99a6dd44f3a19" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "18845049718" + } + }, + { + "address": "0x51cf86829ed08be4ab9ebe48630f4d2ed9f54f56", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "647219930" + } + }, + { + "address": "0x51e7b8564f50ec4ad91877e39274bda7e6eb880a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x80296ff8d1ed46f8e3c7992664d13b833504c2bb" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4101549406" + } + }, + { + "address": "0x52d4d46e28dc72b1cef2cb8eb5ec75dd12bc4df3", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x000000009b1d0af20d8c6d0a44e162d11f9b8f00" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x000000009b1d0af20d8c6d0a44e162d11f9b8f00" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x000000009b1d0af20d8c6d0a44e162d11f9b8f00" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "749302147" + } + }, + { + "address": "0x538c3fe98a11fba5d7c70fd934c7299bffcfe4de", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x3c3d718877a7d95857e1ae74b3963bddefb81931" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x95ad3b610da3f60e2e169dc778e29b0c0cfd673e" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x325b2bdddd7ea1335acee94bfdb1ea3130d08e07" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "13111" + } + }, + { + "address": "0x542a94e6f4d9d15aae550f7097d089f273e38f85", + "sources": [ + "silo", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x47c74dfd54b2bf7362e5976d748aad24c4f1f36d" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x325b2bdddd7ea1335acee94bfdb1ea3130d08e07" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": true, + "siloBdv": "1351212" + } + }, + { + "address": "0x55038f72943144983baab03a0107c9a237bd0da9", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "13872315" + } + }, + { + "address": "0x554b1bd47b7d180844175ca4635880da8a3c70b9", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "12894039148" + } + }, + { + "address": "0x562f223a5847daae5faa56a0883ed4d5e8ee0ee0", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xcc0c946eecf01a4bc76bc333ea74ceb04756f17b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3" + } + }, + { + "address": "0x6301add4fb128de9778b8651a2a9278b86761423", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "26963291792" + } + }, + { + "address": "0x6363f3da9d28c1310c2eabdd8e57593269f03ff8", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "2963074788" + } + }, + { + "address": "0x647bc16dcc2a3092a59a6b9f7944928d94301042", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "5802103979" + } + }, + { + "address": "0x6609dfa1cb75d74f4ff39c8a5057bd111fba5b22", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "988268302" + } + }, + { + "address": "0x6a9d63cbb02b6a7d5d09ce11d0a4b981bb1a221d", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1965220435" + } + }, + { + "address": "0x6f9cee855cb1f362f31256c65e1709222e0f2037", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "642055137257" + } + }, + { + "address": "0x71f9ccd68bf1f5f9b571f509e0765a04ca4ffad2", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "435297010767" + } + }, + { + "address": "0x73cbc02516f5f4945ce2f2facf002b2c6aa359e7", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "22003048972" + } + }, + { + "address": "0x7ac34681f6aaeb691e150c43ee494177c0e2c183", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1026" + } + }, + { + "address": "0x7cd222530d4d10e175c939f55c5dc394d51aadaa", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1941428197938" + } + }, + { + "address": "0x843f2c19bc6df9e32b482e2f9ad6c078001088b1", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "33054062713" + } + }, + { + "address": "0x85312d6a50928f3ffc7a192444601e6e04a428a2", + "sources": [ + "silo", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": true, + "siloBdv": "1179375906" + } + }, + { + "address": "0x85789dab691cfb2f95118642d459e3301ac88aba", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb56c1b9d03ba4b3958092bfdd27b25cba02c5031" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x1ee8e3b6ca95606e21be70cff6a0bd24c134b96f" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "13082483" + } + }, + { + "address": "0x86a41524cb61edd8b115a72ad9735f8068996688", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "22676193096" + } + }, + { + "address": "0x87b6c8734180d89a7c5497ab91854165d71fad60", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89046d34e70a65acab2152c26a0c8e493b5ba629" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "7873358244" + } + }, + { + "address": "0x8b2dbfded8802a1af686fef45dd9f7babfd936a2", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x17cb2452565c192706f93203a6326f35b8e0d899" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x95ad3b610da3f60e2e169dc778e29b0c0cfd673e" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x325b2bdddd7ea1335acee94bfdb1ea3130d08e07" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "81753677" + } + }, + { + "address": "0x8bea73aac4f7ef9daded46359a544f0bb2d1364f", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb56c1b9d03ba4b3958092bfdd27b25cba02c5031" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x325b2bdddd7ea1335acee94bfdb1ea3130d08e07" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "882175042" + } + }, + { + "address": "0x8d06ffb1500343975571cc0240152c413d803778", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "209653369867" + } + }, + { + "address": "0x8f21151d98052ec4250f41632798716695fb6f52", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "74624182595" + } + }, + { + "address": "0x90f15e09b8fb5bc080b968170c638920db3a3446", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "10480461744" + } + }, + { + "address": "0x8fe7261b58a691e40f7a21d38d27965e2d3afd6e", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "117884705851" + } + }, + { + "address": "0xa8dc7990450cf6a9d40371ef71b6fa132eeabb0e", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "2059837403" + } + }, + { + "address": "0xad503b72fc36a699bf849bb2ed4c3db1967a73da", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2" + } + }, + { + "address": "0xaeb9a1fddc21b1624f5ed6acc22d659fc0e381ca", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "42565165976" + } + }, + { + "address": "0xb02f6c30bcf0d42e64712c28b007b85c199db43f", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3" + } + }, + { + "address": "0xb788d42d5f9b50eacbf04253135e9dd73a790bb4", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5194914245" + } + }, + { + "address": "0xbab04a0614a1747f6f27403450038123942cf87b", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "872941934" + } + }, + { + "address": "0xba9d7bdc69d77b15427346d30796e0353fa245dc", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "370410744" + } + }, + { + "address": "0xb9919d9b5609328f1ab7b2a9202d4d4bbe3be202", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "181639411413" + } + }, + { + "address": "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", + "sources": [ + "silo", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": true, + "siloBdv": "6922721398" + } + }, + { + "address": "0xbf912cb4d1c3f93e51622fae0bfa28be1b4b6c6c", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "34791226" + } + }, + { + "address": "0xc1146f4a68538a35f70c70434313fef3c4456c33", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x17cb2452565c192706f93203a6326f35b8e0d899" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb56c1b9d03ba4b3958092bfdd27b25cba02c5031" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd11a2d4f60d57833b30143f6510d371ee46690fe" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "136282377306" + } + }, + { + "address": "0xc1d1f253e40d2796fb652f9494f2cee8255a0a4f", + "sources": [ + "silo", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": true, + "siloBdv": "6" + } + }, + { + "address": "0xc896e266368d3eb26219c5cc74a4941339218d86", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x0061a9da09d7deac392c4b17f3718fecba7c5259" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x325b2bdddd7ea1335acee94bfdb1ea3130d08e07" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "22334685" + } + }, + { + "address": "0xc8801ffaaa9dfcce7299e7b4eb616741ea01f5de", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2327110514" + } + }, + { + "address": "0xcaf0cdbf6fd201ce4f673f5c232d21dd8225f437", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5409765207" + } + }, + { + "address": "0xcb1667b6f0cd39c9a38edadcfa743de95cb65368", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2" + } + }, + { + "address": "0xcd1d766aa27655cba70d10723bcc9f03a3fe489a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "71359777" + } + }, + { + "address": "0xcd5561b1be55c1fa4bba4749919a03219497b6ef", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63245b9fadc65c3a6d61b1a1a812808ffc91bd29" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2862022204" + } + }, + { + "address": "0xcf0dcc80f6e15604e258138cca455a040ecb4605", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "2" + } + }, + { + "address": "0xd15b5fa5370f0c3cc068f107b7691e6dab678799", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd7d20e03c9793bd1b63291eea0021c8cc096a915" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd7d20e03c9793bd1b63291eea0021c8cc096a915" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd7d20e03c9793bd1b63291eea0021c8cc096a915" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "41244612991" + } + }, + { + "address": "0xd1818a80dac94fa1db124b9b1a1bb71dc20f228d", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "25738445409" + } + }, + { + "address": "0xd5ae1639e5ef6ecf241389894a289a7c0c398241", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "54337229968" + } + }, + { + "address": "0xde33e58f056ff0f23be3ef83ab6e1e0bec95506f", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x17cb2452565c192706f93203a6326f35b8e0d899" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x09f056da164b563d1071e9deed529dd89f46a1d9" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x8d18b7d2e849d42286c75e69544af2f5104cdd1e" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "1440847299" + } + }, + { + "address": "0xe596607344348723aa3e9a1a8551577dcca6c5b5", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5457350695" + } + }, + { + "address": "0xec62e790d671439812a9958973acadb017d5ff4d", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "52880745297" + } + }, + { + "address": "0xed0f30677c760ea8f0bff70c76eafc79d5f7c3c8", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "10332383424" + } + }, + { + "address": "0xf1fced5b0475a935b49b95786adbda2d40794d2d", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x7702cb554e6bfb442cb743a7df23154544a7176c" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "125407334940" + } + }, + { + "address": "0xf58f3dbb422624fe0dd9e67de9767c149bf04fdd", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89046d34e70a65acab2152c26a0c8e493b5ba629" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89046d34e70a65acab2152c26a0c8e493b5ba629" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89046d34e70a65acab2152c26a0c8e493b5ba629" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4904141400" + } + }, + { + "address": "0xf62405e188bb9629ed623d60b7c70dcc4e2abd81", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2" + } + }, + { + "address": "0xf6fbdecb1193f6b15659ce747bfc561e06f1214a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3" + } + }, + { + "address": "0xf7d4699bb387bc4152855fcd22a1031511c6e9b6", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4771504043" + } + }, + { + "address": "0xf8aa30a3acfad49efbb6837f8fea8225d66e993b", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "101291627622" + } + }, + { + "address": "0xf90a01af91468f5418cda5ed6b19c51550eb5352", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "275235709" + } + }, + { + "address": "0xfb5caae76af8d3ce730f3d62c6442744853d43ef", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "25836910088" + } + }, + { + "address": "0xfefe31009b95c04e062aa89c975fb61b5bd9e785", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3558492484" + } + }, + { + "address": "0xff4a6b6f1016695551355737d4f1236141ec018d", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "42899504913" + } + }, + { + "address": "0x23444f470c8760bef7424c457c30dc2d4378974b", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5670131987" + } + }, + { + "address": "0x40ca67ba095c038b711ad37bbebad8a586ae6f38", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x38fe5c84c97cf22daa41f9c5a69168cd44c38588" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x47c74dfd54b2bf7362e5976d748aad24c4f1f36d" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x325b2bdddd7ea1335acee94bfdb1ea3130d08e07" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1648097" + } + }, + { + "address": "0x130ffd7485a0459fb34b9adbecf1a6dda4a497d5", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "8205939" + } + }, + { + "address": "0xd20b976584bf506baf5cc604d1f0a1b8d07138da", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "100000000" + } + }, + { + "address": "0xdda42f12b8b2ccc6717c053a2b772bad24b08cbd", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "173440185" + } + }, + { + "address": "0x00000000003e04625c9001717346dd811ae5eba2", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x95ad3b610da3f60e2e169dc778e29b0c0cfd673e" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x8d18b7d2e849d42286c75e69544af2f5104cdd1e" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "59368526" + } + }, + { + "address": "0x0536f43136d5479310c01f82de2c04c0115217a6", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "6000000000" + }, + "upgradeInfo": { + "deployBlock": 14259043, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + }, + { + "address": "0x10e1439455bd2624878b243819e31cfee9eb721c", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "20000000" + }, + "upgradeInfo": { + "deployBlock": 14268259, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + }, + { + "address": "0x21194d506ab47c531a7874b563dfa3787b3938a5", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "318631452" + } + }, + { + "address": "0x5136a9a5d077ae4247c7706b577f77153c32a01c", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "72" + } + }, + { + "address": "0x609a7742acb183f5a365c2d40d80e0f30007a597", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "147340046" + } + }, + { + "address": "0x68781516d80ec9339ecdf5996dfbcafb8afe8e22", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4500000000" + } + }, + { + "address": "0xb1720612d0131839dc489fcf20398ea925282fca", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3827819" + } + }, + { + "address": "0xae7861c80d03826837a50b45aecf11ec677f6586", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x95ad3b610da3f60e2e169dc778e29b0c0cfd673e" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x325b2bdddd7ea1335acee94bfdb1ea3130d08e07" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0xceb15131d3c0adcffbfe229868b338ff24ed338a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x7702cb554e6bfb442cb743a7df23154544a7176c" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x7702cb554e6bfb442cb743a7df23154544a7176c" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x7702cb554e6bfb442cb743a7df23154544a7176c" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4133000000" + } + }, + { + "address": "0xf115d93a31e79cca4697b9683c856326e0bed3c3", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd0bcb5aef1e842c6e108fd77ee26dfce5f659f51" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd11a2d4f60d57833b30143f6510d371ee46690fe" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "246154267" + } + }, + { + "address": "0xfba3ca5d207872ed1984eae82e0d3c8074e971c1", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3200000000" + }, + "upgradeInfo": { + "deployBlock": 14404601, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + }, + { + "address": "0xfcf6a3d7eb8c62a5256a020e48f153c6d5dd6909", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "96" + } + }, + { + "address": "0x33ee1fa9ed670001d1740419192142931e088e79", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x3c3d718877a7d95857e1ae74b3963bddefb81931" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb56c1b9d03ba4b3958092bfdd27b25cba02c5031" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x24be67cbe39483da97efacce750b16dd34585a2f" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "416969887" + } + }, + { + "address": "0xf55f7118fa68ae5a52e0b2d519bffcbdb7387afa", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3038420250" + } + }, + { + "address": "0xd39a31e5f23d90371d61a976cacb728842e04ca9", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbContract" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.4.1 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.4.1", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "532690" + }, + "upgradeInfo": { + "deployBlock": 259036349, + "originalSingleton": "0x29fcb43b46531bca003ddc8fcb67ffe91900c762", + "originalVersion": "1.4.1-L2", + "currentSingleton": "0x29fcb43b46531bca003ddc8fcb67ffe91900c762", + "currentVersion": "1.4.1-L2", + "isUpgraded": false + } + }, + { + "address": "0x4df59c31a3008509b3c1fee7a808c9a28f701719", + "sources": [ + "silo" + ], + "categories": [ + "arbContract" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "base": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1" + } + }, + { + "address": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "79602267187" + }, + "upgradeInfo": { + "deployBlock": 13283845, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + }, + { + "address": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1129291156" + }, + "upgradeInfo": { + "deployBlock": 14472978, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + }, + { + "address": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "230057326178" + }, + "upgradeInfo": { + "deployBlock": 13844768, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + }, + { + "address": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x363d3d373d3d3d363d30" + }, + "error": null, + "codeSize": 26 + }, + "arbitrum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x363d3d373d3d3d363d30" + }, + "error": null, + "codeSize": 26 + }, + "base": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x363d3d373d3d3d363d30" + }, + "error": null, + "codeSize": 26 + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "22023088835" + } + }, + { + "address": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Ambire (CREATE2 deploy)", + "category": "ambire" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Ambire", + "details": { + "implementation": "0x2a2b85eb1054d6f0c6c2e37da05ed3e5fea684ef" + }, + "error": null, + "codeSize": 45 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "23959976085" + } + }, + { + "address": "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Ambire (CREATE2 deploy)", + "category": "ambire" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Ambire", + "details": { + "implementation": "0x2a2b85eb1054d6f0c6c2e37da05ed3e5fea684ef" + }, + "error": null, + "codeSize": 45 + }, + "arbitrum": { + "isContract": true, + "type": "Ambire", + "details": { + "implementation": "0x2a2b85eb1054d6f0c6c2e37da05ed3e5fea684ef" + }, + "error": null, + "codeSize": 45 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "63462001011" + } + }, + { + "address": "0x9008d19f58aabd9ed0d60971565aa8510560ab41", + "sources": [ + "silo" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 16165 + }, + "arbitrum": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 16165 + }, + "base": { + "isContract": true, + "type": "Unknown", + "details": { + "codePrefix": "0x60806040526004361061" + }, + "error": null, + "codeSize": 16165 + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "291524996" + } + }, + { + "address": "0x2c4fe365db09ad149d9caec5fd9a42f60a0cf1a3", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x53ba90071ff3224adca6d3c7960ad924796fed03", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x9ec255f1af4d3e4a813aadab8ff0497398037d56", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xaa44cac4777dcb5019160a96fbf05a39b41edd15", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xf7d48932f456e98d2ff824e38830e8f59de13f4a", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x89aa0d7ebdcc58d230af421676a8f62ca168d57a", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x59dc1eae22eebd6cfbd144ee4b6f4048f8a59880", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x61e193e514de408f57a648a641d9fcd412cded82", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x70c8ee0223d10c150b0db98a0423ec18ec5aca89", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x68ca44ed5d5df216d10b14c13d18395a9151224a", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0xf75e363f695eb259d00bfa90e2c2a35d3bfd585f", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89318ee02b4adda57770267afe5cd8f5242320d2" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x18ed928719a8951729fbd4dbf617b7968d940c7b", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x47b2efa18736c6c211505aefd321bec3ac3e8779", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0xb3f7df25cb052052df6d73d83edbf6a2238c67de", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0xbe9998830c38910ef83e85eb33c90dd301d5516e", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x2745a1f9774ff3b59cbdfc139c6f19f003392e2c", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0xe8ab75921d5f00cc982be1e8a5cf435e137319e9", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x326481a3b0c792cc7df1df0c8e76490b5ccd7031", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x08e0f0de1e81051826464043e7ae513457b27a86", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x0611c946fe52b2fa5315ae6a9186c98b06a8e558" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd11a2d4f60d57833b30143f6510d371ee46690fe" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0xb651078d1856eb206fb090fd9101f537c33589c2", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x325b2bdddd7ea1335acee94bfdb1ea3130d08e07" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x1b91e045e59c18aefb02a29b38bccd46323632ef", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xecdc4dd795d79f668ff09961b2a2f47fe8e4f170", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbContract" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.4.1 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.4.1", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + }, + "upgradeInfo": { + "deployBlock": 262439581, + "originalSingleton": "0x29fcb43b46531bca003ddc8fcb67ffe91900c762", + "originalVersion": "1.4.1-L2", + "currentSingleton": "0x29fcb43b46531bca003ddc8fcb67ffe91900c762", + "currentVersion": "1.4.1-L2", + "isUpgraded": false + } + }, + { + "address": "0x735cab9b02fd153174763958ffb4e0a971dd7f29", + "sources": [ + "field", + "barn" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + }, + "upgradeInfo": { + "deployBlock": 14592334, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + }, + { + "address": "0x8525664820c549864982d4965a41f83a7d26af58", + "sources": [ + "field" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Ambire (CREATE2 deploy)", + "category": "ambire" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Ambire", + "details": { + "implementation": "0x2a2b85eb1054d6f0c6c2e37da05ed3e5fea684ef" + }, + "error": null, + "codeSize": 45 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x63a7255c515041fd243440e3db0d10f62f9936ae", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb59f313dcf8c8107adffeabd0c041c896c64dfca" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x95ad3b610da3f60e2e169dc778e29b0c0cfd673e" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x24be67cbe39483da97efacce750b16dd34585a2f" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x51aad11e5a5bd05b3409358853d0d6a66aa60c40", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89046d34e70a65acab2152c26a0c8e493b5ba629" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89046d34e70a65acab2152c26a0c8e493b5ba629" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89046d34e70a65acab2152c26a0c8e493b5ba629" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x78fd06a971d8bd1ccf3ba2e16cd2d5ea451933e2", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xb490ac9d599c2d4fc24cc902ea4cd5af95eff6e9", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x25f69051858d6a8f9a6e54dafb073e8ef3a94c1e", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xa5f158e596d0e4051e70631d5d72a8ee9d5a3b8a", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x4088e870e785320413288c605fd1bd6bd9d5bdae", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xad63e4d4be2229b080d20311c1402a2e45cf7e75", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x6e93e171c5223493ad5434ac406140e89bd606de", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x19dfdc194bb5cf599af78b1967dbb3783c590720", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x2f0424705ab89e72c6b9faebff6d4265f9d25fa2", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x0f9548165c4960624debb7e38b504e9fd524d6af", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x25f030d68e56f831011c8821913ced6248dd0676", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x3c3d718877a7d95857e1ae74b3963bddefb81931" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xb56c1b9d03ba4b3958092bfdd27b25cba02c5031" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x1ee8e3b6ca95606e21be70cff6a0bd24c134b96f" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xb03f5438f9a243de5c3b830b7841ec315034cd5f", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xb423a1e013812fcc9ab47523297e6be42fb6157e", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "Already on Base", + "category": "onBase" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", + "sources": [ + "barn" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + }, + "upgradeInfo": { + "deployBlock": 14055229, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + }, + { + "address": "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", + "sources": [ + "barn" + ], + "categories": [ + "ethContract" + ], + "claimability": { + "canClaim": true, + "reason": "Safe 1.3.0 (cross-chain deploy)", + "category": "claimableSafe" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "Safe", + "details": { + "version": "1.3.0", + "method": "VERSION()" + }, + "error": null, + "codeSize": 171 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + }, + "upgradeInfo": { + "deployBlock": 15822227, + "originalSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "originalVersion": "1.3.0", + "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", + "currentVersion": "1.3.0", + "isUpgraded": false + } + } + ], + "eip7702Addresses": [ + { + "address": "0x078ad2aa3b4527e4996d087906b2a3da51bba122", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "1290863" + } + }, + { + "address": "0x1202fba35cc425c07202baa4b17fa9a37d2dbebb", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "117603362911" + } + }, + { + "address": "0x16cfa7ca52268cfc6d701b0d47f86bfc152694f3", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2654304111" + } + }, + { + "address": "0x1d0a4fee04892d90e2b8a4c1836598b081bb949f", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "276154236" + } + }, + { + "address": "0x22aa1f4173b826451763ebfce22cf54a0603163c", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "627861" + } + }, + { + "address": "0x226cb5b4f8aae44fbc4374a2be35b3070403e9da", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2079878" + } + }, + { + "address": "0x2800b279e11e268d9d74af01c551a9c52eab1be3", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1290998707760" + } + }, + { + "address": "0x2908a0379cbafe2e8e523f735717447579fc3c37", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "136257580592" + } + }, + { + "address": "0x334f12f269213371fb59b328bb6e182c875e04b2", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "327126090709" + } + }, + { + "address": "0x51cf86829ed08be4ab9ebe48630f4d2ed9f54f56", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "647219930" + } + }, + { + "address": "0x51e7b8564f50ec4ad91877e39274bda7e6eb880a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x80296ff8d1ed46f8e3c7992664d13b833504c2bb" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4101549406" + } + }, + { + "address": "0x562f223a5847daae5faa56a0883ed4d5e8ee0ee0", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xcc0c946eecf01a4bc76bc333ea74ceb04756f17b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3" + } + }, + { + "address": "0x6301add4fb128de9778b8651a2a9278b86761423", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "26963291792" + } + }, + { + "address": "0x6363f3da9d28c1310c2eabdd8e57593269f03ff8", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "2963074788" + } + }, + { + "address": "0x6a9d63cbb02b6a7d5d09ce11d0a4b981bb1a221d", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1965220435" + } + }, + { + "address": "0x6f9cee855cb1f362f31256c65e1709222e0f2037", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "642055137257" + } + }, + { + "address": "0x7ac34681f6aaeb691e150c43ee494177c0e2c183", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1026" + } + }, + { + "address": "0x7cd222530d4d10e175c939f55c5dc394d51aadaa", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "1941428197938" + } + }, + { + "address": "0x86a41524cb61edd8b115a72ad9735f8068996688", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "22676193096" + } + }, + { + "address": "0x87b6c8734180d89a7c5497ab91854165d71fad60", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89046d34e70a65acab2152c26a0c8e493b5ba629" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "7873358244" + } + }, + { + "address": "0x8d06ffb1500343975571cc0240152c413d803778", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "209653369867" + } + }, + { + "address": "0x8f21151d98052ec4250f41632798716695fb6f52", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "74624182595" + } + }, + { + "address": "0xa8dc7990450cf6a9d40371ef71b6fa132eeabb0e", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "2059837403" + } + }, + { + "address": "0xad503b72fc36a699bf849bb2ed4c3db1967a73da", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2" + } + }, + { + "address": "0xaeb9a1fddc21b1624f5ed6acc22d659fc0e381ca", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "42565165976" + } + }, + { + "address": "0xb788d42d5f9b50eacbf04253135e9dd73a790bb4", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5194914245" + } + }, + { + "address": "0xba9d7bdc69d77b15427346d30796e0353fa245dc", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "370410744" + } + }, + { + "address": "0xb9919d9b5609328f1ab7b2a9202d4d4bbe3be202", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "181639411413" + } + }, + { + "address": "0xc1d1f253e40d2796fb652f9494f2cee8255a0a4f", + "sources": [ + "silo", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": true, + "siloBdv": "6" + } + }, + { + "address": "0xcaf0cdbf6fd201ce4f673f5c232d21dd8225f437", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5409765207" + } + }, + { + "address": "0xcb1667b6f0cd39c9a38edadcfa743de95cb65368", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2" + } + }, + { + "address": "0xcd1d766aa27655cba70d10723bcc9f03a3fe489a", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "71359777" + } + }, + { + "address": "0xcd5561b1be55c1fa4bba4749919a03219497b6ef", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63245b9fadc65c3a6d61b1a1a812808ffc91bd29" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "2862022204" + } + }, + { + "address": "0xd1818a80dac94fa1db124b9b1a1bb71dc20f228d", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "25738445409" + } + }, + { + "address": "0xd5ae1639e5ef6ecf241389894a289a7c0c398241", + "sources": [ + "silo", + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": true, + "siloBdv": "54337229968" + } + }, + { + "address": "0xec62e790d671439812a9958973acadb017d5ff4d", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "52880745297" + } + }, + { + "address": "0xed0f30677c760ea8f0bff70c76eafc79d5f7c3c8", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "10332383424" + } + }, + { + "address": "0xf7d4699bb387bc4152855fcd22a1031511c6e9b6", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4771504043" + } + }, + { + "address": "0xfefe31009b95c04e062aa89c975fb61b5bd9e785", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3558492484" + } + }, + { + "address": "0xff4a6b6f1016695551355737d4f1236141ec018d", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "42899504913" + } + }, + { + "address": "0x23444f470c8760bef7424c457c30dc2d4378974b", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "5670131987" + } + }, + { + "address": "0x130ffd7485a0459fb34b9adbecf1a6dda4a497d5", + "sources": [ + "silo", + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": true, + "hasBarn": false, + "siloBdv": "8205939" + } + }, + { + "address": "0x21194d506ab47c531a7874b563dfa3787b3938a5", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "318631452" + } + }, + { + "address": "0x5136a9a5d077ae4247c7706b577f77153c32a01c", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "72" + } + }, + { + "address": "0x609a7742acb183f5a365c2d40d80e0f30007a597", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "147340046" + } + }, + { + "address": "0x68781516d80ec9339ecdf5996dfbcafb8afe8e22", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "4500000000" + } + }, + { + "address": "0xfcf6a3d7eb8c62a5256a020e48f153c6d5dd6909", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "96" + } + }, + { + "address": "0xf55f7118fa68ae5a52e0b2d519bffcbdb7387afa", + "sources": [ + "silo" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": true, + "hasField": false, + "hasBarn": false, + "siloBdv": "3038420250" + } + }, + { + "address": "0x9ec255f1af4d3e4a813aadab8ff0497398037d56", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xaa44cac4777dcb5019160a96fbf05a39b41edd15", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xf7d48932f456e98d2ff824e38830e8f59de13f4a", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x89aa0d7ebdcc58d230af421676a8f62ca168d57a", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x59dc1eae22eebd6cfbd144ee4b6f4048f8a59880", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x70c8ee0223d10c150b0db98a0423ec18ec5aca89", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x68ca44ed5d5df216d10b14c13d18395a9151224a", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0xf75e363f695eb259d00bfa90e2c2a35d3bfd585f", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x89318ee02b4adda57770267afe5cd8f5242320d2" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x18ed928719a8951729fbd4dbf617b7968d940c7b", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0xb3f7df25cb052052df6d73d83edbf6a2238c67de", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x2745a1f9774ff3b59cbdfc139c6f19f003392e2c", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0xe8ab75921d5f00cc982be1e8a5cf435e137319e9", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x326481a3b0c792cc7df1df0c8e76490b5ccd7031", + "sources": [ + "field" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": false, + "siloBdv": "0" + } + }, + { + "address": "0x1b91e045e59c18aefb02a29b38bccd46323632ef", + "sources": [ + "field", + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": true, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x78fd06a971d8bd1ccf3ba2e16cd2d5ea451933e2", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0xd6cedde84be40893d153be9d467cd6ad37875b28" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xb490ac9d599c2d4fc24cc902ea4cd5af95eff6e9", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x25f69051858d6a8f9a6e54dafb073e8ef3a94c1e", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xa5f158e596d0e4051e70631d5d72a8ee9d5a3b8a", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xad63e4d4be2229b080d20311c1402a2e45cf7e75", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x6e93e171c5223493ad5434ac406140e89bd606de", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0x2f0424705ab89e72c6b9faebff6d4265f9d25fa2", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + }, + { + "address": "0xb03f5438f9a243de5c3b830b7841ec315034cd5f", + "sources": [ + "barn" + ], + "categories": [ + "arbEOA" + ], + "claimability": { + "canClaim": true, + "reason": "EIP-7702 (private key)", + "category": "eip7702" + }, + "chains": { + "ethereum": { + "isContract": true, + "type": "EIP-7702", + "details": { + "type": "EIP-7702", + "delegateAddress": "0x63c0c19a282a1b52b07dd5a65b58948a07dae32b" + }, + "error": null, + "codeSize": 23 + }, + "arbitrum": { + "isContract": false, + "type": null, + "details": null, + "error": null + }, + "base": { + "isContract": false, + "type": null, + "details": null, + "error": null + } + }, + "assets": { + "hasSilo": false, + "hasField": false, + "hasBarn": true, + "siloBdv": "0" + } + } + ] +} \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/unclaimableContractAddresses.json b/scripts/beanstalkShipments/data/unclaimableContractAddresses.json new file mode 100644 index 00000000..86dfe0c6 --- /dev/null +++ b/scripts/beanstalkShipments/data/unclaimableContractAddresses.json @@ -0,0 +1,52 @@ +[ + "0x0000000000003f5e74c1ba8a66b48e6f3d71ae82", + "0x0000000000007f150bd6f54c40a34d7c3d5e9f56", + "0x000000000035b5e5ad9019092c665357240f594e", + "0x00000000003b3cc22af3ae1eac0440bcee416b40", + "0x00000000500e2fece27a7600435d0c48d64e0c00", + "0x000000005736775feb0c8568e7dee77222a26880", + "0x00000000a1f2d3063ed639d19a6a56be87e25b1a", + "0x01ff6318440f7d5553a82294d78262d5f5084eff", + "0x0245934a930544c7046069968eb4339b03addfcf", + "0x07197a25bf7297c2c41dd09a79160d05b6232bcf", + "0x0c565f3a167df783cf6bb9fcf174e6c7d0d3892b", + "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "0x162852f5d4007b76d3cdc432945516b9bbf1a01f", + "0x1d6e8bac6ea3730825bde4b005ed7b2b39a2932d", + "0x22f92b5cb630524af4e6c5031249931a77c43845", + "0x251fae8f687545bdd462ba4fcdd7581051740463", + "0x2c6a44918f12fdea9cd14c951e7b71df824fdba4", + "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "0x3d93420aa8512e2bc7d77cb9352d752881706638", + "0x42b2c65db7f9e3b6c26bc6151ccf30cce0fb99ea", + "0x46c4128981525aa446e02ffb2ff762f1d6a49170", + "0x499dd900f800fd0a2ed300006000a57f00fa009b", + "0x5e4c21c30c968f1d1ee37c2701b99b193b89d3f3", + "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "0x66f049111958809841bbe4b81c034da2d953aa0c", + "0x6f98da2d5098604239c07875c6b7fd583bc520b9", + "0x7ca44c05aa9fcb723741cbf8d5c837931c08971a", + "0x83a758a6a24fe27312c1f8bda7f3277993b64783", + "0x897f27d11c2dd9f4e80770d33b681232e93e2b62", + "0x90746a1393a772af40c9f396b730a4ffd024bb63", + "0x9362c5f4fd3fa3989e88268fb3e0d69e9eeb1705", + "0x96d4f9d8f23eadee78fc6824fc60b8c1ce578443", + "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "0xa1006d0051a35b0000f961a8000000009ea8d2db", + "0xa10fca31a2cb432c9ac976779dc947cfdb003ef0", + "0xa405e822d1c3a8568c6b82eb6e570fca0136f802", + "0xa6b2876743d22a11d6941d84738abda7669fcacf", + "0xa8ecaf8745c56d5935c232d2c5b83b9cd3de1f6a", + "0xaa420e97534ab55637957e868b658193b112a551", + "0xb3fcd22ffd34d75c979d49e2e5fb3a3405644831", + "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "0xbcc7f6355bc08f6b7d3a41322ce4627118314763", + "0xbe7395d579cba0e3d7813334ff5e2d3cfe1311ba", + "0xbf3f6477dbd514ef85b7d3ec6ac2205fd0962039", + "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", + "0xeef86c2e49e11345f1a693675df9a38f7d880c8f", + "0xf25ba658b15a49d66b5b414f7718c2e579950aac", + "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", + "0xf6cca4d94772fff831bf3a250a29de413d304fc5", + "0xfe84ced1581a0943abea7d57ac47e2d01d132c98" +] From 90da1dd7b6a7a69a91a3c0b89595f040620516de Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Tue, 3 Feb 2026 19:07:18 +0300 Subject: [PATCH 235/270] static addresses fixes --- scripts/beanstalkShipments/analyzeShipmentContracts.js | 7 ++----- .../beanstalkShipments/data/shipmentContractAnalysis.json | 6 +++--- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/scripts/beanstalkShipments/analyzeShipmentContracts.js b/scripts/beanstalkShipments/analyzeShipmentContracts.js index c134d13d..d4daf10d 100644 --- a/scripts/beanstalkShipments/analyzeShipmentContracts.js +++ b/scripts/beanstalkShipments/analyzeShipmentContracts.js @@ -41,20 +41,17 @@ const RETRY_DELAY = 1000; // Known Safe singleton addresses (normalized to lowercase) const SAFE_SINGLETONS = { '0xb6029ea3b2c51d09a50b53ca8012feeb05bda35a': '1.0.0', - '0x34cfac646f301356faa8b21e94227e3583fe3f5f': '1.1.0', - '0xae32496491b53841efb51829d6f886387708f99b': '1.1.1', + '0xae32496491b53841efb51829d6f886387708f99b': '1.1.0', + '0x34cfac646f301356faa8b21e94227e3583fe3f5f': '1.1.1', '0x6851d6fdfafd08c0295c392436245e5bc78b0185': '1.2.0', '0xd9db270c1b5e3bd161e8c8503c55ceabee709552': '1.3.0', '0x3e5c63644e683549055b9be8653de26e0b4cd36e': '1.3.0-L2', - '0x69f4d1788e39c87893c980c06edf4b7f686e2938': '1.3.0', '0x41675c099f32341bf84bfc5382af534df5c7461a': '1.4.1', '0x29fcb43b46531bca003ddc8fcb67ffe91900c762': '1.4.1-L2', }; -// Ambire known addresses const AMBIRE_IDENTITIES = [ '0x2a2b85eb1054d6f0c6c2e37da05ed3e5fea684ef', - '0xf1822eb71b8f09ca07f10c4bebb064c36faf39bb', ]; // Safe ABI diff --git a/scripts/beanstalkShipments/data/shipmentContractAnalysis.json b/scripts/beanstalkShipments/data/shipmentContractAnalysis.json index 786418cd..e409a83c 100644 --- a/scripts/beanstalkShipments/data/shipmentContractAnalysis.json +++ b/scripts/beanstalkShipments/data/shipmentContractAnalysis.json @@ -1,5 +1,5 @@ { - "generatedAt": "2026-02-03T15:08:39.457Z", + "generatedAt": "2026-02-03T16:06:27.648Z", "description": "Analysis of contracts for Beanstalk Shipments claimability on Base", "stats": { "total": 3462, @@ -2138,7 +2138,7 @@ ], "claimability": { "canClaim": false, - "reason": "Safe 1.3.0 (upgraded from 1.1.0, factory undefined)", + "reason": "Safe 1.3.0 (upgraded from 1.1.1)", "category": "upgradedSafe" }, "chains": { @@ -2174,7 +2174,7 @@ "upgradeInfo": { "deployBlock": 12719542, "originalSingleton": "0x34cfac646f301356faa8b21e94227e3583fe3f5f", - "originalVersion": "1.1.0", + "originalVersion": "1.1.1", "currentSingleton": "0xd9db270c1b5e3bd161e8c8503c55ceabee709552", "currentVersion": "1.3.0", "isUpgraded": true From 5f60c5cc1e93ce01a749946727b381dcc25aac0f Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Tue, 3 Feb 2026 23:54:03 +0300 Subject: [PATCH 236/270] task for detecting unclaimable contracts --- .../analyzeShipmentContracts.js | 16 ++++++++++------ tasks/beanstalk-shipments.js | 19 +++++++++++++++++-- 2 files changed, 27 insertions(+), 8 deletions(-) diff --git a/scripts/beanstalkShipments/analyzeShipmentContracts.js b/scripts/beanstalkShipments/analyzeShipmentContracts.js index d4daf10d..150192a1 100644 --- a/scripts/beanstalkShipments/analyzeShipmentContracts.js +++ b/scripts/beanstalkShipments/analyzeShipmentContracts.js @@ -648,9 +648,13 @@ async function main() { console.log(`\nResults written to: ${outputPath}`); } -main() - .then(() => process.exit(0)) - .catch((error) => { - console.error('Error:', error); - process.exit(1); - }); +module.exports = { main }; + +if (require.main === module) { + main() + .then(() => process.exit(0)) + .catch((error) => { + console.error('Error:', error); + process.exit(1); + }); +} diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 38d48745..006fa285 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -25,10 +25,25 @@ module.exports = function () { //////////////////////// BEANSTALK SHIPMENTS //////////////////////// + ////// PRE-DEPLOYMENT: ANALYZE SHIPMENT CONTRACTS ////// + // Analyzes all addresses with Beanstalk assets to determine claimability on Base. + // Detects Safe wallets, EIP-7702 delegations, EIP-1167 proxies, and Ambire wallets. + // Outputs: shipmentContractAnalysis.json, eip7702Addresses.json, unclaimableContractAddresses.json + // Requires MAINNET_RPC, ARBITRUM_RPC and BASE_RPC in .env + // - npx hardhat analyzeShipmentContracts + task( + "analyzeShipmentContracts", + "analyzes contract addresses for cross-chain claimability" + ).setAction(async () => { + const { main } = require("../scripts/beanstalkShipments/analyzeShipmentContracts"); + await main(); + }); + ////// PRE-DEPLOYMENT: DEPLOY L1 CONTRACT MESSENGER ////// // As a backup solution, ethAccounts will be able to send a message on the L1 to claim their assets on the L2 // from the L2 ContractPaybackDistributor contract. We deploy the L1ContractMessenger contract on the L1 // and whitelist the ethAccounts that are eligible to claim their assets. + // Requires: analyzeShipmentContracts (generates unclaimableContractAddresses.json) // Make sure account[0] in the hardhat config for mainnet is the L1_CONTRACT_MESSENGER_DEPLOYER at 0xbfb5d09ffcbe67fbed9970b893293f21778be0a6 // - npx hardhat deployL1ContractMessenger --network mainnet task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction( @@ -45,9 +60,9 @@ module.exports = function () { // log deployer address console.log("Deployer address:", deployer.address); - // read the contract accounts from the json file + // read the unclaimable contract addresses from the json file const contractAccounts = JSON.parse( - fs.readFileSync("./scripts/beanstalkShipments/data/contractAccounts.json") + fs.readFileSync("./scripts/beanstalkShipments/data/unclaimableContractAddresses.json") ); const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); From ca816a8fefb0dde3f619d04f99ad5b23fe9d0cea Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Wed, 4 Feb 2026 18:22:26 +0300 Subject: [PATCH 237/270] Cache plotIndexes length to save gas, remove mock facet, and reduce safety margin to 35% --- .../tempFacets/TempRepaymentFieldFacet.sol | 5 +- .../mocks/MockTempRepaymentFieldFacet.sol | 80 ------------------- .../populateBeanstalkField.js | 4 +- .../simulateProductionBatches.js | 23 ++++-- 4 files changed, 20 insertions(+), 92 deletions(-) delete mode 100644 contracts/mocks/MockTempRepaymentFieldFacet.sol diff --git a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol index 38deffa3..f7afdc29 100644 --- a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol @@ -45,14 +45,13 @@ contract TempRepaymentFieldFacet is ReentrancyGuard { for (uint i; i < accountPlots.length; i++) { // cache the account and length of the plot indexes array address account = accountPlots[i].account; + uint256 len = s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length; for (uint j; j < accountPlots[i].plots.length; j++) { uint256 podIndex = accountPlots[i].plots[j].podIndex; uint256 podAmount = accountPlots[i].plots[j].podAmounts; s.accts[account].fields[REPAYMENT_FIELD_ID].plots[podIndex] = podAmount; s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.push(podIndex); - s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = - s.accts[account].fields[REPAYMENT_FIELD_ID].plotIndexes.length - - 1; + s.accts[account].fields[REPAYMENT_FIELD_ID].piIndex[podIndex] = len + j; emit RepaymentPlotAdded(account, podIndex, podAmount); } } diff --git a/contracts/mocks/MockTempRepaymentFieldFacet.sol b/contracts/mocks/MockTempRepaymentFieldFacet.sol deleted file mode 100644 index 33615533..00000000 --- a/contracts/mocks/MockTempRepaymentFieldFacet.sol +++ /dev/null @@ -1,80 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; - -/** - * @title MockTempRepaymentFieldFacet - * @notice Mirrors TempRepaymentFieldFacet for gas estimation in batch simulations - * @dev Includes ReentrancyGuard and require check to match real contract gas usage - */ -contract MockTempRepaymentFieldFacet { - // ReentrancyGuard state (mirrors Beanstalk ReentrancyGuard) - uint256 private constant _NOT_ENTERED = 1; - uint256 private constant _ENTERED = 2; - uint256 private _reentrantStatus = _NOT_ENTERED; - - // Mirror of Account.sol Field struct - struct Field { - mapping(uint256 => uint256) plots; - mapping(address => uint256) podAllowances; - uint256[] plotIndexes; - mapping(uint256 => uint256) piIndex; - } - - struct Plot { - uint256 podIndex; - uint256 podAmounts; - } - - struct RepaymentPlotData { - address account; - Plot[] plots; - } - - // Storage - mirrors s.accts[account].fields[fieldId] - mapping(address => Field) internal accountFields; - - // Authorized populator (matches real contract) - address public populator; - - event RepaymentPlotAdded(address indexed account, uint256 indexed plotIndex, uint256 pods); - - constructor() { - populator = msg.sender; - } - - modifier nonReentrant() { - require(_reentrantStatus != _ENTERED, "ReentrancyGuard: reentrant call"); - _reentrantStatus = _ENTERED; - _; - _reentrantStatus = _NOT_ENTERED; - } - - /** - * @notice Mirrors TempRepaymentFieldFacet.initializeRepaymentPlots exactly - * @dev Includes ReentrancyGuard + require check for accurate gas measurement - */ - function initializeRepaymentPlots( - RepaymentPlotData[] calldata accountPlots - ) external nonReentrant { - require( - msg.sender == populator, - "Only the repayment field populator can call this function" - ); - - for (uint256 i; i < accountPlots.length; i++) { - address account = accountPlots[i].account; - for (uint256 j; j < accountPlots[i].plots.length; j++) { - uint256 podIndex = accountPlots[i].plots[j].podIndex; - uint256 podAmount = accountPlots[i].plots[j].podAmounts; - - accountFields[account].plots[podIndex] = podAmount; - accountFields[account].plotIndexes.push(podIndex); - accountFields[account].piIndex[podIndex] = - accountFields[account].plotIndexes.length - - 1; - - emit RepaymentPlotAdded(account, podIndex, podAmount); - } - } - } -} diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 3e8ec06c..1ed18b6b 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -7,8 +7,8 @@ const { } = require("../../utils/read.js"); // EIP-7987 tx gas limit is 16,777,216 (2^24) -// ~70,600 gas per plot, with 95% safety margin: floor(16,777,216 * 0.95 / 70,600) = 225 -const MAX_PLOTS_PER_ACCOUNT_PER_TX = 200; +// ~70,600 gas per plot, with 65% safety margin: floor(16,777,216 * 0.65 / 70,600) = ~150 +const MAX_PLOTS_PER_ACCOUNT_PER_TX = 150; /** * Populates the beanstalk field by reading data from beanstalkPlots.json diff --git a/scripts/beanstalkShipments/simulateProductionBatches.js b/scripts/beanstalkShipments/simulateProductionBatches.js index 054eb510..2f422060 100644 --- a/scripts/beanstalkShipments/simulateProductionBatches.js +++ b/scripts/beanstalkShipments/simulateProductionBatches.js @@ -15,8 +15,8 @@ const { splitEntriesIntoChunksOptimized, splitWhaleAccounts } = require("../../u const CONFIG = { EIP_7987_TX_GAS_LIMIT: 16_777_216, // 2^24 - SAFE_GAS_MARGIN: 0.95, - MAX_PLOTS_PER_ACCOUNT_PER_TX: 200, // ~14M gas, safely under EIP-7987 limit + SAFE_GAS_MARGIN: 0.65, + MAX_PLOTS_PER_ACCOUNT_PER_TX: 150, // ~10.6M gas, safely under EIP-7987 limit TARGET_ENTRIES_PER_CHUNK: 300, PLOTS_DATA_PATH: "./scripts/beanstalkShipments/data/beanstalkPlots.json" }; @@ -48,11 +48,20 @@ async function main() { console.log(` Chunks created: ${chunks.length}`); console.log(); - console.log("4. Deploying mock contract..."); - const MockContract = await ethers.getContractFactory("MockTempRepaymentFieldFacet"); - const testContract = await MockContract.deploy(); - await testContract.deployed(); - console.log(` Contract: ${testContract.address}`); + console.log("4. Deploying contract..."); + const REPAYMENT_FIELD_POPULATOR = "0xc4c66c8b199443a8deA5939ce175C3592e349791"; + const Contract = await ethers.getContractFactory("TempRepaymentFieldFacet"); + const deployedContract = await Contract.deploy(); + await deployedContract.deployed(); + + // Impersonate the populator address and fund it for gas + await ethers.provider.send("hardhat_impersonateAccount", [REPAYMENT_FIELD_POPULATOR]); + await ethers.provider.send("hardhat_setBalance", [REPAYMENT_FIELD_POPULATOR, "0x56BC75E2D63100000"]); // 100 ETH + const populatorSigner = await ethers.getSigner(REPAYMENT_FIELD_POPULATOR); + const testContract = deployedContract.connect(populatorSigner); + + console.log(` Contract: ${deployedContract.address}`); + console.log(` Populator: ${REPAYMENT_FIELD_POPULATOR}`); console.log(); console.log("5. Running chunk simulations..."); From 1541ad007700add724859a48715672bf46111bd8 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 4 Feb 2026 12:19:39 -0500 Subject: [PATCH 238/270] fix(field): require caller ownership and cancel listings on combinePlots - Add authorization check: caller must own the plots being combined - Cancel any existing pod listings before deleting combined plots - Remove permissionless access comment from natspec This prevents orphaned marketplace listings when plots are combined and ensures only the plot owner can trigger the combine operation. Co-Authored-By: Claude Opus 4.5 --- contracts/beanstalk/facets/field/FieldFacet.sol | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 195236a2..4d4fc802 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -590,7 +590,6 @@ contract FieldFacet is Invariable, ReentrancyGuard { * @param fieldId The field ID containing the plots * @param plotIndexes Array of adjacent plot indexes to combine (must be sorted and consecutive) * @dev Plots must be adjacent: plot[i].index + plot[i].pods == plot[i+1].index - * Any account can combine any other account's adjacent plots */ function combinePlots( address account, @@ -598,6 +597,7 @@ contract FieldFacet is Invariable, ReentrancyGuard { uint256[] calldata plotIndexes ) external payable fundsSafu noSupplyChange noNetFlow nonReentrant { require(plotIndexes.length >= 2, "Field: Need at least 2 plots to combine"); + require(LibTractor._user() == account, "Field: Caller must own plots"); // initialize total pods with the first plot uint256 totalPods = s.accts[account].fields[fieldId].plots[plotIndexes[0]]; @@ -615,6 +615,11 @@ contract FieldFacet is Invariable, ReentrancyGuard { totalPods += currentPods; expectedNextStart = plotIndexes[i] + currentPods; + // cancel pod listing if one exists for this plot + if (s.sys.podListings[fieldId][plotIndexes[i]] != bytes32(0)) { + LibMarket._cancelPodListing(account, fieldId, plotIndexes[i]); + } + // delete subsequent plot, plotIndex and piIndex mapping entry delete s.accts[account].fields[fieldId].plots[plotIndexes[i]]; LibDibbler.removePlotIndexFromAccount(account, fieldId, plotIndexes[i]); From 52da5bb4881b14d48abf50e2207048d0d8e6bfe7 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 4 Feb 2026 12:22:11 -0500 Subject: [PATCH 239/270] test(field): update combinePlots tests for ownership requirement - Add vm.prank(farmers[0]) before combinePlots calls - Add test_combinePlotsUnauthorized to verify auth check Co-Authored-By: Claude Opus 4.5 --- test/foundry/field/Field.t.sol | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/test/foundry/field/Field.t.sol b/test/foundry/field/Field.t.sol index 54667563..1db7a31a 100644 --- a/test/foundry/field/Field.t.sol +++ b/test/foundry/field/Field.t.sol @@ -689,6 +689,7 @@ contract FieldTest is TestHelper { } assertEq(plots.length, 10); // combine all plots into one + vm.prank(farmers[0]); bs.combinePlots(farmers[0], activeField, plotIndexes); // assert user has 1 plot @@ -733,6 +734,7 @@ contract FieldTest is TestHelper { // try to combine plots, expect revert since plots are not adjacent uint256 activeField = bs.activeField(); + vm.prank(farmers[0]); vm.expectRevert("Field: Plots to combine not adjacent"); bs.combinePlots(farmers[0], activeField, account1PlotIndexes); @@ -741,6 +743,7 @@ contract FieldTest is TestHelper { adjacentPlotIndexes[0] = account1PlotIndexes[0]; adjacentPlotIndexes[1] = account1PlotIndexes[1]; adjacentPlotIndexes[2] = account1PlotIndexes[2]; + vm.prank(farmers[0]); bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); // assert user has 3 plots (1 from the 3 merged, 2 from the original) assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 3); @@ -756,6 +759,7 @@ contract FieldTest is TestHelper { adjacentPlotIndexes = new uint256[](2); adjacentPlotIndexes[0] = account1PlotIndexes[3]; adjacentPlotIndexes[1] = account1PlotIndexes[4]; + vm.prank(farmers[0]); bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); // assert user has 2 plots (1 from the 2 merged, 1 from the 3 original merged) assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 2); @@ -810,6 +814,7 @@ contract FieldTest is TestHelper { assertTrue(!isArrayOrdered(reorderedIndexes), " New plot indexes should be unordered"); // Combine plots using original indexes (irrelevant of plotIndexes order in storage) + vm.prank(farmers[0]); bs.combinePlots(farmers[0], activeField, originalPlotIndexes); // Verify merge succeeded - should have only 1 plot left @@ -831,6 +836,23 @@ contract FieldTest is TestHelper { assertEq(totalPodsAfter, totalPodsBefore); } + /** + * @notice Tests that combining plots requires caller to be the plot owner + */ + function test_combinePlotsUnauthorized() public { + uint256 activeField = bs.activeField(); + mintTokensToUser(farmers[0], BEAN, 1000e6); + uint256[] memory plotIndexes = setUpMultipleConsecutiveAccountPlots(farmers[0], 1000e6, 3); + + // Farmer 1 tries to combine farmer 0's plots - should fail + vm.prank(farmers[1]); + vm.expectRevert("Field: Caller must own plots"); + bs.combinePlots(farmers[0], activeField, plotIndexes); + + // Verify plots are unchanged + assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 3); + } + /** * @dev Creates multiple consecutive plots for an account of size totalSoil/sowCount */ From e36d552bc29fe4ddfc7b71105c101988c56d88b5 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 4 Feb 2026 13:01:34 -0500 Subject: [PATCH 240/270] refactor(field): remove redundant account param from combinePlots Since caller must own the plots, derive account from LibTractor._user() instead of requiring it as a parameter. - Remove account parameter from combinePlots function signature - Update IMockFBeanstalk interface - Update tests to use new signature - Update error message to "Field: Plot not owned by caller" Co-Authored-By: Claude Opus 4.5 --- contracts/beanstalk/facets/field/FieldFacet.sol | 11 +++++------ contracts/interfaces/IMockFBeanstalk.sol | 1 - test/foundry/field/Field.t.sol | 14 +++++++------- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index 4d4fc802..c7ea08fb 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -585,29 +585,28 @@ contract FieldFacet is Invariable, ReentrancyGuard { } /** - * @notice Combines an account's adjacent plots. - * @param account The account that owns the plots to combine + * @notice Combines the caller's adjacent plots. * @param fieldId The field ID containing the plots * @param plotIndexes Array of adjacent plot indexes to combine (must be sorted and consecutive) * @dev Plots must be adjacent: plot[i].index + plot[i].pods == plot[i+1].index */ function combinePlots( - address account, uint256 fieldId, uint256[] calldata plotIndexes ) external payable fundsSafu noSupplyChange noNetFlow nonReentrant { require(plotIndexes.length >= 2, "Field: Need at least 2 plots to combine"); - require(LibTractor._user() == account, "Field: Caller must own plots"); + + address account = LibTractor._user(); // initialize total pods with the first plot uint256 totalPods = s.accts[account].fields[fieldId].plots[plotIndexes[0]]; - require(totalPods > 0, "Field: Plot to combine not owned by account"); + require(totalPods > 0, "Field: Plot not owned by caller"); // track the expected next start position to avoid querying deleted plots uint256 expectedNextStart = plotIndexes[0] + totalPods; for (uint256 i = 1; i < plotIndexes.length; i++) { uint256 currentPods = s.accts[account].fields[fieldId].plots[plotIndexes[i]]; - require(currentPods > 0, "Field: Plot to combine not owned by account"); + require(currentPods > 0, "Field: Plot not owned by caller"); // check adjacency: expected next start == current plot start require(expectedNextStart == plotIndexes[i], "Field: Plots to combine not adjacent"); diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index 39d37adb..e20415d0 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1237,7 +1237,6 @@ interface IMockFBeanstalk { ) external view returns (Plot[] memory plots); function combinePlots( - address account, uint256 fieldId, uint256[] calldata plotIndexes ) external payable; diff --git a/test/foundry/field/Field.t.sol b/test/foundry/field/Field.t.sol index 1db7a31a..60f5848c 100644 --- a/test/foundry/field/Field.t.sol +++ b/test/foundry/field/Field.t.sol @@ -690,7 +690,7 @@ contract FieldTest is TestHelper { assertEq(plots.length, 10); // combine all plots into one vm.prank(farmers[0]); - bs.combinePlots(farmers[0], activeField, plotIndexes); + bs.combinePlots(activeField, plotIndexes); // assert user has 1 plot plots = bs.getPlotsFromAccount(farmers[0], activeField); @@ -736,7 +736,7 @@ contract FieldTest is TestHelper { uint256 activeField = bs.activeField(); vm.prank(farmers[0]); vm.expectRevert("Field: Plots to combine not adjacent"); - bs.combinePlots(farmers[0], activeField, account1PlotIndexes); + bs.combinePlots(activeField, account1PlotIndexes); // merge adjacent plots in pairs (indexes 1-3) uint256[] memory adjacentPlotIndexes = new uint256[](3); @@ -744,7 +744,7 @@ contract FieldTest is TestHelper { adjacentPlotIndexes[1] = account1PlotIndexes[1]; adjacentPlotIndexes[2] = account1PlotIndexes[2]; vm.prank(farmers[0]); - bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); + bs.combinePlots(activeField, adjacentPlotIndexes); // assert user has 3 plots (1 from the 3 merged, 2 from the original) assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 3); // assert first plot index is 0 after merge @@ -760,7 +760,7 @@ contract FieldTest is TestHelper { adjacentPlotIndexes[0] = account1PlotIndexes[3]; adjacentPlotIndexes[1] = account1PlotIndexes[4]; vm.prank(farmers[0]); - bs.combinePlots(farmers[0], activeField, adjacentPlotIndexes); + bs.combinePlots(activeField, adjacentPlotIndexes); // assert user has 2 plots (1 from the 2 merged, 1 from the 3 original merged) assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 2); // assert first plot index remains the same after 2nd merge @@ -815,7 +815,7 @@ contract FieldTest is TestHelper { // Combine plots using original indexes (irrelevant of plotIndexes order in storage) vm.prank(farmers[0]); - bs.combinePlots(farmers[0], activeField, originalPlotIndexes); + bs.combinePlots(activeField, originalPlotIndexes); // Verify merge succeeded - should have only 1 plot left assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 1); @@ -846,8 +846,8 @@ contract FieldTest is TestHelper { // Farmer 1 tries to combine farmer 0's plots - should fail vm.prank(farmers[1]); - vm.expectRevert("Field: Caller must own plots"); - bs.combinePlots(farmers[0], activeField, plotIndexes); + vm.expectRevert("Field: Plot not owned by caller"); + bs.combinePlots(activeField, plotIndexes); // Verify plots are unchanged assertEq(bs.getPlotIndexesLengthFromAccount(farmers[0], activeField), 3); From 69ea9c0d46c9cfc607d1125065991ac13b8ed61f Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 4 Feb 2026 18:03:05 +0000 Subject: [PATCH 241/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- contracts/interfaces/IMockFBeanstalk.sol | 5 +- yarn.lock | 17281 +++++++++------------ 2 files changed, 7275 insertions(+), 10011 deletions(-) diff --git a/contracts/interfaces/IMockFBeanstalk.sol b/contracts/interfaces/IMockFBeanstalk.sol index e20415d0..e1d4bc0e 100644 --- a/contracts/interfaces/IMockFBeanstalk.sol +++ b/contracts/interfaces/IMockFBeanstalk.sol @@ -1236,10 +1236,7 @@ interface IMockFBeanstalk { uint256 fieldId ) external view returns (Plot[] memory plots); - function combinePlots( - uint256 fieldId, - uint256[] calldata plotIndexes - ) external payable; + function combinePlots(uint256 fieldId, uint256[] calldata plotIndexes) external payable; function reorderPlotIndexes( uint256[] memory newPlotIndexes, diff --git a/yarn.lock b/yarn.lock index 33082446..4406095d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1,10011 +1,7278 @@ -# This file is generated by running "yarn install" inside your project. -# Manual changes might be lost - proceed with caution! - -__metadata: - version: 8 - cacheKey: 10c0 - -"@aws-crypto/sha256-js@npm:1.2.2": - version: 1.2.2 - resolution: "@aws-crypto/sha256-js@npm:1.2.2" - dependencies: - "@aws-crypto/util": "npm:^1.2.2" - "@aws-sdk/types": "npm:^3.1.0" - tslib: "npm:^1.11.1" - checksum: 10c0/f4e8593cfbc48591413f00c744569b21e5ed5fab0e27fa4b59c517f2024ca4f46fab7b3874f2a207ceeef8feefc22d143a82d6c6bfe5303ea717f579d8d7ad0a - languageName: node - linkType: hard - -"@aws-crypto/util@npm:^1.2.2": - version: 1.2.2 - resolution: "@aws-crypto/util@npm:1.2.2" - dependencies: - "@aws-sdk/types": "npm:^3.1.0" - "@aws-sdk/util-utf8-browser": "npm:^3.0.0" - tslib: "npm:^1.11.1" - checksum: 10c0/ade8843bf13529b1854f64d6bbb23f30b46330743c8866adfd2105d830e30ce837a868eaaf41c4c2381d27e9d225d3a0a7558ee1eee022f0192916e33bfb654c - languageName: node - linkType: hard - -"@aws-sdk/types@npm:^3.1.0": - version: 3.968.0 - resolution: "@aws-sdk/types@npm:3.968.0" - dependencies: - "@smithy/types": "npm:^4.11.0" - tslib: "npm:^2.6.2" - checksum: 10c0/a2b2a21bfd123ed160e3551d6453fb7d99fb2b9b2f597eead81cdfe6e7f76a4522acbe746c18e7fba94ac2d9a0aec1fa808e9e9fbdedb1cd874135fece5f3ca9 - languageName: node - linkType: hard - -"@aws-sdk/util-utf8-browser@npm:^3.0.0": - version: 3.259.0 - resolution: "@aws-sdk/util-utf8-browser@npm:3.259.0" - dependencies: - tslib: "npm:^2.3.1" - checksum: 10c0/ff56ff252c0ea22b760b909ba5bbe9ca59a447066097e73b1e2ae50a6d366631ba560c373ec4e83b3e225d16238eeaf8def210fdbf135070b3dd3ceb1cc2ef9a - languageName: node - linkType: hard - -"@babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.23.2": - version: 7.28.6 - resolution: "@babel/runtime@npm:7.28.6" - checksum: 10c0/358cf2429992ac1c466df1a21c1601d595c46930a13c1d4662fde908d44ee78ec3c183aaff513ecb01ef8c55c3624afe0309eeeb34715672dbfadb7feedb2c0d - languageName: node - linkType: hard - -"@beanstalk/protocol@workspace:.": - version: 0.0.0-use.local - resolution: "@beanstalk/protocol@workspace:." - dependencies: - "@beanstalk/wells": "npm:0.4.1" - "@beanstalk/wells1.2": "npm:@beanstalk/wells@1.2.0" - "@ethereum-waffle/chai": "npm:4.0.10" - "@nomicfoundation/hardhat-foundry": "npm:1.2.0" - "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.10" - "@nomiclabs/hardhat-ethers": "npm:^2.2.1" - "@nomiclabs/hardhat-etherscan": "npm:@pinto-org/hardhat-etherscan@3.1.8-pinto.1" - "@nomiclabs/hardhat-waffle": "npm:^2.0.3" - "@openzeppelin/contracts": "npm:5.0.2" - "@openzeppelin/contracts-upgradeable": "npm:5.0.2" - "@openzeppelin/hardhat-upgrades": "npm:^1.17.0" - "@openzeppelin/merkle-tree": "npm:1.0.7" - "@prb/math": "npm:v2.5.0" - "@types/cors": "npm:^2.8.17" - "@types/express": "npm:^5.0.0" - "@uniswap/v3-core": "npm:v1.0.2-solc-0.8-simulate" - axios: "npm:1.6.7" - bignumber: "npm:^1.1.0" - chai: "npm:^4.4.1" - cors: "npm:^2.8.5" - csv-parser: "npm:3.0.0" - csvtojson: "npm:^2.0.10" - dotenv: "npm:^10.0.0" - eslint: "npm:^9.12.0" - eth-gas-reporter: "npm:0.2.25" - ethereum-waffle: "npm:4.0.10" - ethers: "npm:5.7.2" - express: "npm:^4.21.1" - forge-std: "npm:^1.1.2" - ganache-cli: "npm:^6.12.2" - glob: "npm:10.3.0" - hardhat: "npm:2.26.0" - hardhat-contract-sizer: "npm:^2.8.0" - hardhat-gas-reporter: "npm:^1.0.4" - hardhat-tracer: "npm:^1.1.0-rc.9" - json-bigint: "npm:^1.0.0" - keccak256: "npm:^1.0.6" - mathjs: "npm:^11.0.1" - merkletreejs: "npm:^0.2.31" - prettier: "npm:^3.5.3" - prettier-plugin-solidity: "npm:^1.4.3" - readline-sync: "npm:^1.4.10" - ts-node: "npm:^10.9.2" - typescript: "npm:^5.6.3" - uniswap: "npm:^0.0.1" - languageName: unknown - linkType: soft +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@aws-crypto/sha256-js@1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-1.2.2.tgz#02acd1a1fda92896fc5a28ec7c6e164644ea32fc" + integrity sha512-Nr1QJIbW/afYYGzYvrF70LtaHrIRtd4TNAglX8BvlfxJLZ45SAmueIKYl5tWoNBPzp65ymXGFK0Bb1vZUpuc9g== + dependencies: + "@aws-crypto/util" "^1.2.2" + "@aws-sdk/types" "^3.1.0" + tslib "^1.11.1" + +"@aws-crypto/util@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@aws-crypto/util/-/util-1.2.2.tgz#b28f7897730eb6538b21c18bd4de22d0ea09003c" + integrity sha512-H8PjG5WJ4wz0UXAFXeJjWCW1vkvIJ3qUUD+rGRwJ2/hj+xT58Qle2MTql/2MGzkU+1JLAFuR6aJpLAjHwhmwwg== + dependencies: + "@aws-sdk/types" "^3.1.0" + "@aws-sdk/util-utf8-browser" "^3.0.0" + tslib "^1.11.1" + +"@aws-sdk/types@^3.1.0": + version "3.973.1" + resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.973.1.tgz#1b2992ec6c8380c3e74c9bd2c74703e9a807d6e0" + integrity sha512-DwHBiMNOB468JiX6+i34c+THsKHErYUdNQ3HexeXZvVn4zouLjgaS4FejiGSi2HyBuzuyHg7SuOPmjSvoU9NRg== + dependencies: + "@smithy/types" "^4.12.0" + tslib "^2.6.2" + +"@aws-sdk/util-utf8-browser@^3.0.0": + version "3.259.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz#3275a6f5eb334f96ca76635b961d3c50259fd9ff" + integrity sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw== + dependencies: + tslib "^2.3.1" + +"@babel/runtime@^7.18.6", "@babel/runtime@^7.23.2": + version "7.28.6" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.6.tgz#d267a43cb1836dc4d182cce93ae75ba954ef6d2b" + integrity sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA== "@beanstalk/wells1.2@npm:@beanstalk/wells@1.2.0": - version: 1.2.0 - resolution: "@beanstalk/wells@npm:1.2.0" - checksum: 10c0/941d028026b47b3071df90d0725f7d7899fe6f7ae22d6bcc7ec1e9b245f37275bd6e58eef93856f6078d990b08e03463ee1cc0082eec4f736e064f1784f06b72 - languageName: node - linkType: hard - -"@beanstalk/wells@npm:0.4.1": - version: 0.4.1 - resolution: "@beanstalk/wells@npm:0.4.1" - dependencies: - "@nomiclabs/hardhat-ethers": "npm:^2.2.3" - hardhat: "npm:^2.17.1" - hardhat-preprocessor: "npm:^0.1.5" - checksum: 10c0/f1ccf83ec2a64f78d8edbbf713de03d9799265473e8bd5b0fda425c6b63ce643c1104290726adcb0b6b3efb8624015ab49958ff00eecfdd919cfd76ca5e7d258 - languageName: node - linkType: hard - -"@bytecodealliance/preview2-shim@npm:0.17.0": - version: 0.17.0 - resolution: "@bytecodealliance/preview2-shim@npm:0.17.0" - checksum: 10c0/a2cb46dd0e14319ec4c6b89cc6e629884a98120c70fc831131bc0941e03b8a40b35cd7d5bf4440653ac3658a73484a0be0a7066bfb4d2c43adc122488279c10b - languageName: node - linkType: hard - -"@colors/colors@npm:1.5.0": - version: 1.5.0 - resolution: "@colors/colors@npm:1.5.0" - checksum: 10c0/eb42729851adca56d19a08e48d5a1e95efd2a32c55ae0323de8119052be0510d4b7a1611f2abcbf28c044a6c11e6b7d38f99fccdad7429300c37a8ea5fb95b44 - languageName: node - linkType: hard - -"@cspotcode/source-map-support@npm:^0.8.0": - version: 0.8.1 - resolution: "@cspotcode/source-map-support@npm:0.8.1" - dependencies: - "@jridgewell/trace-mapping": "npm:0.3.9" - checksum: 10c0/05c5368c13b662ee4c122c7bfbe5dc0b613416672a829f3e78bc49a357a197e0218d6e74e7c66cfcd04e15a179acab080bd3c69658c9fbefd0e1ccd950a07fc6 - languageName: node - linkType: hard - -"@eslint-community/eslint-utils@npm:^4.8.0": - version: 4.9.1 - resolution: "@eslint-community/eslint-utils@npm:4.9.1" - dependencies: - eslint-visitor-keys: "npm:^3.4.3" - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: 10c0/dc4ab5e3e364ef27e33666b11f4b86e1a6c1d7cbf16f0c6ff87b1619b3562335e9201a3d6ce806221887ff780ec9d828962a290bb910759fd40a674686503f02 - languageName: node - linkType: hard - -"@eslint-community/regexpp@npm:^4.12.1": - version: 4.12.2 - resolution: "@eslint-community/regexpp@npm:4.12.2" - checksum: 10c0/fddcbc66851b308478d04e302a4d771d6917a0b3740dc351513c0da9ca2eab8a1adf99f5e0aa7ab8b13fa0df005c81adeee7e63a92f3effd7d367a163b721c2d - languageName: node - linkType: hard - -"@eslint/config-array@npm:^0.21.1": - version: 0.21.1 - resolution: "@eslint/config-array@npm:0.21.1" - dependencies: - "@eslint/object-schema": "npm:^2.1.7" - debug: "npm:^4.3.1" - minimatch: "npm:^3.1.2" - checksum: 10c0/2f657d4edd6ddcb920579b72e7a5b127865d4c3fb4dda24f11d5c4f445a93ca481aebdbd6bf3291c536f5d034458dbcbb298ee3b698bc6c9dd02900fe87eec3c - languageName: node - linkType: hard - -"@eslint/config-helpers@npm:^0.4.2": - version: 0.4.2 - resolution: "@eslint/config-helpers@npm:0.4.2" - dependencies: - "@eslint/core": "npm:^0.17.0" - checksum: 10c0/92efd7a527b2d17eb1a148409d71d80f9ac160b565ac73ee092252e8bf08ecd08670699f46b306b94f13d22e88ac88a612120e7847570dd7cdc72f234d50dcb4 - languageName: node - linkType: hard - -"@eslint/core@npm:^0.17.0": - version: 0.17.0 - resolution: "@eslint/core@npm:0.17.0" - dependencies: - "@types/json-schema": "npm:^7.0.15" - checksum: 10c0/9a580f2246633bc752298e7440dd942ec421860d1946d0801f0423830e67887e4aeba10ab9a23d281727a978eb93d053d1922a587d502942a713607f40ed704e - languageName: node - linkType: hard - -"@eslint/eslintrc@npm:^3.3.1": - version: 3.3.3 - resolution: "@eslint/eslintrc@npm:3.3.3" - dependencies: - ajv: "npm:^6.12.4" - debug: "npm:^4.3.2" - espree: "npm:^10.0.1" - globals: "npm:^14.0.0" - ignore: "npm:^5.2.0" - import-fresh: "npm:^3.2.1" - js-yaml: "npm:^4.1.1" - minimatch: "npm:^3.1.2" - strip-json-comments: "npm:^3.1.1" - checksum: 10c0/532c7acc7ddd042724c28b1f020bd7bf148fcd4653bb44c8314168b5f772508c842ce4ee070299cac51c5c5757d2124bdcfcef5551c8c58ff9986e3e17f2260d - languageName: node - linkType: hard - -"@eslint/js@npm:9.39.2": - version: 9.39.2 - resolution: "@eslint/js@npm:9.39.2" - checksum: 10c0/00f51c52b04ac79faebfaa65a9652b2093b9c924e945479f1f3945473f78aee83cbc76c8d70bbffbf06f7024626575b16d97b66eab16182e1d0d39daff2f26f5 - languageName: node - linkType: hard - -"@eslint/object-schema@npm:^2.1.7": - version: 2.1.7 - resolution: "@eslint/object-schema@npm:2.1.7" - checksum: 10c0/936b6e499853d1335803f556d526c86f5fe2259ed241bc665000e1d6353828edd913feed43120d150adb75570cae162cf000b5b0dfc9596726761c36b82f4e87 - languageName: node - linkType: hard - -"@eslint/plugin-kit@npm:^0.4.1": - version: 0.4.1 - resolution: "@eslint/plugin-kit@npm:0.4.1" - dependencies: - "@eslint/core": "npm:^0.17.0" - levn: "npm:^0.4.1" - checksum: 10c0/51600f78b798f172a9915dffb295e2ffb44840d583427bc732baf12ecb963eb841b253300e657da91d890f4b323d10a1bd12934bf293e3018d8bb66fdce5217b - languageName: node - linkType: hard - -"@ethereum-waffle/chai@npm:4.0.10": - version: 4.0.10 - resolution: "@ethereum-waffle/chai@npm:4.0.10" - dependencies: - "@ethereum-waffle/provider": "npm:4.0.5" - debug: "npm:^4.3.4" - json-bigint: "npm:^1.0.0" - peerDependencies: - ethers: "*" - checksum: 10c0/3fa6e6e6a52aa804104ed4f4e3b25caaf8501c392a0421216b58d1aea5443684bae54297ea2666f30da4bfbead7f1ba004e1d4dc668a708c23614214410d2b30 - languageName: node - linkType: hard - -"@ethereum-waffle/compiler@npm:4.0.3": - version: 4.0.3 - resolution: "@ethereum-waffle/compiler@npm:4.0.3" - dependencies: - "@resolver-engine/imports": "npm:^0.3.3" - "@resolver-engine/imports-fs": "npm:^0.3.3" - "@typechain/ethers-v5": "npm:^10.0.0" - "@types/mkdirp": "npm:^0.5.2" - "@types/node-fetch": "npm:^2.6.1" - mkdirp: "npm:^0.5.1" - node-fetch: "npm:^2.6.7" - peerDependencies: - ethers: "*" - solc: "*" - typechain: ^8.0.0 - checksum: 10c0/52e936beb872060e1eecb4dbd6568652373c171156be2789044db536444b81dfc775d04b5b5abaffc5eaa9810656ec2a6cdf9c74c384241532457b58959b2147 - languageName: node - linkType: hard - -"@ethereum-waffle/ens@npm:4.0.3": - version: 4.0.3 - resolution: "@ethereum-waffle/ens@npm:4.0.3" - peerDependencies: - "@ensdomains/ens": ^0.4.4 - "@ensdomains/resolver": ^0.2.4 - ethers: "*" - checksum: 10c0/dc2db2748f708e375781170b07b018638bc925122e8ca1c555fcc8981804b2c48fb6a2cf98421db2713bc3a6ae34be7cfa63c0d2e58a3f6c4316bfe19c31ac11 - languageName: node - linkType: hard - -"@ethereum-waffle/mock-contract@npm:4.0.4": - version: 4.0.4 - resolution: "@ethereum-waffle/mock-contract@npm:4.0.4" - peerDependencies: - ethers: "*" - checksum: 10c0/ead6883a94c878989ec54775c21fb73f7db7172cebdad022bf703054b3edbcf0545bfd2ee8d58be96e0af82e3c884aa4f0ea60be5e5f68a1408bc0dabc25aa4a - languageName: node - linkType: hard - -"@ethereum-waffle/provider@npm:4.0.5": - version: 4.0.5 - resolution: "@ethereum-waffle/provider@npm:4.0.5" - dependencies: - "@ethereum-waffle/ens": "npm:4.0.3" - "@ganache/ethereum-options": "npm:0.1.4" - debug: "npm:^4.3.4" - ganache: "npm:7.4.3" - peerDependencies: - ethers: "*" - checksum: 10c0/4f591a194d1d9ecdb10e7d648d771620d4db31b74cc3102c6b3101d5915d70db3d8cc7dd2f034cc677bdc7f8f9b9cbaf0ca296b1deb63b2262f35603df65d947 - languageName: node - linkType: hard - -"@ethereumjs/block@npm:^3.5.0, @ethereumjs/block@npm:^3.6.0, @ethereumjs/block@npm:^3.6.2": - version: 3.6.3 - resolution: "@ethereumjs/block@npm:3.6.3" - dependencies: - "@ethereumjs/common": "npm:^2.6.5" - "@ethereumjs/tx": "npm:^3.5.2" - ethereumjs-util: "npm:^7.1.5" - merkle-patricia-tree: "npm:^4.2.4" - checksum: 10c0/9e2b92c3e6d511fb05fc519a7f6ee4c3fe8f5d59afe19a563d96da52e6ac532ff1c1db80d59161f7df9193348b57c006304d97e0f2fa3ecc884cd4dc58068e85 - languageName: node - linkType: hard - -"@ethereumjs/blockchain@npm:^5.5.0": - version: 5.5.3 - resolution: "@ethereumjs/blockchain@npm:5.5.3" - dependencies: - "@ethereumjs/block": "npm:^3.6.2" - "@ethereumjs/common": "npm:^2.6.4" - "@ethereumjs/ethash": "npm:^1.1.0" - debug: "npm:^4.3.3" - ethereumjs-util: "npm:^7.1.5" - level-mem: "npm:^5.0.1" - lru-cache: "npm:^5.1.1" - semaphore-async-await: "npm:^1.5.1" - checksum: 10c0/8d26b22c0e8df42fc1aaa6cf8b03bcc96b7557075f18c790a38271acbb92d582b9fc0f2bf738289eba6a76efd3b092cd2be629e7b6c7d8ce1a44dd815fbb1609 - languageName: node - linkType: hard - -"@ethereumjs/common@npm:2.6.0": - version: 2.6.0 - resolution: "@ethereumjs/common@npm:2.6.0" - dependencies: - crc-32: "npm:^1.2.0" - ethereumjs-util: "npm:^7.1.3" - checksum: 10c0/ab2dfc8420d3c0e558f1d51639a20450b198437b9cf81ad8fa3ef81a016145fae1e10a5d6d1fa3ae39c53f1726f3efa27a5efd3c136d95c03fc0364a86493c86 - languageName: node - linkType: hard - -"@ethereumjs/common@npm:^2.6.0, @ethereumjs/common@npm:^2.6.4, @ethereumjs/common@npm:^2.6.5": - version: 2.6.5 - resolution: "@ethereumjs/common@npm:2.6.5" - dependencies: - crc-32: "npm:^1.2.0" - ethereumjs-util: "npm:^7.1.5" - checksum: 10c0/065fc993e390631753e9cbc63987954338c42192d227e15a40d9a074eda9e9597916dca51970b59230c7d3b1294c5956258fe6ea29000b5555bf24fe3ff522c5 - languageName: node - linkType: hard - -"@ethereumjs/ethash@npm:^1.1.0": - version: 1.1.0 - resolution: "@ethereumjs/ethash@npm:1.1.0" - dependencies: - "@ethereumjs/block": "npm:^3.5.0" - "@types/levelup": "npm:^4.3.0" - buffer-xor: "npm:^2.0.1" - ethereumjs-util: "npm:^7.1.1" - miller-rabin: "npm:^4.0.0" - checksum: 10c0/0166fb8600578158d8e150991b968160b8b7650ec8bd9425e55a0702ec4f80a8082303d7203b174360fa29d692ab181bf6d9ff4b8a27e38ee57080352fb3119f - languageName: node - linkType: hard - -"@ethereumjs/rlp@npm:^4.0.1": - version: 4.0.1 - resolution: "@ethereumjs/rlp@npm:4.0.1" - bin: - rlp: bin/rlp - checksum: 10c0/78379f288e9d88c584c2159c725c4a667a9742981d638bad760ed908263e0e36bdbd822c0a902003e0701195fd1cbde7adad621cd97fdfbf552c45e835ce022c - languageName: node - linkType: hard - -"@ethereumjs/rlp@npm:^5.0.2": - version: 5.0.2 - resolution: "@ethereumjs/rlp@npm:5.0.2" - bin: - rlp: bin/rlp.cjs - checksum: 10c0/56162eaee96dd429f0528a9e51b453398546d57f26057b3e188f2aa09efe8bd430502971c54238ca9cc42af41b0a3f137cf67b9e020d52bc83caca043d64911b - languageName: node - linkType: hard - -"@ethereumjs/tx@npm:3.4.0": - version: 3.4.0 - resolution: "@ethereumjs/tx@npm:3.4.0" - dependencies: - "@ethereumjs/common": "npm:^2.6.0" - ethereumjs-util: "npm:^7.1.3" - checksum: 10c0/50bdac23480d742a3498b41b5ffe2c8f72429c9511fbf4846ca4c69756312dce4dd4e6e1253a90519b5ed20e71c346d13f6f0084de42f94268e481392ee9cf43 - languageName: node - linkType: hard - -"@ethereumjs/tx@npm:^3.4.0, @ethereumjs/tx@npm:^3.5.2": - version: 3.5.2 - resolution: "@ethereumjs/tx@npm:3.5.2" - dependencies: - "@ethereumjs/common": "npm:^2.6.4" - ethereumjs-util: "npm:^7.1.5" - checksum: 10c0/768cbe0834eef15f4726b44f2a4c52b6180884d90e58108d5251668c7e89d58572de7375d5e63be9d599e79c09259e643837a2afe876126b09c47ac35386cc20 - languageName: node - linkType: hard - -"@ethereumjs/util@npm:^8.1.0": - version: 8.1.0 - resolution: "@ethereumjs/util@npm:8.1.0" - dependencies: - "@ethereumjs/rlp": "npm:^4.0.1" - ethereum-cryptography: "npm:^2.0.0" - micro-ftch: "npm:^0.3.1" - checksum: 10c0/4e6e0449236f66b53782bab3b387108f0ddc050835bfe1381c67a7c038fea27cb85ab38851d98b700957022f0acb6e455ca0c634249cfcce1a116bad76500160 - languageName: node - linkType: hard - -"@ethereumjs/util@npm:^9.1.0": - version: 9.1.0 - resolution: "@ethereumjs/util@npm:9.1.0" - dependencies: - "@ethereumjs/rlp": "npm:^5.0.2" - ethereum-cryptography: "npm:^2.2.1" - checksum: 10c0/7b55c79d90e55da873037b8283c37b61164f1712b194e2783bdb0a3401ff0999dc9d1404c7051589f71fb79e8aeb6952ec43ede21dd0028d7d9b1c07abcfff27 - languageName: node - linkType: hard - -"@ethereumjs/vm@npm:5.6.0": - version: 5.6.0 - resolution: "@ethereumjs/vm@npm:5.6.0" - dependencies: - "@ethereumjs/block": "npm:^3.6.0" - "@ethereumjs/blockchain": "npm:^5.5.0" - "@ethereumjs/common": "npm:^2.6.0" - "@ethereumjs/tx": "npm:^3.4.0" - async-eventemitter: "npm:^0.2.4" - core-js-pure: "npm:^3.0.1" - debug: "npm:^2.2.0" - ethereumjs-util: "npm:^7.1.3" - functional-red-black-tree: "npm:^1.0.1" - mcl-wasm: "npm:^0.7.1" - merkle-patricia-tree: "npm:^4.2.2" - rustbn.js: "npm:~0.2.0" - checksum: 10c0/69498be5fee040dfd27e2f19f84092b83d7e32dc4461ea2d4e1c019fb5c1e9795977a59436d9316ff959b61cfd03d305150a9fca83a0380d27be860a093504cd - languageName: node - linkType: hard - -"@ethersproject/abi@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/abi@npm:5.7.0" - dependencies: - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/hash": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/7de51bf52ff03df2526546dacea6e74f15d4c5ef762d931552082b9600dcefd8e333599f02d7906ba89f7b7f48c45ab72cee76f397212b4f17fa9d9ff5615916 - languageName: node - linkType: hard - -"@ethersproject/abi@npm:5.8.0, @ethersproject/abi@npm:^5.0.0-beta.146, @ethersproject/abi@npm:^5.1.2, @ethersproject/abi@npm:^5.6.3, @ethersproject/abi@npm:^5.7.0, @ethersproject/abi@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/abi@npm:5.8.0" - dependencies: - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/hash": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/6b759247a2f43ecc1548647d0447d08de1e946dfc7e71bfb014fa2f749c1b76b742a1d37394660ebab02ff8565674b3593fdfa011e16a5adcfc87ca4d85af39c - languageName: node - linkType: hard - -"@ethersproject/abstract-provider@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/abstract-provider@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/networks": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - "@ethersproject/web": "npm:^5.7.0" - checksum: 10c0/a5708e2811b90ddc53d9318ce152511a32dd4771aa2fb59dbe9e90468bb75ca6e695d958bf44d13da684dc3b6aab03f63d425ff7591332cb5d7ddaf68dff7224 - languageName: node - linkType: hard - -"@ethersproject/abstract-provider@npm:5.8.0, @ethersproject/abstract-provider@npm:^5.7.0, @ethersproject/abstract-provider@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/abstract-provider@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/networks": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - "@ethersproject/web": "npm:^5.8.0" - checksum: 10c0/9c183da1d037b272ff2b03002c3d801088d0534f88985f4983efc5f3ebd59b05f04bc05db97792fe29ddf87eeba3c73416e5699615f183126f85f877ea6c8637 - languageName: node - linkType: hard - -"@ethersproject/abstract-signer@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/abstract-signer@npm:5.7.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - checksum: 10c0/e174966b3be17269a5974a3ae5eef6d15ac62ee8c300ceace26767f218f6bbf3de66f29d9a9c9ca300fa8551aab4c92e28d2cc772f5475fdeaa78d9b5be0e745 - languageName: node - linkType: hard - -"@ethersproject/abstract-signer@npm:5.8.0, @ethersproject/abstract-signer@npm:^5.7.0, @ethersproject/abstract-signer@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/abstract-signer@npm:5.8.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - checksum: 10c0/143f32d7cb0bc7064e45674d4a9dffdb90d6171425d20e8de9dc95765be960534bae7246ead400e6f52346624b66569d9585d790eedd34b0b6b7f481ec331cc2 - languageName: node - linkType: hard - -"@ethersproject/address@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/address@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/rlp": "npm:^5.7.0" - checksum: 10c0/db5da50abeaae8f6cf17678323e8d01cad697f9a184b0593c62b71b0faa8d7e5c2ba14da78a998d691773ed6a8eb06701f65757218e0eaaeb134e5c5f3e5a908 - languageName: node - linkType: hard - -"@ethersproject/address@npm:5.8.0, @ethersproject/address@npm:^5.0.2, @ethersproject/address@npm:^5.7.0, @ethersproject/address@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/address@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/rlp": "npm:^5.8.0" - checksum: 10c0/8bac8a4b567c75c1abc00eeca08c200de1a2d5cf76d595dc04fa4d7bff9ffa5530b2cdfc5e8656cfa8f6fa046de54be47620a092fb429830a8ddde410b9d50bc - languageName: node - linkType: hard - -"@ethersproject/base64@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/base64@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - checksum: 10c0/4f748cd82af60ff1866db699fbf2bf057feff774ea0a30d1f03ea26426f53293ea10cc8265cda1695301da61093bedb8cc0d38887f43ed9dad96b78f19d7337e - languageName: node - linkType: hard - -"@ethersproject/base64@npm:5.8.0, @ethersproject/base64@npm:^5.7.0, @ethersproject/base64@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/base64@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - checksum: 10c0/60ae6d1e2367d70f4090b717852efe62075442ae59aeac9bb1054fe8306a2de8ef0b0561e7fb4666ecb1f8efa1655d683dd240675c3a25d6fa867245525a63ca - languageName: node - linkType: hard - -"@ethersproject/basex@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/basex@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - checksum: 10c0/02304de77477506ad798eb5c68077efd2531624380d770ef4a823e631a288fb680107a0f9dc4a6339b2a0b0f5b06ee77f53429afdad8f950cde0f3e40d30167d - languageName: node - linkType: hard - -"@ethersproject/basex@npm:5.8.0, @ethersproject/basex@npm:^5.7.0, @ethersproject/basex@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/basex@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - checksum: 10c0/46a94ba9678fc458ab0bee4a0af9f659f1d3f5df5bb98485924fe8ecbd46eda37d81f95f882243d56f0f5efe051b0749163f5056e48ff836c5fba648754d4956 - languageName: node - linkType: hard - -"@ethersproject/bignumber@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/bignumber@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - bn.js: "npm:^5.2.1" - checksum: 10c0/14263cdc91a7884b141d9300f018f76f69839c47e95718ef7161b11d2c7563163096fee69724c5fa8ef6f536d3e60f1c605819edbc478383a2b98abcde3d37b2 - languageName: node - linkType: hard - -"@ethersproject/bignumber@npm:5.8.0, @ethersproject/bignumber@npm:^5.5.0, @ethersproject/bignumber@npm:^5.7.0, @ethersproject/bignumber@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/bignumber@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - bn.js: "npm:^5.2.1" - checksum: 10c0/8e87fa96999d59d0ab4c814c79e3a8354d2ba914dfa78cf9ee688f53110473cec0df0db2aaf9d447e84ab2dbbfca39979abac4f2dac69fef4d080f4cc3e29613 - languageName: node - linkType: hard - -"@ethersproject/bytes@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/bytes@npm:5.7.0" - dependencies: - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/07dd1f0341b3de584ef26c8696674ff2bb032f4e99073856fc9cd7b4c54d1d846cabe149e864be267934658c3ce799e5ea26babe01f83af0e1f06c51e5ac791f - languageName: node - linkType: hard - -"@ethersproject/bytes@npm:5.8.0, @ethersproject/bytes@npm:^5.7.0, @ethersproject/bytes@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/bytes@npm:5.8.0" - dependencies: - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/47ef798f3ab43b95dc74097b2c92365c919308ecabc3e34d9f8bf7f886fa4b99837ba5cf4dc8921baaaafe6899982f96b0e723b3fc49132c061f83d1ca3fed8b - languageName: node - linkType: hard - -"@ethersproject/constants@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/constants@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - checksum: 10c0/6df63ab753e152726b84595250ea722165a5744c046e317df40a6401f38556385a37c84dadf5b11ca651c4fb60f967046125369c57ac84829f6b30e69a096273 - languageName: node - linkType: hard - -"@ethersproject/constants@npm:5.8.0, @ethersproject/constants@npm:^5.7.0, @ethersproject/constants@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/constants@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - checksum: 10c0/374b3c2c6da24f8fef62e2316eae96faa462826c0774ef588cd7313ae7ddac8eb1bb85a28dad80123148be2ba0821c217c14ecfc18e2e683c72adc734b6248c9 - languageName: node - linkType: hard - -"@ethersproject/contracts@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/contracts@npm:5.7.0" - dependencies: - "@ethersproject/abi": "npm:^5.7.0" - "@ethersproject/abstract-provider": "npm:^5.7.0" - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - checksum: 10c0/97a10361dddaccfb3e9e20e24d071cfa570050adcb964d3452c5f7c9eaaddb4e145ec9cf928e14417948701b89e81d4907800e799a6083123e4d13a576842f41 - languageName: node - linkType: hard - -"@ethersproject/contracts@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/contracts@npm:5.8.0" - dependencies: - "@ethersproject/abi": "npm:^5.8.0" - "@ethersproject/abstract-provider": "npm:^5.8.0" - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - checksum: 10c0/49961b92334c4f2fab5f4da8f3119e97c1dc39cc8695e3043931757968213f5e732c00bf896193cf0186dcb33101dcd6efb70690dee0dd2cfbfd3843f55485aa - languageName: node - linkType: hard - -"@ethersproject/hash@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/hash@npm:5.7.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/base64": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/1a631dae34c4cf340dde21d6940dd1715fc7ae483d576f7b8ef9e8cb1d0e30bd7e8d30d4a7d8dc531c14164602323af2c3d51eb2204af18b2e15167e70c9a5ef - languageName: node - linkType: hard - -"@ethersproject/hash@npm:5.8.0, @ethersproject/hash@npm:^5.7.0, @ethersproject/hash@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/hash@npm:5.8.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/base64": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/72a287d4d70fae716827587339ffb449b8c23ef8728db6f8a661f359f7cb1e5ffba5b693c55e09d4e7162bf56af4a0e98a334784e0706d98102d1a5786241537 - languageName: node - linkType: hard - -"@ethersproject/hdnode@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/hdnode@npm:5.7.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/basex": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/pbkdf2": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/sha2": "npm:^5.7.0" - "@ethersproject/signing-key": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - "@ethersproject/wordlists": "npm:^5.7.0" - checksum: 10c0/36d5c13fe69b1e0a18ea98537bc560d8ba166e012d63faac92522a0b5f405eb67d8848c5aca69e2470f62743aaef2ac36638d9e27fd8c68f51506eb61479d51d - languageName: node - linkType: hard - -"@ethersproject/hdnode@npm:5.8.0, @ethersproject/hdnode@npm:^5.7.0, @ethersproject/hdnode@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/hdnode@npm:5.8.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/basex": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/pbkdf2": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/sha2": "npm:^5.8.0" - "@ethersproject/signing-key": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - "@ethersproject/wordlists": "npm:^5.8.0" - checksum: 10c0/da0ac7d60e76a76471be1f4f3bba3f28a24165dc3b63c6930a9ec24481e9f8b23936e5fc96363b3591cdfda4381d4623f25b06898b89bf5530b158cb5ea58fdd - languageName: node - linkType: hard - -"@ethersproject/json-wallets@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/json-wallets@npm:5.7.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/hdnode": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/pbkdf2": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/random": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - aes-js: "npm:3.0.0" - scrypt-js: "npm:3.0.1" - checksum: 10c0/f1a84d19ff38d3506f453abc4702107cbc96a43c000efcd273a056371363767a06a8d746f84263b1300266eb0c329fe3b49a9b39a37aadd016433faf9e15a4bb - languageName: node - linkType: hard - -"@ethersproject/json-wallets@npm:5.8.0, @ethersproject/json-wallets@npm:^5.7.0, @ethersproject/json-wallets@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/json-wallets@npm:5.8.0" - dependencies: - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/hdnode": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/pbkdf2": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/random": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - aes-js: "npm:3.0.0" - scrypt-js: "npm:3.0.1" - checksum: 10c0/6c5cac87bdfac9ac47bf6ac25168a85865dc02e398e97f83820568c568a8cb27cf13a3a5d482f71a2534c7d704a3faa46023bb7ebe8737872b376bec1b66c67b - languageName: node - linkType: hard - -"@ethersproject/keccak256@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/keccak256@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - js-sha3: "npm:0.8.0" - checksum: 10c0/3b1a91706ff11f5ab5496840b9c36cedca27db443186d28b94847149fd16baecdc13f6fc5efb8359506392f2aba559d07e7f9c1e17a63f9d5de9f8053cfcb033 - languageName: node - linkType: hard - -"@ethersproject/keccak256@npm:5.8.0, @ethersproject/keccak256@npm:^5.7.0, @ethersproject/keccak256@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/keccak256@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - js-sha3: "npm:0.8.0" - checksum: 10c0/cd93ac6a5baf842313cde7de5e6e2c41feeea800db9e82955f96e7f3462d2ac6a6a29282b1c9e93b84ce7c91eec02347043c249fd037d6051214275bfc7fe99f - languageName: node - linkType: hard - -"@ethersproject/logger@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/logger@npm:5.7.0" - checksum: 10c0/d03d460fb2d4a5e71c627b7986fb9e50e1b59a6f55e8b42a545b8b92398b961e7fd294bd9c3d8f92b35d0f6ff9d15aa14c95eab378f8ea194e943c8ace343501 - languageName: node - linkType: hard - -"@ethersproject/logger@npm:5.8.0, @ethersproject/logger@npm:^5.7.0, @ethersproject/logger@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/logger@npm:5.8.0" - checksum: 10c0/7f39f33e8f254ee681d4778bb71ce3c5de248e1547666f85c43bfbc1c18996c49a31f969f056b66d23012f2420f2d39173107284bc41eb98d0482ace1d06403e - languageName: node - linkType: hard - -"@ethersproject/networks@npm:5.7.1": - version: 5.7.1 - resolution: "@ethersproject/networks@npm:5.7.1" - dependencies: - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/9efcdce27f150459e85d74af3f72d5c32898823a99f5410e26bf26cca2d21fb14e403377314a93aea248e57fb2964e19cee2c3f7bfc586ceba4c803a8f1b75c0 - languageName: node - linkType: hard - -"@ethersproject/networks@npm:5.8.0, @ethersproject/networks@npm:^5.7.0, @ethersproject/networks@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/networks@npm:5.8.0" - dependencies: - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/3f23bcc4c3843cc9b7e4b9f34df0a1f230b24dc87d51cdad84552302159a84d7899cd80c8a3d2cf8007b09ac373a5b10407007adde23d4c4881a4d6ee6bc4b9c - languageName: node - linkType: hard - -"@ethersproject/pbkdf2@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/pbkdf2@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/sha2": "npm:^5.7.0" - checksum: 10c0/e5a29cf28b4f4ca1def94d37cfb6a9c05c896106ed64881707813de01c1e7ded613f1e95febcccda4de96aae929068831d72b9d06beef1377b5a1a13a0eb3ff5 - languageName: node - linkType: hard - -"@ethersproject/pbkdf2@npm:5.8.0, @ethersproject/pbkdf2@npm:^5.7.0, @ethersproject/pbkdf2@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/pbkdf2@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/sha2": "npm:^5.8.0" - checksum: 10c0/0397cf5370cfd568743c3e46ac431f1bd425239baa2691689f1430997d44d310cef5051ea9ee53fabe444f96aced8d6324b41da698e8d7021389dce36251e7e9 - languageName: node - linkType: hard - -"@ethersproject/properties@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/properties@npm:5.7.0" - dependencies: - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/4fe5d36e5550b8e23a305aa236a93e8f04d891d8198eecdc8273914c761b0e198fd6f757877406ee3eb05033ec271132a3e5998c7bd7b9a187964fb4f67b1373 - languageName: node - linkType: hard - -"@ethersproject/properties@npm:5.8.0, @ethersproject/properties@npm:^5.7.0, @ethersproject/properties@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/properties@npm:5.8.0" - dependencies: - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/20256d7eed65478a38dabdea4c3980c6591b7b75f8c45089722b032ceb0e1cd3dd6dd60c436cfe259337e6909c28d99528c172d06fc74bbd61be8eb9e68be2e6 - languageName: node - linkType: hard - -"@ethersproject/providers@npm:5.7.2": - version: 5.7.2 - resolution: "@ethersproject/providers@npm:5.7.2" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.7.0" - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/base64": "npm:^5.7.0" - "@ethersproject/basex": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/hash": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/networks": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/random": "npm:^5.7.0" - "@ethersproject/rlp": "npm:^5.7.0" - "@ethersproject/sha2": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - "@ethersproject/web": "npm:^5.7.0" - bech32: "npm:1.1.4" - ws: "npm:7.4.6" - checksum: 10c0/4c8d19e6b31f769c24042fb2d02e483a4ee60dcbfca9e3291f0a029b24337c47d1ea719a390be856f8fd02997125819e834415e77da4fb2023369712348dae4c - languageName: node - linkType: hard - -"@ethersproject/providers@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/providers@npm:5.8.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.8.0" - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/base64": "npm:^5.8.0" - "@ethersproject/basex": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/hash": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/networks": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/random": "npm:^5.8.0" - "@ethersproject/rlp": "npm:^5.8.0" - "@ethersproject/sha2": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - "@ethersproject/web": "npm:^5.8.0" - bech32: "npm:1.1.4" - ws: "npm:8.18.0" - checksum: 10c0/893dba429443bbf0a3eadef850e772ad1c706cf17ae6ae48b73467a23b614a3f461e9004850e24439b5c73d30e9259bc983f0f90a911ba11af749e6384fd355a - languageName: node - linkType: hard - -"@ethersproject/random@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/random@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/23e572fc55372653c22062f6a153a68c2e2d3200db734cd0d39621fbfd0ca999585bed2d5682e3ac65d87a2893048375682e49d1473d9965631ff56d2808580b - languageName: node - linkType: hard - -"@ethersproject/random@npm:5.8.0, @ethersproject/random@npm:^5.7.0, @ethersproject/random@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/random@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/e44c010715668fc29383141ae16cd2ec00c34a434d47e23338e740b8c97372515d95d3b809b969eab2055c19e92b985ca591d326fbb71270c26333215f9925d1 - languageName: node - linkType: hard - -"@ethersproject/rlp@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/rlp@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/bc863d21dcf7adf6a99ae75c41c4a3fb99698cfdcfc6d5d82021530f3d3551c6305bc7b6f0475ad6de6f69e91802b7e872bee48c0596d98969aefcf121c2a044 - languageName: node - linkType: hard - -"@ethersproject/rlp@npm:5.8.0, @ethersproject/rlp@npm:^5.7.0, @ethersproject/rlp@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/rlp@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/db742ec9c1566d6441242cc2c2ae34c1e5304d48e1fe62bc4e53b1791f219df211e330d2de331e0e4f74482664e205c2e4220e76138bd71f1ec07884e7f5221b - languageName: node - linkType: hard - -"@ethersproject/sha2@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/sha2@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - hash.js: "npm:1.1.7" - checksum: 10c0/0e7f9ce6b1640817b921b9c6dd9dab8d5bf5a0ce7634d6a7d129b7366a576c2f90dcf4bcb15a0aa9310dde67028f3a44e4fcc2f26b565abcd2a0f465116ff3b1 - languageName: node - linkType: hard - -"@ethersproject/sha2@npm:5.8.0, @ethersproject/sha2@npm:^5.7.0, @ethersproject/sha2@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/sha2@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - hash.js: "npm:1.1.7" - checksum: 10c0/eab941907b7d40ee8436acaaedee32306ed4de2cb9ab37543bc89b1dd2a78f28c8da21efd848525fa1b04a78575be426cfca28f5392f4d28ce6c84e7c26a9421 - languageName: node - linkType: hard - -"@ethersproject/signing-key@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/signing-key@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - bn.js: "npm:^5.2.1" - elliptic: "npm:6.5.4" - hash.js: "npm:1.1.7" - checksum: 10c0/fe2ca55bcdb6e370d81372191d4e04671234a2da872af20b03c34e6e26b97dc07c1ee67e91b673680fb13344c9d5d7eae52f1fa6117733a3d68652b778843e09 - languageName: node - linkType: hard - -"@ethersproject/signing-key@npm:5.8.0, @ethersproject/signing-key@npm:^5.7.0, @ethersproject/signing-key@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/signing-key@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - bn.js: "npm:^5.2.1" - elliptic: "npm:6.6.1" - hash.js: "npm:1.1.7" - checksum: 10c0/a7ff6cd344b0609737a496b6d5b902cf5528ed5a7ce2c0db5e7b69dc491d1810d1d0cd51dddf9dc74dd562ab4961d76e982f1750359b834c53c202e85e4c8502 - languageName: node - linkType: hard - -"@ethersproject/solidity@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/solidity@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/sha2": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/bedf9918911144b0ec352b8aa7fa44abf63f0b131629c625672794ee196ba7d3992b0e0d3741935ca176813da25b9bcbc81aec454652c63113bdc3a1706beac6 - languageName: node - linkType: hard - -"@ethersproject/solidity@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/solidity@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/sha2": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/5b5e0531bcec1d919cfbd261694694c8999ca5c379c1bb276ec779b896d299bb5db8ed7aa5652eb2c7605fe66455832b56ef123dec07f6ddef44231a7aa6fe6c - languageName: node - linkType: hard - -"@ethersproject/strings@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/strings@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/570d87040ccc7d94de9861f76fc2fba6c0b84c5d6104a99a5c60b8a2401df2e4f24bf9c30afa536163b10a564a109a96f02e6290b80e8f0c610426f56ad704d1 - languageName: node - linkType: hard - -"@ethersproject/strings@npm:5.8.0, @ethersproject/strings@npm:^5.7.0, @ethersproject/strings@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/strings@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/6db39503c4be130110612b6d593a381c62657e41eebf4f553247ebe394fda32cdf74ff645daee7b7860d209fd02c7e909a95b1f39a2f001c662669b9dfe81d00 - languageName: node - linkType: hard - -"@ethersproject/transactions@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/transactions@npm:5.7.0" - dependencies: - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/rlp": "npm:^5.7.0" - "@ethersproject/signing-key": "npm:^5.7.0" - checksum: 10c0/aa4d51379caab35b9c468ed1692a23ae47ce0de121890b4f7093c982ee57e30bd2df0c743faed0f44936d7e59c55fffd80479f2c28ec6777b8de06bfb638c239 - languageName: node - linkType: hard - -"@ethersproject/transactions@npm:5.8.0, @ethersproject/transactions@npm:^5.7.0, @ethersproject/transactions@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/transactions@npm:5.8.0" - dependencies: - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/rlp": "npm:^5.8.0" - "@ethersproject/signing-key": "npm:^5.8.0" - checksum: 10c0/dd32f090df5945313aafa8430ce76834479750d6655cb786c3b65ec841c94596b14d3c8c59ee93eed7b4f32f27d321a9b8b43bc6bb51f7e1c6694f82639ffe68 - languageName: node - linkType: hard - -"@ethersproject/units@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/units@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - checksum: 10c0/4da2fdefe2a506cc9f8b408b2c8638ab35b843ec413d52713143f08501a55ff67a808897f9a91874774fb526423a0821090ba294f93e8bf4933a57af9677ac5e - languageName: node - linkType: hard - -"@ethersproject/units@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/units@npm:5.8.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/constants": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - checksum: 10c0/5f92b8379a58024078fce6a4cbf7323cfd79bc41ef8f0a7bbf8be9c816ce18783140ab0d5c8d34ed615639aef7fc3a2ed255e92809e3558a510c4f0d49e27309 - languageName: node - linkType: hard - -"@ethersproject/wallet@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/wallet@npm:5.7.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.7.0" - "@ethersproject/abstract-signer": "npm:^5.7.0" - "@ethersproject/address": "npm:^5.7.0" - "@ethersproject/bignumber": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/hash": "npm:^5.7.0" - "@ethersproject/hdnode": "npm:^5.7.0" - "@ethersproject/json-wallets": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/random": "npm:^5.7.0" - "@ethersproject/signing-key": "npm:^5.7.0" - "@ethersproject/transactions": "npm:^5.7.0" - "@ethersproject/wordlists": "npm:^5.7.0" - checksum: 10c0/f872b957db46f9de247d39a398538622b6c7a12f93d69bec5f47f9abf0701ef1edc10497924dd1c14a68109284c39a1686fa85586d89b3ee65df49002c40ba4c - languageName: node - linkType: hard - -"@ethersproject/wallet@npm:5.8.0": - version: 5.8.0 - resolution: "@ethersproject/wallet@npm:5.8.0" - dependencies: - "@ethersproject/abstract-provider": "npm:^5.8.0" - "@ethersproject/abstract-signer": "npm:^5.8.0" - "@ethersproject/address": "npm:^5.8.0" - "@ethersproject/bignumber": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/hash": "npm:^5.8.0" - "@ethersproject/hdnode": "npm:^5.8.0" - "@ethersproject/json-wallets": "npm:^5.8.0" - "@ethersproject/keccak256": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/random": "npm:^5.8.0" - "@ethersproject/signing-key": "npm:^5.8.0" - "@ethersproject/transactions": "npm:^5.8.0" - "@ethersproject/wordlists": "npm:^5.8.0" - checksum: 10c0/6da450872dda3d9008bad3ccf8467816a63429241e51c66627647123c0fe5625494c4f6c306e098eb8419cc5702ac017d41f5161af5ff670a41fe5d199883c09 - languageName: node - linkType: hard - -"@ethersproject/web@npm:5.7.1": - version: 5.7.1 - resolution: "@ethersproject/web@npm:5.7.1" - dependencies: - "@ethersproject/base64": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/c82d6745c7f133980e8dab203955260e07da22fa544ccafdd0f21c79fae127bd6ef30957319e37b1cc80cddeb04d6bfb60f291bb14a97c9093d81ce50672f453 - languageName: node - linkType: hard - -"@ethersproject/web@npm:5.8.0, @ethersproject/web@npm:^5.7.0, @ethersproject/web@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/web@npm:5.8.0" - dependencies: - "@ethersproject/base64": "npm:^5.8.0" - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/e3cd547225638db6e94fcd890001c778d77adb0d4f11a7f8c447e961041678f3fbfaffe77a962c7aa3f6597504232442e7015f2335b1788508a108708a30308a - languageName: node - linkType: hard - -"@ethersproject/wordlists@npm:5.7.0": - version: 5.7.0 - resolution: "@ethersproject/wordlists@npm:5.7.0" - dependencies: - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/hash": "npm:^5.7.0" - "@ethersproject/logger": "npm:^5.7.0" - "@ethersproject/properties": "npm:^5.7.0" - "@ethersproject/strings": "npm:^5.7.0" - checksum: 10c0/da4f3eca6d691ebf4f578e6b2ec3a76dedba791be558f6cf7e10cd0bfbaeab5a6753164201bb72ced745fb02b6ef7ef34edcb7e6065ce2b624c6556a461c3f70 - languageName: node - linkType: hard - -"@ethersproject/wordlists@npm:5.8.0, @ethersproject/wordlists@npm:^5.7.0, @ethersproject/wordlists@npm:^5.8.0": - version: 5.8.0 - resolution: "@ethersproject/wordlists@npm:5.8.0" - dependencies: - "@ethersproject/bytes": "npm:^5.8.0" - "@ethersproject/hash": "npm:^5.8.0" - "@ethersproject/logger": "npm:^5.8.0" - "@ethersproject/properties": "npm:^5.8.0" - "@ethersproject/strings": "npm:^5.8.0" - checksum: 10c0/e230a2ba075006bc3a2538e096003e43ef9ba453317f37a4d99638720487ec447c1fa61a592c80483f8a8ad6466511cf4cf5c49cf84464a1679999171ce311f4 - languageName: node - linkType: hard - -"@fastify/busboy@npm:^2.0.0": - version: 2.1.1 - resolution: "@fastify/busboy@npm:2.1.1" - checksum: 10c0/6f8027a8cba7f8f7b736718b013f5a38c0476eea67034c94a0d3c375e2b114366ad4419e6a6fa7ffc2ef9c6d3e0435d76dd584a7a1cbac23962fda7650b579e3 - languageName: node - linkType: hard - -"@ganache/ethereum-address@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/ethereum-address@npm:0.1.4" - dependencies: - "@ganache/utils": "npm:0.1.4" - checksum: 10c0/3ae97179585c5eefdc16e3d707c2e31058429fce201299d2f935073163b7b3798a2528d60f6551acc9c8b4d031154bf1c5e7e20359d195fb0bdcf1159b999941 - languageName: node - linkType: hard - -"@ganache/ethereum-options@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/ethereum-options@npm:0.1.4" - dependencies: - "@ganache/ethereum-address": "npm:0.1.4" - "@ganache/ethereum-utils": "npm:0.1.4" - "@ganache/options": "npm:0.1.4" - "@ganache/utils": "npm:0.1.4" - bip39: "npm:3.0.4" - seedrandom: "npm:3.0.5" - checksum: 10c0/574555c3f27365f4de7d2f0cb1a4be70414dc61845a96adbe4c08853c8a2d82fdbd71af2c796db04d761f073294cf1d8586e4ecca58c6fa97c2bd7228b2365c3 - languageName: node - linkType: hard - -"@ganache/ethereum-utils@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/ethereum-utils@npm:0.1.4" - dependencies: - "@ethereumjs/common": "npm:2.6.0" - "@ethereumjs/tx": "npm:3.4.0" - "@ethereumjs/vm": "npm:5.6.0" - "@ganache/ethereum-address": "npm:0.1.4" - "@ganache/rlp": "npm:0.1.4" - "@ganache/utils": "npm:0.1.4" - emittery: "npm:0.10.0" - ethereumjs-abi: "npm:0.6.8" - ethereumjs-util: "npm:7.1.3" - checksum: 10c0/b2dbe8dbf39c0799f0099de75476361dd7b275ea6972d25ab819ac8bd5e8c22023ffc9d7acd43ecca1b0ba65d3b70cb8afa4095694fe0491bbb586023698c2c3 - languageName: node - linkType: hard - -"@ganache/options@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/options@npm:0.1.4" - dependencies: - "@ganache/utils": "npm:0.1.4" - bip39: "npm:3.0.4" - seedrandom: "npm:3.0.5" - checksum: 10c0/5db14c122e3e1bfdfea5b8e0b1f58fc0e12e88ebef97a5056f34a1b9ca8828c4c274a6eb81dc2625c3cc7521446df965ec41942928a01d0cc30e95f85c322aa5 - languageName: node - linkType: hard - -"@ganache/rlp@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/rlp@npm:0.1.4" - dependencies: - "@ganache/utils": "npm:0.1.4" - rlp: "npm:2.2.6" - checksum: 10c0/83c27f20a1728a8aac2735044ee274574629dad61511749da6ce3b6c22dcd2e07b33bf2f08adb52fe6bc3dc3a589fb0c63622e9190072385043d8ce7fd2e1688 - languageName: node - linkType: hard - -"@ganache/utils@npm:0.1.4": - version: 0.1.4 - resolution: "@ganache/utils@npm:0.1.4" - dependencies: - "@trufflesuite/bigint-buffer": "npm:1.1.9" - emittery: "npm:0.10.0" - keccak: "npm:3.0.1" - seedrandom: "npm:3.0.5" - dependenciesMeta: - "@trufflesuite/bigint-buffer": - optional: true - checksum: 10c0/ff658137f7d9a2011cc9ab977cdf9b40962131da4dc08ba2b2cb6060b8a8639a64fdc21815e83700b49415dfe94301d521068e848ba5001b22a85793f63b50d2 - languageName: node - linkType: hard - -"@humanfs/core@npm:^0.19.1": - version: 0.19.1 - resolution: "@humanfs/core@npm:0.19.1" - checksum: 10c0/aa4e0152171c07879b458d0e8a704b8c3a89a8c0541726c6b65b81e84fd8b7564b5d6c633feadc6598307d34564bd53294b533491424e8e313d7ab6c7bc5dc67 - languageName: node - linkType: hard - -"@humanfs/node@npm:^0.16.6": - version: 0.16.7 - resolution: "@humanfs/node@npm:0.16.7" - dependencies: - "@humanfs/core": "npm:^0.19.1" - "@humanwhocodes/retry": "npm:^0.4.0" - checksum: 10c0/9f83d3cf2cfa37383e01e3cdaead11cd426208e04c44adcdd291aa983aaf72d7d3598844d2fe9ce54896bb1bf8bd4b56883376611c8905a19c44684642823f30 - languageName: node - linkType: hard - -"@humanwhocodes/module-importer@npm:^1.0.1": - version: 1.0.1 - resolution: "@humanwhocodes/module-importer@npm:1.0.1" - checksum: 10c0/909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529 - languageName: node - linkType: hard - -"@humanwhocodes/retry@npm:^0.4.0, @humanwhocodes/retry@npm:^0.4.2": - version: 0.4.3 - resolution: "@humanwhocodes/retry@npm:0.4.3" - checksum: 10c0/3775bb30087d4440b3f7406d5a057777d90e4b9f435af488a4923ef249e93615fb78565a85f173a186a076c7706a81d0d57d563a2624e4de2c5c9c66c486ce42 - languageName: node - linkType: hard - -"@isaacs/balanced-match@npm:^4.0.1": - version: 4.0.1 - resolution: "@isaacs/balanced-match@npm:4.0.1" - checksum: 10c0/7da011805b259ec5c955f01cee903da72ad97c5e6f01ca96197267d3f33103d5b2f8a1af192140f3aa64526c593c8d098ae366c2b11f7f17645d12387c2fd420 - languageName: node - linkType: hard - -"@isaacs/brace-expansion@npm:^5.0.0": - version: 5.0.0 - resolution: "@isaacs/brace-expansion@npm:5.0.0" - dependencies: - "@isaacs/balanced-match": "npm:^4.0.1" - checksum: 10c0/b4d4812f4be53afc2c5b6c545001ff7a4659af68d4484804e9d514e183d20269bb81def8682c01a22b17c4d6aed14292c8494f7d2ac664e547101c1a905aa977 - languageName: node - linkType: hard - -"@isaacs/cliui@npm:^8.0.2": - version: 8.0.2 - resolution: "@isaacs/cliui@npm:8.0.2" - dependencies: - string-width: "npm:^5.1.2" - string-width-cjs: "npm:string-width@^4.2.0" - strip-ansi: "npm:^7.0.1" - strip-ansi-cjs: "npm:strip-ansi@^6.0.1" - wrap-ansi: "npm:^8.1.0" - wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" - checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e - languageName: node - linkType: hard - -"@isaacs/fs-minipass@npm:^4.0.0": - version: 4.0.1 - resolution: "@isaacs/fs-minipass@npm:4.0.1" - dependencies: - minipass: "npm:^7.0.4" - checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2 - languageName: node - linkType: hard - -"@jridgewell/resolve-uri@npm:^3.0.3": - version: 3.1.2 - resolution: "@jridgewell/resolve-uri@npm:3.1.2" - checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e - languageName: node - linkType: hard - -"@jridgewell/sourcemap-codec@npm:^1.4.10": - version: 1.5.5 - resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" - checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0 - languageName: node - linkType: hard - -"@jridgewell/trace-mapping@npm:0.3.9": - version: 0.3.9 - resolution: "@jridgewell/trace-mapping@npm:0.3.9" - dependencies: - "@jridgewell/resolve-uri": "npm:^3.0.3" - "@jridgewell/sourcemap-codec": "npm:^1.4.10" - checksum: 10c0/fa425b606d7c7ee5bfa6a31a7b050dd5814b4082f318e0e4190f991902181b4330f43f4805db1dd4f2433fd0ed9cc7a7b9c2683f1deeab1df1b0a98b1e24055b - languageName: node - linkType: hard - -"@noble/curves@npm:1.4.2, @noble/curves@npm:~1.4.0": - version: 1.4.2 - resolution: "@noble/curves@npm:1.4.2" - dependencies: - "@noble/hashes": "npm:1.4.0" - checksum: 10c0/65620c895b15d46e8087939db6657b46a1a15cd4e0e4de5cd84b97a0dfe0af85f33a431bb21ac88267e3dc508618245d4cb564213959d66a84d690fe18a63419 - languageName: node - linkType: hard - -"@noble/curves@npm:~1.9.2": - version: 1.9.7 - resolution: "@noble/curves@npm:1.9.7" - dependencies: - "@noble/hashes": "npm:1.8.0" - checksum: 10c0/150014751ebe8ca06a8654ca2525108452ea9ee0be23430332769f06808cddabfe84f248b6dbf836916bc869c27c2092957eec62c7506d68a1ed0a624017c2a3 - languageName: node - linkType: hard - -"@noble/hashes@npm:1.2.0, @noble/hashes@npm:~1.2.0": - version: 1.2.0 - resolution: "@noble/hashes@npm:1.2.0" - checksum: 10c0/8bd3edb7bb6a9068f806a9a5a208cc2144e42940a21c049d8e9a0c23db08bef5cf1cfd844a7e35489b5ab52c6fa6299352075319e7f531e0996d459c38cfe26a - languageName: node - linkType: hard - -"@noble/hashes@npm:1.4.0, @noble/hashes@npm:~1.4.0": - version: 1.4.0 - resolution: "@noble/hashes@npm:1.4.0" - checksum: 10c0/8c3f005ee72e7b8f9cff756dfae1241485187254e3f743873e22073d63906863df5d4f13d441b7530ea614b7a093f0d889309f28b59850f33b66cb26a779a4a5 - languageName: node - linkType: hard - -"@noble/hashes@npm:1.8.0, @noble/hashes@npm:^1.4.0": - version: 1.8.0 - resolution: "@noble/hashes@npm:1.8.0" - checksum: 10c0/06a0b52c81a6fa7f04d67762e08b2c476a00285858150caeaaff4037356dd5e119f45b2a530f638b77a5eeca013168ec1b655db41bae3236cb2e9d511484fc77 - languageName: node - linkType: hard - -"@noble/hashes@npm:2.0.0-beta.1": - version: 2.0.0-beta.1 - resolution: "@noble/hashes@npm:2.0.0-beta.1" - checksum: 10c0/dde464e841efb008e40ec2bc8431fec4de11c4778b0491c03247aa05c4e900a8b5212c9c90043b836f47d3d9ff48c22419513ed8219fed380cdaa17e1fc4fddc - languageName: node - linkType: hard - -"@noble/secp256k1@npm:1.7.1": - version: 1.7.1 - resolution: "@noble/secp256k1@npm:1.7.1" - checksum: 10c0/48091801d39daba75520012027d0ff0b1719338d96033890cfe0d287ad75af00d82769c0194a06e7e4fbd816ae3f204f4a59c9e26f0ad16b429f7e9b5403ccd5 - languageName: node - linkType: hard - -"@noble/secp256k1@npm:~1.7.0": - version: 1.7.2 - resolution: "@noble/secp256k1@npm:1.7.2" - checksum: 10c0/dda1eea78ee6d4d9ef968bd63d3f7ed387332fa1670af2c9c4c75a69bb6a0ca396bc95b5bab437e40f6f47548a12037094bda55453e30b4a23054922a13f3d27 - languageName: node - linkType: hard - -"@nomicfoundation/edr-darwin-arm64@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-darwin-arm64@npm:0.11.3" - checksum: 10c0/f5923e05a9409a9e3956b95db7e6bbd4345c3cd8de617406a308e257bd4706d59d6f6f8d6ec774d6473d956634ba5c322ec903b66830844683809eb102ec510e - languageName: node - linkType: hard - -"@nomicfoundation/edr-darwin-x64@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-darwin-x64@npm:0.11.3" - checksum: 10c0/f529d2ef57a54bb34fb7888b545f19675624086bd93383e8d91c8dee1555532d2d28e72363b6a3b84e3920911bd550333898636873922cb5899c74b496f847aa - languageName: node - linkType: hard - -"@nomicfoundation/edr-linux-arm64-gnu@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-linux-arm64-gnu@npm:0.11.3" - checksum: 10c0/4a8b4674d2e975434a1eab607f77947aa7dd501896ddb0b24f6f09e497776d197617dcac36076f4e274ac55ce0f1c85de228dff432d470459df6aa35b97176f2 - languageName: node - linkType: hard - -"@nomicfoundation/edr-linux-arm64-musl@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-linux-arm64-musl@npm:0.11.3" - checksum: 10c0/e0bf840cf209db1a8c7bb6dcd35af5c751921c2125ccf11457dbf5f66ef3c306d060933e5cbe9469ac8b440b8fcc19fa13fae8e919b5a03087c70d688cce461f - languageName: node - linkType: hard - -"@nomicfoundation/edr-linux-x64-gnu@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-linux-x64-gnu@npm:0.11.3" - checksum: 10c0/c7617c11029223998cf177d49fb4979b7dcfcc9369cadaa82d2f9fb58c7f8091a33c4c46416e3fb71d9ff2276075d69fd076917841e3912466896ba1ca45cb94 - languageName: node - linkType: hard - -"@nomicfoundation/edr-linux-x64-musl@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-linux-x64-musl@npm:0.11.3" - checksum: 10c0/ef1623581a1d7072c88c0dc342480bed1253131d8775827ae8dddda26b2ecc4f4def3d8ec83ee60ac33e70539a58ed0b7a200040a06f31f9b3eccc3003c3af8d - languageName: node - linkType: hard - -"@nomicfoundation/edr-win32-x64-msvc@npm:0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr-win32-x64-msvc@npm:0.11.3" - checksum: 10c0/0b3975a22fe31cea5799a3b4020acdf01627508e5f617545ad9f5f5f6739b1a954e1cd397e6d00a56eddd2c88b24d290b8e76f871eab7a847d97ee740e825249 - languageName: node - linkType: hard - -"@nomicfoundation/edr@npm:^0.11.3": - version: 0.11.3 - resolution: "@nomicfoundation/edr@npm:0.11.3" - dependencies: - "@nomicfoundation/edr-darwin-arm64": "npm:0.11.3" - "@nomicfoundation/edr-darwin-x64": "npm:0.11.3" - "@nomicfoundation/edr-linux-arm64-gnu": "npm:0.11.3" - "@nomicfoundation/edr-linux-arm64-musl": "npm:0.11.3" - "@nomicfoundation/edr-linux-x64-gnu": "npm:0.11.3" - "@nomicfoundation/edr-linux-x64-musl": "npm:0.11.3" - "@nomicfoundation/edr-win32-x64-msvc": "npm:0.11.3" - checksum: 10c0/48280ca1ae6913e92a34abf8f70656bc09c217094326b5e81e9d299924a24b7041240109d0f024a3c33706f542e0668f7e320a2eb02657f9bf7bbf29cd7b8f5d - languageName: node - linkType: hard - -"@nomicfoundation/hardhat-foundry@npm:1.2.0": - version: 1.2.0 - resolution: "@nomicfoundation/hardhat-foundry@npm:1.2.0" - dependencies: - picocolors: "npm:^1.1.0" - peerDependencies: - hardhat: ^2.26.0 - checksum: 10c0/52010a4cd2d4dadd8d5ef13c7f709ef89b9a4372f03900917009f2ab7b8411de75e768a526ac8de8fb2e2128683183e3af63e20c4fc79e4f5e28460d6f69f38f - languageName: node - linkType: hard - -"@nomicfoundation/hardhat-network-helpers@npm:^1.0.10": - version: 1.1.2 - resolution: "@nomicfoundation/hardhat-network-helpers@npm:1.1.2" - dependencies: - ethereumjs-util: "npm:^7.1.4" - peerDependencies: - hardhat: ^2.26.0 - checksum: 10c0/00fb7392bc0a0c3df635a52fe350ae5e5a71610f3718e11e6b17753f6723231c81def37a19933cd96174cbc5362c0168c8fa98ea73910d46dd9d4bbba0c7990f - languageName: node - linkType: hard - -"@nomicfoundation/slang@npm:^0.18.3": - version: 0.18.3 - resolution: "@nomicfoundation/slang@npm:0.18.3" - dependencies: - "@bytecodealliance/preview2-shim": "npm:0.17.0" - checksum: 10c0/68036dd38f953451c4b5825600cd44f46931608a9905811fb1d977fac00be5f16b1a39f2f2a0c65f4bbd064d81c05f44f5cd79e626798035815511de89c3b6d0 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-darwin-arm64@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-darwin-arm64@npm:0.1.2" - checksum: 10c0/ef3b13bb2133fea6621db98f991036a3a84d2b240160edec50beafa6ce821fe2f0f5cd4aa61adb9685aff60cd0425982ffd15e0b868b7c768e90e26b8135b825 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-darwin-x64@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-darwin-x64@npm:0.1.2" - checksum: 10c0/3cb6a00cd200b94efd6f59ed626c705c6f773b92ccf8b90471285cd0e81b35f01edb30c1aa5a4633393c2adb8f20fd34e90c51990dc4e30658e8a67c026d16c9 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-linux-arm64-gnu@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-linux-arm64-gnu@npm:0.1.2" - checksum: 10c0/cb9725e7bdc3ba9c1feaef96dbf831c1a59c700ca633a9929fd97debdcb5ce06b5d7b4e6dbc076279978707214d01e2cd126d8e3f4cabc5c16525c031a47b95c - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-linux-arm64-musl@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-linux-arm64-musl@npm:0.1.2" - checksum: 10c0/82a90b1d09ad266ddc510ece2e397f51fdaf29abf7263d2a3a85accddcba2ac24cceb670a3120800611cdcc552eed04919d071e259fdda7564818359ed541f5d - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-linux-x64-gnu@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-linux-x64-gnu@npm:0.1.2" - checksum: 10c0/d1f20d4d55683bd041ead957e5461b2e43a39e959f905e8866de1d65f8d96118e9b861e994604d9002cb7f056be0844e36c241a6bb531c336b399609977c0998 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-linux-x64-musl@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-linux-x64-musl@npm:0.1.2" - checksum: 10c0/6c17f9af3aaf184c0a217cf723076051c502d85e731dbc97f34b838f9ae1b597577abac54a2af49b3fd986b09131c52fa21fd5393b22d05e1ec7fee96a8249c2 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer-win32-x64-msvc@npm:0.1.2": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer-win32-x64-msvc@npm:0.1.2" - checksum: 10c0/da198464f5ee0d19b6decdfaa65ee0df3097b8960b8483bb7080931968815a5d60f27191229d47a198955784d763d5996f0b92bfde3551612ad972c160b0b000 - languageName: node - linkType: hard - -"@nomicfoundation/solidity-analyzer@npm:^0.1.0": - version: 0.1.2 - resolution: "@nomicfoundation/solidity-analyzer@npm:0.1.2" - dependencies: - "@nomicfoundation/solidity-analyzer-darwin-arm64": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-darwin-x64": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-linux-x64-musl": "npm:0.1.2" - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "npm:0.1.2" - dependenciesMeta: - "@nomicfoundation/solidity-analyzer-darwin-arm64": - optional: true - "@nomicfoundation/solidity-analyzer-darwin-x64": - optional: true - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": - optional: true - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": - optional: true - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": - optional: true - "@nomicfoundation/solidity-analyzer-linux-x64-musl": - optional: true - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": - optional: true - checksum: 10c0/e4f503e9287e18967535af669ca7e26e2682203c45a34ea85da53122da1dee1278f2b8c76c20c67fadd7c1b1a98eeecffd2cbc136860665e3afa133817c0de54 - languageName: node - linkType: hard - -"@nomiclabs/hardhat-ethers@npm:^2.2.1, @nomiclabs/hardhat-ethers@npm:^2.2.3": - version: 2.2.3 - resolution: "@nomiclabs/hardhat-ethers@npm:2.2.3" - peerDependencies: - ethers: ^5.0.0 - hardhat: ^2.0.0 - checksum: 10c0/cae46d1966108ab02b50fabe7945c8987fa1e9d5d0a7a06f79afc274ff1abc312e8a82375191a341b28571b897c22433d3a2826eb30077ed88d5983d01e381d0 - languageName: node - linkType: hard + version "1.2.0" + resolved "https://registry.yarnpkg.com/@beanstalk/wells/-/wells-1.2.0.tgz#254ca91f9614b0360761768ab4bd42d859ce3dc4" + integrity sha512-8WIe4s/glnkS1ILoVUQT4PpVyJrm1/+9an4BrUFx5U67Wcijo1Mb11d7GtzQCjHraQfySqq1KTgrLwPsRt7UHw== + +"@beanstalk/wells@0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@beanstalk/wells/-/wells-0.4.1.tgz#40ed31b68347f5162107f306caaf1e2c0f7304d6" + integrity sha512-Ji4r3yxmfqrtmdLhiUVvl04v0GkJJLIs99391gUd+ysQK7/WaeOU8Rx+PaqRD6MzPzfwRl724LzEety9z9DdOQ== + dependencies: + "@nomiclabs/hardhat-ethers" "^2.2.3" + hardhat "^2.17.1" + hardhat-preprocessor "^0.1.5" + +"@bytecodealliance/preview2-shim@0.17.0": + version "0.17.0" + resolved "https://registry.yarnpkg.com/@bytecodealliance/preview2-shim/-/preview2-shim-0.17.0.tgz#9bc1cadbb9f86c446c6f579d3431c08a06a6672e" + integrity sha512-JorcEwe4ud0x5BS/Ar2aQWOQoFzjq/7jcnxYXCvSMh0oRm0dQXzOA+hqLDBnOMks1LLBA7dmiLLsEBl09Yd6iQ== + +"@colors/colors@1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" + integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== + +"@cspotcode/source-map-support@^0.8.0": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" + integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== + dependencies: + "@jridgewell/trace-mapping" "0.3.9" + +"@eslint-community/eslint-utils@^4.8.0": + version "4.9.1" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz#4e90af67bc51ddee6cdef5284edf572ec376b595" + integrity sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ== + dependencies: + eslint-visitor-keys "^3.4.3" + +"@eslint-community/regexpp@^4.12.1": + version "4.12.2" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.2.tgz#bccdf615bcf7b6e8db830ec0b8d21c9a25de597b" + integrity sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew== + +"@eslint/config-array@^0.21.1": + version "0.21.1" + resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.21.1.tgz#7d1b0060fea407f8301e932492ba8c18aff29713" + integrity sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA== + dependencies: + "@eslint/object-schema" "^2.1.7" + debug "^4.3.1" + minimatch "^3.1.2" + +"@eslint/config-helpers@^0.4.2": + version "0.4.2" + resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.4.2.tgz#1bd006ceeb7e2e55b2b773ab318d300e1a66aeda" + integrity sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw== + dependencies: + "@eslint/core" "^0.17.0" + +"@eslint/core@^0.17.0": + version "0.17.0" + resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.17.0.tgz#77225820413d9617509da9342190a2019e78761c" + integrity sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ== + dependencies: + "@types/json-schema" "^7.0.15" + +"@eslint/eslintrc@^3.3.1": + version "3.3.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.3.3.tgz#26393a0806501b5e2b6a43aa588a4d8df67880ac" + integrity sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^10.0.1" + globals "^14.0.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.1" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + +"@eslint/js@9.39.2": + version "9.39.2" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.39.2.tgz#2d4b8ec4c3ea13c1b3748e0c97ecd766bdd80599" + integrity sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA== + +"@eslint/object-schema@^2.1.7": + version "2.1.7" + resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.7.tgz#6e2126a1347e86a4dedf8706ec67ff8e107ebbad" + integrity sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA== + +"@eslint/plugin-kit@^0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz#9779e3fd9b7ee33571a57435cf4335a1794a6cb2" + integrity sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA== + dependencies: + "@eslint/core" "^0.17.0" + levn "^0.4.1" + +"@ethereum-waffle/chai@4.0.10": + version "4.0.10" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/chai/-/chai-4.0.10.tgz#6f600a40b6fdaed331eba42b8625ff23f3a0e59a" + integrity sha512-X5RepE7Dn8KQLFO7HHAAe+KeGaX/by14hn90wePGBhzL54tq4Y8JscZFu+/LCwCl6TnkAAy5ebiMoqJ37sFtWw== + dependencies: + "@ethereum-waffle/provider" "4.0.5" + debug "^4.3.4" + json-bigint "^1.0.0" + +"@ethereum-waffle/compiler@4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/compiler/-/compiler-4.0.3.tgz#069e2df24b879b8a7b78857bad6f8bf6ebc8a5b1" + integrity sha512-5x5U52tSvEVJS6dpCeXXKvRKyf8GICDwiTwUvGD3/WD+DpvgvaoHOL82XqpTSUHgV3bBq6ma5/8gKUJUIAnJCw== + dependencies: + "@resolver-engine/imports" "^0.3.3" + "@resolver-engine/imports-fs" "^0.3.3" + "@typechain/ethers-v5" "^10.0.0" + "@types/mkdirp" "^0.5.2" + "@types/node-fetch" "^2.6.1" + mkdirp "^0.5.1" + node-fetch "^2.6.7" + +"@ethereum-waffle/ens@4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/ens/-/ens-4.0.3.tgz#4a46ac926414f3c83b4e8cc2562c8e2aee06377a" + integrity sha512-PVLcdnTbaTfCrfSOrvtlA9Fih73EeDvFS28JQnT5M5P4JMplqmchhcZB1yg/fCtx4cvgHlZXa0+rOCAk2Jk0Jw== + +"@ethereum-waffle/mock-contract@4.0.4": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/mock-contract/-/mock-contract-4.0.4.tgz#f13fea29922d87a4d2e7c4fc8fe72ea04d2c13de" + integrity sha512-LwEj5SIuEe9/gnrXgtqIkWbk2g15imM/qcJcxpLyAkOj981tQxXmtV4XmQMZsdedEsZ/D/rbUAOtZbgwqgUwQA== + +"@ethereum-waffle/provider@4.0.5": + version "4.0.5" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/provider/-/provider-4.0.5.tgz#8a65dbf0263f4162c9209608205dee1c960e716b" + integrity sha512-40uzfyzcrPh+Gbdzv89JJTMBlZwzya1YLDyim8mVbEqYLP5VRYWoGp0JMyaizgV3hMoUFRqJKVmIUw4v7r3hYw== + dependencies: + "@ethereum-waffle/ens" "4.0.3" + "@ganache/ethereum-options" "0.1.4" + debug "^4.3.4" + ganache "7.4.3" + +"@ethereumjs/block@^3.5.0", "@ethereumjs/block@^3.6.0", "@ethereumjs/block@^3.6.2": + version "3.6.3" + resolved "https://registry.yarnpkg.com/@ethereumjs/block/-/block-3.6.3.tgz#d96cbd7af38b92ebb3424223dbf773f5ccd27f84" + integrity sha512-CegDeryc2DVKnDkg5COQrE0bJfw/p0v3GBk2W5/Dj5dOVfEmb50Ux0GLnSPypooLnfqjwFaorGuT9FokWB3GRg== + dependencies: + "@ethereumjs/common" "^2.6.5" + "@ethereumjs/tx" "^3.5.2" + ethereumjs-util "^7.1.5" + merkle-patricia-tree "^4.2.4" + +"@ethereumjs/blockchain@^5.5.0": + version "5.5.3" + resolved "https://registry.yarnpkg.com/@ethereumjs/blockchain/-/blockchain-5.5.3.tgz#aa49a6a04789da6b66b5bcbb0d0b98efc369f640" + integrity sha512-bi0wuNJ1gw4ByNCV56H0Z4Q7D+SxUbwyG12Wxzbvqc89PXLRNR20LBcSUZRKpN0+YCPo6m0XZL/JLio3B52LTw== + dependencies: + "@ethereumjs/block" "^3.6.2" + "@ethereumjs/common" "^2.6.4" + "@ethereumjs/ethash" "^1.1.0" + debug "^4.3.3" + ethereumjs-util "^7.1.5" + level-mem "^5.0.1" + lru-cache "^5.1.1" + semaphore-async-await "^1.5.1" + +"@ethereumjs/common@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.0.tgz#feb96fb154da41ee2cc2c5df667621a440f36348" + integrity sha512-Cq2qS0FTu6O2VU1sgg+WyU9Ps0M6j/BEMHN+hRaECXCV/r0aI78u4N6p52QW/BDVhwWZpCdrvG8X7NJdzlpNUA== + dependencies: + crc-32 "^1.2.0" + ethereumjs-util "^7.1.3" + +"@ethereumjs/common@^2.6.0", "@ethereumjs/common@^2.6.4", "@ethereumjs/common@^2.6.5": + version "2.6.5" + resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.5.tgz#0a75a22a046272579d91919cb12d84f2756e8d30" + integrity sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA== + dependencies: + crc-32 "^1.2.0" + ethereumjs-util "^7.1.5" + +"@ethereumjs/ethash@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/ethash/-/ethash-1.1.0.tgz#7c5918ffcaa9cb9c1dc7d12f77ef038c11fb83fb" + integrity sha512-/U7UOKW6BzpA+Vt+kISAoeDie1vAvY4Zy2KF5JJb+So7+1yKmJeJEHOGSnQIj330e9Zyl3L5Nae6VZyh2TJnAA== + dependencies: + "@ethereumjs/block" "^3.5.0" + "@types/levelup" "^4.3.0" + buffer-xor "^2.0.1" + ethereumjs-util "^7.1.1" + miller-rabin "^4.0.0" + +"@ethereumjs/rlp@^4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@ethereumjs/rlp/-/rlp-4.0.1.tgz#626fabfd9081baab3d0a3074b0c7ecaf674aaa41" + integrity sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw== + +"@ethereumjs/rlp@^5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/rlp/-/rlp-5.0.2.tgz#c89bd82f2f3bec248ab2d517ae25f5bbc4aac842" + integrity sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA== + +"@ethereumjs/tx@3.4.0": + version "3.4.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.4.0.tgz#7eb1947eefa55eb9cf05b3ca116fb7a3dbd0bce7" + integrity sha512-WWUwg1PdjHKZZxPPo274ZuPsJCWV3SqATrEKQP1n2DrVYVP1aZIYpo/mFaA0BDoE0tIQmBeimRCEA0Lgil+yYw== + dependencies: + "@ethereumjs/common" "^2.6.0" + ethereumjs-util "^7.1.3" + +"@ethereumjs/tx@^3.4.0", "@ethereumjs/tx@^3.5.2": + version "3.5.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.2.tgz#197b9b6299582ad84f9527ca961466fce2296c1c" + integrity sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw== + dependencies: + "@ethereumjs/common" "^2.6.4" + ethereumjs-util "^7.1.5" + +"@ethereumjs/util@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-8.1.0.tgz#299df97fb6b034e0577ce9f94c7d9d1004409ed4" + integrity sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA== + dependencies: + "@ethereumjs/rlp" "^4.0.1" + ethereum-cryptography "^2.0.0" + micro-ftch "^0.3.1" + +"@ethereumjs/util@^9.1.0": + version "9.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-9.1.0.tgz#75e3898a3116d21c135fa9e29886565609129bce" + integrity sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog== + dependencies: + "@ethereumjs/rlp" "^5.0.2" + ethereum-cryptography "^2.2.1" + +"@ethereumjs/vm@5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/vm/-/vm-5.6.0.tgz#e0ca62af07de820143674c30b776b86c1983a464" + integrity sha512-J2m/OgjjiGdWF2P9bj/4LnZQ1zRoZhY8mRNVw/N3tXliGI8ai1sI1mlDPkLpeUUM4vq54gH6n0ZlSpz8U/qlYQ== + dependencies: + "@ethereumjs/block" "^3.6.0" + "@ethereumjs/blockchain" "^5.5.0" + "@ethereumjs/common" "^2.6.0" + "@ethereumjs/tx" "^3.4.0" + async-eventemitter "^0.2.4" + core-js-pure "^3.0.1" + debug "^2.2.0" + ethereumjs-util "^7.1.3" + functional-red-black-tree "^1.0.1" + mcl-wasm "^0.7.1" + merkle-patricia-tree "^4.2.2" + rustbn.js "~0.2.0" + +"@ethersproject/abi@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abi@5.8.0", "@ethersproject/abi@^5.0.0-beta.146", "@ethersproject/abi@^5.1.2", "@ethersproject/abi@^5.6.3", "@ethersproject/abi@^5.7.0", "@ethersproject/abi@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.8.0.tgz#e79bb51940ac35fe6f3262d7fe2cdb25ad5f07d9" + integrity sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q== + dependencies: + "@ethersproject/address" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/hash" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@ethersproject/abstract-provider@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-provider@5.8.0", "@ethersproject/abstract-provider@^5.7.0", "@ethersproject/abstract-provider@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.8.0.tgz#7581f9be601afa1d02b95d26b9d9840926a35b0c" + integrity sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/networks" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + "@ethersproject/web" "^5.8.0" + +"@ethersproject/abstract-signer@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/abstract-signer@5.8.0", "@ethersproject/abstract-signer@^5.7.0", "@ethersproject/abstract-signer@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.8.0.tgz#8d7417e95e4094c1797a9762e6789c7356db0754" + integrity sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA== + dependencies: + "@ethersproject/abstract-provider" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + +"@ethersproject/address@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/address@5.8.0", "@ethersproject/address@^5.0.2", "@ethersproject/address@^5.7.0", "@ethersproject/address@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.8.0.tgz#3007a2c352eee566ad745dca1dbbebdb50a6a983" + integrity sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/rlp" "^5.8.0" + +"@ethersproject/base64@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/base64@5.8.0", "@ethersproject/base64@^5.7.0", "@ethersproject/base64@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.8.0.tgz#61c669c648f6e6aad002c228465d52ac93ee83eb" + integrity sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ== + dependencies: + "@ethersproject/bytes" "^5.8.0" + +"@ethersproject/basex@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/basex@5.8.0", "@ethersproject/basex@^5.7.0", "@ethersproject/basex@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.8.0.tgz#1d279a90c4be84d1c1139114a1f844869e57d03a" + integrity sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + +"@ethersproject/bignumber@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bignumber@5.8.0", "@ethersproject/bignumber@^5.5.0", "@ethersproject/bignumber@^5.7.0", "@ethersproject/bignumber@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.8.0.tgz#c381d178f9eeb370923d389284efa19f69efa5d7" + integrity sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/bytes@5.8.0", "@ethersproject/bytes@^5.7.0", "@ethersproject/bytes@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.8.0.tgz#9074820e1cac7507a34372cadeb035461463be34" + integrity sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A== + dependencies: + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/constants@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/constants@5.8.0", "@ethersproject/constants@^5.7.0", "@ethersproject/constants@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.8.0.tgz#12f31c2f4317b113a4c19de94e50933648c90704" + integrity sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/contracts@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.8.0.tgz#243a38a2e4aa3e757215ea64e276f8a8c9d8ed73" + integrity sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ== + dependencies: + "@ethersproject/abi" "^5.8.0" + "@ethersproject/abstract-provider" "^5.8.0" + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + +"@ethersproject/hash@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hash@5.8.0", "@ethersproject/hash@^5.7.0", "@ethersproject/hash@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.8.0.tgz#b8893d4629b7f8462a90102572f8cd65a0192b4c" + integrity sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA== + dependencies: + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/base64" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@ethersproject/hdnode@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/hdnode@5.8.0", "@ethersproject/hdnode@^5.7.0", "@ethersproject/hdnode@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.8.0.tgz#a51ae2a50bcd48ef6fd108c64cbae5e6ff34a761" + integrity sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA== + dependencies: + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/basex" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/pbkdf2" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/sha2" "^5.8.0" + "@ethersproject/signing-key" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + "@ethersproject/wordlists" "^5.8.0" + +"@ethersproject/json-wallets@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/json-wallets@5.8.0", "@ethersproject/json-wallets@^5.7.0", "@ethersproject/json-wallets@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.8.0.tgz#d18de0a4cf0f185f232eb3c17d5e0744d97eb8c9" + integrity sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w== + dependencies: + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/hdnode" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/pbkdf2" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/random" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/keccak256@5.8.0", "@ethersproject/keccak256@^5.7.0", "@ethersproject/keccak256@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.8.0.tgz#d2123a379567faf2d75d2aaea074ffd4df349e6a" + integrity sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng== + dependencies: + "@ethersproject/bytes" "^5.8.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/logger@5.8.0", "@ethersproject/logger@^5.7.0", "@ethersproject/logger@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.8.0.tgz#f0232968a4f87d29623a0481690a2732662713d6" + integrity sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA== + +"@ethersproject/networks@5.7.1": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/networks@5.8.0", "@ethersproject/networks@^5.7.0", "@ethersproject/networks@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.8.0.tgz#8b4517a3139380cba9fb00b63ffad0a979671fde" + integrity sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg== + dependencies: + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/pbkdf2@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/pbkdf2@5.8.0", "@ethersproject/pbkdf2@^5.7.0", "@ethersproject/pbkdf2@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.8.0.tgz#cd2621130e5dd51f6a0172e63a6e4a0c0a0ec37e" + integrity sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/sha2" "^5.8.0" + +"@ethersproject/properties@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/properties@5.8.0", "@ethersproject/properties@^5.7.0", "@ethersproject/properties@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.8.0.tgz#405a8affb6311a49a91dabd96aeeae24f477020e" + integrity sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw== + dependencies: + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/providers@5.7.2": + version "5.7.2" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.2.tgz#f8b1a4f275d7ce58cf0a2eec222269a08beb18cb" + integrity sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.8.0.tgz#6c2ae354f7f96ee150439f7de06236928bc04cb4" + integrity sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw== + dependencies: + "@ethersproject/abstract-provider" "^5.8.0" + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/base64" "^5.8.0" + "@ethersproject/basex" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/hash" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/networks" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/random" "^5.8.0" + "@ethersproject/rlp" "^5.8.0" + "@ethersproject/sha2" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + "@ethersproject/web" "^5.8.0" + bech32 "1.1.4" + ws "8.18.0" + +"@ethersproject/random@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/random@5.8.0", "@ethersproject/random@^5.7.0", "@ethersproject/random@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.8.0.tgz#1bced04d49449f37c6437c701735a1a022f0057a" + integrity sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/rlp@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.8.0", "@ethersproject/rlp@^5.7.0", "@ethersproject/rlp@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.8.0.tgz#5a0d49f61bc53e051532a5179472779141451de5" + integrity sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/sha2@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/sha2@5.8.0", "@ethersproject/sha2@^5.7.0", "@ethersproject/sha2@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.8.0.tgz#8954a613bb78dac9b46829c0a95de561ef74e5e1" + integrity sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.8.0", "@ethersproject/signing-key@^5.7.0", "@ethersproject/signing-key@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.8.0.tgz#9797e02c717b68239c6349394ea85febf8893119" + integrity sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + bn.js "^5.2.1" + elliptic "6.6.1" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/solidity@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.8.0.tgz#429bb9fcf5521307a9448d7358c26b93695379b9" + integrity sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/sha2" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@ethersproject/strings@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/strings@5.8.0", "@ethersproject/strings@^5.7.0", "@ethersproject/strings@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.8.0.tgz#ad79fafbf0bd272d9765603215ac74fd7953908f" + integrity sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/transactions@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/transactions@5.8.0", "@ethersproject/transactions@^5.7.0", "@ethersproject/transactions@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.8.0.tgz#1e518822403abc99def5a043d1c6f6fe0007e46b" + integrity sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg== + dependencies: + "@ethersproject/address" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/rlp" "^5.8.0" + "@ethersproject/signing-key" "^5.8.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/units@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.8.0.tgz#c12f34ba7c3a2de0e9fa0ed0ee32f3e46c5c2c6a" + integrity sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ== + dependencies: + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/constants" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/wallet@5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.8.0.tgz#49c300d10872e6986d953e8310dc33d440da8127" + integrity sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA== + dependencies: + "@ethersproject/abstract-provider" "^5.8.0" + "@ethersproject/abstract-signer" "^5.8.0" + "@ethersproject/address" "^5.8.0" + "@ethersproject/bignumber" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/hash" "^5.8.0" + "@ethersproject/hdnode" "^5.8.0" + "@ethersproject/json-wallets" "^5.8.0" + "@ethersproject/keccak256" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/random" "^5.8.0" + "@ethersproject/signing-key" "^5.8.0" + "@ethersproject/transactions" "^5.8.0" + "@ethersproject/wordlists" "^5.8.0" + +"@ethersproject/web@5.7.1": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/web@5.8.0", "@ethersproject/web@^5.7.0", "@ethersproject/web@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.8.0.tgz#3e54badc0013b7a801463a7008a87988efce8a37" + integrity sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw== + dependencies: + "@ethersproject/base64" "^5.8.0" + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@ethersproject/wordlists@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.8.0", "@ethersproject/wordlists@^5.7.0", "@ethersproject/wordlists@^5.8.0": + version "5.8.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.8.0.tgz#7a5654ee8d1bb1f4dbe43f91d217356d650ad821" + integrity sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg== + dependencies: + "@ethersproject/bytes" "^5.8.0" + "@ethersproject/hash" "^5.8.0" + "@ethersproject/logger" "^5.8.0" + "@ethersproject/properties" "^5.8.0" + "@ethersproject/strings" "^5.8.0" + +"@fastify/busboy@^2.0.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.1.1.tgz#b9da6a878a371829a0502c9b6c1c143ef6663f4d" + integrity sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA== + +"@ganache/ethereum-address@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/ethereum-address/-/ethereum-address-0.1.4.tgz#0e6d66f4a24f64bf687cb3ff7358fb85b9d9005e" + integrity sha512-sTkU0M9z2nZUzDeHRzzGlW724xhMLXo2LeX1hixbnjHWY1Zg1hkqORywVfl+g5uOO8ht8T0v+34IxNxAhmWlbw== + dependencies: + "@ganache/utils" "0.1.4" + +"@ganache/ethereum-options@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/ethereum-options/-/ethereum-options-0.1.4.tgz#6a559abb44225e2b8741a8f78a19a46714a71cd6" + integrity sha512-i4l46taoK2yC41FPkcoDlEVoqHS52wcbHPqJtYETRWqpOaoj9hAg/EJIHLb1t6Nhva2CdTO84bG+qlzlTxjAHw== + dependencies: + "@ganache/ethereum-address" "0.1.4" + "@ganache/ethereum-utils" "0.1.4" + "@ganache/options" "0.1.4" + "@ganache/utils" "0.1.4" + bip39 "3.0.4" + seedrandom "3.0.5" + +"@ganache/ethereum-utils@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/ethereum-utils/-/ethereum-utils-0.1.4.tgz#fae4b5b9e642e751ff1fa0cd7316c92996317257" + integrity sha512-FKXF3zcdDrIoCqovJmHLKZLrJ43234Em2sde/3urUT/10gSgnwlpFmrv2LUMAmSbX3lgZhW/aSs8krGhDevDAg== + dependencies: + "@ethereumjs/common" "2.6.0" + "@ethereumjs/tx" "3.4.0" + "@ethereumjs/vm" "5.6.0" + "@ganache/ethereum-address" "0.1.4" + "@ganache/rlp" "0.1.4" + "@ganache/utils" "0.1.4" + emittery "0.10.0" + ethereumjs-abi "0.6.8" + ethereumjs-util "7.1.3" + +"@ganache/options@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/options/-/options-0.1.4.tgz#325b07e6de85094667aaaaf3d653e32404a04b78" + integrity sha512-zAe/craqNuPz512XQY33MOAG6Si1Xp0hCvfzkBfj2qkuPcbJCq6W/eQ5MB6SbXHrICsHrZOaelyqjuhSEmjXRw== + dependencies: + "@ganache/utils" "0.1.4" + bip39 "3.0.4" + seedrandom "3.0.5" + +"@ganache/rlp@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/rlp/-/rlp-0.1.4.tgz#f4043afda83e1a14a4f80607b103daf166a9b374" + integrity sha512-Do3D1H6JmhikB+6rHviGqkrNywou/liVeFiKIpOBLynIpvZhRCgn3SEDxyy/JovcaozTo/BynHumfs5R085MFQ== + dependencies: + "@ganache/utils" "0.1.4" + rlp "2.2.6" + +"@ganache/utils@0.1.4": + version "0.1.4" + resolved "https://registry.yarnpkg.com/@ganache/utils/-/utils-0.1.4.tgz#25d60d7689e3dda6a8a7ad70e3646f07c2c39a1f" + integrity sha512-oatUueU3XuXbUbUlkyxeLLH3LzFZ4y5aSkNbx6tjSIhVTPeh+AuBKYt4eQ73FFcTB3nj/gZoslgAh5CN7O369w== + dependencies: + emittery "0.10.0" + keccak "3.0.1" + seedrandom "3.0.5" + optionalDependencies: + "@trufflesuite/bigint-buffer" "1.1.9" + +"@humanfs/core@^0.19.1": + version "0.19.1" + resolved "https://registry.yarnpkg.com/@humanfs/core/-/core-0.19.1.tgz#17c55ca7d426733fe3c561906b8173c336b40a77" + integrity sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA== + +"@humanfs/node@^0.16.6": + version "0.16.7" + resolved "https://registry.yarnpkg.com/@humanfs/node/-/node-0.16.7.tgz#822cb7b3a12c5a240a24f621b5a2413e27a45f26" + integrity sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ== + dependencies: + "@humanfs/core" "^0.19.1" + "@humanwhocodes/retry" "^0.4.0" + +"@humanwhocodes/module-importer@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== + +"@humanwhocodes/retry@^0.4.0", "@humanwhocodes/retry@^0.4.2": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.4.3.tgz#c2b9d2e374ee62c586d3adbea87199b1d7a7a6ba" + integrity sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ== + +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + +"@jridgewell/resolve-uri@^3.0.3": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/sourcemap-codec@^1.4.10": + version "1.5.5" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz#6912b00d2c631c0d15ce1a7ab57cd657f2a8f8ba" + integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== + +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + +"@noble/curves@1.4.2", "@noble/curves@~1.4.0": + version "1.4.2" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.4.2.tgz#40309198c76ed71bc6dbf7ba24e81ceb4d0d1fe9" + integrity sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw== + dependencies: + "@noble/hashes" "1.4.0" + +"@noble/curves@~1.9.2": + version "1.9.7" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.9.7.tgz#79d04b4758a43e4bca2cbdc62e7771352fa6b951" + integrity sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/hashes@1.2.0", "@noble/hashes@~1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.2.0.tgz#a3150eeb09cc7ab207ebf6d7b9ad311a9bdbed12" + integrity sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ== + +"@noble/hashes@1.4.0", "@noble/hashes@~1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426" + integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg== + +"@noble/hashes@1.8.0", "@noble/hashes@^1.4.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.8.0.tgz#cee43d801fcef9644b11b8194857695acd5f815a" + integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== + +"@noble/hashes@2.0.0-beta.1": + version "2.0.0-beta.1" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-2.0.0-beta.1.tgz#641fd2f13e25ae2acdc7d0b082289a5adeda13cf" + integrity sha512-xnnogJ6ccNZ55lLgWdjhBqKUdFoznjpFr3oy23n5Qm7h+ZMtt8v4zWvHg9zRW6jcETweplD5F4iUqb0SSPC+Dw== + +"@noble/secp256k1@1.7.1": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.1.tgz#b251c70f824ce3ca7f8dc3df08d58f005cc0507c" + integrity sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw== + +"@noble/secp256k1@~1.7.0": + version "1.7.2" + resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.7.2.tgz#c2c3343e2dce80e15a914d7442147507f8a98e7f" + integrity sha512-/qzwYl5eFLH8OWIecQWM31qld2g1NfjgylK+TNhqtaUKP37Nm+Y+z30Fjhw0Ct8p9yCQEm2N3W/AckdIb3SMcQ== + +"@nomicfoundation/edr-darwin-arm64@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.11.3.tgz#d8e2609fc24cf20e75c3782e39cd5a95f7488075" + integrity sha512-w0tksbdtSxz9nuzHKsfx4c2mwaD0+l5qKL2R290QdnN9gi9AV62p9DHkOgfBdyg6/a6ZlnQqnISi7C9avk/6VA== + +"@nomicfoundation/edr-darwin-x64@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.11.3.tgz#7a9e94cee330269a33c7f1dce267560c7e12dbd3" + integrity sha512-QR4jAFrPbOcrO7O2z2ESg+eUeIZPe2bPIlQYgiJ04ltbSGW27FblOzdd5+S3RoOD/dsZGKAvvy6dadBEl0NgoA== + +"@nomicfoundation/edr-linux-arm64-gnu@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.11.3.tgz#cd5ec90c7263045c3dfd0b109c73206e488edc27" + integrity sha512-Ktjv89RZZiUmOFPspuSBVJ61mBZQ2+HuLmV67InNlh9TSUec/iDjGIwAn59dx0bF/LOSrM7qg5od3KKac4LJDQ== + +"@nomicfoundation/edr-linux-arm64-musl@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.11.3.tgz#ed23df2d9844470f5661716da27d99a72a69e99e" + integrity sha512-B3sLJx1rL2E9pfdD4mApiwOZSrX0a/KQSBWdlq1uAhFKqkl00yZaY4LejgZndsJAa4iKGQJlGnw4HCGeVt0+jA== + +"@nomicfoundation/edr-linux-x64-gnu@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.11.3.tgz#87a62496c2c4b808bc4a9ae96cca1642a21c2b51" + integrity sha512-D/4cFKDXH6UYyKPu6J3Y8TzW11UzeQI0+wS9QcJzjlrrfKj0ENW7g9VihD1O2FvXkdkTjcCZYb6ai8MMTCsaVw== + +"@nomicfoundation/edr-linux-x64-musl@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.11.3.tgz#8cfe408c73bcb9ed5e263910c313866d442f4b48" + integrity sha512-ergXuIb4nIvmf+TqyiDX5tsE49311DrBky6+jNLgsGDTBaN1GS3OFwFS8I6Ri/GGn6xOaT8sKu3q7/m+WdlFzg== + +"@nomicfoundation/edr-win32-x64-msvc@0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.11.3.tgz#fb208b94553c7eb22246d73a1ac4de5bfdb97d01" + integrity sha512-snvEf+WB3OV0wj2A7kQ+ZQqBquMcrozSLXcdnMdEl7Tmn+KDCbmFKBt3Tk0X3qOU4RKQpLPnTxdM07TJNVtung== + +"@nomicfoundation/edr@^0.11.3": + version "0.11.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/edr/-/edr-0.11.3.tgz#e8b30b868788e45d7a2ee2359a021ef7dcb96952" + integrity sha512-kqILRkAd455Sd6v8mfP3C1/0tCOynJWY+Ir+k/9Boocu2kObCrsFgG+ZWB7fSBVdd9cPVSNrnhWS+V+PEo637g== + dependencies: + "@nomicfoundation/edr-darwin-arm64" "0.11.3" + "@nomicfoundation/edr-darwin-x64" "0.11.3" + "@nomicfoundation/edr-linux-arm64-gnu" "0.11.3" + "@nomicfoundation/edr-linux-arm64-musl" "0.11.3" + "@nomicfoundation/edr-linux-x64-gnu" "0.11.3" + "@nomicfoundation/edr-linux-x64-musl" "0.11.3" + "@nomicfoundation/edr-win32-x64-msvc" "0.11.3" + +"@nomicfoundation/hardhat-foundry@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@nomicfoundation/hardhat-foundry/-/hardhat-foundry-1.2.0.tgz#00bac127d1540c5c3900709f9f5fa511c599ba6c" + integrity sha512-2AJQLcWnUk/iQqHDVnyOadASKFQKF1PhNtt1cONEQqzUPK+fqME1IbP+EKu+RkZTRcyc4xqUMaB0sutglKRITg== + dependencies: + picocolors "^1.1.0" + +"@nomicfoundation/hardhat-network-helpers@^1.0.10": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/hardhat-network-helpers/-/hardhat-network-helpers-1.1.2.tgz#24ba943d27099f09f9a188f04cdfe7c136d5aafc" + integrity sha512-p7HaUVDbLj7ikFivQVNhnfMHUBgiHYMwQWvGn9AriieuopGOELIrwj2KjyM2a6z70zai5YKO264Vwz+3UFJZPQ== + dependencies: + ethereumjs-util "^7.1.4" + +"@nomicfoundation/slang@^0.18.3": + version "0.18.3" + resolved "https://registry.yarnpkg.com/@nomicfoundation/slang/-/slang-0.18.3.tgz#976b6c3820081cebf050afbea434038aac9313cc" + integrity sha512-YqAWgckqbHM0/CZxi9Nlf4hjk9wUNLC9ngWCWBiqMxPIZmzsVKYuChdlrfeBPQyvQQBoOhbx+7C1005kLVQDZQ== + dependencies: + "@bytecodealliance/preview2-shim" "0.17.0" + +"@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-darwin-arm64/-/solidity-analyzer-darwin-arm64-0.1.2.tgz#3a9c3b20d51360b20affb8f753e756d553d49557" + integrity sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw== + +"@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-darwin-x64/-/solidity-analyzer-darwin-x64-0.1.2.tgz#74dcfabeb4ca373d95bd0d13692f44fcef133c28" + integrity sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw== + +"@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-linux-arm64-gnu/-/solidity-analyzer-linux-arm64-gnu-0.1.2.tgz#4af5849a89e5a8f511acc04f28eb5d4460ba2b6a" + integrity sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA== + +"@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-linux-arm64-musl/-/solidity-analyzer-linux-arm64-musl-0.1.2.tgz#54036808a9a327b2ff84446c130a6687ee702a8e" + integrity sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA== + +"@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-linux-x64-gnu/-/solidity-analyzer-linux-x64-gnu-0.1.2.tgz#466cda0d6e43691986c944b909fc6dbb8cfc594e" + integrity sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g== + +"@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-linux-x64-musl/-/solidity-analyzer-linux-x64-musl-0.1.2.tgz#2b35826987a6e94444140ac92310baa088ee7f94" + integrity sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg== + +"@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer-win32-x64-msvc/-/solidity-analyzer-win32-x64-msvc-0.1.2.tgz#e6363d13b8709ca66f330562337dbc01ce8bbbd9" + integrity sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA== + +"@nomicfoundation/solidity-analyzer@^0.1.0": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.2.tgz#8bcea7d300157bf3a770a851d9f5c5e2db34ac55" + integrity sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA== + optionalDependencies: + "@nomicfoundation/solidity-analyzer-darwin-arm64" "0.1.2" + "@nomicfoundation/solidity-analyzer-darwin-x64" "0.1.2" + "@nomicfoundation/solidity-analyzer-linux-arm64-gnu" "0.1.2" + "@nomicfoundation/solidity-analyzer-linux-arm64-musl" "0.1.2" + "@nomicfoundation/solidity-analyzer-linux-x64-gnu" "0.1.2" + "@nomicfoundation/solidity-analyzer-linux-x64-musl" "0.1.2" + "@nomicfoundation/solidity-analyzer-win32-x64-msvc" "0.1.2" + +"@nomiclabs/hardhat-ethers@^2.2.1", "@nomiclabs/hardhat-ethers@^2.2.3": + version "2.2.3" + resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.2.3.tgz#b41053e360c31a32c2640c9a45ee981a7e603fe0" + integrity sha512-YhzPdzb612X591FOe68q+qXVXGG2ANZRvDo0RRUtimev85rCrAlv/TLMEZw5c+kq9AbzocLTVX/h2jVIFPL9Xg== "@nomiclabs/hardhat-etherscan@npm:@pinto-org/hardhat-etherscan@3.1.8-pinto.1": - version: 3.1.8-pinto.1 - resolution: "@pinto-org/hardhat-etherscan@npm:3.1.8-pinto.1" - dependencies: - "@ethersproject/abi": "npm:^5.1.2" - "@ethersproject/address": "npm:^5.0.2" - cbor: "npm:^8.1.0" - chalk: "npm:^2.4.2" - debug: "npm:^4.1.1" - fs-extra: "npm:^7.0.1" - lodash: "npm:^4.17.11" - semver: "npm:^6.3.0" - table: "npm:^6.8.0" - undici: "npm:^5.14.0" - peerDependencies: - hardhat: ^2.0.4 - checksum: 10c0/6b41784c2ffa0818a5fca421dcf4b07028f4c61947f9376dea44d01300f94d1d985fa0ae26144ac2c519a506da9d9fda2ce3a34b453a316a7b1dac4d1ce067dc - languageName: node - linkType: hard - -"@nomiclabs/hardhat-waffle@npm:^2.0.3": - version: 2.0.6 - resolution: "@nomiclabs/hardhat-waffle@npm:2.0.6" - peerDependencies: - "@nomiclabs/hardhat-ethers": ^2.0.0 - "@types/sinon-chai": ^3.2.3 - ethereum-waffle: "*" - ethers: ^5.0.0 - hardhat: ^2.0.0 - checksum: 10c0/9614ab1e76959cfccc586842d990de4c2aa74cea8e82a838d017d91d4c696df931af4a77af9c16325e037ec8438a8c98c9bae5d9e4d0d0fcdaa147c86bce01b5 - languageName: node - linkType: hard - -"@npmcli/agent@npm:^4.0.0": - version: 4.0.0 - resolution: "@npmcli/agent@npm:4.0.0" - dependencies: - agent-base: "npm:^7.1.0" - http-proxy-agent: "npm:^7.0.0" - https-proxy-agent: "npm:^7.0.1" - lru-cache: "npm:^11.2.1" - socks-proxy-agent: "npm:^8.0.3" - checksum: 10c0/f7b5ce0f3dd42c3f8c6546e8433573d8049f67ef11ec22aa4704bc41483122f68bf97752e06302c455ead667af5cb753e6a09bff06632bc465c1cfd4c4b75a53 - languageName: node - linkType: hard - -"@npmcli/fs@npm:^5.0.0": - version: 5.0.0 - resolution: "@npmcli/fs@npm:5.0.0" - dependencies: - semver: "npm:^7.3.5" - checksum: 10c0/26e376d780f60ff16e874a0ac9bc3399186846baae0b6e1352286385ac134d900cc5dafaded77f38d77f86898fc923ae1cee9d7399f0275b1aa24878915d722b - languageName: node - linkType: hard - -"@openzeppelin/contracts-upgradeable@npm:5.0.2": - version: 5.0.2 - resolution: "@openzeppelin/contracts-upgradeable@npm:5.0.2" - peerDependencies: - "@openzeppelin/contracts": 5.0.2 - checksum: 10c0/0bd47a4fa0ba8084c1df9573968ff02387bc21514d846b5feb4ad42f90f3ba26bb1e40f17f03e4fa24ffbe473b9ea06c137283297884ab7d5b98d2c112904dc9 - languageName: node - linkType: hard - -"@openzeppelin/contracts@npm:5.0.2": - version: 5.0.2 - resolution: "@openzeppelin/contracts@npm:5.0.2" - checksum: 10c0/d042661db7bb2f3a4b9ef30bba332e86ac20907d171f2ebfccdc9255cc69b62786fead8d6904b8148a8f26946bc7c15eead91b95f75db0c193a99d52e528663e - languageName: node - linkType: hard - -"@openzeppelin/defender-base-client@npm:^1.46.0": - version: 1.54.6 - resolution: "@openzeppelin/defender-base-client@npm:1.54.6" - dependencies: - amazon-cognito-identity-js: "npm:^6.0.1" - async-retry: "npm:^1.3.3" - axios: "npm:^1.4.0" - lodash: "npm:^4.17.19" - node-fetch: "npm:^2.6.0" - checksum: 10c0/adeac961ae8e06e620ff6ff227090180613fbad233bbed962ae1d1769f1a936cdba24b952a1c10fec69bf9695a7faf7572fe86fd174198b86e26706391784bef - languageName: node - linkType: hard - -"@openzeppelin/hardhat-upgrades@npm:^1.17.0": - version: 1.28.0 - resolution: "@openzeppelin/hardhat-upgrades@npm:1.28.0" - dependencies: - "@openzeppelin/defender-base-client": "npm:^1.46.0" - "@openzeppelin/platform-deploy-client": "npm:^0.8.0" - "@openzeppelin/upgrades-core": "npm:^1.27.0" - chalk: "npm:^4.1.0" - debug: "npm:^4.1.1" - proper-lockfile: "npm:^4.1.1" - peerDependencies: - "@nomiclabs/hardhat-ethers": ^2.0.0 - "@nomiclabs/hardhat-etherscan": ^3.1.0 - ethers: ^5.0.5 - hardhat: ^2.0.2 - peerDependenciesMeta: - "@nomiclabs/harhdat-etherscan": - optional: true - bin: - migrate-oz-cli-project: dist/scripts/migrate-oz-cli-project.js - checksum: 10c0/8cd6c52ab966aac09435e58c8d5a80747adbd34ffbe3808205c30d6851a7e4ef35272a36f8c837da4841b4643ac3df8ea1d982218f38b99144df16e68ada3b9f - languageName: node - linkType: hard - -"@openzeppelin/merkle-tree@npm:1.0.7": - version: 1.0.7 - resolution: "@openzeppelin/merkle-tree@npm:1.0.7" - dependencies: - "@ethersproject/abi": "npm:^5.7.0" - "@ethersproject/bytes": "npm:^5.7.0" - "@ethersproject/constants": "npm:^5.7.0" - "@ethersproject/keccak256": "npm:^5.7.0" - checksum: 10c0/16e3f5e18e122d8cb0e86dc5ef3e1902784b8d1f395c5ef3fe37ff51838dc7a296fc35d254a0508155d35f05b0037e30bb2b15d839d538a86284ce3d1c6d105b - languageName: node - linkType: hard - -"@openzeppelin/platform-deploy-client@npm:^0.8.0": - version: 0.8.0 - resolution: "@openzeppelin/platform-deploy-client@npm:0.8.0" - dependencies: - "@ethersproject/abi": "npm:^5.6.3" - "@openzeppelin/defender-base-client": "npm:^1.46.0" - axios: "npm:^0.21.2" - lodash: "npm:^4.17.19" - node-fetch: "npm:^2.6.0" - checksum: 10c0/7a85c19fd94b268386fdcef5951218467ea146e7047fd4e0536f8044138a7867c904358e681cd6a56bf1e0d1a82ffe7172df4b291b4278c54094925c8890d35a - languageName: node - linkType: hard - -"@openzeppelin/upgrades-core@npm:^1.27.0": - version: 1.44.2 - resolution: "@openzeppelin/upgrades-core@npm:1.44.2" - dependencies: - "@nomicfoundation/slang": "npm:^0.18.3" - bignumber.js: "npm:^9.1.2" - cbor: "npm:^10.0.0" - chalk: "npm:^4.1.0" - compare-versions: "npm:^6.0.0" - debug: "npm:^4.1.1" - ethereumjs-util: "npm:^7.0.3" - minimatch: "npm:^9.0.5" - minimist: "npm:^1.2.7" - proper-lockfile: "npm:^4.1.1" - solidity-ast: "npm:^0.4.60" - bin: - openzeppelin-upgrades-core: dist/cli/cli.js - checksum: 10c0/6e4fe9d3209b656dfa2fba32fa8b9bd3c0feafc2c902d81a6c8d57e4358ddf954ea326c6df017c0365fb0c8118a03942409cde2fd60b4509b2a9f8e007fbdfab - languageName: node - linkType: hard - -"@pkgjs/parseargs@npm:^0.11.0": - version: 0.11.0 - resolution: "@pkgjs/parseargs@npm:0.11.0" - checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd - languageName: node - linkType: hard - -"@prb/math@npm:v2.5.0": - version: 2.5.0 - resolution: "@prb/math@npm:2.5.0" - dependencies: - "@ethersproject/bignumber": "npm:^5.5.0" - decimal.js: "npm:^10.3.1" - evm-bn: "npm:^1.1.1" - mathjs: "npm:^10.4.0" - peerDependencies: - "@ethersproject/bignumber": 5.x - evm-bn: 1.x - mathjs: 10.x - checksum: 10c0/e4cb6e4d3db887359809353998637613f059ea523b1f68ed50d7b7b1412a1f375bad0252d02e3ff36a2c7c017e04d1bc655d338b467525e7026077d4fceb111b - languageName: node - linkType: hard - -"@resolver-engine/core@npm:^0.3.3": - version: 0.3.3 - resolution: "@resolver-engine/core@npm:0.3.3" - dependencies: - debug: "npm:^3.1.0" - is-url: "npm:^1.2.4" - request: "npm:^2.85.0" - checksum: 10c0/a562d412b2976b36be85878112518e85cb32a024334bb191f9657adb7e38f264c0b91429a954e7e097bb5c8fc54c6df76840cd43590c73be4dc7932150eb6e01 - languageName: node - linkType: hard - -"@resolver-engine/fs@npm:^0.3.3": - version: 0.3.3 - resolution: "@resolver-engine/fs@npm:0.3.3" - dependencies: - "@resolver-engine/core": "npm:^0.3.3" - debug: "npm:^3.1.0" - checksum: 10c0/4f21e8633eb5225aeb24ca3f0ebf74129cbb497d704ed473c5f49bfc3d4b7c33a4a02decc966b7b4d654b517a4a88661cc2b84784cf6d394c1e1e5d49f371cc7 - languageName: node - linkType: hard - -"@resolver-engine/imports-fs@npm:^0.3.3": - version: 0.3.3 - resolution: "@resolver-engine/imports-fs@npm:0.3.3" - dependencies: - "@resolver-engine/fs": "npm:^0.3.3" - "@resolver-engine/imports": "npm:^0.3.3" - debug: "npm:^3.1.0" - checksum: 10c0/bcbd1e11f10550353ba4b82f29a5d9026d9f6cb625ccaaaf52898542fee832d11fc3eedaaf5089a5f6b0e3213c810233209f8e345b19c6a9994f58d6fec1adeb - languageName: node - linkType: hard - -"@resolver-engine/imports@npm:^0.3.3": - version: 0.3.3 - resolution: "@resolver-engine/imports@npm:0.3.3" - dependencies: - "@resolver-engine/core": "npm:^0.3.3" - debug: "npm:^3.1.0" - hosted-git-info: "npm:^2.6.0" - path-browserify: "npm:^1.0.0" - url: "npm:^0.11.0" - checksum: 10c0/efdb3996ebaac05702edfa35ff4a9f53e4ef141e91ea534ce84becc65371638091b0c2e912f020ee5b654fb32a60b29591a3ea769af9ed70b9f8039bd278f571 - languageName: node - linkType: hard - -"@scure/base@npm:~1.1.0, @scure/base@npm:~1.1.6": - version: 1.1.9 - resolution: "@scure/base@npm:1.1.9" - checksum: 10c0/77a06b9a2db8144d22d9bf198338893d77367c51b58c72b99df990c0a11f7cadd066d4102abb15e3ca6798d1529e3765f55c4355742465e49aed7a0c01fe76e8 - languageName: node - linkType: hard - -"@scure/base@npm:~1.2.5": - version: 1.2.6 - resolution: "@scure/base@npm:1.2.6" - checksum: 10c0/49bd5293371c4e062cb6ba689c8fe3ea3981b7bb9c000400dc4eafa29f56814cdcdd27c04311c2fec34de26bc373c593a1d6ca6d754398a488d587943b7c128a - languageName: node - linkType: hard - -"@scure/bip32@npm:1.1.5": - version: 1.1.5 - resolution: "@scure/bip32@npm:1.1.5" - dependencies: - "@noble/hashes": "npm:~1.2.0" - "@noble/secp256k1": "npm:~1.7.0" - "@scure/base": "npm:~1.1.0" - checksum: 10c0/d0521f6de28278e06f2d517307b4de6c9bcb3dbdf9a5844bb57a6e4916a180e4136129ccab295c27bd1196ef77757608255afcd7cf927e03baec4479b3df74fc - languageName: node - linkType: hard - -"@scure/bip32@npm:1.4.0": - version: 1.4.0 - resolution: "@scure/bip32@npm:1.4.0" - dependencies: - "@noble/curves": "npm:~1.4.0" - "@noble/hashes": "npm:~1.4.0" - "@scure/base": "npm:~1.1.6" - checksum: 10c0/6849690d49a3bf1d0ffde9452eb16ab83478c1bc0da7b914f873e2930cd5acf972ee81320e3df1963eb247cf57e76d2d975b5f97093d37c0e3f7326581bf41bd - languageName: node - linkType: hard - -"@scure/bip39@npm:1.1.1": - version: 1.1.1 - resolution: "@scure/bip39@npm:1.1.1" - dependencies: - "@noble/hashes": "npm:~1.2.0" - "@scure/base": "npm:~1.1.0" - checksum: 10c0/821dc9d5be8362a32277390526db064860c2216a079ba51d63def9289c2b290599e93681ebbeebf0e93540799eec35784c1dfcf5167d0b280ef148e5023ce01b - languageName: node - linkType: hard - -"@scure/bip39@npm:1.3.0": - version: 1.3.0 - resolution: "@scure/bip39@npm:1.3.0" - dependencies: - "@noble/hashes": "npm:~1.4.0" - "@scure/base": "npm:~1.1.6" - checksum: 10c0/1ae1545a7384a4d9e33e12d9e9f8824f29b0279eb175b0f0657c0a782c217920054f9a1d28eb316a417dfc6c4e0b700d6fbdc6da160670107426d52fcbe017a8 - languageName: node - linkType: hard - -"@sentry/core@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/core@npm:5.30.0" - dependencies: - "@sentry/hub": "npm:5.30.0" - "@sentry/minimal": "npm:5.30.0" - "@sentry/types": "npm:5.30.0" - "@sentry/utils": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/6407b9c2a6a56f90c198f5714b3257df24d89d1b4ca6726bd44760d0adabc25798b69fef2c88ccea461c7e79e3c78861aaebfd51fd3cb892aee656c3f7e11801 - languageName: node - linkType: hard - -"@sentry/hub@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/hub@npm:5.30.0" - dependencies: - "@sentry/types": "npm:5.30.0" - "@sentry/utils": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/386c91d06aa44be0465fc11330d748a113e464d41cd562a9e1d222a682cbcb14e697a3e640953e7a0239997ad8a02b223a0df3d9e1d8816cb823fd3613be3e2f - languageName: node - linkType: hard - -"@sentry/minimal@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/minimal@npm:5.30.0" - dependencies: - "@sentry/hub": "npm:5.30.0" - "@sentry/types": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/34ec05503de46d01f98c94701475d5d89cc044892c86ccce30e01f62f28344eb23b718e7cf573815e46f30a4ac9da3129bed9b3d20c822938acfb40cbe72437b - languageName: node - linkType: hard - -"@sentry/node@npm:^5.18.1": - version: 5.30.0 - resolution: "@sentry/node@npm:5.30.0" - dependencies: - "@sentry/core": "npm:5.30.0" - "@sentry/hub": "npm:5.30.0" - "@sentry/tracing": "npm:5.30.0" - "@sentry/types": "npm:5.30.0" - "@sentry/utils": "npm:5.30.0" - cookie: "npm:^0.4.1" - https-proxy-agent: "npm:^5.0.0" - lru_map: "npm:^0.3.3" - tslib: "npm:^1.9.3" - checksum: 10c0/c50db7c81ace57cac17692245c2ab3c84a6149183f81d5f2dfd157eaa7b66eb4d6a727dd13a754bb129c96711389eec2944cd94126722ee1d8b11f2b627b830d - languageName: node - linkType: hard - -"@sentry/tracing@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/tracing@npm:5.30.0" - dependencies: - "@sentry/hub": "npm:5.30.0" - "@sentry/minimal": "npm:5.30.0" - "@sentry/types": "npm:5.30.0" - "@sentry/utils": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/46830265bc54a3203d7d9f0d8d9f2f7d9d2c6a977e07ccdae317fa3ea29c388b904b3bef28f7a0ba9c074845d67feab63c6d3c0ddce9aeb275b6c966253fb415 - languageName: node - linkType: hard - -"@sentry/types@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/types@npm:5.30.0" - checksum: 10c0/99c6e55c0a82c8ca95be2e9dbb35f581b29e4ff7af74b23bc62b690de4e35febfa15868184a2303480ef86babd4fea5273cf3b5ddf4a27685b841a72f13a0c88 - languageName: node - linkType: hard - -"@sentry/utils@npm:5.30.0": - version: 5.30.0 - resolution: "@sentry/utils@npm:5.30.0" - dependencies: - "@sentry/types": "npm:5.30.0" - tslib: "npm:^1.9.3" - checksum: 10c0/ca8eebfea7ac7db6d16f6c0b8a66ac62587df12a79ce9d0d8393f4d69880bb8d40d438f9810f7fb107a9880fe0d68bbf797b89cbafd113e89a0829eb06b205f8 - languageName: node - linkType: hard - -"@smithy/types@npm:^4.11.0": - version: 4.12.0 - resolution: "@smithy/types@npm:4.12.0" - dependencies: - tslib: "npm:^2.6.2" - checksum: 10c0/ac81de3f24b43e52a5089279bced4ff04a853e0bdc80143a234e79f7f40cbd61d85497b08a252265570b4637a3cf265cf85a7a09e5f194937fe30706498640b7 - languageName: node - linkType: hard - -"@solidity-parser/parser@npm:^0.14.0": - version: 0.14.5 - resolution: "@solidity-parser/parser@npm:0.14.5" - dependencies: - antlr4ts: "npm:^0.5.0-alpha.4" - checksum: 10c0/d5c689d8925a18e1ceb2f6449a8263915b1676117856109b7793eda8f7dafc975b6ed0d0d73fc08257903cac383484e4c8f8cf47b069621e81ba368c4ea4cf6a - languageName: node - linkType: hard - -"@solidity-parser/parser@npm:^0.20.1": - version: 0.20.2 - resolution: "@solidity-parser/parser@npm:0.20.2" - checksum: 10c0/23b0b7ed343a4fa55cb8621cf4fc81b0bdd791a4ee7e96ced7778db07de66d4e418db2c2dc1525b1f82fc0310ac829c78382327292b37e35cb30a19961fcb429 - languageName: node - linkType: hard - -"@trufflesuite/bigint-buffer@npm:1.1.10": - version: 1.1.10 - resolution: "@trufflesuite/bigint-buffer@npm:1.1.10" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:4.4.0" - checksum: 10c0/5761201f32d05f1513f6591c38026ce00ff87462e26a2640e458be23fb57fa83b5fddef433220253ee3f98d0010959b7720db0a094d048d1c825978fd7a96938 - languageName: node - linkType: hard - -"@trufflesuite/bigint-buffer@npm:1.1.9": - version: 1.1.9 - resolution: "@trufflesuite/bigint-buffer@npm:1.1.9" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:4.3.0" - checksum: 10c0/70fa30094da69e40e809f066ed6543167fce3282b06504d703cb96f4ab951a5eba3c600ec5db8e926c079da3d786b297d3289c7261208d914d29e9f2d908def6 - languageName: node - linkType: hard - -"@tsconfig/node10@npm:^1.0.7": - version: 1.0.12 - resolution: "@tsconfig/node10@npm:1.0.12" - checksum: 10c0/7bbbd7408cfaced86387a9b1b71cebc91c6fd701a120369735734da8eab1a4773fc079abd9f40c9e0b049e12586c8ac0e13f0da596bfd455b9b4c3faa813ebc5 - languageName: node - linkType: hard - -"@tsconfig/node12@npm:^1.0.7": - version: 1.0.11 - resolution: "@tsconfig/node12@npm:1.0.11" - checksum: 10c0/dddca2b553e2bee1308a056705103fc8304e42bb2d2cbd797b84403a223b25c78f2c683ec3e24a095e82cd435387c877239bffcb15a590ba817cd3f6b9a99fd9 - languageName: node - linkType: hard - -"@tsconfig/node14@npm:^1.0.0": - version: 1.0.3 - resolution: "@tsconfig/node14@npm:1.0.3" - checksum: 10c0/67c1316d065fdaa32525bc9449ff82c197c4c19092b9663b23213c8cbbf8d88b6ed6a17898e0cbc2711950fbfaf40388938c1c748a2ee89f7234fc9e7fe2bf44 - languageName: node - linkType: hard - -"@tsconfig/node16@npm:^1.0.2": - version: 1.0.4 - resolution: "@tsconfig/node16@npm:1.0.4" - checksum: 10c0/05f8f2734e266fb1839eb1d57290df1664fe2aa3b0fdd685a9035806daa635f7519bf6d5d9b33f6e69dd545b8c46bd6e2b5c79acb2b1f146e885f7f11a42a5bb - languageName: node - linkType: hard - -"@typechain/ethers-v5@npm:^10.0.0": - version: 10.2.1 - resolution: "@typechain/ethers-v5@npm:10.2.1" - dependencies: - lodash: "npm:^4.17.15" - ts-essentials: "npm:^7.0.1" - peerDependencies: - "@ethersproject/abi": ^5.0.0 - "@ethersproject/providers": ^5.0.0 - ethers: ^5.1.3 - typechain: ^8.1.1 - typescript: ">=4.3.0" - checksum: 10c0/a576aa3ad7ff270fdff295b6929cc4b5076816740a6ca2bc01ba59f00fcc4b80626e4e05c4a4dc6a8caa61e26b6b939af99d2c6183799132260c068b1dcef72c - languageName: node - linkType: hard - -"@types/abstract-leveldown@npm:*": - version: 7.2.5 - resolution: "@types/abstract-leveldown@npm:7.2.5" - checksum: 10c0/ec6c054a0a09c5a2ba8de6e640169978d34b6ef9b629183c440330208ad67e1322d7dd0aeb834963a9138b47b78730dcddd929c10138ccfddb7b06869264e173 - languageName: node - linkType: hard - -"@types/bn.js@npm:^4.11.3": - version: 4.11.6 - resolution: "@types/bn.js@npm:4.11.6" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/a5a19dafc106b1b2ab35c2024ca37b9d0938dced11cb1cca7d119de5a0dd5f54db525c82cb1392843fc921677452efcbbdce3aa96ecc1457d3de6e266915ebd0 - languageName: node - linkType: hard - -"@types/bn.js@npm:^5.1.0": - version: 5.2.0 - resolution: "@types/bn.js@npm:5.2.0" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/7a36114b8e61faba5c28b433c3e5aabded261745dabb8f3fe41b2d84e8c4c2b8282e52a88a842bd31a565ff5dbf685145ccd91171f1a8d657fb249025c17aa85 - languageName: node - linkType: hard - -"@types/body-parser@npm:*": - version: 1.19.6 - resolution: "@types/body-parser@npm:1.19.6" - dependencies: - "@types/connect": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/542da05c924dce58ee23f50a8b981fee36921850c82222e384931fda3e106f750f7880c47be665217d72dbe445129049db6eb1f44e7a06b09d62af8f3cca8ea7 - languageName: node - linkType: hard - -"@types/concat-stream@npm:^1.6.0": - version: 1.6.1 - resolution: "@types/concat-stream@npm:1.6.1" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/838a0ec89d59a11c425b7728fdd05b17b652086a27fdf5b787778521ccf6d3133d9e9a6e6b803785b28c0a0f7a437582813e37b317ed8100870af836ad49a7a2 - languageName: node - linkType: hard - -"@types/connect@npm:*": - version: 3.4.38 - resolution: "@types/connect@npm:3.4.38" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/2e1cdba2c410f25649e77856505cd60223250fa12dff7a503e492208dbfdd25f62859918f28aba95315251fd1f5e1ffbfca1e25e73037189ab85dd3f8d0a148c - languageName: node - linkType: hard - -"@types/cors@npm:^2.8.17": - version: 2.8.19 - resolution: "@types/cors@npm:2.8.19" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/b5dd407040db7d8aa1bd36e79e5f3f32292f6b075abc287529e9f48df1a25fda3e3799ba30b4656667ffb931d3b75690c1d6ca71e39f7337ea6dfda8581916d0 - languageName: node - linkType: hard - -"@types/estree@npm:^1.0.6": - version: 1.0.8 - resolution: "@types/estree@npm:1.0.8" - checksum: 10c0/39d34d1afaa338ab9763f37ad6066e3f349444f9052b9676a7cc0252ef9485a41c6d81c9c4e0d26e9077993354edf25efc853f3224dd4b447175ef62bdcc86a5 - languageName: node - linkType: hard - -"@types/express-serve-static-core@npm:^5.0.0": - version: 5.1.1 - resolution: "@types/express-serve-static-core@npm:5.1.1" - dependencies: - "@types/node": "npm:*" - "@types/qs": "npm:*" - "@types/range-parser": "npm:*" - "@types/send": "npm:*" - checksum: 10c0/ee88216e114368ef06bcafeceb74a7e8671b90900fb0ab1d49ff41542c3a344231ef0d922bf63daa79f0585f3eebe2ce5ec7f83facc581eff8bcdb136a225ef3 - languageName: node - linkType: hard - -"@types/express@npm:^5.0.0": - version: 5.0.6 - resolution: "@types/express@npm:5.0.6" - dependencies: - "@types/body-parser": "npm:*" - "@types/express-serve-static-core": "npm:^5.0.0" - "@types/serve-static": "npm:^2" - checksum: 10c0/f1071e3389a955d4f9a38aae38634121c7cd9b3171ba4201ec9b56bd534aba07866839d278adc0dda05b942b05a901a02fd174201c3b1f70ce22b10b6c68f24b - languageName: node - linkType: hard - -"@types/form-data@npm:0.0.33": - version: 0.0.33 - resolution: "@types/form-data@npm:0.0.33" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/20bd8f7491d759ce613e35612aef37b3084be43466883ce83e1261905032939bc9e51e470e61bccf6d2f08a39659c44795531bbf66af177176ab0ddbd968e155 - languageName: node - linkType: hard - -"@types/http-errors@npm:*": - version: 2.0.5 - resolution: "@types/http-errors@npm:2.0.5" - checksum: 10c0/00f8140fbc504f47356512bd88e1910c2f07e04233d99c88c854b3600ce0523c8cd0ba7d1897667243282eb44c59abb9245959e2428b9de004f93937f52f7c15 - languageName: node - linkType: hard - -"@types/json-schema@npm:^7.0.15": - version: 7.0.15 - resolution: "@types/json-schema@npm:7.0.15" - checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db - languageName: node - linkType: hard - -"@types/level-errors@npm:*": - version: 3.0.2 - resolution: "@types/level-errors@npm:3.0.2" - checksum: 10c0/5972e8e4a680252828ce34b7124f79b9b2698db68b04174119fa81251dbff185ac06fdc73f5d8bad6b10d6e4eaace53a98f96615ef64982a4fa521bddd55dddb - languageName: node - linkType: hard - -"@types/levelup@npm:^4.3.0": - version: 4.3.3 - resolution: "@types/levelup@npm:4.3.3" - dependencies: - "@types/abstract-leveldown": "npm:*" - "@types/level-errors": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/71473cbbdcd7db9c1c229f0a8a80b2bb5df4ab4bd4667740f2653510018568ee961d68f3c0bc35ed693817e8fa41433ff6991c3e689864f5b22f10650ed855c9 - languageName: node - linkType: hard - -"@types/lru-cache@npm:5.1.1": - version: 5.1.1 - resolution: "@types/lru-cache@npm:5.1.1" - checksum: 10c0/1f17ec9b202c01a89337cc5528198a690be6b61a6688242125fbfb7fa17770e453e00e4685021abf5ae605860ca0722209faac5c254b780d0104730bb0b9e354 - languageName: node - linkType: hard - -"@types/mkdirp@npm:^0.5.2": - version: 0.5.2 - resolution: "@types/mkdirp@npm:0.5.2" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/c3c6c9bdd1f13b2f114dd34122fd2b030220398501a2727bfe0442615a363dd8f3a89aa4e6d25727ee44c8478fb451aefef82e72184dc1bd04e48334808f37dd - languageName: node - linkType: hard - -"@types/node-fetch@npm:^2.6.1": - version: 2.6.13 - resolution: "@types/node-fetch@npm:2.6.13" - dependencies: - "@types/node": "npm:*" - form-data: "npm:^4.0.4" - checksum: 10c0/6313c89f62c50bd0513a6839cdff0a06727ac5495ccbb2eeda51bb2bbbc4f3c0a76c0393a491b7610af703d3d2deb6cf60e37e59c81ceeca803ffde745dbf309 - languageName: node - linkType: hard - -"@types/node@npm:*": - version: 25.0.8 - resolution: "@types/node@npm:25.0.8" - dependencies: - undici-types: "npm:~7.16.0" - checksum: 10c0/2282464cd928ab184b2310b79899c76bfaa88c8d14640dfab2f9218fdee7e2d916056492de683aa3a26050c8f3bbcade0305616a55277a7c344926c0393149e0 - languageName: node - linkType: hard - -"@types/node@npm:11.11.6": - version: 11.11.6 - resolution: "@types/node@npm:11.11.6" - checksum: 10c0/8a04d16475dc8b88031b8d9d97cbf11612802940c0514ea661c41ae02190e30fb3c69a870a523b9918477169f8c7e0d01df85d4648b9fe873d087d502fd7ba7e - languageName: node - linkType: hard - -"@types/node@npm:^10.0.3": - version: 10.17.60 - resolution: "@types/node@npm:10.17.60" - checksum: 10c0/0742294912a6e79786cdee9ed77cff6ee8ff007b55d8e21170fc3e5994ad3a8101fea741898091876f8dc32b0a5ae3d64537b7176799e92da56346028d2cbcd2 - languageName: node - linkType: hard - -"@types/node@npm:^8.0.0": - version: 8.10.66 - resolution: "@types/node@npm:8.10.66" - checksum: 10c0/425e0fca5bad0d6ff14336946a1e3577750dcfbb7449614786d3241ca78ff44e3beb43eace122682de1b9d8e25cf2a0456a0b3e500d78cb55cab68f892e38141 - languageName: node - linkType: hard - -"@types/pbkdf2@npm:^3.0.0": - version: 3.1.2 - resolution: "@types/pbkdf2@npm:3.1.2" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/4f60b0e3c73297f55023b993d3d543212aa7f61c8c0d6a2720f5dbe2cf38e2fe55ff295d550ac048dddbfc3d44c285cfe16126d65c613bd67a57662357e268d9 - languageName: node - linkType: hard - -"@types/prettier@npm:^2.1.1": - version: 2.7.3 - resolution: "@types/prettier@npm:2.7.3" - checksum: 10c0/0960b5c1115bb25e979009d0b44c42cf3d792accf24085e4bfce15aef5794ea042e04e70c2139a2c3387f781f18c89b5706f000ddb089e9a4a2ccb7536a2c5f0 - languageName: node - linkType: hard - -"@types/qs@npm:*, @types/qs@npm:^6.2.31": - version: 6.14.0 - resolution: "@types/qs@npm:6.14.0" - checksum: 10c0/5b3036df6e507483869cdb3858201b2e0b64b4793dc4974f188caa5b5732f2333ab9db45c08157975054d3b070788b35088b4bc60257ae263885016ee2131310 - languageName: node - linkType: hard - -"@types/range-parser@npm:*": - version: 1.2.7 - resolution: "@types/range-parser@npm:1.2.7" - checksum: 10c0/361bb3e964ec5133fa40644a0b942279ed5df1949f21321d77de79f48b728d39253e5ce0408c9c17e4e0fd95ca7899da36841686393b9f7a1e209916e9381a3c - languageName: node - linkType: hard - -"@types/secp256k1@npm:^4.0.1": - version: 4.0.7 - resolution: "@types/secp256k1@npm:4.0.7" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/3e4a22bb699597adc723414a841d2e8a1fa71c95c3d018c6a2dd8482500b6e9fe2d78d87e758f18c1aabe333cac22ac2a96f456e3bc147df30b7fac4e6346618 - languageName: node - linkType: hard - -"@types/seedrandom@npm:3.0.1": - version: 3.0.1 - resolution: "@types/seedrandom@npm:3.0.1" - checksum: 10c0/b9be192c99b25d7d5d93928e6106f1baff86a4ced33c7b9f94609c659c5d8cb657b70683c74798f83e12caf75af072d3e4f2608ab57a01c897c512fe991f6c9a - languageName: node - linkType: hard - -"@types/send@npm:*": - version: 1.2.1 - resolution: "@types/send@npm:1.2.1" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/7673747f8c2d8e67f3b1b3b57e9d4d681801a4f7b526ecf09987bb9a84a61cf94aa411c736183884dc762c1c402a61681eb1ef200d8d45d7e5ec0ab67ea5f6c1 - languageName: node - linkType: hard - -"@types/serve-static@npm:^2": - version: 2.2.0 - resolution: "@types/serve-static@npm:2.2.0" - dependencies: - "@types/http-errors": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/a3c6126bdbf9685e6c7dc03ad34639666eff32754e912adeed9643bf3dd3aa0ff043002a7f69039306e310d233eb8e160c59308f95b0a619f32366bbc48ee094 - languageName: node - linkType: hard - -"@uniswap/v3-core@npm:v1.0.2-solc-0.8-simulate": - version: 1.0.2-solc-0.8-simulate - resolution: "@uniswap/v3-core@npm:1.0.2-solc-0.8-simulate" - checksum: 10c0/62b1a9bb79a172be36b55c860eac7210271b6f8cfc3566c7acfec0880ea36e40e0f40343de55672e2c5ca1650969f33aecae5186f0cc26fa4fbe3aa5cc1b95be - languageName: node - linkType: hard - -"abbrev@npm:^4.0.0": - version: 4.0.0 - resolution: "abbrev@npm:4.0.0" - checksum: 10c0/b4cc16935235e80702fc90192e349e32f8ef0ed151ef506aa78c81a7c455ec18375c4125414b99f84b2e055199d66383e787675f0bcd87da7a4dbd59f9eac1d5 - languageName: node - linkType: hard - -"abstract-leveldown@npm:^6.2.1": - version: 6.3.0 - resolution: "abstract-leveldown@npm:6.3.0" - dependencies: - buffer: "npm:^5.5.0" - immediate: "npm:^3.2.3" - level-concat-iterator: "npm:~2.0.0" - level-supports: "npm:~1.0.0" - xtend: "npm:~4.0.0" - checksum: 10c0/441c7e6765b6c2e9a36999e2bda3f4421d09348c0e925e284d873bcbf5ecad809788c9eda416aed37fe5b6e6a9e75af6e27142d1fcba460b8757d70028e307b1 - languageName: node - linkType: hard - -"abstract-leveldown@npm:^7.2.0": - version: 7.2.0 - resolution: "abstract-leveldown@npm:7.2.0" - dependencies: - buffer: "npm:^6.0.3" - catering: "npm:^2.0.0" - is-buffer: "npm:^2.0.5" - level-concat-iterator: "npm:^3.0.0" - level-supports: "npm:^2.0.1" - queue-microtask: "npm:^1.2.3" - checksum: 10c0/c81765642fc2100499fadc3254470a338ba7c0ba2e597b15cd13d91f333a54619b4d5c4137765e0835817142cd23e8eb7bf01b6a217e13c492f4872c164184dc - languageName: node - linkType: hard - -"abstract-leveldown@npm:~6.2.1": - version: 6.2.3 - resolution: "abstract-leveldown@npm:6.2.3" - dependencies: - buffer: "npm:^5.5.0" - immediate: "npm:^3.2.3" - level-concat-iterator: "npm:~2.0.0" - level-supports: "npm:~1.0.0" - xtend: "npm:~4.0.0" - checksum: 10c0/a7994531a4618a409ee016dabf132014be9a2d07a3438f835c1eb5607f77f6cf12abc437e8f5bff353b1d8dcb31628c8ae65b41e7533bf606c6f7213ab61c1d1 - languageName: node - linkType: hard - -"accepts@npm:~1.3.8": - version: 1.3.8 - resolution: "accepts@npm:1.3.8" - dependencies: - mime-types: "npm:~2.1.34" - negotiator: "npm:0.6.3" - checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362 - languageName: node - linkType: hard - -"acorn-jsx@npm:^5.3.2": - version: 5.3.2 - resolution: "acorn-jsx@npm:5.3.2" - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10c0/4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1 - languageName: node - linkType: hard - -"acorn-walk@npm:^8.1.1": - version: 8.3.4 - resolution: "acorn-walk@npm:8.3.4" - dependencies: - acorn: "npm:^8.11.0" - checksum: 10c0/76537ac5fb2c37a64560feaf3342023dadc086c46da57da363e64c6148dc21b57d49ace26f949e225063acb6fb441eabffd89f7a3066de5ad37ab3e328927c62 - languageName: node - linkType: hard - -"acorn@npm:^8.11.0, acorn@npm:^8.15.0, acorn@npm:^8.4.1": - version: 8.15.0 - resolution: "acorn@npm:8.15.0" - bin: - acorn: bin/acorn - checksum: 10c0/dec73ff59b7d6628a01eebaece7f2bdb8bb62b9b5926dcad0f8931f2b8b79c2be21f6c68ac095592adb5adb15831a3635d9343e6a91d028bbe85d564875ec3ec - languageName: node - linkType: hard - -"adm-zip@npm:^0.4.16": - version: 0.4.16 - resolution: "adm-zip@npm:0.4.16" - checksum: 10c0/c56c6e138fd19006155fc716acae14d54e07c267ae19d78c8a8cdca04762bf20170a71a41aa8d8bad2f13b70d4f3e9a191009bafa5280e05a440ee506f871a55 - languageName: node - linkType: hard - -"aes-js@npm:3.0.0": - version: 3.0.0 - resolution: "aes-js@npm:3.0.0" - checksum: 10c0/87dd5b2363534b867db7cef8bc85a90c355460783744877b2db7c8be09740aac5750714f9e00902822f692662bda74cdf40e03fbb5214ffec75c2666666288b8 - languageName: node - linkType: hard - -"agent-base@npm:6": - version: 6.0.2 - resolution: "agent-base@npm:6.0.2" - dependencies: - debug: "npm:4" - checksum: 10c0/dc4f757e40b5f3e3d674bc9beb4f1048f4ee83af189bae39be99f57bf1f48dde166a8b0a5342a84b5944ee8e6ed1e5a9d801858f4ad44764e84957122fe46261 - languageName: node - linkType: hard - -"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": - version: 7.1.4 - resolution: "agent-base@npm:7.1.4" - checksum: 10c0/c2c9ab7599692d594b6a161559ada307b7a624fa4c7b03e3afdb5a5e31cd0e53269115b620fcab024c5ac6a6f37fa5eb2e004f076ad30f5f7e6b8b671f7b35fe - languageName: node - linkType: hard - -"aggregate-error@npm:^3.0.0": - version: 3.1.0 - resolution: "aggregate-error@npm:3.1.0" - dependencies: - clean-stack: "npm:^2.0.0" - indent-string: "npm:^4.0.0" - checksum: 10c0/a42f67faa79e3e6687a4923050e7c9807db3848a037076f791d10e092677d65c1d2d863b7848560699f40fc0502c19f40963fb1cd1fb3d338a7423df8e45e039 - languageName: node - linkType: hard - -"ajv@npm:^6.12.3, ajv@npm:^6.12.4": - version: 6.12.6 - resolution: "ajv@npm:6.12.6" - dependencies: - fast-deep-equal: "npm:^3.1.1" - fast-json-stable-stringify: "npm:^2.0.0" - json-schema-traverse: "npm:^0.4.1" - uri-js: "npm:^4.2.2" - checksum: 10c0/41e23642cbe545889245b9d2a45854ebba51cda6c778ebced9649420d9205f2efb39cb43dbc41e358409223b1ea43303ae4839db682c848b891e4811da1a5a71 - languageName: node - linkType: hard - -"ajv@npm:^8.0.1": - version: 8.17.1 - resolution: "ajv@npm:8.17.1" - dependencies: - fast-deep-equal: "npm:^3.1.3" - fast-uri: "npm:^3.0.1" - json-schema-traverse: "npm:^1.0.0" - require-from-string: "npm:^2.0.2" - checksum: 10c0/ec3ba10a573c6b60f94639ffc53526275917a2df6810e4ab5a6b959d87459f9ef3f00d5e7865b82677cb7d21590355b34da14d1d0b9c32d75f95a187e76fff35 - languageName: node - linkType: hard - -"amazon-cognito-identity-js@npm:^6.0.1": - version: 6.3.16 - resolution: "amazon-cognito-identity-js@npm:6.3.16" - dependencies: - "@aws-crypto/sha256-js": "npm:1.2.2" - buffer: "npm:4.9.2" - fast-base64-decode: "npm:^1.0.0" - isomorphic-unfetch: "npm:^3.0.0" - js-cookie: "npm:^2.2.1" - checksum: 10c0/59dae0d7c2659532a5977294bbe849b3181e14d7e0741c69af9f9661a1c6ffe75b699a874c4ba1fd9c3606c357e8e725a3160624f44439d9d44ddae4e1ce8e56 - languageName: node - linkType: hard - -"ansi-align@npm:^3.0.0": - version: 3.0.1 - resolution: "ansi-align@npm:3.0.1" - dependencies: - string-width: "npm:^4.1.0" - checksum: 10c0/ad8b755a253a1bc8234eb341e0cec68a857ab18bf97ba2bda529e86f6e30460416523e0ec58c32e5c21f0ca470d779503244892873a5895dbd0c39c788e82467 - languageName: node - linkType: hard - -"ansi-colors@npm:3.2.3": - version: 3.2.3 - resolution: "ansi-colors@npm:3.2.3" - checksum: 10c0/bd742873b50f9c0c1e849194bbcc2d0e7cf9100ab953446612bb5b93b3bdbfc170da27f91af1c03442f4cb45040b0a17a866a0270021f90f958888b34d95cb73 - languageName: node - linkType: hard - -"ansi-colors@npm:^4.1.1, ansi-colors@npm:^4.1.3": - version: 4.1.3 - resolution: "ansi-colors@npm:4.1.3" - checksum: 10c0/ec87a2f59902f74e61eada7f6e6fe20094a628dab765cfdbd03c3477599368768cffccdb5d3bb19a1b6c99126783a143b1fee31aab729b31ffe5836c7e5e28b9 - languageName: node - linkType: hard - -"ansi-escapes@npm:^4.3.0": - version: 4.3.2 - resolution: "ansi-escapes@npm:4.3.2" - dependencies: - type-fest: "npm:^0.21.3" - checksum: 10c0/da917be01871525a3dfcf925ae2977bc59e8c513d4423368645634bf5d4ceba5401574eb705c1e92b79f7292af5a656f78c5725a4b0e1cec97c4b413705c1d50 - languageName: node - linkType: hard - -"ansi-regex@npm:^3.0.0": - version: 3.0.1 - resolution: "ansi-regex@npm:3.0.1" - checksum: 10c0/d108a7498b8568caf4a46eea4f1784ab4e0dfb2e3f3938c697dee21443d622d765c958f2b7e2b9f6b9e55e2e2af0584eaa9915d51782b89a841c28e744e7a167 - languageName: node - linkType: hard - -"ansi-regex@npm:^4.1.0": - version: 4.1.1 - resolution: "ansi-regex@npm:4.1.1" - checksum: 10c0/d36d34234d077e8770169d980fed7b2f3724bfa2a01da150ccd75ef9707c80e883d27cdf7a0eac2f145ac1d10a785a8a855cffd05b85f778629a0db62e7033da - languageName: node - linkType: hard - -"ansi-regex@npm:^5.0.1": - version: 5.0.1 - resolution: "ansi-regex@npm:5.0.1" - checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737 - languageName: node - linkType: hard - -"ansi-regex@npm:^6.0.1": - version: 6.2.2 - resolution: "ansi-regex@npm:6.2.2" - checksum: 10c0/05d4acb1d2f59ab2cf4b794339c7b168890d44dda4bf0ce01152a8da0213aca207802f930442ce8cd22d7a92f44907664aac6508904e75e038fa944d2601b30f - languageName: node - linkType: hard - -"ansi-styles@npm:^3.2.0, ansi-styles@npm:^3.2.1": - version: 3.2.1 - resolution: "ansi-styles@npm:3.2.1" - dependencies: - color-convert: "npm:^1.9.0" - checksum: 10c0/ece5a8ef069fcc5298f67e3f4771a663129abd174ea2dfa87923a2be2abf6cd367ef72ac87942da00ce85bd1d651d4cd8595aebdb1b385889b89b205860e977b - languageName: node - linkType: hard - -"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": - version: 4.3.0 - resolution: "ansi-styles@npm:4.3.0" - dependencies: - color-convert: "npm:^2.0.1" - checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041 - languageName: node - linkType: hard - -"ansi-styles@npm:^6.1.0": - version: 6.2.3 - resolution: "ansi-styles@npm:6.2.3" - checksum: 10c0/23b8a4ce14e18fb854693b95351e286b771d23d8844057ed2e7d083cd3e708376c3323707ec6a24365f7d7eda3ca00327fe04092e29e551499ec4c8b7bfac868 - languageName: node - linkType: hard - -"antlr4ts@npm:^0.5.0-alpha.4": - version: 0.5.0-alpha.4 - resolution: "antlr4ts@npm:0.5.0-alpha.4" - checksum: 10c0/26a43d6769178fdf1b79ed2001f123fd49843e335f9a3687b63c090ab2024632fbac60a73b3f8289044c206edeb5d19c36b02603b018d8eaf3be3ce30136102f - languageName: node - linkType: hard - -"anymatch@npm:~3.1.1, anymatch@npm:~3.1.2": - version: 3.1.3 - resolution: "anymatch@npm:3.1.3" - dependencies: - normalize-path: "npm:^3.0.0" - picomatch: "npm:^2.0.4" - checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac - languageName: node - linkType: hard - -"arg@npm:^4.1.0": - version: 4.1.3 - resolution: "arg@npm:4.1.3" - checksum: 10c0/070ff801a9d236a6caa647507bdcc7034530604844d64408149a26b9e87c2f97650055c0f049abd1efc024b334635c01f29e0b632b371ac3f26130f4cf65997a - languageName: node - linkType: hard - -"argparse@npm:^1.0.7": - version: 1.0.10 - resolution: "argparse@npm:1.0.10" - dependencies: - sprintf-js: "npm:~1.0.2" - checksum: 10c0/b2972c5c23c63df66bca144dbc65d180efa74f25f8fd9b7d9a0a6c88ae839db32df3d54770dcb6460cf840d232b60695d1a6b1053f599d84e73f7437087712de - languageName: node - linkType: hard - -"argparse@npm:^2.0.1": - version: 2.0.1 - resolution: "argparse@npm:2.0.1" - checksum: 10c0/c5640c2d89045371c7cedd6a70212a04e360fd34d6edeae32f6952c63949e3525ea77dbec0289d8213a99bbaeab5abfa860b5c12cf88a2e6cf8106e90dd27a7e - languageName: node - linkType: hard - -"array-back@npm:^3.0.1, array-back@npm:^3.1.0": - version: 3.1.0 - resolution: "array-back@npm:3.1.0" - checksum: 10c0/bb1fe86aa8b39c21e73c68c7abf8b05ed939b8951a3b17527217f6a2a84e00e4cfa4fdec823081689c5e216709bf1f214a4f5feeee6726eaff83897fa1a7b8ee - languageName: node - linkType: hard - -"array-back@npm:^4.0.1, array-back@npm:^4.0.2": - version: 4.0.2 - resolution: "array-back@npm:4.0.2" - checksum: 10c0/8beb5b4c9535eab2905d4ff7d16c4d90ee5ca080d2b26b1e637434c0fcfadb3585283524aada753bd5d06bb88a5dac9e175c3a236183741d3d795a69b6678c96 - languageName: node - linkType: hard - -"array-buffer-byte-length@npm:^1.0.1, array-buffer-byte-length@npm:^1.0.2": - version: 1.0.2 - resolution: "array-buffer-byte-length@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - is-array-buffer: "npm:^3.0.5" - checksum: 10c0/74e1d2d996941c7a1badda9cabb7caab8c449db9086407cad8a1b71d2604cc8abf105db8ca4e02c04579ec58b7be40279ddb09aea4784832984485499f48432d - languageName: node - linkType: hard - -"array-flatten@npm:1.1.1": - version: 1.1.1 - resolution: "array-flatten@npm:1.1.1" - checksum: 10c0/806966c8abb2f858b08f5324d9d18d7737480610f3bd5d3498aaae6eb5efdc501a884ba019c9b4a8f02ff67002058749d05548fd42fa8643f02c9c7f22198b91 - languageName: node - linkType: hard - -"array-uniq@npm:1.0.3": - version: 1.0.3 - resolution: "array-uniq@npm:1.0.3" - checksum: 10c0/3acbaf9e6d5faeb1010e2db04ab171b8d265889e46c61762e502979bdc5e55656013726e9a61507de3c82d329a0dc1e8072630a3454b4f2b881cb19ba7fd8aa6 - languageName: node - linkType: hard - -"array.prototype.reduce@npm:^1.0.8": - version: 1.0.8 - resolution: "array.prototype.reduce@npm:1.0.8" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.9" - es-array-method-boxes-properly: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - is-string: "npm:^1.1.1" - checksum: 10c0/0a4635f468e9161f51c4a87f80057b8b3c27b0ccc3e40ad7ea77cd1e147f1119f46977b0452f3fa325f543126200f2caf8c1390bd5303edf90d9c1dcd7d5a8a0 - languageName: node - linkType: hard - -"arraybuffer.prototype.slice@npm:^1.0.4": - version: 1.0.4 - resolution: "arraybuffer.prototype.slice@npm:1.0.4" - dependencies: - array-buffer-byte-length: "npm:^1.0.1" - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.5" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - is-array-buffer: "npm:^3.0.4" - checksum: 10c0/2f2459caa06ae0f7f615003f9104b01f6435cc803e11bd2a655107d52a1781dc040532dc44d93026b694cc18793993246237423e13a5337e86b43ed604932c06 - languageName: node - linkType: hard - -"asap@npm:~2.0.6": - version: 2.0.6 - resolution: "asap@npm:2.0.6" - checksum: 10c0/c6d5e39fe1f15e4b87677460bd66b66050cd14c772269cee6688824c1410a08ab20254bb6784f9afb75af9144a9f9a7692d49547f4d19d715aeb7c0318f3136d - languageName: node - linkType: hard - -"asn1@npm:~0.2.3": - version: 0.2.6 - resolution: "asn1@npm:0.2.6" - dependencies: - safer-buffer: "npm:~2.1.0" - checksum: 10c0/00c8a06c37e548762306bcb1488388d2f76c74c36f70c803f0c081a01d3bdf26090fc088cd812afc5e56a6d49e33765d451a5f8a68ab9c2b087eba65d2e980e0 - languageName: node - linkType: hard - -"assert-plus@npm:1.0.0, assert-plus@npm:^1.0.0": - version: 1.0.0 - resolution: "assert-plus@npm:1.0.0" - checksum: 10c0/b194b9d50c3a8f872ee85ab110784911e696a4d49f7ee6fc5fb63216dedbefd2c55999c70cb2eaeb4cf4a0e0338b44e9ace3627117b5bf0d42460e9132f21b91 - languageName: node - linkType: hard - -"assertion-error@npm:^1.1.0": - version: 1.1.0 - resolution: "assertion-error@npm:1.1.0" - checksum: 10c0/25456b2aa333250f01143968e02e4884a34588a8538fbbf65c91a637f1dbfb8069249133cd2f4e530f10f624d206a664e7df30207830b659e9f5298b00a4099b - languageName: node - linkType: hard - -"astral-regex@npm:^2.0.0": - version: 2.0.0 - resolution: "astral-regex@npm:2.0.0" - checksum: 10c0/f63d439cc383db1b9c5c6080d1e240bd14dae745f15d11ec5da863e182bbeca70df6c8191cffef5deba0b566ef98834610a68be79ac6379c95eeb26e1b310e25 - languageName: node - linkType: hard - -"async-eventemitter@npm:^0.2.4": - version: 0.2.4 - resolution: "async-eventemitter@npm:0.2.4" - dependencies: - async: "npm:^2.4.0" - checksum: 10c0/ce761d1837d454efb456bd2bd5b0db0e100f600d66d9a07a9f7772e0cfd5ad3029bb07385310bd1c7d65603735b755ba457a2f8ed47fb1314a6fe275dd69a322 - languageName: node - linkType: hard - -"async-function@npm:^1.0.0": - version: 1.0.0 - resolution: "async-function@npm:1.0.0" - checksum: 10c0/669a32c2cb7e45091330c680e92eaeb791bc1d4132d827591e499cd1f776ff5a873e77e5f92d0ce795a8d60f10761dec9ddfe7225a5de680f5d357f67b1aac73 - languageName: node - linkType: hard - -"async-retry@npm:^1.3.3": - version: 1.3.3 - resolution: "async-retry@npm:1.3.3" - dependencies: - retry: "npm:0.13.1" - checksum: 10c0/cabced4fb46f8737b95cc88dc9c0ff42656c62dc83ce0650864e891b6c155a063af08d62c446269b51256f6fbcb69a6563b80e76d0ea4a5117b0c0377b6b19d8 - languageName: node - linkType: hard - -"async@npm:^2.4.0": - version: 2.6.4 - resolution: "async@npm:2.6.4" - dependencies: - lodash: "npm:^4.17.14" - checksum: 10c0/0ebb3273ef96513389520adc88e0d3c45e523d03653cc9b66f5c46f4239444294899bfd13d2b569e7dbfde7da2235c35cf5fd3ece9524f935d41bbe4efccdad0 - languageName: node - linkType: hard - -"asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 10c0/d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d - languageName: node - linkType: hard - -"available-typed-arrays@npm:^1.0.7": - version: 1.0.7 - resolution: "available-typed-arrays@npm:1.0.7" - dependencies: - possible-typed-array-names: "npm:^1.0.0" - checksum: 10c0/d07226ef4f87daa01bd0fe80f8f310982e345f372926da2e5296aecc25c41cab440916bbaa4c5e1034b453af3392f67df5961124e4b586df1e99793a1374bdb2 - languageName: node - linkType: hard - -"aws-sign2@npm:~0.7.0": - version: 0.7.0 - resolution: "aws-sign2@npm:0.7.0" - checksum: 10c0/021d2cc5547d4d9ef1633e0332e746a6f447997758b8b68d6fb33f290986872d2bff5f0c37d5832f41a7229361f093cd81c40898d96ed153493c0fb5cd8575d2 - languageName: node - linkType: hard - -"aws4@npm:^1.8.0": - version: 1.13.2 - resolution: "aws4@npm:1.13.2" - checksum: 10c0/c993d0d186d699f685d73113733695d648ec7d4b301aba2e2a559d0cd9c1c902308cc52f4095e1396b23fddbc35113644e7f0a6a32753636306e41e3ed6f1e79 - languageName: node - linkType: hard - -"axios@npm:1.6.7": - version: 1.6.7 - resolution: "axios@npm:1.6.7" - dependencies: - follow-redirects: "npm:^1.15.4" - form-data: "npm:^4.0.0" - proxy-from-env: "npm:^1.1.0" - checksum: 10c0/131bf8e62eee48ca4bd84e6101f211961bf6a21a33b95e5dfb3983d5a2fe50d9fffde0b57668d7ce6f65063d3dc10f2212cbcb554f75cfca99da1c73b210358d - languageName: node - linkType: hard - -"axios@npm:^0.21.2": - version: 0.21.4 - resolution: "axios@npm:0.21.4" - dependencies: - follow-redirects: "npm:^1.14.0" - checksum: 10c0/fbcff55ec68f71f02d3773d467db2fcecdf04e749826c82c2427a232f9eba63242150a05f15af9ef15818352b814257541155de0281f8fb2b7e8a5b79f7f2142 - languageName: node - linkType: hard - -"axios@npm:^1.4.0, axios@npm:^1.5.1": - version: 1.13.2 - resolution: "axios@npm:1.13.2" - dependencies: - follow-redirects: "npm:^1.15.6" - form-data: "npm:^4.0.4" - proxy-from-env: "npm:^1.1.0" - checksum: 10c0/e8a42e37e5568ae9c7a28c348db0e8cf3e43d06fcbef73f0048669edfe4f71219664da7b6cc991b0c0f01c28a48f037c515263cb79be1f1ae8ff034cd813867b - languageName: node - linkType: hard - -"balanced-match@npm:^1.0.0": - version: 1.0.2 - resolution: "balanced-match@npm:1.0.2" - checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee - languageName: node - linkType: hard - -"base-x@npm:^3.0.2": - version: 3.0.11 - resolution: "base-x@npm:3.0.11" - dependencies: - safe-buffer: "npm:^5.0.1" - checksum: 10c0/4c5b8cd9cef285973b0460934be4fc890eedfd22a8aca527fac3527f041c5d1c912f7b9a6816f19e43e69dc7c29a5deabfa326bd3d6a57ee46af0ad46e3991d5 - languageName: node - linkType: hard - -"base64-js@npm:^1.0.2, base64-js@npm:^1.3.1": - version: 1.5.1 - resolution: "base64-js@npm:1.5.1" - checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf - languageName: node - linkType: hard - -"bcrypt-pbkdf@npm:^1.0.0": - version: 1.0.2 - resolution: "bcrypt-pbkdf@npm:1.0.2" - dependencies: - tweetnacl: "npm:^0.14.3" - checksum: 10c0/ddfe85230b32df25aeebfdccfbc61d3bc493ace49c884c9c68575de1f5dcf733a5d7de9def3b0f318b786616b8d85bad50a28b1da1750c43e0012c93badcc148 - languageName: node - linkType: hard - -"bech32@npm:1.1.4": - version: 1.1.4 - resolution: "bech32@npm:1.1.4" - checksum: 10c0/5f62ca47b8df99ace9c0e0d8deb36a919d91bf40066700aaa9920a45f86bb10eb56d537d559416fd8703aa0fb60dddb642e58f049701e7291df678b2033e5ee5 - languageName: node - linkType: hard - -"bignumber.js@npm:^9.0.0, bignumber.js@npm:^9.0.1, bignumber.js@npm:^9.1.2": - version: 9.3.1 - resolution: "bignumber.js@npm:9.3.1" - checksum: 10c0/61342ba5fe1c10887f0ecf5be02ff6709271481aff48631f86b4d37d55a99b87ce441cfd54df3d16d10ee07ceab7e272fc0be430c657ffafbbbf7b7d631efb75 - languageName: node - linkType: hard - -"bignumber@npm:^1.1.0": - version: 1.1.0 - resolution: "bignumber@npm:1.1.0" - checksum: 10c0/20f29add7f3f75f16eefba86983f4cc8d074785e98fc42f13f08e688636628b5e0595cf6caae1dbea943da6136f400167810cb4abdc60eca46d73912b1b91e96 - languageName: node - linkType: hard - -"binary-extensions@npm:^2.0.0": - version: 2.3.0 - resolution: "binary-extensions@npm:2.3.0" - checksum: 10c0/75a59cafc10fb12a11d510e77110c6c7ae3f4ca22463d52487709ca7f18f69d886aa387557cc9864fbdb10153d0bdb4caacabf11541f55e89ed6e18d12ece2b5 - languageName: node - linkType: hard - -"bip39@npm:3.0.4": - version: 3.0.4 - resolution: "bip39@npm:3.0.4" - dependencies: - "@types/node": "npm:11.11.6" - create-hash: "npm:^1.1.0" - pbkdf2: "npm:^3.0.9" - randombytes: "npm:^2.0.1" - checksum: 10c0/f95f40613474b64c82e2db046a6245e9dd6011e09d12b90c1cd0455e92830d7f0b92b9d7e120f583974047d2da7b5eb18afa6645647d841c11ff5cca5aaeb67d - languageName: node - linkType: hard - -"blakejs@npm:^1.1.0": - version: 1.2.1 - resolution: "blakejs@npm:1.2.1" - checksum: 10c0/c284557ce55b9c70203f59d381f1b85372ef08ee616a90162174d1291a45d3e5e809fdf9edab6e998740012538515152471dc4f1f9dbfa974ba2b9c1f7b9aad7 - languageName: node - linkType: hard - -"bn.js@npm:4.11.6": - version: 4.11.6 - resolution: "bn.js@npm:4.11.6" - checksum: 10c0/e6ee7d3f597f60722cc3361071e23ccf71d3387e166de02381f180f22d2fa79f5dbbdf9e4909e81faaf5da01c16ec6857ddff02678339ce085e2058fd0e405db - languageName: node - linkType: hard - -"bn.js@npm:^4.0.0, bn.js@npm:^4.11.0, bn.js@npm:^4.11.1, bn.js@npm:^4.11.8, bn.js@npm:^4.11.9": - version: 4.12.2 - resolution: "bn.js@npm:4.12.2" - checksum: 10c0/09a249faa416a9a1ce68b5f5ec8bbca87fe54e5dd4ef8b1cc8a4969147b80035592bddcb1e9cc814c3ba79e573503d5c5178664b722b509fb36d93620dba9b57 - languageName: node - linkType: hard - -"bn.js@npm:^5.1.2, bn.js@npm:^5.2.0, bn.js@npm:^5.2.1": - version: 5.2.2 - resolution: "bn.js@npm:5.2.2" - checksum: 10c0/cb97827d476aab1a0194df33cd84624952480d92da46e6b4a19c32964aa01553a4a613502396712704da2ec8f831cf98d02e74ca03398404bd78a037ba93f2ab - languageName: node - linkType: hard - -"body-parser@npm:~1.20.3": - version: 1.20.4 - resolution: "body-parser@npm:1.20.4" - dependencies: - bytes: "npm:~3.1.2" - content-type: "npm:~1.0.5" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:~1.2.0" - http-errors: "npm:~2.0.1" - iconv-lite: "npm:~0.4.24" - on-finished: "npm:~2.4.1" - qs: "npm:~6.14.0" - raw-body: "npm:~2.5.3" - type-is: "npm:~1.6.18" - unpipe: "npm:~1.0.0" - checksum: 10c0/569c1e896297d1fcd8f34026c8d0ab70b90d45343c15c5d8dff5de2bad08125fc1e2f8c2f3f4c1ac6c0caaad115218202594d37dcb8d89d9b5dcae1c2b736aa9 - languageName: node - linkType: hard - -"boxen@npm:^5.1.2": - version: 5.1.2 - resolution: "boxen@npm:5.1.2" - dependencies: - ansi-align: "npm:^3.0.0" - camelcase: "npm:^6.2.0" - chalk: "npm:^4.1.0" - cli-boxes: "npm:^2.2.1" - string-width: "npm:^4.2.2" - type-fest: "npm:^0.20.2" - widest-line: "npm:^3.1.0" - wrap-ansi: "npm:^7.0.0" - checksum: 10c0/71f31c2eb3dcacd5fce524ae509e0cc90421752e0bfbd0281fd3352871d106c462a0f810c85f2fdb02f3a9fab2d7a84e9718b4999384d651b76104ebe5d2c024 - languageName: node - linkType: hard - -"brace-expansion@npm:^1.1.7": - version: 1.1.12 - resolution: "brace-expansion@npm:1.1.12" - dependencies: - balanced-match: "npm:^1.0.0" - concat-map: "npm:0.0.1" - checksum: 10c0/975fecac2bb7758c062c20d0b3b6288c7cc895219ee25f0a64a9de662dbac981ff0b6e89909c3897c1f84fa353113a721923afdec5f8b2350255b097f12b1f73 - languageName: node - linkType: hard - -"brace-expansion@npm:^2.0.1": - version: 2.0.2 - resolution: "brace-expansion@npm:2.0.2" - dependencies: - balanced-match: "npm:^1.0.0" - checksum: 10c0/6d117a4c793488af86b83172deb6af143e94c17bc53b0b3cec259733923b4ca84679d506ac261f4ba3c7ed37c46018e2ff442f9ce453af8643ecd64f4a54e6cf - languageName: node - linkType: hard - -"braces@npm:~3.0.2": - version: 3.0.3 - resolution: "braces@npm:3.0.3" - dependencies: - fill-range: "npm:^7.1.1" - checksum: 10c0/7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04 - languageName: node - linkType: hard - -"brorand@npm:^1.0.1, brorand@npm:^1.1.0": - version: 1.1.0 - resolution: "brorand@npm:1.1.0" - checksum: 10c0/6f366d7c4990f82c366e3878492ba9a372a73163c09871e80d82fb4ae0d23f9f8924cb8a662330308206e6b3b76ba1d528b4601c9ef73c2166b440b2ea3b7571 - languageName: node - linkType: hard - -"browser-stdout@npm:1.3.1, browser-stdout@npm:^1.3.1": - version: 1.3.1 - resolution: "browser-stdout@npm:1.3.1" - checksum: 10c0/c40e482fd82be872b6ea7b9f7591beafbf6f5ba522fe3dade98ba1573a1c29a11101564993e4eb44e5488be8f44510af072df9a9637c739217eb155ceb639205 - languageName: node - linkType: hard - -"browserify-aes@npm:^1.2.0": - version: 1.2.0 - resolution: "browserify-aes@npm:1.2.0" - dependencies: - buffer-xor: "npm:^1.0.3" - cipher-base: "npm:^1.0.0" - create-hash: "npm:^1.1.0" - evp_bytestokey: "npm:^1.0.3" - inherits: "npm:^2.0.1" - safe-buffer: "npm:^5.0.1" - checksum: 10c0/967f2ae60d610b7b252a4cbb55a7a3331c78293c94b4dd9c264d384ca93354c089b3af9c0dd023534efdc74ffbc82510f7ad4399cf82bc37bc07052eea485f18 - languageName: node - linkType: hard - -"bs58@npm:^4.0.0": - version: 4.0.1 - resolution: "bs58@npm:4.0.1" - dependencies: - base-x: "npm:^3.0.2" - checksum: 10c0/613a1b1441e754279a0e3f44d1faeb8c8e838feef81e550efe174ff021dd2e08a4c9ae5805b52dfdde79f97b5c0918c78dd24a0eb726c4a94365f0984a0ffc65 - languageName: node - linkType: hard - -"bs58check@npm:^2.1.2": - version: 2.1.2 - resolution: "bs58check@npm:2.1.2" - dependencies: - bs58: "npm:^4.0.0" - create-hash: "npm:^1.1.0" - safe-buffer: "npm:^5.1.2" - checksum: 10c0/5d33f319f0d7abbe1db786f13f4256c62a076bc8d184965444cb62ca4206b2c92bee58c93bce57150ffbbbe00c48838ac02e6f384e0da8215cac219c0556baa9 - languageName: node - linkType: hard - -"buffer-from@npm:^1.0.0": - version: 1.1.2 - resolution: "buffer-from@npm:1.1.2" - checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34 - languageName: node - linkType: hard - -"buffer-reverse@npm:^1.0.1": - version: 1.0.1 - resolution: "buffer-reverse@npm:1.0.1" - checksum: 10c0/72f05072a72dc1ec0574693b8358e6d3882abe8d0a7daa875ed145b360d68ea3b95eb1b5fd435bf1f38a80d85021ecdf670bbb57694926cc1a02ea56cbbf4468 - languageName: node - linkType: hard - -"buffer-xor@npm:^1.0.3": - version: 1.0.3 - resolution: "buffer-xor@npm:1.0.3" - checksum: 10c0/fd269d0e0bf71ecac3146187cfc79edc9dbb054e2ee69b4d97dfb857c6d997c33de391696d04bdd669272751fa48e7872a22f3a6c7b07d6c0bc31dbe02a4075c - languageName: node - linkType: hard - -"buffer-xor@npm:^2.0.1": - version: 2.0.2 - resolution: "buffer-xor@npm:2.0.2" - dependencies: - safe-buffer: "npm:^5.1.1" - checksum: 10c0/84c39f316c3f7d194b6313fdd047ddae02619dcb7eccfc9675731ac6fe9c01b42d94f8b8d3f04271803618c7db2eebdca82c1de5c1fc37210c1c112998b09671 - languageName: node - linkType: hard - -"buffer@npm:4.9.2": - version: 4.9.2 - resolution: "buffer@npm:4.9.2" - dependencies: - base64-js: "npm:^1.0.2" - ieee754: "npm:^1.1.4" - isarray: "npm:^1.0.0" - checksum: 10c0/dc443d7e7caab23816b58aacdde710b72f525ad6eecd7d738fcaa29f6d6c12e8d9c13fed7219fd502be51ecf0615f5c077d4bdc6f9308dde2e53f8e5393c5b21 - languageName: node - linkType: hard - -"buffer@npm:^5.5.0, buffer@npm:^5.6.0": - version: 5.7.1 - resolution: "buffer@npm:5.7.1" - dependencies: - base64-js: "npm:^1.3.1" - ieee754: "npm:^1.1.13" - checksum: 10c0/27cac81cff434ed2876058d72e7c4789d11ff1120ef32c9de48f59eab58179b66710c488987d295ae89a228f835fc66d088652dffeb8e3ba8659f80eb091d55e - languageName: node - linkType: hard - -"buffer@npm:^6.0.3": - version: 6.0.3 - resolution: "buffer@npm:6.0.3" - dependencies: - base64-js: "npm:^1.3.1" - ieee754: "npm:^1.2.1" - checksum: 10c0/2a905fbbcde73cc5d8bd18d1caa23715d5f83a5935867c2329f0ac06104204ba7947be098fe1317fbd8830e26090ff8e764f08cd14fefc977bb248c3487bcbd0 - languageName: node - linkType: hard - -"bufferutil@npm:4.0.5": - version: 4.0.5 - resolution: "bufferutil@npm:4.0.5" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10c0/307d1131dbfd01b1451585931db05bc83a5a94bb3f720f9ee2d8e1ce37d39b23251bce350b06152dba003ad4fbddc804fc94b3d5ce1f70e7871c6898ce3b4f7e - languageName: node - linkType: hard - -"bytes@npm:~3.1.2": - version: 3.1.2 - resolution: "bytes@npm:3.1.2" - checksum: 10c0/76d1c43cbd602794ad8ad2ae94095cddeb1de78c5dddaa7005c51af10b0176c69971a6d88e805a90c2b6550d76636e43c40d8427a808b8645ede885de4a0358e - languageName: node - linkType: hard - -"cacache@npm:^20.0.1": - version: 20.0.3 - resolution: "cacache@npm:20.0.3" - dependencies: - "@npmcli/fs": "npm:^5.0.0" - fs-minipass: "npm:^3.0.0" - glob: "npm:^13.0.0" - lru-cache: "npm:^11.1.0" - minipass: "npm:^7.0.3" - minipass-collect: "npm:^2.0.1" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - p-map: "npm:^7.0.2" - ssri: "npm:^13.0.0" - unique-filename: "npm:^5.0.0" - checksum: 10c0/c7da1ca694d20e8f8aedabd21dc11518f809a7d2b59aa76a1fc655db5a9e62379e465c157ddd2afe34b19230808882288effa6911b2de26a088a6d5645123462 - languageName: node - linkType: hard - -"call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": - version: 1.0.2 - resolution: "call-bind-apply-helpers@npm:1.0.2" - dependencies: - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938 - languageName: node - linkType: hard - -"call-bind@npm:^1.0.7, call-bind@npm:^1.0.8": - version: 1.0.8 - resolution: "call-bind@npm:1.0.8" - dependencies: - call-bind-apply-helpers: "npm:^1.0.0" - es-define-property: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.4" - set-function-length: "npm:^1.2.2" - checksum: 10c0/a13819be0681d915144467741b69875ae5f4eba8961eb0bf322aab63ec87f8250eb6d6b0dcbb2e1349876412a56129ca338592b3829ef4343527f5f18a0752d4 - languageName: node - linkType: hard - -"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3, call-bound@npm:^1.0.4": - version: 1.0.4 - resolution: "call-bound@npm:1.0.4" - dependencies: - call-bind-apply-helpers: "npm:^1.0.2" - get-intrinsic: "npm:^1.3.0" - checksum: 10c0/f4796a6a0941e71c766aea672f63b72bc61234c4f4964dc6d7606e3664c307e7d77845328a8f3359ce39ddb377fed67318f9ee203dea1d47e46165dcf2917644 - languageName: node - linkType: hard - -"callsites@npm:^3.0.0": - version: 3.1.0 - resolution: "callsites@npm:3.1.0" - checksum: 10c0/fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301 - languageName: node - linkType: hard - -"camelcase@npm:^5.0.0": - version: 5.3.1 - resolution: "camelcase@npm:5.3.1" - checksum: 10c0/92ff9b443bfe8abb15f2b1513ca182d16126359ad4f955ebc83dc4ddcc4ef3fdd2c078bc223f2673dc223488e75c99b16cc4d056624374b799e6a1555cf61b23 - languageName: node - linkType: hard - -"camelcase@npm:^6.0.0, camelcase@npm:^6.2.0": - version: 6.3.0 - resolution: "camelcase@npm:6.3.0" - checksum: 10c0/0d701658219bd3116d12da3eab31acddb3f9440790c0792e0d398f0a520a6a4058018e546862b6fba89d7ae990efaeb97da71e1913e9ebf5a8b5621a3d55c710 - languageName: node - linkType: hard - -"caseless@npm:^0.12.0, caseless@npm:~0.12.0": - version: 0.12.0 - resolution: "caseless@npm:0.12.0" - checksum: 10c0/ccf64bcb6c0232cdc5b7bd91ddd06e23a4b541f138336d4725233ac538041fb2f29c2e86c3c4a7a61ef990b665348db23a047060b9414c3a6603e9fa61ad4626 - languageName: node - linkType: hard - -"catering@npm:^2.0.0, catering@npm:^2.1.0": - version: 2.1.1 - resolution: "catering@npm:2.1.1" - checksum: 10c0/a69f946f82cba85509abcb399759ed4c39d2cc9e33ba35674f242130c1b3c56673da3c3e85804db6898dfd966c395aa128ba484b31c7b906cc2faca6a581e133 - languageName: node - linkType: hard - -"cbor@npm:^10.0.0": - version: 10.0.11 - resolution: "cbor@npm:10.0.11" - dependencies: - nofilter: "npm:^3.0.2" - checksum: 10c0/0cb6fb3d5e98c7af4443200ff107049f6132b5649b8a0e586940ca811e5ab5622bf3d0a36f154f43107acfd9685cc462e6eac77876ef4c060bcec96c71b90d8a - languageName: node - linkType: hard - -"cbor@npm:^8.1.0": - version: 8.1.0 - resolution: "cbor@npm:8.1.0" - dependencies: - nofilter: "npm:^3.1.0" - checksum: 10c0/a836e2e7ea0efb1b9c4e5a4be906c57113d730cc42293a34072e0164ed110bb8ac035dc7dca2e3ebb641bd4b37e00fdbbf09c951aa864b3d4888a6ed8c6243f7 - languageName: node - linkType: hard - -"chai@npm:^4.4.1": - version: 4.5.0 - resolution: "chai@npm:4.5.0" - dependencies: - assertion-error: "npm:^1.1.0" - check-error: "npm:^1.0.3" - deep-eql: "npm:^4.1.3" - get-func-name: "npm:^2.0.2" - loupe: "npm:^2.3.6" - pathval: "npm:^1.1.1" - type-detect: "npm:^4.1.0" - checksum: 10c0/b8cb596bd1aece1aec659e41a6e479290c7d9bee5b3ad63d2898ad230064e5b47889a3bc367b20100a0853b62e026e2dc514acf25a3c9385f936aa3614d4ab4d - languageName: node - linkType: hard - -"chalk@npm:^2.4.2": - version: 2.4.2 - resolution: "chalk@npm:2.4.2" - dependencies: - ansi-styles: "npm:^3.2.1" - escape-string-regexp: "npm:^1.0.5" - supports-color: "npm:^5.3.0" - checksum: 10c0/e6543f02ec877732e3a2d1c3c3323ddb4d39fbab687c23f526e25bd4c6a9bf3b83a696e8c769d078e04e5754921648f7821b2a2acfd16c550435fd630026e073 - languageName: node - linkType: hard - -"chalk@npm:^4.0.0, chalk@npm:^4.1.0": - version: 4.1.2 - resolution: "chalk@npm:4.1.2" - dependencies: - ansi-styles: "npm:^4.1.0" - supports-color: "npm:^7.1.0" - checksum: 10c0/4a3fef5cc34975c898ffe77141450f679721df9dde00f6c304353fa9c8b571929123b26a0e4617bde5018977eb655b31970c297b91b63ee83bb82aeb04666880 - languageName: node - linkType: hard - -"charenc@npm:>= 0.0.1": - version: 0.0.2 - resolution: "charenc@npm:0.0.2" - checksum: 10c0/a45ec39363a16799d0f9365c8dd0c78e711415113c6f14787a22462ef451f5013efae8a28f1c058f81fc01f2a6a16955f7a5fd0cd56247ce94a45349c89877d8 - languageName: node - linkType: hard - -"check-error@npm:^1.0.3": - version: 1.0.3 - resolution: "check-error@npm:1.0.3" - dependencies: - get-func-name: "npm:^2.0.2" - checksum: 10c0/94aa37a7315c0e8a83d0112b5bfb5a8624f7f0f81057c73e4707729cdd8077166c6aefb3d8e2b92c63ee130d4a2ff94bad46d547e12f3238cc1d78342a973841 - languageName: node - linkType: hard - -"chokidar@npm:3.3.0": - version: 3.3.0 - resolution: "chokidar@npm:3.3.0" - dependencies: - anymatch: "npm:~3.1.1" - braces: "npm:~3.0.2" - fsevents: "npm:~2.1.1" - glob-parent: "npm:~5.1.0" - is-binary-path: "npm:~2.1.0" - is-glob: "npm:~4.0.1" - normalize-path: "npm:~3.0.0" - readdirp: "npm:~3.2.0" - dependenciesMeta: - fsevents: - optional: true - checksum: 10c0/5db1f4353499f17dc4c3c397197fd003383c2d802df88ab52d41413c357754d7c894557c85e887bfa11bfac3c220677efae2bf4e5686d301571255d7c737077b - languageName: node - linkType: hard - -"chokidar@npm:^3.5.3": - version: 3.6.0 - resolution: "chokidar@npm:3.6.0" - dependencies: - anymatch: "npm:~3.1.2" - braces: "npm:~3.0.2" - fsevents: "npm:~2.3.2" - glob-parent: "npm:~5.1.2" - is-binary-path: "npm:~2.1.0" - is-glob: "npm:~4.0.1" - normalize-path: "npm:~3.0.0" - readdirp: "npm:~3.6.0" - dependenciesMeta: - fsevents: - optional: true - checksum: 10c0/8361dcd013f2ddbe260eacb1f3cb2f2c6f2b0ad118708a343a5ed8158941a39cb8fb1d272e0f389712e74ee90ce8ba864eece9e0e62b9705cb468a2f6d917462 - languageName: node - linkType: hard - -"chokidar@npm:^4.0.0": - version: 4.0.3 - resolution: "chokidar@npm:4.0.3" - dependencies: - readdirp: "npm:^4.0.1" - checksum: 10c0/a58b9df05bb452f7d105d9e7229ac82fa873741c0c40ddcc7bb82f8a909fbe3f7814c9ebe9bc9a2bef9b737c0ec6e2d699d179048ef06ad3ec46315df0ebe6ad - languageName: node - linkType: hard - -"chownr@npm:^3.0.0": - version: 3.0.0 - resolution: "chownr@npm:3.0.0" - checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10 - languageName: node - linkType: hard - -"ci-info@npm:^2.0.0": - version: 2.0.0 - resolution: "ci-info@npm:2.0.0" - checksum: 10c0/8c5fa3830a2bcee2b53c2e5018226f0141db9ec9f7b1e27a5c57db5512332cde8a0beb769bcbaf0d8775a78afbf2bb841928feca4ea6219638a5b088f9884b46 - languageName: node - linkType: hard - -"cipher-base@npm:^1.0.0, cipher-base@npm:^1.0.1, cipher-base@npm:^1.0.3": - version: 1.0.7 - resolution: "cipher-base@npm:1.0.7" - dependencies: - inherits: "npm:^2.0.4" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.2" - checksum: 10c0/53c5046a9d9b60c586479b8f13fde263c3f905e13f11e8e04c7a311ce399c91d9c3ec96642332e0de077d356e1014ee12bba96f74fbaad0de750f49122258836 - languageName: node - linkType: hard - -"clean-stack@npm:^2.0.0": - version: 2.2.0 - resolution: "clean-stack@npm:2.2.0" - checksum: 10c0/1f90262d5f6230a17e27d0c190b09d47ebe7efdd76a03b5a1127863f7b3c9aec4c3e6c8bb3a7bbf81d553d56a1fd35728f5a8ef4c63f867ac8d690109742a8c1 - languageName: node - linkType: hard - -"cli-boxes@npm:^2.2.1": - version: 2.2.1 - resolution: "cli-boxes@npm:2.2.1" - checksum: 10c0/6111352edbb2f62dbc7bfd58f2d534de507afed7f189f13fa894ce5a48badd94b2aa502fda28f1d7dd5f1eb456e7d4033d09a76660013ef50c7f66e7a034f050 - languageName: node - linkType: hard - -"cli-table3@npm:^0.5.0": - version: 0.5.1 - resolution: "cli-table3@npm:0.5.1" - dependencies: - colors: "npm:^1.1.2" - object-assign: "npm:^4.1.0" - string-width: "npm:^2.1.1" - dependenciesMeta: - colors: - optional: true - checksum: 10c0/659c40ead17539d0665aa9dea85a7650fc161939f9d8bd3842c6cf5da51dc867057d3066fe8c962dafa163da39ce2029357754aee2c8f9513ea7a0810511d1d6 - languageName: node - linkType: hard - -"cli-table3@npm:^0.6.0": - version: 0.6.5 - resolution: "cli-table3@npm:0.6.5" - dependencies: - "@colors/colors": "npm:1.5.0" - string-width: "npm:^4.2.0" - dependenciesMeta: - "@colors/colors": - optional: true - checksum: 10c0/d7cc9ed12212ae68241cc7a3133c52b844113b17856e11f4f81308acc3febcea7cc9fd298e70933e294dd642866b29fd5d113c2c098948701d0c35f09455de78 - languageName: node - linkType: hard - -"cliui@npm:^5.0.0": - version: 5.0.0 - resolution: "cliui@npm:5.0.0" - dependencies: - string-width: "npm:^3.1.0" - strip-ansi: "npm:^5.2.0" - wrap-ansi: "npm:^5.1.0" - checksum: 10c0/76142bf306965850a71efd10c9755bd7f447c7c20dd652e1c1ce27d987f862a3facb3cceb2909cef6f0cb363646ee7a1735e3dfdd49f29ed16d733d33e15e2f8 - languageName: node - linkType: hard - -"cliui@npm:^7.0.2": - version: 7.0.4 - resolution: "cliui@npm:7.0.4" - dependencies: - string-width: "npm:^4.2.0" - strip-ansi: "npm:^6.0.0" - wrap-ansi: "npm:^7.0.0" - checksum: 10c0/6035f5daf7383470cef82b3d3db00bec70afb3423538c50394386ffbbab135e26c3689c41791f911fa71b62d13d3863c712fdd70f0fbdffd938a1e6fd09aac00 - languageName: node - linkType: hard - -"color-convert@npm:^1.9.0": - version: 1.9.3 - resolution: "color-convert@npm:1.9.3" - dependencies: - color-name: "npm:1.1.3" - checksum: 10c0/5ad3c534949a8c68fca8fbc6f09068f435f0ad290ab8b2f76841b9e6af7e0bb57b98cb05b0e19fe33f5d91e5a8611ad457e5f69e0a484caad1f7487fd0e8253c - languageName: node - linkType: hard - -"color-convert@npm:^2.0.1": - version: 2.0.1 - resolution: "color-convert@npm:2.0.1" - dependencies: - color-name: "npm:~1.1.4" - checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7 - languageName: node - linkType: hard - -"color-name@npm:1.1.3": - version: 1.1.3 - resolution: "color-name@npm:1.1.3" - checksum: 10c0/566a3d42cca25b9b3cd5528cd7754b8e89c0eb646b7f214e8e2eaddb69994ac5f0557d9c175eb5d8f0ad73531140d9c47525085ee752a91a2ab15ab459caf6d6 - languageName: node - linkType: hard - -"color-name@npm:~1.1.4": - version: 1.1.4 - resolution: "color-name@npm:1.1.4" - checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 - languageName: node - linkType: hard - -"colors@npm:1.4.0, colors@npm:^1.1.2": - version: 1.4.0 - resolution: "colors@npm:1.4.0" - checksum: 10c0/9af357c019da3c5a098a301cf64e3799d27549d8f185d86f79af23069e4f4303110d115da98483519331f6fb71c8568d5688fa1c6523600044fd4a54e97c4efb - languageName: node - linkType: hard - -"combined-stream@npm:^1.0.6, combined-stream@npm:^1.0.8, combined-stream@npm:~1.0.6": - version: 1.0.8 - resolution: "combined-stream@npm:1.0.8" - dependencies: - delayed-stream: "npm:~1.0.0" - checksum: 10c0/0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5 - languageName: node - linkType: hard - -"command-exists@npm:^1.2.8": - version: 1.2.9 - resolution: "command-exists@npm:1.2.9" - checksum: 10c0/75040240062de46cd6cd43e6b3032a8b0494525c89d3962e280dde665103f8cc304a8b313a5aa541b91da2f5a9af75c5959dc3a77893a2726407a5e9a0234c16 - languageName: node - linkType: hard - -"command-line-args@npm:^5.1.1": - version: 5.2.1 - resolution: "command-line-args@npm:5.2.1" - dependencies: - array-back: "npm:^3.1.0" - find-replace: "npm:^3.0.0" - lodash.camelcase: "npm:^4.3.0" - typical: "npm:^4.0.0" - checksum: 10c0/a4f6a23a1e420441bd1e44dee24efd12d2e49af7efe6e21eb32fca4e843ca3d5501ddebad86a4e9d99aa626dd6dcb64c04a43695388be54e3a803dbc326cc89f - languageName: node - linkType: hard - -"command-line-usage@npm:^6.1.0": - version: 6.1.3 - resolution: "command-line-usage@npm:6.1.3" - dependencies: - array-back: "npm:^4.0.2" - chalk: "npm:^2.4.2" - table-layout: "npm:^1.0.2" - typical: "npm:^5.2.0" - checksum: 10c0/23d7577ccb6b6c004e67bb6a9a8cb77282ae7b7507ae92249a9548a39050b7602fef70f124c765000ab23b8f7e0fb7a3352419ab73ea42a2d9ea32f520cdfe9e - languageName: node - linkType: hard - -"commander@npm:^8.1.0": - version: 8.3.0 - resolution: "commander@npm:8.3.0" - checksum: 10c0/8b043bb8322ea1c39664a1598a95e0495bfe4ca2fad0d84a92d7d1d8d213e2a155b441d2470c8e08de7c4a28cf2bc6e169211c49e1b21d9f7edc6ae4d9356060 - languageName: node - linkType: hard - -"compare-versions@npm:^6.0.0": - version: 6.1.1 - resolution: "compare-versions@npm:6.1.1" - checksum: 10c0/415205c7627f9e4f358f571266422980c9fe2d99086be0c9a48008ef7c771f32b0fbe8e97a441ffedc3910872f917a0675fe0fe3c3b6d331cda6d8690be06338 - languageName: node - linkType: hard - -"complex.js@npm:^2.1.1": - version: 2.4.3 - resolution: "complex.js@npm:2.4.3" - checksum: 10c0/c61b225c4c2925c922ebaf2c4c6d7d0c2f9cebf4fb5eb8dce231aea7508f15db0920b52107279fdd9947b54a0320eae2911d430a421c2db8d0d24df6c2cb2cf8 - languageName: node - linkType: hard - -"concat-map@npm:0.0.1": - version: 0.0.1 - resolution: "concat-map@npm:0.0.1" - checksum: 10c0/c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f - languageName: node - linkType: hard - -"concat-stream@npm:^1.6.0, concat-stream@npm:^1.6.2": - version: 1.6.2 - resolution: "concat-stream@npm:1.6.2" - dependencies: - buffer-from: "npm:^1.0.0" - inherits: "npm:^2.0.3" - readable-stream: "npm:^2.2.2" - typedarray: "npm:^0.0.6" - checksum: 10c0/2e9864e18282946dabbccb212c5c7cec0702745e3671679eb8291812ca7fd12023f7d8cb36493942a62f770ac96a7f90009dc5c82ad69893438371720fa92617 - languageName: node - linkType: hard - -"content-disposition@npm:~0.5.4": - version: 0.5.4 - resolution: "content-disposition@npm:0.5.4" - dependencies: - safe-buffer: "npm:5.2.1" - checksum: 10c0/bac0316ebfeacb8f381b38285dc691c9939bf0a78b0b7c2d5758acadad242d04783cee5337ba7d12a565a19075af1b3c11c728e1e4946de73c6ff7ce45f3f1bb - languageName: node - linkType: hard - -"content-type@npm:~1.0.4, content-type@npm:~1.0.5": - version: 1.0.5 - resolution: "content-type@npm:1.0.5" - checksum: 10c0/b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af - languageName: node - linkType: hard - -"cookie-signature@npm:~1.0.6": - version: 1.0.7 - resolution: "cookie-signature@npm:1.0.7" - checksum: 10c0/e7731ad2995ae2efeed6435ec1e22cdd21afef29d300c27281438b1eab2bae04ef0d1a203928c0afec2cee72aa36540b8747406ebe308ad23c8e8cc3c26c9c51 - languageName: node - linkType: hard - -"cookie@npm:^0.4.1": - version: 0.4.2 - resolution: "cookie@npm:0.4.2" - checksum: 10c0/beab41fbd7c20175e3a2799ba948c1dcc71ef69f23fe14eeeff59fc09f50c517b0f77098db87dbb4c55da802f9d86ee86cdc1cd3efd87760341551838d53fca2 - languageName: node - linkType: hard - -"cookie@npm:~0.7.1": - version: 0.7.2 - resolution: "cookie@npm:0.7.2" - checksum: 10c0/9596e8ccdbf1a3a88ae02cf5ee80c1c50959423e1022e4e60b91dd87c622af1da309253d8abdb258fb5e3eacb4f08e579dc58b4897b8087574eee0fd35dfa5d2 - languageName: node - linkType: hard - -"core-js-pure@npm:^3.0.1": - version: 3.47.0 - resolution: "core-js-pure@npm:3.47.0" - checksum: 10c0/7eb5f897e532b33e6ea85ec2c60073fc2fe943e4543ec9903340450fc0f3b46b5b118d57d332e9f2c3d681a8b7b219a4cc64ccf548d933f6b79f754b682696dd - languageName: node - linkType: hard - -"core-util-is@npm:1.0.2": - version: 1.0.2 - resolution: "core-util-is@npm:1.0.2" - checksum: 10c0/980a37a93956d0de8a828ce508f9b9e3317039d68922ca79995421944146700e4aaf490a6dbfebcb1c5292a7184600c7710b957d724be1e37b8254c6bc0fe246 - languageName: node - linkType: hard - -"core-util-is@npm:~1.0.0": - version: 1.0.3 - resolution: "core-util-is@npm:1.0.3" - checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 - languageName: node - linkType: hard - -"cors@npm:^2.8.5": - version: 2.8.5 - resolution: "cors@npm:2.8.5" - dependencies: - object-assign: "npm:^4" - vary: "npm:^1" - checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761 - languageName: node - linkType: hard - -"crc-32@npm:^1.2.0": - version: 1.2.2 - resolution: "crc-32@npm:1.2.2" - bin: - crc32: bin/crc32.njs - checksum: 10c0/11dcf4a2e77ee793835d49f2c028838eae58b44f50d1ff08394a610bfd817523f105d6ae4d9b5bef0aad45510f633eb23c903e9902e4409bed1ce70cb82b9bf0 - languageName: node - linkType: hard - -"create-hash@npm:^1.1.0, create-hash@npm:^1.1.2, create-hash@npm:^1.2.0": - version: 1.2.0 - resolution: "create-hash@npm:1.2.0" - dependencies: - cipher-base: "npm:^1.0.1" - inherits: "npm:^2.0.1" - md5.js: "npm:^1.3.4" - ripemd160: "npm:^2.0.1" - sha.js: "npm:^2.4.0" - checksum: 10c0/d402e60e65e70e5083cb57af96d89567954d0669e90550d7cec58b56d49c4b193d35c43cec8338bc72358198b8cbf2f0cac14775b651e99238e1cf411490f915 - languageName: node - linkType: hard - -"create-hmac@npm:^1.1.7": - version: 1.1.7 - resolution: "create-hmac@npm:1.1.7" - dependencies: - cipher-base: "npm:^1.0.3" - create-hash: "npm:^1.1.0" - inherits: "npm:^2.0.1" - ripemd160: "npm:^2.0.0" - safe-buffer: "npm:^5.0.1" - sha.js: "npm:^2.4.8" - checksum: 10c0/24332bab51011652a9a0a6d160eed1e8caa091b802335324ae056b0dcb5acbc9fcf173cf10d128eba8548c3ce98dfa4eadaa01bd02f44a34414baee26b651835 - languageName: node - linkType: hard - -"create-require@npm:^1.1.0": - version: 1.1.1 - resolution: "create-require@npm:1.1.1" - checksum: 10c0/157cbc59b2430ae9a90034a5f3a1b398b6738bf510f713edc4d4e45e169bc514d3d99dd34d8d01ca7ae7830b5b8b537e46ae8f3c8f932371b0875c0151d7ec91 - languageName: node - linkType: hard - -"cross-spawn@npm:^6.0.0": - version: 6.0.6 - resolution: "cross-spawn@npm:6.0.6" - dependencies: - nice-try: "npm:^1.0.4" - path-key: "npm:^2.0.1" - semver: "npm:^5.5.0" - shebang-command: "npm:^1.2.0" - which: "npm:^1.2.9" - checksum: 10c0/bf61fb890e8635102ea9bce050515cf915ff6a50ccaa0b37a17dc82fded0fb3ed7af5478b9367b86baee19127ad86af4be51d209f64fd6638c0862dca185fe1d - languageName: node - linkType: hard - -"cross-spawn@npm:^7.0.6": - version: 7.0.6 - resolution: "cross-spawn@npm:7.0.6" - dependencies: - path-key: "npm:^3.1.0" - shebang-command: "npm:^2.0.0" - which: "npm:^2.0.1" - checksum: 10c0/053ea8b2135caff68a9e81470e845613e374e7309a47731e81639de3eaeb90c3d01af0e0b44d2ab9d50b43467223b88567dfeb3262db942dc063b9976718ffc1 - languageName: node - linkType: hard - -"crypt@npm:>= 0.0.1": - version: 0.0.2 - resolution: "crypt@npm:0.0.2" - checksum: 10c0/adbf263441dd801665d5425f044647533f39f4612544071b1471962209d235042fb703c27eea2795c7c53e1dfc242405173003f83cf4f4761a633d11f9653f18 - languageName: node - linkType: hard - -"crypto-js@npm:^3.1.9-1": - version: 3.3.0 - resolution: "crypto-js@npm:3.3.0" - checksum: 10c0/10b5d91bdc85095df9be01f9d0d954b8a3aba6202f143efa6215b8b3d5dd984e0883e10aeff792ef4a51b77cd4442320242b496acf6dce5069d0e0fc2e1d75d2 - languageName: node - linkType: hard - -"csv-parser@npm:3.0.0": - version: 3.0.0 - resolution: "csv-parser@npm:3.0.0" - dependencies: - minimist: "npm:^1.2.0" - bin: - csv-parser: bin/csv-parser - checksum: 10c0/206aef102c10d532a31c7d85e6b1b0e53c7cb8346037eb9f23e0bd7369788960d8f2431639ea9f62e34ddf54d0182dfb345691c11c666802324f25c51dba79bc - languageName: node - linkType: hard - -"csvtojson@npm:^2.0.10": - version: 2.0.14 - resolution: "csvtojson@npm:2.0.14" - dependencies: - lodash: "npm:^4.17.21" - bin: - csvtojson: bin/csvtojson - checksum: 10c0/94f35e903560e428e8ab922c3f122d46e921df616754577e410d79a50d6405c145ac64d01e825ae6238254d8024cd1c5acddacf2c6b4b38ad1c08bee1a900851 - languageName: node - linkType: hard - -"dashdash@npm:^1.12.0": - version: 1.14.1 - resolution: "dashdash@npm:1.14.1" - dependencies: - assert-plus: "npm:^1.0.0" - checksum: 10c0/64589a15c5bd01fa41ff7007e0f2c6552c5ef2028075daa16b188a3721f4ba001841bf306dfc2eee6e2e6e7f76b38f5f17fb21fa847504192290ffa9e150118a - languageName: node - linkType: hard - -"data-view-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "data-view-buffer@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.2" - checksum: 10c0/7986d40fc7979e9e6241f85db8d17060dd9a71bd53c894fa29d126061715e322a4cd47a00b0b8c710394854183d4120462b980b8554012acc1c0fa49df7ad38c - languageName: node - linkType: hard - -"data-view-byte-length@npm:^1.0.2": - version: 1.0.2 - resolution: "data-view-byte-length@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.2" - checksum: 10c0/f8a4534b5c69384d95ac18137d381f18a5cfae1f0fc1df0ef6feef51ef0d568606d970b69e02ea186c6c0f0eac77fe4e6ad96fec2569cc86c3afcc7475068c55 - languageName: node - linkType: hard - -"data-view-byte-offset@npm:^1.0.1": - version: 1.0.1 - resolution: "data-view-byte-offset@npm:1.0.1" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.1" - checksum: 10c0/fa7aa40078025b7810dcffc16df02c480573b7b53ef1205aa6a61533011005c1890e5ba17018c692ce7c900212b547262d33279fde801ad9843edc0863bf78c4 - languageName: node - linkType: hard - -"debug@npm:2.6.9, debug@npm:^2.2.0": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: "npm:2.0.0" - checksum: 10c0/121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589 - languageName: node - linkType: hard - -"debug@npm:3.2.6": - version: 3.2.6 - resolution: "debug@npm:3.2.6" - dependencies: - ms: "npm:^2.1.1" - checksum: 10c0/406ae034424c5570c83bb7f7baf6a2321ace5b94d6f0032ec796c686e277a55bbb575712bb9e6f204e044b1a8c31981ba97fab725a09fcdc7f85cd89daf4de30 - languageName: node - linkType: hard - -"debug@npm:4, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4, debug@npm:^4.3.5": - version: 4.4.3 - resolution: "debug@npm:4.4.3" - dependencies: - ms: "npm:^2.1.3" - peerDependenciesMeta: - supports-color: - optional: true - checksum: 10c0/d79136ec6c83ecbefd0f6a5593da6a9c91ec4d7ddc4b54c883d6e71ec9accb5f67a1a5e96d00a328196b5b5c86d365e98d8a3a70856aaf16b4e7b1985e67f5a6 - languageName: node - linkType: hard - -"debug@npm:^3.1.0": - version: 3.2.7 - resolution: "debug@npm:3.2.7" - dependencies: - ms: "npm:^2.1.1" - checksum: 10c0/37d96ae42cbc71c14844d2ae3ba55adf462ec89fd3a999459dec3833944cd999af6007ff29c780f1c61153bcaaf2c842d1e4ce1ec621e4fc4923244942e4a02a - languageName: node - linkType: hard - -"decamelize@npm:^1.2.0": - version: 1.2.0 - resolution: "decamelize@npm:1.2.0" - checksum: 10c0/85c39fe8fbf0482d4a1e224ef0119db5c1897f8503bcef8b826adff7a1b11414972f6fef2d7dec2ee0b4be3863cf64ac1439137ae9e6af23a3d8dcbe26a5b4b2 - languageName: node - linkType: hard - -"decamelize@npm:^4.0.0": - version: 4.0.0 - resolution: "decamelize@npm:4.0.0" - checksum: 10c0/e06da03fc05333e8cd2778c1487da67ffbea5b84e03ca80449519b8fa61f888714bbc6f459ea963d5641b4aa98832130eb5cd193d90ae9f0a27eee14be8e278d - languageName: node - linkType: hard - -"decimal.js@npm:^10.3.1, decimal.js@npm:^10.4.3": - version: 10.6.0 - resolution: "decimal.js@npm:10.6.0" - checksum: 10c0/07d69fbcc54167a340d2d97de95f546f9ff1f69d2b45a02fd7a5292412df3cd9eb7e23065e532a318f5474a2e1bccf8392fdf0443ef467f97f3bf8cb0477e5aa - languageName: node - linkType: hard - -"deep-eql@npm:^4.1.3": - version: 4.1.4 - resolution: "deep-eql@npm:4.1.4" - dependencies: - type-detect: "npm:^4.0.0" - checksum: 10c0/264e0613493b43552fc908f4ff87b8b445c0e6e075656649600e1b8a17a57ee03e960156fce7177646e4d2ddaf8e5ee616d76bd79929ff593e5c79e4e5e6c517 - languageName: node - linkType: hard - -"deep-extend@npm:~0.6.0": - version: 0.6.0 - resolution: "deep-extend@npm:0.6.0" - checksum: 10c0/1c6b0abcdb901e13a44c7d699116d3d4279fdb261983122a3783e7273844d5f2537dc2e1c454a23fcf645917f93fbf8d07101c1d03c015a87faa662755212566 - languageName: node - linkType: hard - -"deep-is@npm:^0.1.3": - version: 0.1.4 - resolution: "deep-is@npm:0.1.4" - checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c - languageName: node - linkType: hard - -"deferred-leveldown@npm:~5.3.0": - version: 5.3.0 - resolution: "deferred-leveldown@npm:5.3.0" - dependencies: - abstract-leveldown: "npm:~6.2.1" - inherits: "npm:^2.0.3" - checksum: 10c0/b1021314bfd5875b10e4c8c69429a69d37affc79df53aedf3c18a4bcd7460619220fa6b1bc309bcd85851c2c9c2b4da6cb03127abc08b715ff56da8aeae6b74f - languageName: node - linkType: hard - -"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.4": - version: 1.1.4 - resolution: "define-data-property@npm:1.1.4" - dependencies: - es-define-property: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - gopd: "npm:^1.0.1" - checksum: 10c0/dea0606d1483eb9db8d930d4eac62ca0fa16738b0b3e07046cddfacf7d8c868bbe13fa0cb263eb91c7d0d527960dc3f2f2471a69ed7816210307f6744fe62e37 - languageName: node - linkType: hard - -"define-properties@npm:^1.1.2, define-properties@npm:^1.2.1": - version: 1.2.1 - resolution: "define-properties@npm:1.2.1" - dependencies: - define-data-property: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.0" - object-keys: "npm:^1.1.1" - checksum: 10c0/88a152319ffe1396ccc6ded510a3896e77efac7a1bfbaa174a7b00414a1747377e0bb525d303794a47cf30e805c2ec84e575758512c6e44a993076d29fd4e6c3 - languageName: node - linkType: hard - -"delayed-stream@npm:~1.0.0": - version: 1.0.0 - resolution: "delayed-stream@npm:1.0.0" - checksum: 10c0/d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19 - languageName: node - linkType: hard - -"depd@npm:2.0.0, depd@npm:~2.0.0": - version: 2.0.0 - resolution: "depd@npm:2.0.0" - checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c - languageName: node - linkType: hard - -"destroy@npm:1.2.0, destroy@npm:~1.2.0": - version: 1.2.0 - resolution: "destroy@npm:1.2.0" - checksum: 10c0/bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643 - languageName: node - linkType: hard - -"diff@npm:3.5.0": - version: 3.5.0 - resolution: "diff@npm:3.5.0" - checksum: 10c0/fc62d5ba9f6d1b8b5833380969037007913d4886997838c247c54ec6934f09ae5a07e17ae28b1f016018149d81df8ad89306f52eac1afa899e0bed49015a64d1 - languageName: node - linkType: hard - -"diff@npm:^4.0.1": - version: 4.0.2 - resolution: "diff@npm:4.0.2" - checksum: 10c0/81b91f9d39c4eaca068eb0c1eb0e4afbdc5bb2941d197f513dd596b820b956fef43485876226d65d497bebc15666aa2aa82c679e84f65d5f2bfbf14ee46e32c1 - languageName: node - linkType: hard - -"diff@npm:^5.2.0": - version: 5.2.0 - resolution: "diff@npm:5.2.0" - checksum: 10c0/aed0941f206fe261ecb258dc8d0ceea8abbde3ace5827518ff8d302f0fc9cc81ce116c4d8f379151171336caf0516b79e01abdc1ed1201b6440d895a66689eb4 - languageName: node - linkType: hard - -"dotenv@npm:^10.0.0": - version: 10.0.0 - resolution: "dotenv@npm:10.0.0" - checksum: 10c0/2d8d4ba64bfaff7931402aa5e8cbb8eba0acbc99fe9ae442300199af021079eafa7171ce90e150821a5cb3d74f0057721fbe7ec201a6044b68c8a7615f8c123f - languageName: node - linkType: hard - -"dunder-proto@npm:^1.0.0, dunder-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "dunder-proto@npm:1.0.1" - dependencies: - call-bind-apply-helpers: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - gopd: "npm:^1.2.0" - checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031 - languageName: node - linkType: hard - -"eastasianwidth@npm:^0.2.0": - version: 0.2.0 - resolution: "eastasianwidth@npm:0.2.0" - checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39 - languageName: node - linkType: hard - -"ecc-jsbn@npm:~0.1.1": - version: 0.1.2 - resolution: "ecc-jsbn@npm:0.1.2" - dependencies: - jsbn: "npm:~0.1.0" - safer-buffer: "npm:^2.1.0" - checksum: 10c0/6cf168bae1e2dad2e46561d9af9cbabfbf5ff592176ad4e9f0f41eaaf5fe5e10bb58147fe0a804de62b1ee9dad42c28810c88d652b21b6013c47ba8efa274ca1 - languageName: node - linkType: hard - -"ee-first@npm:1.1.1": - version: 1.1.1 - resolution: "ee-first@npm:1.1.1" - checksum: 10c0/b5bb125ee93161bc16bfe6e56c6b04de5ad2aa44234d8f644813cc95d861a6910903132b05093706de2b706599367c4130eb6d170f6b46895686b95f87d017b7 - languageName: node - linkType: hard - -"elliptic@npm:6.5.4": - version: 6.5.4 - resolution: "elliptic@npm:6.5.4" - dependencies: - bn.js: "npm:^4.11.9" - brorand: "npm:^1.1.0" - hash.js: "npm:^1.0.0" - hmac-drbg: "npm:^1.0.1" - inherits: "npm:^2.0.4" - minimalistic-assert: "npm:^1.0.1" - minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 10c0/5f361270292c3b27cf0843e84526d11dec31652f03c2763c6c2b8178548175ff5eba95341dd62baff92b2265d1af076526915d8af6cc9cb7559c44a62f8ca6e2 - languageName: node - linkType: hard - -"elliptic@npm:6.6.1, elliptic@npm:^6.5.2, elliptic@npm:^6.5.4, elliptic@npm:^6.5.7": - version: 6.6.1 - resolution: "elliptic@npm:6.6.1" - dependencies: - bn.js: "npm:^4.11.9" - brorand: "npm:^1.1.0" - hash.js: "npm:^1.0.0" - hmac-drbg: "npm:^1.0.1" - inherits: "npm:^2.0.4" - minimalistic-assert: "npm:^1.0.1" - minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 10c0/8b24ef782eec8b472053793ea1e91ae6bee41afffdfcb78a81c0a53b191e715cbe1292aa07165958a9bbe675bd0955142560b1a007ffce7d6c765bcaf951a867 - languageName: node - linkType: hard - -"emittery@npm:0.10.0": - version: 0.10.0 - resolution: "emittery@npm:0.10.0" - checksum: 10c0/c2ad40e5bab53094070f7cb9d1b9a26fbbba6ab4b952cf5f33b8f64032356767c80c5aec2523aa7e44940c1cdb4f125d06a9cffd489a9be65103bb8a16ce173b - languageName: node - linkType: hard - -"emoji-regex@npm:^7.0.1": - version: 7.0.3 - resolution: "emoji-regex@npm:7.0.3" - checksum: 10c0/a8917d695c3a3384e4b7230a6a06fd2de6b3db3709116792e8b7b36ddbb3db4deb28ad3e983e70d4f2a1f9063b5dab9025e4e26e9ca08278da4fbb73e213743f - languageName: node - linkType: hard - -"emoji-regex@npm:^8.0.0": - version: 8.0.0 - resolution: "emoji-regex@npm:8.0.0" - checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010 - languageName: node - linkType: hard - -"emoji-regex@npm:^9.2.2": - version: 9.2.2 - resolution: "emoji-regex@npm:9.2.2" - checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639 - languageName: node - linkType: hard - -"encode-utf8@npm:^1.0.2": - version: 1.0.3 - resolution: "encode-utf8@npm:1.0.3" - checksum: 10c0/6b3458b73e868113d31099d7508514a5c627d8e16d1e0542d1b4e3652299b8f1f590c468e2b9dcdf1b4021ee961f31839d0be9d70a7f2a8a043c63b63c9b3a88 - languageName: node - linkType: hard - -"encodeurl@npm:~2.0.0": - version: 2.0.0 - resolution: "encodeurl@npm:2.0.0" - checksum: 10c0/5d317306acb13e6590e28e27924c754163946a2480de11865c991a3a7eed4315cd3fba378b543ca145829569eefe9b899f3d84bb09870f675ae60bc924b01ceb - languageName: node - linkType: hard - -"encoding-down@npm:^6.3.0": - version: 6.3.0 - resolution: "encoding-down@npm:6.3.0" - dependencies: - abstract-leveldown: "npm:^6.2.1" - inherits: "npm:^2.0.3" - level-codec: "npm:^9.0.0" - level-errors: "npm:^2.0.0" - checksum: 10c0/f7e92149863863c11e04d71ceb71baa1772270dc9ef15cbdbb155fed0a7d31c823682e043af3100f96ce8ab2e0a70a2464c1fa4902d4dce9a0584498f40d07bf - languageName: node - linkType: hard - -"encoding@npm:^0.1.13": - version: 0.1.13 - resolution: "encoding@npm:0.1.13" - dependencies: - iconv-lite: "npm:^0.6.2" - checksum: 10c0/36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039 - languageName: node - linkType: hard - -"end-of-stream@npm:^1.1.0": - version: 1.4.5 - resolution: "end-of-stream@npm:1.4.5" - dependencies: - once: "npm:^1.4.0" - checksum: 10c0/b0701c92a10b89afb1cb45bf54a5292c6f008d744eb4382fa559d54775ff31617d1d7bc3ef617575f552e24fad2c7c1a1835948c66b3f3a4be0a6c1f35c883d8 - languageName: node - linkType: hard - -"enquirer@npm:^2.3.0": - version: 2.4.1 - resolution: "enquirer@npm:2.4.1" - dependencies: - ansi-colors: "npm:^4.1.1" - strip-ansi: "npm:^6.0.1" - checksum: 10c0/43850479d7a51d36a9c924b518dcdc6373b5a8ae3401097d336b7b7e258324749d0ad37a1fcaa5706f04799baa05585cd7af19ebdf7667673e7694435fcea918 - languageName: node - linkType: hard - -"env-paths@npm:^2.2.0": - version: 2.2.1 - resolution: "env-paths@npm:2.2.1" - checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4 - languageName: node - linkType: hard - -"err-code@npm:^2.0.2": - version: 2.0.3 - resolution: "err-code@npm:2.0.3" - checksum: 10c0/b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66 - languageName: node - linkType: hard - -"errno@npm:~0.1.1": - version: 0.1.8 - resolution: "errno@npm:0.1.8" - dependencies: - prr: "npm:~1.0.1" - bin: - errno: cli.js - checksum: 10c0/83758951967ec57bf00b5f5b7dc797e6d65a6171e57ea57adcf1bd1a0b477fd9b5b35fae5be1ff18f4090ed156bce1db749fe7e317aac19d485a5d150f6a4936 - languageName: node - linkType: hard - -"es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.9, es-abstract@npm:^1.24.0": - version: 1.24.1 - resolution: "es-abstract@npm:1.24.1" - dependencies: - array-buffer-byte-length: "npm:^1.0.2" - arraybuffer.prototype.slice: "npm:^1.0.4" - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - data-view-buffer: "npm:^1.0.2" - data-view-byte-length: "npm:^1.0.2" - data-view-byte-offset: "npm:^1.0.1" - es-define-property: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - es-set-tostringtag: "npm:^2.1.0" - es-to-primitive: "npm:^1.3.0" - function.prototype.name: "npm:^1.1.8" - get-intrinsic: "npm:^1.3.0" - get-proto: "npm:^1.0.1" - get-symbol-description: "npm:^1.1.0" - globalthis: "npm:^1.0.4" - gopd: "npm:^1.2.0" - has-property-descriptors: "npm:^1.0.2" - has-proto: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - hasown: "npm:^2.0.2" - internal-slot: "npm:^1.1.0" - is-array-buffer: "npm:^3.0.5" - is-callable: "npm:^1.2.7" - is-data-view: "npm:^1.0.2" - is-negative-zero: "npm:^2.0.3" - is-regex: "npm:^1.2.1" - is-set: "npm:^2.0.3" - is-shared-array-buffer: "npm:^1.0.4" - is-string: "npm:^1.1.1" - is-typed-array: "npm:^1.1.15" - is-weakref: "npm:^1.1.1" - math-intrinsics: "npm:^1.1.0" - object-inspect: "npm:^1.13.4" - object-keys: "npm:^1.1.1" - object.assign: "npm:^4.1.7" - own-keys: "npm:^1.0.1" - regexp.prototype.flags: "npm:^1.5.4" - safe-array-concat: "npm:^1.1.3" - safe-push-apply: "npm:^1.0.0" - safe-regex-test: "npm:^1.1.0" - set-proto: "npm:^1.0.0" - stop-iteration-iterator: "npm:^1.1.0" - string.prototype.trim: "npm:^1.2.10" - string.prototype.trimend: "npm:^1.0.9" - string.prototype.trimstart: "npm:^1.0.8" - typed-array-buffer: "npm:^1.0.3" - typed-array-byte-length: "npm:^1.0.3" - typed-array-byte-offset: "npm:^1.0.4" - typed-array-length: "npm:^1.0.7" - unbox-primitive: "npm:^1.1.0" - which-typed-array: "npm:^1.1.19" - checksum: 10c0/fca062ef8b5daacf743732167d319a212d45cb655b0bb540821d38d715416ae15b04b84fc86da9e2c89135aa7b337337b6c867f84dcde698d75d55688d5d765c - languageName: node - linkType: hard - -"es-array-method-boxes-properly@npm:^1.0.0": - version: 1.0.0 - resolution: "es-array-method-boxes-properly@npm:1.0.0" - checksum: 10c0/4b7617d3fbd460d6f051f684ceca6cf7e88e6724671d9480388d3ecdd72119ddaa46ca31f2c69c5426a82e4b3091c1e81867c71dcdc453565cd90005ff2c382d - languageName: node - linkType: hard - -"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": - version: 1.0.1 - resolution: "es-define-property@npm:1.0.1" - checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c - languageName: node - linkType: hard - -"es-errors@npm:^1.3.0": - version: 1.3.0 - resolution: "es-errors@npm:1.3.0" - checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85 - languageName: node - linkType: hard - -"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1": - version: 1.1.1 - resolution: "es-object-atoms@npm:1.1.1" - dependencies: - es-errors: "npm:^1.3.0" - checksum: 10c0/65364812ca4daf48eb76e2a3b7a89b3f6a2e62a1c420766ce9f692665a29d94fe41fe88b65f24106f449859549711e4b40d9fb8002d862dfd7eb1c512d10be0c - languageName: node - linkType: hard - -"es-set-tostringtag@npm:^2.1.0": - version: 2.1.0 - resolution: "es-set-tostringtag@npm:2.1.0" - dependencies: - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - has-tostringtag: "npm:^1.0.2" - hasown: "npm:^2.0.2" - checksum: 10c0/ef2ca9ce49afe3931cb32e35da4dcb6d86ab02592cfc2ce3e49ced199d9d0bb5085fc7e73e06312213765f5efa47cc1df553a6a5154584b21448e9fb8355b1af - languageName: node - linkType: hard - -"es-to-primitive@npm:^1.3.0": - version: 1.3.0 - resolution: "es-to-primitive@npm:1.3.0" - dependencies: - is-callable: "npm:^1.2.7" - is-date-object: "npm:^1.0.5" - is-symbol: "npm:^1.0.4" - checksum: 10c0/c7e87467abb0b438639baa8139f701a06537d2b9bc758f23e8622c3b42fd0fdb5bde0f535686119e446dd9d5e4c0f238af4e14960f4771877cf818d023f6730b - languageName: node - linkType: hard - -"escalade@npm:^3.1.1": - version: 3.2.0 - resolution: "escalade@npm:3.2.0" - checksum: 10c0/ced4dd3a78e15897ed3be74e635110bbf3b08877b0a41be50dcb325ee0e0b5f65fc2d50e9845194d7c4633f327e2e1c6cce00a71b617c5673df0374201d67f65 - languageName: node - linkType: hard - -"escape-html@npm:~1.0.3": - version: 1.0.3 - resolution: "escape-html@npm:1.0.3" - checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3 - languageName: node - linkType: hard - -"escape-latex@npm:^1.2.0": - version: 1.2.0 - resolution: "escape-latex@npm:1.2.0" - checksum: 10c0/b77ea1594a38625295793a61105222c283c1792d1b2511bbfd6338cf02cc427dcabce7e7c1e22ec2f5c40baf3eaf2eeaf229a62dbbb74c6e69bb4a4209f2544f - languageName: node - linkType: hard - -"escape-string-regexp@npm:1.0.5, escape-string-regexp@npm:^1.0.5": - version: 1.0.5 - resolution: "escape-string-regexp@npm:1.0.5" - checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371 - languageName: node - linkType: hard - -"escape-string-regexp@npm:^4.0.0": - version: 4.0.0 - resolution: "escape-string-regexp@npm:4.0.0" - checksum: 10c0/9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9 - languageName: node - linkType: hard - -"eslint-scope@npm:^8.4.0": - version: 8.4.0 - resolution: "eslint-scope@npm:8.4.0" - dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^5.2.0" - checksum: 10c0/407f6c600204d0f3705bd557f81bd0189e69cd7996f408f8971ab5779c0af733d1af2f1412066b40ee1588b085874fc37a2333986c6521669cdbdd36ca5058e0 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^3.4.3": - version: 3.4.3 - resolution: "eslint-visitor-keys@npm:3.4.3" - checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^4.2.1": - version: 4.2.1 - resolution: "eslint-visitor-keys@npm:4.2.1" - checksum: 10c0/fcd43999199d6740db26c58dbe0c2594623e31ca307e616ac05153c9272f12f1364f5a0b1917a8e962268fdecc6f3622c1c2908b4fcc2e047a106fe6de69dc43 - languageName: node - linkType: hard - -"eslint@npm:^9.12.0": - version: 9.39.2 - resolution: "eslint@npm:9.39.2" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.8.0" - "@eslint-community/regexpp": "npm:^4.12.1" - "@eslint/config-array": "npm:^0.21.1" - "@eslint/config-helpers": "npm:^0.4.2" - "@eslint/core": "npm:^0.17.0" - "@eslint/eslintrc": "npm:^3.3.1" - "@eslint/js": "npm:9.39.2" - "@eslint/plugin-kit": "npm:^0.4.1" - "@humanfs/node": "npm:^0.16.6" - "@humanwhocodes/module-importer": "npm:^1.0.1" - "@humanwhocodes/retry": "npm:^0.4.2" - "@types/estree": "npm:^1.0.6" - ajv: "npm:^6.12.4" - chalk: "npm:^4.0.0" - cross-spawn: "npm:^7.0.6" - debug: "npm:^4.3.2" - escape-string-regexp: "npm:^4.0.0" - eslint-scope: "npm:^8.4.0" - eslint-visitor-keys: "npm:^4.2.1" - espree: "npm:^10.4.0" - esquery: "npm:^1.5.0" - esutils: "npm:^2.0.2" - fast-deep-equal: "npm:^3.1.3" - file-entry-cache: "npm:^8.0.0" - find-up: "npm:^5.0.0" - glob-parent: "npm:^6.0.2" - ignore: "npm:^5.2.0" - imurmurhash: "npm:^0.1.4" - is-glob: "npm:^4.0.0" - json-stable-stringify-without-jsonify: "npm:^1.0.1" - lodash.merge: "npm:^4.6.2" - minimatch: "npm:^3.1.2" - natural-compare: "npm:^1.4.0" - optionator: "npm:^0.9.3" - peerDependencies: - jiti: "*" - peerDependenciesMeta: - jiti: - optional: true - bin: - eslint: bin/eslint.js - checksum: 10c0/bb88ca8fd16bb7e1ac3e13804c54d41c583214460c0faa7b3e7c574e69c5600c7122295500fb4b0c06067831111db740931e98da1340329527658e1cf80073d3 - languageName: node - linkType: hard - -"espree@npm:^10.0.1, espree@npm:^10.4.0": - version: 10.4.0 - resolution: "espree@npm:10.4.0" - dependencies: - acorn: "npm:^8.15.0" - acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^4.2.1" - checksum: 10c0/c63fe06131c26c8157b4083313cb02a9a54720a08e21543300e55288c40e06c3fc284bdecf108d3a1372c5934a0a88644c98714f38b6ae8ed272b40d9ea08d6b - languageName: node - linkType: hard - -"esprima@npm:^4.0.0": - version: 4.0.1 - resolution: "esprima@npm:4.0.1" - bin: - esparse: ./bin/esparse.js - esvalidate: ./bin/esvalidate.js - checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 - languageName: node - linkType: hard - -"esquery@npm:^1.5.0": - version: 1.7.0 - resolution: "esquery@npm:1.7.0" - dependencies: - estraverse: "npm:^5.1.0" - checksum: 10c0/77d5173db450b66f3bc685d11af4c90cffeedb340f34a39af96d43509a335ce39c894fd79233df32d38f5e4e219fa0f7076f6ec90bae8320170ba082c0db4793 - languageName: node - linkType: hard - -"esrecurse@npm:^4.3.0": - version: 4.3.0 - resolution: "esrecurse@npm:4.3.0" - dependencies: - estraverse: "npm:^5.2.0" - checksum: 10c0/81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5 - languageName: node - linkType: hard - -"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": - version: 5.3.0 - resolution: "estraverse@npm:5.3.0" - checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107 - languageName: node - linkType: hard - -"esutils@npm:^2.0.2": - version: 2.0.3 - resolution: "esutils@npm:2.0.3" - checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7 - languageName: node - linkType: hard - -"etag@npm:~1.8.1": - version: 1.8.1 - resolution: "etag@npm:1.8.1" - checksum: 10c0/12be11ef62fb9817314d790089a0a49fae4e1b50594135dcb8076312b7d7e470884b5100d249b28c18581b7fd52f8b485689ffae22a11ed9ec17377a33a08f84 - languageName: node - linkType: hard - -"eth-gas-reporter@npm:0.2.25": - version: 0.2.25 - resolution: "eth-gas-reporter@npm:0.2.25" - dependencies: - "@ethersproject/abi": "npm:^5.0.0-beta.146" - "@solidity-parser/parser": "npm:^0.14.0" - cli-table3: "npm:^0.5.0" - colors: "npm:1.4.0" - ethereum-cryptography: "npm:^1.0.3" - ethers: "npm:^4.0.40" - fs-readdir-recursive: "npm:^1.1.0" - lodash: "npm:^4.17.14" - markdown-table: "npm:^1.1.3" - mocha: "npm:^7.1.1" - req-cwd: "npm:^2.0.0" - request: "npm:^2.88.0" - request-promise-native: "npm:^1.0.5" - sha1: "npm:^1.1.1" - sync-request: "npm:^6.0.0" - peerDependencies: - "@codechecks/client": ^0.1.0 - peerDependenciesMeta: - "@codechecks/client": - optional: true - checksum: 10c0/c05c1b3371c614cddf91486874f7abfdb7cd75dc2d4530be45b14999785512d69489dbc08c251766bf93ed516184bf94d5a9ff1505f3969cb9f0659b93d9d571 - languageName: node - linkType: hard - -"eth-gas-reporter@npm:^0.2.25": - version: 0.2.27 - resolution: "eth-gas-reporter@npm:0.2.27" - dependencies: - "@solidity-parser/parser": "npm:^0.14.0" - axios: "npm:^1.5.1" - cli-table3: "npm:^0.5.0" - colors: "npm:1.4.0" - ethereum-cryptography: "npm:^1.0.3" - ethers: "npm:^5.7.2" - fs-readdir-recursive: "npm:^1.1.0" - lodash: "npm:^4.17.14" - markdown-table: "npm:^1.1.3" - mocha: "npm:^10.2.0" - req-cwd: "npm:^2.0.0" - sha1: "npm:^1.1.1" - sync-request: "npm:^6.0.0" - peerDependencies: - "@codechecks/client": ^0.1.0 - peerDependenciesMeta: - "@codechecks/client": - optional: true - checksum: 10c0/62a7b8ea41d82731fe91a7741eb2362f08d55e0fece1c12e69effe1684933999961d97d1011037a54063fda20c33a61ef143f04b7ccef36c3002f40975b0415f - languageName: node - linkType: hard - -"ethereum-bloom-filters@npm:^1.0.6": - version: 1.2.0 - resolution: "ethereum-bloom-filters@npm:1.2.0" - dependencies: - "@noble/hashes": "npm:^1.4.0" - checksum: 10c0/7a0ed420cb2e85f621042d78576eb4ddea535a57f3186e314160604b29c37bcd0d3561b03695971e3a96e9c9db402b87de7248a1ac640cbc3dda1b8077cf841f - languageName: node - linkType: hard - -"ethereum-cryptography@npm:^0.1.3": - version: 0.1.3 - resolution: "ethereum-cryptography@npm:0.1.3" - dependencies: - "@types/pbkdf2": "npm:^3.0.0" - "@types/secp256k1": "npm:^4.0.1" - blakejs: "npm:^1.1.0" - browserify-aes: "npm:^1.2.0" - bs58check: "npm:^2.1.2" - create-hash: "npm:^1.2.0" - create-hmac: "npm:^1.1.7" - hash.js: "npm:^1.1.7" - keccak: "npm:^3.0.0" - pbkdf2: "npm:^3.0.17" - randombytes: "npm:^2.1.0" - safe-buffer: "npm:^5.1.2" - scrypt-js: "npm:^3.0.0" - secp256k1: "npm:^4.0.1" - setimmediate: "npm:^1.0.5" - checksum: 10c0/aa36e11fca9d67d67c96e02a98b33bae2e1add20bd11af43feb7f28cdafe0cd3bdbae3bfecc7f2d9ec8f504b10a1c8f7590f5f7fe236560fd8083dd321ad7144 - languageName: node - linkType: hard - -"ethereum-cryptography@npm:^1.0.3": - version: 1.2.0 - resolution: "ethereum-cryptography@npm:1.2.0" - dependencies: - "@noble/hashes": "npm:1.2.0" - "@noble/secp256k1": "npm:1.7.1" - "@scure/bip32": "npm:1.1.5" - "@scure/bip39": "npm:1.1.1" - checksum: 10c0/93e486a4a8b266dc2f274b69252e751345ef47551163371939b01231afb7b519133e2572b5975bb9cb4cc77ac54ccd36002c7c759a72488abeeaf216e4d55b46 - languageName: node - linkType: hard - -"ethereum-cryptography@npm:^2.0.0, ethereum-cryptography@npm:^2.1.2, ethereum-cryptography@npm:^2.2.1": - version: 2.2.1 - resolution: "ethereum-cryptography@npm:2.2.1" - dependencies: - "@noble/curves": "npm:1.4.2" - "@noble/hashes": "npm:1.4.0" - "@scure/bip32": "npm:1.4.0" - "@scure/bip39": "npm:1.3.0" - checksum: 10c0/c6c7626d393980577b57f709878b2eb91f270fe56116044b1d7afb70d5c519cddc0c072e8c05e4a335e05342eb64d9c3ab39d52f78bb75f76ad70817da9645ef - languageName: node - linkType: hard - -"ethereum-waffle@npm:4.0.10": - version: 4.0.10 - resolution: "ethereum-waffle@npm:4.0.10" - dependencies: - "@ethereum-waffle/chai": "npm:4.0.10" - "@ethereum-waffle/compiler": "npm:4.0.3" - "@ethereum-waffle/mock-contract": "npm:4.0.4" - "@ethereum-waffle/provider": "npm:4.0.5" - solc: "npm:0.8.15" - typechain: "npm:^8.0.0" - peerDependencies: - ethers: "*" - bin: - waffle: bin/waffle - checksum: 10c0/a7dd9cc02b5a404edc05168f3f565025426e3e648186d472366cb50348ee8106d71adcb435aecd4f9589b43c2d91dc51826b74c76a56cf2aad94a53ec21e9c12 - languageName: node - linkType: hard - -"ethereumjs-abi@npm:0.6.8": - version: 0.6.8 - resolution: "ethereumjs-abi@npm:0.6.8" - dependencies: - bn.js: "npm:^4.11.8" - ethereumjs-util: "npm:^6.0.0" - checksum: 10c0/a7ff1917625e3c812cb3bca6c1231fc0ece282cc7d202d60545a9c31cd379fd751bfed5ff78dae4279cb1ba4d0e8967f9fdd4f135a334a38dbf04e7afd0c4bcf - languageName: node - linkType: hard - -"ethereumjs-util@npm:6.2.1, ethereumjs-util@npm:^6.0.0": - version: 6.2.1 - resolution: "ethereumjs-util@npm:6.2.1" - dependencies: - "@types/bn.js": "npm:^4.11.3" - bn.js: "npm:^4.11.0" - create-hash: "npm:^1.1.2" - elliptic: "npm:^6.5.2" - ethereum-cryptography: "npm:^0.1.3" - ethjs-util: "npm:0.1.6" - rlp: "npm:^2.2.3" - checksum: 10c0/64aa7e6d591a0b890eb147c5d81f80a6456e87b3056e6bbafb54dff63f6ae9e646406763e8bd546c3b0b0162d027aecb3844873e894681826b03e0298f57e7a4 - languageName: node - linkType: hard - -"ethereumjs-util@npm:7.1.3": - version: 7.1.3 - resolution: "ethereumjs-util@npm:7.1.3" - dependencies: - "@types/bn.js": "npm:^5.1.0" - bn.js: "npm:^5.1.2" - create-hash: "npm:^1.1.2" - ethereum-cryptography: "npm:^0.1.3" - rlp: "npm:^2.2.4" - checksum: 10c0/555baf030032bf908e553e7d605206a78a3cf1073ba3e1851195e24672ba730ab87b0b916a58923efe2f935f3b6b402d82c88d76be9aaed8e416ff3798acb3f4 - languageName: node - linkType: hard - -"ethereumjs-util@npm:^7.0.3, ethereumjs-util@npm:^7.1.1, ethereumjs-util@npm:^7.1.3, ethereumjs-util@npm:^7.1.4, ethereumjs-util@npm:^7.1.5": - version: 7.1.5 - resolution: "ethereumjs-util@npm:7.1.5" - dependencies: - "@types/bn.js": "npm:^5.1.0" - bn.js: "npm:^5.1.2" - create-hash: "npm:^1.1.2" - ethereum-cryptography: "npm:^0.1.3" - rlp: "npm:^2.2.4" - checksum: 10c0/8b9487f35ecaa078bf9af6858eba6855fc61c73cc2b90c8c37486fcf94faf4fc1c5cda9758e6769f9ef2658daedaf2c18b366312ac461f8c8a122b392e3041eb - languageName: node - linkType: hard - -"ethers@npm:5.7.2": - version: 5.7.2 - resolution: "ethers@npm:5.7.2" - dependencies: - "@ethersproject/abi": "npm:5.7.0" - "@ethersproject/abstract-provider": "npm:5.7.0" - "@ethersproject/abstract-signer": "npm:5.7.0" - "@ethersproject/address": "npm:5.7.0" - "@ethersproject/base64": "npm:5.7.0" - "@ethersproject/basex": "npm:5.7.0" - "@ethersproject/bignumber": "npm:5.7.0" - "@ethersproject/bytes": "npm:5.7.0" - "@ethersproject/constants": "npm:5.7.0" - "@ethersproject/contracts": "npm:5.7.0" - "@ethersproject/hash": "npm:5.7.0" - "@ethersproject/hdnode": "npm:5.7.0" - "@ethersproject/json-wallets": "npm:5.7.0" - "@ethersproject/keccak256": "npm:5.7.0" - "@ethersproject/logger": "npm:5.7.0" - "@ethersproject/networks": "npm:5.7.1" - "@ethersproject/pbkdf2": "npm:5.7.0" - "@ethersproject/properties": "npm:5.7.0" - "@ethersproject/providers": "npm:5.7.2" - "@ethersproject/random": "npm:5.7.0" - "@ethersproject/rlp": "npm:5.7.0" - "@ethersproject/sha2": "npm:5.7.0" - "@ethersproject/signing-key": "npm:5.7.0" - "@ethersproject/solidity": "npm:5.7.0" - "@ethersproject/strings": "npm:5.7.0" - "@ethersproject/transactions": "npm:5.7.0" - "@ethersproject/units": "npm:5.7.0" - "@ethersproject/wallet": "npm:5.7.0" - "@ethersproject/web": "npm:5.7.1" - "@ethersproject/wordlists": "npm:5.7.0" - checksum: 10c0/90629a4cdb88cde7a7694f5610a83eb00d7fbbaea687446b15631397988f591c554dd68dfa752ddf00aabefd6285e5b298be44187e960f5e4962684e10b39962 - languageName: node - linkType: hard - -"ethers@npm:^4.0.40": - version: 4.0.49 - resolution: "ethers@npm:4.0.49" - dependencies: - aes-js: "npm:3.0.0" - bn.js: "npm:^4.11.9" - elliptic: "npm:6.5.4" - hash.js: "npm:1.1.3" - js-sha3: "npm:0.5.7" - scrypt-js: "npm:2.0.4" - setimmediate: "npm:1.0.4" - uuid: "npm:2.0.1" - xmlhttprequest: "npm:1.8.0" - checksum: 10c0/c2d6e659faca917469f95c1384db6717ad56fd386183b220907ab4fd31c7b8f649ec5975679245a482c9cfb63f2f796c014d465a0538cc2525b0f7b701753002 - languageName: node - linkType: hard - -"ethers@npm:^5.6.1, ethers@npm:^5.7.2": - version: 5.8.0 - resolution: "ethers@npm:5.8.0" - dependencies: - "@ethersproject/abi": "npm:5.8.0" - "@ethersproject/abstract-provider": "npm:5.8.0" - "@ethersproject/abstract-signer": "npm:5.8.0" - "@ethersproject/address": "npm:5.8.0" - "@ethersproject/base64": "npm:5.8.0" - "@ethersproject/basex": "npm:5.8.0" - "@ethersproject/bignumber": "npm:5.8.0" - "@ethersproject/bytes": "npm:5.8.0" - "@ethersproject/constants": "npm:5.8.0" - "@ethersproject/contracts": "npm:5.8.0" - "@ethersproject/hash": "npm:5.8.0" - "@ethersproject/hdnode": "npm:5.8.0" - "@ethersproject/json-wallets": "npm:5.8.0" - "@ethersproject/keccak256": "npm:5.8.0" - "@ethersproject/logger": "npm:5.8.0" - "@ethersproject/networks": "npm:5.8.0" - "@ethersproject/pbkdf2": "npm:5.8.0" - "@ethersproject/properties": "npm:5.8.0" - "@ethersproject/providers": "npm:5.8.0" - "@ethersproject/random": "npm:5.8.0" - "@ethersproject/rlp": "npm:5.8.0" - "@ethersproject/sha2": "npm:5.8.0" - "@ethersproject/signing-key": "npm:5.8.0" - "@ethersproject/solidity": "npm:5.8.0" - "@ethersproject/strings": "npm:5.8.0" - "@ethersproject/transactions": "npm:5.8.0" - "@ethersproject/units": "npm:5.8.0" - "@ethersproject/wallet": "npm:5.8.0" - "@ethersproject/web": "npm:5.8.0" - "@ethersproject/wordlists": "npm:5.8.0" - checksum: 10c0/8f187bb6af3736fbafcb613d8fb5be31fe7667a1bae480dd0a4c31b597ed47e0693d552adcababcb05111da39a059fac22e44840ce1671b1cc972de22d6d85d9 - languageName: node - linkType: hard - -"ethjs-unit@npm:0.1.6": - version: 0.1.6 - resolution: "ethjs-unit@npm:0.1.6" - dependencies: - bn.js: "npm:4.11.6" - number-to-bn: "npm:1.7.0" - checksum: 10c0/0115ddeb4bc932026b9cd259f6eb020a45b38be62e3786526b70e4c5fb0254184bf6e8b7b3f0c8bb80d4d596a73893e386c02221faf203895db7cb9c29b37188 - languageName: node - linkType: hard - -"ethjs-util@npm:0.1.6": - version: 0.1.6 - resolution: "ethjs-util@npm:0.1.6" - dependencies: - is-hex-prefixed: "npm:1.0.0" - strip-hex-prefix: "npm:1.0.0" - checksum: 10c0/9b4d6268705fd0620e73a56d2fa7b8a7c6b9770b2cf7f8ffe3a9c46b8bd1c5a08fff3d1181bb18cf85cf12b6fdbb6dca6d9aff6506005f3f565e742f026e6339 - languageName: node - linkType: hard - -"evm-bn@npm:^1.1.1": - version: 1.1.2 - resolution: "evm-bn@npm:1.1.2" - dependencies: - "@ethersproject/bignumber": "npm:^5.5.0" - from-exponential: "npm:^1.1.1" - peerDependencies: - "@ethersproject/bignumber": 5.x - checksum: 10c0/18ae4f8cae76c46df3c09f5a493cb0f8245dccfbe501c72e35cde5e27a1a8fd8d4c72876e4448cdaba7da68916140385d892653cc951084a9f436f0fda4e105f - languageName: node - linkType: hard - -"evp_bytestokey@npm:^1.0.3": - version: 1.0.3 - resolution: "evp_bytestokey@npm:1.0.3" - dependencies: - md5.js: "npm:^1.3.4" - node-gyp: "npm:latest" - safe-buffer: "npm:^5.1.1" - checksum: 10c0/77fbe2d94a902a80e9b8f5a73dcd695d9c14899c5e82967a61b1fc6cbbb28c46552d9b127cff47c45fcf684748bdbcfa0a50410349109de87ceb4b199ef6ee99 - languageName: node - linkType: hard - -"execa@npm:^1.0.0": - version: 1.0.0 - resolution: "execa@npm:1.0.0" - dependencies: - cross-spawn: "npm:^6.0.0" - get-stream: "npm:^4.0.0" - is-stream: "npm:^1.1.0" - npm-run-path: "npm:^2.0.0" - p-finally: "npm:^1.0.0" - signal-exit: "npm:^3.0.0" - strip-eof: "npm:^1.0.0" - checksum: 10c0/cc71707c9aa4a2552346893ee63198bf70a04b5a1bc4f8a0ef40f1d03c319eae80932c59191f037990d7d102193e83a38ec72115fff814ec2fb3099f3661a590 - languageName: node - linkType: hard - -"exponential-backoff@npm:^3.1.1": - version: 3.1.3 - resolution: "exponential-backoff@npm:3.1.3" - checksum: 10c0/77e3ae682b7b1f4972f563c6dbcd2b0d54ac679e62d5d32f3e5085feba20483cf28bd505543f520e287a56d4d55a28d7874299941faf637e779a1aa5994d1267 - languageName: node - linkType: hard - -"express@npm:^4.21.1": - version: 4.22.1 - resolution: "express@npm:4.22.1" - dependencies: - accepts: "npm:~1.3.8" - array-flatten: "npm:1.1.1" - body-parser: "npm:~1.20.3" - content-disposition: "npm:~0.5.4" - content-type: "npm:~1.0.4" - cookie: "npm:~0.7.1" - cookie-signature: "npm:~1.0.6" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - finalhandler: "npm:~1.3.1" - fresh: "npm:~0.5.2" - http-errors: "npm:~2.0.0" - merge-descriptors: "npm:1.0.3" - methods: "npm:~1.1.2" - on-finished: "npm:~2.4.1" - parseurl: "npm:~1.3.3" - path-to-regexp: "npm:~0.1.12" - proxy-addr: "npm:~2.0.7" - qs: "npm:~6.14.0" - range-parser: "npm:~1.2.1" - safe-buffer: "npm:5.2.1" - send: "npm:~0.19.0" - serve-static: "npm:~1.16.2" - setprototypeof: "npm:1.2.0" - statuses: "npm:~2.0.1" - type-is: "npm:~1.6.18" - utils-merge: "npm:1.0.1" - vary: "npm:~1.1.2" - checksum: 10c0/ea57f512ab1e05e26b53a14fd432f65a10ec735ece342b37d0b63a7bcb8d337ffbb830ecb8ca15bcdfe423fbff88cea09786277baff200e8cde3ab40faa665cd - languageName: node - linkType: hard - -"extend@npm:~3.0.2": - version: 3.0.2 - resolution: "extend@npm:3.0.2" - checksum: 10c0/73bf6e27406e80aa3e85b0d1c4fd987261e628064e170ca781125c0b635a3dabad5e05adbf07595ea0cf1e6c5396cacb214af933da7cbaf24fe75ff14818e8f9 - languageName: node - linkType: hard - -"extsprintf@npm:1.3.0": - version: 1.3.0 - resolution: "extsprintf@npm:1.3.0" - checksum: 10c0/f75114a8388f0cbce68e277b6495dc3930db4dde1611072e4a140c24e204affd77320d004b947a132e9a3b97b8253017b2b62dce661975fb0adced707abf1ab5 - languageName: node - linkType: hard - -"extsprintf@npm:^1.2.0": - version: 1.4.1 - resolution: "extsprintf@npm:1.4.1" - checksum: 10c0/e10e2769985d0e9b6c7199b053a9957589d02e84de42832c295798cb422a025e6d4a92e0259c1fb4d07090f5bfde6b55fd9f880ac5855bd61d775f8ab75a7ab0 - languageName: node - linkType: hard - -"fast-base64-decode@npm:^1.0.0": - version: 1.0.0 - resolution: "fast-base64-decode@npm:1.0.0" - checksum: 10c0/6d8feab513222a463d1cb58d24e04d2e04b0791ac6559861f99543daaa590e2636d040d611b40a50799bfb5c5304265d05e3658b5adf6b841a50ef6bf833d821 - languageName: node - linkType: hard - -"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": - version: 3.1.3 - resolution: "fast-deep-equal@npm:3.1.3" - checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0 - languageName: node - linkType: hard - -"fast-json-stable-stringify@npm:^2.0.0": - version: 2.1.0 - resolution: "fast-json-stable-stringify@npm:2.1.0" - checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b - languageName: node - linkType: hard - -"fast-levenshtein@npm:^2.0.6": - version: 2.0.6 - resolution: "fast-levenshtein@npm:2.0.6" - checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4 - languageName: node - linkType: hard - -"fast-uri@npm:^3.0.1": - version: 3.1.0 - resolution: "fast-uri@npm:3.1.0" - checksum: 10c0/44364adca566f70f40d1e9b772c923138d47efeac2ae9732a872baafd77061f26b097ba2f68f0892885ad177becd065520412b8ffeec34b16c99433c5b9e2de7 - languageName: node - linkType: hard - -"fdir@npm:^6.5.0": - version: 6.5.0 - resolution: "fdir@npm:6.5.0" - peerDependencies: - picomatch: ^3 || ^4 - peerDependenciesMeta: - picomatch: - optional: true - checksum: 10c0/e345083c4306b3aed6cb8ec551e26c36bab5c511e99ea4576a16750ddc8d3240e63826cc624f5ae17ad4dc82e68a253213b60d556c11bfad064b7607847ed07f - languageName: node - linkType: hard - -"file-entry-cache@npm:^8.0.0": - version: 8.0.0 - resolution: "file-entry-cache@npm:8.0.0" - dependencies: - flat-cache: "npm:^4.0.0" - checksum: 10c0/9e2b5938b1cd9b6d7e3612bdc533afd4ac17b2fc646569e9a8abbf2eb48e5eb8e316bc38815a3ef6a1b456f4107f0d0f055a614ca613e75db6bf9ff4d72c1638 - languageName: node - linkType: hard - -"fill-range@npm:^7.1.1": - version: 7.1.1 - resolution: "fill-range@npm:7.1.1" - dependencies: - to-regex-range: "npm:^5.0.1" - checksum: 10c0/b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018 - languageName: node - linkType: hard - -"finalhandler@npm:~1.3.1": - version: 1.3.2 - resolution: "finalhandler@npm:1.3.2" - dependencies: - debug: "npm:2.6.9" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - on-finished: "npm:~2.4.1" - parseurl: "npm:~1.3.3" - statuses: "npm:~2.0.2" - unpipe: "npm:~1.0.0" - checksum: 10c0/435a4fd65e4e4e4c71bb5474980090b73c353a123dd415583f67836bdd6516e528cf07298e219a82b94631dee7830eae5eece38d3c178073cf7df4e8c182f413 - languageName: node - linkType: hard - -"find-replace@npm:^3.0.0": - version: 3.0.0 - resolution: "find-replace@npm:3.0.0" - dependencies: - array-back: "npm:^3.0.1" - checksum: 10c0/fcd1bf7960388c8193c2861bcdc760c18ac14edb4bde062a961915d9a25727b2e8aabf0229e90cc09c753fd557e5a3e5ae61e49cadbe727be89a9e8e49ce7668 - languageName: node - linkType: hard - -"find-up@npm:3.0.0, find-up@npm:^3.0.0": - version: 3.0.0 - resolution: "find-up@npm:3.0.0" - dependencies: - locate-path: "npm:^3.0.0" - checksum: 10c0/2c2e7d0a26db858e2f624f39038c74739e38306dee42b45f404f770db357947be9d0d587f1cac72d20c114deb38aa57316e879eb0a78b17b46da7dab0a3bd6e3 - languageName: node - linkType: hard - -"find-up@npm:^5.0.0": - version: 5.0.0 - resolution: "find-up@npm:5.0.0" - dependencies: - locate-path: "npm:^6.0.0" - path-exists: "npm:^4.0.0" - checksum: 10c0/062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a - languageName: node - linkType: hard - -"flat-cache@npm:^4.0.0": - version: 4.0.1 - resolution: "flat-cache@npm:4.0.1" - dependencies: - flatted: "npm:^3.2.9" - keyv: "npm:^4.5.4" - checksum: 10c0/2c59d93e9faa2523e4fda6b4ada749bed432cfa28c8e251f33b25795e426a1c6dbada777afb1f74fcfff33934fdbdea921ee738fcc33e71adc9d6eca984a1cfc - languageName: node - linkType: hard - -"flat@npm:^4.1.0": - version: 4.1.1 - resolution: "flat@npm:4.1.1" - dependencies: - is-buffer: "npm:~2.0.3" - bin: - flat: cli.js - checksum: 10c0/5a94ddd3162275ddf10898d68968005388e1a3ef31a91d9dc1d53891caa1f143e4d03b9e8c88ca6b46782be19d153a9ca90899937f234c8fb3b58e7b03aa3615 - languageName: node - linkType: hard - -"flat@npm:^5.0.2": - version: 5.0.2 - resolution: "flat@npm:5.0.2" - bin: - flat: cli.js - checksum: 10c0/f178b13482f0cd80c7fede05f4d10585b1f2fdebf26e12edc138e32d3150c6ea6482b7f12813a1091143bad52bb6d3596bca51a162257a21163c0ff438baa5fe - languageName: node - linkType: hard - -"flatted@npm:^3.2.9": - version: 3.3.3 - resolution: "flatted@npm:3.3.3" - checksum: 10c0/e957a1c6b0254aa15b8cce8533e24165abd98fadc98575db082b786b5da1b7d72062b81bfdcd1da2f4d46b6ed93bec2434e62333e9b4261d79ef2e75a10dd538 - languageName: node - linkType: hard - -"fmix@npm:^0.1.0": - version: 0.1.0 - resolution: "fmix@npm:0.1.0" - dependencies: - imul: "npm:^1.0.0" - checksum: 10c0/af9e54eacc00b46e1c4a77229840e37252fff7634f81026591da9d24438ca15a1afa2786f579eb7865489ded21b76af7327d111b90b944e7409cd60f4d4f2ded - languageName: node - linkType: hard - -"follow-redirects@npm:^1.12.1, follow-redirects@npm:^1.14.0, follow-redirects@npm:^1.15.4, follow-redirects@npm:^1.15.6": - version: 1.15.11 - resolution: "follow-redirects@npm:1.15.11" - peerDependenciesMeta: - debug: - optional: true - checksum: 10c0/d301f430542520a54058d4aeeb453233c564aaccac835d29d15e050beb33f339ad67d9bddbce01739c5dc46a6716dbe3d9d0d5134b1ca203effa11a7ef092343 - languageName: node - linkType: hard - -"for-each@npm:^0.3.3, for-each@npm:^0.3.5": - version: 0.3.5 - resolution: "for-each@npm:0.3.5" - dependencies: - is-callable: "npm:^1.2.7" - checksum: 10c0/0e0b50f6a843a282637d43674d1fb278dda1dd85f4f99b640024cfb10b85058aac0cc781bf689d5fe50b4b7f638e91e548560723a4e76e04fe96ae35ef039cee - languageName: node - linkType: hard - -"foreground-child@npm:^3.1.0": - version: 3.3.1 - resolution: "foreground-child@npm:3.3.1" - dependencies: - cross-spawn: "npm:^7.0.6" - signal-exit: "npm:^4.0.1" - checksum: 10c0/8986e4af2430896e65bc2788d6679067294d6aee9545daefc84923a0a4b399ad9c7a3ea7bd8c0b2b80fdf4a92de4c69df3f628233ff3224260e9c1541a9e9ed3 - languageName: node - linkType: hard - -"forever-agent@npm:~0.6.1": - version: 0.6.1 - resolution: "forever-agent@npm:0.6.1" - checksum: 10c0/364f7f5f7d93ab661455351ce116a67877b66f59aca199559a999bd39e3cfadbfbfacc10415a915255e2210b30c23febe9aec3ca16bf2d1ff11c935a1000e24c - languageName: node - linkType: hard - -"forge-std@npm:^1.1.2": - version: 1.1.2 - resolution: "forge-std@npm:1.1.2" - checksum: 10c0/8e6c4de83323f92dfcd29c53b385d7253833f1028ad44780c4499d62d6778a61d6187d17065cd7d96f55c7c1227b7b32da5a45c87d450b4445da74b7d37a6ed2 - languageName: node - linkType: hard - -"form-data@npm:^2.2.0": - version: 2.5.5 - resolution: "form-data@npm:2.5.5" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.8" - es-set-tostringtag: "npm:^2.1.0" - hasown: "npm:^2.0.2" - mime-types: "npm:^2.1.35" - safe-buffer: "npm:^5.2.1" - checksum: 10c0/7fb70447849fc9bce4d01fe9a626f6587441f85779a2803b67f803e1ab52b0bd78db0a7acd80d944c665f68ca90936c327f1244b730719b638a0219e98b20488 - languageName: node - linkType: hard - -"form-data@npm:^4.0.0, form-data@npm:^4.0.4": - version: 4.0.5 - resolution: "form-data@npm:4.0.5" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.8" - es-set-tostringtag: "npm:^2.1.0" - hasown: "npm:^2.0.2" - mime-types: "npm:^2.1.12" - checksum: 10c0/dd6b767ee0bbd6d84039db12a0fa5a2028160ffbfaba1800695713b46ae974a5f6e08b3356c3195137f8530dcd9dfcb5d5ae1eeff53d0db1e5aad863b619ce3b - languageName: node - linkType: hard - -"form-data@npm:~2.3.2": - version: 2.3.3 - resolution: "form-data@npm:2.3.3" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.6" - mime-types: "npm:^2.1.12" - checksum: 10c0/706ef1e5649286b6a61e5bb87993a9842807fd8f149cd2548ee807ea4fb882247bdf7f6e64ac4720029c0cd5c80343de0e22eee1dc9e9882e12db9cc7bc016a4 - languageName: node - linkType: hard - -"forwarded@npm:0.2.0": - version: 0.2.0 - resolution: "forwarded@npm:0.2.0" - checksum: 10c0/9b67c3fac86acdbc9ae47ba1ddd5f2f81526fa4c8226863ede5600a3f7c7416ef451f6f1e240a3cc32d0fd79fcfe6beb08fd0da454f360032bde70bf80afbb33 - languageName: node - linkType: hard - -"fp-ts@npm:1.19.3": - version: 1.19.3 - resolution: "fp-ts@npm:1.19.3" - checksum: 10c0/a016cfc98ad5e61564ab2d53a5379bbb8254642b66df13ced47e8c1d8d507abf4588d8bb43530198dfe1907211d8bae8f112cab52ba0ac6ab055da9168a6e260 - languageName: node - linkType: hard - -"fp-ts@npm:^1.0.0": - version: 1.19.5 - resolution: "fp-ts@npm:1.19.5" - checksum: 10c0/2a330fa1779561307740c26a7255fdffeb1ca2d0c7448d4dc094b477b772b0c8f7da1dfc88569b6f13f6958169b63b5df7361e514535b46b2e215bbf03a3722d - languageName: node - linkType: hard - -"fraction.js@npm:4.3.4": - version: 4.3.4 - resolution: "fraction.js@npm:4.3.4" - checksum: 10c0/095f60a914637b996ee1a4758edd529bee7379aecd528d3cf641402ec1225c3146ec2b4a8575d58aa48600c5ee79dcc9e7dd799076acff4cfdeed8e73541cdf1 - languageName: node - linkType: hard - -"fraction.js@npm:^4.2.0": - version: 4.3.7 - resolution: "fraction.js@npm:4.3.7" - checksum: 10c0/df291391beea9ab4c263487ffd9d17fed162dbb736982dee1379b2a8cc94e4e24e46ed508c6d278aded9080ba51872f1bc5f3a5fd8d7c74e5f105b508ac28711 - languageName: node - linkType: hard - -"fresh@npm:~0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 10c0/c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a - languageName: node - linkType: hard - -"from-exponential@npm:^1.1.1": - version: 1.1.1 - resolution: "from-exponential@npm:1.1.1" - checksum: 10c0/b0f81fae79c94017e818f59e232a16dcdac9bffe005a2ca65cb6d9e9e3e8a694bd1b45e6bf7c3b5137cea74f4fb29e36a89a1472cfe28247aea2b12ac10cf85b - languageName: node - linkType: hard - -"fs-extra@npm:^7.0.0, fs-extra@npm:^7.0.1": - version: 7.0.1 - resolution: "fs-extra@npm:7.0.1" - dependencies: - graceful-fs: "npm:^4.1.2" - jsonfile: "npm:^4.0.0" - universalify: "npm:^0.1.0" - checksum: 10c0/1943bb2150007e3739921b8d13d4109abdc3cc481e53b97b7ea7f77eda1c3c642e27ae49eac3af074e3496ea02fde30f411ef410c760c70a38b92e656e5da784 - languageName: node - linkType: hard - -"fs-minipass@npm:^3.0.0": - version: 3.0.3 - resolution: "fs-minipass@npm:3.0.3" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94 - languageName: node - linkType: hard - -"fs-readdir-recursive@npm:^1.1.0": - version: 1.1.0 - resolution: "fs-readdir-recursive@npm:1.1.0" - checksum: 10c0/7e190393952143e674b6d1ad4abcafa1b5d3e337fcc21b0cb051079a7140a54617a7df193d562ef9faf21bd7b2148a38601b3d5c16261fa76f278d88dc69989c - languageName: node - linkType: hard - -"fs.realpath@npm:^1.0.0": - version: 1.0.0 - resolution: "fs.realpath@npm:1.0.0" - checksum: 10c0/444cf1291d997165dfd4c0d58b69f0e4782bfd9149fd72faa4fe299e68e0e93d6db941660b37dd29153bf7186672ececa3b50b7e7249477b03fdf850f287c948 - languageName: node - linkType: hard - -"fsevents@npm:~2.1.1": - version: 2.1.3 - resolution: "fsevents@npm:2.1.3" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/87b5933c5e01d17883f5c6d8c84146dc12c75e7f349b465c9e41fb4efe9992cfc6f527e30ef5f96bc24f19ca36d9e7414c0fe2dcd519f6d7649c0668efe12556 - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@npm:~2.3.2": - version: 2.3.3 - resolution: "fsevents@npm:2.3.3" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@patch:fsevents@npm%3A~2.1.1#optional!builtin": - version: 2.1.3 - resolution: "fsevents@patch:fsevents@npm%3A2.1.3#optional!builtin::version=2.1.3&hash=31d12a" - dependencies: - node-gyp: "npm:latest" - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin": - version: 2.3.3 - resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" - dependencies: - node-gyp: "npm:latest" - conditions: os=darwin - languageName: node - linkType: hard - -"function-bind@npm:^1.1.1, function-bind@npm:^1.1.2": - version: 1.1.2 - resolution: "function-bind@npm:1.1.2" - checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5 - languageName: node - linkType: hard - -"function.prototype.name@npm:^1.1.6, function.prototype.name@npm:^1.1.8": - version: 1.1.8 - resolution: "function.prototype.name@npm:1.1.8" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - define-properties: "npm:^1.2.1" - functions-have-names: "npm:^1.2.3" - hasown: "npm:^2.0.2" - is-callable: "npm:^1.2.7" - checksum: 10c0/e920a2ab52663005f3cbe7ee3373e3c71c1fb5558b0b0548648cdf3e51961085032458e26c71ff1a8c8c20e7ee7caeb03d43a5d1fa8610c459333323a2e71253 - languageName: node - linkType: hard - -"functional-red-black-tree@npm:^1.0.1, functional-red-black-tree@npm:~1.0.1": - version: 1.0.1 - resolution: "functional-red-black-tree@npm:1.0.1" - checksum: 10c0/5959eed0375803d9924f47688479bb017e0c6816a0e5ac151e22ba6bfe1d12c41de2f339188885e0aa8eeea2072dad509d8e4448467e816bde0a2ca86a0670d3 - languageName: node - linkType: hard - -"functions-have-names@npm:^1.2.3": - version: 1.2.3 - resolution: "functions-have-names@npm:1.2.3" - checksum: 10c0/33e77fd29bddc2d9bb78ab3eb854c165909201f88c75faa8272e35899e2d35a8a642a15e7420ef945e1f64a9670d6aa3ec744106b2aa42be68ca5114025954ca - languageName: node - linkType: hard - -"ganache-cli@npm:^6.12.2": - version: 6.12.2 - resolution: "ganache-cli@npm:6.12.2" - dependencies: - ethereumjs-util: "npm:6.2.1" - source-map-support: "npm:0.5.12" - yargs: "npm:13.2.4" - bin: - ganache-cli: cli.js - checksum: 10c0/15fb0410b9a04e9477232482901a53fb9de6464128fe790d1d714d722324b85a6b7e3889e661bc1d36a82bdf3e99631b04c27b600908c837aeaa57499cea0723 - languageName: node - linkType: hard - -"ganache@npm:7.4.3": - version: 7.4.3 - resolution: "ganache@npm:7.4.3" - dependencies: - "@trufflesuite/bigint-buffer": "npm:1.1.10" - "@types/bn.js": "npm:^5.1.0" - "@types/lru-cache": "npm:5.1.1" - "@types/seedrandom": "npm:3.0.1" - bufferutil: "npm:4.0.5" - emittery: "npm:0.10.0" - keccak: "npm:3.0.2" - leveldown: "npm:6.1.0" - secp256k1: "npm:4.0.3" - utf-8-validate: "npm:5.0.7" - dependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - bin: - ganache: dist/node/cli.js - ganache-cli: dist/node/cli.js - checksum: 10c0/37b08ba71801db75229285457e6db089c388135b74104bd698d99120241e2879f70afbde36e68a3cd68fc9bc60a25cdf23c96a29ce0e67d2792ea11be7637cb2 - languageName: node - linkType: hard - -"generator-function@npm:^2.0.0": - version: 2.0.1 - resolution: "generator-function@npm:2.0.1" - checksum: 10c0/8a9f59df0f01cfefafdb3b451b80555e5cf6d76487095db91ac461a0e682e4ff7a9dbce15f4ecec191e53586d59eece01949e05a4b4492879600bbbe8e28d6b8 - languageName: node - linkType: hard - -"get-caller-file@npm:^2.0.1, get-caller-file@npm:^2.0.5": - version: 2.0.5 - resolution: "get-caller-file@npm:2.0.5" - checksum: 10c0/c6c7b60271931fa752aeb92f2b47e355eac1af3a2673f47c9589e8f8a41adc74d45551c1bc57b5e66a80609f10ffb72b6f575e4370d61cc3f7f3aaff01757cde - languageName: node - linkType: hard - -"get-func-name@npm:^2.0.1, get-func-name@npm:^2.0.2": - version: 2.0.2 - resolution: "get-func-name@npm:2.0.2" - checksum: 10c0/89830fd07623fa73429a711b9daecdb304386d237c71268007f788f113505ef1d4cc2d0b9680e072c5082490aec9df5d7758bf5ac6f1c37062855e8e3dc0b9df - languageName: node - linkType: hard - -"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.2.7, get-intrinsic@npm:^1.3.0": - version: 1.3.0 - resolution: "get-intrinsic@npm:1.3.0" - dependencies: - call-bind-apply-helpers: "npm:^1.0.2" - es-define-property: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - function-bind: "npm:^1.1.2" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - hasown: "npm:^2.0.2" - math-intrinsics: "npm:^1.1.0" - checksum: 10c0/52c81808af9a8130f581e6a6a83e1ba4a9f703359e7a438d1369a5267a25412322f03dcbd7c549edaef0b6214a0630a28511d7df0130c93cfd380f4fa0b5b66a - languageName: node - linkType: hard - -"get-port@npm:^3.1.0": - version: 3.2.0 - resolution: "get-port@npm:3.2.0" - checksum: 10c0/1b6c3fe89074be3753d9ddf3d67126ea351ab9890537fe53fefebc2912d1d66fdc112451bbc76d33ae5ceb6ca70be2a91017944e3ee8fb0814ac9b295bf2a5b8 - languageName: node - linkType: hard - -"get-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "get-proto@npm:1.0.1" - dependencies: - dunder-proto: "npm:^1.0.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c - languageName: node - linkType: hard - -"get-stream@npm:^4.0.0": - version: 4.1.0 - resolution: "get-stream@npm:4.1.0" - dependencies: - pump: "npm:^3.0.0" - checksum: 10c0/294d876f667694a5ca23f0ca2156de67da950433b6fb53024833733975d32582896dbc7f257842d331809979efccf04d5e0b6b75ad4d45744c45f193fd497539 - languageName: node - linkType: hard - -"get-symbol-description@npm:^1.1.0": - version: 1.1.0 - resolution: "get-symbol-description@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - checksum: 10c0/d6a7d6afca375779a4b307738c9e80dbf7afc0bdbe5948768d54ab9653c865523d8920e670991a925936eb524b7cb6a6361d199a760b21d0ca7620194455aa4b - languageName: node - linkType: hard - -"getpass@npm:^0.1.1": - version: 0.1.7 - resolution: "getpass@npm:0.1.7" - dependencies: - assert-plus: "npm:^1.0.0" - checksum: 10c0/c13f8530ecf16fc509f3fa5cd8dd2129ffa5d0c7ccdf5728b6022d52954c2d24be3706b4cdf15333eec52f1fbb43feb70a01dabc639d1d10071e371da8aaa52f - languageName: node - linkType: hard - -"glob-parent@npm:^6.0.2": - version: 6.0.2 - resolution: "glob-parent@npm:6.0.2" - dependencies: - is-glob: "npm:^4.0.3" - checksum: 10c0/317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8 - languageName: node - linkType: hard - -"glob-parent@npm:~5.1.0, glob-parent@npm:~5.1.2": - version: 5.1.2 - resolution: "glob-parent@npm:5.1.2" - dependencies: - is-glob: "npm:^4.0.1" - checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee - languageName: node - linkType: hard - -"glob@npm:10.3.0": - version: 10.3.0 - resolution: "glob@npm:10.3.0" - dependencies: - foreground-child: "npm:^3.1.0" - jackspeak: "npm:^2.0.3" - minimatch: "npm:^9.0.1" - minipass: "npm:^5.0.0 || ^6.0.2" - path-scurry: "npm:^1.7.0" - bin: - glob: dist/cjs/src/bin.js - checksum: 10c0/0ed8f32c3ff68710b9c09d6988901bca7b20f4786e7617d2ccdc6673efaf391b562e483871747d625415c394f61abda22a6adfdce554019ad09b7515292041f9 - languageName: node - linkType: hard - -"glob@npm:7.1.3": - version: 7.1.3 - resolution: "glob@npm:7.1.3" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^3.0.4" - once: "npm:^1.3.0" - path-is-absolute: "npm:^1.0.0" - checksum: 10c0/7ffc36238ebbceb2868e2c1244a3eda7281c602b89cc785ddeb32e6b6fd2ca92adcf6ac0886e86dcd08bd40c96689865ffbf90fce49df402a49ed9ef5e3522e4 - languageName: node - linkType: hard - -"glob@npm:7.1.7": - version: 7.1.7 - resolution: "glob@npm:7.1.7" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^3.0.4" - once: "npm:^1.3.0" - path-is-absolute: "npm:^1.0.0" - checksum: 10c0/173245e6f9ccf904309eb7ef4a44a11f3bf68e9e341dff5a28b5db0dd7123b7506daf41497f3437a0710f57198187b758c2351eeaabce4d16935e956920da6a4 - languageName: node - linkType: hard - -"glob@npm:^13.0.0": - version: 13.0.0 - resolution: "glob@npm:13.0.0" - dependencies: - minimatch: "npm:^10.1.1" - minipass: "npm:^7.1.2" - path-scurry: "npm:^2.0.0" - checksum: 10c0/8e2f5821f3f7c312dd102e23a15b80c79e0837a9872784293ba2e15ec73b3f3749a49a42a31bfcb4e52c84820a474e92331c2eebf18819d20308f5c33876630a - languageName: node - linkType: hard - -"glob@npm:^8.1.0": - version: 8.1.0 - resolution: "glob@npm:8.1.0" - dependencies: - fs.realpath: "npm:^1.0.0" - inflight: "npm:^1.0.4" - inherits: "npm:2" - minimatch: "npm:^5.0.1" - once: "npm:^1.3.0" - checksum: 10c0/cb0b5cab17a59c57299376abe5646c7070f8acb89df5595b492dba3bfb43d301a46c01e5695f01154e6553168207cb60d4eaf07d3be4bc3eb9b0457c5c561d0f - languageName: node - linkType: hard - -"globals@npm:^14.0.0": - version: 14.0.0 - resolution: "globals@npm:14.0.0" - checksum: 10c0/b96ff42620c9231ad468d4c58ff42afee7777ee1c963013ff8aabe095a451d0ceeb8dcd8ef4cbd64d2538cef45f787a78ba3a9574f4a634438963e334471302d - languageName: node - linkType: hard - -"globalthis@npm:^1.0.4": - version: 1.0.4 - resolution: "globalthis@npm:1.0.4" - dependencies: - define-properties: "npm:^1.2.1" - gopd: "npm:^1.0.1" - checksum: 10c0/9d156f313af79d80b1566b93e19285f481c591ad6d0d319b4be5e03750d004dde40a39a0f26f7e635f9007a3600802f53ecd85a759b86f109e80a5f705e01846 - languageName: node - linkType: hard - -"gopd@npm:^1.0.1, gopd@npm:^1.2.0": - version: 1.2.0 - resolution: "gopd@npm:1.2.0" - checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead - languageName: node - linkType: hard - -"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6": - version: 4.2.11 - resolution: "graceful-fs@npm:4.2.11" - checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 - languageName: node - linkType: hard - -"growl@npm:1.10.5": - version: 1.10.5 - resolution: "growl@npm:1.10.5" - checksum: 10c0/a6a8f4df1269ac321f9e41c310552f3568768160942b6c9a7c116fcff1e3921f6a48fb7520689660412f7d1e5d46f76214e05406b23eee9e213830fdc2f772fe - languageName: node - linkType: hard - -"har-schema@npm:^2.0.0": - version: 2.0.0 - resolution: "har-schema@npm:2.0.0" - checksum: 10c0/3856cb76152658e0002b9c2b45b4360bb26b3e832c823caed8fcf39a01096030bf09fa5685c0f7b0f2cb3ecba6e9dce17edaf28b64a423d6201092e6be56e592 - languageName: node - linkType: hard - -"har-validator@npm:~5.1.3": - version: 5.1.5 - resolution: "har-validator@npm:5.1.5" - dependencies: - ajv: "npm:^6.12.3" - har-schema: "npm:^2.0.0" - checksum: 10c0/f1d606eb1021839e3a905be5ef7cca81c2256a6be0748efb8fefc14312214f9e6c15d7f2eaf37514104071207d84f627b68bb9f6178703da4e06fbd1a0649a5e - languageName: node - linkType: hard - -"hardhat-contract-sizer@npm:^2.8.0": - version: 2.10.1 - resolution: "hardhat-contract-sizer@npm:2.10.1" - dependencies: - chalk: "npm:^4.0.0" - cli-table3: "npm:^0.6.0" - strip-ansi: "npm:^6.0.0" - peerDependencies: - hardhat: ^2.0.0 - checksum: 10c0/c339c91d166ba27c4230682690d1c0ca5f104dc55001983e152236f73717bf5f97aeb8ac601fd0e2037e7ba1789c998726bf367e0ddd2c268ab40b33f51dcef1 - languageName: node - linkType: hard - -"hardhat-gas-reporter@npm:^1.0.4": - version: 1.0.10 - resolution: "hardhat-gas-reporter@npm:1.0.10" - dependencies: - array-uniq: "npm:1.0.3" - eth-gas-reporter: "npm:^0.2.25" - sha1: "npm:^1.1.1" - peerDependencies: - hardhat: ^2.0.2 - checksum: 10c0/3711ea331bcbbff4d37057cb3de47a9127011e3ee128c2254a68f3b7f12ab2133965cbcfa3a7ce1bba8461f3b1bda1b175c4814a048c8b06b3ad450001d119d8 - languageName: node - linkType: hard - -"hardhat-preprocessor@npm:^0.1.5": - version: 0.1.5 - resolution: "hardhat-preprocessor@npm:0.1.5" - dependencies: - murmur-128: "npm:^0.2.1" - peerDependencies: - hardhat: ^2.0.5 - checksum: 10c0/bdc0990b3f95c7fc7ebc0cab5200e4934e5b2dc489574c521747329146e0a242b7109b875dedf61bf5cb3f1785a0a600139c4872529d36b83f48639a3f7eb2d1 - languageName: node - linkType: hard - -"hardhat-tracer@npm:^1.1.0-rc.9": - version: 1.3.0 - resolution: "hardhat-tracer@npm:1.3.0" - dependencies: - ethers: "npm:^5.6.1" - peerDependencies: - chalk: 4.x - ethers: 5.x - hardhat: 2.x - checksum: 10c0/488d8e704cc5ddcd9d536b33d1dc8a126b129ee24c8ff3b345bfc14703b251621ab606de2587a2aef6ae9b23bdf051d83997c7adb002add357a097a9deca3ecb - languageName: node - linkType: hard - -"hardhat@npm:2.26.0": - version: 2.26.0 - resolution: "hardhat@npm:2.26.0" - dependencies: - "@ethereumjs/util": "npm:^9.1.0" - "@ethersproject/abi": "npm:^5.1.2" - "@nomicfoundation/edr": "npm:^0.11.3" - "@nomicfoundation/solidity-analyzer": "npm:^0.1.0" - "@sentry/node": "npm:^5.18.1" - adm-zip: "npm:^0.4.16" - aggregate-error: "npm:^3.0.0" - ansi-escapes: "npm:^4.3.0" - boxen: "npm:^5.1.2" - chokidar: "npm:^4.0.0" - ci-info: "npm:^2.0.0" - debug: "npm:^4.1.1" - enquirer: "npm:^2.3.0" - env-paths: "npm:^2.2.0" - ethereum-cryptography: "npm:^1.0.3" - find-up: "npm:^5.0.0" - fp-ts: "npm:1.19.3" - fs-extra: "npm:^7.0.1" - immutable: "npm:^4.0.0-rc.12" - io-ts: "npm:1.10.4" - json-stream-stringify: "npm:^3.1.4" - keccak: "npm:^3.0.2" - lodash: "npm:^4.17.11" - micro-eth-signer: "npm:^0.16.0" - mnemonist: "npm:^0.38.0" - mocha: "npm:^10.0.0" - p-map: "npm:^4.0.0" - picocolors: "npm:^1.1.0" - raw-body: "npm:^2.4.1" - resolve: "npm:1.17.0" - semver: "npm:^6.3.0" - solc: "npm:0.8.26" - source-map-support: "npm:^0.5.13" - stacktrace-parser: "npm:^0.1.10" - tinyglobby: "npm:^0.2.6" - tsort: "npm:0.0.1" - undici: "npm:^5.14.0" - uuid: "npm:^8.3.2" - ws: "npm:^7.4.6" - peerDependencies: - ts-node: "*" - typescript: "*" - peerDependenciesMeta: - ts-node: - optional: true - typescript: - optional: true - bin: - hardhat: internal/cli/bootstrap.js - checksum: 10c0/8f94dc8ecc73a590723a3b5d45e29e5fdd16ece0164ef705d571e8bd895944b14d7d294d17fd231b811438f69bd79465ec16252404cf00d39cfcb43f5a84ae35 - languageName: node - linkType: hard - -"has-bigints@npm:^1.0.2": - version: 1.1.0 - resolution: "has-bigints@npm:1.1.0" - checksum: 10c0/2de0cdc4a1ccf7a1e75ffede1876994525ac03cc6f5ae7392d3415dd475cd9eee5bceec63669ab61aa997ff6cceebb50ef75561c7002bed8988de2b9d1b40788 - languageName: node - linkType: hard - -"has-flag@npm:^3.0.0": - version: 3.0.0 - resolution: "has-flag@npm:3.0.0" - checksum: 10c0/1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473 - languageName: node - linkType: hard - -"has-flag@npm:^4.0.0": - version: 4.0.0 - resolution: "has-flag@npm:4.0.0" - checksum: 10c0/2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1 - languageName: node - linkType: hard - -"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.2": - version: 1.0.2 - resolution: "has-property-descriptors@npm:1.0.2" - dependencies: - es-define-property: "npm:^1.0.0" - checksum: 10c0/253c1f59e80bb476cf0dde8ff5284505d90c3bdb762983c3514d36414290475fe3fd6f574929d84de2a8eec00d35cf07cb6776205ff32efd7c50719125f00236 - languageName: node - linkType: hard - -"has-proto@npm:^1.2.0": - version: 1.2.0 - resolution: "has-proto@npm:1.2.0" - dependencies: - dunder-proto: "npm:^1.0.0" - checksum: 10c0/46538dddab297ec2f43923c3d35237df45d8c55a6fc1067031e04c13ed8a9a8f94954460632fd4da84c31a1721eefee16d901cbb1ae9602bab93bb6e08f93b95 - languageName: node - linkType: hard - -"has-symbols@npm:^1.0.0, has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": - version: 1.1.0 - resolution: "has-symbols@npm:1.1.0" - checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e - languageName: node - linkType: hard - -"has-tostringtag@npm:^1.0.2": - version: 1.0.2 - resolution: "has-tostringtag@npm:1.0.2" - dependencies: - has-symbols: "npm:^1.0.3" - checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c - languageName: node - linkType: hard - -"hash-base@npm:^3.0.0, hash-base@npm:^3.1.2": - version: 3.1.2 - resolution: "hash-base@npm:3.1.2" - dependencies: - inherits: "npm:^2.0.4" - readable-stream: "npm:^2.3.8" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.1" - checksum: 10c0/f3b7fae1853b31340048dd659f40f5260ca6f3ff53b932f807f4ab701ee09039f6e9dbe1841723ff61e20f3f69d6387a352e4ccc5f997dedb0d375c7d88bc15e - languageName: node - linkType: hard - -"hash.js@npm:1.1.3": - version: 1.1.3 - resolution: "hash.js@npm:1.1.3" - dependencies: - inherits: "npm:^2.0.3" - minimalistic-assert: "npm:^1.0.0" - checksum: 10c0/f085a856c31d51556f6153edcd4bb1c01a9d22e5882a7b9bae4e813c4abfad012d060b8fde1b993e353d6af1cf82b094599b65348cb529ca19a4b80ab32efded - languageName: node - linkType: hard - -"hash.js@npm:1.1.7, hash.js@npm:^1.0.0, hash.js@npm:^1.0.3, hash.js@npm:^1.1.7": - version: 1.1.7 - resolution: "hash.js@npm:1.1.7" - dependencies: - inherits: "npm:^2.0.3" - minimalistic-assert: "npm:^1.0.1" - checksum: 10c0/41ada59494eac5332cfc1ce6b7ebdd7b88a3864a6d6b08a3ea8ef261332ed60f37f10877e0c825aaa4bddebf164fbffa618286aeeec5296675e2671cbfa746c4 - languageName: node - linkType: hard - -"hasown@npm:^2.0.2": - version: 2.0.2 - resolution: "hasown@npm:2.0.2" - dependencies: - function-bind: "npm:^1.1.2" - checksum: 10c0/3769d434703b8ac66b209a4cca0737519925bbdb61dd887f93a16372b14694c63ff4e797686d87c90f08168e81082248b9b028bad60d4da9e0d1148766f56eb9 - languageName: node - linkType: hard - -"he@npm:1.2.0, he@npm:^1.2.0": - version: 1.2.0 - resolution: "he@npm:1.2.0" - bin: - he: bin/he - checksum: 10c0/a27d478befe3c8192f006cdd0639a66798979dfa6e2125c6ac582a19a5ebfec62ad83e8382e6036170d873f46e4536a7e795bf8b95bf7c247f4cc0825ccc8c17 - languageName: node - linkType: hard - -"hmac-drbg@npm:^1.0.1": - version: 1.0.1 - resolution: "hmac-drbg@npm:1.0.1" - dependencies: - hash.js: "npm:^1.0.3" - minimalistic-assert: "npm:^1.0.0" - minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 10c0/f3d9ba31b40257a573f162176ac5930109816036c59a09f901eb2ffd7e5e705c6832bedfff507957125f2086a0ab8f853c0df225642a88bf1fcaea945f20600d - languageName: node - linkType: hard - -"hosted-git-info@npm:^2.6.0": - version: 2.8.9 - resolution: "hosted-git-info@npm:2.8.9" - checksum: 10c0/317cbc6b1bbbe23c2a40ae23f3dafe9fa349ce42a89a36f930e3f9c0530c179a3882d2ef1e4141a4c3674d6faaea862138ec55b43ad6f75e387fda2483a13c70 - languageName: node - linkType: hard - -"http-basic@npm:^8.1.1": - version: 8.1.3 - resolution: "http-basic@npm:8.1.3" - dependencies: - caseless: "npm:^0.12.0" - concat-stream: "npm:^1.6.2" - http-response-object: "npm:^3.0.1" - parse-cache-control: "npm:^1.0.1" - checksum: 10c0/dbc67b943067db7f43d1dd94539f874e6b78614227491c0a5c0acb9b0490467a4ec97247da21eb198f8968a5dc4089160165cb0103045cadb9b47bb844739752 - languageName: node - linkType: hard - -"http-cache-semantics@npm:^4.1.1": - version: 4.2.0 - resolution: "http-cache-semantics@npm:4.2.0" - checksum: 10c0/45b66a945cf13ec2d1f29432277201313babf4a01d9e52f44b31ca923434083afeca03f18417f599c9ab3d0e7b618ceb21257542338b57c54b710463b4a53e37 - languageName: node - linkType: hard - -"http-errors@npm:~2.0.0, http-errors@npm:~2.0.1": - version: 2.0.1 - resolution: "http-errors@npm:2.0.1" - dependencies: - depd: "npm:~2.0.0" - inherits: "npm:~2.0.4" - setprototypeof: "npm:~1.2.0" - statuses: "npm:~2.0.2" - toidentifier: "npm:~1.0.1" - checksum: 10c0/fb38906cef4f5c83952d97661fe14dc156cb59fe54812a42cd448fa57b5c5dfcb38a40a916957737bd6b87aab257c0648d63eb5b6a9ca9f548e105b6072712d4 - languageName: node - linkType: hard - -"http-proxy-agent@npm:^7.0.0": - version: 7.0.2 - resolution: "http-proxy-agent@npm:7.0.2" - dependencies: - agent-base: "npm:^7.1.0" - debug: "npm:^4.3.4" - checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921 - languageName: node - linkType: hard - -"http-response-object@npm:^3.0.1": - version: 3.0.2 - resolution: "http-response-object@npm:3.0.2" - dependencies: - "@types/node": "npm:^10.0.3" - checksum: 10c0/f161db99184087798563cb14c48a67eebe9405668a5ed2341faf85d3079a2c00262431df8e0ccbe274dc6415b6729179f12b09f875d13ad33d83401e4b1ed22e - languageName: node - linkType: hard - -"http-signature@npm:~1.2.0": - version: 1.2.0 - resolution: "http-signature@npm:1.2.0" - dependencies: - assert-plus: "npm:^1.0.0" - jsprim: "npm:^1.2.2" - sshpk: "npm:^1.7.0" - checksum: 10c0/582f7af7f354429e1fb19b3bbb9d35520843c69bb30a25b88ca3c5c2c10715f20ae7924e20cffbed220b1d3a726ef4fe8ccc48568d5744db87be9a79887d6733 - languageName: node - linkType: hard - -"https-proxy-agent@npm:^5.0.0": - version: 5.0.1 - resolution: "https-proxy-agent@npm:5.0.1" - dependencies: - agent-base: "npm:6" - debug: "npm:4" - checksum: 10c0/6dd639f03434003577c62b27cafdb864784ef19b2de430d8ae2a1d45e31c4fd60719e5637b44db1a88a046934307da7089e03d6089ec3ddacc1189d8de8897d1 - languageName: node - linkType: hard - -"https-proxy-agent@npm:^7.0.1": - version: 7.0.6 - resolution: "https-proxy-agent@npm:7.0.6" - dependencies: - agent-base: "npm:^7.1.2" - debug: "npm:4" - checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac - languageName: node - linkType: hard - -"iconv-lite@npm:^0.6.2": - version: 0.6.3 - resolution: "iconv-lite@npm:0.6.3" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3.0.0" - checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1 - languageName: node - linkType: hard - -"iconv-lite@npm:~0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3" - checksum: 10c0/c6886a24cc00f2a059767440ec1bc00d334a89f250db8e0f7feb4961c8727118457e27c495ba94d082e51d3baca378726cd110aaf7ded8b9bbfd6a44760cf1d4 - languageName: node - linkType: hard - -"ieee754@npm:^1.1.13, ieee754@npm:^1.1.4, ieee754@npm:^1.2.1": - version: 1.2.1 - resolution: "ieee754@npm:1.2.1" - checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb - languageName: node - linkType: hard - -"ignore@npm:^5.2.0": - version: 5.3.2 - resolution: "ignore@npm:5.3.2" - checksum: 10c0/f9f652c957983634ded1e7f02da3b559a0d4cc210fca3792cb67f1b153623c9c42efdc1c4121af171e295444459fc4a9201101fb041b1104a3c000bccb188337 - languageName: node - linkType: hard - -"immediate@npm:^3.2.3": - version: 3.3.0 - resolution: "immediate@npm:3.3.0" - checksum: 10c0/40eab095d5944ad79af054700beee97000271fde8743720932d8eb41ccbf2cb8c855ff95b128cf9a7fec523a4f11ee2e392b9f2fa6456b055b1160f1b4ad3e3b - languageName: node - linkType: hard - -"immediate@npm:~3.2.3": - version: 3.2.3 - resolution: "immediate@npm:3.2.3" - checksum: 10c0/e2affb7f1a1335a3d0404073bcec5e6b09cdd15f0a4ec82b9a0f0496add2e0b020843123c021238934c3eac8792f8d48f523c48e7c3c0cd45b540dc9d149adae - languageName: node - linkType: hard - -"immutable@npm:^4.0.0-rc.12": - version: 4.3.7 - resolution: "immutable@npm:4.3.7" - checksum: 10c0/9b099197081b22f6433003e34929da8ecddbbdc1474cdc8aa3b7669dee4adda349c06143de22def36016d1b6de5322b043eccd7a11db1dad2ca85dad4fff5435 - languageName: node - linkType: hard - -"import-fresh@npm:^3.2.1": - version: 3.3.1 - resolution: "import-fresh@npm:3.3.1" - dependencies: - parent-module: "npm:^1.0.0" - resolve-from: "npm:^4.0.0" - checksum: 10c0/bf8cc494872fef783249709385ae883b447e3eb09db0ebd15dcead7d9afe7224dad7bd7591c6b73b0b19b3c0f9640eb8ee884f01cfaf2887ab995b0b36a0cbec - languageName: node - linkType: hard - -"imul@npm:^1.0.0": - version: 1.0.1 - resolution: "imul@npm:1.0.1" - checksum: 10c0/d564c45a5017f01f965509ef409fad8175749bc96a52a95e1a09f05378d135fb37051cea7194d0eeca5147541d8e80d68853f5f681eef05f9f14f1d551edae2f - languageName: node - linkType: hard - -"imurmurhash@npm:^0.1.4": - version: 0.1.4 - resolution: "imurmurhash@npm:0.1.4" - checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6 - languageName: node - linkType: hard - -"indent-string@npm:^4.0.0": - version: 4.0.0 - resolution: "indent-string@npm:4.0.0" - checksum: 10c0/1e1904ddb0cb3d6cce7cd09e27a90184908b7a5d5c21b92e232c93579d314f0b83c246ffb035493d0504b1e9147ba2c9b21df0030f48673fba0496ecd698161f - languageName: node - linkType: hard - -"inflight@npm:^1.0.4": - version: 1.0.6 - resolution: "inflight@npm:1.0.6" - dependencies: - once: "npm:^1.3.0" - wrappy: "npm:1" - checksum: 10c0/7faca22584600a9dc5b9fca2cd5feb7135ac8c935449837b315676b4c90aa4f391ec4f42240178244b5a34e8bede1948627fda392ca3191522fc46b34e985ab2 - languageName: node - linkType: hard - -"inherits@npm:2, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.1, inherits@npm:~2.0.3, inherits@npm:~2.0.4": - version: 2.0.4 - resolution: "inherits@npm:2.0.4" - checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2 - languageName: node - linkType: hard - -"internal-slot@npm:^1.1.0": - version: 1.1.0 - resolution: "internal-slot@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - hasown: "npm:^2.0.2" - side-channel: "npm:^1.1.0" - checksum: 10c0/03966f5e259b009a9bf1a78d60da920df198af4318ec004f57b8aef1dd3fe377fbc8cce63a96e8c810010302654de89f9e19de1cd8ad0061d15be28a695465c7 - languageName: node - linkType: hard - -"invert-kv@npm:^2.0.0": - version: 2.0.0 - resolution: "invert-kv@npm:2.0.0" - checksum: 10c0/1a614b9025875e2009a23b8b56bfcbc7727e81ce949ccb6e0700caa6ce04ef92f0cbbcdb120528b6409317d08a7d5671044e520df48719437b5005ae6a1cbf74 - languageName: node - linkType: hard - -"io-ts@npm:1.10.4": - version: 1.10.4 - resolution: "io-ts@npm:1.10.4" - dependencies: - fp-ts: "npm:^1.0.0" - checksum: 10c0/9370988a7e17fc23c194115808168ccd1ccf7b7ebe92c39c1cc2fd91c1dc641552a5428bb04fe28c01c826fa4f230e856eb4f7d27c774a1400af3fecf2936ab5 - languageName: node - linkType: hard - -"ip-address@npm:^10.0.1": - version: 10.1.0 - resolution: "ip-address@npm:10.1.0" - checksum: 10c0/0103516cfa93f6433b3bd7333fa876eb21263912329bfa47010af5e16934eeeff86f3d2ae700a3744a137839ddfad62b900c7a445607884a49b5d1e32a3d7566 - languageName: node - linkType: hard - -"ipaddr.js@npm:1.9.1": - version: 1.9.1 - resolution: "ipaddr.js@npm:1.9.1" - checksum: 10c0/0486e775047971d3fdb5fb4f063829bac45af299ae0b82dcf3afa2145338e08290563a2a70f34b732d795ecc8311902e541a8530eeb30d75860a78ff4e94ce2a - languageName: node - linkType: hard - -"is-array-buffer@npm:^3.0.4, is-array-buffer@npm:^3.0.5": - version: 3.0.5 - resolution: "is-array-buffer@npm:3.0.5" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - get-intrinsic: "npm:^1.2.6" - checksum: 10c0/c5c9f25606e86dbb12e756694afbbff64bc8b348d1bc989324c037e1068695131930199d6ad381952715dad3a9569333817f0b1a72ce5af7f883ce802e49c83d - languageName: node - linkType: hard - -"is-async-function@npm:^2.0.0": - version: 2.1.1 - resolution: "is-async-function@npm:2.1.1" - dependencies: - async-function: "npm:^1.0.0" - call-bound: "npm:^1.0.3" - get-proto: "npm:^1.0.1" - has-tostringtag: "npm:^1.0.2" - safe-regex-test: "npm:^1.1.0" - checksum: 10c0/d70c236a5e82de6fc4d44368ffd0c2fee2b088b893511ce21e679da275a5ecc6015ff59a7d7e1bdd7ca39f71a8dbdd253cf8cce5c6b3c91cdd5b42b5ce677298 - languageName: node - linkType: hard - -"is-bigint@npm:^1.1.0": - version: 1.1.0 - resolution: "is-bigint@npm:1.1.0" - dependencies: - has-bigints: "npm:^1.0.2" - checksum: 10c0/f4f4b905ceb195be90a6ea7f34323bf1c18e3793f18922e3e9a73c684c29eeeeff5175605c3a3a74cc38185fe27758f07efba3dbae812e5c5afbc0d2316b40e4 - languageName: node - linkType: hard - -"is-binary-path@npm:~2.1.0": - version: 2.1.0 - resolution: "is-binary-path@npm:2.1.0" - dependencies: - binary-extensions: "npm:^2.0.0" - checksum: 10c0/a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38 - languageName: node - linkType: hard - -"is-boolean-object@npm:^1.2.1": - version: 1.2.2 - resolution: "is-boolean-object@npm:1.2.2" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/36ff6baf6bd18b3130186990026f5a95c709345c39cd368468e6c1b6ab52201e9fd26d8e1f4c066357b4938b0f0401e1a5000e08257787c1a02f3a719457001e - languageName: node - linkType: hard - -"is-buffer@npm:^2.0.5, is-buffer@npm:~2.0.3": - version: 2.0.5 - resolution: "is-buffer@npm:2.0.5" - checksum: 10c0/e603f6fced83cf94c53399cff3bda1a9f08e391b872b64a73793b0928be3e5f047f2bcece230edb7632eaea2acdbfcb56c23b33d8a20c820023b230f1485679a - languageName: node - linkType: hard - -"is-callable@npm:^1.2.7": - version: 1.2.7 - resolution: "is-callable@npm:1.2.7" - checksum: 10c0/ceebaeb9d92e8adee604076971dd6000d38d6afc40bb843ea8e45c5579b57671c3f3b50d7f04869618242c6cee08d1b67806a8cb8edaaaf7c0748b3720d6066f - languageName: node - linkType: hard - -"is-data-view@npm:^1.0.1, is-data-view@npm:^1.0.2": - version: 1.0.2 - resolution: "is-data-view@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.6" - is-typed-array: "npm:^1.1.13" - checksum: 10c0/ef3548a99d7e7f1370ce21006baca6d40c73e9f15c941f89f0049c79714c873d03b02dae1c64b3f861f55163ecc16da06506c5b8a1d4f16650b3d9351c380153 - languageName: node - linkType: hard - -"is-date-object@npm:^1.0.5, is-date-object@npm:^1.1.0": - version: 1.1.0 - resolution: "is-date-object@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.2" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/1a4d199c8e9e9cac5128d32e6626fa7805175af9df015620ac0d5d45854ccf348ba494679d872d37301032e35a54fc7978fba1687e8721b2139aea7870cafa2f - languageName: node - linkType: hard - -"is-extglob@npm:^2.1.1": - version: 2.1.1 - resolution: "is-extglob@npm:2.1.1" - checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912 - languageName: node - linkType: hard - -"is-finalizationregistry@npm:^1.1.0": - version: 1.1.1 - resolution: "is-finalizationregistry@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10c0/818dff679b64f19e228a8205a1e2d09989a98e98def3a817f889208cfcbf918d321b251aadf2c05918194803ebd2eb01b14fc9d0b2bea53d984f4137bfca5e97 - languageName: node - linkType: hard - -"is-fullwidth-code-point@npm:^2.0.0": - version: 2.0.0 - resolution: "is-fullwidth-code-point@npm:2.0.0" - checksum: 10c0/e58f3e4a601fc0500d8b2677e26e9fe0cd450980e66adb29d85b6addf7969731e38f8e43ed2ec868a09c101a55ac3d8b78902209269f38c5286bc98f5bc1b4d9 - languageName: node - linkType: hard - -"is-fullwidth-code-point@npm:^3.0.0": - version: 3.0.0 - resolution: "is-fullwidth-code-point@npm:3.0.0" - checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc - languageName: node - linkType: hard - -"is-generator-function@npm:^1.0.10": - version: 1.1.2 - resolution: "is-generator-function@npm:1.1.2" - dependencies: - call-bound: "npm:^1.0.4" - generator-function: "npm:^2.0.0" - get-proto: "npm:^1.0.1" - has-tostringtag: "npm:^1.0.2" - safe-regex-test: "npm:^1.1.0" - checksum: 10c0/83da102e89c3e3b71d67b51d47c9f9bc862bceb58f87201727e27f7fa19d1d90b0ab223644ecaee6fc6e3d2d622bb25c966fbdaf87c59158b01ce7c0fe2fa372 - languageName: node - linkType: hard - -"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": - version: 4.0.3 - resolution: "is-glob@npm:4.0.3" - dependencies: - is-extglob: "npm:^2.1.1" - checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a - languageName: node - linkType: hard - -"is-hex-prefixed@npm:1.0.0": - version: 1.0.0 - resolution: "is-hex-prefixed@npm:1.0.0" - checksum: 10c0/767fa481020ae654ab085ca24c63c518705ff36fdfbfc732292dc69092c6f8fdc551f6ce8c5f6ae704b0a19294e6f62be1b4b9859f0e1ac76e3b1b0733599d94 - languageName: node - linkType: hard - -"is-map@npm:^2.0.3": - version: 2.0.3 - resolution: "is-map@npm:2.0.3" - checksum: 10c0/2c4d431b74e00fdda7162cd8e4b763d6f6f217edf97d4f8538b94b8702b150610e2c64961340015fe8df5b1fcee33ccd2e9b62619c4a8a3a155f8de6d6d355fc - languageName: node - linkType: hard - -"is-negative-zero@npm:^2.0.3": - version: 2.0.3 - resolution: "is-negative-zero@npm:2.0.3" - checksum: 10c0/bcdcf6b8b9714063ffcfa9929c575ac69bfdabb8f4574ff557dfc086df2836cf07e3906f5bbc4f2a5c12f8f3ba56af640c843cdfc74da8caed86c7c7d66fd08e - languageName: node - linkType: hard - -"is-number-object@npm:^1.1.1": - version: 1.1.1 - resolution: "is-number-object@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/97b451b41f25135ff021d85c436ff0100d84a039bb87ffd799cbcdbea81ef30c464ced38258cdd34f080be08fc3b076ca1f472086286d2aa43521d6ec6a79f53 - languageName: node - linkType: hard - -"is-number@npm:^7.0.0": - version: 7.0.0 - resolution: "is-number@npm:7.0.0" - checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811 - languageName: node - linkType: hard - -"is-plain-obj@npm:^2.1.0": - version: 2.1.0 - resolution: "is-plain-obj@npm:2.1.0" - checksum: 10c0/e5c9814cdaa627a9ad0a0964ded0e0491bfd9ace405c49a5d63c88b30a162f1512c069d5b80997893c4d0181eadc3fed02b4ab4b81059aba5620bfcdfdeb9c53 - languageName: node - linkType: hard - -"is-regex@npm:^1.2.1": - version: 1.2.1 - resolution: "is-regex@npm:1.2.1" - dependencies: - call-bound: "npm:^1.0.2" - gopd: "npm:^1.2.0" - has-tostringtag: "npm:^1.0.2" - hasown: "npm:^2.0.2" - checksum: 10c0/1d3715d2b7889932349241680032e85d0b492cfcb045acb75ffc2c3085e8d561184f1f7e84b6f8321935b4aea39bc9c6ba74ed595b57ce4881a51dfdbc214e04 - languageName: node - linkType: hard - -"is-set@npm:^2.0.3": - version: 2.0.3 - resolution: "is-set@npm:2.0.3" - checksum: 10c0/f73732e13f099b2dc879c2a12341cfc22ccaca8dd504e6edae26484bd5707a35d503fba5b4daad530a9b088ced1ae6c9d8200fd92e09b428fe14ea79ce8080b7 - languageName: node - linkType: hard - -"is-shared-array-buffer@npm:^1.0.4": - version: 1.0.4 - resolution: "is-shared-array-buffer@npm:1.0.4" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10c0/65158c2feb41ff1edd6bbd6fd8403a69861cf273ff36077982b5d4d68e1d59278c71691216a4a64632bd76d4792d4d1d2553901b6666d84ade13bba5ea7bc7db - languageName: node - linkType: hard - -"is-stream@npm:^1.1.0": - version: 1.1.0 - resolution: "is-stream@npm:1.1.0" - checksum: 10c0/b8ae7971e78d2e8488d15f804229c6eed7ed36a28f8807a1815938771f4adff0e705218b7dab968270433f67103e4fef98062a0beea55d64835f705ee72c7002 - languageName: node - linkType: hard - -"is-string@npm:^1.1.1": - version: 1.1.1 - resolution: "is-string@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/2f518b4e47886bb81567faba6ffd0d8a8333cf84336e2e78bf160693972e32ad00fe84b0926491cc598dee576fdc55642c92e62d0cbe96bf36f643b6f956f94d - languageName: node - linkType: hard - -"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1": - version: 1.1.1 - resolution: "is-symbol@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.2" - has-symbols: "npm:^1.1.0" - safe-regex-test: "npm:^1.1.0" - checksum: 10c0/f08f3e255c12442e833f75a9e2b84b2d4882fdfd920513cf2a4a2324f0a5b076c8fd913778e3ea5d258d5183e9d92c0cd20e04b03ab3df05316b049b2670af1e - languageName: node - linkType: hard - -"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15": - version: 1.1.15 - resolution: "is-typed-array@npm:1.1.15" - dependencies: - which-typed-array: "npm:^1.1.16" - checksum: 10c0/415511da3669e36e002820584e264997ffe277ff136643a3126cc949197e6ca3334d0f12d084e83b1994af2e9c8141275c741cf2b7da5a2ff62dd0cac26f76c4 - languageName: node - linkType: hard - -"is-typedarray@npm:~1.0.0": - version: 1.0.0 - resolution: "is-typedarray@npm:1.0.0" - checksum: 10c0/4c096275ba041a17a13cca33ac21c16bc4fd2d7d7eb94525e7cd2c2f2c1a3ab956e37622290642501ff4310601e413b675cf399ad6db49855527d2163b3eeeec - languageName: node - linkType: hard - -"is-unicode-supported@npm:^0.1.0": - version: 0.1.0 - resolution: "is-unicode-supported@npm:0.1.0" - checksum: 10c0/00cbe3455c3756be68d2542c416cab888aebd5012781d6819749fefb15162ff23e38501fe681b3d751c73e8ff561ac09a5293eba6f58fdf0178462ce6dcb3453 - languageName: node - linkType: hard - -"is-url@npm:^1.2.4": - version: 1.2.4 - resolution: "is-url@npm:1.2.4" - checksum: 10c0/0157a79874f8f95fdd63540e3f38c8583c2ef572661cd0693cda80ae3e42dfe8e9a4a972ec1b827f861d9a9acf75b37f7d58a37f94a8a053259642912c252bc3 - languageName: node - linkType: hard - -"is-weakmap@npm:^2.0.2": - version: 2.0.2 - resolution: "is-weakmap@npm:2.0.2" - checksum: 10c0/443c35bb86d5e6cc5929cd9c75a4024bb0fff9586ed50b092f94e700b89c43a33b186b76dbc6d54f3d3d09ece689ab38dcdc1af6a482cbe79c0f2da0a17f1299 - languageName: node - linkType: hard - -"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.1": - version: 1.1.1 - resolution: "is-weakref@npm:1.1.1" - dependencies: - call-bound: "npm:^1.0.3" - checksum: 10c0/8e0a9c07b0c780949a100e2cab2b5560a48ecd4c61726923c1a9b77b6ab0aa0046c9e7fb2206042296817045376dee2c8ab1dabe08c7c3dfbf195b01275a085b - languageName: node - linkType: hard - -"is-weakset@npm:^2.0.3": - version: 2.0.4 - resolution: "is-weakset@npm:2.0.4" - dependencies: - call-bound: "npm:^1.0.3" - get-intrinsic: "npm:^1.2.6" - checksum: 10c0/6491eba08acb8dc9532da23cb226b7d0192ede0b88f16199e592e4769db0a077119c1f5d2283d1e0d16d739115f70046e887e477eb0e66cd90e1bb29f28ba647 - languageName: node - linkType: hard - -"isarray@npm:^1.0.0, isarray@npm:~1.0.0": - version: 1.0.0 - resolution: "isarray@npm:1.0.0" - checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d - languageName: node - linkType: hard - -"isarray@npm:^2.0.5": - version: 2.0.5 - resolution: "isarray@npm:2.0.5" - checksum: 10c0/4199f14a7a13da2177c66c31080008b7124331956f47bca57dd0b6ea9f11687aa25e565a2c7a2b519bc86988d10398e3049a1f5df13c9f6b7664154690ae79fd - languageName: node - linkType: hard - -"isexe@npm:^2.0.0": - version: 2.0.0 - resolution: "isexe@npm:2.0.0" - checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d - languageName: node - linkType: hard - -"isexe@npm:^3.1.1": - version: 3.1.1 - resolution: "isexe@npm:3.1.1" - checksum: 10c0/9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7 - languageName: node - linkType: hard - -"isomorphic-unfetch@npm:^3.0.0": - version: 3.1.0 - resolution: "isomorphic-unfetch@npm:3.1.0" - dependencies: - node-fetch: "npm:^2.6.1" - unfetch: "npm:^4.2.0" - checksum: 10c0/d3b61fca06304db692b7f76bdfd3a00f410e42cfa7403c3b250546bf71589d18cf2f355922f57198e4cc4a9872d3647b20397a5c3edf1a347c90d57c83cf2a89 - languageName: node - linkType: hard - -"isstream@npm:~0.1.2": - version: 0.1.2 - resolution: "isstream@npm:0.1.2" - checksum: 10c0/a6686a878735ca0a48e0d674dd6d8ad31aedfaf70f07920da16ceadc7577b46d67179a60b313f2e6860cb097a2c2eb3cbd0b89e921ae89199a59a17c3273d66f - languageName: node - linkType: hard - -"jackspeak@npm:^2.0.3": - version: 2.3.6 - resolution: "jackspeak@npm:2.3.6" - dependencies: - "@isaacs/cliui": "npm:^8.0.2" - "@pkgjs/parseargs": "npm:^0.11.0" - dependenciesMeta: - "@pkgjs/parseargs": - optional: true - checksum: 10c0/f01d8f972d894cd7638bc338e9ef5ddb86f7b208ce177a36d718eac96ec86638a6efa17d0221b10073e64b45edc2ce15340db9380b1f5d5c5d000cbc517dc111 - languageName: node - linkType: hard - -"javascript-natural-sort@npm:^0.7.1": - version: 0.7.1 - resolution: "javascript-natural-sort@npm:0.7.1" - checksum: 10c0/340f8ffc5d30fb516e06dc540e8fa9e0b93c865cf49d791fed3eac3bdc5fc71f0066fc81d44ec1433edc87caecaf9f13eec4a1fce8c5beafc709a71eaedae6fe - languageName: node - linkType: hard - -"js-cookie@npm:^2.2.1": - version: 2.2.1 - resolution: "js-cookie@npm:2.2.1" - checksum: 10c0/ee67fc0f8495d0800b851910b5eb5bf49d3033adff6493d55b5c097ca6da46f7fe666b10e2ecb13cfcaf5b88d71c205ce00a7e646de791689bfd053bbb36a376 - languageName: node - linkType: hard - -"js-sha3@npm:0.5.7": - version: 0.5.7 - resolution: "js-sha3@npm:0.5.7" - checksum: 10c0/17b17d557f9d594ed36ba6c8cdc234bedd7b74ce4baf171e23a1f16b9a89b1527ae160e4eb1b836520acf5919b00732a22183fb00b7808702c36f646c1e9e973 - languageName: node - linkType: hard - -"js-sha3@npm:0.8.0, js-sha3@npm:^0.8.0": - version: 0.8.0 - resolution: "js-sha3@npm:0.8.0" - checksum: 10c0/43a21dc7967c871bd2c46cb1c2ae97441a97169f324e509f382d43330d8f75cf2c96dba7c806ab08a425765a9c847efdd4bffbac2d99c3a4f3de6c0218f40533 - languageName: node - linkType: hard - -"js-yaml@npm:3.13.1": - version: 3.13.1 - resolution: "js-yaml@npm:3.13.1" - dependencies: - argparse: "npm:^1.0.7" - esprima: "npm:^4.0.0" - bin: - js-yaml: bin/js-yaml.js - checksum: 10c0/6a4f78b998d2eb58964cc5e051c031865bf292dc3c156a8057cf468d9e60a8739f4e8f607a267e97f09eb8d08263b8262df57eddb16b920ec5a04a259c3b4960 - languageName: node - linkType: hard - -"js-yaml@npm:^4.1.0, js-yaml@npm:^4.1.1": - version: 4.1.1 - resolution: "js-yaml@npm:4.1.1" - dependencies: - argparse: "npm:^2.0.1" - bin: - js-yaml: bin/js-yaml.js - checksum: 10c0/561c7d7088c40a9bb53cc75becbfb1df6ae49b34b5e6e5a81744b14ae8667ec564ad2527709d1a6e7d5e5fa6d483aa0f373a50ad98d42fde368ec4a190d4fae7 - languageName: node - linkType: hard - -"jsbn@npm:~0.1.0": - version: 0.1.1 - resolution: "jsbn@npm:0.1.1" - checksum: 10c0/e046e05c59ff880ee4ef68902dbdcb6d2f3c5d60c357d4d68647dc23add556c31c0e5f41bdb7e69e793dd63468bd9e085da3636341048ef577b18f5b713877c0 - languageName: node - linkType: hard - -"json-bigint@npm:^1.0.0": - version: 1.0.0 - resolution: "json-bigint@npm:1.0.0" - dependencies: - bignumber.js: "npm:^9.0.0" - checksum: 10c0/e3f34e43be3284b573ea150a3890c92f06d54d8ded72894556357946aeed9877fd795f62f37fe16509af189fd314ab1104d0fd0f163746ad231b9f378f5b33f4 - languageName: node - linkType: hard - -"json-buffer@npm:3.0.1": - version: 3.0.1 - resolution: "json-buffer@npm:3.0.1" - checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7 - languageName: node - linkType: hard - -"json-schema-traverse@npm:^0.4.1": - version: 0.4.1 - resolution: "json-schema-traverse@npm:0.4.1" - checksum: 10c0/108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce - languageName: node - linkType: hard - -"json-schema-traverse@npm:^1.0.0": - version: 1.0.0 - resolution: "json-schema-traverse@npm:1.0.0" - checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6 - languageName: node - linkType: hard - -"json-schema@npm:0.4.0": - version: 0.4.0 - resolution: "json-schema@npm:0.4.0" - checksum: 10c0/d4a637ec1d83544857c1c163232f3da46912e971d5bf054ba44fdb88f07d8d359a462b4aec46f2745efbc57053365608d88bc1d7b1729f7b4fc3369765639ed3 - languageName: node - linkType: hard - -"json-stable-stringify-without-jsonify@npm:^1.0.1": - version: 1.0.1 - resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" - checksum: 10c0/cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5 - languageName: node - linkType: hard - -"json-stream-stringify@npm:^3.1.4": - version: 3.1.6 - resolution: "json-stream-stringify@npm:3.1.6" - checksum: 10c0/cb45e65143f4634ebb2dc0732410a942eaf86f88a7938b2f6397f4c6b96a7ba936e74d4d17db48c9221f669153996362b2ff50fe8c7fed8a7548646f98ae1f58 - languageName: node - linkType: hard - -"json-stringify-safe@npm:~5.0.1": - version: 5.0.1 - resolution: "json-stringify-safe@npm:5.0.1" - checksum: 10c0/7dbf35cd0411d1d648dceb6d59ce5857ec939e52e4afc37601aa3da611f0987d5cee5b38d58329ceddf3ed48bd7215229c8d52059ab01f2444a338bf24ed0f37 - languageName: node - linkType: hard - -"jsonfile@npm:^4.0.0": - version: 4.0.0 - resolution: "jsonfile@npm:4.0.0" - dependencies: - graceful-fs: "npm:^4.1.6" - dependenciesMeta: - graceful-fs: - optional: true - checksum: 10c0/7dc94b628d57a66b71fb1b79510d460d662eb975b5f876d723f81549c2e9cd316d58a2ddf742b2b93a4fa6b17b2accaf1a738a0e2ea114bdfb13a32e5377e480 - languageName: node - linkType: hard - -"jsprim@npm:^1.2.2": - version: 1.4.2 - resolution: "jsprim@npm:1.4.2" - dependencies: - assert-plus: "npm:1.0.0" - extsprintf: "npm:1.3.0" - json-schema: "npm:0.4.0" - verror: "npm:1.10.0" - checksum: 10c0/5e4bca99e90727c2040eb4c2190d0ef1fe51798ed5714e87b841d304526190d960f9772acc7108fa1416b61e1122bcd60e4460c91793dce0835df5852aab55af - languageName: node - linkType: hard - -"keccak256@npm:^1.0.6": - version: 1.0.6 - resolution: "keccak256@npm:1.0.6" - dependencies: - bn.js: "npm:^5.2.0" - buffer: "npm:^6.0.3" - keccak: "npm:^3.0.2" - checksum: 10c0/2a3f1e281ffd65bcbbae2ee8d62e27f0336efe6f16b7ed9932ad642ed398da62ccbc3d38dcdf43bd2fad9885f02df501dc77a900c358644df296396ed194056f - languageName: node - linkType: hard - -"keccak@npm:3.0.1": - version: 3.0.1 - resolution: "keccak@npm:3.0.1" - dependencies: - node-addon-api: "npm:^2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - checksum: 10c0/dd274c2e177c12c9f5a05bd7460f04b49c03711770ecdb5f1a7fa56169994f9f0a7857c426cf65a2a4078908b12fe8bb6fdf1c28c9baab69835c5e678c10d7ab - languageName: node - linkType: hard - -"keccak@npm:3.0.2": - version: 3.0.2 - resolution: "keccak@npm:3.0.2" - dependencies: - node-addon-api: "npm:^2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - readable-stream: "npm:^3.6.0" - checksum: 10c0/f1673e0f9bab4eb8a5bd232227916c592716d3b961e14e6ab3fabcf703c896c83fdbcd230f7b4a44f076d50fb0931ec1b093a98e4b0e74680b56be123a4a93f6 - languageName: node - linkType: hard - -"keccak@npm:^3.0.0, keccak@npm:^3.0.2": - version: 3.0.4 - resolution: "keccak@npm:3.0.4" - dependencies: - node-addon-api: "npm:^2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - readable-stream: "npm:^3.6.0" - checksum: 10c0/153525c1c1f770beadb8f8897dec2f1d2dcbee11d063fe5f61957a5b236bfd3d2a111ae2727e443aa6a848df5edb98b9ef237c78d56df49087b0ca8a232ca9cd - languageName: node - linkType: hard - -"keyv@npm:^4.5.4": - version: 4.5.4 - resolution: "keyv@npm:4.5.4" - dependencies: - json-buffer: "npm:3.0.1" - checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e - languageName: node - linkType: hard - -"lcid@npm:^2.0.0": - version: 2.0.0 - resolution: "lcid@npm:2.0.0" - dependencies: - invert-kv: "npm:^2.0.0" - checksum: 10c0/53777f5946ee7cfa600ebdd8f18019c110f5ca1fd776e183a1f24e74cd200eb3718e535b2693caf762af1efed0714559192a095c4665e7808fd6d807b9797502 - languageName: node - linkType: hard - -"level-codec@npm:^9.0.0": - version: 9.0.2 - resolution: "level-codec@npm:9.0.2" - dependencies: - buffer: "npm:^5.6.0" - checksum: 10c0/38a7eb8beed37969ad93160251d5be8e667d4ea0ee199d5e72e61739e552987a71acaa2daa1d2dbc7541f0cfb64e2bd8b50c3d8757cfa41468d8631aa45cc0eb - languageName: node - linkType: hard - -"level-concat-iterator@npm:^3.0.0": - version: 3.1.0 - resolution: "level-concat-iterator@npm:3.1.0" - dependencies: - catering: "npm:^2.1.0" - checksum: 10c0/7bb1b8e991a179de2fecfd38d2c34544a139e1228cb730f3024ef11dcbd514cc89be30b02a2a81ef4e16b0c1553f604378f67302ea23868d98f055f9fa241ae4 - languageName: node - linkType: hard - -"level-concat-iterator@npm:~2.0.0": - version: 2.0.1 - resolution: "level-concat-iterator@npm:2.0.1" - checksum: 10c0/b0a55ec63137b159fdb69204fbac02f33fbfbaa61563db21121300f6da6a35dd4654dc872df6ca1067c0ca4f98074ccbb59c28044d0043600a940a506c3d4a71 - languageName: node - linkType: hard - -"level-errors@npm:^2.0.0, level-errors@npm:~2.0.0": - version: 2.0.1 - resolution: "level-errors@npm:2.0.1" - dependencies: - errno: "npm:~0.1.1" - checksum: 10c0/9e664afb98febe22e6ccde063be85e2b6e472414325bea87f0b2288bec589ef97658028f8654dc4716a06cda15c205e910b6cf5eb3906ed3ca06ea84d370002f - languageName: node - linkType: hard - -"level-iterator-stream@npm:~4.0.0": - version: 4.0.2 - resolution: "level-iterator-stream@npm:4.0.2" - dependencies: - inherits: "npm:^2.0.4" - readable-stream: "npm:^3.4.0" - xtend: "npm:^4.0.2" - checksum: 10c0/29994d5449428c246dc7d983220ca333ddaaa9e0fe9a664bb23750693db6cff4be62e8e31b6e8a0e1057c09a94580b965206c048701f96c3e8e97720a3c1e7c8 - languageName: node - linkType: hard - -"level-mem@npm:^5.0.1": - version: 5.0.1 - resolution: "level-mem@npm:5.0.1" - dependencies: - level-packager: "npm:^5.0.3" - memdown: "npm:^5.0.0" - checksum: 10c0/d393bf659eca373d420d03b20ed45057fbcbbe37423dd6aed661bae1e4ac690fda5b667669c7812b880c8776f1bb5e30c71b45e82ca7de6f54cae7815b39cafb - languageName: node - linkType: hard - -"level-packager@npm:^5.0.3": - version: 5.1.1 - resolution: "level-packager@npm:5.1.1" - dependencies: - encoding-down: "npm:^6.3.0" - levelup: "npm:^4.3.2" - checksum: 10c0/dc3ad1d3bc1fc85154ab85ac8220ffc7ff4da7b2be725c53ea8716780a2ef37d392c7dffae769a0419341f19febe78d86da998981b4ba3be673db1cb95051e95 - languageName: node - linkType: hard - -"level-supports@npm:^2.0.1": - version: 2.1.0 - resolution: "level-supports@npm:2.1.0" - checksum: 10c0/60481dd403234c64e2c01ed2aafdc75250ddd49d770f75ebef3f92a2a5b2271bf774858bfd8c47cfae3955855f9ff9dd536683d6cffb7c085cd0e57245c4c039 - languageName: node - linkType: hard - -"level-supports@npm:~1.0.0": - version: 1.0.1 - resolution: "level-supports@npm:1.0.1" - dependencies: - xtend: "npm:^4.0.2" - checksum: 10c0/6e8eb2be4c2c55e04e71dff831421a81d95df571e0004b6e6e0cee8421e792e22b3ab94ecaa925dc626164f442185b2e2bfb5d52b257d1639f8f9da8714c8335 - languageName: node - linkType: hard - -"level-ws@npm:^2.0.0": - version: 2.0.0 - resolution: "level-ws@npm:2.0.0" - dependencies: - inherits: "npm:^2.0.3" - readable-stream: "npm:^3.1.0" - xtend: "npm:^4.0.1" - checksum: 10c0/1d4538d417756a6fbcd4fb157f1076765054c7e9bbd3cd2c72d21510eae55948f51c7c67f2d4d05257ff196a5c1a4eb6b78ce697b7fb3486906d9d97a98a6979 - languageName: node - linkType: hard - -"leveldown@npm:6.1.0": - version: 6.1.0 - resolution: "leveldown@npm:6.1.0" - dependencies: - abstract-leveldown: "npm:^7.2.0" - napi-macros: "npm:~2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10c0/5af0a9596baf44187a5cce5095d78b7c085d8c5a94d652ed42e7a40c60f057135d17b52ae473f9719c674e93db3941831406206f469c4e9f62987ceed92c33e1 - languageName: node - linkType: hard - -"levelup@npm:^4.3.2": - version: 4.4.0 - resolution: "levelup@npm:4.4.0" - dependencies: - deferred-leveldown: "npm:~5.3.0" - level-errors: "npm:~2.0.0" - level-iterator-stream: "npm:~4.0.0" - level-supports: "npm:~1.0.0" - xtend: "npm:~4.0.0" - checksum: 10c0/e67eeb72cf10face92f73527b63ea0754bc3ab7ced76f8bf909fb51db1a2e687e2206415807c2de6862902eb00046e5bf34d64d587e3892d4cb89db687c2a957 - languageName: node - linkType: hard - -"levn@npm:^0.4.1": - version: 0.4.1 - resolution: "levn@npm:0.4.1" - dependencies: - prelude-ls: "npm:^1.2.1" - type-check: "npm:~0.4.0" - checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e - languageName: node - linkType: hard - -"locate-path@npm:^3.0.0": - version: 3.0.0 - resolution: "locate-path@npm:3.0.0" - dependencies: - p-locate: "npm:^3.0.0" - path-exists: "npm:^3.0.0" - checksum: 10c0/3db394b7829a7fe2f4fbdd25d3c4689b85f003c318c5da4052c7e56eed697da8f1bce5294f685c69ff76e32cba7a33629d94396976f6d05fb7f4c755c5e2ae8b - languageName: node - linkType: hard - -"locate-path@npm:^6.0.0": - version: 6.0.0 - resolution: "locate-path@npm:6.0.0" - dependencies: - p-locate: "npm:^5.0.0" - checksum: 10c0/d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3 - languageName: node - linkType: hard - -"lodash.camelcase@npm:^4.3.0": - version: 4.3.0 - resolution: "lodash.camelcase@npm:4.3.0" - checksum: 10c0/fcba15d21a458076dd309fce6b1b4bf611d84a0ec252cb92447c948c533ac250b95d2e00955801ebc367e5af5ed288b996d75d37d2035260a937008e14eaf432 - languageName: node - linkType: hard - -"lodash.merge@npm:^4.6.2": - version: 4.6.2 - resolution: "lodash.merge@npm:4.6.2" - checksum: 10c0/402fa16a1edd7538de5b5903a90228aa48eb5533986ba7fa26606a49db2572bf414ff73a2c9f5d5fd36b31c46a5d5c7e1527749c07cbcf965ccff5fbdf32c506 - languageName: node - linkType: hard - -"lodash.truncate@npm:^4.4.2": - version: 4.4.2 - resolution: "lodash.truncate@npm:4.4.2" - checksum: 10c0/4e870d54e8a6c86c8687e057cec4069d2e941446ccab7f40b4d9555fa5872d917d0b6aa73bece7765500a3123f1723bcdba9ae881b679ef120bba9e1a0b0ed70 - languageName: node - linkType: hard - -"lodash@npm:^4.17.11, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.21": - version: 4.17.21 - resolution: "lodash@npm:4.17.21" - checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c - languageName: node - linkType: hard - -"log-symbols@npm:3.0.0": - version: 3.0.0 - resolution: "log-symbols@npm:3.0.0" - dependencies: - chalk: "npm:^2.4.2" - checksum: 10c0/d11582a1b499b76aa1415988234ad54d9fb3f888f4cb4186cbc20ee4d314ac4b5f3d9fe9edd828748d2c0d372df2ea9f5dfd89100510988a8ce5ddf483ae015e - languageName: node - linkType: hard - -"log-symbols@npm:^4.1.0": - version: 4.1.0 - resolution: "log-symbols@npm:4.1.0" - dependencies: - chalk: "npm:^4.1.0" - is-unicode-supported: "npm:^0.1.0" - checksum: 10c0/67f445a9ffa76db1989d0fa98586e5bc2fd5247260dafb8ad93d9f0ccd5896d53fb830b0e54dade5ad838b9de2006c826831a3c528913093af20dff8bd24aca6 - languageName: node - linkType: hard - -"loupe@npm:^2.3.6": - version: 2.3.7 - resolution: "loupe@npm:2.3.7" - dependencies: - get-func-name: "npm:^2.0.1" - checksum: 10c0/71a781c8fc21527b99ed1062043f1f2bb30bdaf54fa4cf92463427e1718bc6567af2988300bc243c1f276e4f0876f29e3cbf7b58106fdc186915687456ce5bf4 - languageName: node - linkType: hard - -"lru-cache@npm:^10.2.0": - version: 10.4.3 - resolution: "lru-cache@npm:10.4.3" - checksum: 10c0/ebd04fbca961e6c1d6c0af3799adcc966a1babe798f685bb84e6599266599cd95d94630b10262f5424539bc4640107e8a33aa28585374abf561d30d16f4b39fb - languageName: node - linkType: hard - -"lru-cache@npm:^11.0.0, lru-cache@npm:^11.1.0, lru-cache@npm:^11.2.1": - version: 11.2.4 - resolution: "lru-cache@npm:11.2.4" - checksum: 10c0/4a24f9b17537619f9144d7b8e42cd5a225efdfd7076ebe7b5e7dc02b860a818455201e67fbf000765233fe7e339d3c8229fc815e9b58ee6ede511e07608c19b2 - languageName: node - linkType: hard - -"lru-cache@npm:^5.1.1": - version: 5.1.1 - resolution: "lru-cache@npm:5.1.1" - dependencies: - yallist: "npm:^3.0.2" - checksum: 10c0/89b2ef2ef45f543011e38737b8a8622a2f8998cddf0e5437174ef8f1f70a8b9d14a918ab3e232cb3ba343b7abddffa667f0b59075b2b80e6b4d63c3de6127482 - languageName: node - linkType: hard - -"lru_map@npm:^0.3.3": - version: 0.3.3 - resolution: "lru_map@npm:0.3.3" - checksum: 10c0/d861f14a142a4a74ebf8d3ad57f2e768a5b820db4100ae53eed1a64eb6350912332e6ebc87cb7415ad6d0cd8f3ce6d20beab9a5e6042ccb5996ea0067a220448 - languageName: node - linkType: hard - -"ltgt@npm:~2.2.0": - version: 2.2.1 - resolution: "ltgt@npm:2.2.1" - checksum: 10c0/60fdad732c3aa6acf37e927a5ef58c0d1776192321d55faa1f8775c134c27fbf20ef8ec542fb7f7f33033f79c2a2df75cac39b43e274b32e9d95400154cd41f3 - languageName: node - linkType: hard - -"make-error@npm:^1.1.1": - version: 1.3.6 - resolution: "make-error@npm:1.3.6" - checksum: 10c0/171e458d86854c6b3fc46610cfacf0b45149ba043782558c6875d9f42f222124384ad0b468c92e996d815a8a2003817a710c0a160e49c1c394626f76fa45396f - languageName: node - linkType: hard - -"make-fetch-happen@npm:^15.0.0": - version: 15.0.3 - resolution: "make-fetch-happen@npm:15.0.3" - dependencies: - "@npmcli/agent": "npm:^4.0.0" - cacache: "npm:^20.0.1" - http-cache-semantics: "npm:^4.1.1" - minipass: "npm:^7.0.2" - minipass-fetch: "npm:^5.0.0" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - negotiator: "npm:^1.0.0" - proc-log: "npm:^6.0.0" - promise-retry: "npm:^2.0.1" - ssri: "npm:^13.0.0" - checksum: 10c0/525f74915660be60b616bcbd267c4a5b59481b073ba125e45c9c3a041bb1a47a2bd0ae79d028eb6f5f95bf9851a4158423f5068539c3093621abb64027e8e461 - languageName: node - linkType: hard - -"map-age-cleaner@npm:^0.1.1": - version: 0.1.3 - resolution: "map-age-cleaner@npm:0.1.3" - dependencies: - p-defer: "npm:^1.0.0" - checksum: 10c0/7495236c7b0950956c144fd8b4bc6399d4e78072a8840a4232fe1c4faccbb5eb5d842e5c0a56a60afc36d723f315c1c672325ca03c1b328650f7fcc478f385fd - languageName: node - linkType: hard - -"markdown-table@npm:^1.1.3": - version: 1.1.3 - resolution: "markdown-table@npm:1.1.3" - checksum: 10c0/aea6eb998900449d938ce46819630492792dd26ac9737f8b506f98baf88c98b7cc1e69c33b72959e0f8578fc0a4b4b44d740daf2db9d8e92ccf3c3522f749fda - languageName: node - linkType: hard - -"math-intrinsics@npm:^1.1.0": - version: 1.1.0 - resolution: "math-intrinsics@npm:1.1.0" - checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f - languageName: node - linkType: hard - -"mathjs@npm:^10.4.0": - version: 10.6.4 - resolution: "mathjs@npm:10.6.4" - dependencies: - "@babel/runtime": "npm:^7.18.6" - complex.js: "npm:^2.1.1" - decimal.js: "npm:^10.3.1" - escape-latex: "npm:^1.2.0" - fraction.js: "npm:^4.2.0" - javascript-natural-sort: "npm:^0.7.1" - seedrandom: "npm:^3.0.5" - tiny-emitter: "npm:^2.1.0" - typed-function: "npm:^2.1.0" - bin: - mathjs: bin/cli.js - checksum: 10c0/c12401def3bcd53bc74efd41dee081f4b5b95be5a738ec48fbb64d8dc220368a41b08624e28b30a0ec959184cbbe39d68de709f1ab1cfbb1f2f0ae52fd0cfd57 - languageName: node - linkType: hard - -"mathjs@npm:^11.0.1": - version: 11.12.0 - resolution: "mathjs@npm:11.12.0" - dependencies: - "@babel/runtime": "npm:^7.23.2" - complex.js: "npm:^2.1.1" - decimal.js: "npm:^10.4.3" - escape-latex: "npm:^1.2.0" - fraction.js: "npm:4.3.4" - javascript-natural-sort: "npm:^0.7.1" - seedrandom: "npm:^3.0.5" - tiny-emitter: "npm:^2.1.0" - typed-function: "npm:^4.1.1" - bin: - mathjs: bin/cli.js - checksum: 10c0/4ddd38e2e7441e524b9e50c572582d0c1a4502a42a27c8ba1b4931c710f3f446560c95e6539f29c07d835db3fe663add7907c883871e7a28c572f5eb958280eb - languageName: node - linkType: hard - -"mcl-wasm@npm:^0.7.1": - version: 0.7.9 - resolution: "mcl-wasm@npm:0.7.9" - checksum: 10c0/12acd074621741ac61f4b3d36d72da6317320b5db02734abaaf77c0c7886ced14926de2f637ca9ab70a458419200d7edb8e0a4f9f02c85feb8d5bbbe430e60ad - languageName: node - linkType: hard - -"md5.js@npm:^1.3.4": - version: 1.3.5 - resolution: "md5.js@npm:1.3.5" - dependencies: - hash-base: "npm:^3.0.0" - inherits: "npm:^2.0.1" - safe-buffer: "npm:^5.1.2" - checksum: 10c0/b7bd75077f419c8e013fc4d4dada48be71882e37d69a44af65a2f2804b91e253441eb43a0614423a1c91bb830b8140b0dc906bc797245e2e275759584f4efcc5 - languageName: node - linkType: hard - -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: 10c0/d160f31246907e79fed398470285f21bafb45a62869dc469b1c8877f3f064f5eabc4bcc122f9479b8b605bc5c76187d7871cf84c4ee3ecd3e487da1993279928 - languageName: node - linkType: hard - -"mem@npm:^4.0.0": - version: 4.3.0 - resolution: "mem@npm:4.3.0" - dependencies: - map-age-cleaner: "npm:^0.1.1" - mimic-fn: "npm:^2.0.0" - p-is-promise: "npm:^2.0.0" - checksum: 10c0/fc74e16d877322aafe869fe92a5c3109b1683195f4ef507920322a2fc8cd9998f3299f716c9853e10304c06a528fd9b763de24bdd7ce0b448155f05c9fad8612 - languageName: node - linkType: hard - -"memdown@npm:^5.0.0": - version: 5.1.0 - resolution: "memdown@npm:5.1.0" - dependencies: - abstract-leveldown: "npm:~6.2.1" - functional-red-black-tree: "npm:~1.0.1" - immediate: "npm:~3.2.3" - inherits: "npm:~2.0.1" - ltgt: "npm:~2.2.0" - safe-buffer: "npm:~5.2.0" - checksum: 10c0/9971f8dbcc20c8b5530b535446c045bd5014fe615af76350b1398b5580ee828f28c0a19227252efd686011713381c2d0f4456ca8ee5f595769a774367027e0da - languageName: node - linkType: hard - -"memorystream@npm:^0.3.1": - version: 0.3.1 - resolution: "memorystream@npm:0.3.1" - checksum: 10c0/4bd164657711d9747ff5edb0508b2944414da3464b7fe21ac5c67cf35bba975c4b446a0124bd0f9a8be54cfc18faf92e92bd77563a20328b1ccf2ff04e9f39b9 - languageName: node - linkType: hard - -"merge-descriptors@npm:1.0.3": - version: 1.0.3 - resolution: "merge-descriptors@npm:1.0.3" - checksum: 10c0/866b7094afd9293b5ea5dcd82d71f80e51514bed33b4c4e9f516795dc366612a4cbb4dc94356e943a8a6914889a914530badff27f397191b9b75cda20b6bae93 - languageName: node - linkType: hard - -"merkle-patricia-tree@npm:^4.2.2, merkle-patricia-tree@npm:^4.2.4": - version: 4.2.4 - resolution: "merkle-patricia-tree@npm:4.2.4" - dependencies: - "@types/levelup": "npm:^4.3.0" - ethereumjs-util: "npm:^7.1.4" - level-mem: "npm:^5.0.1" - level-ws: "npm:^2.0.0" - readable-stream: "npm:^3.6.0" - semaphore-async-await: "npm:^1.5.1" - checksum: 10c0/d3f49f2d48b544e20a4bc68c17f2585f67c6210423d382625f708166b721d902c4e118e689fe48e4c27b8f26bc93b77a5f341b91cf4e1426c38c0d2203083e50 - languageName: node - linkType: hard - -"merkletreejs@npm:^0.2.31": - version: 0.2.32 - resolution: "merkletreejs@npm:0.2.32" - dependencies: - bignumber.js: "npm:^9.0.1" - buffer-reverse: "npm:^1.0.1" - crypto-js: "npm:^3.1.9-1" - treeify: "npm:^1.1.0" - web3-utils: "npm:^1.3.4" - checksum: 10c0/76227a46e38f0812743ac745f5c3d5fc9223b01f1cb040b59c19b457c6d10f4464140c1edc6ea3041cbded4c488c83f8013c363e4bfd6ace005ec515a5c241bc - languageName: node - linkType: hard - -"methods@npm:~1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 10c0/bdf7cc72ff0a33e3eede03708c08983c4d7a173f91348b4b1e4f47d4cdbf734433ad971e7d1e8c77247d9e5cd8adb81ea4c67b0a2db526b758b2233d7814b8b2 - languageName: node - linkType: hard - -"micro-eth-signer@npm:^0.16.0": - version: 0.16.0 - resolution: "micro-eth-signer@npm:0.16.0" - dependencies: - "@noble/curves": "npm:~1.9.2" - "@noble/hashes": "npm:2.0.0-beta.1" - micro-packed: "npm:~0.7.3" - checksum: 10c0/daac43e339c3bcb4c1598bfb0cfa83878a25f3464bdbecbf1135dd8ffbe1fa687eec6e5fc82fb5a8d007b5fafcae682f66cddee24724c75c95019625d735a36f - languageName: node - linkType: hard - -"micro-ftch@npm:^0.3.1": - version: 0.3.1 - resolution: "micro-ftch@npm:0.3.1" - checksum: 10c0/b87d35a52aded13cf2daca8d4eaa84e218722b6f83c75ddd77d74f32cc62e699a672e338e1ee19ceae0de91d19cc24dcc1a7c7d78c81f51042fe55f01b196ed3 - languageName: node - linkType: hard - -"micro-packed@npm:~0.7.3": - version: 0.7.3 - resolution: "micro-packed@npm:0.7.3" - dependencies: - "@scure/base": "npm:~1.2.5" - checksum: 10c0/1fde48a96d8d5606d3298ff36717bf7483d6d59e2d96f50cb88727379127a4d52881f48e7e1ce0d4906b2711b1902fb04d2128576326ce4d07e171ac022a4c2d - languageName: node - linkType: hard - -"miller-rabin@npm:^4.0.0": - version: 4.0.1 - resolution: "miller-rabin@npm:4.0.1" - dependencies: - bn.js: "npm:^4.0.0" - brorand: "npm:^1.0.1" - bin: - miller-rabin: bin/miller-rabin - checksum: 10c0/26b2b96f6e49dbcff7faebb78708ed2f5f9ae27ac8cbbf1d7c08f83cf39bed3d418c0c11034dce997da70d135cc0ff6f3a4c15dc452f8e114c11986388a64346 - languageName: node - linkType: hard - -"mime-db@npm:1.52.0": - version: 1.52.0 - resolution: "mime-db@npm:1.52.0" - checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa - languageName: node - linkType: hard - -"mime-types@npm:^2.1.12, mime-types@npm:^2.1.35, mime-types@npm:~2.1.19, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": - version: 2.1.35 - resolution: "mime-types@npm:2.1.35" - dependencies: - mime-db: "npm:1.52.0" - checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2 - languageName: node - linkType: hard - -"mime@npm:1.6.0": - version: 1.6.0 - resolution: "mime@npm:1.6.0" - bin: - mime: cli.js - checksum: 10c0/b92cd0adc44888c7135a185bfd0dddc42c32606401c72896a842ae15da71eb88858f17669af41e498b463cd7eb998f7b48939a25b08374c7924a9c8a6f8a81b0 - languageName: node - linkType: hard - -"mimic-fn@npm:^2.0.0": - version: 2.1.0 - resolution: "mimic-fn@npm:2.1.0" - checksum: 10c0/b26f5479d7ec6cc2bce275a08f146cf78f5e7b661b18114e2506dd91ec7ec47e7a25bf4360e5438094db0560bcc868079fb3b1fb3892b833c1ecbf63f80c95a4 - languageName: node - linkType: hard - -"minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1": - version: 1.0.1 - resolution: "minimalistic-assert@npm:1.0.1" - checksum: 10c0/96730e5601cd31457f81a296f521eb56036e6f69133c0b18c13fe941109d53ad23a4204d946a0d638d7f3099482a0cec8c9bb6d642604612ce43ee536be3dddd - languageName: node - linkType: hard - -"minimalistic-crypto-utils@npm:^1.0.1": - version: 1.0.1 - resolution: "minimalistic-crypto-utils@npm:1.0.1" - checksum: 10c0/790ecec8c5c73973a4fbf2c663d911033e8494d5fb0960a4500634766ab05d6107d20af896ca2132e7031741f19888154d44b2408ada0852446705441383e9f8 - languageName: node - linkType: hard - -"minimatch@npm:3.0.4": - version: 3.0.4 - resolution: "minimatch@npm:3.0.4" - dependencies: - brace-expansion: "npm:^1.1.7" - checksum: 10c0/d0a2bcd93ebec08a9eef3ca83ba33c9fb6feb93932e0b4dc6aa46c5f37a9404bea7ad9ff7cafe23ce6634f1fe3b206f5315ecbb05812da6e692c21d8ecfd3dae - languageName: node - linkType: hard - -"minimatch@npm:^10.1.1": - version: 10.1.1 - resolution: "minimatch@npm:10.1.1" - dependencies: - "@isaacs/brace-expansion": "npm:^5.0.0" - checksum: 10c0/c85d44821c71973d636091fddbfbffe62370f5ee3caf0241c5b60c18cd289e916200acb2361b7e987558cd06896d153e25d505db9fc1e43e6b4b6752e2702902 - languageName: node - linkType: hard - -"minimatch@npm:^3.0.4, minimatch@npm:^3.1.2": - version: 3.1.2 - resolution: "minimatch@npm:3.1.2" - dependencies: - brace-expansion: "npm:^1.1.7" - checksum: 10c0/0262810a8fc2e72cca45d6fd86bd349eee435eb95ac6aa45c9ea2180e7ee875ef44c32b55b5973ceabe95ea12682f6e3725cbb63d7a2d1da3ae1163c8b210311 - languageName: node - linkType: hard - -"minimatch@npm:^5.0.1, minimatch@npm:^5.1.6": - version: 5.1.6 - resolution: "minimatch@npm:5.1.6" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/3defdfd230914f22a8da203747c42ee3c405c39d4d37ffda284dac5e45b7e1f6c49aa8be606509002898e73091ff2a3bbfc59c2c6c71d4660609f63aa92f98e3 - languageName: node - linkType: hard - -"minimatch@npm:^9.0.1, minimatch@npm:^9.0.5": - version: 9.0.5 - resolution: "minimatch@npm:9.0.5" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/de96cf5e35bdf0eab3e2c853522f98ffbe9a36c37797778d2665231ec1f20a9447a7e567cb640901f89e4daaa95ae5d70c65a9e8aa2bb0019b6facbc3c0575ed - languageName: node - linkType: hard - -"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6, minimist@npm:^1.2.7": - version: 1.2.8 - resolution: "minimist@npm:1.2.8" - checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 - languageName: node - linkType: hard - -"minipass-collect@npm:^2.0.1": - version: 2.0.1 - resolution: "minipass-collect@npm:2.0.1" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/5167e73f62bb74cc5019594709c77e6a742051a647fe9499abf03c71dca75515b7959d67a764bdc4f8b361cf897fbf25e2d9869ee039203ed45240f48b9aa06e - languageName: node - linkType: hard - -"minipass-fetch@npm:^5.0.0": - version: 5.0.0 - resolution: "minipass-fetch@npm:5.0.0" - dependencies: - encoding: "npm:^0.1.13" - minipass: "npm:^7.0.3" - minipass-sized: "npm:^1.0.3" - minizlib: "npm:^3.0.1" - dependenciesMeta: - encoding: - optional: true - checksum: 10c0/9443aab5feab190972f84b64116e54e58dd87a58e62399cae0a4a7461b80568281039b7c3a38ba96453431ebc799d1e26999e548540156216729a4967cd5ef06 - languageName: node - linkType: hard - -"minipass-flush@npm:^1.0.5": - version: 1.0.5 - resolution: "minipass-flush@npm:1.0.5" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd - languageName: node - linkType: hard - -"minipass-pipeline@npm:^1.2.4": - version: 1.2.4 - resolution: "minipass-pipeline@npm:1.2.4" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2 - languageName: node - linkType: hard - -"minipass-sized@npm:^1.0.3": - version: 1.0.3 - resolution: "minipass-sized@npm:1.0.3" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb - languageName: node - linkType: hard - -"minipass@npm:^3.0.0": - version: 3.3.6 - resolution: "minipass@npm:3.3.6" - dependencies: - yallist: "npm:^4.0.0" - checksum: 10c0/a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c - languageName: node - linkType: hard - -"minipass@npm:^5.0.0 || ^6.0.2": - version: 6.0.2 - resolution: "minipass@npm:6.0.2" - checksum: 10c0/3878076578f44ef4078ceed10af2cfebbec1b6217bf9f7a3d8b940da8153769db29bf88498b2de0d1e0c12dfb7b634c5729b7ca03457f46435e801578add210a - languageName: node - linkType: hard - -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": - version: 7.1.2 - resolution: "minipass@npm:7.1.2" - checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557 - languageName: node - linkType: hard - -"minizlib@npm:^3.0.1, minizlib@npm:^3.1.0": - version: 3.1.0 - resolution: "minizlib@npm:3.1.0" - dependencies: - minipass: "npm:^7.1.2" - checksum: 10c0/5aad75ab0090b8266069c9aabe582c021ae53eb33c6c691054a13a45db3b4f91a7fb1bd79151e6b4e9e9a86727b522527c0a06ec7d45206b745d54cd3097bcec - languageName: node - linkType: hard - -"mkdirp@npm:0.5.5": - version: 0.5.5 - resolution: "mkdirp@npm:0.5.5" - dependencies: - minimist: "npm:^1.2.5" - bin: - mkdirp: bin/cmd.js - checksum: 10c0/4469faeeba703bc46b7cdbe3097d6373747a581eb8b556ce41c8fd25a826eb3254466c6522ba823c2edb0b6f0da7beb91cf71f040bc4e361534a3e67f0994bd0 - languageName: node - linkType: hard - -"mkdirp@npm:^0.5.1": - version: 0.5.6 - resolution: "mkdirp@npm:0.5.6" - dependencies: - minimist: "npm:^1.2.6" - bin: - mkdirp: bin/cmd.js - checksum: 10c0/e2e2be789218807b58abced04e7b49851d9e46e88a2f9539242cc8a92c9b5c3a0b9bab360bd3014e02a140fc4fbc58e31176c408b493f8a2a6f4986bd7527b01 - languageName: node - linkType: hard - -"mkdirp@npm:^1.0.4": - version: 1.0.4 - resolution: "mkdirp@npm:1.0.4" - bin: - mkdirp: bin/cmd.js - checksum: 10c0/46ea0f3ffa8bc6a5bc0c7081ffc3907777f0ed6516888d40a518c5111f8366d97d2678911ad1a6882bf592fa9de6c784fea32e1687bb94e1f4944170af48a5cf - languageName: node - linkType: hard - -"mnemonist@npm:^0.38.0": - version: 0.38.5 - resolution: "mnemonist@npm:0.38.5" - dependencies: - obliterator: "npm:^2.0.0" - checksum: 10c0/a73a2718f88cd12c3b108ecc530619a1b0f2783d479c7f98e7367375102cc3a28811bab384e17eb731553dc8d7ee9d60283d694a9f676af5f306104e75027d4f - languageName: node - linkType: hard - -"mocha@npm:^10.0.0, mocha@npm:^10.2.0": - version: 10.8.2 - resolution: "mocha@npm:10.8.2" - dependencies: - ansi-colors: "npm:^4.1.3" - browser-stdout: "npm:^1.3.1" - chokidar: "npm:^3.5.3" - debug: "npm:^4.3.5" - diff: "npm:^5.2.0" - escape-string-regexp: "npm:^4.0.0" - find-up: "npm:^5.0.0" - glob: "npm:^8.1.0" - he: "npm:^1.2.0" - js-yaml: "npm:^4.1.0" - log-symbols: "npm:^4.1.0" - minimatch: "npm:^5.1.6" - ms: "npm:^2.1.3" - serialize-javascript: "npm:^6.0.2" - strip-json-comments: "npm:^3.1.1" - supports-color: "npm:^8.1.1" - workerpool: "npm:^6.5.1" - yargs: "npm:^16.2.0" - yargs-parser: "npm:^20.2.9" - yargs-unparser: "npm:^2.0.0" - bin: - _mocha: bin/_mocha - mocha: bin/mocha.js - checksum: 10c0/1f786290a32a1c234f66afe2bfcc68aa50fe9c7356506bd39cca267efb0b4714a63a0cb333815578d63785ba2fba058bf576c2512db73997c0cae0d659a88beb - languageName: node - linkType: hard - -"mocha@npm:^7.1.1": - version: 7.2.0 - resolution: "mocha@npm:7.2.0" - dependencies: - ansi-colors: "npm:3.2.3" - browser-stdout: "npm:1.3.1" - chokidar: "npm:3.3.0" - debug: "npm:3.2.6" - diff: "npm:3.5.0" - escape-string-regexp: "npm:1.0.5" - find-up: "npm:3.0.0" - glob: "npm:7.1.3" - growl: "npm:1.10.5" - he: "npm:1.2.0" - js-yaml: "npm:3.13.1" - log-symbols: "npm:3.0.0" - minimatch: "npm:3.0.4" - mkdirp: "npm:0.5.5" - ms: "npm:2.1.1" - node-environment-flags: "npm:1.0.6" - object.assign: "npm:4.1.0" - strip-json-comments: "npm:2.0.1" - supports-color: "npm:6.0.0" - which: "npm:1.3.1" - wide-align: "npm:1.1.3" - yargs: "npm:13.3.2" - yargs-parser: "npm:13.1.2" - yargs-unparser: "npm:1.6.0" - bin: - _mocha: bin/_mocha - mocha: bin/mocha - checksum: 10c0/424d1f6f43271b19e7a8b5b0b4ea74841aa8ca136f9d3b2ed54cba49cf62fcd2abb7cc559a76fb8a00dadfe22db34a438002b5d35e982afb4d80b849dc0cef4c - languageName: node - linkType: hard - -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 10c0/f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d - languageName: node - linkType: hard - -"ms@npm:2.1.1": - version: 2.1.1 - resolution: "ms@npm:2.1.1" - checksum: 10c0/056140c631e740369fa21142417aba1bd629ab912334715216c666eb681c8f015c622dd4e38bc1d836b30852b05641331661703af13a0397eb0ca420fc1e75d9 - languageName: node - linkType: hard - -"ms@npm:2.1.3, ms@npm:^2.1.1, ms@npm:^2.1.3": - version: 2.1.3 - resolution: "ms@npm:2.1.3" - checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48 - languageName: node - linkType: hard - -"murmur-128@npm:^0.2.1": - version: 0.2.1 - resolution: "murmur-128@npm:0.2.1" - dependencies: - encode-utf8: "npm:^1.0.2" - fmix: "npm:^0.1.0" - imul: "npm:^1.0.0" - checksum: 10c0/1ae871af53693a9159794b92ace63c1b5c1cc137d235cc954a56af00e48856625131605517e1ee00f60295d0223a13091b88d33a55686011774a63db3b94ecd5 - languageName: node - linkType: hard - -"napi-macros@npm:~2.0.0": - version: 2.0.0 - resolution: "napi-macros@npm:2.0.0" - checksum: 10c0/583ef5084b43e49a12488cdcd4c5142f11e114e249b359161579b64f06776ed523c209d96e4ee2689e2e824c92445d0f529d817cc153f7cec549210296ec4be6 - languageName: node - linkType: hard - -"natural-compare@npm:^1.4.0": - version: 1.4.0 - resolution: "natural-compare@npm:1.4.0" - checksum: 10c0/f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447 - languageName: node - linkType: hard - -"negotiator@npm:0.6.3": - version: 0.6.3 - resolution: "negotiator@npm:0.6.3" - checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2 - languageName: node - linkType: hard - -"negotiator@npm:^1.0.0": - version: 1.0.0 - resolution: "negotiator@npm:1.0.0" - checksum: 10c0/4c559dd52669ea48e1914f9d634227c561221dd54734070791f999c52ed0ff36e437b2e07d5c1f6e32909fc625fe46491c16e4a8f0572567d4dd15c3a4fda04b - languageName: node - linkType: hard - -"nice-try@npm:^1.0.4": - version: 1.0.5 - resolution: "nice-try@npm:1.0.5" - checksum: 10c0/95568c1b73e1d0d4069a3e3061a2102d854513d37bcfda73300015b7ba4868d3b27c198d1dbbd8ebdef4112fc2ed9e895d4a0f2e1cce0bd334f2a1346dc9205f - languageName: node - linkType: hard - -"node-addon-api@npm:^2.0.0": - version: 2.0.2 - resolution: "node-addon-api@npm:2.0.2" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/ade6c097ba829fa4aee1ca340117bb7f8f29fdae7b777e343a9d5cbd548481d1f0894b7b907d23ce615c70d932e8f96154caed95c3fa935cfe8cf87546510f64 - languageName: node - linkType: hard - -"node-addon-api@npm:^5.0.0": - version: 5.1.0 - resolution: "node-addon-api@npm:5.1.0" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/0eb269786124ba6fad9df8007a149e03c199b3e5a3038125dfb3e747c2d5113d406a4e33f4de1ea600aa2339be1f137d55eba1a73ee34e5fff06c52a5c296d1d - languageName: node - linkType: hard - -"node-environment-flags@npm:1.0.6": - version: 1.0.6 - resolution: "node-environment-flags@npm:1.0.6" - dependencies: - object.getownpropertydescriptors: "npm:^2.0.3" - semver: "npm:^5.7.0" - checksum: 10c0/8be86f294f8b065a1e126e9ceb7a4b38b75eb7ec6391060e6e093ab9649e5c1fa977f2a5fe799b6ada862d65ce8259d1b7eabf2057774d641306e467d58cb96b - languageName: node - linkType: hard - -"node-fetch@npm:^2.6.0, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.7": - version: 2.7.0 - resolution: "node-fetch@npm:2.7.0" - dependencies: - whatwg-url: "npm:^5.0.0" - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - checksum: 10c0/b55786b6028208e6fbe594ccccc213cab67a72899c9234eb59dba51062a299ea853210fcf526998eaa2867b0963ad72338824450905679ff0fa304b8c5093ae8 - languageName: node - linkType: hard - -"node-gyp-build@npm:4.3.0": - version: 4.3.0 - resolution: "node-gyp-build@npm:4.3.0" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 10c0/817917b256e5193c1b2f832a8e41e82cfb9915e44dfc01a9b2745ddda203344c82e27c177c1e4da39083a08d6e30859a0ce6672801ac4f0cd1df94a8c43f22b5 - languageName: node - linkType: hard - -"node-gyp-build@npm:4.4.0": - version: 4.4.0 - resolution: "node-gyp-build@npm:4.4.0" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 10c0/11bbec933352004c6a754c9d2e3ac7ad02a09750cd06800fdcfdf111638bd897767ab94b7ed386ceaa155bb195ca8404037d7e79c2cbe7e9cd38ec74e5f5b5d2 - languageName: node - linkType: hard - -"node-gyp-build@npm:^4.2.0, node-gyp-build@npm:^4.3.0": - version: 4.8.4 - resolution: "node-gyp-build@npm:4.8.4" - bin: - node-gyp-build: bin.js - node-gyp-build-optional: optional.js - node-gyp-build-test: build-test.js - checksum: 10c0/444e189907ece2081fe60e75368784f7782cfddb554b60123743dfb89509df89f1f29c03bbfa16b3a3e0be3f48799a4783f487da6203245fa5bed239ba7407e1 - languageName: node - linkType: hard - -"node-gyp@npm:latest": - version: 12.1.0 - resolution: "node-gyp@npm:12.1.0" - dependencies: - env-paths: "npm:^2.2.0" - exponential-backoff: "npm:^3.1.1" - graceful-fs: "npm:^4.2.6" - make-fetch-happen: "npm:^15.0.0" - nopt: "npm:^9.0.0" - proc-log: "npm:^6.0.0" - semver: "npm:^7.3.5" - tar: "npm:^7.5.2" - tinyglobby: "npm:^0.2.12" - which: "npm:^6.0.0" - bin: - node-gyp: bin/node-gyp.js - checksum: 10c0/f43efea8aaf0beb6b2f6184e533edad779b2ae38062953e21951f46221dd104006cc574154f2ad4a135467a5aae92c49e84ef289311a82e08481c5df0e8dc495 - languageName: node - linkType: hard - -"nofilter@npm:^3.0.2, nofilter@npm:^3.1.0": - version: 3.1.0 - resolution: "nofilter@npm:3.1.0" - checksum: 10c0/92459f3864a067b347032263f0b536223cbfc98153913b5dce350cb39c8470bc1813366e41993f22c33cc6400c0f392aa324a4b51e24c22040635c1cdb046499 - languageName: node - linkType: hard - -"nopt@npm:^9.0.0": - version: 9.0.0 - resolution: "nopt@npm:9.0.0" - dependencies: - abbrev: "npm:^4.0.0" - bin: - nopt: bin/nopt.js - checksum: 10c0/1822eb6f9b020ef6f7a7516d7b64a8036e09666ea55ac40416c36e4b2b343122c3cff0e2f085675f53de1d2db99a2a89a60ccea1d120bcd6a5347bf6ceb4a7fd - languageName: node - linkType: hard - -"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": - version: 3.0.0 - resolution: "normalize-path@npm:3.0.0" - checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046 - languageName: node - linkType: hard - -"npm-run-path@npm:^2.0.0": - version: 2.0.2 - resolution: "npm-run-path@npm:2.0.2" - dependencies: - path-key: "npm:^2.0.0" - checksum: 10c0/95549a477886f48346568c97b08c4fda9cdbf7ce8a4fbc2213f36896d0d19249e32d68d7451bdcbca8041b5fba04a6b2c4a618beaf19849505c05b700740f1de - languageName: node - linkType: hard - -"number-to-bn@npm:1.7.0": - version: 1.7.0 - resolution: "number-to-bn@npm:1.7.0" - dependencies: - bn.js: "npm:4.11.6" - strip-hex-prefix: "npm:1.0.0" - checksum: 10c0/83d1540173c4fc60ef4e91e88ed17f2c38418c8e5e62f469d62404527efba48d9c40f364da5c5e6857234a6c1154ff32b3642d80f873ba6cb8d2dd05fb6bc303 - languageName: node - linkType: hard - -"oauth-sign@npm:~0.9.0": - version: 0.9.0 - resolution: "oauth-sign@npm:0.9.0" - checksum: 10c0/fc92a516f6ddbb2699089a2748b04f55c47b6ead55a77cd3a2cbbce5f7af86164cb9425f9ae19acfd066f1ad7d3a96a67b8928c6ea946426f6d6c29e448497c2 - languageName: node - linkType: hard - -"object-assign@npm:^4, object-assign@npm:^4.1.0": - version: 4.1.1 - resolution: "object-assign@npm:4.1.1" - checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414 - languageName: node - linkType: hard - -"object-inspect@npm:^1.13.3, object-inspect@npm:^1.13.4": - version: 1.13.4 - resolution: "object-inspect@npm:1.13.4" - checksum: 10c0/d7f8711e803b96ea3191c745d6f8056ce1f2496e530e6a19a0e92d89b0fa3c76d910c31f0aa270432db6bd3b2f85500a376a83aaba849a8d518c8845b3211692 - languageName: node - linkType: hard - -"object-keys@npm:^1.0.11, object-keys@npm:^1.1.1": - version: 1.1.1 - resolution: "object-keys@npm:1.1.1" - checksum: 10c0/b11f7ccdbc6d406d1f186cdadb9d54738e347b2692a14439ca5ac70c225fa6db46db809711b78589866d47b25fc3e8dee0b4c722ac751e11180f9380e3d8601d - languageName: node - linkType: hard - -"object.assign@npm:4.1.0": - version: 4.1.0 - resolution: "object.assign@npm:4.1.0" - dependencies: - define-properties: "npm:^1.1.2" - function-bind: "npm:^1.1.1" - has-symbols: "npm:^1.0.0" - object-keys: "npm:^1.0.11" - checksum: 10c0/86e6c2a0c169924dc5fb8965c58760d1480ff57e60600c6bf32b083dc094f9587e9e765258485077480e70ae4ea10cf4d81eb4193e49c197821da37f0686a930 - languageName: node - linkType: hard - -"object.assign@npm:^4.1.7": - version: 4.1.7 - resolution: "object.assign@npm:4.1.7" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.3" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - has-symbols: "npm:^1.1.0" - object-keys: "npm:^1.1.1" - checksum: 10c0/3b2732bd860567ea2579d1567525168de925a8d852638612846bd8082b3a1602b7b89b67b09913cbb5b9bd6e95923b2ae73580baa9d99cb4e990564e8cbf5ddc - languageName: node - linkType: hard - -"object.getownpropertydescriptors@npm:^2.0.3": - version: 2.1.9 - resolution: "object.getownpropertydescriptors@npm:2.1.9" - dependencies: - array.prototype.reduce: "npm:^1.0.8" - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.24.0" - es-object-atoms: "npm:^1.1.1" - gopd: "npm:^1.2.0" - safe-array-concat: "npm:^1.1.3" - checksum: 10c0/8ccc9a4f28afb39cf7ab4d8acaf2ee817e47d59863d54a29b0e140648d841d2af3fc1564501a9b400862095258e3b28ee2c0506e1f5c04705ff781a8770f5eca - languageName: node - linkType: hard - -"obliterator@npm:^2.0.0": - version: 2.0.5 - resolution: "obliterator@npm:2.0.5" - checksum: 10c0/36e67d88271c51aa6412a7d449d6c60ae6387176f94dbc557eea67456bf6ccedbcbcecdb1e56438aa4f4694f68f531b3bf2be87b019e2f69961b144bec124e70 - languageName: node - linkType: hard - -"on-finished@npm:~2.4.1": - version: 2.4.1 - resolution: "on-finished@npm:2.4.1" - dependencies: - ee-first: "npm:1.1.1" - checksum: 10c0/46fb11b9063782f2d9968863d9cbba33d77aa13c17f895f56129c274318b86500b22af3a160fe9995aa41317efcd22941b6eba747f718ced08d9a73afdb087b4 - languageName: node - linkType: hard - -"once@npm:^1.3.0, once@npm:^1.3.1, once@npm:^1.4.0": - version: 1.4.0 - resolution: "once@npm:1.4.0" - dependencies: - wrappy: "npm:1" - checksum: 10c0/5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0 - languageName: node - linkType: hard - -"optionator@npm:^0.9.3": - version: 0.9.4 - resolution: "optionator@npm:0.9.4" - dependencies: - deep-is: "npm:^0.1.3" - fast-levenshtein: "npm:^2.0.6" - levn: "npm:^0.4.1" - prelude-ls: "npm:^1.2.1" - type-check: "npm:^0.4.0" - word-wrap: "npm:^1.2.5" - checksum: 10c0/4afb687a059ee65b61df74dfe87d8d6815cd6883cb8b3d5883a910df72d0f5d029821f37025e4bccf4048873dbdb09acc6d303d27b8f76b1a80dd5a7d5334675 - languageName: node - linkType: hard - -"os-locale@npm:^3.1.0": - version: 3.1.0 - resolution: "os-locale@npm:3.1.0" - dependencies: - execa: "npm:^1.0.0" - lcid: "npm:^2.0.0" - mem: "npm:^4.0.0" - checksum: 10c0/db017958884d111af9060613f55aa8a41d67d7210a96cd8e20ac2bc93daed945f6d6dbb0e2085355fe954258fe42e82bfc180c5b6bdbc90151d135d435dde2da - languageName: node - linkType: hard - -"os-tmpdir@npm:~1.0.2": - version: 1.0.2 - resolution: "os-tmpdir@npm:1.0.2" - checksum: 10c0/f438450224f8e2687605a8dd318f0db694b6293c5d835ae509a69e97c8de38b6994645337e5577f5001115470414638978cc49da1cdcc25106dad8738dc69990 - languageName: node - linkType: hard - -"own-keys@npm:^1.0.1": - version: 1.0.1 - resolution: "own-keys@npm:1.0.1" - dependencies: - get-intrinsic: "npm:^1.2.6" - object-keys: "npm:^1.1.1" - safe-push-apply: "npm:^1.0.0" - checksum: 10c0/6dfeb3455bff92ec3f16a982d4e3e65676345f6902d9f5ded1d8265a6318d0200ce461956d6d1c70053c7fe9f9fe65e552faac03f8140d37ef0fdd108e67013a - languageName: node - linkType: hard - -"p-defer@npm:^1.0.0": - version: 1.0.0 - resolution: "p-defer@npm:1.0.0" - checksum: 10c0/ed603c3790e74b061ac2cb07eb6e65802cf58dce0fbee646c113a7b71edb711101329ad38f99e462bd2e343a74f6e9366b496a35f1d766c187084d3109900487 - languageName: node - linkType: hard - -"p-finally@npm:^1.0.0": - version: 1.0.0 - resolution: "p-finally@npm:1.0.0" - checksum: 10c0/6b8552339a71fe7bd424d01d8451eea92d379a711fc62f6b2fe64cad8a472c7259a236c9a22b4733abca0b5666ad503cb497792a0478c5af31ded793d00937e7 - languageName: node - linkType: hard - -"p-is-promise@npm:^2.0.0": - version: 2.1.0 - resolution: "p-is-promise@npm:2.1.0" - checksum: 10c0/115c50960739c26e9b3e8a3bd453341a3b02a2e5ba41109b904ff53deb0b941ef81b196e106dc11f71698f591b23055c82d81188b7b670e9d5e28bc544b0674d - languageName: node - linkType: hard - -"p-limit@npm:^2.0.0": - version: 2.3.0 - resolution: "p-limit@npm:2.3.0" - dependencies: - p-try: "npm:^2.0.0" - checksum: 10c0/8da01ac53efe6a627080fafc127c873da40c18d87b3f5d5492d465bb85ec7207e153948df6b9cbaeb130be70152f874229b8242ee2be84c0794082510af97f12 - languageName: node - linkType: hard - -"p-limit@npm:^3.0.2": - version: 3.1.0 - resolution: "p-limit@npm:3.1.0" - dependencies: - yocto-queue: "npm:^0.1.0" - checksum: 10c0/9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a - languageName: node - linkType: hard - -"p-locate@npm:^3.0.0": - version: 3.0.0 - resolution: "p-locate@npm:3.0.0" - dependencies: - p-limit: "npm:^2.0.0" - checksum: 10c0/7b7f06f718f19e989ce6280ed4396fb3c34dabdee0df948376483032f9d5ec22fdf7077ec942143a75827bb85b11da72016497fc10dac1106c837ed593969ee8 - languageName: node - linkType: hard - -"p-locate@npm:^5.0.0": - version: 5.0.0 - resolution: "p-locate@npm:5.0.0" - dependencies: - p-limit: "npm:^3.0.2" - checksum: 10c0/2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a - languageName: node - linkType: hard - -"p-map@npm:^4.0.0": - version: 4.0.0 - resolution: "p-map@npm:4.0.0" - dependencies: - aggregate-error: "npm:^3.0.0" - checksum: 10c0/592c05bd6262c466ce269ff172bb8de7c6975afca9b50c975135b974e9bdaafbfe80e61aaaf5be6d1200ba08b30ead04b88cfa7e25ff1e3b93ab28c9f62a2c75 - languageName: node - linkType: hard - -"p-map@npm:^7.0.2": - version: 7.0.4 - resolution: "p-map@npm:7.0.4" - checksum: 10c0/a5030935d3cb2919d7e89454d1ce82141e6f9955413658b8c9403cfe379283770ed3048146b44cde168aa9e8c716505f196d5689db0ae3ce9a71521a2fef3abd - languageName: node - linkType: hard - -"p-try@npm:^2.0.0": - version: 2.2.0 - resolution: "p-try@npm:2.2.0" - checksum: 10c0/c36c19907734c904b16994e6535b02c36c2224d433e01a2f1ab777237f4d86e6289fd5fd464850491e940379d4606ed850c03e0f9ab600b0ebddb511312e177f - languageName: node - linkType: hard - -"parent-module@npm:^1.0.0": - version: 1.0.1 - resolution: "parent-module@npm:1.0.1" - dependencies: - callsites: "npm:^3.0.0" - checksum: 10c0/c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556 - languageName: node - linkType: hard - -"parse-cache-control@npm:^1.0.1": - version: 1.0.1 - resolution: "parse-cache-control@npm:1.0.1" - checksum: 10c0/330a0d9e3a22a7b0f6e8a973c0b9f51275642ee28544cd0d546420273946d555d20a5c7b49fca24d68d2e698bae0186f0f41f48d62133d3153c32454db05f2df - languageName: node - linkType: hard - -"parseurl@npm:~1.3.3": - version: 1.3.3 - resolution: "parseurl@npm:1.3.3" - checksum: 10c0/90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5 - languageName: node - linkType: hard - -"path-browserify@npm:^1.0.0": - version: 1.0.1 - resolution: "path-browserify@npm:1.0.1" - checksum: 10c0/8b8c3fd5c66bd340272180590ae4ff139769e9ab79522e2eb82e3d571a89b8117c04147f65ad066dccfb42fcad902e5b7d794b3d35e0fd840491a8ddbedf8c66 - languageName: node - linkType: hard - -"path-exists@npm:^3.0.0": - version: 3.0.0 - resolution: "path-exists@npm:3.0.0" - checksum: 10c0/17d6a5664bc0a11d48e2b2127d28a0e58822c6740bde30403f08013da599182289c56518bec89407e3f31d3c2b6b296a4220bc3f867f0911fee6952208b04167 - languageName: node - linkType: hard - -"path-exists@npm:^4.0.0": - version: 4.0.0 - resolution: "path-exists@npm:4.0.0" - checksum: 10c0/8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b - languageName: node - linkType: hard - -"path-is-absolute@npm:^1.0.0": - version: 1.0.1 - resolution: "path-is-absolute@npm:1.0.1" - checksum: 10c0/127da03c82172a2a50099cddbf02510c1791fc2cc5f7713ddb613a56838db1e8168b121a920079d052e0936c23005562059756d653b7c544c53185efe53be078 - languageName: node - linkType: hard - -"path-key@npm:^2.0.0, path-key@npm:^2.0.1": - version: 2.0.1 - resolution: "path-key@npm:2.0.1" - checksum: 10c0/dd2044f029a8e58ac31d2bf34c34b93c3095c1481942960e84dd2faa95bbb71b9b762a106aead0646695330936414b31ca0bd862bf488a937ad17c8c5d73b32b - languageName: node - linkType: hard - -"path-key@npm:^3.1.0": - version: 3.1.1 - resolution: "path-key@npm:3.1.1" - checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c - languageName: node - linkType: hard - -"path-parse@npm:^1.0.6": - version: 1.0.7 - resolution: "path-parse@npm:1.0.7" - checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1 - languageName: node - linkType: hard - -"path-scurry@npm:^1.7.0": - version: 1.11.1 - resolution: "path-scurry@npm:1.11.1" - dependencies: - lru-cache: "npm:^10.2.0" - minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" - checksum: 10c0/32a13711a2a505616ae1cc1b5076801e453e7aae6ac40ab55b388bb91b9d0547a52f5aaceff710ea400205f18691120d4431e520afbe4266b836fadede15872d - languageName: node - linkType: hard - -"path-scurry@npm:^2.0.0": - version: 2.0.1 - resolution: "path-scurry@npm:2.0.1" - dependencies: - lru-cache: "npm:^11.0.0" - minipass: "npm:^7.1.2" - checksum: 10c0/2a16ed0e81fbc43513e245aa5763354e25e787dab0d539581a6c3f0f967461a159ed6236b2559de23aa5b88e7dc32b469b6c47568833dd142a4b24b4f5cd2620 - languageName: node - linkType: hard - -"path-to-regexp@npm:~0.1.12": - version: 0.1.12 - resolution: "path-to-regexp@npm:0.1.12" - checksum: 10c0/1c6ff10ca169b773f3bba943bbc6a07182e332464704572962d277b900aeee81ac6aa5d060ff9e01149636c30b1f63af6e69dd7786ba6e0ddb39d4dee1f0645b - languageName: node - linkType: hard - -"pathval@npm:^1.1.1": - version: 1.1.1 - resolution: "pathval@npm:1.1.1" - checksum: 10c0/f63e1bc1b33593cdf094ed6ff5c49c1c0dc5dc20a646ca9725cc7fe7cd9995002d51d5685b9b2ec6814342935748b711bafa840f84c0bb04e38ff40a335c94dc - languageName: node - linkType: hard - -"pbkdf2@npm:^3.0.17, pbkdf2@npm:^3.0.9": - version: 3.1.5 - resolution: "pbkdf2@npm:3.1.5" - dependencies: - create-hash: "npm:^1.2.0" - create-hmac: "npm:^1.1.7" - ripemd160: "npm:^2.0.3" - safe-buffer: "npm:^5.2.1" - sha.js: "npm:^2.4.12" - to-buffer: "npm:^1.2.1" - checksum: 10c0/ea42e8695e49417eefabb19a08ab19a602cc6cc72d2df3f109c39309600230dee3083a6f678d5d42fe035d6ae780038b80ace0e68f9792ee2839bf081fe386f3 - languageName: node - linkType: hard - -"performance-now@npm:^2.1.0": - version: 2.1.0 - resolution: "performance-now@npm:2.1.0" - checksum: 10c0/22c54de06f269e29f640e0e075207af57de5052a3d15e360c09b9a8663f393f6f45902006c1e71aa8a5a1cdfb1a47fe268826f8496d6425c362f00f5bc3e85d9 - languageName: node - linkType: hard - -"picocolors@npm:^1.1.0": - version: 1.1.1 - resolution: "picocolors@npm:1.1.1" - checksum: 10c0/e2e3e8170ab9d7c7421969adaa7e1b31434f789afb9b3f115f6b96d91945041ac3ceb02e9ec6fe6510ff036bcc0bf91e69a1772edc0b707e12b19c0f2d6bcf58 - languageName: node - linkType: hard - -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1": - version: 2.3.1 - resolution: "picomatch@npm:2.3.1" - checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be - languageName: node - linkType: hard - -"picomatch@npm:^4.0.3": - version: 4.0.3 - resolution: "picomatch@npm:4.0.3" - checksum: 10c0/9582c951e95eebee5434f59e426cddd228a7b97a0161a375aed4be244bd3fe8e3a31b846808ea14ef2c8a2527a6eeab7b3946a67d5979e81694654f939473ae2 - languageName: node - linkType: hard - -"possible-typed-array-names@npm:^1.0.0": - version: 1.1.0 - resolution: "possible-typed-array-names@npm:1.1.0" - checksum: 10c0/c810983414142071da1d644662ce4caebce890203eb2bc7bf119f37f3fe5796226e117e6cca146b521921fa6531072674174a3325066ac66fce089a53e1e5196 - languageName: node - linkType: hard - -"prelude-ls@npm:^1.2.1": - version: 1.2.1 - resolution: "prelude-ls@npm:1.2.1" - checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd - languageName: node - linkType: hard - -"prettier-plugin-solidity@npm:^1.4.3": - version: 1.4.3 - resolution: "prettier-plugin-solidity@npm:1.4.3" - dependencies: - "@solidity-parser/parser": "npm:^0.20.1" - semver: "npm:^7.7.1" - peerDependencies: - prettier: ">=2.3.0" - checksum: 10c0/461fd5a7fa2a46e9f6ef46db0ad07f2f51b8e7c7f9cddc6c642b2af027d822f1b1f79185cb42b02bf09b6ba8f9130048e00bc260b6bfe53c736ee7a773b10231 - languageName: node - linkType: hard - -"prettier@npm:^2.3.1": - version: 2.8.8 - resolution: "prettier@npm:2.8.8" - bin: - prettier: bin-prettier.js - checksum: 10c0/463ea8f9a0946cd5b828d8cf27bd8b567345cf02f56562d5ecde198b91f47a76b7ac9eae0facd247ace70e927143af6135e8cf411986b8cb8478784a4d6d724a - languageName: node - linkType: hard - -"prettier@npm:^3.5.3": - version: 3.7.4 - resolution: "prettier@npm:3.7.4" - bin: - prettier: bin/prettier.cjs - checksum: 10c0/9675d2cd08eacb1faf1d1a2dbfe24bfab6a912b059fc9defdb380a408893d88213e794a40a2700bd29b140eb3172e0b07c852853f6e22f16f3374659a1a13389 - languageName: node - linkType: hard - -"proc-log@npm:^6.0.0": - version: 6.1.0 - resolution: "proc-log@npm:6.1.0" - checksum: 10c0/4f178d4062733ead9d71a9b1ab24ebcecdfe2250916a5b1555f04fe2eda972a0ec76fbaa8df1ad9c02707add6749219d118a4fc46dc56bdfe4dde4b47d80bb82 - languageName: node - linkType: hard - -"process-nextick-args@npm:~2.0.0": - version: 2.0.1 - resolution: "process-nextick-args@npm:2.0.1" - checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367 - languageName: node - linkType: hard - -"promise-retry@npm:^2.0.1": - version: 2.0.1 - resolution: "promise-retry@npm:2.0.1" - dependencies: - err-code: "npm:^2.0.2" - retry: "npm:^0.12.0" - checksum: 10c0/9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96 - languageName: node - linkType: hard - -"promise@npm:^8.0.0": - version: 8.3.0 - resolution: "promise@npm:8.3.0" - dependencies: - asap: "npm:~2.0.6" - checksum: 10c0/6fccae27a10bcce7442daf090279968086edd2e3f6cebe054b71816403e2526553edf510d13088a4d0f14d7dfa9b9dfb188cab72d6f942e186a4353b6a29c8bf - languageName: node - linkType: hard - -"proper-lockfile@npm:^4.1.1": - version: 4.1.2 - resolution: "proper-lockfile@npm:4.1.2" - dependencies: - graceful-fs: "npm:^4.2.4" - retry: "npm:^0.12.0" - signal-exit: "npm:^3.0.2" - checksum: 10c0/2f265dbad15897a43110a02dae55105c04d356ec4ed560723dcb9f0d34bc4fb2f13f79bb930e7561be10278e2314db5aca2527d5d3dcbbdee5e6b331d1571f6d - languageName: node - linkType: hard - -"proxy-addr@npm:~2.0.7": - version: 2.0.7 - resolution: "proxy-addr@npm:2.0.7" - dependencies: - forwarded: "npm:0.2.0" - ipaddr.js: "npm:1.9.1" - checksum: 10c0/c3eed999781a35f7fd935f398b6d8920b6fb00bbc14287bc6de78128ccc1a02c89b95b56742bf7cf0362cc333c61d138532049c7dedc7a328ef13343eff81210 - languageName: node - linkType: hard - -"proxy-from-env@npm:^1.1.0": - version: 1.1.0 - resolution: "proxy-from-env@npm:1.1.0" - checksum: 10c0/fe7dd8b1bdbbbea18d1459107729c3e4a2243ca870d26d34c2c1bcd3e4425b7bcc5112362df2d93cc7fb9746f6142b5e272fd1cc5c86ddf8580175186f6ad42b - languageName: node - linkType: hard - -"prr@npm:~1.0.1": - version: 1.0.1 - resolution: "prr@npm:1.0.1" - checksum: 10c0/5b9272c602e4f4472a215e58daff88f802923b84bc39c8860376bb1c0e42aaf18c25d69ad974bd06ec6db6f544b783edecd5502cd3d184748d99080d68e4be5f - languageName: node - linkType: hard - -"psl@npm:^1.1.28": - version: 1.15.0 - resolution: "psl@npm:1.15.0" - dependencies: - punycode: "npm:^2.3.1" - checksum: 10c0/d8d45a99e4ca62ca12ac3c373e63d80d2368d38892daa40cfddaa1eb908be98cd549ac059783ef3a56cfd96d57ae8e2fd9ae53d1378d90d42bc661ff924e102a - languageName: node - linkType: hard - -"pump@npm:^3.0.0": - version: 3.0.3 - resolution: "pump@npm:3.0.3" - dependencies: - end-of-stream: "npm:^1.1.0" - once: "npm:^1.3.1" - checksum: 10c0/ada5cdf1d813065bbc99aa2c393b8f6beee73b5de2890a8754c9f488d7323ffd2ca5f5a0943b48934e3fcbd97637d0337369c3c631aeb9614915db629f1c75c9 - languageName: node - linkType: hard - -"punycode@npm:^1.4.1": - version: 1.4.1 - resolution: "punycode@npm:1.4.1" - checksum: 10c0/354b743320518aef36f77013be6e15da4db24c2b4f62c5f1eb0529a6ed02fbaf1cb52925785f6ab85a962f2b590d9cd5ad730b70da72b5f180e2556b8bd3ca08 - languageName: node - linkType: hard - -"punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.1": - version: 2.3.1 - resolution: "punycode@npm:2.3.1" - checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9 - languageName: node - linkType: hard - -"qs@npm:^6.12.3, qs@npm:^6.4.0, qs@npm:~6.14.0": - version: 6.14.1 - resolution: "qs@npm:6.14.1" - dependencies: - side-channel: "npm:^1.1.0" - checksum: 10c0/0e3b22dc451f48ce5940cbbc7c7d9068d895074f8c969c0801ac15c1313d1859c4d738e46dc4da2f498f41a9ffd8c201bd9fb12df67799b827db94cc373d2613 - languageName: node - linkType: hard - -"qs@npm:~6.5.2": - version: 6.5.3 - resolution: "qs@npm:6.5.3" - checksum: 10c0/6631d4f2fa9d315e480662646745a4aa3a708817fbffe2cbdacec8ab9be130f92740c66191770fe9b704bc5fa9c1cc1f6596f55ad132fef7bd3ad1582f199eb0 - languageName: node - linkType: hard - -"queue-microtask@npm:^1.2.3": - version: 1.2.3 - resolution: "queue-microtask@npm:1.2.3" - checksum: 10c0/900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102 - languageName: node - linkType: hard - -"randombytes@npm:^2.0.1, randombytes@npm:^2.1.0": - version: 2.1.0 - resolution: "randombytes@npm:2.1.0" - dependencies: - safe-buffer: "npm:^5.1.0" - checksum: 10c0/50395efda7a8c94f5dffab564f9ff89736064d32addf0cc7e8bf5e4166f09f8ded7a0849ca6c2d2a59478f7d90f78f20d8048bca3cdf8be09d8e8a10790388f3 - languageName: node - linkType: hard - -"range-parser@npm:~1.2.1": - version: 1.2.1 - resolution: "range-parser@npm:1.2.1" - checksum: 10c0/96c032ac2475c8027b7a4e9fe22dc0dfe0f6d90b85e496e0f016fbdb99d6d066de0112e680805075bd989905e2123b3b3d002765149294dce0c1f7f01fcc2ea0 - languageName: node - linkType: hard - -"raw-body@npm:^2.4.1, raw-body@npm:~2.5.3": - version: 2.5.3 - resolution: "raw-body@npm:2.5.3" - dependencies: - bytes: "npm:~3.1.2" - http-errors: "npm:~2.0.1" - iconv-lite: "npm:~0.4.24" - unpipe: "npm:~1.0.0" - checksum: 10c0/449844344fc90547fb994383a494b83300e4f22199f146a79f68d78a199a8f2a923ea9fd29c3be979bfd50291a3884733619ffc15ba02a32e703b612f8d3f74a - languageName: node - linkType: hard - -"readable-stream@npm:^2.2.2, readable-stream@npm:^2.3.8": - version: 2.3.8 - resolution: "readable-stream@npm:2.3.8" - dependencies: - core-util-is: "npm:~1.0.0" - inherits: "npm:~2.0.3" - isarray: "npm:~1.0.0" - process-nextick-args: "npm:~2.0.0" - safe-buffer: "npm:~5.1.1" - string_decoder: "npm:~1.1.1" - util-deprecate: "npm:~1.0.1" - checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa - languageName: node - linkType: hard - -"readable-stream@npm:^3.1.0, readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0": - version: 3.6.2 - resolution: "readable-stream@npm:3.6.2" - dependencies: - inherits: "npm:^2.0.3" - string_decoder: "npm:^1.1.1" - util-deprecate: "npm:^1.0.1" - checksum: 10c0/e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7 - languageName: node - linkType: hard - -"readdirp@npm:^4.0.1": - version: 4.1.2 - resolution: "readdirp@npm:4.1.2" - checksum: 10c0/60a14f7619dec48c9c850255cd523e2717001b0e179dc7037cfa0895da7b9e9ab07532d324bfb118d73a710887d1e35f79c495fa91582784493e085d18c72c62 - languageName: node - linkType: hard - -"readdirp@npm:~3.2.0": - version: 3.2.0 - resolution: "readdirp@npm:3.2.0" - dependencies: - picomatch: "npm:^2.0.4" - checksum: 10c0/249d49fc31132bb2cd8fe37aceeab3ca4995e2d548effe0af69d0d55593d38c6f83f6e0c9606e4d0acdba9bfc64245fe45265128170ad4545a7a4efffbd330c2 - languageName: node - linkType: hard - -"readdirp@npm:~3.6.0": - version: 3.6.0 - resolution: "readdirp@npm:3.6.0" - dependencies: - picomatch: "npm:^2.2.1" - checksum: 10c0/6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b - languageName: node - linkType: hard - -"readline-sync@npm:^1.4.10": - version: 1.4.10 - resolution: "readline-sync@npm:1.4.10" - checksum: 10c0/0a4d0fe4ad501f8f005a3c9cbf3cc0ae6ca2ced93e9a1c7c46f226bdfcb6ef5d3f437ae7e9d2e1098ee13524a3739c830e4c8dbc7f543a693eecd293e41093a3 - languageName: node - linkType: hard - -"reduce-flatten@npm:^2.0.0": - version: 2.0.0 - resolution: "reduce-flatten@npm:2.0.0" - checksum: 10c0/9275064535bc070a787824c835a4f18394942f8a78f08e69fb500920124ce1c46a287c8d9e565a7ffad8104875a6feda14efa8e951e8e4585370b8ff007b0abd - languageName: node - linkType: hard - -"reflect.getprototypeof@npm:^1.0.6, reflect.getprototypeof@npm:^1.0.9": - version: 1.0.10 - resolution: "reflect.getprototypeof@npm:1.0.10" - dependencies: - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.9" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.7" - get-proto: "npm:^1.0.1" - which-builtin-type: "npm:^1.2.1" - checksum: 10c0/7facec28c8008876f8ab98e80b7b9cb4b1e9224353fd4756dda5f2a4ab0d30fa0a5074777c6df24e1e0af463a2697513b0a11e548d99cf52f21f7bc6ba48d3ac - languageName: node - linkType: hard - -"regexp.prototype.flags@npm:^1.5.4": - version: 1.5.4 - resolution: "regexp.prototype.flags@npm:1.5.4" - dependencies: - call-bind: "npm:^1.0.8" - define-properties: "npm:^1.2.1" - es-errors: "npm:^1.3.0" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - set-function-name: "npm:^2.0.2" - checksum: 10c0/83b88e6115b4af1c537f8dabf5c3744032cb875d63bc05c288b1b8c0ef37cbe55353f95d8ca817e8843806e3e150b118bc624e4279b24b4776b4198232735a77 - languageName: node - linkType: hard - -"req-cwd@npm:^2.0.0": - version: 2.0.0 - resolution: "req-cwd@npm:2.0.0" - dependencies: - req-from: "npm:^2.0.0" - checksum: 10c0/9cefc80353594b07d1a31d7ee4e4b5c7252f054f0fda7d5caf038c1cb5aa4b322acb422de7e18533734e8557f5769c2318f3ee9256e2e4f4e359b9b776c7ed1a - languageName: node - linkType: hard - -"req-from@npm:^2.0.0": - version: 2.0.0 - resolution: "req-from@npm:2.0.0" - dependencies: - resolve-from: "npm:^3.0.0" - checksum: 10c0/84aa6b4f7291675d9443ac156139841c7c1ae7eccf080f3b344972d6470170b0c32682656c560763b330d00e133196bcfdb1fcb4c5031f59ecbe80dea4dd1c82 - languageName: node - linkType: hard - -"request-promise-core@npm:1.1.4": - version: 1.1.4 - resolution: "request-promise-core@npm:1.1.4" - dependencies: - lodash: "npm:^4.17.19" - peerDependencies: - request: ^2.34 - checksum: 10c0/103eb9043450b9312c005ed859c2150825a555b72e4c0a83841f6793d368eddeacde425f8688effa215eb3eb14ff8c486a3c3e80f6246e9c195628db2bf9020e - languageName: node - linkType: hard - -"request-promise-native@npm:^1.0.5": - version: 1.0.9 - resolution: "request-promise-native@npm:1.0.9" - dependencies: - request-promise-core: "npm:1.1.4" - stealthy-require: "npm:^1.1.1" - tough-cookie: "npm:^2.3.3" - peerDependencies: - request: ^2.34 - checksum: 10c0/e4edae38675c3492a370fd7a44718df3cc8357993373156a66cb329fcde7480a2652591279cd48ba52326ea529ee99805da37119ad91563a901d3fba0ab5be92 - languageName: node - linkType: hard - -"request@npm:^2.85.0, request@npm:^2.88.0": - version: 2.88.2 - resolution: "request@npm:2.88.2" - dependencies: - aws-sign2: "npm:~0.7.0" - aws4: "npm:^1.8.0" - caseless: "npm:~0.12.0" - combined-stream: "npm:~1.0.6" - extend: "npm:~3.0.2" - forever-agent: "npm:~0.6.1" - form-data: "npm:~2.3.2" - har-validator: "npm:~5.1.3" - http-signature: "npm:~1.2.0" - is-typedarray: "npm:~1.0.0" - isstream: "npm:~0.1.2" - json-stringify-safe: "npm:~5.0.1" - mime-types: "npm:~2.1.19" - oauth-sign: "npm:~0.9.0" - performance-now: "npm:^2.1.0" - qs: "npm:~6.5.2" - safe-buffer: "npm:^5.1.2" - tough-cookie: "npm:~2.5.0" - tunnel-agent: "npm:^0.6.0" - uuid: "npm:^3.3.2" - checksum: 10c0/0ec66e7af1391e51ad231de3b1c6c6aef3ebd0a238aa50d4191c7a792dcdb14920eea8d570c702dc5682f276fe569d176f9b8ebc6031a3cf4a630a691a431a63 - languageName: node - linkType: hard - -"require-directory@npm:^2.1.1": - version: 2.1.1 - resolution: "require-directory@npm:2.1.1" - checksum: 10c0/83aa76a7bc1531f68d92c75a2ca2f54f1b01463cb566cf3fbc787d0de8be30c9dbc211d1d46be3497dac5785fe296f2dd11d531945ac29730643357978966e99 - languageName: node - linkType: hard - -"require-from-string@npm:^2.0.2": - version: 2.0.2 - resolution: "require-from-string@npm:2.0.2" - checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2 - languageName: node - linkType: hard - -"require-main-filename@npm:^2.0.0": - version: 2.0.0 - resolution: "require-main-filename@npm:2.0.0" - checksum: 10c0/db91467d9ead311b4111cbd73a4e67fa7820daed2989a32f7023785a2659008c6d119752d9c4ac011ae07e537eb86523adff99804c5fdb39cd3a017f9b401bb6 - languageName: node - linkType: hard - -"resolve-from@npm:^3.0.0": - version: 3.0.0 - resolution: "resolve-from@npm:3.0.0" - checksum: 10c0/24affcf8e81f4c62f0dcabc774afe0e19c1f38e34e43daac0ddb409d79435fc3037f612b0cc129178b8c220442c3babd673e88e870d27215c99454566e770ebc - languageName: node - linkType: hard - -"resolve-from@npm:^4.0.0": - version: 4.0.0 - resolution: "resolve-from@npm:4.0.0" - checksum: 10c0/8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190 - languageName: node - linkType: hard - -"resolve@npm:1.17.0": - version: 1.17.0 - resolution: "resolve@npm:1.17.0" - dependencies: - path-parse: "npm:^1.0.6" - checksum: 10c0/4e6c76cc1a7b08bff637b092ce035d7901465067915605bc5a23ac0c10fe42ec205fc209d5d5f7a5f27f37ce71d687def7f656bbb003631cd46a8374f55ec73d - languageName: node - linkType: hard - -"resolve@patch:resolve@npm%3A1.17.0#optional!builtin": - version: 1.17.0 - resolution: "resolve@patch:resolve@npm%3A1.17.0#optional!builtin::version=1.17.0&hash=c3c19d" - dependencies: - path-parse: "npm:^1.0.6" - checksum: 10c0/e072e52be3c3dbfd086761115db4a5136753e7aefc0e665e66e7307ddcd9d6b740274516055c74aee44921625e95993f03570450aa310b8d73b1c9daa056c4cd - languageName: node - linkType: hard - -"retry@npm:0.13.1": - version: 0.13.1 - resolution: "retry@npm:0.13.1" - checksum: 10c0/9ae822ee19db2163497e074ea919780b1efa00431d197c7afdb950e42bf109196774b92a49fc9821f0b8b328a98eea6017410bfc5e8a0fc19c85c6d11adb3772 - languageName: node - linkType: hard - -"retry@npm:^0.12.0": - version: 0.12.0 - resolution: "retry@npm:0.12.0" - checksum: 10c0/59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe - languageName: node - linkType: hard - -"ripemd160@npm:^2.0.0, ripemd160@npm:^2.0.1, ripemd160@npm:^2.0.3": - version: 2.0.3 - resolution: "ripemd160@npm:2.0.3" - dependencies: - hash-base: "npm:^3.1.2" - inherits: "npm:^2.0.4" - checksum: 10c0/3f472fb453241cfe692a77349accafca38dbcdc9d96d5848c088b2932ba41eb968630ecff7b175d291c7487a4945aee5a81e30c064d1f94e36070f7e0c37ed6c - languageName: node - linkType: hard - -"rlp@npm:2.2.6": - version: 2.2.6 - resolution: "rlp@npm:2.2.6" - dependencies: - bn.js: "npm:^4.11.1" - bin: - rlp: bin/rlp - checksum: 10c0/e12b57bf74c44d94c7d9d6273655e0afa46844d89738ee34ebdcf00bc699f0025309759e834b4fbd3e9fdf54a0fbc9a5e4aa7cae49bbf33aaf76e4c01e643f66 - languageName: node - linkType: hard - -"rlp@npm:^2.2.3, rlp@npm:^2.2.4": - version: 2.2.7 - resolution: "rlp@npm:2.2.7" - dependencies: - bn.js: "npm:^5.2.0" - bin: - rlp: bin/rlp - checksum: 10c0/166c449f4bc794d47f8e337bf0ffbcfdb26c33109030aac4b6e5a33a91fa85783f2290addeb7b3c89d6d9b90c8276e719494d193129bed0a60a2d4a6fd658277 - languageName: node - linkType: hard - -"rustbn.js@npm:~0.2.0": - version: 0.2.0 - resolution: "rustbn.js@npm:0.2.0" - checksum: 10c0/be2d55d4a53465cfd5c7900153cfae54c904f0941acd30191009cf473cacbfcf45082ffd8dc473a354c8e3dcfe2c2bdf5d7ea9cc9b188d892b4aa8d012b94701 - languageName: node - linkType: hard - -"safe-array-concat@npm:^1.1.3": - version: 1.1.3 - resolution: "safe-array-concat@npm:1.1.3" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.6" - has-symbols: "npm:^1.1.0" - isarray: "npm:^2.0.5" - checksum: 10c0/43c86ffdddc461fb17ff8a17c5324f392f4868f3c7dd2c6a5d9f5971713bc5fd755667212c80eab9567595f9a7509cc2f83e590ddaebd1bd19b780f9c79f9a8d - languageName: node - linkType: hard - -"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.1, safe-buffer@npm:~5.2.0": - version: 5.2.1 - resolution: "safe-buffer@npm:5.2.1" - checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 - languageName: node - linkType: hard - -"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21 - languageName: node - linkType: hard - -"safe-push-apply@npm:^1.0.0": - version: 1.0.0 - resolution: "safe-push-apply@npm:1.0.0" - dependencies: - es-errors: "npm:^1.3.0" - isarray: "npm:^2.0.5" - checksum: 10c0/831f1c9aae7436429e7862c7e46f847dfe490afac20d0ee61bae06108dbf5c745a0de3568ada30ccdd3eeb0864ca8331b2eef703abd69bfea0745b21fd320750 - languageName: node - linkType: hard - -"safe-regex-test@npm:^1.1.0": - version: 1.1.0 - resolution: "safe-regex-test@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - is-regex: "npm:^1.2.1" - checksum: 10c0/f2c25281bbe5d39cddbbce7f86fca5ea9b3ce3354ea6cd7c81c31b006a5a9fff4286acc5450a3b9122c56c33eba69c56b9131ad751457b2b4a585825e6a10665 - languageName: node - linkType: hard - -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": - version: 2.1.2 - resolution: "safer-buffer@npm:2.1.2" - checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4 - languageName: node - linkType: hard - -"scrypt-js@npm:2.0.4": - version: 2.0.4 - resolution: "scrypt-js@npm:2.0.4" - checksum: 10c0/dc6df482f9befa395b577ea40c5cebe96df8fc5f376d23871c50800eacbec1b0d6a49a03f35e9d4405ceb96f43b8047a8f3f99ce7cda0c727cfc754d9e7060f8 - languageName: node - linkType: hard - -"scrypt-js@npm:3.0.1, scrypt-js@npm:^3.0.0": - version: 3.0.1 - resolution: "scrypt-js@npm:3.0.1" - checksum: 10c0/e2941e1c8b5c84c7f3732b0153fee624f5329fc4e772a06270ee337d4d2df4174b8abb5e6ad53804a29f53890ecbc78f3775a319323568c0313040c0e55f5b10 - languageName: node - linkType: hard - -"secp256k1@npm:4.0.3": - version: 4.0.3 - resolution: "secp256k1@npm:4.0.3" - dependencies: - elliptic: "npm:^6.5.4" - node-addon-api: "npm:^2.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - checksum: 10c0/de0a0e525a6f8eb2daf199b338f0797dbfe5392874285a145bb005a72cabacb9d42c0197d0de129a1a0f6094d2cc4504d1f87acb6a8bbfb7770d4293f252c401 - languageName: node - linkType: hard - -"secp256k1@npm:^4.0.1": - version: 4.0.4 - resolution: "secp256k1@npm:4.0.4" - dependencies: - elliptic: "npm:^6.5.7" - node-addon-api: "npm:^5.0.0" - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.2.0" - checksum: 10c0/cf7a74343566d4774c64332c07fc2caf983c80507f63be5c653ff2205242143d6320c50ee4d793e2b714a56540a79e65a8f0056e343b25b0cdfed878bc473fd8 - languageName: node - linkType: hard - -"seedrandom@npm:3.0.5, seedrandom@npm:^3.0.5": - version: 3.0.5 - resolution: "seedrandom@npm:3.0.5" - checksum: 10c0/929752ac098ff4990b3f8e0ac39136534916e72879d6eb625230141d20db26e2f44c4d03d153d457682e8cbaab0fb7d58a1e7267a157cf23fd8cf34e25044e88 - languageName: node - linkType: hard - -"semaphore-async-await@npm:^1.5.1": - version: 1.5.1 - resolution: "semaphore-async-await@npm:1.5.1" - checksum: 10c0/b5cc7bcbe755fa73d414b6ebabd9b73cec9193988ecb14b489753287acef77f4cf4c4eaa9c2cd942f24ec8e230d26116788c7405b256c39111b75c81e953a92f - languageName: node - linkType: hard - -"semver@npm:^5.5.0, semver@npm:^5.7.0": - version: 5.7.2 - resolution: "semver@npm:5.7.2" - bin: - semver: bin/semver - checksum: 10c0/e4cf10f86f168db772ae95d86ba65b3fd6c5967c94d97c708ccb463b778c2ee53b914cd7167620950fc07faf5a564e6efe903836639e512a1aa15fbc9667fa25 - languageName: node - linkType: hard - -"semver@npm:^6.3.0": - version: 6.3.1 - resolution: "semver@npm:6.3.1" - bin: - semver: bin/semver.js - checksum: 10c0/e3d79b609071caa78bcb6ce2ad81c7966a46a7431d9d58b8800cfa9cb6a63699b3899a0e4bcce36167a284578212d9ae6942b6929ba4aa5015c079a67751d42d - languageName: node - linkType: hard - -"semver@npm:^7.3.5, semver@npm:^7.7.1": - version: 7.7.3 - resolution: "semver@npm:7.7.3" - bin: - semver: bin/semver.js - checksum: 10c0/4afe5c986567db82f44c8c6faef8fe9df2a9b1d98098fc1721f57c696c4c21cebd572f297fc21002f81889492345b8470473bc6f4aff5fb032a6ea59ea2bc45e - languageName: node - linkType: hard - -"send@npm:~0.19.0, send@npm:~0.19.1": - version: 0.19.2 - resolution: "send@npm:0.19.2" - dependencies: - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - fresh: "npm:~0.5.2" - http-errors: "npm:~2.0.1" - mime: "npm:1.6.0" - ms: "npm:2.1.3" - on-finished: "npm:~2.4.1" - range-parser: "npm:~1.2.1" - statuses: "npm:~2.0.2" - checksum: 10c0/20c2389fe0fdf3fc499938cac598bc32272287e993c4960717381a10de8550028feadfb9076f959a3a3ebdea42e1f690e116f0d16468fa56b9fd41866d3dc267 - languageName: node - linkType: hard - -"serialize-javascript@npm:^6.0.2": - version: 6.0.2 - resolution: "serialize-javascript@npm:6.0.2" - dependencies: - randombytes: "npm:^2.1.0" - checksum: 10c0/2dd09ef4b65a1289ba24a788b1423a035581bef60817bea1f01eda8e3bda623f86357665fe7ac1b50f6d4f583f97db9615b3f07b2a2e8cbcb75033965f771dd2 - languageName: node - linkType: hard - -"serve-static@npm:~1.16.2": - version: 1.16.3 - resolution: "serve-static@npm:1.16.3" - dependencies: - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - parseurl: "npm:~1.3.3" - send: "npm:~0.19.1" - checksum: 10c0/36320397a073c71bedf58af48a4a100fe6d93f07459af4d6f08b9a7217c04ce2a4939e0effd842dc7bece93ffcd59eb52f58c4fff2a8e002dc29ae6b219cd42b - languageName: node - linkType: hard - -"set-blocking@npm:^2.0.0": - version: 2.0.0 - resolution: "set-blocking@npm:2.0.0" - checksum: 10c0/9f8c1b2d800800d0b589de1477c753492de5c1548d4ade52f57f1d1f5e04af5481554d75ce5e5c43d4004b80a3eb714398d6907027dc0534177b7539119f4454 - languageName: node - linkType: hard - -"set-function-length@npm:^1.2.2": - version: 1.2.2 - resolution: "set-function-length@npm:1.2.2" - dependencies: - define-data-property: "npm:^1.1.4" - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.4" - gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.2" - checksum: 10c0/82850e62f412a258b71e123d4ed3873fa9377c216809551192bb6769329340176f109c2eeae8c22a8d386c76739855f78e8716515c818bcaef384b51110f0f3c - languageName: node - linkType: hard - -"set-function-name@npm:^2.0.2": - version: 2.0.2 - resolution: "set-function-name@npm:2.0.2" - dependencies: - define-data-property: "npm:^1.1.4" - es-errors: "npm:^1.3.0" - functions-have-names: "npm:^1.2.3" - has-property-descriptors: "npm:^1.0.2" - checksum: 10c0/fce59f90696c450a8523e754abb305e2b8c73586452619c2bad5f7bf38c7b6b4651895c9db895679c5bef9554339cf3ef1c329b66ece3eda7255785fbe299316 - languageName: node - linkType: hard - -"set-proto@npm:^1.0.0": - version: 1.0.0 - resolution: "set-proto@npm:1.0.0" - dependencies: - dunder-proto: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/ca5c3ccbba479d07c30460e367e66337cec825560b11e8ba9c5ebe13a2a0d6021ae34eddf94ff3dfe17a3104dc1f191519cb6c48378b503e5c3f36393938776a - languageName: node - linkType: hard - -"setimmediate@npm:1.0.4": - version: 1.0.4 - resolution: "setimmediate@npm:1.0.4" - checksum: 10c0/78d1098320ac16a5500fc683491665333e16a6a99103c52d0550f0b31b680c6967d405b3d2b6284d99645c373e0d2ed7d2305c924f12de911a74ffb6c2c3eabe - languageName: node - linkType: hard - -"setimmediate@npm:^1.0.5": - version: 1.0.5 - resolution: "setimmediate@npm:1.0.5" - checksum: 10c0/5bae81bfdbfbd0ce992893286d49c9693c82b1bcc00dcaaf3a09c8f428fdeacf4190c013598b81875dfac2b08a572422db7df779a99332d0fce186d15a3e4d49 - languageName: node - linkType: hard - -"setprototypeof@npm:1.2.0, setprototypeof@npm:~1.2.0": - version: 1.2.0 - resolution: "setprototypeof@npm:1.2.0" - checksum: 10c0/68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc - languageName: node - linkType: hard - -"sha.js@npm:^2.4.0, sha.js@npm:^2.4.12, sha.js@npm:^2.4.8": - version: 2.4.12 - resolution: "sha.js@npm:2.4.12" - dependencies: - inherits: "npm:^2.0.4" - safe-buffer: "npm:^5.2.1" - to-buffer: "npm:^1.2.0" - bin: - sha.js: bin.js - checksum: 10c0/9d36bdd76202c8116abbe152a00055ccd8a0099cb28fc17c01fa7bb2c8cffb9ca60e2ab0fe5f274ed6c45dc2633d8c39cf7ab050306c231904512ba9da4d8ab1 - languageName: node - linkType: hard - -"sha1@npm:^1.1.1": - version: 1.1.1 - resolution: "sha1@npm:1.1.1" - dependencies: - charenc: "npm:>= 0.0.1" - crypt: "npm:>= 0.0.1" - checksum: 10c0/1bb36c89c112c741c265cca66712f883ae01d5c55b71aec80635fe2ad5d0c976a1a8a994dda774ae9f93b2da99fd111238758a8bf985adc400bd86f0e4452865 - languageName: node - linkType: hard - -"shebang-command@npm:^1.2.0": - version: 1.2.0 - resolution: "shebang-command@npm:1.2.0" - dependencies: - shebang-regex: "npm:^1.0.0" - checksum: 10c0/7b20dbf04112c456b7fc258622dafd566553184ac9b6938dd30b943b065b21dabd3776460df534cc02480db5e1b6aec44700d985153a3da46e7db7f9bd21326d - languageName: node - linkType: hard - -"shebang-command@npm:^2.0.0": - version: 2.0.0 - resolution: "shebang-command@npm:2.0.0" - dependencies: - shebang-regex: "npm:^3.0.0" - checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e - languageName: node - linkType: hard - -"shebang-regex@npm:^1.0.0": - version: 1.0.0 - resolution: "shebang-regex@npm:1.0.0" - checksum: 10c0/9abc45dee35f554ae9453098a13fdc2f1730e525a5eb33c51f096cc31f6f10a4b38074c1ebf354ae7bffa7229506083844008dfc3bb7818228568c0b2dc1fff2 - languageName: node - linkType: hard - -"shebang-regex@npm:^3.0.0": - version: 3.0.0 - resolution: "shebang-regex@npm:3.0.0" - checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 - languageName: node - linkType: hard - -"side-channel-list@npm:^1.0.0": - version: 1.0.0 - resolution: "side-channel-list@npm:1.0.0" - dependencies: - es-errors: "npm:^1.3.0" - object-inspect: "npm:^1.13.3" - checksum: 10c0/644f4ac893456c9490ff388bf78aea9d333d5e5bfc64cfb84be8f04bf31ddc111a8d4b83b85d7e7e8a7b845bc185a9ad02c052d20e086983cf59f0be517d9b3d - languageName: node - linkType: hard - -"side-channel-map@npm:^1.0.1": - version: 1.0.1 - resolution: "side-channel-map@npm:1.0.1" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.5" - object-inspect: "npm:^1.13.3" - checksum: 10c0/010584e6444dd8a20b85bc926d934424bd809e1a3af941cace229f7fdcb751aada0fb7164f60c2e22292b7fa3c0ff0bce237081fd4cdbc80de1dc68e95430672 - languageName: node - linkType: hard - -"side-channel-weakmap@npm:^1.0.2": - version: 1.0.2 - resolution: "side-channel-weakmap@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.5" - object-inspect: "npm:^1.13.3" - side-channel-map: "npm:^1.0.1" - checksum: 10c0/71362709ac233e08807ccd980101c3e2d7efe849edc51455030327b059f6c4d292c237f94dc0685031dd11c07dd17a68afde235d6cf2102d949567f98ab58185 - languageName: node - linkType: hard - -"side-channel@npm:^1.1.0": - version: 1.1.0 - resolution: "side-channel@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - object-inspect: "npm:^1.13.3" - side-channel-list: "npm:^1.0.0" - side-channel-map: "npm:^1.0.1" - side-channel-weakmap: "npm:^1.0.2" - checksum: 10c0/cb20dad41eb032e6c24c0982e1e5a24963a28aa6122b4f05b3f3d6bf8ae7fd5474ef382c8f54a6a3ab86e0cac4d41a23bd64ede3970e5bfb50326ba02a7996e6 - languageName: node - linkType: hard - -"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2": - version: 3.0.7 - resolution: "signal-exit@npm:3.0.7" - checksum: 10c0/25d272fa73e146048565e08f3309d5b942c1979a6f4a58a8c59d5fa299728e9c2fcd1a759ec870863b1fd38653670240cd420dad2ad9330c71f36608a6a1c912 - languageName: node - linkType: hard - -"signal-exit@npm:^4.0.1": - version: 4.1.0 - resolution: "signal-exit@npm:4.1.0" - checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 - languageName: node - linkType: hard - -"slice-ansi@npm:^4.0.0": - version: 4.0.0 - resolution: "slice-ansi@npm:4.0.0" - dependencies: - ansi-styles: "npm:^4.0.0" - astral-regex: "npm:^2.0.0" - is-fullwidth-code-point: "npm:^3.0.0" - checksum: 10c0/6c25678db1270d4793e0327620f1e0f9f5bea4630123f51e9e399191bc52c87d6e6de53ed33538609e5eacbd1fab769fae00f3705d08d029f02102a540648918 - languageName: node - linkType: hard - -"smart-buffer@npm:^4.2.0": - version: 4.2.0 - resolution: "smart-buffer@npm:4.2.0" - checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539 - languageName: node - linkType: hard - -"socks-proxy-agent@npm:^8.0.3": - version: 8.0.5 - resolution: "socks-proxy-agent@npm:8.0.5" - dependencies: - agent-base: "npm:^7.1.2" - debug: "npm:^4.3.4" - socks: "npm:^2.8.3" - checksum: 10c0/5d2c6cecba6821389aabf18728325730504bf9bb1d9e342e7987a5d13badd7a98838cc9a55b8ed3cb866ad37cc23e1086f09c4d72d93105ce9dfe76330e9d2a6 - languageName: node - linkType: hard - -"socks@npm:^2.8.3": - version: 2.8.7 - resolution: "socks@npm:2.8.7" - dependencies: - ip-address: "npm:^10.0.1" - smart-buffer: "npm:^4.2.0" - checksum: 10c0/2805a43a1c4bcf9ebf6e018268d87b32b32b06fbbc1f9282573583acc155860dc361500f89c73bfbb157caa1b4ac78059eac0ef15d1811eb0ca75e0bdadbc9d2 - languageName: node - linkType: hard - -"solc@npm:0.8.15": - version: 0.8.15 - resolution: "solc@npm:0.8.15" - dependencies: - command-exists: "npm:^1.2.8" - commander: "npm:^8.1.0" - follow-redirects: "npm:^1.12.1" - js-sha3: "npm:0.8.0" - memorystream: "npm:^0.3.1" - semver: "npm:^5.5.0" - tmp: "npm:0.0.33" - bin: - solcjs: solc.js - checksum: 10c0/201a5bd8a7dc0665b839a69ef5efd5be06e6558b884e29cce2631e01225eaf4602da072b99c2809e36c5cc9880f17525107f49c64fa88f493de345f6e81c5e92 - languageName: node - linkType: hard - -"solc@npm:0.8.26": - version: 0.8.26 - resolution: "solc@npm:0.8.26" - dependencies: - command-exists: "npm:^1.2.8" - commander: "npm:^8.1.0" - follow-redirects: "npm:^1.12.1" - js-sha3: "npm:0.8.0" - memorystream: "npm:^0.3.1" - semver: "npm:^5.5.0" - tmp: "npm:0.0.33" - bin: - solcjs: solc.js - checksum: 10c0/1eea35da99c228d0dc1d831c29f7819e7921b67824c889a5e5f2e471a2ef5856a15fabc0b5de067f5ba994fa36fb5a563361963646fe98dad58a0e4fa17c8b2d - languageName: node - linkType: hard - -"solidity-ast@npm:^0.4.60": - version: 0.4.61 - resolution: "solidity-ast@npm:0.4.61" - checksum: 10c0/525f4f2f52d580a23fdaa6975d09e7507074a5892aa0a0964ce3865463392f16a831177856377f7022ba2ea83cff0c18f3513ee8c281ce080aca70fd8e1d5c36 - languageName: node - linkType: hard - -"source-map-support@npm:0.5.12": - version: 0.5.12 - resolution: "source-map-support@npm:0.5.12" - dependencies: - buffer-from: "npm:^1.0.0" - source-map: "npm:^0.6.0" - checksum: 10c0/e37f0dd5e78bae64493cc201a4869ee8bd08f409b372ddb8452aab355dead19e2060a5a2e9c2ab981c6ade45122419562320710fade1b694fe848a48c01c2960 - languageName: node - linkType: hard - -"source-map-support@npm:^0.5.13": - version: 0.5.21 - resolution: "source-map-support@npm:0.5.21" - dependencies: - buffer-from: "npm:^1.0.0" - source-map: "npm:^0.6.0" - checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d - languageName: node - linkType: hard - -"source-map@npm:^0.6.0": - version: 0.6.1 - resolution: "source-map@npm:0.6.1" - checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 - languageName: node - linkType: hard - -"sprintf-js@npm:~1.0.2": - version: 1.0.3 - resolution: "sprintf-js@npm:1.0.3" - checksum: 10c0/ecadcfe4c771890140da5023d43e190b7566d9cf8b2d238600f31bec0fc653f328da4450eb04bd59a431771a8e9cc0e118f0aa3974b683a4981b4e07abc2a5bb - languageName: node - linkType: hard - -"sshpk@npm:^1.7.0": - version: 1.18.0 - resolution: "sshpk@npm:1.18.0" - dependencies: - asn1: "npm:~0.2.3" - assert-plus: "npm:^1.0.0" - bcrypt-pbkdf: "npm:^1.0.0" - dashdash: "npm:^1.12.0" - ecc-jsbn: "npm:~0.1.1" - getpass: "npm:^0.1.1" - jsbn: "npm:~0.1.0" - safer-buffer: "npm:^2.0.2" - tweetnacl: "npm:~0.14.0" - bin: - sshpk-conv: bin/sshpk-conv - sshpk-sign: bin/sshpk-sign - sshpk-verify: bin/sshpk-verify - checksum: 10c0/e516e34fa981cfceef45fd2e947772cc70dbd57523e5c608e2cd73752ba7f8a99a04df7c3ed751588e8d91956b6f16531590b35d3489980d1c54c38bebcd41b1 - languageName: node - linkType: hard - -"ssri@npm:^13.0.0": - version: 13.0.0 - resolution: "ssri@npm:13.0.0" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/405f3a531cd98b013cecb355d63555dca42fd12c7bc6671738aaa9a82882ff41cdf0ef9a2b734ca4f9a760338f114c29d01d9238a65db3ccac27929bd6e6d4b2 - languageName: node - linkType: hard - -"stacktrace-parser@npm:^0.1.10": - version: 0.1.11 - resolution: "stacktrace-parser@npm:0.1.11" - dependencies: - type-fest: "npm:^0.7.1" - checksum: 10c0/4633d9afe8cd2f6c7fb2cebdee3cc8de7fd5f6f9736645fd08c0f66872a303061ce9cc0ccf46f4216dc94a7941b56e331012398dc0024dc25e46b5eb5d4ff018 - languageName: node - linkType: hard - -"statuses@npm:~2.0.1, statuses@npm:~2.0.2": - version: 2.0.2 - resolution: "statuses@npm:2.0.2" - checksum: 10c0/a9947d98ad60d01f6b26727570f3bcceb6c8fa789da64fe6889908fe2e294d57503b14bf2b5af7605c2d36647259e856635cd4c49eab41667658ec9d0080ec3f - languageName: node - linkType: hard - -"stealthy-require@npm:^1.1.1": - version: 1.1.1 - resolution: "stealthy-require@npm:1.1.1" - checksum: 10c0/714b61e152ba03a5e098b5364cc3076d8036edabc2892143fe3c64291194a401b74f071fadebba94551fb013a02f3bcad56a8be29a67b3c644ac78ffda921f80 - languageName: node - linkType: hard - -"stop-iteration-iterator@npm:^1.1.0": - version: 1.1.0 - resolution: "stop-iteration-iterator@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - internal-slot: "npm:^1.1.0" - checksum: 10c0/de4e45706bb4c0354a4b1122a2b8cc45a639e86206807ce0baf390ee9218d3ef181923fa4d2b67443367c491aa255c5fbaa64bb74648e3c5b48299928af86c09 - languageName: node - linkType: hard - -"string-format@npm:^2.0.0": - version: 2.0.0 - resolution: "string-format@npm:2.0.0" - checksum: 10c0/7bca13ba9f942f635c74d637da5e9e375435cbd428f35eeef28c3a30f81d4e63b95ff2c6cca907d897dd3951bbf52e03e3b945a0e9681358e33bd67222436538 - languageName: node - linkType: hard - -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.0.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.2, string-width@npm:^4.2.3": - version: 4.2.3 - resolution: "string-width@npm:4.2.3" - dependencies: - emoji-regex: "npm:^8.0.0" - is-fullwidth-code-point: "npm:^3.0.0" - strip-ansi: "npm:^6.0.1" - checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b - languageName: node - linkType: hard - -"string-width@npm:^1.0.2 || 2, string-width@npm:^2.1.1": - version: 2.1.1 - resolution: "string-width@npm:2.1.1" - dependencies: - is-fullwidth-code-point: "npm:^2.0.0" - strip-ansi: "npm:^4.0.0" - checksum: 10c0/e5f2b169fcf8a4257a399f95d069522f056e92ec97dbdcb9b0cdf14d688b7ca0b1b1439a1c7b9773cd79446cbafd582727279d6bfdd9f8edd306ea5e90e5b610 - languageName: node - linkType: hard - -"string-width@npm:^3.0.0, string-width@npm:^3.1.0": - version: 3.1.0 - resolution: "string-width@npm:3.1.0" - dependencies: - emoji-regex: "npm:^7.0.1" - is-fullwidth-code-point: "npm:^2.0.0" - strip-ansi: "npm:^5.1.0" - checksum: 10c0/85fa0d4f106e7999bb68c1c640c76fa69fb8c069dab75b009e29c123914e2d3b532e6cfa4b9d1bd913176fc83dedd7a2d7bf40d21a81a8a1978432cedfb65b91 - languageName: node - linkType: hard - -"string-width@npm:^5.0.1, string-width@npm:^5.1.2": - version: 5.1.2 - resolution: "string-width@npm:5.1.2" - dependencies: - eastasianwidth: "npm:^0.2.0" - emoji-regex: "npm:^9.2.2" - strip-ansi: "npm:^7.0.1" - checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca - languageName: node - linkType: hard - -"string.prototype.trim@npm:^1.2.10": - version: 1.2.10 - resolution: "string.prototype.trim@npm:1.2.10" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - define-data-property: "npm:^1.1.4" - define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.5" - es-object-atoms: "npm:^1.0.0" - has-property-descriptors: "npm:^1.0.2" - checksum: 10c0/8a8854241c4b54a948e992eb7dd6b8b3a97185112deb0037a134f5ba57541d8248dd610c966311887b6c2fd1181a3877bffb14d873ce937a344535dabcc648f8 - languageName: node - linkType: hard - -"string.prototype.trimend@npm:^1.0.9": - version: 1.0.9 - resolution: "string.prototype.trimend@npm:1.0.9" - dependencies: - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.2" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/59e1a70bf9414cb4c536a6e31bef5553c8ceb0cf44d8b4d0ed65c9653358d1c64dd0ec203b100df83d0413bbcde38b8c5d49e14bc4b86737d74adc593a0d35b6 - languageName: node - linkType: hard - -"string.prototype.trimstart@npm:^1.0.8": - version: 1.0.8 - resolution: "string.prototype.trimstart@npm:1.0.8" - dependencies: - call-bind: "npm:^1.0.7" - define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/d53af1899959e53c83b64a5fd120be93e067da740e7e75acb433849aa640782fb6c7d4cd5b84c954c84413745a3764df135a8afeb22908b86a835290788d8366 - languageName: node - linkType: hard - -"string_decoder@npm:^1.1.1": - version: 1.3.0 - resolution: "string_decoder@npm:1.3.0" - dependencies: - safe-buffer: "npm:~5.2.0" - checksum: 10c0/810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d - languageName: node - linkType: hard - -"string_decoder@npm:~1.1.1": - version: 1.1.1 - resolution: "string_decoder@npm:1.1.1" - dependencies: - safe-buffer: "npm:~5.1.0" - checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e - languageName: node - linkType: hard - -"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": - version: 6.0.1 - resolution: "strip-ansi@npm:6.0.1" - dependencies: - ansi-regex: "npm:^5.0.1" - checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952 - languageName: node - linkType: hard - -"strip-ansi@npm:^4.0.0": - version: 4.0.0 - resolution: "strip-ansi@npm:4.0.0" - dependencies: - ansi-regex: "npm:^3.0.0" - checksum: 10c0/d75d9681e0637ea316ddbd7d4d3be010b1895a17e885155e0ed6a39755ae0fd7ef46e14b22162e66a62db122d3a98ab7917794e255532ab461bb0a04feb03e7d - languageName: node - linkType: hard - -"strip-ansi@npm:^5.0.0, strip-ansi@npm:^5.1.0, strip-ansi@npm:^5.2.0": - version: 5.2.0 - resolution: "strip-ansi@npm:5.2.0" - dependencies: - ansi-regex: "npm:^4.1.0" - checksum: 10c0/de4658c8a097ce3b15955bc6008f67c0790f85748bdc025b7bc8c52c7aee94bc4f9e50624516150ed173c3db72d851826cd57e7a85fe4e4bb6dbbebd5d297fdf - languageName: node - linkType: hard - -"strip-ansi@npm:^7.0.1": - version: 7.1.2 - resolution: "strip-ansi@npm:7.1.2" - dependencies: - ansi-regex: "npm:^6.0.1" - checksum: 10c0/0d6d7a023de33368fd042aab0bf48f4f4077abdfd60e5393e73c7c411e85e1b3a83507c11af2e656188511475776215df9ca589b4da2295c9455cc399ce1858b - languageName: node - linkType: hard - -"strip-eof@npm:^1.0.0": - version: 1.0.0 - resolution: "strip-eof@npm:1.0.0" - checksum: 10c0/f336beed8622f7c1dd02f2cbd8422da9208fae81daf184f73656332899978919d5c0ca84dc6cfc49ad1fc4dd7badcde5412a063cf4e0d7f8ed95a13a63f68f45 - languageName: node - linkType: hard - -"strip-hex-prefix@npm:1.0.0": - version: 1.0.0 - resolution: "strip-hex-prefix@npm:1.0.0" - dependencies: - is-hex-prefixed: "npm:1.0.0" - checksum: 10c0/ec9a48c334c2ba4afff2e8efebb42c3ab5439f0e1ec2b8525e184eabef7fecade7aee444af802b1be55d2df6da5b58c55166c32f8461cc7559b401137ad51851 - languageName: node - linkType: hard - -"strip-json-comments@npm:2.0.1": - version: 2.0.1 - resolution: "strip-json-comments@npm:2.0.1" - checksum: 10c0/b509231cbdee45064ff4f9fd73609e2bcc4e84a4d508e9dd0f31f70356473fde18abfb5838c17d56fb236f5a06b102ef115438de0600b749e818a35fbbc48c43 - languageName: node - linkType: hard - -"strip-json-comments@npm:^3.1.1": - version: 3.1.1 - resolution: "strip-json-comments@npm:3.1.1" - checksum: 10c0/9681a6257b925a7fa0f285851c0e613cc934a50661fa7bb41ca9cbbff89686bb4a0ee366e6ecedc4daafd01e83eee0720111ab294366fe7c185e935475ebcecd - languageName: node - linkType: hard - -"supports-color@npm:6.0.0": - version: 6.0.0 - resolution: "supports-color@npm:6.0.0" - dependencies: - has-flag: "npm:^3.0.0" - checksum: 10c0/bb88ccbfe1f60a6d580254ea29c3f1afbc41ed7e654596a276b83f6b1686266c3c91a56b54efe1c2f004ea7d505dc37890fefd1b12c3bbc76d8022de76233d0b - languageName: node - linkType: hard - -"supports-color@npm:^5.3.0": - version: 5.5.0 - resolution: "supports-color@npm:5.5.0" - dependencies: - has-flag: "npm:^3.0.0" - checksum: 10c0/6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05 - languageName: node - linkType: hard - -"supports-color@npm:^7.1.0": - version: 7.2.0 - resolution: "supports-color@npm:7.2.0" - dependencies: - has-flag: "npm:^4.0.0" - checksum: 10c0/afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124 - languageName: node - linkType: hard - -"supports-color@npm:^8.1.1": - version: 8.1.1 - resolution: "supports-color@npm:8.1.1" - dependencies: - has-flag: "npm:^4.0.0" - checksum: 10c0/ea1d3c275dd604c974670f63943ed9bd83623edc102430c05adb8efc56ba492746b6e95386e7831b872ec3807fd89dd8eb43f735195f37b5ec343e4234cc7e89 - languageName: node - linkType: hard - -"sync-request@npm:^6.0.0": - version: 6.1.0 - resolution: "sync-request@npm:6.1.0" - dependencies: - http-response-object: "npm:^3.0.1" - sync-rpc: "npm:^1.2.1" - then-request: "npm:^6.0.0" - checksum: 10c0/02b31c5d543933ce8cc2cdfa7dd7b278e2645eb54299d56f3bc9c778de3130301370f25d54ecc3f6b8b2c7bfb034daabd2b866e0c18badbde26404513212c1f5 - languageName: node - linkType: hard - -"sync-rpc@npm:^1.2.1": - version: 1.3.6 - resolution: "sync-rpc@npm:1.3.6" - dependencies: - get-port: "npm:^3.1.0" - checksum: 10c0/2abaa0e6482fe8b72e29af1f7d5f484fac5a8ea0132969bf370f59b044c4f2eb109f95b222cb06e037f89b42b374a2918e5f90aff5fb7cf3e146d8088c56f6db - languageName: node - linkType: hard - -"table-layout@npm:^1.0.2": - version: 1.0.2 - resolution: "table-layout@npm:1.0.2" - dependencies: - array-back: "npm:^4.0.1" - deep-extend: "npm:~0.6.0" - typical: "npm:^5.2.0" - wordwrapjs: "npm:^4.0.0" - checksum: 10c0/c1d16d5ba2199571606ff574a5c91cff77f14e8477746e191e7dfd294da03e61af4e8004f1f6f783da9582e1365f38d3c469980428998750d558bf29462cc6c3 - languageName: node - linkType: hard - -"table@npm:^6.8.0": - version: 6.9.0 - resolution: "table@npm:6.9.0" - dependencies: - ajv: "npm:^8.0.1" - lodash.truncate: "npm:^4.4.2" - slice-ansi: "npm:^4.0.0" - string-width: "npm:^4.2.3" - strip-ansi: "npm:^6.0.1" - checksum: 10c0/35646185712bb65985fbae5975dda46696325844b78735f95faefae83e86df0a265277819a3e67d189de6e858c509b54e66ca3958ffd51bde56ef1118d455bf4 - languageName: node - linkType: hard - -"tar@npm:^7.5.2": - version: 7.5.2 - resolution: "tar@npm:7.5.2" - dependencies: - "@isaacs/fs-minipass": "npm:^4.0.0" - chownr: "npm:^3.0.0" - minipass: "npm:^7.1.2" - minizlib: "npm:^3.1.0" - yallist: "npm:^5.0.0" - checksum: 10c0/a7d8b801139b52f93a7e34830db0de54c5aa45487c7cb551f6f3d44a112c67f1cb8ffdae856b05fd4f17b1749911f1c26f1e3a23bbe0279e17fd96077f13f467 - languageName: node - linkType: hard - -"then-request@npm:^6.0.0": - version: 6.0.2 - resolution: "then-request@npm:6.0.2" - dependencies: - "@types/concat-stream": "npm:^1.6.0" - "@types/form-data": "npm:0.0.33" - "@types/node": "npm:^8.0.0" - "@types/qs": "npm:^6.2.31" - caseless: "npm:~0.12.0" - concat-stream: "npm:^1.6.0" - form-data: "npm:^2.2.0" - http-basic: "npm:^8.1.1" - http-response-object: "npm:^3.0.1" - promise: "npm:^8.0.0" - qs: "npm:^6.4.0" - checksum: 10c0/9d2998c3470d6aa5b49993612be40627c57a89534cff5bbcc1d57f18457c14675cf3f59310816a1f85fdd40fa66feb64c63c5b76fb2163221f57223609c47949 - languageName: node - linkType: hard - -"tiny-emitter@npm:^2.1.0": - version: 2.1.0 - resolution: "tiny-emitter@npm:2.1.0" - checksum: 10c0/459c0bd6e636e80909898220eb390e1cba2b15c430b7b06cec6ac29d87acd29ef618b9b32532283af749f5d37af3534d0e3bde29fdf6bcefbf122784333c953d - languageName: node - linkType: hard - -"tinyglobby@npm:^0.2.12, tinyglobby@npm:^0.2.6": - version: 0.2.15 - resolution: "tinyglobby@npm:0.2.15" - dependencies: - fdir: "npm:^6.5.0" - picomatch: "npm:^4.0.3" - checksum: 10c0/869c31490d0d88eedb8305d178d4c75e7463e820df5a9b9d388291daf93e8b1eb5de1dad1c1e139767e4269fe75f3b10d5009b2cc14db96ff98986920a186844 - languageName: node - linkType: hard - -"tmp@npm:0.0.33": - version: 0.0.33 - resolution: "tmp@npm:0.0.33" - dependencies: - os-tmpdir: "npm:~1.0.2" - checksum: 10c0/69863947b8c29cabad43fe0ce65cec5bb4b481d15d4b4b21e036b060b3edbf3bc7a5541de1bacb437bb3f7c4538f669752627fdf9b4aaf034cebd172ba373408 - languageName: node - linkType: hard - -"to-buffer@npm:^1.2.0, to-buffer@npm:^1.2.1, to-buffer@npm:^1.2.2": - version: 1.2.2 - resolution: "to-buffer@npm:1.2.2" - dependencies: - isarray: "npm:^2.0.5" - safe-buffer: "npm:^5.2.1" - typed-array-buffer: "npm:^1.0.3" - checksum: 10c0/56bc56352f14a2c4a0ab6277c5fc19b51e9534882b98eb068b39e14146591e62fa5b06bf70f7fed1626230463d7e60dca81e815096656e5e01c195c593873d12 - languageName: node - linkType: hard - -"to-regex-range@npm:^5.0.1": - version: 5.0.1 - resolution: "to-regex-range@npm:5.0.1" - dependencies: - is-number: "npm:^7.0.0" - checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892 - languageName: node - linkType: hard - -"toidentifier@npm:~1.0.1": - version: 1.0.1 - resolution: "toidentifier@npm:1.0.1" - checksum: 10c0/93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1 - languageName: node - linkType: hard - -"tough-cookie@npm:^2.3.3, tough-cookie@npm:~2.5.0": - version: 2.5.0 - resolution: "tough-cookie@npm:2.5.0" - dependencies: - psl: "npm:^1.1.28" - punycode: "npm:^2.1.1" - checksum: 10c0/e1cadfb24d40d64ca16de05fa8192bc097b66aeeb2704199b055ff12f450e4f30c927ce250f53d01f39baad18e1c11d66f65e545c5c6269de4c366fafa4c0543 - languageName: node - linkType: hard - -"tr46@npm:~0.0.3": - version: 0.0.3 - resolution: "tr46@npm:0.0.3" - checksum: 10c0/047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11 - languageName: node - linkType: hard - -"treeify@npm:^1.1.0": - version: 1.1.0 - resolution: "treeify@npm:1.1.0" - checksum: 10c0/2f0dea9e89328b8a42296a3963d341ab19897a05b723d6b0bced6b28701a340d2a7b03241aef807844198e46009aaf3755139274eb082cfce6fdc1935cbd69dd - languageName: node - linkType: hard - -"ts-command-line-args@npm:^2.2.0": - version: 2.5.1 - resolution: "ts-command-line-args@npm:2.5.1" - dependencies: - chalk: "npm:^4.1.0" - command-line-args: "npm:^5.1.1" - command-line-usage: "npm:^6.1.0" - string-format: "npm:^2.0.0" - bin: - write-markdown: dist/write-markdown.js - checksum: 10c0/affb43fd4e17b496b6fd195888c7a80e6d7fe54f121501926bb2376f2167c238f7fa8f2e2d98bf2498ff883240d9f914e3558701807f40dca882616a8fd763b1 - languageName: node - linkType: hard - -"ts-essentials@npm:^7.0.1": - version: 7.0.3 - resolution: "ts-essentials@npm:7.0.3" - peerDependencies: - typescript: ">=3.7.0" - checksum: 10c0/ea1919534ec6ce4ca4d9cb0ff1ab8e053509237da8d4298762ab3bfba4e78ca5649a599ce78a5c7c2624f3a7a971f62b265b7b0c3c881336e4fa6acaf6f37544 - languageName: node - linkType: hard - -"ts-node@npm:^10.9.2": - version: 10.9.2 - resolution: "ts-node@npm:10.9.2" - dependencies: - "@cspotcode/source-map-support": "npm:^0.8.0" - "@tsconfig/node10": "npm:^1.0.7" - "@tsconfig/node12": "npm:^1.0.7" - "@tsconfig/node14": "npm:^1.0.0" - "@tsconfig/node16": "npm:^1.0.2" - acorn: "npm:^8.4.1" - acorn-walk: "npm:^8.1.1" - arg: "npm:^4.1.0" - create-require: "npm:^1.1.0" - diff: "npm:^4.0.1" - make-error: "npm:^1.1.1" - v8-compile-cache-lib: "npm:^3.0.1" - yn: "npm:3.1.1" - peerDependencies: - "@swc/core": ">=1.2.50" - "@swc/wasm": ">=1.2.50" - "@types/node": "*" - typescript: ">=2.7" - peerDependenciesMeta: - "@swc/core": - optional: true - "@swc/wasm": - optional: true - bin: - ts-node: dist/bin.js - ts-node-cwd: dist/bin-cwd.js - ts-node-esm: dist/bin-esm.js - ts-node-script: dist/bin-script.js - ts-node-transpile-only: dist/bin-transpile.js - ts-script: dist/bin-script-deprecated.js - checksum: 10c0/5f29938489f96982a25ba650b64218e83a3357d76f7bede80195c65ab44ad279c8357264639b7abdd5d7e75fc269a83daa0e9c62fd8637a3def67254ecc9ddc2 - languageName: node - linkType: hard - -"tslib@npm:^1.11.1, tslib@npm:^1.9.3": - version: 1.14.1 - resolution: "tslib@npm:1.14.1" - checksum: 10c0/69ae09c49eea644bc5ebe1bca4fa4cc2c82b7b3e02f43b84bd891504edf66dbc6b2ec0eef31a957042de2269139e4acff911e6d186a258fb14069cd7f6febce2 - languageName: node - linkType: hard - -"tslib@npm:^2.3.1, tslib@npm:^2.6.2": - version: 2.8.1 - resolution: "tslib@npm:2.8.1" - checksum: 10c0/9c4759110a19c53f992d9aae23aac5ced636e99887b51b9e61def52611732872ff7668757d4e4c61f19691e36f4da981cd9485e869b4a7408d689f6bf1f14e62 - languageName: node - linkType: hard - -"tsort@npm:0.0.1": - version: 0.0.1 - resolution: "tsort@npm:0.0.1" - checksum: 10c0/ea3d034ab341dd9282c972710496e98539408d77f1cd476ad0551a9731f40586b65ab917b39745f902bf32037a3161eee3821405f6ab15bcd2ce4cc0a52d1da6 - languageName: node - linkType: hard - -"tunnel-agent@npm:^0.6.0": - version: 0.6.0 - resolution: "tunnel-agent@npm:0.6.0" - dependencies: - safe-buffer: "npm:^5.0.1" - checksum: 10c0/4c7a1b813e7beae66fdbf567a65ec6d46313643753d0beefb3c7973d66fcec3a1e7f39759f0a0b4465883499c6dc8b0750ab8b287399af2e583823e40410a17a - languageName: node - linkType: hard - -"tweetnacl@npm:^0.14.3, tweetnacl@npm:~0.14.0": - version: 0.14.5 - resolution: "tweetnacl@npm:0.14.5" - checksum: 10c0/4612772653512c7bc19e61923fbf42903f5e0389ec76a4a1f17195859d114671ea4aa3b734c2029ce7e1fa7e5cc8b80580f67b071ecf0b46b5636d030a0102a2 - languageName: node - linkType: hard - -"type-check@npm:^0.4.0, type-check@npm:~0.4.0": - version: 0.4.0 - resolution: "type-check@npm:0.4.0" - dependencies: - prelude-ls: "npm:^1.2.1" - checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58 - languageName: node - linkType: hard - -"type-detect@npm:^4.0.0, type-detect@npm:^4.1.0": - version: 4.1.0 - resolution: "type-detect@npm:4.1.0" - checksum: 10c0/df8157ca3f5d311edc22885abc134e18ff8ffbc93d6a9848af5b682730ca6a5a44499259750197250479c5331a8a75b5537529df5ec410622041650a7f293e2a - languageName: node - linkType: hard - -"type-fest@npm:^0.20.2": - version: 0.20.2 - resolution: "type-fest@npm:0.20.2" - checksum: 10c0/dea9df45ea1f0aaa4e2d3bed3f9a0bfe9e5b2592bddb92eb1bf06e50bcf98dbb78189668cd8bc31a0511d3fc25539b4cd5c704497e53e93e2d40ca764b10bfc3 - languageName: node - linkType: hard - -"type-fest@npm:^0.21.3": - version: 0.21.3 - resolution: "type-fest@npm:0.21.3" - checksum: 10c0/902bd57bfa30d51d4779b641c2bc403cdf1371fb9c91d3c058b0133694fcfdb817aef07a47f40faf79039eecbaa39ee9d3c532deff244f3a19ce68cea71a61e8 - languageName: node - linkType: hard - -"type-fest@npm:^0.7.1": - version: 0.7.1 - resolution: "type-fest@npm:0.7.1" - checksum: 10c0/ce6b5ef806a76bf08d0daa78d65e61f24d9a0380bd1f1df36ffb61f84d14a0985c3a921923cf4b97831278cb6fa9bf1b89c751df09407e0510b14e8c081e4e0f - languageName: node - linkType: hard - -"type-is@npm:~1.6.18": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" - dependencies: - media-typer: "npm:0.3.0" - mime-types: "npm:~2.1.24" - checksum: 10c0/a23daeb538591b7efbd61ecf06b6feb2501b683ffdc9a19c74ef5baba362b4347e42f1b4ed81f5882a8c96a3bfff7f93ce3ffaf0cbbc879b532b04c97a55db9d - languageName: node - linkType: hard - -"typechain@npm:^8.0.0": - version: 8.3.2 - resolution: "typechain@npm:8.3.2" - dependencies: - "@types/prettier": "npm:^2.1.1" - debug: "npm:^4.3.1" - fs-extra: "npm:^7.0.0" - glob: "npm:7.1.7" - js-sha3: "npm:^0.8.0" - lodash: "npm:^4.17.15" - mkdirp: "npm:^1.0.4" - prettier: "npm:^2.3.1" - ts-command-line-args: "npm:^2.2.0" - ts-essentials: "npm:^7.0.1" - peerDependencies: - typescript: ">=4.3.0" - bin: - typechain: dist/cli/cli.js - checksum: 10c0/1ea660cc7c699c6ac68da67b76454eb4e9395c54666d924ca67f983ae8eb5b5e7dab0a576beb55dbfad75ea784a3f68cb1ca019d332293b7291731c156ead5b5 - languageName: node - linkType: hard - -"typed-array-buffer@npm:^1.0.3": - version: 1.0.3 - resolution: "typed-array-buffer@npm:1.0.3" - dependencies: - call-bound: "npm:^1.0.3" - es-errors: "npm:^1.3.0" - is-typed-array: "npm:^1.1.14" - checksum: 10c0/1105071756eb248774bc71646bfe45b682efcad93b55532c6ffa4518969fb6241354e4aa62af679ae83899ec296d69ef88f1f3763657cdb3a4d29321f7b83079 - languageName: node - linkType: hard - -"typed-array-byte-length@npm:^1.0.3": - version: 1.0.3 - resolution: "typed-array-byte-length@npm:1.0.3" - dependencies: - call-bind: "npm:^1.0.8" - for-each: "npm:^0.3.3" - gopd: "npm:^1.2.0" - has-proto: "npm:^1.2.0" - is-typed-array: "npm:^1.1.14" - checksum: 10c0/6ae083c6f0354f1fce18b90b243343b9982affd8d839c57bbd2c174a5d5dc71be9eb7019ffd12628a96a4815e7afa85d718d6f1e758615151d5f35df841ffb3e - languageName: node - linkType: hard - -"typed-array-byte-offset@npm:^1.0.4": - version: 1.0.4 - resolution: "typed-array-byte-offset@npm:1.0.4" - dependencies: - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - for-each: "npm:^0.3.3" - gopd: "npm:^1.2.0" - has-proto: "npm:^1.2.0" - is-typed-array: "npm:^1.1.15" - reflect.getprototypeof: "npm:^1.0.9" - checksum: 10c0/3d805b050c0c33b51719ee52de17c1cd8e6a571abdf0fffb110e45e8dd87a657e8b56eee94b776b13006d3d347a0c18a730b903cf05293ab6d92e99ff8f77e53 - languageName: node - linkType: hard - -"typed-array-length@npm:^1.0.7": - version: 1.0.7 - resolution: "typed-array-length@npm:1.0.7" - dependencies: - call-bind: "npm:^1.0.7" - for-each: "npm:^0.3.3" - gopd: "npm:^1.0.1" - is-typed-array: "npm:^1.1.13" - possible-typed-array-names: "npm:^1.0.0" - reflect.getprototypeof: "npm:^1.0.6" - checksum: 10c0/e38f2ae3779584c138a2d8adfa8ecf749f494af3cd3cdafe4e688ce51418c7d2c5c88df1bd6be2bbea099c3f7cea58c02ca02ed438119e91f162a9de23f61295 - languageName: node - linkType: hard - -"typed-function@npm:^2.1.0": - version: 2.1.0 - resolution: "typed-function@npm:2.1.0" - checksum: 10c0/faf82c1c70d147e103662be8856b5adfa5721a318955df8daf4d73f5fbfeb28741df2a3b277cf0145e139271731ad2db704232a0acab5188016e20738271d63a - languageName: node - linkType: hard - -"typed-function@npm:^4.1.1": - version: 4.2.2 - resolution: "typed-function@npm:4.2.2" - checksum: 10c0/92f2acc7e6d94431f4b37c2219d131cc90c1f43c19c097b7e337408cfd91336e481680d3362e30b5616318272950480ba670572b4585e8c690ca509d65c97554 - languageName: node - linkType: hard - -"typedarray@npm:^0.0.6": - version: 0.0.6 - resolution: "typedarray@npm:0.0.6" - checksum: 10c0/6005cb31df50eef8b1f3c780eb71a17925f3038a100d82f9406ac2ad1de5eb59f8e6decbdc145b3a1f8e5836e17b0c0002fb698b9fe2516b8f9f9ff602d36412 - languageName: node - linkType: hard - -"typescript@npm:^5.6.3": - version: 5.9.3 - resolution: "typescript@npm:5.9.3" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10c0/6bd7552ce39f97e711db5aa048f6f9995b53f1c52f7d8667c1abdc1700c68a76a308f579cd309ce6b53646deb4e9a1be7c813a93baaf0a28ccd536a30270e1c5 - languageName: node - linkType: hard - -"typescript@patch:typescript@npm%3A^5.6.3#optional!builtin": - version: 5.9.3 - resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=8c6c40" - bin: - tsc: bin/tsc - tsserver: bin/tsserver - checksum: 10c0/6f7e53bf0d9702350deeb6f35e08b69cbc8b958c33e0ec77bdc0ad6a6c8e280f3959dcbfde6f5b0848bece57810696489deaaa53d75de3578ff255d168c1efbd - languageName: node - linkType: hard - -"typical@npm:^4.0.0": - version: 4.0.0 - resolution: "typical@npm:4.0.0" - checksum: 10c0/f300b198fb9fe743859b75ec761d53c382723dc178bbce4957d9cb754f2878a44ce17dc0b6a5156c52be1065449271f63754ba594dac225b80ce3aa39f9241ed - languageName: node - linkType: hard - -"typical@npm:^5.2.0": - version: 5.2.0 - resolution: "typical@npm:5.2.0" - checksum: 10c0/1cceaa20d4b77a02ab8eccfe4a20500729431aecc1e1b7dc70c0e726e7966efdca3bf0b4bee285555b751647e37818fd99154ea73f74b5c29adc95d3c13f5973 - languageName: node - linkType: hard - -"unbox-primitive@npm:^1.1.0": - version: 1.1.0 - resolution: "unbox-primitive@npm:1.1.0" - dependencies: - call-bound: "npm:^1.0.3" - has-bigints: "npm:^1.0.2" - has-symbols: "npm:^1.1.0" - which-boxed-primitive: "npm:^1.1.1" - checksum: 10c0/7dbd35ab02b0e05fe07136c72cb9355091242455473ec15057c11430129bab38b7b3624019b8778d02a881c13de44d63cd02d122ee782fb519e1de7775b5b982 - languageName: node - linkType: hard - -"undici-types@npm:~7.16.0": - version: 7.16.0 - resolution: "undici-types@npm:7.16.0" - checksum: 10c0/3033e2f2b5c9f1504bdc5934646cb54e37ecaca0f9249c983f7b1fc2e87c6d18399ebb05dc7fd5419e02b2e915f734d872a65da2e3eeed1813951c427d33cc9a - languageName: node - linkType: hard - -"undici@npm:^5.14.0": - version: 5.29.0 - resolution: "undici@npm:5.29.0" - dependencies: - "@fastify/busboy": "npm:^2.0.0" - checksum: 10c0/e4e4d631ca54ee0ad82d2e90e7798fa00a106e27e6c880687e445cc2f13b4bc87c5eba2a88c266c3eecffb18f26e227b778412da74a23acc374fca7caccec49b - languageName: node - linkType: hard - -"unfetch@npm:^4.2.0": - version: 4.2.0 - resolution: "unfetch@npm:4.2.0" - checksum: 10c0/a5c0a896a6f09f278b868075aea65652ad185db30e827cb7df45826fe5ab850124bf9c44c4dafca4bf0c55a0844b17031e8243467fcc38dd7a7d435007151f1b - languageName: node - linkType: hard - -"unique-filename@npm:^5.0.0": - version: 5.0.0 - resolution: "unique-filename@npm:5.0.0" - dependencies: - unique-slug: "npm:^6.0.0" - checksum: 10c0/afb897e9cf4c2fb622ea716f7c2bb462001928fc5f437972213afdf1cc32101a230c0f1e9d96fc91ee5185eca0f2feb34127145874975f347be52eb91d6ccc2c - languageName: node - linkType: hard - -"unique-slug@npm:^6.0.0": - version: 6.0.0 - resolution: "unique-slug@npm:6.0.0" - dependencies: - imurmurhash: "npm:^0.1.4" - checksum: 10c0/da7ade4cb04eb33ad0499861f82fe95ce9c7c878b7139dc54d140ecfb6a6541c18a5c8dac16188b8b379fe62c0c1f1b710814baac910cde5f4fec06212126c6a - languageName: node - linkType: hard - -"uniswap@npm:^0.0.1": - version: 0.0.1 - resolution: "uniswap@npm:0.0.1" - dependencies: - hardhat: "npm:^2.2.1" - checksum: 10c0/52c8245f792c218ffd0f1b65ae00548d09497d2d956e2e6f166bb8890951bc48ebc08df541e96648b640e13ac061f5c957047ab69230dd5eb26a24ccced492d6 - languageName: node - linkType: hard - -"universalify@npm:^0.1.0": - version: 0.1.2 - resolution: "universalify@npm:0.1.2" - checksum: 10c0/e70e0339f6b36f34c9816f6bf9662372bd241714dc77508d231d08386d94f2c4aa1ba1318614f92015f40d45aae1b9075cd30bd490efbe39387b60a76ca3f045 - languageName: node - linkType: hard - -"unpipe@npm:~1.0.0": - version: 1.0.0 - resolution: "unpipe@npm:1.0.0" - checksum: 10c0/193400255bd48968e5c5383730344fbb4fa114cdedfab26e329e50dd2d81b134244bb8a72c6ac1b10ab0281a58b363d06405632c9d49ca9dfd5e90cbd7d0f32c - languageName: node - linkType: hard - -"uri-js@npm:^4.2.2": - version: 4.4.1 - resolution: "uri-js@npm:4.4.1" - dependencies: - punycode: "npm:^2.1.0" - checksum: 10c0/4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c - languageName: node - linkType: hard - -"url@npm:^0.11.0": - version: 0.11.4 - resolution: "url@npm:0.11.4" - dependencies: - punycode: "npm:^1.4.1" - qs: "npm:^6.12.3" - checksum: 10c0/cc93405ae4a9b97a2aa60ca67f1cb1481c0221cb4725a7341d149be5e2f9cfda26fd432d64dbbec693d16593b68b8a46aad8e5eab21f814932134c9d8620c662 - languageName: node - linkType: hard - -"utf-8-validate@npm:5.0.7": - version: 5.0.7 - resolution: "utf-8-validate@npm:5.0.7" - dependencies: - node-gyp: "npm:latest" - node-gyp-build: "npm:^4.3.0" - checksum: 10c0/1f343467b4509a37e4d8b06be527b78869a7a950fe039f24fad9bc5951208730227789c1f22665988124762e05a2080056a6cd68ba6bec5988c16ee30bfa9737 - languageName: node - linkType: hard - -"utf8@npm:3.0.0": - version: 3.0.0 - resolution: "utf8@npm:3.0.0" - checksum: 10c0/675d008bab65fc463ce718d5cae8fd4c063540f269e4f25afebce643098439d53e7164bb1f193e0c3852825c7e3e32fbd8641163d19a618dbb53f1f09acb0d5a - languageName: node - linkType: hard - -"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1": - version: 1.0.2 - resolution: "util-deprecate@npm:1.0.2" - checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942 - languageName: node - linkType: hard - -"utils-merge@npm:1.0.1": - version: 1.0.1 - resolution: "utils-merge@npm:1.0.1" - checksum: 10c0/02ba649de1b7ca8854bfe20a82f1dfbdda3fb57a22ab4a8972a63a34553cf7aa51bc9081cf7e001b035b88186d23689d69e71b510e610a09a4c66f68aa95b672 - languageName: node - linkType: hard - -"uuid@npm:2.0.1": - version: 2.0.1 - resolution: "uuid@npm:2.0.1" - checksum: 10c0/8241e74e709bf0398a64c350ebdac8ba8340ee74858f239eee06972b7fbe09f2babd20df486692f68a695510df806f6bd17ffce3eadc4d3c13f2128b262d6f06 - languageName: node - linkType: hard - -"uuid@npm:^3.3.2": - version: 3.4.0 - resolution: "uuid@npm:3.4.0" - bin: - uuid: ./bin/uuid - checksum: 10c0/1c13950df865c4f506ebfe0a24023571fa80edf2e62364297a537c80af09c618299797bbf2dbac6b1f8ae5ad182ba474b89db61e0e85839683991f7e08795347 - languageName: node - linkType: hard - -"uuid@npm:^8.3.2": - version: 8.3.2 - resolution: "uuid@npm:8.3.2" - bin: - uuid: dist/bin/uuid - checksum: 10c0/bcbb807a917d374a49f475fae2e87fdca7da5e5530820ef53f65ba1d12131bd81a92ecf259cc7ce317cbe0f289e7d79fdfebcef9bfa3087c8c8a2fa304c9be54 - languageName: node - linkType: hard - -"v8-compile-cache-lib@npm:^3.0.1": - version: 3.0.1 - resolution: "v8-compile-cache-lib@npm:3.0.1" - checksum: 10c0/bdc36fb8095d3b41df197f5fb6f11e3a26adf4059df3213e3baa93810d8f0cc76f9a74aaefc18b73e91fe7e19154ed6f134eda6fded2e0f1c8d2272ed2d2d391 - languageName: node - linkType: hard - -"vary@npm:^1, vary@npm:~1.1.2": - version: 1.1.2 - resolution: "vary@npm:1.1.2" - checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f - languageName: node - linkType: hard - -"verror@npm:1.10.0": - version: 1.10.0 - resolution: "verror@npm:1.10.0" - dependencies: - assert-plus: "npm:^1.0.0" - core-util-is: "npm:1.0.2" - extsprintf: "npm:^1.2.0" - checksum: 10c0/37ccdf8542b5863c525128908ac80f2b476eed36a32cb944de930ca1e2e78584cc435c4b9b4c68d0fc13a47b45ff364b4be43aa74f8804f9050140f660fb660d - languageName: node - linkType: hard - -"web3-utils@npm:^1.3.4": - version: 1.10.4 - resolution: "web3-utils@npm:1.10.4" - dependencies: - "@ethereumjs/util": "npm:^8.1.0" - bn.js: "npm:^5.2.1" - ethereum-bloom-filters: "npm:^1.0.6" - ethereum-cryptography: "npm:^2.1.2" - ethjs-unit: "npm:0.1.6" - number-to-bn: "npm:1.7.0" - randombytes: "npm:^2.1.0" - utf8: "npm:3.0.0" - checksum: 10c0/fbd5c8ec71e944e9e66e3436dbd4446927c3edc95f81928723f9ac137e0d821c5cbb92dba0ed5bbac766f919f919c9d8e316e459c51d876d5188321642676677 - languageName: node - linkType: hard - -"webidl-conversions@npm:^3.0.0": - version: 3.0.1 - resolution: "webidl-conversions@npm:3.0.1" - checksum: 10c0/5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db - languageName: node - linkType: hard - -"whatwg-url@npm:^5.0.0": - version: 5.0.0 - resolution: "whatwg-url@npm:5.0.0" - dependencies: - tr46: "npm:~0.0.3" - webidl-conversions: "npm:^3.0.0" - checksum: 10c0/1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5 - languageName: node - linkType: hard - -"which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1": - version: 1.1.1 - resolution: "which-boxed-primitive@npm:1.1.1" - dependencies: - is-bigint: "npm:^1.1.0" - is-boolean-object: "npm:^1.2.1" - is-number-object: "npm:^1.1.1" - is-string: "npm:^1.1.1" - is-symbol: "npm:^1.1.1" - checksum: 10c0/aceea8ede3b08dede7dce168f3883323f7c62272b49801716e8332ff750e7ae59a511ae088840bc6874f16c1b7fd296c05c949b0e5b357bfe3c431b98c417abe - languageName: node - linkType: hard - -"which-builtin-type@npm:^1.2.1": - version: 1.2.1 - resolution: "which-builtin-type@npm:1.2.1" - dependencies: - call-bound: "npm:^1.0.2" - function.prototype.name: "npm:^1.1.6" - has-tostringtag: "npm:^1.0.2" - is-async-function: "npm:^2.0.0" - is-date-object: "npm:^1.1.0" - is-finalizationregistry: "npm:^1.1.0" - is-generator-function: "npm:^1.0.10" - is-regex: "npm:^1.2.1" - is-weakref: "npm:^1.0.2" - isarray: "npm:^2.0.5" - which-boxed-primitive: "npm:^1.1.0" - which-collection: "npm:^1.0.2" - which-typed-array: "npm:^1.1.16" - checksum: 10c0/8dcf323c45e5c27887800df42fbe0431d0b66b1163849bb7d46b5a730ad6a96ee8bfe827d078303f825537844ebf20c02459de41239a0a9805e2fcb3cae0d471 - languageName: node - linkType: hard - -"which-collection@npm:^1.0.2": - version: 1.0.2 - resolution: "which-collection@npm:1.0.2" - dependencies: - is-map: "npm:^2.0.3" - is-set: "npm:^2.0.3" - is-weakmap: "npm:^2.0.2" - is-weakset: "npm:^2.0.3" - checksum: 10c0/3345fde20964525a04cdf7c4a96821f85f0cc198f1b2ecb4576e08096746d129eb133571998fe121c77782ac8f21cbd67745a3d35ce100d26d4e684c142ea1f2 - languageName: node - linkType: hard - -"which-module@npm:^2.0.0": - version: 2.0.1 - resolution: "which-module@npm:2.0.1" - checksum: 10c0/087038e7992649eaffa6c7a4f3158d5b53b14cf5b6c1f0e043dccfacb1ba179d12f17545d5b85ebd94a42ce280a6fe65d0cbcab70f4fc6daad1dfae85e0e6a3e - languageName: node - linkType: hard - -"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.19": - version: 1.1.19 - resolution: "which-typed-array@npm:1.1.19" - dependencies: - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.8" - call-bound: "npm:^1.0.4" - for-each: "npm:^0.3.5" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - has-tostringtag: "npm:^1.0.2" - checksum: 10c0/702b5dc878addafe6c6300c3d0af5983b175c75fcb4f2a72dfc3dd38d93cf9e89581e4b29c854b16ea37e50a7d7fca5ae42ece5c273d8060dcd603b2404bbb3f - languageName: node - linkType: hard - -"which@npm:1.3.1, which@npm:^1.2.9": - version: 1.3.1 - resolution: "which@npm:1.3.1" - dependencies: - isexe: "npm:^2.0.0" - bin: - which: ./bin/which - checksum: 10c0/e945a8b6bbf6821aaaef7f6e0c309d4b615ef35699576d5489b4261da9539f70393c6b2ce700ee4321c18f914ebe5644bc4631b15466ffbaad37d83151f6af59 - languageName: node - linkType: hard - -"which@npm:^2.0.1": - version: 2.0.2 - resolution: "which@npm:2.0.2" - dependencies: - isexe: "npm:^2.0.0" - bin: - node-which: ./bin/node-which - checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f - languageName: node - linkType: hard - -"which@npm:^6.0.0": - version: 6.0.0 - resolution: "which@npm:6.0.0" - dependencies: - isexe: "npm:^3.1.1" - bin: - node-which: bin/which.js - checksum: 10c0/fe9d6463fe44a76232bb6e3b3181922c87510a5b250a98f1e43a69c99c079b3f42ddeca7e03d3e5f2241bf2d334f5a7657cfa868b97c109f3870625842f4cc15 - languageName: node - linkType: hard - -"wide-align@npm:1.1.3": - version: 1.1.3 - resolution: "wide-align@npm:1.1.3" - dependencies: - string-width: "npm:^1.0.2 || 2" - checksum: 10c0/9bf69ad55f7bcccd5a7af2ebbb8115aebf1b17e6d4f0a2a40a84f5676e099153b9adeab331e306661bf2a8419361bacba83057a62163947507473ce7ac4116b7 - languageName: node - linkType: hard - -"widest-line@npm:^3.1.0": - version: 3.1.0 - resolution: "widest-line@npm:3.1.0" - dependencies: - string-width: "npm:^4.0.0" - checksum: 10c0/b1e623adcfb9df35350dd7fc61295d6d4a1eaa65a406ba39c4b8360045b614af95ad10e05abf704936ed022569be438c4bfa02d6d031863c4166a238c301119f - languageName: node - linkType: hard - -"word-wrap@npm:^1.2.5": - version: 1.2.5 - resolution: "word-wrap@npm:1.2.5" - checksum: 10c0/e0e4a1ca27599c92a6ca4c32260e8a92e8a44f4ef6ef93f803f8ed823f486e0889fc0b93be4db59c8d51b3064951d25e43d434e95dc8c960cc3a63d65d00ba20 - languageName: node - linkType: hard - -"wordwrapjs@npm:^4.0.0": - version: 4.0.1 - resolution: "wordwrapjs@npm:4.0.1" - dependencies: - reduce-flatten: "npm:^2.0.0" - typical: "npm:^5.2.0" - checksum: 10c0/4cc43eb0f6adb7214d427e68918357a9df483815efbb4c59beb30972714b1804ede2a551b1dfd2234c0bd413c6f07d6daa6522d1c53f43f89a376d815fbf3c43 - languageName: node - linkType: hard - -"workerpool@npm:^6.5.1": - version: 6.5.1 - resolution: "workerpool@npm:6.5.1" - checksum: 10c0/58e8e969782292cb3a7bfba823f1179a7615250a0cefb4841d5166234db1880a3d0fe83a31dd8d648329ec92c2d0cd1890ad9ec9e53674bb36ca43e9753cdeac - languageName: node - linkType: hard - -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": - version: 7.0.0 - resolution: "wrap-ansi@npm:7.0.0" - dependencies: - ansi-styles: "npm:^4.0.0" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da - languageName: node - linkType: hard - -"wrap-ansi@npm:^5.1.0": - version: 5.1.0 - resolution: "wrap-ansi@npm:5.1.0" - dependencies: - ansi-styles: "npm:^3.2.0" - string-width: "npm:^3.0.0" - strip-ansi: "npm:^5.0.0" - checksum: 10c0/fcd0b39b7453df512f2fe8c714a1c1b147fe3e6a4b5a2e4de6cadc3af47212f335eceaffe588e98322d6345e72672137e2c0b834d8a662e73a32296c1c8216bb - languageName: node - linkType: hard - -"wrap-ansi@npm:^8.1.0": - version: 8.1.0 - resolution: "wrap-ansi@npm:8.1.0" - dependencies: - ansi-styles: "npm:^6.1.0" - string-width: "npm:^5.0.1" - strip-ansi: "npm:^7.0.1" - checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60 - languageName: node - linkType: hard - -"wrappy@npm:1": - version: 1.0.2 - resolution: "wrappy@npm:1.0.2" - checksum: 10c0/56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0 - languageName: node - linkType: hard - -"ws@npm:7.4.6": - version: 7.4.6 - resolution: "ws@npm:7.4.6" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 10c0/4b44b59bbc0549c852fb2f0cdb48e40e122a1b6078aeed3d65557cbeb7d37dda7a4f0027afba2e6a7a695de17701226d02b23bd15c97b0837808c16345c62f8e - languageName: node - linkType: hard - -"ws@npm:8.18.0": - version: 8.18.0 - resolution: "ws@npm:8.18.0" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ">=5.0.2" - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 10c0/25eb33aff17edcb90721ed6b0eb250976328533ad3cd1a28a274bd263682e7296a6591ff1436d6cbc50fa67463158b062f9d1122013b361cec99a05f84680e06 - languageName: node - linkType: hard - -"ws@npm:^7.4.6": - version: 7.5.10 - resolution: "ws@npm:7.5.10" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 10c0/bd7d5f4aaf04fae7960c23dcb6c6375d525e00f795dd20b9385902bd008c40a94d3db3ce97d878acc7573df852056ca546328b27b39f47609f80fb22a0a9b61d - languageName: node - linkType: hard - -"xmlhttprequest@npm:1.8.0": - version: 1.8.0 - resolution: "xmlhttprequest@npm:1.8.0" - checksum: 10c0/c890661562e4cb6c36a126071e956047164296f58b0058ab28a9c9f1c3b46a65bf421a242d3449363a2aadc3d9769146160b10a501710d476a17d77d41a5c99e - languageName: node - linkType: hard - -"xtend@npm:^4.0.1, xtend@npm:^4.0.2, xtend@npm:~4.0.0": - version: 4.0.2 - resolution: "xtend@npm:4.0.2" - checksum: 10c0/366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e - languageName: node - linkType: hard - -"y18n@npm:^4.0.0": - version: 4.0.3 - resolution: "y18n@npm:4.0.3" - checksum: 10c0/308a2efd7cc296ab2c0f3b9284fd4827be01cfeb647b3ba18230e3a416eb1bc887ac050de9f8c4fd9e7856b2e8246e05d190b53c96c5ad8d8cb56dffb6f81024 - languageName: node - linkType: hard - -"y18n@npm:^5.0.5": - version: 5.0.8 - resolution: "y18n@npm:5.0.8" - checksum: 10c0/4df2842c36e468590c3691c894bc9cdbac41f520566e76e24f59401ba7d8b4811eb1e34524d57e54bc6d864bcb66baab7ffd9ca42bf1eda596618f9162b91249 - languageName: node - linkType: hard - -"yallist@npm:^3.0.2": - version: 3.1.1 - resolution: "yallist@npm:3.1.1" - checksum: 10c0/c66a5c46bc89af1625476f7f0f2ec3653c1a1791d2f9407cfb4c2ba812a1e1c9941416d71ba9719876530e3340a99925f697142989371b72d93b9ee628afd8c1 - languageName: node - linkType: hard - -"yallist@npm:^4.0.0": - version: 4.0.0 - resolution: "yallist@npm:4.0.0" - checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a - languageName: node - linkType: hard - -"yallist@npm:^5.0.0": - version: 5.0.0 - resolution: "yallist@npm:5.0.0" - checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416 - languageName: node - linkType: hard - -"yargs-parser@npm:13.1.2, yargs-parser@npm:^13.1.0, yargs-parser@npm:^13.1.2": - version: 13.1.2 - resolution: "yargs-parser@npm:13.1.2" - dependencies: - camelcase: "npm:^5.0.0" - decamelize: "npm:^1.2.0" - checksum: 10c0/aeded49d2285c5e284e48b7c69eab4a6cf1c94decfdba073125cc4054ff49da7128a3c7c840edb6b497a075e455be304e89ba4b9228be35f1ed22f4a7bba62cc - languageName: node - linkType: hard - -"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.9": - version: 20.2.9 - resolution: "yargs-parser@npm:20.2.9" - checksum: 10c0/0685a8e58bbfb57fab6aefe03c6da904a59769bd803a722bb098bd5b0f29d274a1357762c7258fb487512811b8063fb5d2824a3415a0a4540598335b3b086c72 - languageName: node - linkType: hard - -"yargs-unparser@npm:1.6.0": - version: 1.6.0 - resolution: "yargs-unparser@npm:1.6.0" - dependencies: - flat: "npm:^4.1.0" - lodash: "npm:^4.17.15" - yargs: "npm:^13.3.0" - checksum: 10c0/47e3eb081d1745a8e05332fef8c5aaecfae4e824f915280dccd44401b4e2342d6827cf8fd7b86cdebd1d08ec19f84ea51a555a3968525fd8c59564bdc3bb283d - languageName: node - linkType: hard - -"yargs-unparser@npm:^2.0.0": - version: 2.0.0 - resolution: "yargs-unparser@npm:2.0.0" - dependencies: - camelcase: "npm:^6.0.0" - decamelize: "npm:^4.0.0" - flat: "npm:^5.0.2" - is-plain-obj: "npm:^2.1.0" - checksum: 10c0/a5a7d6dc157efa95122e16780c019f40ed91d4af6d2bac066db8194ed0ec5c330abb115daa5a79ff07a9b80b8ea80c925baacf354c4c12edd878c0529927ff03 - languageName: node - linkType: hard - -"yargs@npm:13.2.4": - version: 13.2.4 - resolution: "yargs@npm:13.2.4" - dependencies: - cliui: "npm:^5.0.0" - find-up: "npm:^3.0.0" - get-caller-file: "npm:^2.0.1" - os-locale: "npm:^3.1.0" - require-directory: "npm:^2.1.1" - require-main-filename: "npm:^2.0.0" - set-blocking: "npm:^2.0.0" - string-width: "npm:^3.0.0" - which-module: "npm:^2.0.0" - y18n: "npm:^4.0.0" - yargs-parser: "npm:^13.1.0" - checksum: 10c0/7909814a6347d7bf162d7bd209d9bfd5789d88ae6bf488d567c83fc558c0a729cc8eb80beccd56b15039e345e0d4ee03d7f9a057f685c73eac8641f4c3722795 - languageName: node - linkType: hard - -"yargs@npm:13.3.2, yargs@npm:^13.3.0": - version: 13.3.2 - resolution: "yargs@npm:13.3.2" - dependencies: - cliui: "npm:^5.0.0" - find-up: "npm:^3.0.0" - get-caller-file: "npm:^2.0.1" - require-directory: "npm:^2.1.1" - require-main-filename: "npm:^2.0.0" - set-blocking: "npm:^2.0.0" - string-width: "npm:^3.0.0" - which-module: "npm:^2.0.0" - y18n: "npm:^4.0.0" - yargs-parser: "npm:^13.1.2" - checksum: 10c0/6612f9f0ffeee07fff4c85f153d10eba4072bf5c11e1acba96153169f9d771409dfb63253dbb0841ace719264b663cd7b18c75c0eba91af7740e76094239d386 - languageName: node - linkType: hard - -"yargs@npm:^16.2.0": - version: 16.2.0 - resolution: "yargs@npm:16.2.0" - dependencies: - cliui: "npm:^7.0.2" - escalade: "npm:^3.1.1" - get-caller-file: "npm:^2.0.5" - require-directory: "npm:^2.1.1" - string-width: "npm:^4.2.0" - y18n: "npm:^5.0.5" - yargs-parser: "npm:^20.2.2" - checksum: 10c0/b1dbfefa679848442454b60053a6c95d62f2d2e21dd28def92b647587f415969173c6e99a0f3bab4f1b67ee8283bf735ebe3544013f09491186ba9e8a9a2b651 - languageName: node - linkType: hard - -"yn@npm:3.1.1": - version: 3.1.1 - resolution: "yn@npm:3.1.1" - checksum: 10c0/0732468dd7622ed8a274f640f191f3eaf1f39d5349a1b72836df484998d7d9807fbea094e2f5486d6b0cd2414aad5775972df0e68f8604db89a239f0f4bf7443 - languageName: node - linkType: hard - -"yocto-queue@npm:^0.1.0": - version: 0.1.0 - resolution: "yocto-queue@npm:0.1.0" - checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f - languageName: node - linkType: hard + version "3.1.8-pinto.1" + resolved "https://registry.yarnpkg.com/@pinto-org/hardhat-etherscan/-/hardhat-etherscan-3.1.8-pinto.1.tgz#5373eaefc4490b7d08473592c8d011e70a20c506" + integrity sha512-JqGN3pm7J2mlzZGMsmI7ngi0GMmogZSjBMkAS3V6jZ85ysCZQesYYgHpAJIsi60ActM+koATcr7xWEc/q4Uqsw== + dependencies: + "@ethersproject/abi" "^5.1.2" + "@ethersproject/address" "^5.0.2" + cbor "^8.1.0" + chalk "^2.4.2" + debug "^4.1.1" + fs-extra "^7.0.1" + lodash "^4.17.11" + semver "^6.3.0" + table "^6.8.0" + undici "^5.14.0" + +"@nomiclabs/hardhat-waffle@^2.0.3": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-waffle/-/hardhat-waffle-2.0.6.tgz#d11cb063a5f61a77806053e54009c40ddee49a54" + integrity sha512-+Wz0hwmJGSI17B+BhU/qFRZ1l6/xMW82QGXE/Gi+WTmwgJrQefuBs1lIf7hzQ1hLk6hpkvb/zwcNkpVKRYTQYg== + +"@openzeppelin/contracts-upgradeable@5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-5.0.2.tgz#3e5321a2ecdd0b206064356798c21225b6ec7105" + integrity sha512-0MmkHSHiW2NRFiT9/r5Lu4eJq5UJ4/tzlOgYXNAIj/ONkQTVnz22pLxDvp4C4uZ9he7ZFvGn3Driptn1/iU7tQ== + +"@openzeppelin/contracts@5.0.2": + version "5.0.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-5.0.2.tgz#b1d03075e49290d06570b2fd42154d76c2a5d210" + integrity sha512-ytPc6eLGcHHnapAZ9S+5qsdomhjo6QBHTDRRBFfTxXIpsicMhVPouPgmUPebZZZGX7vt9USA+Z+0M0dSVtSUEA== + +"@openzeppelin/defender-base-client@^1.46.0": + version "1.54.6" + resolved "https://registry.yarnpkg.com/@openzeppelin/defender-base-client/-/defender-base-client-1.54.6.tgz#b65a90dba49375ac1439d638832382344067a0b9" + integrity sha512-PTef+rMxkM5VQ7sLwLKSjp2DBakYQd661ZJiSRywx+q/nIpm3B/HYGcz5wPZCA5O/QcEP6TatXXDoeMwimbcnw== + dependencies: + amazon-cognito-identity-js "^6.0.1" + async-retry "^1.3.3" + axios "^1.4.0" + lodash "^4.17.19" + node-fetch "^2.6.0" + +"@openzeppelin/hardhat-upgrades@^1.17.0": + version "1.28.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/hardhat-upgrades/-/hardhat-upgrades-1.28.0.tgz#6361f313a8a879d8a08a5e395acf0933bc190950" + integrity sha512-7sb/Jf+X+uIufOBnmHR0FJVWuxEs2lpxjJnLNN6eCJCP8nD0v+Ot5lTOW2Qb/GFnh+fLvJtEkhkowz4ZQ57+zQ== + dependencies: + "@openzeppelin/defender-base-client" "^1.46.0" + "@openzeppelin/platform-deploy-client" "^0.8.0" + "@openzeppelin/upgrades-core" "^1.27.0" + chalk "^4.1.0" + debug "^4.1.1" + proper-lockfile "^4.1.1" + +"@openzeppelin/merkle-tree@1.0.7": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@openzeppelin/merkle-tree/-/merkle-tree-1.0.7.tgz#88f815df8ba39033e312e5f3dc6debeb62845916" + integrity sha512-i93t0YYv6ZxTCYU3CdO5Q+DXK0JH10A4dCBOMlzYbX+ujTXm+k1lXiEyVqmf94t3sqmv8sm/XT5zTa0+efnPgQ== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + +"@openzeppelin/platform-deploy-client@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/platform-deploy-client/-/platform-deploy-client-0.8.0.tgz#af6596275a19c283d6145f0128cc1247d18223c1" + integrity sha512-POx3AsnKwKSV/ZLOU/gheksj0Lq7Is1q2F3pKmcFjGZiibf+4kjGxr4eSMrT+2qgKYZQH1ZLQZ+SkbguD8fTvA== + dependencies: + "@ethersproject/abi" "^5.6.3" + "@openzeppelin/defender-base-client" "^1.46.0" + axios "^0.21.2" + lodash "^4.17.19" + node-fetch "^2.6.0" + +"@openzeppelin/upgrades-core@^1.27.0": + version "1.44.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/upgrades-core/-/upgrades-core-1.44.2.tgz#c38d6adc075f4d5e946c0fef9ba4b68953adec6a" + integrity sha512-m6iorjyhPK9ow5/trNs7qsBC/SOzJCO51pvvAF2W9nOiZ1t0RtCd+rlRmRmlWTv4M33V0wzIUeamJ2BPbzgUXA== + dependencies: + "@nomicfoundation/slang" "^0.18.3" + bignumber.js "^9.1.2" + cbor "^10.0.0" + chalk "^4.1.0" + compare-versions "^6.0.0" + debug "^4.1.1" + ethereumjs-util "^7.0.3" + minimatch "^9.0.5" + minimist "^1.2.7" + proper-lockfile "^4.1.1" + solidity-ast "^0.4.60" + +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + +"@prb/math@v2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@prb/math/-/math-2.5.0.tgz#5f26dee609030d3584bfbff92be8dc3d6c7d91a8" + integrity sha512-iSNQd4L3HaYuAIhJliLVa7WGsyjFiQHGpomrFgdj7FhYGHT6Yo8bBwbmwAPF1bHD3LN8gdg+ssKrRUPNaNPEVw== + dependencies: + "@ethersproject/bignumber" "^5.5.0" + decimal.js "^10.3.1" + evm-bn "^1.1.1" + mathjs "^10.4.0" + +"@resolver-engine/core@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@resolver-engine/core/-/core-0.3.3.tgz#590f77d85d45bc7ecc4e06c654f41345db6ca967" + integrity sha512-eB8nEbKDJJBi5p5SrvrvILn4a0h42bKtbCTri3ZxCGt6UvoQyp7HnGOfki944bUjBSHKK3RvgfViHn+kqdXtnQ== + dependencies: + debug "^3.1.0" + is-url "^1.2.4" + request "^2.85.0" + +"@resolver-engine/fs@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@resolver-engine/fs/-/fs-0.3.3.tgz#fbf83fa0c4f60154a82c817d2fe3f3b0c049a973" + integrity sha512-wQ9RhPUcny02Wm0IuJwYMyAG8fXVeKdmhm8xizNByD4ryZlx6PP6kRen+t/haF43cMfmaV7T3Cx6ChOdHEhFUQ== + dependencies: + "@resolver-engine/core" "^0.3.3" + debug "^3.1.0" + +"@resolver-engine/imports-fs@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@resolver-engine/imports-fs/-/imports-fs-0.3.3.tgz#4085db4b8d3c03feb7a425fbfcf5325c0d1e6c1b" + integrity sha512-7Pjg/ZAZtxpeyCFlZR5zqYkz+Wdo84ugB5LApwriT8XFeQoLwGUj4tZFFvvCuxaNCcqZzCYbonJgmGObYBzyCA== + dependencies: + "@resolver-engine/fs" "^0.3.3" + "@resolver-engine/imports" "^0.3.3" + debug "^3.1.0" + +"@resolver-engine/imports@^0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@resolver-engine/imports/-/imports-0.3.3.tgz#badfb513bb3ff3c1ee9fd56073e3144245588bcc" + integrity sha512-anHpS4wN4sRMwsAbMXhMfOD/y4a4Oo0Cw/5+rue7hSwGWsDOQaAU1ClK1OxjUC35/peazxEl8JaSRRS+Xb8t3Q== + dependencies: + "@resolver-engine/core" "^0.3.3" + debug "^3.1.0" + hosted-git-info "^2.6.0" + path-browserify "^1.0.0" + url "^0.11.0" + +"@scure/base@~1.1.0", "@scure/base@~1.1.6": + version "1.1.9" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.9.tgz#e5e142fbbfe251091f9c5f1dd4c834ac04c3dbd1" + integrity sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg== + +"@scure/base@~1.2.5": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.2.6.tgz#ca917184b8231394dd8847509c67a0be522e59f6" + integrity sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg== + +"@scure/bip32@1.1.5": + version "1.1.5" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.1.5.tgz#d2ccae16dcc2e75bc1d75f5ef3c66a338d1ba300" + integrity sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw== + dependencies: + "@noble/hashes" "~1.2.0" + "@noble/secp256k1" "~1.7.0" + "@scure/base" "~1.1.0" + +"@scure/bip32@1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.4.0.tgz#4e1f1e196abedcef395b33b9674a042524e20d67" + integrity sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg== + dependencies: + "@noble/curves" "~1.4.0" + "@noble/hashes" "~1.4.0" + "@scure/base" "~1.1.6" + +"@scure/bip39@1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.1.1.tgz#b54557b2e86214319405db819c4b6a370cf340c5" + integrity sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg== + dependencies: + "@noble/hashes" "~1.2.0" + "@scure/base" "~1.1.0" + +"@scure/bip39@1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.3.0.tgz#0f258c16823ddd00739461ac31398b4e7d6a18c3" + integrity sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ== + dependencies: + "@noble/hashes" "~1.4.0" + "@scure/base" "~1.1.6" + +"@sentry/core@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-5.30.0.tgz#6b203664f69e75106ee8b5a2fe1d717379b331f3" + integrity sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/minimal" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + +"@sentry/hub@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-5.30.0.tgz#2453be9b9cb903404366e198bd30c7ca74cdc100" + integrity sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ== + dependencies: + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + +"@sentry/minimal@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-5.30.0.tgz#ce3d3a6a273428e0084adcb800bc12e72d34637b" + integrity sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/types" "5.30.0" + tslib "^1.9.3" + +"@sentry/node@^5.18.1": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/node/-/node-5.30.0.tgz#4ca479e799b1021285d7fe12ac0858951c11cd48" + integrity sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg== + dependencies: + "@sentry/core" "5.30.0" + "@sentry/hub" "5.30.0" + "@sentry/tracing" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + cookie "^0.4.1" + https-proxy-agent "^5.0.0" + lru_map "^0.3.3" + tslib "^1.9.3" + +"@sentry/tracing@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-5.30.0.tgz#501d21f00c3f3be7f7635d8710da70d9419d4e1f" + integrity sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/minimal" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + +"@sentry/types@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-5.30.0.tgz#19709bbe12a1a0115bc790b8942917da5636f402" + integrity sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw== + +"@sentry/utils@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-5.30.0.tgz#9a5bd7ccff85ccfe7856d493bffa64cabc41e980" + integrity sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww== + dependencies: + "@sentry/types" "5.30.0" + tslib "^1.9.3" + +"@smithy/types@^4.12.0": + version "4.12.0" + resolved "https://registry.yarnpkg.com/@smithy/types/-/types-4.12.0.tgz#55d2479080922bda516092dbf31916991d9c6fee" + integrity sha512-9YcuJVTOBDjg9LWo23Qp0lTQ3D7fQsQtwle0jVfpbUHy9qBwCEgKuVH4FqFB3VYu0nwdHKiEMA+oXz7oV8X1kw== + dependencies: + tslib "^2.6.2" + +"@solidity-parser/parser@^0.14.0": + version "0.14.5" + resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.14.5.tgz#87bc3cc7b068e08195c219c91cd8ddff5ef1a804" + integrity sha512-6dKnHZn7fg/iQATVEzqyUOyEidbn05q7YA2mQ9hC0MMXhhV3/JrsxmFSYZAcr7j1yUP700LLhTruvJ3MiQmjJg== + dependencies: + antlr4ts "^0.5.0-alpha.4" + +"@solidity-parser/parser@^0.20.1": + version "0.20.2" + resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.20.2.tgz#e07053488ed60dae1b54f6fe37bb6d2c5fe146a7" + integrity sha512-rbu0bzwNvMcwAjH86hiEAcOeRI2EeK8zCkHDrFykh/Al8mvJeFmjy3UrE7GYQjNwOgbGUUtCn5/k8CB8zIu7QA== + +"@trufflesuite/bigint-buffer@1.1.10": + version "1.1.10" + resolved "https://registry.yarnpkg.com/@trufflesuite/bigint-buffer/-/bigint-buffer-1.1.10.tgz#a1d9ca22d3cad1a138b78baaf15543637a3e1692" + integrity sha512-pYIQC5EcMmID74t26GCC67946mgTJFiLXOT/BYozgrd4UEY2JHEGLhWi9cMiQCt5BSqFEvKkCHNnoj82SRjiEw== + dependencies: + node-gyp-build "4.4.0" + +"@trufflesuite/bigint-buffer@1.1.9": + version "1.1.9" + resolved "https://registry.yarnpkg.com/@trufflesuite/bigint-buffer/-/bigint-buffer-1.1.9.tgz#e2604d76e1e4747b74376d68f1312f9944d0d75d" + integrity sha512-bdM5cEGCOhDSwminryHJbRmXc1x7dPKg6Pqns3qyTwFlxsqUgxE29lsERS3PlIW1HTjoIGMUqsk1zQQwST1Yxw== + dependencies: + node-gyp-build "4.3.0" + +"@tsconfig/node10@^1.0.7": + version "1.0.12" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.12.tgz#be57ceac1e4692b41be9de6be8c32a106636dba4" + integrity sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ== + +"@tsconfig/node12@^1.0.7": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" + integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== + +"@tsconfig/node14@^1.0.0": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" + integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== + +"@tsconfig/node16@^1.0.2": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9" + integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== + +"@typechain/ethers-v5@^10.0.0": + version "10.2.1" + resolved "https://registry.yarnpkg.com/@typechain/ethers-v5/-/ethers-v5-10.2.1.tgz#50241e6957683281ecfa03fb5a6724d8a3ce2391" + integrity sha512-n3tQmCZjRE6IU4h6lqUGiQ1j866n5MTCBJreNEHHVWXa2u9GJTaeYyU1/k+1qLutkyw+sS6VAN+AbeiTqsxd/A== + dependencies: + lodash "^4.17.15" + ts-essentials "^7.0.1" + +"@types/abstract-leveldown@*": + version "7.2.5" + resolved "https://registry.yarnpkg.com/@types/abstract-leveldown/-/abstract-leveldown-7.2.5.tgz#db2cf364c159fb1f12be6cd3549f56387eaf8d73" + integrity sha512-/2B0nQF4UdupuxeKTJA2+Rj1D+uDemo6P4kMwKCpbfpnzeVaWSELTsAw4Lxn3VJD6APtRrZOCuYo+4nHUQfTfg== + +"@types/bn.js@^4.11.3": + version "4.11.6" + resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-4.11.6.tgz#c306c70d9358aaea33cd4eda092a742b9505967c" + integrity sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg== + dependencies: + "@types/node" "*" + +"@types/bn.js@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-5.2.0.tgz#4349b9710e98f9ab3cdc50f1c5e4dcbd8ef29c80" + integrity sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q== + dependencies: + "@types/node" "*" + +"@types/body-parser@*": + version "1.19.6" + resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.6.tgz#1859bebb8fd7dac9918a45d54c1971ab8b5af474" + integrity sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g== + dependencies: + "@types/connect" "*" + "@types/node" "*" + +"@types/concat-stream@^1.6.0": + version "1.6.1" + resolved "https://registry.yarnpkg.com/@types/concat-stream/-/concat-stream-1.6.1.tgz#24bcfc101ecf68e886aaedce60dfd74b632a1b74" + integrity sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA== + dependencies: + "@types/node" "*" + +"@types/connect@*": + version "3.4.38" + resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.38.tgz#5ba7f3bc4fbbdeaff8dded952e5ff2cc53f8d858" + integrity sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug== + dependencies: + "@types/node" "*" + +"@types/cors@^2.8.17": + version "2.8.19" + resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.19.tgz#d93ea2673fd8c9f697367f5eeefc2bbfa94f0342" + integrity sha512-mFNylyeyqN93lfe/9CSxOGREz8cpzAhH+E93xJ4xWQf62V8sQ/24reV2nyzUWM6H6Xji+GGHpkbLe7pVoUEskg== + dependencies: + "@types/node" "*" + +"@types/estree@^1.0.6": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" + integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== + +"@types/express-serve-static-core@^5.0.0": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.1.1.tgz#1a77faffee9572d39124933259be2523837d7eaa" + integrity sha512-v4zIMr/cX7/d2BpAEX3KNKL/JrT1s43s96lLvvdTmza1oEvDudCqK9aF/djc/SWgy8Yh0h30TZx5VpzqFCxk5A== + dependencies: + "@types/node" "*" + "@types/qs" "*" + "@types/range-parser" "*" + "@types/send" "*" + +"@types/express@^5.0.0": + version "5.0.6" + resolved "https://registry.yarnpkg.com/@types/express/-/express-5.0.6.tgz#2d724b2c990dcb8c8444063f3580a903f6d500cc" + integrity sha512-sKYVuV7Sv9fbPIt/442koC7+IIwK5olP1KWeD88e/idgoJqDm3JV/YUiPwkoKK92ylff2MGxSz1CSjsXelx0YA== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "^5.0.0" + "@types/serve-static" "^2" + +"@types/form-data@0.0.33": + version "0.0.33" + resolved "https://registry.yarnpkg.com/@types/form-data/-/form-data-0.0.33.tgz#c9ac85b2a5fd18435b8c85d9ecb50e6d6c893ff8" + integrity sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw== + dependencies: + "@types/node" "*" + +"@types/http-errors@*": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.5.tgz#5b749ab2b16ba113423feb1a64a95dcd30398472" + integrity sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg== + +"@types/json-schema@^7.0.15": + version "7.0.15" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== + +"@types/level-errors@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/level-errors/-/level-errors-3.0.2.tgz#f33ec813c50780b547463da9ad8acac89ee457d9" + integrity sha512-gyZHbcQ2X5hNXf/9KS2qGEmgDe9EN2WDM3rJ5Ele467C0nA1sLhtmv1bZiPMDYfAYCfPWft0uQIaTvXbASSTRA== + +"@types/levelup@^4.3.0": + version "4.3.3" + resolved "https://registry.yarnpkg.com/@types/levelup/-/levelup-4.3.3.tgz#4dc2b77db079b1cf855562ad52321aa4241b8ef4" + integrity sha512-K+OTIjJcZHVlZQN1HmU64VtrC0jC3dXWQozuEIR9zVvltIk90zaGPM2AgT+fIkChpzHhFE3YnvFLCbLtzAmexA== + dependencies: + "@types/abstract-leveldown" "*" + "@types/level-errors" "*" + "@types/node" "*" + +"@types/lru-cache@5.1.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@types/lru-cache/-/lru-cache-5.1.1.tgz#c48c2e27b65d2a153b19bfc1a317e30872e01eef" + integrity sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw== + +"@types/mkdirp@^0.5.2": + version "0.5.2" + resolved "https://registry.yarnpkg.com/@types/mkdirp/-/mkdirp-0.5.2.tgz#503aacfe5cc2703d5484326b1b27efa67a339c1f" + integrity sha512-U5icWpv7YnZYGsN4/cmh3WD2onMY0aJIiTE6+51TwJCttdHvtCYmkBNOobHlXwrJRL0nkH9jH4kD+1FAdMN4Tg== + dependencies: + "@types/node" "*" + +"@types/node-fetch@^2.6.1": + version "2.6.13" + resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.13.tgz#e0c9b7b5edbdb1b50ce32c127e85e880872d56ee" + integrity sha512-QGpRVpzSaUs30JBSGPjOg4Uveu384erbHBoT1zeONvyCfwQxIkUshLAOqN/k9EjGviPRmWTTe6aH2qySWKTVSw== + dependencies: + "@types/node" "*" + form-data "^4.0.4" + +"@types/node@*": + version "25.2.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-25.2.0.tgz#015b7d228470c1dcbfc17fe9c63039d216b4d782" + integrity sha512-DZ8VwRFUNzuqJ5khrvwMXHmvPe+zGayJhr2CDNiKB1WBE1ST8Djl00D0IC4vvNmHMdj6DlbYRIaFE7WHjlDl5w== + dependencies: + undici-types "~7.16.0" + +"@types/node@11.11.6": + version "11.11.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-11.11.6.tgz#df929d1bb2eee5afdda598a41930fe50b43eaa6a" + integrity sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ== + +"@types/node@^10.0.3": + version "10.17.60" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b" + integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== + +"@types/node@^8.0.0": + version "8.10.66" + resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.66.tgz#dd035d409df322acc83dff62a602f12a5783bbb3" + integrity sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw== + +"@types/pbkdf2@^3.0.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@types/pbkdf2/-/pbkdf2-3.1.2.tgz#2dc43808e9985a2c69ff02e2d2027bd4fe33e8dc" + integrity sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew== + dependencies: + "@types/node" "*" + +"@types/prettier@^2.1.1": + version "2.7.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" + integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA== + +"@types/qs@*", "@types/qs@^6.2.31": + version "6.14.0" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.14.0.tgz#d8b60cecf62f2db0fb68e5e006077b9178b85de5" + integrity sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ== + +"@types/range-parser@*": + version "1.2.7" + resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb" + integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ== + +"@types/secp256k1@^4.0.1": + version "4.0.7" + resolved "https://registry.yarnpkg.com/@types/secp256k1/-/secp256k1-4.0.7.tgz#534c9814eb80964962108ad45d549d1555c75fa0" + integrity sha512-Rcvjl6vARGAKRO6jHeKMatGrvOMGrR/AR11N1x2LqintPCyDZ7NBhrh238Z2VZc7aM7KIwnFpFQ7fnfK4H/9Qw== + dependencies: + "@types/node" "*" + +"@types/seedrandom@3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/seedrandom/-/seedrandom-3.0.1.tgz#1254750a4fec4aff2ebec088ccd0bb02e91fedb4" + integrity sha512-giB9gzDeiCeloIXDgzFBCgjj1k4WxcDrZtGl6h1IqmUPlxF+Nx8Ve+96QCyDZ/HseB/uvDsKbpib9hU5cU53pw== + +"@types/send@*": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@types/send/-/send-1.2.1.tgz#6a784e45543c18c774c049bff6d3dbaf045c9c74" + integrity sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ== + dependencies: + "@types/node" "*" + +"@types/serve-static@^2": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-2.2.0.tgz#d4a447503ead0d1671132d1ab6bd58b805d8de6a" + integrity sha512-8mam4H1NHLtu7nmtalF7eyBH14QyOASmcxHhSfEoRyr0nP/YdoesEtU+uSRvMe96TW/HPTtkoKqQLl53N7UXMQ== + dependencies: + "@types/http-errors" "*" + "@types/node" "*" + +"@uniswap/v3-core@v1.0.2-solc-0.8-simulate": + version "1.0.2-solc-0.8-simulate" + resolved "https://registry.yarnpkg.com/@uniswap/v3-core/-/v3-core-1.0.2-solc-0.8-simulate.tgz#77fb42f2b502b4fec81844736d039fc059e8688c" + integrity sha512-ALAZbsb3wvUrRzeAjrTKjv1fH7UrueJ/+D8uX4yintXHxxzbnnp78Kis2pa4D26cFQ72rwM3DrZpUES9rhsEuQ== + +abstract-leveldown@^6.2.1: + version "6.3.0" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz#d25221d1e6612f820c35963ba4bd739928f6026a" + integrity sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ== + dependencies: + buffer "^5.5.0" + immediate "^3.2.3" + level-concat-iterator "~2.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +abstract-leveldown@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz#08d19d4e26fb5be426f7a57004851b39e1795a2e" + integrity sha512-DnhQwcFEaYsvYDnACLZhMmCWd3rkOeEvglpa4q5i/5Jlm3UIsWaxVzuXvDLFCSCWRO3yy2/+V/G7FusFgejnfQ== + dependencies: + buffer "^6.0.3" + catering "^2.0.0" + is-buffer "^2.0.5" + level-concat-iterator "^3.0.0" + level-supports "^2.0.1" + queue-microtask "^1.2.3" + +abstract-leveldown@~6.2.1: + version "6.2.3" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz#036543d87e3710f2528e47040bc3261b77a9a8eb" + integrity sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ== + dependencies: + buffer "^5.5.0" + immediate "^3.2.3" + level-concat-iterator "~2.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +accepts@~1.3.8: + version "1.3.8" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + +acorn-jsx@^5.3.2: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn-walk@^8.1.1: + version "8.3.4" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.4.tgz#794dd169c3977edf4ba4ea47583587c5866236b7" + integrity sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g== + dependencies: + acorn "^8.11.0" + +acorn@^8.11.0, acorn@^8.15.0, acorn@^8.4.1: + version "8.15.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" + integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== + +adm-zip@^0.4.16: + version "0.4.16" + resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.16.tgz#cf4c508fdffab02c269cbc7f471a875f05570365" + integrity sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg== + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + +ajv@^6.12.3, ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ajv@^8.0.1: + version "8.17.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" + integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== + dependencies: + fast-deep-equal "^3.1.3" + fast-uri "^3.0.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + +amazon-cognito-identity-js@^6.0.1: + version "6.3.16" + resolved "https://registry.yarnpkg.com/amazon-cognito-identity-js/-/amazon-cognito-identity-js-6.3.16.tgz#4a6aceb64c80406b9ee4344980794ff9e506017a" + integrity sha512-HPGSBGD6Q36t99puWh0LnptxO/4icnk2kqIQ9cTJ2tFQo5NMUnWQIgtrTAk8nm+caqUbjDzXzG56GBjI2tS6jQ== + dependencies: + "@aws-crypto/sha256-js" "1.2.2" + buffer "4.9.2" + fast-base64-decode "^1.0.0" + isomorphic-unfetch "^3.0.0" + js-cookie "^2.2.1" + +ansi-align@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" + integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== + dependencies: + string-width "^4.1.0" + +ansi-colors@3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" + integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== + +ansi-colors@^4.1.1, ansi-colors@^4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== + +ansi-escapes@^4.3.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-regex@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1" + integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw== + +ansi-regex@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" + integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== + +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-regex@^6.0.1: + version "6.2.2" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" + integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== + +ansi-styles@^3.2.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-styles@^6.1.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" + integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== + +antlr4ts@^0.5.0-alpha.4: + version "0.5.0-alpha.4" + resolved "https://registry.yarnpkg.com/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz#71702865a87478ed0b40c0709f422cf14d51652a" + integrity sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ== + +anymatch@~3.1.1, anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +arg@^4.1.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +array-back@^3.0.1, array-back@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/array-back/-/array-back-3.1.0.tgz#b8859d7a508871c9a7b2cf42f99428f65e96bfb0" + integrity sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q== + +array-back@^4.0.1, array-back@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/array-back/-/array-back-4.0.2.tgz#8004e999a6274586beeb27342168652fdb89fa1e" + integrity sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg== + +array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" + integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw== + dependencies: + call-bound "^1.0.3" + is-array-buffer "^3.0.5" + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== + +array-uniq@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== + +array.prototype.reduce@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.8.tgz#42f97f5078daedca687d4463fd3c05cbfd83da57" + integrity sha512-DwuEqgXFBwbmZSRqt3BpQigWNUoqw9Ml2dTWdF3B2zQlQX4OeUE0zyuzX0fX0IbTvjdkZbcBTU3idgpO78qkTw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.4" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-array-method-boxes-properly "^1.0.0" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + is-string "^1.1.1" + +arraybuffer.prototype.slice@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz#9d760d84dbdd06d0cbf92c8849615a1a7ab3183c" + integrity sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ== + dependencies: + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + is-array-buffer "^3.0.4" + +asap@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== + +asn1@~0.2.3: + version "0.2.6" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" + integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== + dependencies: + safer-buffer "~2.1.0" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== + +assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +async-eventemitter@^0.2.4: + version "0.2.4" + resolved "https://registry.yarnpkg.com/async-eventemitter/-/async-eventemitter-0.2.4.tgz#f5e7c8ca7d3e46aab9ec40a292baf686a0bafaca" + integrity sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw== + dependencies: + async "^2.4.0" + +async-function@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/async-function/-/async-function-1.0.0.tgz#509c9fca60eaf85034c6829838188e4e4c8ffb2b" + integrity sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA== + +async-retry@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/async-retry/-/async-retry-1.3.3.tgz#0e7f36c04d8478e7a58bdbed80cedf977785f280" + integrity sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw== + dependencies: + retry "0.13.1" + +async@^2.4.0: + version "2.6.4" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221" + integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA== + dependencies: + lodash "^4.17.14" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== + +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== + +aws4@^1.8.0: + version "1.13.2" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.13.2.tgz#0aa167216965ac9474ccfa83892cfb6b3e1e52ef" + integrity sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw== + +axios@1.6.7: + version "1.6.7" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.6.7.tgz#7b48c2e27c96f9c68a2f8f31e2ab19f59b06b0a7" + integrity sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA== + dependencies: + follow-redirects "^1.15.4" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + +axios@^0.21.2: + version "0.21.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== + dependencies: + follow-redirects "^1.14.0" + +axios@^1.4.0, axios@^1.5.1: + version "1.13.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.4.tgz#15d109a4817fb82f73aea910d41a2c85606076bc" + integrity sha512-1wVkUaAO6WyaYtCkcYCOx12ZgpGf9Zif+qXa4n+oYzK558YryKqiL6UWwd5DqiH3VRW0GYhTZQ/vlgJrCoNQlg== + dependencies: + follow-redirects "^1.15.6" + form-data "^4.0.4" + proxy-from-env "^1.1.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +base-x@^3.0.2: + version "3.0.11" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.11.tgz#40d80e2a1aeacba29792ccc6c5354806421287ff" + integrity sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA== + dependencies: + safe-buffer "^5.0.1" + +base64-js@^1.0.2, base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== + dependencies: + tweetnacl "^0.14.3" + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +bignumber.js@^9.0.0, bignumber.js@^9.0.1, bignumber.js@^9.1.2: + version "9.3.1" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.3.1.tgz#759c5aaddf2ffdc4f154f7b493e1c8770f88c4d7" + integrity sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ== + +bignumber@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/bignumber/-/bignumber-1.1.0.tgz#e6ab0a743da5f3ea018e5c17597d121f7868c159" + integrity sha512-EGqHCKkEAwVwufcEOCYhZQqdVH+7cNCyPZ9yxisYvSjHFB+d9YcGMvorsFpeN5IJpC+lC6K+FHhu8+S4MgJazw== + +binary-extensions@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== + +bip39@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/bip39/-/bip39-3.0.4.tgz#5b11fed966840b5e1b8539f0f54ab6392969b2a0" + integrity sha512-YZKQlb752TrUWqHWj7XAwCSjYEgGAk+/Aas3V7NyjQeZYsztO8JnQUaCWhcnL4T+jL8nvB8typ2jRPzTlgugNw== + dependencies: + "@types/node" "11.11.6" + create-hash "^1.1.0" + pbkdf2 "^3.0.9" + randombytes "^2.0.1" + +blakejs@^1.1.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814" + integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ== + +bn.js@4.11.6: + version "4.11.6" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" + integrity sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA== + +bn.js@^4.0.0, bn.js@^4.11.0, bn.js@^4.11.1, bn.js@^4.11.8, bn.js@^4.11.9: + version "4.12.2" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.2.tgz#3d8fed6796c24e177737f7cc5172ee04ef39ec99" + integrity sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw== + +bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1: + version "5.2.2" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.2.tgz#82c09f9ebbb17107cd72cb7fd39bd1f9d0aaa566" + integrity sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw== + +body-parser@~1.20.3: + version "1.20.4" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.4.tgz#f8e20f4d06ca8a50a71ed329c15dccad1cdc547f" + integrity sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA== + dependencies: + bytes "~3.1.2" + content-type "~1.0.5" + debug "2.6.9" + depd "2.0.0" + destroy "~1.2.0" + http-errors "~2.0.1" + iconv-lite "~0.4.24" + on-finished "~2.4.1" + qs "~6.14.0" + raw-body "~2.5.3" + type-is "~1.6.18" + unpipe "~1.0.0" + +boxen@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50" + integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ== + dependencies: + ansi-align "^3.0.0" + camelcase "^6.2.0" + chalk "^4.1.0" + cli-boxes "^2.2.1" + string-width "^4.2.2" + type-fest "^0.20.2" + widest-line "^3.1.0" + wrap-ansi "^7.0.0" + +brace-expansion@^1.1.7: + version "1.1.12" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843" + integrity sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +brace-expansion@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" + integrity sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== + dependencies: + balanced-match "^1.0.0" + +braces@~3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + +brorand@^1.0.1, brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +browser-stdout@1.3.1, browser-stdout@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" + integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== + +browserify-aes@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +bs58@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" + integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw== + dependencies: + base-x "^3.0.2" + +bs58check@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/bs58check/-/bs58check-2.1.2.tgz#53b018291228d82a5aa08e7d796fdafda54aebfc" + integrity sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA== + dependencies: + bs58 "^4.0.0" + create-hash "^1.1.0" + safe-buffer "^5.1.2" + +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +buffer-reverse@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-reverse/-/buffer-reverse-1.0.1.tgz#49283c8efa6f901bc01fa3304d06027971ae2f60" + integrity sha512-M87YIUBsZ6N924W57vDwT/aOu8hw7ZgdByz6ijksLjmHJELBASmYTTlNHRgjE+pTsT9oJXGaDSgqqwfdHotDUg== + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== + +buffer-xor@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-2.0.2.tgz#34f7c64f04c777a1f8aac5e661273bb9dd320289" + integrity sha512-eHslX0bin3GB+Lx2p7lEYRShRewuNZL3fUl4qlVJGGiwoPGftmt8JQgk2Y9Ji5/01TnVDo33E5b5O3vUB1HdqQ== + dependencies: + safe-buffer "^5.1.1" + +buffer@4.9.2: + version "4.9.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + +buffer@^5.5.0, buffer@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.2.1" + +bufferutil@4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.5.tgz#da9ea8166911cc276bf677b8aed2d02d31f59028" + integrity sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A== + dependencies: + node-gyp-build "^4.3.0" + +bytes@~3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + +call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + +call-bind@^1.0.7, call-bind@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" + integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== + dependencies: + call-bind-apply-helpers "^1.0.0" + es-define-property "^1.0.0" + get-intrinsic "^1.2.4" + set-function-length "^1.2.2" + +call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" + integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== + dependencies: + call-bind-apply-helpers "^1.0.2" + get-intrinsic "^1.3.0" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase@^5.0.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +camelcase@^6.0.0, camelcase@^6.2.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +caseless@^0.12.0, caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== + +catering@^2.0.0, catering@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/catering/-/catering-2.1.1.tgz#66acba06ed5ee28d5286133982a927de9a04b510" + integrity sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w== + +cbor@^10.0.0: + version "10.0.11" + resolved "https://registry.yarnpkg.com/cbor/-/cbor-10.0.11.tgz#f60e7cc2be6c943fecec159874ae651e75661745" + integrity sha512-vIwORDd/WyB8Nc23o2zNN5RrtFGlR6Fca61TtjkUXueI3Jf2DOZDl1zsshvBntZ3wZHBM9ztjnkXSmzQDaq3WA== + dependencies: + nofilter "^3.0.2" + +cbor@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/cbor/-/cbor-8.1.0.tgz#cfc56437e770b73417a2ecbfc9caf6b771af60d5" + integrity sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg== + dependencies: + nofilter "^3.1.0" + +chai@^4.4.1: + version "4.5.0" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.5.0.tgz#707e49923afdd9b13a8b0b47d33d732d13812fd8" + integrity sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.3" + deep-eql "^4.1.3" + get-func-name "^2.0.2" + loupe "^2.3.6" + pathval "^1.1.1" + type-detect "^4.1.0" + +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0, chalk@^4.1.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +"charenc@>= 0.0.1": + version "0.0.2" + resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== + +check-error@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== + dependencies: + get-func-name "^2.0.2" + +chokidar@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" + integrity sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.2.0" + optionalDependencies: + fsevents "~2.1.1" + +chokidar@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +chokidar@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-4.0.3.tgz#7be37a4c03c9aee1ecfe862a4a23b2c70c205d30" + integrity sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA== + dependencies: + readdirp "^4.0.1" + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.7" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.7.tgz#bd094bfef42634ccfd9e13b9fc73274997111e39" + integrity sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA== + dependencies: + inherits "^2.0.4" + safe-buffer "^5.2.1" + to-buffer "^1.2.2" + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +cli-boxes@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" + integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== + +cli-table3@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.5.1.tgz#0252372d94dfc40dbd8df06005f48f31f656f202" + integrity sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw== + dependencies: + object-assign "^4.1.0" + string-width "^2.1.1" + optionalDependencies: + colors "^1.1.2" + +cli-table3@^0.6.0: + version "0.6.5" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.5.tgz#013b91351762739c16a9567c21a04632e449bf2f" + integrity sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ== + dependencies: + string-width "^4.2.0" + optionalDependencies: + "@colors/colors" "1.5.0" + +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colors@1.4.0, colors@^1.1.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +command-exists@^1.2.8: + version "1.2.9" + resolved "https://registry.yarnpkg.com/command-exists/-/command-exists-1.2.9.tgz#c50725af3808c8ab0260fd60b01fbfa25b954f69" + integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w== + +command-line-args@^5.1.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/command-line-args/-/command-line-args-5.2.1.tgz#c44c32e437a57d7c51157696893c5909e9cec42e" + integrity sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg== + dependencies: + array-back "^3.1.0" + find-replace "^3.0.0" + lodash.camelcase "^4.3.0" + typical "^4.0.0" + +command-line-usage@^6.1.0: + version "6.1.3" + resolved "https://registry.yarnpkg.com/command-line-usage/-/command-line-usage-6.1.3.tgz#428fa5acde6a838779dfa30e44686f4b6761d957" + integrity sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw== + dependencies: + array-back "^4.0.2" + chalk "^2.4.2" + table-layout "^1.0.2" + typical "^5.2.0" + +commander@^8.1.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== + +compare-versions@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-6.1.1.tgz#7af3cc1099ba37d244b3145a9af5201b629148a9" + integrity sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg== + +complex.js@^2.1.1: + version "2.4.3" + resolved "https://registry.yarnpkg.com/complex.js/-/complex.js-2.4.3.tgz#72ee9c303a9b89ebcfeca0d39f74927d38721fce" + integrity sha512-UrQVSUur14tNX6tiP4y8T4w4FeJAX3bi2cIv0pu/DTLFNxoq7z2Yh83Vfzztj6Px3X/lubqQ9IrPp7Bpn6p4MQ== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +concat-stream@^1.6.0, concat-stream@^1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +content-disposition@~0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== + dependencies: + safe-buffer "5.2.1" + +content-type@~1.0.4, content-type@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + +cookie-signature@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.7.tgz#ab5dd7ab757c54e60f37ef6550f481c426d10454" + integrity sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA== + +cookie@^0.4.1: + version "0.4.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" + integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== + +cookie@~0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" + integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== + +core-js-pure@^3.0.1: + version "3.48.0" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.48.0.tgz#7d5a3fe1ec3631b9aa76a81c843ac2ce918e5023" + integrity sha512-1slJgk89tWC51HQ1AEqG+s2VuwpTRr8ocu4n20QUcH1v9lAN0RXen0Q0AABa/DK1I7RrNWLucplOHMx8hfTGTw== + +core-util-is@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== + +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + +cors@^2.8.5: + version "2.8.6" + resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.6.tgz#ff5dd69bd95e547503820d29aba4f8faf8dfec96" + integrity sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw== + dependencies: + object-assign "^4" + vary "^1" + +crc-32@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" + integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== + +create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + md5.js "^1.3.4" + ripemd160 "^2.0.1" + sha.js "^2.4.0" + +create-hmac@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +create-require@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== + +cross-spawn@^6.0.0: + version "6.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.6.tgz#30d0efa0712ddb7eb5a76e1e8721bffafa6b5d57" + integrity sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +"crypt@>= 0.0.1": + version "0.0.2" + resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" + integrity sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow== + +crypto-js@^3.1.9-1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.3.0.tgz#846dd1cce2f68aacfa156c8578f926a609b7976b" + integrity sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q== + +csv-parser@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/csv-parser/-/csv-parser-3.0.0.tgz#b88a6256d79e090a97a1b56451f9327b01d710e7" + integrity sha512-s6OYSXAK3IdKqYO33y09jhypG/bSDHPuyCme/IdEHfWpLf/jKcpitVFyOC6UemgGk8v7Q5u2XE0vvwmanxhGlQ== + dependencies: + minimist "^1.2.0" + +csvtojson@^2.0.10: + version "2.0.14" + resolved "https://registry.yarnpkg.com/csvtojson/-/csvtojson-2.0.14.tgz#89b46c302bb1aae1f2f7a9d8a5a3d7a6c301750b" + integrity sha512-F7NNvhhDyob7OsuEGRsH0FM1aqLs/WYITyza3l+hTEEmOK9sGPBlYQZwlVG0ezCojXYpE17lhS5qL6BCOZSPyA== + dependencies: + lodash "^4.17.21" + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== + dependencies: + assert-plus "^1.0.0" + +data-view-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/data-view-buffer/-/data-view-buffer-1.0.2.tgz#211a03ba95ecaf7798a8c7198d79536211f88570" + integrity sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz#9e80f7ca52453ce3e93d25a35318767ea7704735" + integrity sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-offset@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz#068307f9b71ab76dbbe10291389e020856606191" + integrity sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +debug@2.6.9, debug@^2.2.0: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@3.2.6: + version "3.2.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" + integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== + dependencies: + ms "^2.1.1" + +debug@4, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.3.5: + version "4.4.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" + integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== + dependencies: + ms "^2.1.3" + +debug@^3.1.0: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +decamelize@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" + integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== + +decimal.js@^10.3.1, decimal.js@^10.4.3: + version "10.6.0" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.6.0.tgz#e649a43e3ab953a72192ff5983865e509f37ed9a" + integrity sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg== + +deep-eql@^4.1.3: + version "4.1.4" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.4.tgz#d0d3912865911bb8fac5afb4e3acfa6a28dc72b7" + integrity sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg== + dependencies: + type-detect "^4.0.0" + +deep-extend@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== + +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +deferred-leveldown@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz#27a997ad95408b61161aa69bd489b86c71b78058" + integrity sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw== + dependencies: + abstract-leveldown "~6.2.1" + inherits "^2.0.3" + +define-data-property@^1.0.1, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + +define-properties@^1.1.2, define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== + +depd@2.0.0, depd@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +destroy@1.2.0, destroy@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== + +diff@3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" + integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== + +diff@^4.0.1: + version "4.0.4" + resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.4.tgz#7a6dbfda325f25f07517e9b518f897c08332e07d" + integrity sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ== + +diff@^5.2.0: + version "5.2.2" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.2.tgz#0a4742797281d09cfa699b79ea32d27723623bad" + integrity sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A== + +dotenv@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" + integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== + +dunder-proto@^1.0.0, dunder-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== + dependencies: + call-bind-apply-helpers "^1.0.1" + es-errors "^1.3.0" + gopd "^1.2.0" + +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +elliptic@6.6.1, elliptic@^6.5.2, elliptic@^6.5.4, elliptic@^6.5.7: + version "6.6.1" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.1.tgz#3b8ffb02670bf69e382c7f65bf524c97c5405c06" + integrity sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +emittery@0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.10.0.tgz#bb373c660a9d421bb44706ec4967ed50c02a8026" + integrity sha512-AGvFfs+d0JKCJQ4o01ASQLGPmSCxgfU9RFXvzPvZdjKK8oscynksuJhWrSTSw7j7Ep/sZct5b5ZhYCi8S/t0HQ== + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + +encode-utf8@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/encode-utf8/-/encode-utf8-1.0.3.tgz#f30fdd31da07fb596f281beb2f6b027851994cda" + integrity sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw== + +encodeurl@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" + integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== + +encoding-down@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-6.3.0.tgz#b1c4eb0e1728c146ecaef8e32963c549e76d082b" + integrity sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw== + dependencies: + abstract-leveldown "^6.2.1" + inherits "^2.0.3" + level-codec "^9.0.0" + level-errors "^2.0.0" + +end-of-stream@^1.1.0: + version "1.4.5" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.5.tgz#7344d711dea40e0b74abc2ed49778743ccedb08c" + integrity sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg== + dependencies: + once "^1.4.0" + +enquirer@^2.3.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.4.1.tgz#93334b3fbd74fc7097b224ab4a8fb7e40bf4ae56" + integrity sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ== + dependencies: + ansi-colors "^4.1.1" + strip-ansi "^6.0.1" + +env-paths@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + +errno@~0.1.1: + version "0.1.8" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" + integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== + dependencies: + prr "~1.0.1" + +es-abstract@^1.23.5, es-abstract@^1.23.9, es-abstract@^1.24.0: + version "1.24.1" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.24.1.tgz#f0c131ed5ea1bb2411134a8dd94def09c46c7899" + integrity sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw== + dependencies: + array-buffer-byte-length "^1.0.2" + arraybuffer.prototype.slice "^1.0.4" + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + data-view-buffer "^1.0.2" + data-view-byte-length "^1.0.2" + data-view-byte-offset "^1.0.1" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + es-set-tostringtag "^2.1.0" + es-to-primitive "^1.3.0" + function.prototype.name "^1.1.8" + get-intrinsic "^1.3.0" + get-proto "^1.0.1" + get-symbol-description "^1.1.0" + globalthis "^1.0.4" + gopd "^1.2.0" + has-property-descriptors "^1.0.2" + has-proto "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + internal-slot "^1.1.0" + is-array-buffer "^3.0.5" + is-callable "^1.2.7" + is-data-view "^1.0.2" + is-negative-zero "^2.0.3" + is-regex "^1.2.1" + is-set "^2.0.3" + is-shared-array-buffer "^1.0.4" + is-string "^1.1.1" + is-typed-array "^1.1.15" + is-weakref "^1.1.1" + math-intrinsics "^1.1.0" + object-inspect "^1.13.4" + object-keys "^1.1.1" + object.assign "^4.1.7" + own-keys "^1.0.1" + regexp.prototype.flags "^1.5.4" + safe-array-concat "^1.1.3" + safe-push-apply "^1.0.0" + safe-regex-test "^1.1.0" + set-proto "^1.0.0" + stop-iteration-iterator "^1.1.0" + string.prototype.trim "^1.2.10" + string.prototype.trimend "^1.0.9" + string.prototype.trimstart "^1.0.8" + typed-array-buffer "^1.0.3" + typed-array-byte-length "^1.0.3" + typed-array-byte-offset "^1.0.4" + typed-array-length "^1.0.7" + unbox-primitive "^1.1.0" + which-typed-array "^1.1.19" + +es-array-method-boxes-properly@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" + integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== + +es-define-property@^1.0.0, es-define-property@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + +es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== + dependencies: + es-errors "^1.3.0" + +es-set-tostringtag@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" + integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== + dependencies: + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +es-to-primitive@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18" + integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g== + dependencies: + is-callable "^1.2.7" + is-date-object "^1.0.5" + is-symbol "^1.0.4" + +escalade@^3.1.1: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + +escape-latex@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/escape-latex/-/escape-latex-1.2.0.tgz#07c03818cf7dac250cce517f4fda1b001ef2bca1" + integrity sha512-nV5aVWW1K0wEiUIEdZ4erkGGH8mDxGyxSeqPzRNtWP7ataw+/olFObw7hujFWlVjNsaDFw5VZ5NzVSIqRgfTiw== + +escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +eslint-scope@^8.4.0: + version "8.4.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-8.4.0.tgz#88e646a207fad61436ffa39eb505147200655c82" + integrity sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg== + dependencies: + esrecurse "^4.3.0" + estraverse "^5.2.0" + +eslint-visitor-keys@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== + +eslint-visitor-keys@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz#4cfea60fe7dd0ad8e816e1ed026c1d5251b512c1" + integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== + +eslint@^9.12.0: + version "9.39.2" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.39.2.tgz#cb60e6d16ab234c0f8369a3fe7cc87967faf4b6c" + integrity sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw== + dependencies: + "@eslint-community/eslint-utils" "^4.8.0" + "@eslint-community/regexpp" "^4.12.1" + "@eslint/config-array" "^0.21.1" + "@eslint/config-helpers" "^0.4.2" + "@eslint/core" "^0.17.0" + "@eslint/eslintrc" "^3.3.1" + "@eslint/js" "9.39.2" + "@eslint/plugin-kit" "^0.4.1" + "@humanfs/node" "^0.16.6" + "@humanwhocodes/module-importer" "^1.0.1" + "@humanwhocodes/retry" "^0.4.2" + "@types/estree" "^1.0.6" + ajv "^6.12.4" + chalk "^4.0.0" + cross-spawn "^7.0.6" + debug "^4.3.2" + escape-string-regexp "^4.0.0" + eslint-scope "^8.4.0" + eslint-visitor-keys "^4.2.1" + espree "^10.4.0" + esquery "^1.5.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^8.0.0" + find-up "^5.0.0" + glob-parent "^6.0.2" + ignore "^5.2.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + json-stable-stringify-without-jsonify "^1.0.1" + lodash.merge "^4.6.2" + minimatch "^3.1.2" + natural-compare "^1.4.0" + optionator "^0.9.3" + +espree@^10.0.1, espree@^10.4.0: + version "10.4.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-10.4.0.tgz#d54f4949d4629005a1fa168d937c3ff1f7e2a837" + integrity sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ== + dependencies: + acorn "^8.15.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^4.2.1" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.5.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.7.0.tgz#08d048f261f0ddedb5bae95f46809463d9c9496d" + integrity sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + +eth-gas-reporter@0.2.25: + version "0.2.25" + resolved "https://registry.yarnpkg.com/eth-gas-reporter/-/eth-gas-reporter-0.2.25.tgz#546dfa946c1acee93cb1a94c2a1162292d6ff566" + integrity sha512-1fRgyE4xUB8SoqLgN3eDfpDfwEfRxh2Sz1b7wzFbyQA+9TekMmvSjjoRu9SKcSVyK+vLkLIsVbJDsTWjw195OQ== + dependencies: + "@ethersproject/abi" "^5.0.0-beta.146" + "@solidity-parser/parser" "^0.14.0" + cli-table3 "^0.5.0" + colors "1.4.0" + ethereum-cryptography "^1.0.3" + ethers "^4.0.40" + fs-readdir-recursive "^1.1.0" + lodash "^4.17.14" + markdown-table "^1.1.3" + mocha "^7.1.1" + req-cwd "^2.0.0" + request "^2.88.0" + request-promise-native "^1.0.5" + sha1 "^1.1.1" + sync-request "^6.0.0" + +eth-gas-reporter@^0.2.25: + version "0.2.27" + resolved "https://registry.yarnpkg.com/eth-gas-reporter/-/eth-gas-reporter-0.2.27.tgz#928de8548a674ed64c7ba0bf5795e63079150d4e" + integrity sha512-femhvoAM7wL0GcI8ozTdxfuBtBFJ9qsyIAsmKVjlWAHUbdnnXHt+lKzz/kmldM5lA9jLuNHGwuIxorNpLbR1Zw== + dependencies: + "@solidity-parser/parser" "^0.14.0" + axios "^1.5.1" + cli-table3 "^0.5.0" + colors "1.4.0" + ethereum-cryptography "^1.0.3" + ethers "^5.7.2" + fs-readdir-recursive "^1.1.0" + lodash "^4.17.14" + markdown-table "^1.1.3" + mocha "^10.2.0" + req-cwd "^2.0.0" + sha1 "^1.1.1" + sync-request "^6.0.0" + +ethereum-bloom-filters@^1.0.6: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ethereum-bloom-filters/-/ethereum-bloom-filters-1.2.0.tgz#8294f074c1a6cbd32c39d2cc77ce86ff14797dab" + integrity sha512-28hyiE7HVsWubqhpVLVmZXFd4ITeHi+BUu05o9isf0GUpMtzBUi+8/gFrGaGYzvGAJQmJ3JKj77Mk9G98T84rA== + dependencies: + "@noble/hashes" "^1.4.0" + +ethereum-cryptography@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz#8d6143cfc3d74bf79bbd8edecdf29e4ae20dd191" + integrity sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ== + dependencies: + "@types/pbkdf2" "^3.0.0" + "@types/secp256k1" "^4.0.1" + blakejs "^1.1.0" + browserify-aes "^1.2.0" + bs58check "^2.1.2" + create-hash "^1.2.0" + create-hmac "^1.1.7" + hash.js "^1.1.7" + keccak "^3.0.0" + pbkdf2 "^3.0.17" + randombytes "^2.1.0" + safe-buffer "^5.1.2" + scrypt-js "^3.0.0" + secp256k1 "^4.0.1" + setimmediate "^1.0.5" + +ethereum-cryptography@^1.0.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz#5ccfa183e85fdaf9f9b299a79430c044268c9b3a" + integrity sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw== + dependencies: + "@noble/hashes" "1.2.0" + "@noble/secp256k1" "1.7.1" + "@scure/bip32" "1.1.5" + "@scure/bip39" "1.1.1" + +ethereum-cryptography@^2.0.0, ethereum-cryptography@^2.1.2, ethereum-cryptography@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz#58f2810f8e020aecb97de8c8c76147600b0b8ccf" + integrity sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg== + dependencies: + "@noble/curves" "1.4.2" + "@noble/hashes" "1.4.0" + "@scure/bip32" "1.4.0" + "@scure/bip39" "1.3.0" + +ethereum-waffle@4.0.10: + version "4.0.10" + resolved "https://registry.yarnpkg.com/ethereum-waffle/-/ethereum-waffle-4.0.10.tgz#f1ef1564c0155236f1a66c6eae362a5d67c9f64c" + integrity sha512-iw9z1otq7qNkGDNcMoeNeLIATF9yKl1M8AIeu42ElfNBplq0e+5PeasQmm8ybY/elkZ1XyRO0JBQxQdVRb8bqQ== + dependencies: + "@ethereum-waffle/chai" "4.0.10" + "@ethereum-waffle/compiler" "4.0.3" + "@ethereum-waffle/mock-contract" "4.0.4" + "@ethereum-waffle/provider" "4.0.5" + solc "0.8.15" + typechain "^8.0.0" + +ethereumjs-abi@0.6.8: + version "0.6.8" + resolved "https://registry.yarnpkg.com/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz#71bc152db099f70e62f108b7cdfca1b362c6fcae" + integrity sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA== + dependencies: + bn.js "^4.11.8" + ethereumjs-util "^6.0.0" + +ethereumjs-util@6.2.1, ethereumjs-util@^6.0.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz#fcb4e4dd5ceacb9d2305426ab1a5cd93e3163b69" + integrity sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw== + dependencies: + "@types/bn.js" "^4.11.3" + bn.js "^4.11.0" + create-hash "^1.1.2" + elliptic "^6.5.2" + ethereum-cryptography "^0.1.3" + ethjs-util "0.1.6" + rlp "^2.2.3" + +ethereumjs-util@7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.3.tgz#b55d7b64dde3e3e45749e4c41288238edec32d23" + integrity sha512-y+82tEbyASO0K0X1/SRhbJJoAlfcvq8JbrG4a5cjrOks7HS/36efU/0j2flxCPOUM++HFahk33kr/ZxyC4vNuw== + dependencies: + "@types/bn.js" "^5.1.0" + bn.js "^5.1.2" + create-hash "^1.1.2" + ethereum-cryptography "^0.1.3" + rlp "^2.2.4" + +ethereumjs-util@^7.0.3, ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.3, ethereumjs-util@^7.1.4, ethereumjs-util@^7.1.5: + version "7.1.5" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181" + integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg== + dependencies: + "@types/bn.js" "^5.1.0" + bn.js "^5.1.2" + create-hash "^1.1.2" + ethereum-cryptography "^0.1.3" + rlp "^2.2.4" + +ethers@5.7.2: + version "5.7.2" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e" + integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.1" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.2" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.1" + "@ethersproject/wordlists" "5.7.0" + +ethers@^4.0.40: + version "4.0.49" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-4.0.49.tgz#0eb0e9161a0c8b4761be547396bbe2fb121a8894" + integrity sha512-kPltTvWiyu+OktYy1IStSO16i2e7cS9D9OxZ81q2UUaiNPVrm/RTcbxamCXF9VUSKzJIdJV68EAIhTEVBalRWg== + dependencies: + aes-js "3.0.0" + bn.js "^4.11.9" + elliptic "6.5.4" + hash.js "1.1.3" + js-sha3 "0.5.7" + scrypt-js "2.0.4" + setimmediate "1.0.4" + uuid "2.0.1" + xmlhttprequest "1.8.0" + +ethers@^5.6.1, ethers@^5.7.2: + version "5.8.0" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.8.0.tgz#97858dc4d4c74afce83ea7562fe9493cedb4d377" + integrity sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg== + dependencies: + "@ethersproject/abi" "5.8.0" + "@ethersproject/abstract-provider" "5.8.0" + "@ethersproject/abstract-signer" "5.8.0" + "@ethersproject/address" "5.8.0" + "@ethersproject/base64" "5.8.0" + "@ethersproject/basex" "5.8.0" + "@ethersproject/bignumber" "5.8.0" + "@ethersproject/bytes" "5.8.0" + "@ethersproject/constants" "5.8.0" + "@ethersproject/contracts" "5.8.0" + "@ethersproject/hash" "5.8.0" + "@ethersproject/hdnode" "5.8.0" + "@ethersproject/json-wallets" "5.8.0" + "@ethersproject/keccak256" "5.8.0" + "@ethersproject/logger" "5.8.0" + "@ethersproject/networks" "5.8.0" + "@ethersproject/pbkdf2" "5.8.0" + "@ethersproject/properties" "5.8.0" + "@ethersproject/providers" "5.8.0" + "@ethersproject/random" "5.8.0" + "@ethersproject/rlp" "5.8.0" + "@ethersproject/sha2" "5.8.0" + "@ethersproject/signing-key" "5.8.0" + "@ethersproject/solidity" "5.8.0" + "@ethersproject/strings" "5.8.0" + "@ethersproject/transactions" "5.8.0" + "@ethersproject/units" "5.8.0" + "@ethersproject/wallet" "5.8.0" + "@ethersproject/web" "5.8.0" + "@ethersproject/wordlists" "5.8.0" + +ethjs-unit@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699" + integrity sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw== + dependencies: + bn.js "4.11.6" + number-to-bn "1.7.0" + +ethjs-util@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.6.tgz#f308b62f185f9fe6237132fb2a9818866a5cd536" + integrity sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w== + dependencies: + is-hex-prefixed "1.0.0" + strip-hex-prefix "1.0.0" + +evm-bn@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/evm-bn/-/evm-bn-1.1.2.tgz#0bfd19d13b18765eac6bdea51d286266cfeab2bc" + integrity sha512-Lq8CT1EAjSeN+Yk0h1hpSwnZyMA4Xir6fQD4vlStljAuW2xr7qLOEGDLGsTa9sU2e40EYIumA4wYhMC/e+lyKw== + dependencies: + "@ethersproject/bignumber" "^5.5.0" + from-exponential "^1.1.1" + +evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +express@^4.21.1: + version "4.22.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.22.1.tgz#1de23a09745a4fffdb39247b344bb5eaff382069" + integrity sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "~1.20.3" + content-disposition "~0.5.4" + content-type "~1.0.4" + cookie "~0.7.1" + cookie-signature "~1.0.6" + debug "2.6.9" + depd "2.0.0" + encodeurl "~2.0.0" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "~1.3.1" + fresh "~0.5.2" + http-errors "~2.0.0" + merge-descriptors "1.0.3" + methods "~1.1.2" + on-finished "~2.4.1" + parseurl "~1.3.3" + path-to-regexp "~0.1.12" + proxy-addr "~2.0.7" + qs "~6.14.0" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "~0.19.0" + serve-static "~1.16.2" + setprototypeof "1.2.0" + statuses "~2.0.1" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +extend@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== + +extsprintf@^1.2.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" + integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== + +fast-base64-decode@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fast-base64-decode/-/fast-base64-decode-1.0.0.tgz#b434a0dd7d92b12b43f26819300d2dafb83ee418" + integrity sha512-qwaScUgUGBYeDNRnbc/KyllVU88Jk1pRHPStuF/lO7B0/RTRLj7U0lkdTAutlBblY08rwZDff6tNU9cjv6j//Q== + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + +fast-uri@^3.0.1: + version "3.1.0" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.0.tgz#66eecff6c764c0df9b762e62ca7edcfb53b4edfa" + integrity sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA== + +fdir@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.5.0.tgz#ed2ab967a331ade62f18d077dae192684d50d350" + integrity sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg== + +file-entry-cache@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" + integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ== + dependencies: + flat-cache "^4.0.0" + +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== + dependencies: + to-regex-range "^5.0.1" + +finalhandler@~1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.2.tgz#1ebc2228fc7673aac4a472c310cc05b77d852b88" + integrity sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg== + dependencies: + debug "2.6.9" + encodeurl "~2.0.0" + escape-html "~1.0.3" + on-finished "~2.4.1" + parseurl "~1.3.3" + statuses "~2.0.2" + unpipe "~1.0.0" + +find-replace@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-replace/-/find-replace-3.0.0.tgz#3e7e23d3b05167a76f770c9fbd5258b0def68c38" + integrity sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ== + dependencies: + array-back "^3.0.1" + +find-up@3.0.0, find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +flat-cache@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-4.0.1.tgz#0ece39fcb14ee012f4b0410bd33dd9c1f011127c" + integrity sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw== + dependencies: + flatted "^3.2.9" + keyv "^4.5.4" + +flat@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.1.tgz#a392059cc382881ff98642f5da4dde0a959f309b" + integrity sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA== + dependencies: + is-buffer "~2.0.3" + +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== + +flatted@^3.2.9: + version "3.3.3" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358" + integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg== + +fmix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/fmix/-/fmix-0.1.0.tgz#c7bbf124dec42c9d191cfb947d0a9778dd986c0c" + integrity sha512-Y6hyofImk9JdzU8k5INtTXX1cu8LDlePWDFU5sftm9H+zKCr5SGrVjdhkvsim646cw5zD0nADj8oHyXMZmCZ9w== + dependencies: + imul "^1.0.0" + +follow-redirects@^1.12.1, follow-redirects@^1.14.0, follow-redirects@^1.15.4, follow-redirects@^1.15.6: + version "1.15.11" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" + integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== + +for-each@^0.3.3, for-each@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.5.tgz#d650688027826920feeb0af747ee7b9421a41d47" + integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg== + dependencies: + is-callable "^1.2.7" + +foreground-child@^3.1.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" + integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== + dependencies: + cross-spawn "^7.0.6" + signal-exit "^4.0.1" + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== + +forge-std@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/forge-std/-/forge-std-1.1.2.tgz#f4a0eda103538d56f9c563f3cd1fa2fd01bd9378" + integrity sha512-Wfb0iAS9PcfjMKtGpWQw9mXzJxrWD62kJCUqqLcyuI0+VRtJ3j20XembjF3kS20qELYdXft1vD/SPFVWVKMFOw== + +form-data@^2.2.0: + version "2.5.5" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.5.tgz#a5f6364ad7e4e67e95b4a07e2d8c6f711c74f624" + integrity sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + es-set-tostringtag "^2.1.0" + hasown "^2.0.2" + mime-types "^2.1.35" + safe-buffer "^5.2.1" + +form-data@^4.0.0, form-data@^4.0.4: + version "4.0.5" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053" + integrity sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + es-set-tostringtag "^2.1.0" + hasown "^2.0.2" + mime-types "^2.1.12" + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== + +fp-ts@1.19.3: + version "1.19.3" + resolved "https://registry.yarnpkg.com/fp-ts/-/fp-ts-1.19.3.tgz#261a60d1088fbff01f91256f91d21d0caaaaa96f" + integrity sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg== + +fp-ts@^1.0.0: + version "1.19.5" + resolved "https://registry.yarnpkg.com/fp-ts/-/fp-ts-1.19.5.tgz#3da865e585dfa1fdfd51785417357ac50afc520a" + integrity sha512-wDNqTimnzs8QqpldiId9OavWK2NptormjXnRJTQecNjzwfyp6P/8s/zG8e4h3ja3oqkKaY72UlTjQYt/1yXf9A== + +fraction.js@4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.4.tgz#b2bac8249a610c3396106da97c5a71da75b94b1c" + integrity sha512-pwiTgt0Q7t+GHZA4yaLjObx4vXmmdcS0iSJ19o8d/goUGgItX9UZWKWNnLHehxviD8wU2IWRsnR8cD5+yOJP2Q== + +fraction.js@^4.2.0: + version "4.3.7" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" + integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== + +fresh@~0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== + +from-exponential@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/from-exponential/-/from-exponential-1.1.1.tgz#41caff748d22e9c195713802cdac31acbe4b1b83" + integrity sha512-VBE7f5OVnYwdgB3LHa+Qo29h8qVpxhVO9Trlc+AWm+/XNAgks1tAwMFHb33mjeiof77GglsJzeYF7OqXrROP/A== + +fs-extra@^7.0.0, fs-extra@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" + integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-readdir-recursive@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" + integrity sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA== + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@~2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" + integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== + +fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.1, function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +function.prototype.name@^1.1.6, function.prototype.name@^1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.8.tgz#e68e1df7b259a5c949eeef95cdbde53edffabb78" + integrity sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + functions-have-names "^1.2.3" + hasown "^2.0.2" + is-callable "^1.2.7" + +functional-red-black-tree@^1.0.1, functional-red-black-tree@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== + +functions-have-names@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== + +ganache-cli@^6.12.2: + version "6.12.2" + resolved "https://registry.yarnpkg.com/ganache-cli/-/ganache-cli-6.12.2.tgz#c0920f7db0d4ac062ffe2375cb004089806f627a" + integrity sha512-bnmwnJDBDsOWBUP8E/BExWf85TsdDEFelQSzihSJm9VChVO1SHp94YXLP5BlA4j/OTxp0wR4R1Tje9OHOuAJVw== + dependencies: + ethereumjs-util "6.2.1" + source-map-support "0.5.12" + yargs "13.2.4" + +ganache@7.4.3: + version "7.4.3" + resolved "https://registry.yarnpkg.com/ganache/-/ganache-7.4.3.tgz#e995f1250697264efbb34d4241c374a2b0271415" + integrity sha512-RpEDUiCkqbouyE7+NMXG26ynZ+7sGiODU84Kz+FVoXUnQ4qQM4M8wif3Y4qUCt+D/eM1RVeGq0my62FPD6Y1KA== + dependencies: + "@trufflesuite/bigint-buffer" "1.1.10" + "@types/bn.js" "^5.1.0" + "@types/lru-cache" "5.1.1" + "@types/seedrandom" "3.0.1" + emittery "0.10.0" + keccak "3.0.2" + leveldown "6.1.0" + secp256k1 "4.0.3" + optionalDependencies: + bufferutil "4.0.5" + utf-8-validate "5.0.7" + +generator-function@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/generator-function/-/generator-function-2.0.1.tgz#0e75dd410d1243687a0ba2e951b94eedb8f737a2" + integrity sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g== + +get-caller-file@^2.0.1, get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-func-name@^2.0.1, get-func-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== + +get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.2.7, get-intrinsic@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== + dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + function-bind "^1.1.2" + get-proto "^1.0.1" + gopd "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + math-intrinsics "^1.1.0" + +get-port@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-3.2.0.tgz#dd7ce7de187c06c8bf353796ac71e099f0980ebc" + integrity sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg== + +get-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== + dependencies: + dunder-proto "^1.0.1" + es-object-atoms "^1.0.0" + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-symbol-description@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.1.0.tgz#7bdd54e0befe8ffc9f3b4e203220d9f1e881b6ee" + integrity sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== + dependencies: + assert-plus "^1.0.0" + +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + +glob-parent@~5.1.0, glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@10.3.0: + version "10.3.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.0.tgz#763d02a894f3cdfc521b10bbbbc8e0309e750cce" + integrity sha512-AQ1/SB9HH0yCx1jXAT4vmCbTOPe5RQ+kCurjbel5xSCGhebumUv+GJZfa1rEqor3XIViqwSEmlkZCQD43RWrBg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.0.3" + minimatch "^9.0.1" + minipass "^5.0.0 || ^6.0.2" + path-scurry "^1.7.0" + +glob@7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" + integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@7.1.7: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + +globals@^14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" + integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== + +globalthis@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" + integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== + dependencies: + define-properties "^1.2.1" + gopd "^1.0.1" + +gopd@^1.0.1, gopd@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== + +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.4: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +growl@1.10.5: + version "1.10.5" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" + integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q== + +har-validator@~5.1.3: + version "5.1.5" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== + dependencies: + ajv "^6.12.3" + har-schema "^2.0.0" + +hardhat-contract-sizer@^2.8.0: + version "2.10.1" + resolved "https://registry.yarnpkg.com/hardhat-contract-sizer/-/hardhat-contract-sizer-2.10.1.tgz#125092f9398105d0d23001056aac61c936ad841a" + integrity sha512-/PPQQbUMgW6ERzk8M0/DA8/v2TEM9xRRAnF9qKPNMYF6FX5DFWcnxBsQvtp8uBz+vy7rmLyV9Elti2wmmhgkbg== + dependencies: + chalk "^4.0.0" + cli-table3 "^0.6.0" + strip-ansi "^6.0.0" + +hardhat-gas-reporter@^1.0.4: + version "1.0.10" + resolved "https://registry.yarnpkg.com/hardhat-gas-reporter/-/hardhat-gas-reporter-1.0.10.tgz#ebe5bda5334b5def312747580cd923c2b09aef1b" + integrity sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA== + dependencies: + array-uniq "1.0.3" + eth-gas-reporter "^0.2.25" + sha1 "^1.1.1" + +hardhat-preprocessor@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/hardhat-preprocessor/-/hardhat-preprocessor-0.1.5.tgz#75b22641fd6a680739c995d03bd5f7868eb72144" + integrity sha512-j8m44mmPxpxAAd0G8fPHRHOas/INZdzptSur0TNJvMEGcFdLDhbHHxBcqZVQ/bmiW42q4gC60AP4CXn9EF018g== + dependencies: + murmur-128 "^0.2.1" + +hardhat-tracer@^1.1.0-rc.9: + version "1.3.0" + resolved "https://registry.yarnpkg.com/hardhat-tracer/-/hardhat-tracer-1.3.0.tgz#273d8aeca57283f597f2eaef2c8acdd0162f3672" + integrity sha512-mUYuRJWlxCwY4R2urCpNM4ecVSq/iMLiVP9YZKlfXyv4R8T+4HAcTfumilUOXHGe6wHI+8Ki2EaTon3KgzATDA== + dependencies: + ethers "^5.6.1" + +hardhat@2.26.0, hardhat@^2.17.1, hardhat@^2.2.1: + version "2.26.0" + resolved "https://registry.yarnpkg.com/hardhat/-/hardhat-2.26.0.tgz#8244d7be2ae69f89240fba78f4e35adf5883c764" + integrity sha512-hwEUBvMJzl3Iuru5bfMOEDeF2d7cbMNNF46rkwdo8AeW2GDT4VxFLyYWTi6PTLrZiftHPDiKDlAdAiGvsR9FYA== + dependencies: + "@ethereumjs/util" "^9.1.0" + "@ethersproject/abi" "^5.1.2" + "@nomicfoundation/edr" "^0.11.3" + "@nomicfoundation/solidity-analyzer" "^0.1.0" + "@sentry/node" "^5.18.1" + adm-zip "^0.4.16" + aggregate-error "^3.0.0" + ansi-escapes "^4.3.0" + boxen "^5.1.2" + chokidar "^4.0.0" + ci-info "^2.0.0" + debug "^4.1.1" + enquirer "^2.3.0" + env-paths "^2.2.0" + ethereum-cryptography "^1.0.3" + find-up "^5.0.0" + fp-ts "1.19.3" + fs-extra "^7.0.1" + immutable "^4.0.0-rc.12" + io-ts "1.10.4" + json-stream-stringify "^3.1.4" + keccak "^3.0.2" + lodash "^4.17.11" + micro-eth-signer "^0.16.0" + mnemonist "^0.38.0" + mocha "^10.0.0" + p-map "^4.0.0" + picocolors "^1.1.0" + raw-body "^2.4.1" + resolve "1.17.0" + semver "^6.3.0" + solc "0.8.26" + source-map-support "^0.5.13" + stacktrace-parser "^0.1.10" + tinyglobby "^0.2.6" + tsort "0.0.1" + undici "^5.14.0" + uuid "^8.3.2" + ws "^7.4.6" + +has-bigints@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.1.0.tgz#28607e965ac967e03cd2a2c70a2636a1edad49fe" + integrity sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-proto@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.2.0.tgz#5de5a6eabd95fdffd9818b43055e8065e39fe9d5" + integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ== + dependencies: + dunder-proto "^1.0.0" + +has-symbols@^1.0.0, has-symbols@^1.0.3, has-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== + +has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + +hash-base@^3.0.0, hash-base@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.2.tgz#79d72def7611c3f6e3c3b5730652638001b10a74" + integrity sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg== + dependencies: + inherits "^2.0.4" + readable-stream "^2.3.8" + safe-buffer "^5.2.1" + to-buffer "^1.2.1" + +hash.js@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" + integrity sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.0" + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + +he@1.2.0, he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hosted-git-info@^2.6.0: + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +http-basic@^8.1.1: + version "8.1.3" + resolved "https://registry.yarnpkg.com/http-basic/-/http-basic-8.1.3.tgz#a7cabee7526869b9b710136970805b1004261bbf" + integrity sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw== + dependencies: + caseless "^0.12.0" + concat-stream "^1.6.2" + http-response-object "^3.0.1" + parse-cache-control "^1.0.1" + +http-errors@~2.0.0, http-errors@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.1.tgz#36d2f65bc909c8790018dd36fb4d93da6caae06b" + integrity sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ== + dependencies: + depd "~2.0.0" + inherits "~2.0.4" + setprototypeof "~1.2.0" + statuses "~2.0.2" + toidentifier "~1.0.1" + +http-response-object@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/http-response-object/-/http-response-object-3.0.2.tgz#7f435bb210454e4360d074ef1f989d5ea8aa9810" + integrity sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA== + dependencies: + "@types/node" "^10.0.3" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ== + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +https-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== + dependencies: + agent-base "6" + debug "4" + +iconv-lite@~0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ieee754@^1.1.13, ieee754@^1.1.4, ieee754@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +ignore@^5.2.0: + version "5.3.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + +immediate@^3.2.3: + version "3.3.0" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.3.0.tgz#1aef225517836bcdf7f2a2de2600c79ff0269266" + integrity sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q== + +immediate@~3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.2.3.tgz#d140fa8f614659bd6541233097ddaac25cdd991c" + integrity sha512-RrGCXRm/fRVqMIhqXrGEX9rRADavPiDFSoMb/k64i9XMk8uH4r/Omi5Ctierj6XzNecwDbO4WuFbDD1zmpl3Tg== + +immutable@^4.0.0-rc.12: + version "4.3.7" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.7.tgz#c70145fc90d89fb02021e65c84eb0226e4e5a381" + integrity sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw== + +import-fresh@^3.2.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" + integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +imul@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/imul/-/imul-1.0.1.tgz#9d5867161e8b3de96c2c38d5dc7cb102f35e2ac9" + integrity sha512-WFAgfwPLAjU66EKt6vRdTlKj4nAgIDQzh29JonLa4Bqtl6D8JrIMvWjCnx7xEjVNmP3U0fM5o8ZObk7d0f62bA== + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +internal-slot@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.1.0.tgz#1eac91762947d2f7056bc838d93e13b2e9604961" + integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw== + dependencies: + es-errors "^1.3.0" + hasown "^2.0.2" + side-channel "^1.1.0" + +invert-kv@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" + integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== + +io-ts@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/io-ts/-/io-ts-1.10.4.tgz#cd5401b138de88e4f920adbcb7026e2d1967e6e2" + integrity sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g== + dependencies: + fp-ts "^1.0.0" + +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + +is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.5.tgz#65742e1e687bd2cc666253068fd8707fe4d44280" + integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + get-intrinsic "^1.2.6" + +is-async-function@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-async-function/-/is-async-function-2.1.1.tgz#3e69018c8e04e73b738793d020bfe884b9fd3523" + integrity sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ== + dependencies: + async-function "^1.0.0" + call-bound "^1.0.3" + get-proto "^1.0.1" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-bigint@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.1.0.tgz#dda7a3445df57a42583db4228682eba7c4170672" + integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ== + dependencies: + has-bigints "^1.0.2" + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-boolean-object@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.2.2.tgz#7067f47709809a393c71ff5bb3e135d8a9215d9e" + integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-buffer@^2.0.5, is-buffer@~2.0.3: + version "2.0.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + +is-callable@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== + +is-data-view@^1.0.1, is-data-view@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.2.tgz#bae0a41b9688986c2188dda6657e56b8f9e63b8e" + integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw== + dependencies: + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + is-typed-array "^1.1.13" + +is-date-object@^1.0.5, is-date-object@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.1.0.tgz#ad85541996fc7aa8b2729701d27b7319f95d82f7" + integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg== + dependencies: + call-bound "^1.0.2" + has-tostringtag "^1.0.2" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-finalizationregistry@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz#eefdcdc6c94ddd0674d9c85887bf93f944a97c90" + integrity sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg== + dependencies: + call-bound "^1.0.3" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-function@^1.0.10: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.1.2.tgz#ae3b61e3d5ea4e4839b90bad22b02335051a17d5" + integrity sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA== + dependencies: + call-bound "^1.0.4" + generator-function "^2.0.0" + get-proto "^1.0.1" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-hex-prefixed@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" + integrity sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA== + +is-map@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" + integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== + +is-negative-zero@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" + integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== + +is-number-object@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.1.1.tgz#144b21e95a1bc148205dcc2814a9134ec41b2541" + integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-plain-obj@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + +is-regex@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22" + integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g== + dependencies: + call-bound "^1.0.2" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +is-set@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" + integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== + +is-shared-array-buffer@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz#9b67844bd9b7f246ba0708c3a93e34269c774f6f" + integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A== + dependencies: + call-bound "^1.0.3" + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + +is-string@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9" + integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-symbol@^1.0.4, is-symbol@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.1.1.tgz#f47761279f532e2b05a7024a7506dbbedacd0634" + integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w== + dependencies: + call-bound "^1.0.2" + has-symbols "^1.1.0" + safe-regex-test "^1.1.0" + +is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15: + version "1.1.15" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.15.tgz#4bfb4a45b61cee83a5a46fba778e4e8d59c0ce0b" + integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== + dependencies: + which-typed-array "^1.1.16" + +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + +is-unicode-supported@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== + +is-url@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52" + integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww== + +is-weakmap@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" + integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== + +is-weakref@^1.0.2, is-weakref@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.1.1.tgz#eea430182be8d64174bd96bffbc46f21bf3f9293" + integrity sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew== + dependencies: + call-bound "^1.0.3" + +is-weakset@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.4.tgz#c9f5deb0bc1906c6d6f1027f284ddf459249daca" + integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ== + dependencies: + call-bound "^1.0.3" + get-intrinsic "^1.2.6" + +isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isarray@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +isomorphic-unfetch@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz#87341d5f4f7b63843d468438128cb087b7c3e98f" + integrity sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q== + dependencies: + node-fetch "^2.6.1" + unfetch "^4.2.0" + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== + +jackspeak@^2.0.3: + version "2.3.6" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" + integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + +javascript-natural-sort@^0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/javascript-natural-sort/-/javascript-natural-sort-0.7.1.tgz#f9e2303d4507f6d74355a73664d1440fb5a0ef59" + integrity sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw== + +js-cookie@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-2.2.1.tgz#69e106dc5d5806894562902aa5baec3744e9b2b8" + integrity sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ== + +js-sha3@0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7" + integrity sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g== + +js-sha3@0.8.0, js-sha3@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +js-yaml@3.13.1: + version "3.13.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" + integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@^4.1.0, js-yaml@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.1.tgz#854c292467705b699476e1a2decc0c8a3458806b" + integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA== + dependencies: + argparse "^2.0.1" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== + +json-bigint@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1" + integrity sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ== + dependencies: + bignumber.js "^9.0.0" + +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== + +json-stream-stringify@^3.1.4: + version "3.1.6" + resolved "https://registry.yarnpkg.com/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz#ebe32193876fb99d4ec9f612389a8d8e2b5d54d4" + integrity sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog== + +json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== + optionalDependencies: + graceful-fs "^4.1.6" + +jsprim@^1.2.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" + integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw== + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.4.0" + verror "1.10.0" + +keccak256@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/keccak256/-/keccak256-1.0.6.tgz#dd32fb771558fed51ce4e45a035ae7515573da58" + integrity sha512-8GLiM01PkdJVGUhR1e6M/AvWnSqYS0HaERI+K/QtStGDGlSTx2B1zTqZk4Zlqu5TxHJNTxWAdP9Y+WI50OApUw== + dependencies: + bn.js "^5.2.0" + buffer "^6.0.3" + keccak "^3.0.2" + +keccak@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.1.tgz#ae30a0e94dbe43414f741375cff6d64c8bea0bff" + integrity sha512-epq90L9jlFWCW7+pQa6JOnKn2Xgl2mtI664seYR6MHskvI9agt7AnDqmAlp9TqU4/caMYbA08Hi5DMZAl5zdkA== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + +keccak@3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.2.tgz#4c2c6e8c54e04f2670ee49fa734eb9da152206e0" + integrity sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + readable-stream "^3.6.0" + +keccak@^3.0.0, keccak@^3.0.2: + version "3.0.4" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.4.tgz#edc09b89e633c0549da444432ecf062ffadee86d" + integrity sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + readable-stream "^3.6.0" + +keyv@^4.5.4: + version "4.5.4" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + +lcid@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" + integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== + dependencies: + invert-kv "^2.0.0" + +level-codec@^9.0.0: + version "9.0.2" + resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-9.0.2.tgz#fd60df8c64786a80d44e63423096ffead63d8cbc" + integrity sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ== + dependencies: + buffer "^5.6.0" + +level-concat-iterator@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-3.1.0.tgz#5235b1f744bc34847ed65a50548aa88d22e881cf" + integrity sha512-BWRCMHBxbIqPxJ8vHOvKUsaO0v1sLYZtjN3K2iZJsRBYtp+ONsY6Jfi6hy9K3+zolgQRryhIn2NRZjZnWJ9NmQ== + dependencies: + catering "^2.1.0" + +level-concat-iterator@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz#1d1009cf108340252cb38c51f9727311193e6263" + integrity sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw== + +level-errors@^2.0.0, level-errors@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-2.0.1.tgz#2132a677bf4e679ce029f517c2f17432800c05c8" + integrity sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw== + dependencies: + errno "~0.1.1" + +level-iterator-stream@~4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz#7ceba69b713b0d7e22fcc0d1f128ccdc8a24f79c" + integrity sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q== + dependencies: + inherits "^2.0.4" + readable-stream "^3.4.0" + xtend "^4.0.2" + +level-mem@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/level-mem/-/level-mem-5.0.1.tgz#c345126b74f5b8aa376dc77d36813a177ef8251d" + integrity sha512-qd+qUJHXsGSFoHTziptAKXoLX87QjR7v2KMbqncDXPxQuCdsQlzmyX+gwrEHhlzn08vkf8TyipYyMmiC6Gobzg== + dependencies: + level-packager "^5.0.3" + memdown "^5.0.0" + +level-packager@^5.0.3: + version "5.1.1" + resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-5.1.1.tgz#323ec842d6babe7336f70299c14df2e329c18939" + integrity sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ== + dependencies: + encoding-down "^6.3.0" + levelup "^4.3.2" + +level-supports@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-2.1.0.tgz#9af908d853597ecd592293b2fad124375be79c5f" + integrity sha512-E486g1NCjW5cF78KGPrMDRBYzPuueMZ6VBXHT6gC7A8UYWGiM14fGgp+s/L1oFfDWSPV/+SFkYCmZ0SiESkRKA== + +level-supports@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-1.0.1.tgz#2f530a596834c7301622521988e2c36bb77d122d" + integrity sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg== + dependencies: + xtend "^4.0.2" + +level-ws@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/level-ws/-/level-ws-2.0.0.tgz#207a07bcd0164a0ec5d62c304b4615c54436d339" + integrity sha512-1iv7VXx0G9ec1isqQZ7y5LmoZo/ewAsyDHNA8EFDW5hqH2Kqovm33nSFkSdnLLAK+I5FlT+lo5Cw9itGe+CpQA== + dependencies: + inherits "^2.0.3" + readable-stream "^3.1.0" + xtend "^4.0.1" + +leveldown@6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/leveldown/-/leveldown-6.1.0.tgz#7ab1297706f70c657d1a72b31b40323aa612b9ee" + integrity sha512-8C7oJDT44JXxh04aSSsfcMI8YiaGRhOFI9/pMEL7nWJLVsWajDPTRxsSHTM2WcTVY5nXM+SuRHzPPi0GbnDX+w== + dependencies: + abstract-leveldown "^7.2.0" + napi-macros "~2.0.0" + node-gyp-build "^4.3.0" + +levelup@^4.3.2: + version "4.4.0" + resolved "https://registry.yarnpkg.com/levelup/-/levelup-4.4.0.tgz#f89da3a228c38deb49c48f88a70fb71f01cafed6" + integrity sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ== + dependencies: + deferred-leveldown "~5.3.0" + level-errors "~2.0.0" + level-iterator-stream "~4.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== + +lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21: + version "4.17.23" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" + integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== + +log-symbols@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" + integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== + dependencies: + chalk "^2.4.2" + +log-symbols@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== + dependencies: + chalk "^4.1.0" + is-unicode-supported "^0.1.0" + +loupe@^2.3.6: + version "2.3.7" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.7.tgz#6e69b7d4db7d3ab436328013d37d1c8c3540c697" + integrity sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA== + dependencies: + get-func-name "^2.0.1" + +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +lru_map@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/lru_map/-/lru_map-0.3.3.tgz#b5c8351b9464cbd750335a79650a0ec0e56118dd" + integrity sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ== + +ltgt@~2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" + integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== + +make-error@^1.1.1: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +map-age-cleaner@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +markdown-table@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-1.1.3.tgz#9fcb69bcfdb8717bfd0398c6ec2d93036ef8de60" + integrity sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q== + +math-intrinsics@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== + +mathjs@^10.4.0: + version "10.6.4" + resolved "https://registry.yarnpkg.com/mathjs/-/mathjs-10.6.4.tgz#1b87a1268781d64f0c8b4e5e1b36cf7ecf58bb05" + integrity sha512-omQyvRE1jIy+3k2qsqkWASOcd45aZguXZDckr3HtnTYyXk5+2xpVfC3kATgbO2Srjxlqww3TVdhD0oUdZ/hiFA== + dependencies: + "@babel/runtime" "^7.18.6" + complex.js "^2.1.1" + decimal.js "^10.3.1" + escape-latex "^1.2.0" + fraction.js "^4.2.0" + javascript-natural-sort "^0.7.1" + seedrandom "^3.0.5" + tiny-emitter "^2.1.0" + typed-function "^2.1.0" + +mathjs@^11.0.1: + version "11.12.0" + resolved "https://registry.yarnpkg.com/mathjs/-/mathjs-11.12.0.tgz#e933e5941930d44763ddfc5bfb08b90059449b2c" + integrity sha512-UGhVw8rS1AyedyI55DGz9q1qZ0p98kyKPyc9vherBkoueLntPfKtPBh14x+V4cdUWK0NZV2TBwqRFlvadscSuw== + dependencies: + "@babel/runtime" "^7.23.2" + complex.js "^2.1.1" + decimal.js "^10.4.3" + escape-latex "^1.2.0" + fraction.js "4.3.4" + javascript-natural-sort "^0.7.1" + seedrandom "^3.0.5" + tiny-emitter "^2.1.0" + typed-function "^4.1.1" + +mcl-wasm@^0.7.1: + version "0.7.9" + resolved "https://registry.yarnpkg.com/mcl-wasm/-/mcl-wasm-0.7.9.tgz#c1588ce90042a8700c3b60e40efb339fc07ab87f" + integrity sha512-iJIUcQWA88IJB/5L15GnJVnSQJmf/YaxxV6zRavv83HILHaJQb6y0iFyDMdDO0gN8X37tdxmAOrH/P8B6RB8sQ== + +md5.js@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== + +mem@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" + integrity sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w== + dependencies: + map-age-cleaner "^0.1.1" + mimic-fn "^2.0.0" + p-is-promise "^2.0.0" + +memdown@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/memdown/-/memdown-5.1.0.tgz#608e91a9f10f37f5b5fe767667a8674129a833cb" + integrity sha512-B3J+UizMRAlEArDjWHTMmadet+UKwHd3UjMgGBkZcKAxAYVPS9o0Yeiha4qvz7iGiL2Sb3igUft6p7nbFWctpw== + dependencies: + abstract-leveldown "~6.2.1" + functional-red-black-tree "~1.0.1" + immediate "~3.2.3" + inherits "~2.0.1" + ltgt "~2.2.0" + safe-buffer "~5.2.0" + +memorystream@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" + integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== + +merge-descriptors@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" + integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== + +merkle-patricia-tree@^4.2.2, merkle-patricia-tree@^4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-4.2.4.tgz#ff988d045e2bf3dfa2239f7fabe2d59618d57413" + integrity sha512-eHbf/BG6eGNsqqfbLED9rIqbsF4+sykEaBn6OLNs71tjclbMcMOk1tEPmJKcNcNCLkvbpY/lwyOlizWsqPNo8w== + dependencies: + "@types/levelup" "^4.3.0" + ethereumjs-util "^7.1.4" + level-mem "^5.0.1" + level-ws "^2.0.0" + readable-stream "^3.6.0" + semaphore-async-await "^1.5.1" + +merkletreejs@^0.2.31: + version "0.2.32" + resolved "https://registry.yarnpkg.com/merkletreejs/-/merkletreejs-0.2.32.tgz#cf1c0760e2904e4a1cc269108d6009459fd06223" + integrity sha512-TostQBiwYRIwSE5++jGmacu3ODcKAgqb0Y/pnIohXS7sWxh1gCkSptbmF1a43faehRDpcHf7J/kv0Ml2D/zblQ== + dependencies: + bignumber.js "^9.0.1" + buffer-reverse "^1.0.1" + crypto-js "^3.1.9-1" + treeify "^1.1.0" + web3-utils "^1.3.4" + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== + +micro-eth-signer@^0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/micro-eth-signer/-/micro-eth-signer-0.16.0.tgz#a35d0de41ae9164ec96150a0f1fc29e7635ff106" + integrity sha512-rsSJcMGfY+kt3ROlL3U6y5BcjkK2H0zDKUQV6soo1JvjrctKKe+X7rKB0YIuwhWjlhJIoVHLuRYF+GXyyuVXxQ== + dependencies: + "@noble/curves" "~1.9.2" + "@noble/hashes" "2.0.0-beta.1" + micro-packed "~0.7.3" + +micro-ftch@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/micro-ftch/-/micro-ftch-0.3.1.tgz#6cb83388de4c1f279a034fb0cf96dfc050853c5f" + integrity sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg== + +micro-packed@~0.7.3: + version "0.7.3" + resolved "https://registry.yarnpkg.com/micro-packed/-/micro-packed-0.7.3.tgz#59e96b139dffeda22705c7a041476f24cabb12b6" + integrity sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg== + dependencies: + "@scure/base" "~1.2.5" + +miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12, mime-types@^2.1.35, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mimic-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^3.0.4, minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^5.0.1, minimatch@^5.1.6: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^9.0.1, minimatch@^9.0.5: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6, minimist@^1.2.7: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +"minipass@^5.0.0 || ^6.0.2": + version "6.0.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-6.0.2.tgz#542844b6c4ce95b202c0995b0a471f1229de4c81" + integrity sha512-MzWSV5nYVT7mVyWCwn2o7JH13w2TBRmmSqSRCKzTw+lmft9X4z+3wjvs06Tzijo5z4W/kahUCDpRXTF+ZrmF/w== + +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + +mkdirp@0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + +mkdirp@^0.5.1: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== + dependencies: + minimist "^1.2.6" + +mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +mnemonist@^0.38.0: + version "0.38.5" + resolved "https://registry.yarnpkg.com/mnemonist/-/mnemonist-0.38.5.tgz#4adc7f4200491237fe0fa689ac0b86539685cade" + integrity sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg== + dependencies: + obliterator "^2.0.0" + +mocha@^10.0.0, mocha@^10.2.0: + version "10.8.2" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.8.2.tgz#8d8342d016ed411b12a429eb731b825f961afb96" + integrity sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg== + dependencies: + ansi-colors "^4.1.3" + browser-stdout "^1.3.1" + chokidar "^3.5.3" + debug "^4.3.5" + diff "^5.2.0" + escape-string-regexp "^4.0.0" + find-up "^5.0.0" + glob "^8.1.0" + he "^1.2.0" + js-yaml "^4.1.0" + log-symbols "^4.1.0" + minimatch "^5.1.6" + ms "^2.1.3" + serialize-javascript "^6.0.2" + strip-json-comments "^3.1.1" + supports-color "^8.1.1" + workerpool "^6.5.1" + yargs "^16.2.0" + yargs-parser "^20.2.9" + yargs-unparser "^2.0.0" + +mocha@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.2.0.tgz#01cc227b00d875ab1eed03a75106689cfed5a604" + integrity sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ== + dependencies: + ansi-colors "3.2.3" + browser-stdout "1.3.1" + chokidar "3.3.0" + debug "3.2.6" + diff "3.5.0" + escape-string-regexp "1.0.5" + find-up "3.0.0" + glob "7.1.3" + growl "1.10.5" + he "1.2.0" + js-yaml "3.13.1" + log-symbols "3.0.0" + minimatch "3.0.4" + mkdirp "0.5.5" + ms "2.1.1" + node-environment-flags "1.0.6" + object.assign "4.1.0" + strip-json-comments "2.0.1" + supports-color "6.0.0" + which "1.3.1" + wide-align "1.1.3" + yargs "13.3.2" + yargs-parser "13.1.2" + yargs-unparser "1.6.0" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + +ms@2.1.3, ms@^2.1.1, ms@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +murmur-128@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/murmur-128/-/murmur-128-0.2.1.tgz#a9f6568781d2350ecb1bf80c14968cadbeaa4b4d" + integrity sha512-WseEgiRkI6aMFBbj8Cg9yBj/y+OdipwVC7zUo3W2W1JAJITwouUOtpqsmGSg67EQmwwSyod7hsVsWY5LsrfQVg== + dependencies: + encode-utf8 "^1.0.2" + fmix "^0.1.0" + imul "^1.0.0" + +napi-macros@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b" + integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +negotiator@0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +node-addon-api@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32" + integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA== + +node-addon-api@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" + integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== + +node-environment-flags@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" + integrity sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw== + dependencies: + object.getownpropertydescriptors "^2.0.3" + semver "^5.7.0" + +node-fetch@^2.6.0, node-fetch@^2.6.1, node-fetch@^2.6.7: + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + dependencies: + whatwg-url "^5.0.0" + +node-gyp-build@4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3" + integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q== + +node-gyp-build@4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.4.0.tgz#42e99687ce87ddeaf3a10b99dc06abc11021f3f4" + integrity sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ== + +node-gyp-build@^4.2.0, node-gyp-build@^4.3.0: + version "4.8.4" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" + integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== + +nofilter@^3.0.2, nofilter@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/nofilter/-/nofilter-3.1.0.tgz#c757ba68801d41ff930ba2ec55bab52ca184aa66" + integrity sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g== + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== + dependencies: + path-key "^2.0.0" + +number-to-bn@1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0" + integrity sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig== + dependencies: + bn.js "4.11.6" + strip-hex-prefix "1.0.0" + +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +object-assign@^4, object-assign@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +object-inspect@^1.13.3, object-inspect@^1.13.4: + version "1.13.4" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" + integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== + +object-keys@^1.0.11, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" + integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + has-symbols "^1.0.0" + object-keys "^1.0.11" + +object.assign@^4.1.7: + version "4.1.7" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" + integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + has-symbols "^1.1.0" + object-keys "^1.1.1" + +object.getownpropertydescriptors@^2.0.3: + version "2.1.9" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.9.tgz#bf9e7520f14d50de88dee2b9c9eca841166322dc" + integrity sha512-mt8YM6XwsTTovI+kdZdHSxoyF2DI59up034orlC9NfweclcWOt7CVascNNLp6U+bjFVCVCIh9PwS76tDM/rH8g== + dependencies: + array.prototype.reduce "^1.0.8" + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.24.0" + es-object-atoms "^1.1.1" + gopd "^1.2.0" + safe-array-concat "^1.1.3" + +obliterator@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-2.0.5.tgz#031e0145354b0c18840336ae51d41e7d6d2c76aa" + integrity sha512-42CPE9AhahZRsMNslczq0ctAEtqk8Eka26QofnqC346BZdHDySk3LWka23LI7ULIw11NmltpiLagIq8gBozxTw== + +on-finished@~2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +optionator@^0.9.3: + version "0.9.4" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" + integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.5" + +os-locale@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" + integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== + dependencies: + execa "^1.0.0" + lcid "^2.0.0" + mem "^4.0.0" + +os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== + +own-keys@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/own-keys/-/own-keys-1.0.1.tgz#e4006910a2bf913585289676eebd6f390cf51358" + integrity sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg== + dependencies: + get-intrinsic "^1.2.6" + object-keys "^1.1.1" + safe-push-apply "^1.0.0" + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + +p-is-promise@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== + +p-limit@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-cache-control@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parse-cache-control/-/parse-cache-control-1.0.1.tgz#8eeab3e54fa56920fe16ba38f77fa21aacc2d74e" + integrity sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg== + +parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-browserify@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-scurry@^1.7.0: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + +path-to-regexp@~0.1.12: + version "0.1.12" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.12.tgz#d5e1a12e478a976d432ef3c58d534b9923164bb7" + integrity sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ== + +pathval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== + +pbkdf2@^3.0.17, pbkdf2@^3.0.9: + version "3.1.5" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.5.tgz#444a59d7a259a95536c56e80c89de31cc01ed366" + integrity sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ== + dependencies: + create-hash "^1.2.0" + create-hmac "^1.1.7" + ripemd160 "^2.0.3" + safe-buffer "^5.2.1" + sha.js "^2.4.12" + to-buffer "^1.2.1" + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== + +picocolors@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + +picomatch@^2.0.4, picomatch@^2.2.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +picomatch@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.3.tgz#796c76136d1eead715db1e7bad785dedd695a042" + integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q== + +possible-typed-array-names@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" + integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prettier-plugin-solidity@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/prettier-plugin-solidity/-/prettier-plugin-solidity-1.4.3.tgz#73f8adeb0214fb3db1c2d59023b39e079be69019" + integrity sha512-Mrr/iiR9f9IaeGRMZY2ApumXcn/C5Gs3S7B7hWB3gigBFML06C0yEyW86oLp0eqiA0qg+46FaChgLPJCj/pIlg== + dependencies: + "@solidity-parser/parser" "^0.20.1" + semver "^7.7.1" + +prettier@^2.3.1: + version "2.8.8" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" + integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== + +prettier@^3.5.3: + version "3.8.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.8.1.tgz#edf48977cf991558f4fcbd8a3ba6015ba2a3a173" + integrity sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg== + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +promise@^8.0.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/promise/-/promise-8.3.0.tgz#8cb333d1edeb61ef23869fbb8a4ea0279ab60e0a" + integrity sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg== + dependencies: + asap "~2.0.6" + +proper-lockfile@^4.1.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-4.1.2.tgz#c8b9de2af6b2f1601067f98e01ac66baa223141f" + integrity sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA== + dependencies: + graceful-fs "^4.2.4" + retry "^0.12.0" + signal-exit "^3.0.2" + +proxy-addr@~2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.1" + +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== + +psl@^1.1.28: + version "1.15.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.15.0.tgz#bdace31896f1d97cec6a79e8224898ce93d974c6" + integrity sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w== + dependencies: + punycode "^2.3.1" + +pump@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.3.tgz#151d979f1a29668dc0025ec589a455b53282268d" + integrity sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== + +punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== + +qs@^6.12.3, qs@^6.4.0, qs@~6.14.0: + version "6.14.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" + integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== + dependencies: + side-channel "^1.1.0" + +qs@~6.5.2: + version "6.5.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" + integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== + +queue-microtask@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +randombytes@^2.0.1, randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@^2.4.1, raw-body@~2.5.3: + version "2.5.3" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.3.tgz#11c6650ee770a7de1b494f197927de0c923822e2" + integrity sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA== + dependencies: + bytes "~3.1.2" + http-errors "~2.0.1" + iconv-lite "~0.4.24" + unpipe "~1.0.0" + +readable-stream@^2.2.2, readable-stream@^2.3.8: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + +readable-stream@^3.1.0, readable-stream@^3.4.0, readable-stream@^3.6.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readdirp@^4.0.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-4.1.2.tgz#eb85801435fbf2a7ee58f19e0921b068fc69948d" + integrity sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg== + +readdirp@~3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.2.0.tgz#c30c33352b12c96dfb4b895421a49fd5a9593839" + integrity sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ== + dependencies: + picomatch "^2.0.4" + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +readline-sync@^1.4.10: + version "1.4.10" + resolved "https://registry.yarnpkg.com/readline-sync/-/readline-sync-1.4.10.tgz#41df7fbb4b6312d673011594145705bf56d8873b" + integrity sha512-gNva8/6UAe8QYepIQH/jQ2qn91Qj0B9sYjMBBs3QOB8F2CXcKgLxQaJRP76sWVRQt+QU+8fAkCbCvjjMFu7Ycw== + +reduce-flatten@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/reduce-flatten/-/reduce-flatten-2.0.0.tgz#734fd84e65f375d7ca4465c69798c25c9d10ae27" + integrity sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w== + +reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9: + version "1.0.10" + resolved "https://registry.yarnpkg.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz#c629219e78a3316d8b604c765ef68996964e7bf9" + integrity sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.7" + get-proto "^1.0.1" + which-builtin-type "^1.2.1" + +regexp.prototype.flags@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" + integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-errors "^1.3.0" + get-proto "^1.0.1" + gopd "^1.2.0" + set-function-name "^2.0.2" + +req-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/req-cwd/-/req-cwd-2.0.0.tgz#d4082b4d44598036640fb73ddea01ed53db49ebc" + integrity sha512-ueoIoLo1OfB6b05COxAA9UpeoscNpYyM+BqYlA7H6LVF4hKGPXQQSSaD2YmvDVJMkk4UDpAHIeU1zG53IqjvlQ== + dependencies: + req-from "^2.0.0" + +req-from@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/req-from/-/req-from-2.0.0.tgz#d74188e47f93796f4aa71df6ee35ae689f3e0e70" + integrity sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA== + dependencies: + resolve-from "^3.0.0" + +request-promise-core@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" + integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw== + dependencies: + lodash "^4.17.19" + +request-promise-native@^1.0.5: + version "1.0.9" + resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.9.tgz#e407120526a5efdc9a39b28a5679bf47b9d9dc28" + integrity sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g== + dependencies: + request-promise-core "1.1.4" + stealthy-require "^1.1.1" + tough-cookie "^2.3.3" + +request@^2.85.0, request@^2.88.0: + version "2.88.2" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.8.0" + caseless "~0.12.0" + combined-stream "~1.0.6" + extend "~3.0.2" + forever-agent "~0.6.1" + form-data "~2.3.2" + har-validator "~5.1.3" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.5.0" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + integrity sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw== + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve@1.17.0: + version "1.17.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" + integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== + dependencies: + path-parse "^1.0.6" + +retry@0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" + integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== + +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== + +ripemd160@^2.0.0, ripemd160@^2.0.1, ripemd160@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.3.tgz#9be54e4ba5e3559c8eee06a25cd7648bbccdf5a8" + integrity sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA== + dependencies: + hash-base "^3.1.2" + inherits "^2.0.4" + +rlp@2.2.6: + version "2.2.6" + resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.6.tgz#c80ba6266ac7a483ef1e69e8e2f056656de2fb2c" + integrity sha512-HAfAmL6SDYNWPUOJNrM500x4Thn4PZsEy5pijPh40U9WfNk0z15hUYzO9xVIMAdIHdFtD8CBDHd75Td1g36Mjg== + dependencies: + bn.js "^4.11.1" + +rlp@^2.2.3, rlp@^2.2.4: + version "2.2.7" + resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.7.tgz#33f31c4afac81124ac4b283e2bd4d9720b30beaf" + integrity sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ== + dependencies: + bn.js "^5.2.0" + +rustbn.js@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/rustbn.js/-/rustbn.js-0.2.0.tgz#8082cb886e707155fd1cb6f23bd591ab8d55d0ca" + integrity sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA== + +safe-array-concat@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3" + integrity sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + has-symbols "^1.1.0" + isarray "^2.0.5" + +safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-push-apply@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/safe-push-apply/-/safe-push-apply-1.0.0.tgz#01850e981c1602d398c85081f360e4e6d03d27f5" + integrity sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA== + dependencies: + es-errors "^1.3.0" + isarray "^2.0.5" + +safe-regex-test@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz#7f87dfb67a3150782eaaf18583ff5d1711ac10c1" + integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-regex "^1.2.1" + +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +scrypt-js@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-2.0.4.tgz#32f8c5149f0797672e551c07e230f834b6af5f16" + integrity sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw== + +scrypt-js@3.0.1, scrypt-js@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +secp256k1@4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-4.0.3.tgz#c4559ecd1b8d3c1827ed2d1b94190d69ce267303" + integrity sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA== + dependencies: + elliptic "^6.5.4" + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + +secp256k1@^4.0.1: + version "4.0.4" + resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-4.0.4.tgz#58f0bfe1830fe777d9ca1ffc7574962a8189f8ab" + integrity sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw== + dependencies: + elliptic "^6.5.7" + node-addon-api "^5.0.0" + node-gyp-build "^4.2.0" + +seedrandom@3.0.5, seedrandom@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-3.0.5.tgz#54edc85c95222525b0c7a6f6b3543d8e0b3aa0a7" + integrity sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg== + +semaphore-async-await@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/semaphore-async-await/-/semaphore-async-await-1.5.1.tgz#857bef5e3644601ca4b9570b87e9df5ca12974fa" + integrity sha512-b/ptP11hETwYWpeilHXXQiV5UJNJl7ZWWooKRE5eBIYWoom6dZ0SluCIdCtKycsMtZgKWE01/qAw6jblw1YVhg== + +semver@^5.5.0, semver@^5.7.0: + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== + +semver@^6.3.0: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^7.7.1: + version "7.7.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" + integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== + +send@~0.19.0, send@~0.19.1: + version "0.19.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.19.2.tgz#59bc0da1b4ea7ad42736fd642b1c4294e114ff29" + integrity sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~2.0.0" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "~0.5.2" + http-errors "~2.0.1" + mime "1.6.0" + ms "2.1.3" + on-finished "~2.4.1" + range-parser "~1.2.1" + statuses "~2.0.2" + +serialize-javascript@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" + integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== + dependencies: + randombytes "^2.1.0" + +serve-static@~1.16.2: + version "1.16.3" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.3.tgz#a97b74d955778583f3862a4f0b841eb4d5d78cf9" + integrity sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA== + dependencies: + encodeurl "~2.0.0" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "~0.19.1" + +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== + +set-function-length@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + +set-function-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + functions-have-names "^1.2.3" + has-property-descriptors "^1.0.2" + +set-proto@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/set-proto/-/set-proto-1.0.0.tgz#0760dbcff30b2d7e801fd6e19983e56da337565e" + integrity sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw== + dependencies: + dunder-proto "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + +setimmediate@1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.4.tgz#20e81de622d4a02588ce0c8da8973cbcf1d3138f" + integrity sha512-/TjEmXQVEzdod/FFskf3o7oOAsGhHf2j1dZqRFbDzq4F3mvvxflIIi4Hd3bLQE9y/CpwqfSQam5JakI/mi3Pog== + +setimmediate@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== + +setprototypeof@1.2.0, setprototypeof@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +sha.js@^2.4.0, sha.js@^2.4.12, sha.js@^2.4.8: + version "2.4.12" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.12.tgz#eb8b568bf383dfd1867a32c3f2b74eb52bdbf23f" + integrity sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w== + dependencies: + inherits "^2.0.4" + safe-buffer "^5.2.1" + to-buffer "^1.2.0" + +sha1@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/sha1/-/sha1-1.1.1.tgz#addaa7a93168f393f19eb2b15091618e2700f848" + integrity sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA== + dependencies: + charenc ">= 0.0.1" + crypt ">= 0.0.1" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== + dependencies: + shebang-regex "^1.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +side-channel-list@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" + integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + +side-channel-map@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" + integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + +side-channel-weakmap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" + integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + side-channel-map "^1.0.1" + +side-channel@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" + integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + side-channel-list "^1.0.0" + side-channel-map "^1.0.1" + side-channel-weakmap "^1.0.2" + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +solc@0.8.15: + version "0.8.15" + resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.15.tgz#d274dca4d5a8b7d3c9295d4cbdc9291ee1c52152" + integrity sha512-Riv0GNHNk/SddN/JyEuFKwbcWcEeho15iyupTSHw5Np6WuXA5D8kEHbyzDHi6sqmvLzu2l+8b1YmL8Ytple+8w== + dependencies: + command-exists "^1.2.8" + commander "^8.1.0" + follow-redirects "^1.12.1" + js-sha3 "0.8.0" + memorystream "^0.3.1" + semver "^5.5.0" + tmp "0.0.33" + +solc@0.8.26: + version "0.8.26" + resolved "https://registry.yarnpkg.com/solc/-/solc-0.8.26.tgz#afc78078953f6ab3e727c338a2fefcd80dd5b01a" + integrity sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g== + dependencies: + command-exists "^1.2.8" + commander "^8.1.0" + follow-redirects "^1.12.1" + js-sha3 "0.8.0" + memorystream "^0.3.1" + semver "^5.5.0" + tmp "0.0.33" + +solidity-ast@^0.4.60: + version "0.4.61" + resolved "https://registry.yarnpkg.com/solidity-ast/-/solidity-ast-0.4.61.tgz#b51720ece553a2c7d84551ee5a7a2306080d23d0" + integrity sha512-OYBJYcYyG7gLV0VuXl9CUrvgJXjV/v0XnR4+1YomVe3q+QyENQXJJxAEASUz4vN6lMAl+C8RSRSr5MBAz09f6w== + +source-map-support@0.5.12: + version "0.5.12" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" + integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-support@^0.5.13: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== + +sshpk@^1.7.0: + version "1.18.0" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.18.0.tgz#1663e55cddf4d688b86a46b77f0d5fe363aba028" + integrity sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +stacktrace-parser@^0.1.10: + version "0.1.11" + resolved "https://registry.yarnpkg.com/stacktrace-parser/-/stacktrace-parser-0.1.11.tgz#c7c08f9b29ef566b9a6f7b255d7db572f66fabc4" + integrity sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg== + dependencies: + type-fest "^0.7.1" + +statuses@~2.0.1, statuses@~2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.2.tgz#8f75eecef765b5e1cfcdc080da59409ed424e382" + integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw== + +stealthy-require@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" + integrity sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g== + +stop-iteration-iterator@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz#f481ff70a548f6124d0312c3aa14cbfa7aa542ad" + integrity sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ== + dependencies: + es-errors "^1.3.0" + internal-slot "^1.1.0" + +string-format@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/string-format/-/string-format-2.0.0.tgz#f2df2e7097440d3b65de31b6d40d54c96eaffb9b" + integrity sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA== + +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +"string-width@^1.0.2 || 2", string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0, string-width@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +string.prototype.trim@^1.2.10: + version "1.2.10" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz#40b2dd5ee94c959b4dcfb1d65ce72e90da480c81" + integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-data-property "^1.1.4" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-object-atoms "^1.0.0" + has-property-descriptors "^1.0.2" + +string.prototype.trimend@^1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942" + integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +string.prototype.trimstart@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" + integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow== + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^7.0.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.2.tgz#132875abde678c7ea8d691533f2e7e22bb744dba" + integrity sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA== + dependencies: + ansi-regex "^6.0.1" + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== + +strip-hex-prefix@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" + integrity sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A== + dependencies: + is-hex-prefixed "1.0.0" + +strip-json-comments@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== + +strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +supports-color@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" + integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== + dependencies: + has-flag "^3.0.0" + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-color@^8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + +sync-request@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/sync-request/-/sync-request-6.1.0.tgz#e96217565b5e50bbffe179868ba75532fb597e68" + integrity sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw== + dependencies: + http-response-object "^3.0.1" + sync-rpc "^1.2.1" + then-request "^6.0.0" + +sync-rpc@^1.2.1: + version "1.3.6" + resolved "https://registry.yarnpkg.com/sync-rpc/-/sync-rpc-1.3.6.tgz#b2e8b2550a12ccbc71df8644810529deb68665a7" + integrity sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw== + dependencies: + get-port "^3.1.0" + +table-layout@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-1.0.2.tgz#c4038a1853b0136d63365a734b6931cf4fad4a04" + integrity sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A== + dependencies: + array-back "^4.0.1" + deep-extend "~0.6.0" + typical "^5.2.0" + wordwrapjs "^4.0.0" + +table@^6.8.0: + version "6.9.0" + resolved "https://registry.yarnpkg.com/table/-/table-6.9.0.tgz#50040afa6264141c7566b3b81d4d82c47a8668f5" + integrity sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A== + dependencies: + ajv "^8.0.1" + lodash.truncate "^4.4.2" + slice-ansi "^4.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + +then-request@^6.0.0: + version "6.0.2" + resolved "https://registry.yarnpkg.com/then-request/-/then-request-6.0.2.tgz#ec18dd8b5ca43aaee5cb92f7e4c1630e950d4f0c" + integrity sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA== + dependencies: + "@types/concat-stream" "^1.6.0" + "@types/form-data" "0.0.33" + "@types/node" "^8.0.0" + "@types/qs" "^6.2.31" + caseless "~0.12.0" + concat-stream "^1.6.0" + form-data "^2.2.0" + http-basic "^8.1.1" + http-response-object "^3.0.1" + promise "^8.0.0" + qs "^6.4.0" + +tiny-emitter@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" + integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== + +tinyglobby@^0.2.6: + version "0.2.15" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.15.tgz#e228dd1e638cea993d2fdb4fcd2d4602a79951c2" + integrity sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ== + dependencies: + fdir "^6.5.0" + picomatch "^4.0.3" + +tmp@0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== + dependencies: + os-tmpdir "~1.0.2" + +to-buffer@^1.2.0, to-buffer@^1.2.1, to-buffer@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.2.2.tgz#ffe59ef7522ada0a2d1cb5dfe03bb8abc3cdc133" + integrity sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw== + dependencies: + isarray "^2.0.5" + safe-buffer "^5.2.1" + typed-array-buffer "^1.0.3" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +toidentifier@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + +tough-cookie@^2.3.3, tough-cookie@~2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== + dependencies: + psl "^1.1.28" + punycode "^2.1.1" + +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== + +treeify@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/treeify/-/treeify-1.1.0.tgz#4e31c6a463accd0943879f30667c4fdaff411bb8" + integrity sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A== + +ts-command-line-args@^2.2.0: + version "2.5.1" + resolved "https://registry.yarnpkg.com/ts-command-line-args/-/ts-command-line-args-2.5.1.tgz#e64456b580d1d4f6d948824c274cf6fa5f45f7f0" + integrity sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw== + dependencies: + chalk "^4.1.0" + command-line-args "^5.1.1" + command-line-usage "^6.1.0" + string-format "^2.0.0" + +ts-essentials@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/ts-essentials/-/ts-essentials-7.0.3.tgz#686fd155a02133eedcc5362dc8b5056cde3e5a38" + integrity sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ== + +ts-node@^10.9.2: + version "10.9.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.2.tgz#70f021c9e185bccdca820e26dc413805c101c71f" + integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== + dependencies: + "@cspotcode/source-map-support" "^0.8.0" + "@tsconfig/node10" "^1.0.7" + "@tsconfig/node12" "^1.0.7" + "@tsconfig/node14" "^1.0.0" + "@tsconfig/node16" "^1.0.2" + acorn "^8.4.1" + acorn-walk "^8.1.1" + arg "^4.1.0" + create-require "^1.1.0" + diff "^4.0.1" + make-error "^1.1.1" + v8-compile-cache-lib "^3.0.1" + yn "3.1.1" + +tslib@^1.11.1, tslib@^1.9.3: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tslib@^2.3.1, tslib@^2.6.2: + version "2.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== + +tsort@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/tsort/-/tsort-0.0.1.tgz#e2280f5e817f8bf4275657fd0f9aebd44f5a2786" + integrity sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw== + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-detect@^4.0.0, type-detect@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.1.0.tgz#deb2453e8f08dcae7ae98c626b13dddb0155906c" + integrity sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw== + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48" + integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg== + +type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +typechain@^8.0.0: + version "8.3.2" + resolved "https://registry.yarnpkg.com/typechain/-/typechain-8.3.2.tgz#1090dd8d9c57b6ef2aed3640a516bdbf01b00d73" + integrity sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q== + dependencies: + "@types/prettier" "^2.1.1" + debug "^4.3.1" + fs-extra "^7.0.0" + glob "7.1.7" + js-sha3 "^0.8.0" + lodash "^4.17.15" + mkdirp "^1.0.4" + prettier "^2.3.1" + ts-command-line-args "^2.2.0" + ts-essentials "^7.0.1" + +typed-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz#a72395450a4869ec033fd549371b47af3a2ee536" + integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-typed-array "^1.1.14" + +typed-array-byte-length@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz#8407a04f7d78684f3d252aa1a143d2b77b4160ce" + integrity sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg== + dependencies: + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.14" + +typed-array-byte-offset@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz#ae3698b8ec91a8ab945016108aef00d5bff12355" + integrity sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.15" + reflect.getprototypeof "^1.0.9" + +typed-array-length@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.7.tgz#ee4deff984b64be1e118b0de8c9c877d5ce73d3d" + integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" + reflect.getprototypeof "^1.0.6" + +typed-function@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/typed-function/-/typed-function-2.1.0.tgz#ded6f8a442ba8749ff3fe75bc41419c8d46ccc3f" + integrity sha512-bctQIOqx2iVbWGDGPWwIm18QScpu2XRmkC19D8rQGFsjKSgteq/o1hTZvIG/wuDq8fanpBDrLkLq+aEN/6y5XQ== + +typed-function@^4.1.1: + version "4.2.2" + resolved "https://registry.yarnpkg.com/typed-function/-/typed-function-4.2.2.tgz#49939f58d133a40cb03bdc05d969f59e4bdc3190" + integrity sha512-VwaXim9Gp1bngi/q3do8hgttYn2uC3MoT/gfuMWylnj1IeZBUAyPddHZlo1K05BDoj8DYPpMdiHqH1dDYdJf2A== + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== + +typescript@^5.6.3: + version "5.9.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.9.3.tgz#5b4f59e15310ab17a216f5d6cf53ee476ede670f" + integrity sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw== + +typical@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/typical/-/typical-4.0.0.tgz#cbeaff3b9d7ae1e2bbfaf5a4e6f11eccfde94fc4" + integrity sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw== + +typical@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/typical/-/typical-5.2.0.tgz#4daaac4f2b5315460804f0acf6cb69c52bb93066" + integrity sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg== + +unbox-primitive@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz#8d9d2c9edeea8460c7f35033a88867944934d1e2" + integrity sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw== + dependencies: + call-bound "^1.0.3" + has-bigints "^1.0.2" + has-symbols "^1.1.0" + which-boxed-primitive "^1.1.1" + +undici-types@~7.16.0: + version "7.16.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.16.0.tgz#ffccdff36aea4884cbfce9a750a0580224f58a46" + integrity sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw== + +undici@^5.14.0: + version "5.29.0" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.29.0.tgz#419595449ae3f2cdcba3580a2e8903399bd1f5a3" + integrity sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg== + dependencies: + "@fastify/busboy" "^2.0.0" + +unfetch@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" + integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== + +uniswap@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/uniswap/-/uniswap-0.0.1.tgz#582ccde4b14ab5c2333d9aed429e921005936837" + integrity sha512-2ppSS+liwbH7kvnCnxoNSsFBIUdVJpwo6Q0IcDHdLfayFg/kOgIKt3Qq6WFi0SGYfU+bNTDIHxckapStnRvPVA== + dependencies: + hardhat "^2.2.1" + +universalify@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + +unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +url@^0.11.0: + version "0.11.4" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.4.tgz#adca77b3562d56b72746e76b330b7f27b6721f3c" + integrity sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg== + dependencies: + punycode "^1.4.1" + qs "^6.12.3" + +utf-8-validate@5.0.7: + version "5.0.7" + resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.7.tgz#c15a19a6af1f7ad9ec7ddc425747ca28c3644922" + integrity sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q== + dependencies: + node-gyp-build "^4.3.0" + +utf8@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1" + integrity sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ== + +util-deprecate@^1.0.1, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== + +uuid@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.1.tgz#c2a30dedb3e535d72ccf82e343941a50ba8533ac" + integrity sha512-nWg9+Oa3qD2CQzHIP4qKUqwNfzKn8P0LtFhotaCTFchsV7ZfDhAybeip/HZVeMIpZi9JgY1E3nUlwaCmZT1sEg== + +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-compile-cache-lib@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" + integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== + +vary@^1, vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +web3-utils@^1.3.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.10.4.tgz#0daee7d6841641655d8b3726baf33b08eda1cbec" + integrity sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A== + dependencies: + "@ethereumjs/util" "^8.1.0" + bn.js "^5.2.1" + ethereum-bloom-filters "^1.0.6" + ethereum-cryptography "^2.1.2" + ethjs-unit "0.1.6" + number-to-bn "1.7.0" + randombytes "^2.1.0" + utf8 "3.0.0" + +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== + +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + +which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz#d76ec27df7fa165f18d5808374a5fe23c29b176e" + integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA== + dependencies: + is-bigint "^1.1.0" + is-boolean-object "^1.2.1" + is-number-object "^1.1.1" + is-string "^1.1.1" + is-symbol "^1.1.1" + +which-builtin-type@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/which-builtin-type/-/which-builtin-type-1.2.1.tgz#89183da1b4907ab089a6b02029cc5d8d6574270e" + integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q== + dependencies: + call-bound "^1.0.2" + function.prototype.name "^1.1.6" + has-tostringtag "^1.0.2" + is-async-function "^2.0.0" + is-date-object "^1.1.0" + is-finalizationregistry "^1.1.0" + is-generator-function "^1.0.10" + is-regex "^1.2.1" + is-weakref "^1.0.2" + isarray "^2.0.5" + which-boxed-primitive "^1.1.0" + which-collection "^1.0.2" + which-typed-array "^1.1.16" + +which-collection@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0" + integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== + dependencies: + is-map "^2.0.3" + is-set "^2.0.3" + is-weakmap "^2.0.2" + is-weakset "^2.0.3" + +which-module@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + +which-typed-array@^1.1.16, which-typed-array@^1.1.19: + version "1.1.20" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.20.tgz#3fdb7adfafe0ea69157b1509f3a1cd892bd1d122" + integrity sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + for-each "^0.3.5" + get-proto "^1.0.1" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + +which@1.3.1, which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wide-align@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== + dependencies: + string-width "^1.0.2 || 2" + +widest-line@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" + integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== + dependencies: + string-width "^4.0.0" + +word-wrap@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" + integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== + +wordwrapjs@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/wordwrapjs/-/wordwrapjs-4.0.1.tgz#d9790bccfb110a0fc7836b5ebce0937b37a8b98f" + integrity sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA== + dependencies: + reduce-flatten "^2.0.0" + typical "^5.2.0" + +workerpool@^6.5.1: + version "6.5.1" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" + integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== + +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + +ws@8.18.0: + version "8.18.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" + integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== + +ws@^7.4.6: + version "7.5.10" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" + integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== + +xmlhttprequest@1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc" + integrity sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA== + +xtend@^4.0.1, xtend@^4.0.2, xtend@~4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yargs-parser@13.1.2, yargs-parser@^13.1.0, yargs-parser@^13.1.2: + version "13.1.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" + integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^20.2.2, yargs-parser@^20.2.9: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs-unparser@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" + integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== + dependencies: + flat "^4.1.0" + lodash "^4.17.15" + yargs "^13.3.0" + +yargs-unparser@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" + integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== + dependencies: + camelcase "^6.0.0" + decamelize "^4.0.0" + flat "^5.0.2" + is-plain-obj "^2.1.0" + +yargs@13.2.4: + version "13.2.4" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.2.4.tgz#0b562b794016eb9651b98bd37acf364aa5d6dc83" + integrity sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + os-locale "^3.1.0" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.0" + +yargs@13.3.2, yargs@^13.3.0: + version "13.3.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.2" + +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yn@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From 3cfdfb6f1d7dfbd31250f1f470a6f0b36f0c1799 Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Wed, 4 Feb 2026 21:30:00 +0300 Subject: [PATCH 242/270] refactors --- .../analyzeShipmentContracts.js | 39 +++++++++---------- 1 file changed, 19 insertions(+), 20 deletions(-) diff --git a/scripts/beanstalkShipments/analyzeShipmentContracts.js b/scripts/beanstalkShipments/analyzeShipmentContracts.js index 150192a1..f1a71f57 100644 --- a/scripts/beanstalkShipments/analyzeShipmentContracts.js +++ b/scripts/beanstalkShipments/analyzeShipmentContracts.js @@ -151,7 +151,9 @@ async function batchCheckSafeUpgrades(safeAddresses, providers) { isUpgraded: upgrade.isUpgraded && upgrade.originalVersion && !isVersionClaimable(upgrade.originalVersion) }); } - } catch (e) {} + } catch (e) { + console.error(`Failed to check upgrade for ${address}: ${e.message}`); + } } process.stdout.write('\r' + ' '.repeat(80) + '\r'); @@ -198,26 +200,23 @@ function detectAmbire(code) { } async function detectSafeVersion(provider, address, code) { - try { - const proxy = detectEIP1167Proxy(code); - if (proxy && SAFE_SINGLETONS[proxy.implementation]) { - return { version: SAFE_SINGLETONS[proxy.implementation], method: 'EIP-1167' }; - } - - try { - const contract = new ethers.Contract(address, SAFE_ABI, provider); - const version = await withRetry(async () => { - const v = await contract.VERSION(); - await contract.getThreshold(); - return v; - }, 2); - return { version, method: 'VERSION()' }; - } catch (e) {} - - return null; - } catch (e) { - return null; + const proxy = detectEIP1167Proxy(code); + if (proxy && SAFE_SINGLETONS[proxy.implementation]) { + return { version: SAFE_SINGLETONS[proxy.implementation], method: 'EIP-1167' }; } + + // Probe VERSION() + getThreshold() to detect Safe contracts. + // Expected to return null for non-Safe contracts. + const contract = new ethers.Contract(address, SAFE_ABI, provider); + const version = await withRetry( + () => contract.VERSION().then(async (v) => { + await contract.getThreshold(); + return v; + }), + 2 + ).catch(() => null); + + return version ? { version, method: 'VERSION()' } : null; } async function analyzeAddressOnChain(provider, address, code) { From ca5b71fef71137c895f435738d8e1d5064a5d4f6 Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Wed, 4 Feb 2026 21:44:58 +0300 Subject: [PATCH 243/270] comment refactors --- scripts/beanstalkShipments/analyzeShipmentContracts.js | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/beanstalkShipments/analyzeShipmentContracts.js b/scripts/beanstalkShipments/analyzeShipmentContracts.js index f1a71f57..7c36bd1f 100644 --- a/scripts/beanstalkShipments/analyzeShipmentContracts.js +++ b/scripts/beanstalkShipments/analyzeShipmentContracts.js @@ -73,6 +73,7 @@ async function withRetry(fn, retries = MAX_RETRIES) { function parseVersion(version) { if (!version) return 0; + // Strip "-L2" suffix so L2-optimized singletons (e.g. "1.3.0-L2") compare equal to their L1 counterparts. const clean = version.replace('-L2', '').replace(/[^0-9.]/g, ''); const parts = clean.split('.').map(Number); return parts[0] * 10000 + (parts[1] || 0) * 100 + (parts[2] || 0); From 4d494e7f506b61a6c59fbce2f2ae956a30668bb3 Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Thu, 5 Feb 2026 23:38:22 +0300 Subject: [PATCH 244/270] update L1 contract messenger and deployer addresses --- .../contractDistribution/ContractPaybackDistributor.sol | 2 +- .../ecosystem/beanstalkShipments/ContractDistribution.t.sol | 2 +- test/hardhat/utils/constants.js | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 9ed1f139..79db2db7 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -48,7 +48,7 @@ contract ContractPaybackDistributor is ICrossDomainMessenger(0x4200000000000000000000000000000000000007); // L1 sender: the contract address that sent the claim message from the L1 - address public constant L1_SENDER = 0x51f472874a303D5262d7668f5a3d17e3317f8E51; + address public constant L1_SENDER = 0xD2abd9a7E7F10e3bF4376fb03A07fca729A55b6f; struct AccountData { bool whitelisted; diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 66515080..04665d58 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -27,7 +27,7 @@ contract ContractDistributionTest is TestHelper { ICrossDomainMessenger public constant L1_MESSENGER = ICrossDomainMessenger(0x4200000000000000000000000000000000000007); // L1 sender - address public constant L1_SENDER = 0x51f472874a303D5262d7668f5a3d17e3317f8E51; + address public constant L1_SENDER = 0xD2abd9a7E7F10e3bF4376fb03A07fca729A55b6f; address public constant EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR = 0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000; diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index 08c16f7a..ae717056 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -156,9 +156,9 @@ module.exports = { // Contract Messenger // L1 Contract Messenger deployer - L1_CONTRACT_MESSENGER_DEPLOYER: "0xbfb5d09ffcbe67fbed9970b893293f21778be0a6", + L1_CONTRACT_MESSENGER_DEPLOYER: "0x43025539934eDd31871d65e13E7F1f3A904cB173", // L1 Contract Messenger, deployed by the deployer at nonce 0 - L1_CONTRACT_MESSENGER: "0x51f472874a303D5262d7668f5a3d17e3317f8E51", + L1_CONTRACT_MESSENGER: "0xD2abd9a7E7F10e3bF4376fb03A07fca729A55b6f", // Wells PINTO_WETH_WELL_BASE, From 237e38c866e998a6285b6b273000361ebe4f9c0a Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Sun, 8 Feb 2026 16:45:38 +0300 Subject: [PATCH 245/270] Fix contract detection in parseExportData to use direct Ethereum and Arbitrum RPC calls instead of Hardhat fork --- scripts/beanstalkShipments/parsers/index.js | 92 +++++++++++++++++---- tasks/beanstalk-shipments.js | 9 +- 2 files changed, 77 insertions(+), 24 deletions(-) diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 874f62cc..5771b0d9 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -4,33 +4,89 @@ const parseSiloData = require('./parseSiloData'); const parseContractData = require('./parseContractData'); const fs = require('fs'); const path = require('path'); +const ethersLib = require('ethers'); + +require('dotenv').config(); + +const BATCH_SIZE = 50; +const MAX_RETRIES = 3; +const RETRY_DELAY = 1000; + +const isEthersV6 = ethersLib.JsonRpcProvider !== undefined; +const createProvider = (url) => { + if (isEthersV6) { + return new ethersLib.JsonRpcProvider(url); + } else { + return new ethersLib.providers.JsonRpcProvider(url); + } +}; + +async function withRetry(fn, retries = MAX_RETRIES) { + for (let i = 0; i < retries; i++) { + try { + return await fn(); + } catch (e) { + if (i === retries - 1) throw e; + await new Promise(r => setTimeout(r, RETRY_DELAY * (i + 1))); + } + } +} /** - * Detects which addresses have associated contract code on the active hardhat network - * We use a helper contract "MockIsContract" to check if an address is a contract to replicate - * the check in the fertilizer distirbution to avoid false positives. + * Detects which addresses have contract code on Ethereum or Arbitrum + * using direct RPC calls. An address is flagged as a contract if it has + * bytecode on either chain, since it may not be able to claim on Base. + * Requires MAINNET_RPC and ARBITRUM_RPC in .env */ async function detectContractAddresses(addresses) { - console.log(`Checking ${addresses.length} addresses for contract code...`); + console.log(`Checking ${addresses.length} addresses for contract code on Ethereum and Arbitrum...`); + + const mainnetRpc = process.env.MAINNET_RPC; + const arbitrumRpc = process.env.ARBITRUM_RPC; + + if (!mainnetRpc || !arbitrumRpc) { + throw new Error('MAINNET_RPC and ARBITRUM_RPC must be set in .env for contract detection'); + } + + const ethProvider = createProvider(mainnetRpc); + const arbProvider = createProvider(arbitrumRpc); + + // Verify connections + const ethBlock = await ethProvider.getBlockNumber(); + const arbBlock = await arbProvider.getBlockNumber(); + console.log(` Ethereum: block ${ethBlock}`); + console.log(` Arbitrum: block ${arbBlock}`); + const contractAddresses = []; + const totalBatches = Math.ceil(addresses.length / BATCH_SIZE); - // deploy the contract that checks if an address is a contract - const MockIsContract = await ethers.getContractFactory("MockIsContract"); - const mockIsContract = await MockIsContract.deploy(); - await mockIsContract.deployed(); - - for (const address of addresses) { - try { - const isContract = await mockIsContract.isContract(address); - if (isContract) { - contractAddresses.push(address.toLowerCase()); + for (let b = 0; b < totalBatches; b++) { + const batch = addresses.slice(b * BATCH_SIZE, (b + 1) * BATCH_SIZE); + + const results = await Promise.allSettled( + batch.map(async (address) => { + const [ethCode, arbCode] = await Promise.all([ + withRetry(() => ethProvider.getCode(address)), + withRetry(() => arbProvider.getCode(address)) + ]); + const hasEthCode = ethCode && ethCode !== '0x'; + const hasArbCode = arbCode && arbCode !== '0x'; + return { address, isContract: hasEthCode || hasArbCode }; + }) + ); + + for (const result of results) { + if (result.status === 'fulfilled' && result.value.isContract) { + contractAddresses.push(result.value.address.toLowerCase()); + } else if (result.status === 'rejected') { + console.error(` Error checking address: ${result.reason?.message}`); } - } catch (error) { - console.error(`Error checking address ${address}:`, error.message); } + + process.stdout.write(`\r Batch ${b + 1}/${totalBatches} (${contractAddresses.length} contracts found)`); } - - console.log(`Found ${contractAddresses.length} addresses with contract code`); + + console.log(`\nFound ${contractAddresses.length} addresses with contract code`); return contractAddresses; } diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 006fa285..5a483190 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -77,12 +77,9 @@ module.exports = function () { ); ////// STEP 0: PARSE EXPORT DATA ////// - // Run this task prior to deploying the contracts on a local fork at the latest base block to - // dynamically identify EOAs that have contract code due to contract code delegation. - // Spin up a local anvil node: - // - anvil --fork-url --chain-id 1337 --no-rate-limit --threads 0 - // Run the parseExportData task: - // - npx hardhat parseExportData --network localhost + // Parses the export data and detects contract addresses using direct RPC calls + // to Ethereum and Arbitrum. Requires MAINNET_RPC and ARBITRUM_RPC in .env + // - npx hardhat parseExportData task("parseExportData", "parses the export data and checks for contract addresses").setAction( async (taskArgs) => { const parseContracts = true; From eebc4bf6c6add347f944677466cef42f844d9f3d Mon Sep 17 00:00:00 2001 From: exTypen <242232957+pocikerim@users.noreply.github.com> Date: Sun, 8 Feb 2026 20:22:08 +0300 Subject: [PATCH 246/270] Fail on incomplete contract detection, reduce batch size and add inter-batch delay to avoid rate limiting --- scripts/beanstalkShipments/parsers/index.js | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/scripts/beanstalkShipments/parsers/index.js b/scripts/beanstalkShipments/parsers/index.js index 5771b0d9..dbffeefc 100644 --- a/scripts/beanstalkShipments/parsers/index.js +++ b/scripts/beanstalkShipments/parsers/index.js @@ -8,7 +8,7 @@ const ethersLib = require('ethers'); require('dotenv').config(); -const BATCH_SIZE = 50; +const BATCH_SIZE = 25; const MAX_RETRIES = 3; const RETRY_DELAY = 1000; @@ -58,6 +58,7 @@ async function detectContractAddresses(addresses) { console.log(` Arbitrum: block ${arbBlock}`); const contractAddresses = []; + const failedAddresses = []; const totalBatches = Math.ceil(addresses.length / BATCH_SIZE); for (let b = 0; b < totalBatches; b++) { @@ -79,11 +80,22 @@ async function detectContractAddresses(addresses) { if (result.status === 'fulfilled' && result.value.isContract) { contractAddresses.push(result.value.address.toLowerCase()); } else if (result.status === 'rejected') { - console.error(` Error checking address: ${result.reason?.message}`); + failedAddresses.push(result.reason?.address || 'unknown'); + console.error(`\n Error checking address: ${result.reason?.message}`); } } process.stdout.write(`\r Batch ${b + 1}/${totalBatches} (${contractAddresses.length} contracts found)`); + + // Delay between batches to avoid rate limiting + if (b < totalBatches - 1) { + await new Promise(r => setTimeout(r, 500)); + } + } + + if (failedAddresses.length > 0) { + console.error(`\nContract detection failed for ${failedAddresses.length} address(es). All addresses must be verified.`); + throw new Error(`Contract detection incomplete: ${failedAddresses.length} address(es) could not be checked`); } console.log(`\nFound ${contractAddresses.length} addresses with contract code`); @@ -104,8 +116,6 @@ async function parseAllExportData(parseContracts) { // Detect contract addresses once at the beginning if needed if (parseContracts) { console.log('\nDetecting contract addresses...'); - const fs = require('fs'); - const path = require('path'); // Read export data to get all arbEOA addresses const siloData = JSON.parse(fs.readFileSync(path.join(__dirname, '../data/exports/beanstalk_silo.json'))); From 9ed98e97029bd48b848bf182924d60e360a1431b Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Mon, 9 Feb 2026 12:09:54 -0500 Subject: [PATCH 247/270] Add shipment routes data ordering in deployment task - Add Step 1b to update updatedShipmentRoutes.json with deployed contract addresses - Encode addresses into routes 4, 5, 6 data fields in correct order: - Route 4 (getPaybackFieldPlan): (siloPayback, barnPayback, fieldId) - Route 5 (getPaybackSiloPlan): (siloPayback, barnPayback) - Route 6 (getPaybackBarnPlan): (siloPayback, barnPayback) - Change deployer from getSigners()[1] to getSigners()[0] Co-Authored-By: Claude Sonnet 4.5 --- tasks/beanstalk-shipments.js | 38 +++++++++++++++++++++++++++++++++--- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 006fa285..59d11cd0 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -119,13 +119,13 @@ module.exports = function () { deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); await mintEth(deployer.address); } else { - deployer = (await ethers.getSigners())[1]; + deployer = (await ethers.getSigners())[0]; } // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract console.log("STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); console.log("-".repeat(50)); - await deployAndSetupContracts({ + const contracts = await deployAndSetupContracts({ PINTO, L2_PINTO, L2_PCM, @@ -134,7 +134,39 @@ module.exports = function () { populateData: populateData, useChunking: true }); - console.log(" Payback contracts deployed and configured\n"); + console.log(" Payback contracts deployed and configured\n"); + + // Step 1b: Update the shipment routes JSON with deployed contract addresses + console.log("STEP 1b: UPDATING SHIPMENT ROUTES WITH DEPLOYED ADDRESSES"); + console.log("-".repeat(50)); + + const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; + const routes = JSON.parse(fs.readFileSync(routesPath)); + + const siloPaybackAddress = contracts.siloPaybackContract.address; + const barnPaybackAddress = contracts.barnPaybackContract.address; + + // Helper to encode addresses into padded hex data + const encodeAddress = (addr) => addr.toLowerCase().replace("0x", "").padStart(64, "0"); + const encodeUint256 = (num) => num.toString(16).padStart(64, "0"); + + // Route 4 (index 3): getPaybackFieldPlan - data = (siloPayback, barnPayback, fieldId) + // fieldId = 1 for the repayment field + routes[3].data = + "0x" + encodeAddress(siloPaybackAddress) + encodeAddress(barnPaybackAddress) + encodeUint256(1); + + // Route 5 (index 4): getPaybackSiloPlan - data = (siloPayback, barnPayback) + routes[4].data = "0x" + encodeAddress(siloPaybackAddress) + encodeAddress(barnPaybackAddress); + + // Route 6 (index 5): getPaybackBarnPlan - data = (siloPayback, barnPayback) + // Note: Order must be (siloPayback, barnPayback) to match paybacksRemaining() decoding + routes[5].data = "0x" + encodeAddress(siloPaybackAddress) + encodeAddress(barnPaybackAddress); + + fs.writeFileSync(routesPath, JSON.stringify(routes, null, 4)); + console.log("Updated updatedShipmentRoutes.json with deployed contract addresses:"); + console.log(` - SiloPayback: ${siloPaybackAddress}`); + console.log(` - BarnPayback: ${barnPaybackAddress}`); + console.log(` - Routes 4, 5, 6 data fields updated\n`); }); ////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// From fdea6eeaed492e7573498dce772009d6a565115b Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 11 Feb 2026 02:08:37 -0500 Subject: [PATCH 248/270] Add RPC error resilience for beanstalk shipments - Enhance retryOperation() with exponential backoff and jitter - Add 18 common RPC error patterns for retry detection - Add verifyTransaction() helper to check receipt status - Add startFromChunk resume capability to all chunked operations - Add --unripe-start-chunk, --barn-start-chunk, --contract-start-chunk params to deployPaybackContracts task - Add --field-start-chunk param to populateRepaymentField task - Include chunk context in error messages for easier debugging Co-Authored-By: Claude Opus 4.5 --- .../deployPaybackContracts.js | 137 +++++++++++++----- .../populateBeanstalkField.js | 43 ++++-- tasks/beanstalk-shipments.js | 64 +++++++- utils/read.js | 108 ++++++++++++-- 4 files changed, 284 insertions(+), 68 deletions(-) diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 33b6d54b..73e38dcf 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -1,5 +1,10 @@ const fs = require("fs"); -const { splitEntriesIntoChunks, updateProgress, retryOperation } = require("../../utils/read.js"); +const { + splitEntriesIntoChunks, + updateProgress, + retryOperation, + verifyTransaction +} = require("../../utils/read.js"); const { BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR } = require("../../test/hardhat/utils/constants.js"); // Deploys SiloPayback, BarnPayback, and ContractPaybackDistributor contracts @@ -75,7 +80,8 @@ async function distributeUnripeBdvTokens({ dataPath, verbose = true, useChunking = true, - targetEntriesPerChunk = 300 + targetEntriesPerChunk = 300, + startFromChunk = 0 }) { if (verbose) console.log("🌱 Distributing unripe BDV tokens..."); @@ -90,31 +96,48 @@ async function distributeUnripeBdvTokens({ // log the address of the payback contract console.log("SiloPayback address:", siloPaybackContract.address); - const tx = await siloPaybackContract.connect(account).batchMint(unripeAccountBdvTokens); - const receipt = await tx.wait(); - - if (verbose) console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + await retryOperation( + async () => { + const tx = await siloPaybackContract.connect(account).batchMint(unripeAccountBdvTokens); + const receipt = await verifyTransaction(tx, "Unripe BDV batch mint"); + if (verbose) console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + }, + { context: "Unripe BDV single transaction" } + ); } else { // Split into chunks for processing const chunks = splitEntriesIntoChunks(unripeAccountBdvTokens, targetEntriesPerChunk); console.log(`Starting to process ${chunks.length} chunks...`); + if (startFromChunk > 0) { + console.log(`ā© Resuming from chunk ${startFromChunk + 1}/${chunks.length}`); + } + let totalGasUsed = ethers.BigNumber.from(0); - for (let i = 0; i < chunks.length; i++) { + for (let i = startFromChunk; i < chunks.length; i++) { if (verbose) { console.log(`\n\nProcessing chunk ${i + 1}/${chunks.length}`); console.log(`Chunk contains ${chunks[i].length} accounts`); console.log("-----------------------------------"); } - await retryOperation(async () => { - // mint tokens to users in chunks - const tx = await siloPaybackContract.connect(account).batchMint(chunks[i]); - const receipt = await tx.wait(); - totalGasUsed = totalGasUsed.add(receipt.gasUsed); - if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); - }); + try { + await retryOperation( + async () => { + // mint tokens to users in chunks + const tx = await siloPaybackContract.connect(account).batchMint(chunks[i]); + const receipt = await verifyTransaction(tx, `Unripe BDV chunk ${i + 1}`); + totalGasUsed = totalGasUsed.add(receipt.gasUsed); + if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); + }, + { context: `Chunk ${i + 1}/${chunks.length}` } + ); + } catch (error) { + console.error(`\nāŒ FAILED AT CHUNK ${i + 1}/${chunks.length}`); + console.error(`To resume, use: --unripe-start-chunk ${i}`); + throw error; + } await updateProgress(i + 1, chunks.length); } @@ -138,7 +161,8 @@ async function distributeBarnPaybackTokens({ account, dataPath, verbose = true, - targetEntriesPerChunk = 300 + targetEntriesPerChunk = 300, + startFromChunk = 0 }) { if (verbose) console.log("🌱 Distributing barn payback tokens..."); @@ -150,19 +174,34 @@ async function distributeBarnPaybackTokens({ const chunks = splitEntriesIntoChunks(accountFertilizers, targetEntriesPerChunk); console.log(`Starting to process ${chunks.length} chunks...`); + if (startFromChunk > 0) { + console.log(`ā© Resuming from chunk ${startFromChunk + 1}/${chunks.length}`); + } + let totalGasUsed = ethers.BigNumber.from(0); - for (let i = 0; i < chunks.length; i++) { + for (let i = startFromChunk; i < chunks.length; i++) { if (verbose) { console.log(`\n\nProcessing chunk ${i + 1}/${chunks.length}`); console.log(`Chunk contains ${chunks[i].length} fertilizers`); console.log("-----------------------------------"); } - const tx = await barnPaybackContract.connect(account).mintFertilizers(chunks[i]); - const receipt = await tx.wait(); - totalGasUsed = totalGasUsed.add(receipt.gasUsed); - if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); + try { + await retryOperation( + async () => { + const tx = await barnPaybackContract.connect(account).mintFertilizers(chunks[i]); + const receipt = await verifyTransaction(tx, `Barn payback chunk ${i + 1}`); + totalGasUsed = totalGasUsed.add(receipt.gasUsed); + if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); + }, + { context: `Chunk ${i + 1}/${chunks.length}` } + ); + } catch (error) { + console.error(`\nāŒ FAILED AT CHUNK ${i + 1}/${chunks.length}`); + console.error(`To resume, use: --barn-start-chunk ${i}`); + throw error; + } await updateProgress(i + 1, chunks.length); } @@ -182,7 +221,8 @@ async function distributeContractAccountData({ contractPaybackDistributorContract, account, verbose = true, - targetEntriesPerChunk = 25 + targetEntriesPerChunk = 25, + startFromChunk = 0 }) { if (verbose) console.log("🌱 Distributing contract account data..."); @@ -219,30 +259,44 @@ async function distributeContractAccountData({ } console.log(`Starting to process ${chunks.length} chunks...`); + + if (startFromChunk > 0) { + console.log(`ā© Resuming from chunk ${startFromChunk + 1}/${chunks.length}`); + } + let totalGasUsed = ethers.BigNumber.from(0); - for (let i = 0; i < chunks.length; i++) { + for (let i = startFromChunk; i < chunks.length; i++) { if (verbose) { console.log(`\n\nProcessing chunk ${i + 1}/${chunks.length}`); console.log(`Chunk contains ${chunks[i].accounts.length} contract accounts`); console.log("-----------------------------------"); } - await retryOperation(async () => { - // Remove address field from data before contract call (contract doesn't expect this field) - const dataForContract = chunks[i].data.map((accountData) => { - const { address, ...dataWithoutAddress } = accountData; - return dataWithoutAddress; - }); - - // Initialize contract account data in chunks - const tx = await contractPaybackDistributorContract - .connect(account) - .initializeAccountData(chunks[i].accounts, dataForContract); - const receipt = await tx.wait(); - totalGasUsed = totalGasUsed.add(receipt.gasUsed); - if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); - }); + try { + await retryOperation( + async () => { + // Remove address field from data before contract call (contract doesn't expect this field) + const dataForContract = chunks[i].data.map((accountData) => { + const { address, ...dataWithoutAddress } = accountData; + return dataWithoutAddress; + }); + + // Initialize contract account data in chunks + const tx = await contractPaybackDistributorContract + .connect(account) + .initializeAccountData(chunks[i].accounts, dataForContract); + const receipt = await verifyTransaction(tx, `Contract account data chunk ${i + 1}`); + totalGasUsed = totalGasUsed.add(receipt.gasUsed); + if (verbose) console.log(`⛽ Chunk gas used: ${receipt.gasUsed.toString()}`); + }, + { context: `Chunk ${i + 1}/${chunks.length}` } + ); + } catch (error) { + console.error(`\nāŒ FAILED AT CHUNK ${i + 1}/${chunks.length}`); + console.error(`To resume, use: --contract-start-chunk ${i}`); + throw error; + } await updateProgress(i + 1, chunks.length); } @@ -289,20 +343,23 @@ async function deployAndSetupContracts(params) { siloPaybackContract: contracts.siloPaybackContract, account: params.account, dataPath: "./scripts/beanstalkShipments/data/unripeBdvTokens.json", - verbose: true + verbose: true, + startFromChunk: params.unripeStartChunk || 0 }); await distributeBarnPaybackTokens({ barnPaybackContract: contracts.barnPaybackContract, account: params.account, dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", - verbose: true + verbose: true, + startFromChunk: params.barnStartChunk || 0 }); await distributeContractAccountData({ contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, account: params.account, - verbose: true + verbose: true, + startFromChunk: params.contractStartChunk || 0 }); } diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 1ed18b6b..f2b5b959 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -3,7 +3,8 @@ const { splitEntriesIntoChunksOptimized, splitWhaleAccounts, updateProgress, - retryOperation + retryOperation, + verifyTransaction } = require("../../utils/read.js"); // EIP-7987 tx gas limit is 16,777,216 (2^24) @@ -13,8 +14,13 @@ const MAX_PLOTS_PER_ACCOUNT_PER_TX = 150; /** * Populates the beanstalk field by reading data from beanstalkPlots.json * and calling initializeRepaymentPlots directly on the L2_PINTO contract + * @param {Object} options - Configuration options + * @param {string} options.diamondAddress - The diamond contract address + * @param {Object} options.account - The signer account + * @param {boolean} options.verbose - Whether to log verbose output + * @param {number} options.startFromChunk - Chunk index to resume from (0-indexed) */ -async function populateBeanstalkField({ diamondAddress, account, verbose }) { +async function populateBeanstalkField({ diamondAddress, account, verbose, startFromChunk = 0 }) { console.log("populateBeanstalkField: Re-initialize the field with Beanstalk plots."); // Read and parse the JSON file @@ -32,6 +38,10 @@ async function populateBeanstalkField({ diamondAddress, account, verbose }) { const plotChunks = splitEntriesIntoChunksOptimized(splitData, targetEntriesPerChunk); console.log(`Starting to process ${plotChunks.length} chunks...`); + if (startFromChunk > 0) { + console.log(`ā© Resuming from chunk ${startFromChunk + 1}/${plotChunks.length}`); + } + // Get contract instance for TempRepaymentFieldFacet const pintoDiamond = await ethers.getContractAt( "TempRepaymentFieldFacet", @@ -39,21 +49,32 @@ async function populateBeanstalkField({ diamondAddress, account, verbose }) { account ); - for (let i = 0; i < plotChunks.length; i++) { + for (let i = startFromChunk; i < plotChunks.length; i++) { await updateProgress(i + 1, plotChunks.length); if (verbose) { console.log(`\nšŸ”„ Processing chunk ${i + 1}/${plotChunks.length}`); console.log(`Chunk contains ${plotChunks[i].length} accounts`); console.log("-----------------------------------"); } - await retryOperation(async () => { - const tx = await pintoDiamond.initializeRepaymentPlots(plotChunks[i]); - const receipt = await tx.wait(); - if (verbose) { - console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); - console.log(`šŸ“‹ Transaction hash: ${receipt.transactionHash}`); - } - }); + + try { + await retryOperation( + async () => { + const tx = await pintoDiamond.initializeRepaymentPlots(plotChunks[i]); + const receipt = await verifyTransaction(tx, `Repayment plots chunk ${i + 1}`); + if (verbose) { + console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); + console.log(`šŸ“‹ Transaction hash: ${receipt.transactionHash}`); + } + }, + { context: `Chunk ${i + 1}/${plotChunks.length}` } + ); + } catch (error) { + console.error(`\nāŒ FAILED AT CHUNK ${i + 1}/${plotChunks.length}`); + console.error(`To resume, use: --field-start-chunk ${i}`); + throw error; + } + if (verbose) { console.log(`Completed chunk ${i + 1}/${plotChunks.length}`); } diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 97649d33..131d3fe3 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -101,10 +101,30 @@ module.exports = function () { // Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER at 0x47c365cc9ef51052651c2be22f274470ad6afc53 // Set mock to false to deploy the payback contracts on base. // - npx hardhat deployPaybackContracts --network base - task( - "deployPaybackContracts", - "performs all actions to initialize the beanstalk shipments" - ).setAction(async (taskArgs) => { + // Resume parameters: + // - npx hardhat deployPaybackContracts --unripe-start-chunk 5 --network base + // - npx hardhat deployPaybackContracts --barn-start-chunk 10 --network base + // - npx hardhat deployPaybackContracts --contract-start-chunk 3 --network base + task("deployPaybackContracts", "performs all actions to initialize the beanstalk shipments") + .addOptionalParam( + "unripeStartChunk", + "Chunk index to resume unripe BDV distribution from (0-indexed)", + 0, + types.int + ) + .addOptionalParam( + "barnStartChunk", + "Chunk index to resume barn payback distribution from (0-indexed)", + 0, + types.int + ) + .addOptionalParam( + "contractStartChunk", + "Chunk index to resume contract account data distribution from (0-indexed)", + 0, + types.int + ) + .setAction(async (taskArgs) => { // params const verbose = true; const populateData = true; @@ -122,6 +142,18 @@ module.exports = function () { // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract console.log("STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); console.log("-".repeat(50)); + + // Log resume status if any start chunk is specified + if (taskArgs.unripeStartChunk > 0 || taskArgs.barnStartChunk > 0 || taskArgs.contractStartChunk > 0) { + console.log("ā© Resume mode enabled:"); + if (taskArgs.unripeStartChunk > 0) + console.log(` - Unripe BDV: starting from chunk ${taskArgs.unripeStartChunk}`); + if (taskArgs.barnStartChunk > 0) + console.log(` - Barn payback: starting from chunk ${taskArgs.barnStartChunk}`); + if (taskArgs.contractStartChunk > 0) + console.log(` - Contract accounts: starting from chunk ${taskArgs.contractStartChunk}`); + } + const contracts = await deployAndSetupContracts({ PINTO, L2_PINTO, @@ -129,7 +161,10 @@ module.exports = function () { account: deployer, verbose, populateData: populateData, - useChunking: true + useChunking: true, + unripeStartChunk: taskArgs.unripeStartChunk, + barnStartChunk: taskArgs.barnStartChunk, + contractStartChunk: taskArgs.contractStartChunk }); console.log(" Payback contracts deployed and configured\n"); @@ -207,7 +242,16 @@ module.exports = function () { // The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed // Set mock to false to populate the repayment field on base. // - npx hardhat populateRepaymentField --network base - task("populateRepaymentField", "populates the repayment field with data").setAction( + // Resume parameters: + // - npx hardhat populateRepaymentField --field-start-chunk 15 --network base + task("populateRepaymentField", "populates the repayment field with data") + .addOptionalParam( + "fieldStartChunk", + "Chunk index to resume field population from (0-indexed)", + 0, + types.int + ) + .setAction( async (taskArgs) => { // params const mock = true; @@ -226,10 +270,16 @@ module.exports = function () { // Populate the repayment field with data console.log("STEP 3: POPULATING THE BEANSTALK FIELD WITH DATA"); console.log("-".repeat(50)); + + if (taskArgs.fieldStartChunk > 0) { + console.log(`ā© Resume mode: starting from chunk ${taskArgs.fieldStartChunk}`); + } + await populateBeanstalkField({ diamondAddress: L2_PINTO, account: repaymentFieldPopulator, - verbose: verbose + verbose: verbose, + startFromChunk: taskArgs.fieldStartChunk }); console.log(" Beanstalk field initialized\n"); } diff --git a/utils/read.js b/utils/read.js index 5c51157a..8f61556d 100644 --- a/utils/read.js +++ b/utils/read.js @@ -148,27 +148,114 @@ async function updateProgress(current, total) { } const MAX_RETRIES = 20; -const RETRY_DELAY = 500; // 0.5 seconds +const BASE_RETRY_DELAY = 500; // 0.5 seconds base delay +const MAX_RETRY_DELAY = 30000; // 30 seconds max delay + +// Common RPC error patterns that warrant a retry +const RETRYABLE_ERRORS = [ + "Internal server error", + "429", + "too many requests", + "rate limit", + "timeout", + "ETIMEDOUT", + "ESOCKETTIMEDOUT", + "ECONNRESET", + "ECONNREFUSED", + "network error", + "header not found", + "missing trie node", + "request failed", + "transaction underpriced", + "replacement transaction underpriced", + "nonce too low", + "already known" +]; async function sleep(ms) { return new Promise((resolve) => setTimeout(resolve, ms)); } -async function retryOperation(operation, retries = MAX_RETRIES) { - try { - return await operation(); - } catch (error) { - if (retries > 0 && error.message.includes("Internal server error")) { +/** + * Checks if an error message contains any retryable error patterns + * @param {string} errorMessage - The error message to check + * @returns {boolean} - True if the error is retryable + */ +function isRetryableError(errorMessage) { + const lowerMessage = errorMessage.toLowerCase(); + return RETRYABLE_ERRORS.some((pattern) => lowerMessage.includes(pattern.toLowerCase())); +} + +/** + * Calculates exponential backoff delay with jitter + * @param {number} attempt - Current attempt number (0-indexed) + * @returns {number} - Delay in milliseconds + */ +function calculateBackoffDelay(attempt) { + // Exponential backoff: base * 2^attempt + const exponentialDelay = BASE_RETRY_DELAY * Math.pow(2, attempt); + // Add random jitter (0-25% of delay) + const jitter = Math.random() * exponentialDelay * 0.25; + // Cap at max delay + return Math.min(exponentialDelay + jitter, MAX_RETRY_DELAY); +} + +/** + * Retries an operation with exponential backoff on RPC errors + * @param {Function} operation - Async function to execute + * @param {Object} options - Options object + * @param {number} options.retries - Maximum number of retries (default: MAX_RETRIES) + * @param {string} options.context - Context string for error messages (e.g., "Chunk 5/10") + * @returns {Promise} - Result of the operation + */ +async function retryOperation(operation, options = {}) { + const { retries = MAX_RETRIES, context = "" } = options; + const maxAttempts = retries + 1; + + for (let attempt = 0; attempt < maxAttempts; attempt++) { + try { + return await operation(); + } catch (error) { + const isLastAttempt = attempt === maxAttempts - 1; + const isRetryable = isRetryableError(error.message); + + if (isLastAttempt || !isRetryable) { + // Final attempt or non-retryable error - throw with context + const contextPrefix = context ? `${context}: ` : ""; + error.message = `${contextPrefix}${error.message}`; + throw error; + } + + // Calculate delay with exponential backoff + const delay = calculateBackoffDelay(attempt); + const retriesLeft = maxAttempts - attempt - 1; + console.log( - `RPC error encountered. Retrying in ${RETRY_DELAY / 1000} seconds... (${retries} attempts left)` + `āš ļø RPC error encountered${context ? ` (${context})` : ""}. ` + + `Retrying in ${(delay / 1000).toFixed(1)}s... (${retriesLeft} attempts left)` ); - await sleep(RETRY_DELAY); - return retryOperation(operation, retries - 1); + console.log(` Error: ${error.message.substring(0, 100)}${error.message.length > 100 ? "..." : ""}`); + + await sleep(delay); } - throw error; } } +/** + * Verifies a transaction completed successfully by checking receipt status + * @param {Object} tx - Transaction object from contract call + * @param {string} description - Description for error messages (e.g., "Barn payback chunk 5") + * @returns {Promise} - Transaction receipt + * @throws {Error} - If transaction reverted (status !== 1) + */ +async function verifyTransaction(tx, description = "Transaction") { + const receipt = await tx.wait(); + if (receipt.status !== 1) { + throw new Error(`${description} reverted. Hash: ${receipt.transactionHash}`); + } + return receipt; +} + exports.readPrune = readPrune; exports.splitEntriesIntoChunks = splitEntriesIntoChunks; exports.splitIntoExactChunks = splitIntoExactChunks; @@ -177,3 +264,4 @@ exports.splitWhaleAccounts = splitWhaleAccounts; exports.updateProgress = updateProgress; exports.convertToBigNum = convertToBigNum; exports.retryOperation = retryOperation; +exports.verifyTransaction = verifyTransaction; From a5b0d40ace588ff3724762ef471926eafcb4478b Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 11 Feb 2026 10:59:28 -0500 Subject: [PATCH 249/270] Add tests for delegation griefing attack and address(0) prevention - Add test_delegateReferralRewards_cannotDelegateToZeroAddress - Add test_delegateReferralRewards_griefingAttackPrevented - Add test_delegateReferralRewards_changeDelegationRemovesUnearned - Add fuzz test for griefing attack prevention - Update natspec comment for delegateReferralRewards Co-Authored-By: Claude Opus 4.5 --- .../beanstalk/facets/field/FieldFacet.sol | 2 +- test/foundry/field/Field.t.sol | 166 ++++++++++++++++-- 2 files changed, 150 insertions(+), 18 deletions(-) diff --git a/contracts/beanstalk/facets/field/FieldFacet.sol b/contracts/beanstalk/facets/field/FieldFacet.sol index c5220cf4..4cf2a8ef 100644 --- a/contracts/beanstalk/facets/field/FieldFacet.sol +++ b/contracts/beanstalk/facets/field/FieldFacet.sol @@ -234,7 +234,7 @@ contract FieldFacet is Invariable, ReentrancyGuard { /** * @notice Delegate the referral rewards to a delegate. * @param delegate The address of the delegate to delegate the referral rewards to. - * @dev a user can reset their delegate to the zero address to stop delegating. + * @dev Delegation to address(0) is not allowed to prevent storage pollution. */ function delegateReferralRewards(address delegate) external { address user = LibTractor._user(); diff --git a/test/foundry/field/Field.t.sol b/test/foundry/field/Field.t.sol index 99e0d77d..41d81a3a 100644 --- a/test/foundry/field/Field.t.sol +++ b/test/foundry/field/Field.t.sol @@ -982,11 +982,11 @@ contract FieldTest is TestHelper { } /** - * @notice Test that users can stop delegating by setting delegate to address(0) - * @dev According to the natspec comment at FieldFacet.sol:237, a user can reset - * their delegate to the zero address to stop delegating. + * @notice Test that delegation to address(0) is blocked + * @dev Delegation to address(0) could cause storage pollution and is conceptually incorrect. + * This test verifies the fix for the address(0) delegation vulnerability. */ - function test_delegateReferralRewards_stopDelegating() public { + function test_delegateReferralRewards_cannotDelegateToZeroAddress() public { uint256 threshold = field.getBeanSownEligibilityThreshold(); // Farmer 0 (USER) sows enough beans to earn the right to delegate @@ -999,26 +999,158 @@ contract FieldTest is TestHelper { "User should have sown threshold" ); - // Farmer 0 delegates to farmer 1 + // Try to delegate to address(0) - should fail vm.prank(farmers[0]); - field.delegateReferralRewards(farmers[1]); + vm.expectRevert("Field: delegate cannot be the zero address"); + field.delegateReferralRewards(address(0)); + } - assertEq(field.getDelegate(farmers[0]), farmers[1], "Delegate should be set"); + /** + * @notice Test that changing delegation does NOT remove independently-earned eligibility from old delegate + * @dev This is the key test for the griefing attack vulnerability fix. + * + * VULNERABILITY SCENARIO (before fix): + * 1. Attacker (Alice) sows threshold beans, becomes eligible + * 2. Alice delegates to Victim (Bob), making Bob eligible through delegation + * 3. Bob independently sows threshold beans (Bob has now earned eligibility on their own) + * 4. Alice changes delegation to Carol + * 5. BEFORE FIX: Bob loses eligibility even though he earned it independently + * 6. AFTER FIX: Bob keeps eligibility because he earned it through his own sowing + * + * This prevents a DDoS attack where an attacker could repeatedly delegate to someone + * and then change delegation to remove their legitimately-earned eligibility. + */ + function test_delegateReferralRewards_griefingAttackPrevented() public { + uint256 threshold = field.getBeanSownEligibilityThreshold(); + address attacker = farmers[0]; + address victim = farmers[1]; + address carol = users[3]; - // Stop delegating by setting to address(0) - vm.prank(farmers[0]); - field.delegateReferralRewards(address(0)); + // Setup: ensure enough soil for multiple sows + season.setSoilE(threshold * 5); - assertEq( - field.getDelegate(farmers[0]), - address(0), - "Delegate should be reset to address(0)" + // Step 1: Attacker sows threshold beans, becomes eligible + bean.mint(attacker, threshold); + vm.prank(attacker); + field.sowWithReferral(threshold, 0, 0, LibTransfer.From.EXTERNAL, address(0)); + assertTrue(field.isValidReferrer(attacker), "Attacker should be eligible after sowing"); + + // Step 2: Attacker delegates to victim, making victim eligible through delegation + vm.prank(attacker); + field.delegateReferralRewards(victim); + assertTrue(field.isValidReferrer(victim), "Victim should be eligible through delegation"); + assertEq(field.getDelegate(attacker), victim, "Delegation should be set"); + + // Step 3: Victim independently sows threshold beans (earns eligibility on their own) + bean.mint(victim, threshold); + vm.prank(victim); + field.sowWithReferral(threshold, 0, 0, LibTransfer.From.EXTERNAL, address(0)); + + // Verify victim has sown enough beans independently + assertGe( + field.getBeansSownForReferral(victim), + threshold, + "Victim should have sown threshold beans independently" ); + assertTrue(field.isValidReferrer(victim), "Victim should still be eligible"); - // Verify old delegate (farmer 1) had their eligibility reset to false + // Step 4: Attacker changes delegation to Carol + vm.prank(attacker); + field.delegateReferralRewards(carol); + + // Step 5 (AFTER FIX): Victim should KEEP eligibility because they earned it independently + assertTrue( + field.isValidReferrer(victim), + "GRIEFING ATTACK PREVENTED: Victim should keep eligibility because they sowed enough beans independently" + ); + + // Carol should now be eligible through delegation + assertTrue(field.isValidReferrer(carol), "Carol should be eligible through delegation"); + assertEq(field.getDelegate(attacker), carol, "Delegation should now be to Carol"); + } + + /** + * @notice Test that changing delegation DOES remove eligibility when old delegate hasn't earned it independently + * @dev This ensures the normal delegation change behavior still works correctly. + * When changing delegation, if the old delegate hasn't earned eligibility through their own sowing, + * their eligibility should be removed. + */ + function test_delegateReferralRewards_changeDelegationRemovesUnearned() public { + uint256 threshold = field.getBeanSownEligibilityThreshold(); + address delegator = farmers[0]; + address oldDelegate = farmers[1]; + address newDelegate = users[3]; + + // Setup: delegator sows threshold beans + sowAmountForFarmer(delegator, threshold); + assertTrue(field.isValidReferrer(delegator), "Delegator should be eligible"); + + // Delegator delegates to oldDelegate (who hasn't sown anything) + vm.prank(delegator); + field.delegateReferralRewards(oldDelegate); + assertTrue(field.isValidReferrer(oldDelegate), "Old delegate should be eligible through delegation"); + + // Verify old delegate has NOT sown enough beans independently + assertLt( + field.getBeansSownForReferral(oldDelegate), + threshold, + "Old delegate should not have sown threshold beans" + ); + + // Delegator changes delegation to newDelegate + vm.prank(delegator); + field.delegateReferralRewards(newDelegate); + + // Old delegate should LOSE eligibility because they didn't earn it independently assertFalse( - field.isValidReferrer(farmers[1]), - "Old delegate should have eligibility reset" + field.isValidReferrer(oldDelegate), + "Old delegate should lose eligibility because they didn't earn it independently" + ); + + // New delegate should be eligible + assertTrue(field.isValidReferrer(newDelegate), "New delegate should be eligible"); + } + + /** + * @notice Fuzz test for griefing attack prevention + * @dev Tests various amounts to ensure the griefing protection works regardless of sow amounts + */ + function test_delegateReferralRewards_griefingAttackPrevented_fuzz(uint256 victimSowAmount) public { + uint256 threshold = field.getBeanSownEligibilityThreshold(); + + // Victim sows at least the threshold (this is what earns them independent eligibility) + victimSowAmount = bound(victimSowAmount, threshold, threshold * 10); + + address attacker = farmers[0]; + address victim = farmers[1]; + address newTarget = users[3]; + + // Setup: ensure enough soil + season.setSoilE(threshold + victimSowAmount + 100); + + // Attacker sows and becomes eligible + bean.mint(attacker, threshold); + vm.prank(attacker); + field.sowWithReferral(threshold, 0, 0, LibTransfer.From.EXTERNAL, address(0)); + + // Attacker delegates to victim + vm.prank(attacker); + field.delegateReferralRewards(victim); + assertTrue(field.isValidReferrer(victim), "Victim eligible through delegation"); + + // Victim sows enough to earn independent eligibility + bean.mint(victim, victimSowAmount); + vm.prank(victim); + field.sowWithReferral(victimSowAmount, 0, 0, LibTransfer.From.EXTERNAL, address(0)); + + // Attacker changes delegation + vm.prank(attacker); + field.delegateReferralRewards(newTarget); + + // Victim should keep eligibility (griefing prevented) + assertTrue( + field.isValidReferrer(victim), + "Victim should keep eligibility regardless of attacker's delegation change" ); } From 58a2ffc7086828ca14052b73333bf90a835eb90c Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 11 Feb 2026 16:02:38 +0000 Subject: [PATCH 250/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- test/foundry/field/Field.t.sol | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/test/foundry/field/Field.t.sol b/test/foundry/field/Field.t.sol index 648573b6..166f9a5f 100644 --- a/test/foundry/field/Field.t.sol +++ b/test/foundry/field/Field.t.sol @@ -1351,7 +1351,10 @@ contract FieldTest is TestHelper { // Delegator delegates to oldDelegate (who hasn't sown anything) vm.prank(delegator); field.delegateReferralRewards(oldDelegate); - assertTrue(field.isValidReferrer(oldDelegate), "Old delegate should be eligible through delegation"); + assertTrue( + field.isValidReferrer(oldDelegate), + "Old delegate should be eligible through delegation" + ); // Verify old delegate has NOT sown enough beans independently assertLt( @@ -1378,7 +1381,9 @@ contract FieldTest is TestHelper { * @notice Fuzz test for griefing attack prevention * @dev Tests various amounts to ensure the griefing protection works regardless of sow amounts */ - function test_delegateReferralRewards_griefingAttackPrevented_fuzz(uint256 victimSowAmount) public { + function test_delegateReferralRewards_griefingAttackPrevented_fuzz( + uint256 victimSowAmount + ) public { uint256 threshold = field.getBeanSownEligibilityThreshold(); // Victim sows at least the threshold (this is what earns them independent eligibility) From 694be8d4fe9480bd7eb93a2e4f6776ec6e5f0a2f Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 11 Feb 2026 12:39:37 -0500 Subject: [PATCH 251/270] Fix convert capacity double-counting bug When multiple converts occurred in the same block, the convert capacity tracking was double-counting usage because calculateConvertCapacityPenalty() returned cumulative values that applyStalkPenalty() added to storage again. Changes: - calculateConvertCapacityPenalty() now returns delta values instead of cumulative - calculatePerWellCapacity() now returns delta values and removes unused parameter - Added NatSpec documentation for pdCapacity return value - Added tests verifying sequential converts consume linear capacity Before fix: storage = old + (old + delta) = 2*old + delta After fix: storage = old + delta Co-Authored-By: Claude Opus 4.5 --- contracts/libraries/Convert/LibConvert.sol | 31 ++- .../convert/ConvertCapacityDoubleCount.t.sol | 217 ++++++++++++++++++ .../convert/ConvertCapacityForkTest.t.sol | 159 +++++++++++++ 3 files changed, 391 insertions(+), 16 deletions(-) create mode 100644 test/foundry/convert/ConvertCapacityDoubleCount.t.sol create mode 100644 test/foundry/convert/ConvertCapacityForkTest.t.sol diff --git a/contracts/libraries/Convert/LibConvert.sol b/contracts/libraries/Convert/LibConvert.sol index 16969a02..977c202c 100644 --- a/contracts/libraries/Convert/LibConvert.sol +++ b/contracts/libraries/Convert/LibConvert.sol @@ -287,6 +287,7 @@ library LibConvert { * @param outputToken Address of the output well * @param outputTokenAmountInDirectionOfPeg The amount deltaB was converted towards peg for the output well * @return cumulativePenalty The total Convert Capacity penalty, note it can return greater than the BDV converted + * @return pdCapacity The capacity deltas for overall, inputToken, and outputToken to add to storage */ function calculateConvertCapacityPenalty( uint256 overallCappedDeltaB, @@ -312,20 +313,17 @@ library LibConvert { overallCappedDeltaB.sub(convertCap.overallConvertCapacityUsed); } - // update overall remaining convert capacity - pdCapacity.overall = convertCap.overallConvertCapacityUsed.add( - overallAmountInDirectionOfPeg - ); + // Return capacity delta for caller to add to storage + pdCapacity.overall = overallAmountInDirectionOfPeg; - // update per-well convert capacity + // Calculate per-well capacity delta for caller to add to storage if (inputToken != s.sys.bean && inputTokenAmountInDirectionOfPeg > 0) { (cumulativePenalty, pdCapacity.inputToken) = calculatePerWellCapacity( inputToken, inputTokenAmountInDirectionOfPeg, cumulativePenalty, - convertCap, - pdCapacity.inputToken + convertCap ); } @@ -334,8 +332,7 @@ library LibConvert { outputToken, outputTokenAmountInDirectionOfPeg, cumulativePenalty, - convertCap, - pdCapacity.outputToken + convertCap ); } } @@ -344,16 +341,18 @@ library LibConvert { address wellToken, uint256 amountInDirectionOfPeg, uint256 cumulativePenalty, - ConvertCapacity storage convertCap, - uint256 pdCapacityToken + ConvertCapacity storage convertCap ) internal view returns (uint256, uint256) { uint256 tokenWellCapacity = abs(LibDeltaB.cappedReservesDeltaB(wellToken)); - pdCapacityToken = convertCap.wellConvertCapacityUsed[wellToken].add(amountInDirectionOfPeg); - if (pdCapacityToken > tokenWellCapacity) { - cumulativePenalty = cumulativePenalty.add(pdCapacityToken.sub(tokenWellCapacity)); + // Use cumulative for penalty check + uint256 cumulativeUsed = convertCap.wellConvertCapacityUsed[wellToken].add( + amountInDirectionOfPeg + ); + if (cumulativeUsed > tokenWellCapacity) { + cumulativePenalty = cumulativePenalty.add(cumulativeUsed.sub(tokenWellCapacity)); } - - return (cumulativePenalty, pdCapacityToken); + // Return delta (not cumulative) for storage update + return (cumulativePenalty, amountInDirectionOfPeg); } /** diff --git a/test/foundry/convert/ConvertCapacityDoubleCount.t.sol b/test/foundry/convert/ConvertCapacityDoubleCount.t.sol new file mode 100644 index 00000000..3dcae977 --- /dev/null +++ b/test/foundry/convert/ConvertCapacityDoubleCount.t.sol @@ -0,0 +1,217 @@ +// SPDX-License-Identifier: MIT +pragma solidity >=0.6.0 <0.9.0; +pragma abicoder v2; + +import {TestHelper} from "test/foundry/utils/TestHelper.sol"; +import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; +import {MockPump} from "contracts/mocks/well/MockPump.sol"; +import {IWell, Call} from "contracts/interfaces/basin/IWell.sol"; +import {MockToken} from "contracts/mocks/MockToken.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {LibConvert} from "contracts/libraries/Convert/LibConvert.sol"; +import {LibRedundantMath256} from "contracts/libraries/Math/LibRedundantMath256.sol"; +import {MockPipelineConvertFacet, AdvancedPipeCall} from "contracts/mocks/mockFacets/MockPipelineConvertFacet.sol"; +import "forge-std/Test.sol"; + +/** + * @title ConvertCapacityDoubleCountTest + * @notice Test that convert capacity is not double-counted when multiple converts occur in the same block. + * @dev This test verifies the fix for the bug where calculateConvertCapacityPenalty() returned + * cumulative values that applyStalkPenalty() added to storage again, causing double-counting. + */ +contract ConvertCapacityDoubleCountTest is TestHelper { + using LibRedundantMath256 for uint256; + + MockPipelineConvertFacet pipelineConvert = MockPipelineConvertFacet(BEANSTALK); + address beanEthWell = BEAN_ETH_WELL; + + address[] farmers; + + function setUp() public { + initializeBeanstalkTestState(true, false); + + // Initialize farmers + farmers.push(users[1]); + farmers.push(users[2]); + farmers.push(users[3]); + + // Add initial liquidity to bean eth well + vm.prank(users[0]); + addLiquidityToWell( + beanEthWell, + 10_000e6, // 10,000 bean + 10 ether // 10 WETH + ); + + // Mint beans to farmers + mintTokensToUsers(farmers, BEAN, MAX_DEPOSIT_BOUND); + } + + /** + * @notice Test that sequential converts in the same block consume capacity linearly. + * @dev Before the fix, the second convert would consume more capacity than the first + * due to double-counting (storage = old + (old + delta) instead of storage = old + delta). + * + * Example with bug: + * - 1st convert of 50: storage = 0 + (0 + 50) = 50 āœ“ + * - 2nd convert of 50: storage = 50 + (50 + 50) = 150 āœ— (should be 100) + * + * After fix, both should consume equal capacity for equal amounts. + */ + function test_sameBlockMultipleConverts_capacityNotDoubleCount() public { + vm.pauseGasMetering(); + + uint256 convertAmount = 500e6; // 500 beans per convert + + // Set deltaB high enough to allow multiple converts without hitting capacity + setDeltaBforWell(5000e6, beanEthWell, WETH); + + // Deposit beans for all farmers and pass germination + int96 stem1 = depositBeanAndPassGermination(convertAmount, farmers[0]); + int96 stem2 = depositBeanAndPassGermination(convertAmount, farmers[1]); + int96 stem3 = depositBeanAndPassGermination(convertAmount, farmers[2]); + + // Get initial capacity + uint256 initialCapacity = bs.getOverallConvertCapacity(); + assertGt(initialCapacity, 0, "Initial capacity should be > 0"); + + // Perform first convert + beanToLPDoConvert(convertAmount, stem1, farmers[0]); + uint256 capacityAfter1 = bs.getOverallConvertCapacity(); + uint256 usedByConvert1 = initialCapacity - capacityAfter1; + + // Perform second convert in same block + beanToLPDoConvert(convertAmount, stem2, farmers[1]); + uint256 capacityAfter2 = bs.getOverallConvertCapacity(); + uint256 usedByConvert2 = capacityAfter1 - capacityAfter2; + + // Perform third convert in same block + beanToLPDoConvert(convertAmount, stem3, farmers[2]); + uint256 capacityAfter3 = bs.getOverallConvertCapacity(); + uint256 usedByConvert3 = capacityAfter2 - capacityAfter3; + + vm.resumeGasMetering(); + + // Log capacity usage for comparison with fork test + console.log("Capacity used by convert 1:", usedByConvert1); + console.log("Capacity used by convert 2:", usedByConvert2); + console.log("Capacity used by convert 3:", usedByConvert3); + if (usedByConvert1 > 0) { + console.log("Ratio (convert2/convert1):", (usedByConvert2 * 100) / usedByConvert1, "%"); + console.log("Ratio (convert3/convert1):", (usedByConvert3 * 100) / usedByConvert1, "%"); + } + + // Assert: All three converts should use approximately the same capacity + // Allow 15% tolerance for slippage from BDV calculations as pool reserves change + // Before the fix, the ratio would be 2x or more due to double-counting + assertApproxEqRel( + usedByConvert1, usedByConvert2, 0.15e18, "Convert 1 and 2 should use approximately equal capacity" + ); + assertApproxEqRel( + usedByConvert2, usedByConvert3, 0.15e18, "Convert 2 and 3 should use approximately equal capacity" + ); + + // Also verify total capacity used is approximately 3x the first convert + // Before the fix: total would be 50 + 150 + 350 = 550 instead of 150 + uint256 totalUsed = initialCapacity - capacityAfter3; + assertApproxEqRel( + totalUsed, + usedByConvert1 * 3, + 0.2e18, + "Total capacity used should be ~3x single convert (not exponentially increasing)" + ); + } + + /** + * @notice Test per-well capacity is not double-counted for sequential converts. + */ + function test_sameBlockMultipleConverts_perWellCapacityNotDoubleCount() public { + vm.pauseGasMetering(); + + uint256 convertAmount = 500e6; + + // Set deltaB high enough + setDeltaBforWell(5000e6, beanEthWell, WETH); + + // Deposit beans for farmers + int96 stem1 = depositBeanAndPassGermination(convertAmount, farmers[0]); + int96 stem2 = depositBeanAndPassGermination(convertAmount, farmers[1]); + + // Get initial per-well capacity + uint256 initialWellCapacity = bs.getWellConvertCapacity(beanEthWell); + assertGt(initialWellCapacity, 0, "Initial well capacity should be > 0"); + + // Perform first convert + beanToLPDoConvert(convertAmount, stem1, farmers[0]); + uint256 wellCapacityAfter1 = bs.getWellConvertCapacity(beanEthWell); + uint256 wellUsedByConvert1 = initialWellCapacity - wellCapacityAfter1; + + // Perform second convert in same block + beanToLPDoConvert(convertAmount, stem2, farmers[1]); + uint256 wellCapacityAfter2 = bs.getWellConvertCapacity(beanEthWell); + uint256 wellUsedByConvert2 = wellCapacityAfter1 - wellCapacityAfter2; + + vm.resumeGasMetering(); + + // Assert: Both converts should use approximately the same per-well capacity + assertApproxEqRel( + wellUsedByConvert1, wellUsedByConvert2, 0.05e18, "Per-well capacity should be consumed linearly" + ); + } + + // Helper functions + + function depositBeanAndPassGermination(uint256 amount, address user) internal returns (int96 stem) { + vm.pauseGasMetering(); + bean.mint(user, amount); + + address[] memory userArr = new address[](1); + userArr[0] = user; + + (amount, stem) = setUpSiloDepositTest(amount, userArr); + + passGermination(); + } + + function beanToLPDoConvert(uint256 amount, int96 stem, address user) + internal + returns (int96 outputStem, uint256 outputAmount) + { + int96[] memory stems = new int96[](1); + stems[0] = stem; + + AdvancedPipeCall[] memory beanToLPPipeCalls = createBeanToLPPipeCalls(amount, new AdvancedPipeCall[](0)); + + uint256[] memory amounts = new uint256[](1); + amounts[0] = amount; + + vm.resumeGasMetering(); + vm.prank(user); + (outputStem, outputAmount,,,) = + pipelineConvert.pipelineConvert(BEAN, stems, amounts, beanEthWell, beanToLPPipeCalls); + } + + function createBeanToLPPipeCalls(uint256 beanAmount, AdvancedPipeCall[] memory extraPipeCalls) + internal + view + returns (AdvancedPipeCall[] memory pipeCalls) + { + pipeCalls = new AdvancedPipeCall[](2 + extraPipeCalls.length); + + bytes memory approveWell = abi.encodeWithSelector(IERC20.approve.selector, beanEthWell, beanAmount); + pipeCalls[0] = AdvancedPipeCall(BEAN, approveWell, abi.encode(0)); + + uint256[] memory tokenAmountsIn = new uint256[](2); + tokenAmountsIn[0] = beanAmount; + tokenAmountsIn[1] = 0; + + bytes memory addBeans = abi.encodeWithSelector( + IWell(beanEthWell).addLiquidity.selector, tokenAmountsIn, 0, PIPELINE, type(uint256).max + ); + pipeCalls[1] = AdvancedPipeCall(beanEthWell, addBeans, abi.encode(0)); + + for (uint256 i = 0; i < extraPipeCalls.length; i++) { + pipeCalls[2 + i] = extraPipeCalls[i]; + } + } +} diff --git a/test/foundry/convert/ConvertCapacityForkTest.t.sol b/test/foundry/convert/ConvertCapacityForkTest.t.sol new file mode 100644 index 00000000..0a3e61a5 --- /dev/null +++ b/test/foundry/convert/ConvertCapacityForkTest.t.sol @@ -0,0 +1,159 @@ +// SPDX-License-Identifier: MIT +pragma solidity >=0.6.0 <0.9.0; +pragma abicoder v2; + +import "forge-std/Test.sol"; +import {LibConvertData} from "contracts/libraries/Convert/LibConvertData.sol"; + +interface IBeanstalk { + function getDeposit( + address account, + address token, + int96 stem + ) external view returns (uint256 amount, uint256 bdv); + function balanceOfStalk(address account) external view returns (uint256); + function convert( + bytes calldata convertData, + int96[] calldata stems, + uint256[] calldata amounts + ) external payable returns (int96, uint256, uint256, uint256, uint256); + function poolCurrentDeltaB(address pool) external view returns (int256); + function getOverallConvertCapacity() external view returns (uint256); +} + +interface IWell { + function tokens() external view returns (address[] memory); + function getSwapIn( + address tokenIn, + address tokenOut, + uint256 amountOut + ) external view returns (uint256); + function shift( + address tokenOut, + uint256 minAmountOut, + address recipient + ) external returns (uint256); +} + +interface IERC20 { + function transfer(address to, uint256 amount) external returns (bool); +} + +/** + * @title ConvertCapacityForkTest + * @notice Fork test from whitehat report to verify convert capacity double-counting bug is fixed. + * @dev Before fix: Convert 1 uses 250945301, Convert 2 uses 501823323 (199% ratio) + * After fix: Both converts should use approximately the same capacity. + * + * Run: BASE_RPC= forge test --match-contract ConvertCapacityForkTest -vv + */ +contract ConvertCapacityForkTest is Test { + address constant PINTO_DIAMOND = 0xD1A0D188E861ed9d15773a2F3574a2e94134bA8f; + address constant PINTO_TOKEN = 0xb170000aeeFa790fa61D6e837d1035906839a3c8; + address constant PINTO_USDC_WELL = 0x3e1133aC082716DDC3114bbEFEeD8B1731eA9cb1; + address constant REAL_FARMER = 0xFb94D3404c1d3D9D6F08f79e58041d5EA95AccfA; + int96 constant FARMER_STEM = 590486100; + uint256 constant FORK_BLOCK = 27236526; + IBeanstalk bs; + + function setUp() public { + vm.createSelectFork(vm.envString("BASE_RPC"), FORK_BLOCK); + bs = IBeanstalk(PINTO_DIAMOND); + } + + /** + * @notice This test SHOULD FAIL after the fix is applied. + * @dev The assertion expects convert 2 to use >150% of convert 1's capacity (the bug behavior). + * With the fix, both converts use approximately the same capacity, so this assertion fails. + */ + function test_forkBase_convertCapacityDoubleCount_EXPECT_FAIL() public { + (uint256 depositAmount, ) = bs.getDeposit(REAL_FARMER, PINTO_TOKEN, FARMER_STEM); + console.log("Farmer deposit:", depositAmount); + require(depositAmount > 0, "No deposit found"); + + uint256 capacityBefore = bs.getOverallConvertCapacity(); + console.log("Overall convert capacity:", capacityBefore); + + uint256 convertAmount = 500e6; + bytes memory convertData = abi.encode( + LibConvertData.ConvertKind.BEANS_TO_WELL_LP, + convertAmount, + uint256(0), + PINTO_USDC_WELL + ); + int96[] memory stems = new int96[](1); + stems[0] = FARMER_STEM; + uint256[] memory amounts = new uint256[](1); + amounts[0] = convertAmount; + + vm.prank(REAL_FARMER); + bs.convert(convertData, stems, amounts); + uint256 capacityAfter1 = bs.getOverallConvertCapacity(); + uint256 usedByConvert1 = capacityBefore - capacityAfter1; + + vm.prank(REAL_FARMER); + bs.convert(convertData, stems, amounts); + uint256 capacityAfter2 = bs.getOverallConvertCapacity(); + uint256 usedByConvert2 = capacityAfter1 - capacityAfter2; + + console.log("Capacity used by convert 1:", usedByConvert1); + console.log("Capacity used by convert 2:", usedByConvert2); + console.log("Ratio (convert2/convert1):", (usedByConvert2 * 100) / usedByConvert1, "%"); + + // This assertion expects the BUG behavior (2nd convert uses >150% of 1st) + // After fix, this should FAIL because both converts use ~equal capacity + assertGt( + usedByConvert2, + (usedByConvert1 * 15) / 10, + "Bug: 2nd convert uses disproportionately more capacity than 1st" + ); + } + + /** + * @notice This test verifies the fix is working correctly. + * @dev After fix, both converts should use approximately the same capacity (within 20% tolerance for slippage). + */ + function test_forkBase_convertCapacityFixed() public { + (uint256 depositAmount, ) = bs.getDeposit(REAL_FARMER, PINTO_TOKEN, FARMER_STEM); + console.log("Farmer deposit:", depositAmount); + require(depositAmount > 0, "No deposit found"); + + uint256 capacityBefore = bs.getOverallConvertCapacity(); + console.log("Overall convert capacity:", capacityBefore); + + uint256 convertAmount = 500e6; + bytes memory convertData = abi.encode( + LibConvertData.ConvertKind.BEANS_TO_WELL_LP, + convertAmount, + uint256(0), + PINTO_USDC_WELL + ); + int96[] memory stems = new int96[](1); + stems[0] = FARMER_STEM; + uint256[] memory amounts = new uint256[](1); + amounts[0] = convertAmount; + + vm.prank(REAL_FARMER); + bs.convert(convertData, stems, amounts); + uint256 capacityAfter1 = bs.getOverallConvertCapacity(); + uint256 usedByConvert1 = capacityBefore - capacityAfter1; + + vm.prank(REAL_FARMER); + bs.convert(convertData, stems, amounts); + uint256 capacityAfter2 = bs.getOverallConvertCapacity(); + uint256 usedByConvert2 = capacityAfter1 - capacityAfter2; + + console.log("Capacity used by convert 1:", usedByConvert1); + console.log("Capacity used by convert 2:", usedByConvert2); + console.log("Ratio (convert2/convert1):", (usedByConvert2 * 100) / usedByConvert1, "%"); + + // After fix: both converts should use approximately equal capacity + // Allow 20% tolerance for slippage from pool state changes + assertApproxEqRel( + usedByConvert1, + usedByConvert2, + 0.20e18, + "Fix verified: converts use approximately equal capacity" + ); + } +} From 1dcd75c79d1c0b1399b576adce2336860b1dbe07 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Wed, 11 Feb 2026 18:02:30 +0000 Subject: [PATCH 252/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../convert/ConvertCapacityDoubleCount.t.sol | 64 +++++++++++++------ 1 file changed, 46 insertions(+), 18 deletions(-) diff --git a/test/foundry/convert/ConvertCapacityDoubleCount.t.sol b/test/foundry/convert/ConvertCapacityDoubleCount.t.sol index 3dcae977..8c235f77 100644 --- a/test/foundry/convert/ConvertCapacityDoubleCount.t.sol +++ b/test/foundry/convert/ConvertCapacityDoubleCount.t.sol @@ -105,10 +105,16 @@ contract ConvertCapacityDoubleCountTest is TestHelper { // Allow 15% tolerance for slippage from BDV calculations as pool reserves change // Before the fix, the ratio would be 2x or more due to double-counting assertApproxEqRel( - usedByConvert1, usedByConvert2, 0.15e18, "Convert 1 and 2 should use approximately equal capacity" + usedByConvert1, + usedByConvert2, + 0.15e18, + "Convert 1 and 2 should use approximately equal capacity" ); assertApproxEqRel( - usedByConvert2, usedByConvert3, 0.15e18, "Convert 2 and 3 should use approximately equal capacity" + usedByConvert2, + usedByConvert3, + 0.15e18, + "Convert 2 and 3 should use approximately equal capacity" ); // Also verify total capacity used is approximately 3x the first convert @@ -155,13 +161,19 @@ contract ConvertCapacityDoubleCountTest is TestHelper { // Assert: Both converts should use approximately the same per-well capacity assertApproxEqRel( - wellUsedByConvert1, wellUsedByConvert2, 0.05e18, "Per-well capacity should be consumed linearly" + wellUsedByConvert1, + wellUsedByConvert2, + 0.05e18, + "Per-well capacity should be consumed linearly" ); } // Helper functions - function depositBeanAndPassGermination(uint256 amount, address user) internal returns (int96 stem) { + function depositBeanAndPassGermination( + uint256 amount, + address user + ) internal returns (int96 stem) { vm.pauseGasMetering(); bean.mint(user, amount); @@ -173,32 +185,44 @@ contract ConvertCapacityDoubleCountTest is TestHelper { passGermination(); } - function beanToLPDoConvert(uint256 amount, int96 stem, address user) - internal - returns (int96 outputStem, uint256 outputAmount) - { + function beanToLPDoConvert( + uint256 amount, + int96 stem, + address user + ) internal returns (int96 outputStem, uint256 outputAmount) { int96[] memory stems = new int96[](1); stems[0] = stem; - AdvancedPipeCall[] memory beanToLPPipeCalls = createBeanToLPPipeCalls(amount, new AdvancedPipeCall[](0)); + AdvancedPipeCall[] memory beanToLPPipeCalls = createBeanToLPPipeCalls( + amount, + new AdvancedPipeCall[](0) + ); uint256[] memory amounts = new uint256[](1); amounts[0] = amount; vm.resumeGasMetering(); vm.prank(user); - (outputStem, outputAmount,,,) = - pipelineConvert.pipelineConvert(BEAN, stems, amounts, beanEthWell, beanToLPPipeCalls); + (outputStem, outputAmount, , , ) = pipelineConvert.pipelineConvert( + BEAN, + stems, + amounts, + beanEthWell, + beanToLPPipeCalls + ); } - function createBeanToLPPipeCalls(uint256 beanAmount, AdvancedPipeCall[] memory extraPipeCalls) - internal - view - returns (AdvancedPipeCall[] memory pipeCalls) - { + function createBeanToLPPipeCalls( + uint256 beanAmount, + AdvancedPipeCall[] memory extraPipeCalls + ) internal view returns (AdvancedPipeCall[] memory pipeCalls) { pipeCalls = new AdvancedPipeCall[](2 + extraPipeCalls.length); - bytes memory approveWell = abi.encodeWithSelector(IERC20.approve.selector, beanEthWell, beanAmount); + bytes memory approveWell = abi.encodeWithSelector( + IERC20.approve.selector, + beanEthWell, + beanAmount + ); pipeCalls[0] = AdvancedPipeCall(BEAN, approveWell, abi.encode(0)); uint256[] memory tokenAmountsIn = new uint256[](2); @@ -206,7 +230,11 @@ contract ConvertCapacityDoubleCountTest is TestHelper { tokenAmountsIn[1] = 0; bytes memory addBeans = abi.encodeWithSelector( - IWell(beanEthWell).addLiquidity.selector, tokenAmountsIn, 0, PIPELINE, type(uint256).max + IWell(beanEthWell).addLiquidity.selector, + tokenAmountsIn, + 0, + PIPELINE, + type(uint256).max ); pipeCalls[1] = AdvancedPipeCall(beanEthWell, addBeans, abi.encode(0)); From ff25c6861612456d8e22b9ac9ba585731c64efd2 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 11 Feb 2026 13:31:22 -0500 Subject: [PATCH 253/270] Fix convert capacity double-counting in overall peg maintenance --- contracts/libraries/Convert/LibConvert.sol | 8 +- .../convert/ConvertCapacityForkTest.t.sol | 85 +------------------ 2 files changed, 8 insertions(+), 85 deletions(-) diff --git a/contracts/libraries/Convert/LibConvert.sol b/contracts/libraries/Convert/LibConvert.sol index 977c202c..a537e0eb 100644 --- a/contracts/libraries/Convert/LibConvert.sol +++ b/contracts/libraries/Convert/LibConvert.sol @@ -313,10 +313,10 @@ library LibConvert { overallCappedDeltaB.sub(convertCap.overallConvertCapacityUsed); } - // Return capacity delta for caller to add to storage + // Return this convert's capacity usage for caller to add to storage pdCapacity.overall = overallAmountInDirectionOfPeg; - // Calculate per-well capacity delta for caller to add to storage + // Calculate per-well capacity usage for caller to add to storage if (inputToken != s.sys.bean && inputTokenAmountInDirectionOfPeg > 0) { (cumulativePenalty, pdCapacity.inputToken) = calculatePerWellCapacity( @@ -344,14 +344,14 @@ library LibConvert { ConvertCapacity storage convertCap ) internal view returns (uint256, uint256) { uint256 tokenWellCapacity = abs(LibDeltaB.cappedReservesDeltaB(wellToken)); - // Use cumulative for penalty check + uint256 cumulativeUsed = convertCap.wellConvertCapacityUsed[wellToken].add( amountInDirectionOfPeg ); if (cumulativeUsed > tokenWellCapacity) { cumulativePenalty = cumulativePenalty.add(cumulativeUsed.sub(tokenWellCapacity)); } - // Return delta (not cumulative) for storage update + // Return this convert's capacity usage for caller to add to storage return (cumulativePenalty, amountInDirectionOfPeg); } diff --git a/test/foundry/convert/ConvertCapacityForkTest.t.sol b/test/foundry/convert/ConvertCapacityForkTest.t.sol index 0a3e61a5..b36ec0c3 100644 --- a/test/foundry/convert/ConvertCapacityForkTest.t.sol +++ b/test/foundry/convert/ConvertCapacityForkTest.t.sol @@ -4,36 +4,8 @@ pragma abicoder v2; import "forge-std/Test.sol"; import {LibConvertData} from "contracts/libraries/Convert/LibConvertData.sol"; - -interface IBeanstalk { - function getDeposit( - address account, - address token, - int96 stem - ) external view returns (uint256 amount, uint256 bdv); - function balanceOfStalk(address account) external view returns (uint256); - function convert( - bytes calldata convertData, - int96[] calldata stems, - uint256[] calldata amounts - ) external payable returns (int96, uint256, uint256, uint256, uint256); - function poolCurrentDeltaB(address pool) external view returns (int256); - function getOverallConvertCapacity() external view returns (uint256); -} - -interface IWell { - function tokens() external view returns (address[] memory); - function getSwapIn( - address tokenIn, - address tokenOut, - uint256 amountOut - ) external view returns (uint256); - function shift( - address tokenOut, - uint256 minAmountOut, - address recipient - ) external returns (uint256); -} +import {TestHelper} from "test/foundry/utils/TestHelper.sol"; +import {IMockFBeanstalk} from "contracts/interfaces/IMockFBeanstalk.sol"; interface IERC20 { function transfer(address to, uint256 amount) external returns (bool); @@ -47,18 +19,17 @@ interface IERC20 { * * Run: BASE_RPC= forge test --match-contract ConvertCapacityForkTest -vv */ -contract ConvertCapacityForkTest is Test { +contract ConvertCapacityForkTest is TestHelper { address constant PINTO_DIAMOND = 0xD1A0D188E861ed9d15773a2F3574a2e94134bA8f; address constant PINTO_TOKEN = 0xb170000aeeFa790fa61D6e837d1035906839a3c8; address constant PINTO_USDC_WELL = 0x3e1133aC082716DDC3114bbEFEeD8B1731eA9cb1; address constant REAL_FARMER = 0xFb94D3404c1d3D9D6F08f79e58041d5EA95AccfA; int96 constant FARMER_STEM = 590486100; uint256 constant FORK_BLOCK = 27236526; - IBeanstalk bs; function setUp() public { vm.createSelectFork(vm.envString("BASE_RPC"), FORK_BLOCK); - bs = IBeanstalk(PINTO_DIAMOND); + bs = IMockFBeanstalk(PINTO_DIAMOND); } /** @@ -108,52 +79,4 @@ contract ConvertCapacityForkTest is Test { "Bug: 2nd convert uses disproportionately more capacity than 1st" ); } - - /** - * @notice This test verifies the fix is working correctly. - * @dev After fix, both converts should use approximately the same capacity (within 20% tolerance for slippage). - */ - function test_forkBase_convertCapacityFixed() public { - (uint256 depositAmount, ) = bs.getDeposit(REAL_FARMER, PINTO_TOKEN, FARMER_STEM); - console.log("Farmer deposit:", depositAmount); - require(depositAmount > 0, "No deposit found"); - - uint256 capacityBefore = bs.getOverallConvertCapacity(); - console.log("Overall convert capacity:", capacityBefore); - - uint256 convertAmount = 500e6; - bytes memory convertData = abi.encode( - LibConvertData.ConvertKind.BEANS_TO_WELL_LP, - convertAmount, - uint256(0), - PINTO_USDC_WELL - ); - int96[] memory stems = new int96[](1); - stems[0] = FARMER_STEM; - uint256[] memory amounts = new uint256[](1); - amounts[0] = convertAmount; - - vm.prank(REAL_FARMER); - bs.convert(convertData, stems, amounts); - uint256 capacityAfter1 = bs.getOverallConvertCapacity(); - uint256 usedByConvert1 = capacityBefore - capacityAfter1; - - vm.prank(REAL_FARMER); - bs.convert(convertData, stems, amounts); - uint256 capacityAfter2 = bs.getOverallConvertCapacity(); - uint256 usedByConvert2 = capacityAfter1 - capacityAfter2; - - console.log("Capacity used by convert 1:", usedByConvert1); - console.log("Capacity used by convert 2:", usedByConvert2); - console.log("Ratio (convert2/convert1):", (usedByConvert2 * 100) / usedByConvert1, "%"); - - // After fix: both converts should use approximately equal capacity - // Allow 20% tolerance for slippage from pool state changes - assertApproxEqRel( - usedByConvert1, - usedByConvert2, - 0.20e18, - "Fix verified: converts use approximately equal capacity" - ); - } } From 736b1206ca4abbedf2af2cb7cff12126aca41d2c Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 11 Feb 2026 23:03:56 -0500 Subject: [PATCH 254/270] Separate payback contract deployment from data initialization - Refactor deployPaybackContracts to deploy only (no initialization) - Add address cache utility to persist deployed addresses - Create separate initialization tasks: - initializeSiloPayback (Step 1.5) - initializeBarnPayback (Step 1.6) - initializeContractPaybackDistributor (Step 1.7) - Add 'deploy' and 'init' keywords to orchestrator - Add 100ms delay between chunks to avoid rate limiting - Update error messages to use consistent --start-chunk flag Co-Authored-By: Claude Opus 4.5 --- .../deployPaybackContracts.js | 63 ++-- .../initializeBarnPayback.js | 61 ++++ .../initializeContractPaybackDistributor.js | 63 ++++ .../initializeSiloPayback.js | 62 ++++ .../populateBeanstalkField.js | 9 +- .../beanstalkShipments/utils/addressCache.js | 86 +++++ tasks/beanstalk-shipments.js | 299 +++++++++++++----- utils/read.js | 3 + 8 files changed, 535 insertions(+), 111 deletions(-) create mode 100644 scripts/beanstalkShipments/initializeBarnPayback.js create mode 100644 scripts/beanstalkShipments/initializeContractPaybackDistributor.js create mode 100644 scripts/beanstalkShipments/initializeSiloPayback.js create mode 100644 scripts/beanstalkShipments/utils/addressCache.js diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 73e38dcf..8a798799 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -3,9 +3,12 @@ const { splitEntriesIntoChunks, updateProgress, retryOperation, - verifyTransaction + verifyTransaction, + sleep, + CHUNK_DELAY } = require("../../utils/read.js"); const { BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR } = require("../../test/hardhat/utils/constants.js"); +const { saveDeployedAddresses } = require("./utils/addressCache.js"); // Deploys SiloPayback, BarnPayback, and ContractPaybackDistributor contracts async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = true }) { @@ -135,11 +138,16 @@ async function distributeUnripeBdvTokens({ ); } catch (error) { console.error(`\nāŒ FAILED AT CHUNK ${i + 1}/${chunks.length}`); - console.error(`To resume, use: --unripe-start-chunk ${i}`); + console.error(`To resume, use: --start-chunk ${i}`); throw error; } await updateProgress(i + 1, chunks.length); + + // Small delay between chunks to avoid rate limiting + if (i < chunks.length - 1) { + await sleep(CHUNK_DELAY); + } } if (verbose) { @@ -199,11 +207,16 @@ async function distributeBarnPaybackTokens({ ); } catch (error) { console.error(`\nāŒ FAILED AT CHUNK ${i + 1}/${chunks.length}`); - console.error(`To resume, use: --barn-start-chunk ${i}`); + console.error(`To resume, use: --start-chunk ${i}`); throw error; } await updateProgress(i + 1, chunks.length); + + // Small delay between chunks to avoid rate limiting + if (i < chunks.length - 1) { + await sleep(CHUNK_DELAY); + } } if (verbose) { console.log("\nšŸ“Š Total Gas Summary:"); @@ -294,11 +307,16 @@ async function distributeContractAccountData({ ); } catch (error) { console.error(`\nāŒ FAILED AT CHUNK ${i + 1}/${chunks.length}`); - console.error(`To resume, use: --contract-start-chunk ${i}`); + console.error(`To resume, use: --start-chunk ${i}`); throw error; } await updateProgress(i + 1, chunks.length); + + // Small delay between chunks to avoid rate limiting + if (i < chunks.length - 1) { + await sleep(CHUNK_DELAY); + } } if (verbose) { @@ -334,34 +352,21 @@ async function transferContractOwnership({ if (verbose) console.log("āœ… ContractPaybackDistributor ownership transferred to PCM"); } -// Main function that orchestrates all deployment steps +// Main function that deploys contracts (no initialization) +// Initialization is now handled by separate tasks (Steps 1.5, 1.6, 1.7) async function deployAndSetupContracts(params) { const contracts = await deployShipmentContracts(params); - if (params.populateData) { - await distributeUnripeBdvTokens({ - siloPaybackContract: contracts.siloPaybackContract, - account: params.account, - dataPath: "./scripts/beanstalkShipments/data/unripeBdvTokens.json", - verbose: true, - startFromChunk: params.unripeStartChunk || 0 - }); - - await distributeBarnPaybackTokens({ - barnPaybackContract: contracts.barnPaybackContract, - account: params.account, - dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", - verbose: true, - startFromChunk: params.barnStartChunk || 0 - }); - - await distributeContractAccountData({ - contractPaybackDistributorContract: contracts.contractPaybackDistributorContract, - account: params.account, - verbose: true, - startFromChunk: params.contractStartChunk || 0 - }); - } + // Save deployed addresses to cache for use by initialization tasks + const network = params.network || "unknown"; + saveDeployedAddresses( + { + siloPayback: contracts.siloPaybackContract.address, + barnPayback: contracts.barnPaybackContract.address, + contractPaybackDistributor: contracts.contractPaybackDistributorContract.address + }, + network + ); return contracts; } diff --git a/scripts/beanstalkShipments/initializeBarnPayback.js b/scripts/beanstalkShipments/initializeBarnPayback.js new file mode 100644 index 00000000..ceab6661 --- /dev/null +++ b/scripts/beanstalkShipments/initializeBarnPayback.js @@ -0,0 +1,61 @@ +const { distributeBarnPaybackTokens } = require("./deployPaybackContracts.js"); +const { getContractAddress, verifyDeployedAddresses } = require("./utils/addressCache.js"); + +/** + * Initialize BarnPayback contract with fertilizer data + * This is Step 1.6 of the Beanstalk Shipments deployment + * Reads deployed BarnPayback address from cache and mints fertilizers + * + * @param {Object} params - Initialization parameters + * @param {Object} params.account - Account to use for transactions + * @param {boolean} params.verbose - Enable verbose logging + * @param {number} params.startFromChunk - Resume from chunk number (0-indexed) + * @param {number} params.targetEntriesPerChunk - Entries per chunk (default: 300) + */ +async function initializeBarnPayback({ + account, + verbose = true, + startFromChunk = 0, + targetEntriesPerChunk = 300 +}) { + if (verbose) { + console.log("\nšŸ“¦ STEP 1.6: INITIALIZING BARN PAYBACK CONTRACT"); + console.log("-".repeat(50)); + } + + // Verify deployed addresses exist + if (!verifyDeployedAddresses()) { + throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + } + + // Get BarnPayback address from cache + const barnPaybackAddress = getContractAddress("barnPayback"); + if (!barnPaybackAddress) { + throw new Error("BarnPayback address not found in cache"); + } + + if (verbose) { + console.log(`šŸ“ BarnPayback address: ${barnPaybackAddress}`); + } + + // Get contract instance + const barnPaybackContract = await ethers.getContractAt("BarnPayback", barnPaybackAddress); + + // Distribute barn payback tokens (fertilizers) + await distributeBarnPaybackTokens({ + barnPaybackContract, + account, + dataPath: "./scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json", + verbose, + targetEntriesPerChunk, + startFromChunk + }); + + if (verbose) { + console.log("\nāœ… BarnPayback initialization completed"); + } +} + +module.exports = { + initializeBarnPayback +}; diff --git a/scripts/beanstalkShipments/initializeContractPaybackDistributor.js b/scripts/beanstalkShipments/initializeContractPaybackDistributor.js new file mode 100644 index 00000000..9b79b465 --- /dev/null +++ b/scripts/beanstalkShipments/initializeContractPaybackDistributor.js @@ -0,0 +1,63 @@ +const { distributeContractAccountData } = require("./deployPaybackContracts.js"); +const { getContractAddress, verifyDeployedAddresses } = require("./utils/addressCache.js"); + +/** + * Initialize ContractPaybackDistributor contract with account data + * This is Step 1.7 of the Beanstalk Shipments deployment + * Reads deployed ContractPaybackDistributor address from cache and initializes account data + * + * @param {Object} params - Initialization parameters + * @param {Object} params.account - Account to use for transactions + * @param {boolean} params.verbose - Enable verbose logging + * @param {number} params.startFromChunk - Resume from chunk number (0-indexed) + * @param {number} params.targetEntriesPerChunk - Entries per chunk (default: 25) + */ +async function initializeContractPaybackDistributor({ + account, + verbose = true, + startFromChunk = 0, + targetEntriesPerChunk = 25 +}) { + if (verbose) { + console.log("\nšŸ“¦ STEP 1.7: INITIALIZING CONTRACT PAYBACK DISTRIBUTOR"); + console.log("-".repeat(50)); + } + + // Verify deployed addresses exist + if (!verifyDeployedAddresses()) { + throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + } + + // Get ContractPaybackDistributor address from cache + const contractPaybackDistributorAddress = getContractAddress("contractPaybackDistributor"); + if (!contractPaybackDistributorAddress) { + throw new Error("ContractPaybackDistributor address not found in cache"); + } + + if (verbose) { + console.log(`šŸ“ ContractPaybackDistributor address: ${contractPaybackDistributorAddress}`); + } + + // Get contract instance + const contractPaybackDistributorContract = await ethers.getContractAt( + "ContractPaybackDistributor", + contractPaybackDistributorAddress + ); + + // Distribute contract account data + await distributeContractAccountData({ + contractPaybackDistributorContract, + account, + verbose, + targetEntriesPerChunk, + startFromChunk + }); + + if (verbose) { + console.log("\nāœ… ContractPaybackDistributor initialization completed"); + } +} + +module.exports = { + initializeContractPaybackDistributor +}; diff --git a/scripts/beanstalkShipments/initializeSiloPayback.js b/scripts/beanstalkShipments/initializeSiloPayback.js new file mode 100644 index 00000000..bc1d8769 --- /dev/null +++ b/scripts/beanstalkShipments/initializeSiloPayback.js @@ -0,0 +1,62 @@ +const { distributeUnripeBdvTokens } = require("./deployPaybackContracts.js"); +const { getContractAddress, verifyDeployedAddresses } = require("./utils/addressCache.js"); + +/** + * Initialize SiloPayback contract with unripe BDV data + * This is Step 1.5 of the Beanstalk Shipments deployment + * Reads deployed SiloPayback address from cache and batch mints unripe BDV tokens + * + * @param {Object} params - Initialization parameters + * @param {Object} params.account - Account to use for transactions + * @param {boolean} params.verbose - Enable verbose logging + * @param {number} params.startFromChunk - Resume from chunk number (0-indexed) + * @param {number} params.targetEntriesPerChunk - Entries per chunk (default: 300) + */ +async function initializeSiloPayback({ + account, + verbose = true, + startFromChunk = 0, + targetEntriesPerChunk = 300 +}) { + if (verbose) { + console.log("\nšŸ“¦ STEP 1.5: INITIALIZING SILO PAYBACK CONTRACT"); + console.log("-".repeat(50)); + } + + // Verify deployed addresses exist + if (!verifyDeployedAddresses()) { + throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + } + + // Get SiloPayback address from cache + const siloPaybackAddress = getContractAddress("siloPayback"); + if (!siloPaybackAddress) { + throw new Error("SiloPayback address not found in cache"); + } + + if (verbose) { + console.log(`šŸ“ SiloPayback address: ${siloPaybackAddress}`); + } + + // Get contract instance + const siloPaybackContract = await ethers.getContractAt("SiloPayback", siloPaybackAddress); + + // Distribute unripe BDV tokens + await distributeUnripeBdvTokens({ + siloPaybackContract, + account, + dataPath: "./scripts/beanstalkShipments/data/unripeBdvTokens.json", + verbose, + useChunking: true, + targetEntriesPerChunk, + startFromChunk + }); + + if (verbose) { + console.log("\nāœ… SiloPayback initialization completed"); + } +} + +module.exports = { + initializeSiloPayback +}; diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index f2b5b959..494769ac 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -4,7 +4,9 @@ const { splitWhaleAccounts, updateProgress, retryOperation, - verifyTransaction + verifyTransaction, + sleep, + CHUNK_DELAY } = require("../../utils/read.js"); // EIP-7987 tx gas limit is 16,777,216 (2^24) @@ -78,6 +80,11 @@ async function populateBeanstalkField({ diamondAddress, account, verbose, startF if (verbose) { console.log(`Completed chunk ${i + 1}/${plotChunks.length}`); } + + // Small delay between chunks to avoid rate limiting + if (i < plotChunks.length - 1) { + await sleep(CHUNK_DELAY); + } } console.log("āœ… Successfully populated Beanstalk field with all plots!"); diff --git a/scripts/beanstalkShipments/utils/addressCache.js b/scripts/beanstalkShipments/utils/addressCache.js new file mode 100644 index 00000000..3c782188 --- /dev/null +++ b/scripts/beanstalkShipments/utils/addressCache.js @@ -0,0 +1,86 @@ +const fs = require("fs"); +const path = require("path"); + +const CACHE_FILE_PATH = path.join(__dirname, "../data/deployedAddresses.json"); + +/** + * Saves deployed contract addresses to cache file + * @param {Object} addresses - Object containing contract addresses + * @param {string} addresses.siloPayback - SiloPayback contract address + * @param {string} addresses.barnPayback - BarnPayback contract address + * @param {string} addresses.contractPaybackDistributor - ContractPaybackDistributor contract address + * @param {string} network - Network name (e.g., "base", "localhost") + */ +function saveDeployedAddresses(addresses, network = "unknown") { + const data = { + siloPayback: addresses.siloPayback, + barnPayback: addresses.barnPayback, + contractPaybackDistributor: addresses.contractPaybackDistributor, + deployedAt: new Date().toISOString(), + network: network + }; + + fs.writeFileSync(CACHE_FILE_PATH, JSON.stringify(data, null, 2)); + console.log(`šŸ“ Deployed addresses saved to ${CACHE_FILE_PATH}`); +} + +/** + * Gets deployed contract addresses from cache file + * @returns {Object|null} Object containing contract addresses or null if not found + */ +function getDeployedAddresses() { + if (!fs.existsSync(CACHE_FILE_PATH)) { + return null; + } + + try { + const data = JSON.parse(fs.readFileSync(CACHE_FILE_PATH)); + return data; + } catch (error) { + console.error("Error reading deployed addresses cache:", error); + return null; + } +} + +/** + * Verifies that all required contract addresses are present in the cache + * @returns {boolean} True if all addresses are present, false otherwise + */ +function verifyDeployedAddresses() { + const addresses = getDeployedAddresses(); + if (!addresses) { + console.error("āŒ No deployed addresses found. Run deployPaybackContracts first."); + return false; + } + + const required = ["siloPayback", "barnPayback", "contractPaybackDistributor"]; + const missing = required.filter((key) => !addresses[key]); + + if (missing.length > 0) { + console.error(`āŒ Missing deployed addresses: ${missing.join(", ")}`); + return false; + } + + return true; +} + +/** + * Gets a specific contract address from cache + * @param {string} contractName - Name of contract ("siloPayback", "barnPayback", or "contractPaybackDistributor") + * @returns {string|null} Contract address or null if not found + */ +function getContractAddress(contractName) { + const addresses = getDeployedAddresses(); + if (!addresses) { + return null; + } + return addresses[contractName] || null; +} + +module.exports = { + saveDeployedAddresses, + getDeployedAddresses, + verifyDeployedAddresses, + getContractAddress, + CACHE_FILE_PATH +}; diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 131d3fe3..e6d9d3e1 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -21,6 +21,12 @@ module.exports = function () { deployAndSetupContracts, transferContractOwnership } = require("../scripts/beanstalkShipments/deployPaybackContracts.js"); + const { initializeSiloPayback } = require("../scripts/beanstalkShipments/initializeSiloPayback.js"); + const { initializeBarnPayback } = require("../scripts/beanstalkShipments/initializeBarnPayback.js"); + const { + initializeContractPaybackDistributor + } = require("../scripts/beanstalkShipments/initializeContractPaybackDistributor.js"); + const { getDeployedAddresses } = require("../scripts/beanstalkShipments/utils/addressCache.js"); const { parseAllExportData } = require("../scripts/beanstalkShipments/parsers"); //////////////////////// BEANSTALK SHIPMENTS //////////////////////// @@ -97,37 +103,15 @@ module.exports = function () { ); ////// STEP 1: DEPLOY PAYBACK CONTRACTS ////// - // Deploy and initialize the payback contracts and the ContractPaybackDistributor contract + // Deploy the payback contracts and the ContractPaybackDistributor contract (no initialization) + // Data initialization is now handled by separate tasks (Steps 1.5, 1.6, 1.7) // Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER at 0x47c365cc9ef51052651c2be22f274470ad6afc53 // Set mock to false to deploy the payback contracts on base. // - npx hardhat deployPaybackContracts --network base - // Resume parameters: - // - npx hardhat deployPaybackContracts --unripe-start-chunk 5 --network base - // - npx hardhat deployPaybackContracts --barn-start-chunk 10 --network base - // - npx hardhat deployPaybackContracts --contract-start-chunk 3 --network base - task("deployPaybackContracts", "performs all actions to initialize the beanstalk shipments") - .addOptionalParam( - "unripeStartChunk", - "Chunk index to resume unripe BDV distribution from (0-indexed)", - 0, - types.int - ) - .addOptionalParam( - "barnStartChunk", - "Chunk index to resume barn payback distribution from (0-indexed)", - 0, - types.int - ) - .addOptionalParam( - "contractStartChunk", - "Chunk index to resume contract account data distribution from (0-indexed)", - 0, - types.int - ) - .setAction(async (taskArgs) => { + task("deployPaybackContracts", "deploys the payback contracts (no initialization)") + .setAction(async (taskArgs, hre) => { // params const verbose = true; - const populateData = true; const mock = true; // Use the shipments deployer to get correct addresses @@ -139,34 +123,23 @@ module.exports = function () { deployer = (await ethers.getSigners())[0]; } - // Step 1: Deploy and setup payback contracts, distribute assets to users and distributor contract - console.log("STEP 1: DEPLOYING AND INITIALIZING PAYBACK CONTRACTS"); + // Step 1: Deploy payback contracts only (initialization is now separate) + console.log("STEP 1: DEPLOYING PAYBACK CONTRACTS"); console.log("-".repeat(50)); - // Log resume status if any start chunk is specified - if (taskArgs.unripeStartChunk > 0 || taskArgs.barnStartChunk > 0 || taskArgs.contractStartChunk > 0) { - console.log("ā© Resume mode enabled:"); - if (taskArgs.unripeStartChunk > 0) - console.log(` - Unripe BDV: starting from chunk ${taskArgs.unripeStartChunk}`); - if (taskArgs.barnStartChunk > 0) - console.log(` - Barn payback: starting from chunk ${taskArgs.barnStartChunk}`); - if (taskArgs.contractStartChunk > 0) - console.log(` - Contract accounts: starting from chunk ${taskArgs.contractStartChunk}`); - } - const contracts = await deployAndSetupContracts({ PINTO, L2_PINTO, L2_PCM, account: deployer, verbose, - populateData: populateData, - useChunking: true, - unripeStartChunk: taskArgs.unripeStartChunk, - barnStartChunk: taskArgs.barnStartChunk, - contractStartChunk: taskArgs.contractStartChunk + network: hre.network.name }); - console.log(" Payback contracts deployed and configured\n"); + console.log(" Payback contracts deployed\n"); + console.log("šŸ“ Next steps:"); + console.log(" Run initializeSiloPayback (Step 1.5)"); + console.log(" Run initializeBarnPayback (Step 1.6)"); + console.log(" Run initializeContractPaybackDistributor (Step 1.7)"); // Step 1b: Update the shipment routes JSON with deployed contract addresses console.log("STEP 1b: UPDATING SHIPMENT ROUTES WITH DEPLOYED ADDRESSES"); @@ -201,6 +174,87 @@ module.exports = function () { console.log(` - Routes 4, 5, 6 data fields updated\n`); }); + ////// STEP 1.5: INITIALIZE SILO PAYBACK ////// + // Initialize the SiloPayback contract with unripe BDV data + // Must be run after deployPaybackContracts (Step 1) + // - npx hardhat initializeSiloPayback --network base + // Resume parameters: + // - npx hardhat initializeSiloPayback --start-chunk 5 --network base + task("initializeSiloPayback", "Initialize SiloPayback with unripe BDV data") + .addOptionalParam("startChunk", "Resume from chunk number (0-indexed)", 0, types.int) + .setAction(async (taskArgs) => { + const mock = true; + const verbose = true; + + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + await initializeSiloPayback({ + account: deployer, + verbose, + startFromChunk: taskArgs.startChunk + }); + }); + + ////// STEP 1.6: INITIALIZE BARN PAYBACK ////// + // Initialize the BarnPayback contract with fertilizer data + // Must be run after deployPaybackContracts (Step 1) + // - npx hardhat initializeBarnPayback --network base + // Resume parameters: + // - npx hardhat initializeBarnPayback --start-chunk 10 --network base + task("initializeBarnPayback", "Initialize BarnPayback with fertilizer data") + .addOptionalParam("startChunk", "Resume from chunk number (0-indexed)", 0, types.int) + .setAction(async (taskArgs) => { + const mock = true; + const verbose = true; + + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + await initializeBarnPayback({ + account: deployer, + verbose, + startFromChunk: taskArgs.startChunk + }); + }); + + ////// STEP 1.7: INITIALIZE CONTRACT PAYBACK DISTRIBUTOR ////// + // Initialize the ContractPaybackDistributor contract with account data + // Must be run after deployPaybackContracts (Step 1) + // - npx hardhat initializeContractPaybackDistributor --network base + // Resume parameters: + // - npx hardhat initializeContractPaybackDistributor --start-chunk 3 --network base + task("initializeContractPaybackDistributor", "Initialize ContractPaybackDistributor with account data") + .addOptionalParam("startChunk", "Resume from chunk number (0-indexed)", 0, types.int) + .setAction(async (taskArgs) => { + const mock = true; + const verbose = true; + + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + await initializeContractPaybackDistributor({ + account: deployer, + verbose, + startFromChunk: taskArgs.startChunk + }); + }); + ////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// // To minimize the number of transaction the PCM multisig has to sign, we deploy the TempFieldFacet // that allows an EOA to add plots to the repayment field. @@ -391,18 +445,49 @@ module.exports = function () { // Runs all beanstalk shipment tasks in the correct sequential order // Note: deployL1ContractMessenger should be run separately on mainnet before this // - npx hardhat runBeanstalkShipments --network base + // - npx hardhat runBeanstalkShipments --step 1.5 --network base (run specific step) + // - npx hardhat runBeanstalkShipments --step all --network base (run all steps) + // - npx hardhat runBeanstalkShipments --step deploy --network base (deploy all payback contracts) + // - npx hardhat runBeanstalkShipments --step init --network base (initialize all payback contracts) + // Available steps: 0, 1, 1.5, 1.6, 1.7, 2, 3, 4, 5, all, deploy, init task("runBeanstalkShipments", "Runs all beanstalk shipment deployment steps in sequential order") .addOptionalParam("skipPause", "Set to true to skip pauses between steps", false, types.boolean) .addOptionalParam( - "runStep0", - "Set to true to run Step 0: Parse Export Data", - false, - types.boolean + "step", + "Step to run (0, 1, 1.5, 1.6, 1.7, 2, 3, 4, 5, 'all', 'deploy', or 'init')", + "all", + types.string ) - .setAction(async (taskArgs) => { + .setAction(async (taskArgs, hre) => { + const step = taskArgs.step; + const validSteps = ["0", "1", "1.5", "1.6", "1.7", "2", "3", "4", "5", "all", "deploy", "init"]; + + // Step group definitions + const stepGroups = { + deploy: ["1"], // Deploy all payback contracts + init: ["1.5", "1.6", "1.7"] // Initialize all payback contracts + }; + + if (!validSteps.includes(step)) { + console.error(`āŒ Invalid step: ${step}`); + console.error(`Valid steps: ${validSteps.join(", ")}`); + console.error(`\nKeywords:`); + console.error(` deploy - Deploy payback contracts (Step 1)`); + console.error(` init - Initialize all payback contracts (Steps 1.5, 1.6, 1.7)`); + return; + } + console.log("\nšŸš€ STARTING BEANSTALK SHIPMENTS DEPLOYMENT"); console.log("=".repeat(60)); + if (step === "deploy") { + console.log(`šŸ“ Running: Deploy payback contracts (Step 1)`); + } else if (step === "init") { + console.log(`šŸ“ Running: Initialize all payback contracts (Steps 1.5, 1.6, 1.7)`); + } else if (step !== "all") { + console.log(`šŸ“ Running only Step ${step}`); + } + // Helper function for pausing, only if !skipPause async function pauseIfNeeded(message = "Press Enter to continue...") { if (taskArgs.skipPause) { @@ -418,53 +503,105 @@ module.exports = function () { }); } + // Helper to check if a step should run + // Note: Step 0 is excluded from "all" - it must be run explicitly + const shouldRun = (s) => { + // Direct match + if (step === s) return true; + // "all" includes everything except Step 0 + if (step === "all" && s !== "0") return true; + // Check if step is a group keyword and s is in that group + if (stepGroups[step] && stepGroups[step].includes(s)) return true; + return false; + }; + try { - // Step 0: Parse Export Data (optional) - if (taskArgs.runStep0) { + // Step 0: Parse Export Data (must be run explicitly, not included in "all") + if (step === "0") { console.log("\nšŸ“Š Running Step 0: Parse Export Data"); await hre.run("parseExportData"); } // Step 1: Deploy Payback Contracts - console.log("\nšŸ“¦ Running Step 1: Deploy Payback Contracts"); - await hre.run("deployPaybackContracts"); + if (shouldRun("1")) { + console.log("\nšŸ“¦ Running Step 1: Deploy Payback Contracts"); + await hre.run("deployPaybackContracts"); + } + + // Step 1.5: Initialize Silo Payback + if (shouldRun("1.5")) { + console.log("\n🌱 Running Step 1.5: Initialize Silo Payback"); + await hre.run("initializeSiloPayback"); + } + + // Step 1.6: Initialize Barn Payback + if (shouldRun("1.6")) { + console.log("\nšŸšļø Running Step 1.6: Initialize Barn Payback"); + await hre.run("initializeBarnPayback"); + } + + // Step 1.7: Initialize Contract Payback Distributor + if (shouldRun("1.7")) { + console.log("\nšŸ“‹ Running Step 1.7: Initialize Contract Payback Distributor"); + await hre.run("initializeContractPaybackDistributor"); + } // Step 2: Deploy Temp Field Facet - console.log("\nšŸ”§ Running Step 2: Deploy Temp Field Facet"); - await hre.run("deployTempFieldFacet"); - console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); - await pauseIfNeeded( - "Press Ctrl+C to stop, or press Enter to continue after multisig execution..." - ); + if (shouldRun("2")) { + console.log("\nšŸ”§ Running Step 2: Deploy Temp Field Facet"); + await hre.run("deployTempFieldFacet"); + if (step === "all") { + console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); + await pauseIfNeeded( + "Press Ctrl+C to stop, or press Enter to continue after multisig execution..." + ); + } + } // Step 3: Populate Repayment Field - console.log("\n🌾 Running Step 3: Populate Repayment Field"); - await hre.run("populateRepaymentField"); - console.log( - "\nāš ļø PAUSE: Proceed with the multisig as needed before moving to the next step" - ); - await pauseIfNeeded( - "Press Ctrl+C to stop, or press Enter to continue after necessary approvals..." - ); + if (shouldRun("3")) { + console.log("\n🌾 Running Step 3: Populate Repayment Field"); + await hre.run("populateRepaymentField"); + if (step === "all") { + console.log( + "\nāš ļø PAUSE: Proceed with the multisig as needed before moving to the next step" + ); + await pauseIfNeeded( + "Press Ctrl+C to stop, or press Enter to continue after necessary approvals..." + ); + } + } // Step 4: Finalize Beanstalk Shipments - console.log("\nšŸŽÆ Running Step 4: Finalize Beanstalk Shipments"); - await hre.run("finalizeBeanstalkShipments"); - console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); - await pauseIfNeeded( - "Press Ctrl+C to stop, or press Enter to continue after multisig execution..." - ); + if (shouldRun("4")) { + console.log("\nšŸŽÆ Running Step 4: Finalize Beanstalk Shipments"); + await hre.run("finalizeBeanstalkShipments"); + if (step === "all") { + console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); + await pauseIfNeeded( + "Press Ctrl+C to stop, or press Enter to continue after multisig execution..." + ); + } + } // Step 5: Transfer Contract Ownership - console.log("\nšŸ” Running Step 5: Transfer Contract Ownership"); - await hre.run("transferPaybackContractOwnership"); - console.log( - "\nāš ļø PAUSE: Ownership transfer completed. Proceed with validations as required." - ); - await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to finish..."); + if (shouldRun("5")) { + console.log("\nšŸ” Running Step 5: Transfer Contract Ownership"); + await hre.run("transferPaybackContractOwnership"); + if (step === "all") { + console.log( + "\nāš ļø PAUSE: Ownership transfer completed. Proceed with validations as required." + ); + await pauseIfNeeded("Press Ctrl+C to stop, or press Enter to finish..."); + } + } console.log("\n" + "=".repeat(60)); - console.log("āœ… BEANSTALK SHIPMENTS DEPLOYMENT COMPLETED SUCCESSFULLY!"); + if (step === "all") { + console.log("āœ… BEANSTALK SHIPMENTS DEPLOYMENT COMPLETED SUCCESSFULLY!"); + } else { + console.log(`āœ… STEP ${step} COMPLETED SUCCESSFULLY!`); + } console.log("=".repeat(60) + "\n"); } catch (error) { console.error("\nāŒ ERROR: Beanstalk Shipments deployment failed:", error.message); diff --git a/utils/read.js b/utils/read.js index 8f61556d..2ba2cb13 100644 --- a/utils/read.js +++ b/utils/read.js @@ -150,6 +150,7 @@ async function updateProgress(current, total) { const MAX_RETRIES = 20; const BASE_RETRY_DELAY = 500; // 0.5 seconds base delay const MAX_RETRY_DELAY = 30000; // 30 seconds max delay +const CHUNK_DELAY = 100; // 100ms delay between chunks to avoid rate limiting // Common RPC error patterns that warrant a retry const RETRYABLE_ERRORS = [ @@ -265,3 +266,5 @@ exports.updateProgress = updateProgress; exports.convertToBigNum = convertToBigNum; exports.retryOperation = retryOperation; exports.verifyTransaction = verifyTransaction; +exports.sleep = sleep; +exports.CHUNK_DELAY = CHUNK_DELAY; From 298702e1ff86baa1105193857ff2feafb19f27c6 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 11 Feb 2026 23:29:22 -0500 Subject: [PATCH 255/270] Add ContractPaybackDistributor address to Step 1b log output Co-Authored-By: Claude Opus 4.5 --- tasks/beanstalk-shipments.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index e6d9d3e1..6f0fac3d 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -150,6 +150,7 @@ module.exports = function () { const siloPaybackAddress = contracts.siloPaybackContract.address; const barnPaybackAddress = contracts.barnPaybackContract.address; + const contractPaybackDistributorAddress = contracts.contractPaybackDistributorContract.address; // Helper to encode addresses into padded hex data const encodeAddress = (addr) => addr.toLowerCase().replace("0x", "").padStart(64, "0"); @@ -171,6 +172,7 @@ module.exports = function () { console.log("Updated updatedShipmentRoutes.json with deployed contract addresses:"); console.log(` - SiloPayback: ${siloPaybackAddress}`); console.log(` - BarnPayback: ${barnPaybackAddress}`); + console.log(` - ContractPaybackDistributor: ${contractPaybackDistributorAddress}`); console.log(` - Routes 4, 5, 6 data fields updated\n`); }); From 9bd0393ba0212dd12d6efedc285bb90a3384315a Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Wed, 11 Feb 2026 23:41:26 -0500 Subject: [PATCH 256/270] Update shipment routes with new contract addresses and improve address caching --- .gitignore | 1 + hardhat.config.js | 2 +- .../data/updatedShipmentRoutes.json | 48 +++++++------- .../beanstalkShipments/utils/addressCache.js | 63 ++++++++++++++++--- test/hardhat/utils/constants.js | 4 +- 5 files changed, 83 insertions(+), 35 deletions(-) diff --git a/.gitignore b/.gitignore index b06e01b4..2d467533 100644 --- a/.gitignore +++ b/.gitignore @@ -34,6 +34,7 @@ tasks/requisition/ # deployment outputs scripts/deployment/outputs/ +scripts/beanstalkShipments/data/deployedAddresses*.json # hardhat cache hardhat-cache/ diff --git a/hardhat.config.js b/hardhat.config.js index c98cb8b0..b2263983 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -30,7 +30,7 @@ task("runLatestUpgrade", "Compiles the contracts").setAction(async function () { await hre.run("compile"); // run beanstalk shipments - await hre.run("runBeanstalkShipments", { skipPause: true, runStep0: false }); + await hre.run("runBeanstalkShipments", { skipPause: false, runStep0: false, step: "deploy" }); }); task("callSunriseAndTestMigration", "Calls the sunrise function and tests the migration").setAction( diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index 96734405..d862a947 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -1,38 +1,38 @@ [ { - "planContract": "0x0000000000000000000000000000000000000000", - "planSelector": "0x7c655075", - "recipient": "0x1", - "data": "0x0000000000000000000000000000000000000000000000000000000000000000" + "planContract": "0x0000000000000000000000000000000000000000", + "planSelector": "0x7c655075", + "recipient": "0x1", + "data": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { - "planContract": "0x0000000000000000000000000000000000000000", - "planSelector": "0x12e8d3ed", - "recipient": "0x2", - "data": "0x0000000000000000000000000000000000000000000000000000000000000000" + "planContract": "0x0000000000000000000000000000000000000000", + "planSelector": "0x12e8d3ed", + "recipient": "0x2", + "data": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { - "planContract": "0x0000000000000000000000000000000000000000", - "planSelector": "0x05655264", - "recipient": "0x3", - "data": "0x000000000000000000000000b0cdb715D8122bd976a30996866Ebe5e51bb18b0" + "planContract": "0x0000000000000000000000000000000000000000", + "planSelector": "0x05655264", + "recipient": "0x3", + "data": "0x000000000000000000000000b0cdb715D8122bd976a30996866Ebe5e51bb18b0" }, { - "planContract": "0x0000000000000000000000000000000000000000", - "planSelector": "0x6fc9267a", - "recipient": "0x2", - "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b0000000000000000000000000000000000000000000000000000000000000001" + "planContract": "0x0000000000000000000000000000000000000000", + "planSelector": "0x6fc9267a", + "recipient": "0x2", + "data": "0x00000000000000000000000041a63c5ec74c8d1b0cb7cea171e84f926c97c129000000000000000000000000d8a725b613be344a63d7b8ab69ef28010d35be5d0000000000000000000000000000000000000000000000000000000000000001" }, { - "planContract": "0x0000000000000000000000000000000000000000", - "planSelector": "0xb34da3d2", - "recipient": "0x5", - "data": "0x0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b" + "planContract": "0x0000000000000000000000000000000000000000", + "planSelector": "0xb34da3d2", + "recipient": "0x5", + "data": "0x00000000000000000000000041a63c5ec74c8d1b0cb7cea171e84f926c97c129000000000000000000000000d8a725b613be344a63d7b8ab69ef28010d35be5d" }, { - "planContract": "0x0000000000000000000000000000000000000000", - "planSelector": "0x5f6cc37d", - "recipient": "0x6", - "data": "0x00000000000000000000000071ad4dcd54b1ee0fa450d7f389beaff1c8602f9b0000000000000000000000009e449a18155d4b03c2e08a4e28b2bcae580efc4e" + "planContract": "0x0000000000000000000000000000000000000000", + "planSelector": "0x5f6cc37d", + "recipient": "0x6", + "data": "0x00000000000000000000000041a63c5ec74c8d1b0cb7cea171e84f926c97c129000000000000000000000000d8a725b613be344a63d7b8ab69ef28010d35be5d" } ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/utils/addressCache.js b/scripts/beanstalkShipments/utils/addressCache.js index 3c782188..0bf43f2c 100644 --- a/scripts/beanstalkShipments/utils/addressCache.js +++ b/scripts/beanstalkShipments/utils/addressCache.js @@ -1,10 +1,54 @@ const fs = require("fs"); const path = require("path"); -const CACHE_FILE_PATH = path.join(__dirname, "../data/deployedAddresses.json"); +const DATA_DIR = path.join(__dirname, "../data"); +const FILE_PREFIX = "deployedAddresses_"; +const FILE_EXTENSION = ".json"; /** - * Saves deployed contract addresses to cache file + * Gets all existing deployed address files and returns them sorted by counter + * @returns {Array<{path: string, counter: number}>} Sorted array of file info + */ +function getExistingFiles() { + if (!fs.existsSync(DATA_DIR)) { + return []; + } + + const files = fs.readdirSync(DATA_DIR); + const addressFiles = files + .filter((f) => f.startsWith(FILE_PREFIX) && f.endsWith(FILE_EXTENSION)) + .map((f) => { + const counterStr = f.slice(FILE_PREFIX.length, -FILE_EXTENSION.length); + const counter = parseInt(counterStr, 10); + return { path: path.join(DATA_DIR, f), counter }; + }) + .filter((f) => !isNaN(f.counter)) + .sort((a, b) => a.counter - b.counter); + + return addressFiles; +} + +/** + * Gets the path for the next available counter + * @returns {string} Path for the next file + */ +function getNextFilePath() { + const existing = getExistingFiles(); + const nextCounter = existing.length > 0 ? existing[existing.length - 1].counter + 1 : 1; + return path.join(DATA_DIR, `${FILE_PREFIX}${nextCounter}${FILE_EXTENSION}`); +} + +/** + * Gets the path of the latest (highest counter) file + * @returns {string|null} Path to latest file or null if none exist + */ +function getLatestFilePath() { + const existing = getExistingFiles(); + return existing.length > 0 ? existing[existing.length - 1].path : null; +} + +/** + * Saves deployed contract addresses to cache file with auto-incrementing counter * @param {Object} addresses - Object containing contract addresses * @param {string} addresses.siloPayback - SiloPayback contract address * @param {string} addresses.barnPayback - BarnPayback contract address @@ -20,21 +64,23 @@ function saveDeployedAddresses(addresses, network = "unknown") { network: network }; - fs.writeFileSync(CACHE_FILE_PATH, JSON.stringify(data, null, 2)); - console.log(`šŸ“ Deployed addresses saved to ${CACHE_FILE_PATH}`); + const filePath = getNextFilePath(); + fs.writeFileSync(filePath, JSON.stringify(data, null, 2)); + console.log(`šŸ“ Deployed addresses saved to ${filePath}`); } /** - * Gets deployed contract addresses from cache file + * Gets deployed contract addresses from the latest cache file * @returns {Object|null} Object containing contract addresses or null if not found */ function getDeployedAddresses() { - if (!fs.existsSync(CACHE_FILE_PATH)) { + const latestFile = getLatestFilePath(); + if (!latestFile) { return null; } try { - const data = JSON.parse(fs.readFileSync(CACHE_FILE_PATH)); + const data = JSON.parse(fs.readFileSync(latestFile)); return data; } catch (error) { console.error("Error reading deployed addresses cache:", error); @@ -82,5 +128,6 @@ module.exports = { getDeployedAddresses, verifyDeployedAddresses, getContractAddress, - CACHE_FILE_PATH + getLatestFilePath, + getExistingFiles }; diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index ae717056..a01dac20 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -140,8 +140,8 @@ module.exports = { PINTO_PRICE_CONTRACT: "0x13D25ABCB6a19948d35654715c729c6501230b49", //////////////////////// BEANSTALK SHIPMENTS //////////////////////// - // EOA That will deploy the beanstlak shipment related contracts on base - BEANSTALK_SHIPMENTS_DEPLOYER: "0x47c365cc9ef51052651c2be22f274470ad6afc53", + // EOA That will deploy the beanstalk shipment related contracts on base + BEANSTALK_SHIPMENTS_DEPLOYER: "0x00000015EE13a3C1fD0e8Dc2e8C2c8590D5B440B", // Expected proxy address of the silo payback contract from deployer at nonce 1 BEANSTALK_SILO_PAYBACK: "0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E", BEANSTALK_SILO_PAYBACK_IMPLEMENTATION: "0x3E0635B980714303351DAeE305dB1A380C56ed38", From 9104e13da6ba70f581d74a87835bcab53762abe5 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 00:54:45 -0500 Subject: [PATCH 257/270] Add nonce-based distributor address precomputation and dynamic address caching --- hardhat.config.js | 4 +- .../data/updatedShipmentRoutes.json | 6 +- .../deployPaybackContracts.js | 42 ++-- .../parsers/parseBarnData.js | 12 +- .../parsers/parseFieldData.js | 12 +- .../parsers/parseSiloData.js | 107 +++++---- .../beanstalkShipments/utils/addressCache.js | 25 +- tasks/beanstalk-shipments.js | 215 +++++++++++------- test/hardhat/utils/constants.js | 3 - 9 files changed, 272 insertions(+), 154 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index b2263983..dfb3ac42 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -74,7 +74,7 @@ module.exports = { chainId: 1337, url: "http://127.0.0.1:8545/", timeout: 100000000000000000, - accounts: "remote" + accounts: [process.env.PINTO_PK] }, mainnet: { chainId: 1, @@ -90,7 +90,7 @@ module.exports = { chainId: 8453, url: process.env.BASE_RPC || "", timeout: 100000000, - accounts: [] + accounts: [process.env.PINTO_PK] }, custom: { chainId: 41337, diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index d862a947..c20a2396 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -21,18 +21,18 @@ "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x6fc9267a", "recipient": "0x2", - "data": "0x00000000000000000000000041a63c5ec74c8d1b0cb7cea171e84f926c97c129000000000000000000000000d8a725b613be344a63d7b8ab69ef28010d35be5d0000000000000000000000000000000000000000000000000000000000000001" + "data": "0x000000000000000000000000ba0534b16017e861ba15f1587d8a060e15f7f336000000000000000000000000724c87b9a6ea6ba7a7cf3bfc0309de778fb280270000000000000000000000000000000000000000000000000000000000000001" }, { "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0xb34da3d2", "recipient": "0x5", - "data": "0x00000000000000000000000041a63c5ec74c8d1b0cb7cea171e84f926c97c129000000000000000000000000d8a725b613be344a63d7b8ab69ef28010d35be5d" + "data": "0x000000000000000000000000ba0534b16017e861ba15f1587d8a060e15f7f336000000000000000000000000724c87b9a6ea6ba7a7cf3bfc0309de778fb28027" }, { "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x5f6cc37d", "recipient": "0x6", - "data": "0x00000000000000000000000041a63c5ec74c8d1b0cb7cea171e84f926c97c129000000000000000000000000d8a725b613be344a63d7b8ab69ef28010d35be5d" + "data": "0x000000000000000000000000ba0534b16017e861ba15f1587d8a060e15f7f336000000000000000000000000724c87b9a6ea6ba7a7cf3bfc0309de778fb28027" } ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 8a798799..685a0973 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -7,8 +7,8 @@ const { sleep, CHUNK_DELAY } = require("../../utils/read.js"); -const { BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR } = require("../../test/hardhat/utils/constants.js"); -const { saveDeployedAddresses } = require("./utils/addressCache.js"); +const { saveDeployedAddresses, computeDistributorAddress } = require("./utils/addressCache.js"); +const DELAY = 2000; // 2000ms delay between contracts // Deploys SiloPayback, BarnPayback, and ContractPaybackDistributor contracts async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = true }) { @@ -25,8 +25,7 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru kind: "transparent" }); await siloPaybackContract.deployed(); - console.log("āœ… SiloPayback deployed to:", siloPaybackContract.address); - console.log("šŸ‘¤ SiloPayback owner:", await siloPaybackContract.owner()); + await printContractAddresses(siloPaybackContract.address, "SiloPayback"); //////////////////////////// Barn Payback //////////////////////////// console.log("\nšŸ“¦ Deploying BarnPayback..."); @@ -34,18 +33,18 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru // get the initialization args from the json file const barnPaybackArgsPath = "./scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json"; const barnPaybackArgs = JSON.parse(fs.readFileSync(barnPaybackArgsPath)); - // factory, args, proxy options + const distributorAddress = (await computeDistributorAddress(account)).distributorAddress; + console.log(`\nšŸ“ Using pre-computed ContractPaybackDistributor address: ${distributorAddress}`); const barnPaybackContract = await upgrades.deployProxy( barnPaybackFactory, - [PINTO, L2_PINTO, BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, barnPaybackArgs], + [PINTO, L2_PINTO, distributorAddress, barnPaybackArgs], { initializer: "initialize", kind: "transparent" } ); await barnPaybackContract.deployed(); - console.log("āœ… BarnPayback deployed to:", barnPaybackContract.address); - console.log("šŸ‘¤ BarnPayback owner:", await barnPaybackContract.owner()); + await printContractAddresses(barnPaybackContract.address, "BarnPayback"); //////////////////////////// Contract Payback Distributor //////////////////////////// console.log("\nšŸ“¦ Deploying ContractPaybackDistributor..."); @@ -60,13 +59,10 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru barnPaybackContract.address // address _barnPayback ); await contractPaybackDistributorContract.deployed(); - console.log( - "āœ… ContractPaybackDistributor deployed to:", - contractPaybackDistributorContract.address - ); - console.log( - "šŸ‘¤ ContractPaybackDistributor owner:", - await contractPaybackDistributorContract.owner() + await printContractAddresses( + contractPaybackDistributorContract.address, + "ContractPaybackDistributor", + false ); return { @@ -371,6 +367,22 @@ async function deployAndSetupContracts(params) { return contracts; } +async function printContractAddresses(contractAddress, contractName, isUpgradeable = true) { + console.log(`āœ… ${contractName} deployed to:`, contractAddress); + if (isUpgradeable) { + await sleep(DELAY); + console.log( + " Implementation:", + await upgrades.erc1967.getImplementationAddress(contractAddress) + ); + await sleep(DELAY); + console.log(" ProxyAdmin:", await upgrades.erc1967.getAdminAddress(contractAddress)); + await sleep(DELAY); + const contract = await ethers.getContractAt("OwnableUpgradeable", contractAddress); + console.log(`šŸ‘¤ ${contractName} owner:`, await contract.owner()); + } +} + module.exports = { deployShipmentContracts, distributeUnripeBdvTokens, diff --git a/scripts/beanstalkShipments/parsers/parseBarnData.js b/scripts/beanstalkShipments/parsers/parseBarnData.js index dc750803..4697c119 100644 --- a/scripts/beanstalkShipments/parsers/parseBarnData.js +++ b/scripts/beanstalkShipments/parsers/parseBarnData.js @@ -45,9 +45,15 @@ function parseBarnData(includeContracts = false, detectedContractAddresses = []) console.log(`Processing ${Object.keys(ethContracts).length} ethContracts`); } - // Load constants for distributor address - const constants = require('../../../test/hardhat/utils/constants.js'); - const DISTRIBUTOR_ADDRESS = constants.BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR; + // Load distributor address from cache + const { getDeployedAddresses } = require('../utils/addressCache.js'); + const cachedAddresses = getDeployedAddresses(); + if (!cachedAddresses || !cachedAddresses.contractPaybackDistributor) { + throw new Error( + "ContractPaybackDistributor address not found in cache. Run 'npx hardhat precomputeDistributorAddress' first." + ); + } + const DISTRIBUTOR_ADDRESS = cachedAddresses.contractPaybackDistributor; // Combine data sources and reassign ethContracts to distributor const allAccounts = { ...arbEOAs }; diff --git a/scripts/beanstalkShipments/parsers/parseFieldData.js b/scripts/beanstalkShipments/parsers/parseFieldData.js index 74f381ce..44b0a800 100644 --- a/scripts/beanstalkShipments/parsers/parseFieldData.js +++ b/scripts/beanstalkShipments/parsers/parseFieldData.js @@ -24,9 +24,15 @@ function parseFieldData(includeContracts = false, detectedContractAddresses = [] console.log(`Processing ${Object.keys(ethContracts).length} ethContracts`); } - // Load constants for distributor address - const constants = require('../../../test/hardhat/utils/constants.js'); - const DISTRIBUTOR_ADDRESS = constants.BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR; + // Load distributor address from cache + const { getDeployedAddresses } = require('../utils/addressCache.js'); + const cachedAddresses = getDeployedAddresses(); + if (!cachedAddresses || !cachedAddresses.contractPaybackDistributor) { + throw new Error( + "ContractPaybackDistributor address not found in cache. Run 'npx hardhat precomputeDistributorAddress' first." + ); + } + const DISTRIBUTOR_ADDRESS = cachedAddresses.contractPaybackDistributor; // Combine data sources and reassign ethContracts to distributor const allAccounts = { ...arbEOAs }; diff --git a/scripts/beanstalkShipments/parsers/parseSiloData.js b/scripts/beanstalkShipments/parsers/parseSiloData.js index 3ed0dd8f..48e974c7 100644 --- a/scripts/beanstalkShipments/parsers/parseSiloData.js +++ b/scripts/beanstalkShipments/parsers/parseSiloData.js @@ -1,47 +1,57 @@ -const fs = require('fs'); -const path = require('path'); +const fs = require("fs"); +const path = require("path"); /** * Parses silo export data into the unripeBdvTokens format - * + * * Expected output format: * unripeBdvTokens.json: Array of [account, totalBdvAtRecapitalization] - * + * * @param {boolean} includeContracts - Whether to include contract addresses alongside arbEOAs * @param {string[]} detectedContractAddresses - Array of detected contract addresses to redirect to distributor */ function parseSiloData(includeContracts = false, detectedContractAddresses = []) { - const inputPath = path.join(__dirname, '../data/exports/beanstalk_silo.json'); - const outputPath = path.join(__dirname, '../data/unripeBdvTokens.json'); - - const siloData = JSON.parse(fs.readFileSync(inputPath, 'utf8')); - + const inputPath = path.join(__dirname, "../data/exports/beanstalk_silo.json"); + const outputPath = path.join(__dirname, "../data/unripeBdvTokens.json"); + + const siloData = JSON.parse(fs.readFileSync(inputPath, "utf8")); + const { arbEOAs, arbContracts = {}, ethContracts = {} } = siloData; - + console.log(`Processing ${Object.keys(arbEOAs).length} arbEOAs`); if (includeContracts) { console.log(`Processing ${Object.keys(arbContracts).length} arbContracts`); console.log(`Processing ${Object.keys(ethContracts).length} ethContracts`); } - - // Load constants for distributor address - const constants = require('../../../test/hardhat/utils/constants.js'); - const DISTRIBUTOR_ADDRESS = constants.BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR; - + + // Load distributor address from cache + const { getDeployedAddresses } = require("../utils/addressCache.js"); + const cachedAddresses = getDeployedAddresses(); + if (!cachedAddresses || !cachedAddresses.contractPaybackDistributor) { + throw new Error( + "ContractPaybackDistributor address not found in cache. Run 'npx hardhat precomputeDistributorAddress' first." + ); + } + const DISTRIBUTOR_ADDRESS = cachedAddresses.contractPaybackDistributor; + // Combine data sources and reassign ethContracts to distributor const allAccounts = { ...arbEOAs }; if (includeContracts) { Object.assign(allAccounts, arbContracts); } - + // Reassign all ethContracts assets to the distributor contract for (const [ethContractAddress, ethContractData] of Object.entries(ethContracts)) { if (ethContractData && ethContractData.bdvAtRecapitalization) { // If distributor already has data, add to it, otherwise create new entry if (allAccounts[DISTRIBUTOR_ADDRESS]) { - const distributorBdv = parseInt(allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total || '0'); - const ethContractBdv = parseInt(ethContractData.bdvAtRecapitalization.total || '0'); - allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total = (distributorBdv + ethContractBdv).toString(); + const distributorBdv = parseInt( + allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total || "0" + ); + const ethContractBdv = parseInt(ethContractData.bdvAtRecapitalization.total || "0"); + allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total = ( + distributorBdv + ethContractBdv + ).toString(); } else { allAccounts[DISTRIBUTOR_ADDRESS] = { bdvAtRecapitalization: { @@ -51,22 +61,32 @@ function parseSiloData(includeContracts = false, detectedContractAddresses = []) } } } - + // Reassign detected contract addresses assets to the distributor contract for (const detectedAddress of detectedContractAddresses) { const normalizedDetectedAddress = detectedAddress.toLowerCase(); - + // Check if this detected contract has assets in arbEOAs that need to be redirected - const detectedContract = Object.keys(allAccounts).find(addr => addr.toLowerCase() === normalizedDetectedAddress); - - if (detectedContract && allAccounts[detectedContract] && allAccounts[detectedContract].bdvAtRecapitalization) { + const detectedContract = Object.keys(allAccounts).find( + (addr) => addr.toLowerCase() === normalizedDetectedAddress + ); + + if ( + detectedContract && + allAccounts[detectedContract] && + allAccounts[detectedContract].bdvAtRecapitalization + ) { const contractData = allAccounts[detectedContract]; - + // If distributor already has data, add to it, otherwise create new entry if (allAccounts[DISTRIBUTOR_ADDRESS]) { - const distributorBdv = parseInt(allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total || '0'); - const contractBdv = parseInt(contractData.bdvAtRecapitalization.total || '0'); - allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total = (distributorBdv + contractBdv).toString(); + const distributorBdv = parseInt( + allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total || "0" + ); + const contractBdv = parseInt(contractData.bdvAtRecapitalization.total || "0"); + allAccounts[DISTRIBUTOR_ADDRESS].bdvAtRecapitalization.total = ( + distributorBdv + contractBdv + ).toString(); } else { allAccounts[DISTRIBUTOR_ADDRESS] = { bdvAtRecapitalization: { @@ -74,44 +94,49 @@ function parseSiloData(includeContracts = false, detectedContractAddresses = []) } }; } - + // Remove the detected contract from allAccounts since its assets are now redirected delete allAccounts[detectedContract]; } } - + // Build unripe BDV data structure const unripeBdvData = []; - + // Process all accounts for (const [accountAddress, accountData] of Object.entries(allAccounts)) { - if (!accountData || !accountData.bdvAtRecapitalization || !accountData.bdvAtRecapitalization.total) continue; - + if ( + !accountData || + !accountData.bdvAtRecapitalization || + !accountData.bdvAtRecapitalization.total + ) + continue; + const { bdvAtRecapitalization } = accountData; - + // Use the pre-calculated total BDV at recapitalization const totalBdv = parseInt(bdvAtRecapitalization.total); - + if (totalBdv > 0) { unripeBdvData.push([accountAddress, totalBdv.toString()]); } } - + // Sort accounts by address for consistent output unripeBdvData.sort((a, b) => a[0].localeCompare(b[0])); - + // Calculate statistics const totalAccounts = unripeBdvData.length; const totalBdv = unripeBdvData.reduce((sum, [, bdv]) => sum + parseInt(bdv), 0); const averageBdv = totalAccounts > 0 ? Math.floor(totalBdv / totalAccounts) : 0; - + // Write output file fs.writeFileSync(outputPath, JSON.stringify(unripeBdvData, null, 2)); - + console.log(`Accounts with BDV: ${totalAccounts}`); console.log(`Total BDV: ${totalBdv.toLocaleString()}`); console.log(`Average BDV per account: ${averageBdv.toLocaleString()}`); - + return { unripeBdvData, stats: { @@ -124,4 +149,4 @@ function parseSiloData(includeContracts = false, detectedContractAddresses = []) } // Export for use in other scripts -module.exports = parseSiloData; \ No newline at end of file +module.exports = parseSiloData; diff --git a/scripts/beanstalkShipments/utils/addressCache.js b/scripts/beanstalkShipments/utils/addressCache.js index 0bf43f2c..6ed281e5 100644 --- a/scripts/beanstalkShipments/utils/addressCache.js +++ b/scripts/beanstalkShipments/utils/addressCache.js @@ -5,6 +5,7 @@ const DATA_DIR = path.join(__dirname, "../data"); const FILE_PREFIX = "deployedAddresses_"; const FILE_EXTENSION = ".json"; +const NUM_CONTRACTS = 1; /** * Gets all existing deployed address files and returns them sorted by counter * @returns {Array<{path: string, counter: number}>} Sorted array of file info @@ -123,11 +124,33 @@ function getContractAddress(contractName) { return addresses[contractName] || null; } +/** + * Pre-computes the ContractPaybackDistributor address based on deployer nonce. + * Nonce consumption for transparent proxies: + * - First proxy (SiloPayback): Implementation + ProxyAdmin + Proxy = 3 nonces + * - Second proxy (BarnPayback): Implementation + Proxy = 2 nonces (reuses ProxyAdmin) + * - ContractPaybackDistributor: 1 nonce (regular deployment) + * Total offset from starting nonce: 5 + * + * @param {Object} deployer - Ethers signer object + * @returns {Promise<{distributorAddress: string, startingNonce: number}>} + */ +async function computeDistributorAddress(deployer) { + const ethers = require("ethers"); + const currentNonce = await deployer.getTransactionCount(); + const distributorAddress = ethers.utils.getContractAddress({ + from: deployer.address, + nonce: currentNonce + NUM_CONTRACTS + }); + return { distributorAddress, startingNonce: currentNonce }; +} + module.exports = { saveDeployedAddresses, getDeployedAddresses, verifyDeployedAddresses, getContractAddress, getLatestFilePath, - getExistingFiles + getExistingFiles, + computeDistributorAddress }; diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 6f0fac3d..ea80bd99 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -7,11 +7,9 @@ module.exports = function () { L2_PCM, PINTO, L1_CONTRACT_MESSENGER_DEPLOYER, - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, BEANSTALK_SHIPMENTS_DEPLOYER, BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR, - BEANSTALK_SILO_PAYBACK, - BEANSTALK_BARN_PAYBACK + BEANSTALK_SILO_PAYBACK } = require("../test/hardhat/utils/constants.js"); const { upgradeWithNewFacets } = require("../scripts/diamond.js"); const { @@ -21,8 +19,12 @@ module.exports = function () { deployAndSetupContracts, transferContractOwnership } = require("../scripts/beanstalkShipments/deployPaybackContracts.js"); - const { initializeSiloPayback } = require("../scripts/beanstalkShipments/initializeSiloPayback.js"); - const { initializeBarnPayback } = require("../scripts/beanstalkShipments/initializeBarnPayback.js"); + const { + initializeSiloPayback + } = require("../scripts/beanstalkShipments/initializeSiloPayback.js"); + const { + initializeBarnPayback + } = require("../scripts/beanstalkShipments/initializeBarnPayback.js"); const { initializeContractPaybackDistributor } = require("../scripts/beanstalkShipments/initializeContractPaybackDistributor.js"); @@ -66,16 +68,23 @@ module.exports = function () { // log deployer address console.log("Deployer address:", deployer.address); + // Get distributor address from cache + const cachedAddresses = getDeployedAddresses(); + if (!cachedAddresses || !cachedAddresses.contractPaybackDistributor) { + throw new Error( + "ContractPaybackDistributor address not found in cache. Run 'npx hardhat precomputeDistributorAddress' first." + ); + } + const distributorAddress = cachedAddresses.contractPaybackDistributor; + console.log(`Using distributor address from cache: ${distributorAddress}`); + // read the unclaimable contract addresses from the json file const contractAccounts = JSON.parse( fs.readFileSync("./scripts/beanstalkShipments/data/unclaimableContractAddresses.json") ); const L1Messenger = await ethers.getContractFactory("L1ContractMessenger"); - const l1Messenger = await L1Messenger.deploy( - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR, - contractAccounts - ); + const l1Messenger = await L1Messenger.deploy(distributorAddress, contractAccounts); await l1Messenger.deployed(); console.log("L1ContractMessenger deployed to:", l1Messenger.address); @@ -108,73 +117,76 @@ module.exports = function () { // Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER at 0x47c365cc9ef51052651c2be22f274470ad6afc53 // Set mock to false to deploy the payback contracts on base. // - npx hardhat deployPaybackContracts --network base - task("deployPaybackContracts", "deploys the payback contracts (no initialization)") - .setAction(async (taskArgs, hre) => { - // params - const verbose = true; - const mock = true; - - // Use the shipments deployer to get correct addresses - let deployer; - if (mock) { - deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[0]; - } - - // Step 1: Deploy payback contracts only (initialization is now separate) - console.log("STEP 1: DEPLOYING PAYBACK CONTRACTS"); - console.log("-".repeat(50)); - - const contracts = await deployAndSetupContracts({ - PINTO, - L2_PINTO, - L2_PCM, - account: deployer, - verbose, - network: hre.network.name - }); - console.log(" Payback contracts deployed\n"); - console.log("šŸ“ Next steps:"); - console.log(" Run initializeSiloPayback (Step 1.5)"); - console.log(" Run initializeBarnPayback (Step 1.6)"); - console.log(" Run initializeContractPaybackDistributor (Step 1.7)"); - - // Step 1b: Update the shipment routes JSON with deployed contract addresses - console.log("STEP 1b: UPDATING SHIPMENT ROUTES WITH DEPLOYED ADDRESSES"); - console.log("-".repeat(50)); - - const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; - const routes = JSON.parse(fs.readFileSync(routesPath)); - - const siloPaybackAddress = contracts.siloPaybackContract.address; - const barnPaybackAddress = contracts.barnPaybackContract.address; - const contractPaybackDistributorAddress = contracts.contractPaybackDistributorContract.address; + task("deployPaybackContracts", "deploys the payback contracts (no initialization)").setAction( + async (taskArgs, hre) => { + // params + const verbose = true; + const mock = false; - // Helper to encode addresses into padded hex data - const encodeAddress = (addr) => addr.toLowerCase().replace("0x", "").padStart(64, "0"); - const encodeUint256 = (num) => num.toString(16).padStart(64, "0"); + // Use the shipments deployer to get correct addresses + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } - // Route 4 (index 3): getPaybackFieldPlan - data = (siloPayback, barnPayback, fieldId) - // fieldId = 1 for the repayment field - routes[3].data = - "0x" + encodeAddress(siloPaybackAddress) + encodeAddress(barnPaybackAddress) + encodeUint256(1); + // Step 1: Deploy payback contracts only (initialization is now separate) + console.log("-".repeat(50)); - // Route 5 (index 4): getPaybackSiloPlan - data = (siloPayback, barnPayback) - routes[4].data = "0x" + encodeAddress(siloPaybackAddress) + encodeAddress(barnPaybackAddress); + const contracts = await deployAndSetupContracts({ + PINTO, + L2_PINTO, + L2_PCM, + account: deployer, + verbose, + network: hre.network.name + }); + console.log(" Payback contracts deployed\n"); + console.log("šŸ“ Next steps:"); + console.log(" Run initializeSiloPayback (Step 1.5)"); + console.log(" Run initializeBarnPayback (Step 1.6)"); + console.log(" Run initializeContractPaybackDistributor (Step 1.7)"); + + // Step 1b: Update the shipment routes JSON with deployed contract addresses + console.log("STEP 1b: UPDATING SHIPMENT ROUTES WITH DEPLOYED ADDRESSES"); + console.log("-".repeat(50)); - // Route 6 (index 5): getPaybackBarnPlan - data = (siloPayback, barnPayback) - // Note: Order must be (siloPayback, barnPayback) to match paybacksRemaining() decoding - routes[5].data = "0x" + encodeAddress(siloPaybackAddress) + encodeAddress(barnPaybackAddress); + const routesPath = "./scripts/beanstalkShipments/data/updatedShipmentRoutes.json"; + const routes = JSON.parse(fs.readFileSync(routesPath)); - fs.writeFileSync(routesPath, JSON.stringify(routes, null, 4)); - console.log("Updated updatedShipmentRoutes.json with deployed contract addresses:"); - console.log(` - SiloPayback: ${siloPaybackAddress}`); - console.log(` - BarnPayback: ${barnPaybackAddress}`); - console.log(` - ContractPaybackDistributor: ${contractPaybackDistributorAddress}`); - console.log(` - Routes 4, 5, 6 data fields updated\n`); - }); + const siloPaybackAddress = contracts.siloPaybackContract.address; + const barnPaybackAddress = contracts.barnPaybackContract.address; + const contractPaybackDistributorAddress = + contracts.contractPaybackDistributorContract.address; + + // Helper to encode addresses into padded hex data + const encodeAddress = (addr) => addr.toLowerCase().replace("0x", "").padStart(64, "0"); + const encodeUint256 = (num) => num.toString(16).padStart(64, "0"); + + // Route 4 (index 3): getPaybackFieldPlan - data = (siloPayback, barnPayback, fieldId) + // fieldId = 1 for the repayment field + routes[3].data = + "0x" + + encodeAddress(siloPaybackAddress) + + encodeAddress(barnPaybackAddress) + + encodeUint256(1); + + // Route 5 (index 4): getPaybackSiloPlan - data = (siloPayback, barnPayback) + routes[4].data = "0x" + encodeAddress(siloPaybackAddress) + encodeAddress(barnPaybackAddress); + + // Route 6 (index 5): getPaybackBarnPlan - data = (siloPayback, barnPayback) + // Note: Order must be (siloPayback, barnPayback) to match paybacksRemaining() decoding + routes[5].data = "0x" + encodeAddress(siloPaybackAddress) + encodeAddress(barnPaybackAddress); + + fs.writeFileSync(routesPath, JSON.stringify(routes, null, 4)); + console.log("Updated updatedShipmentRoutes.json with deployed contract addresses:"); + console.log(` - SiloPayback: ${siloPaybackAddress}`); + console.log(` - BarnPayback: ${barnPaybackAddress}`); + console.log(` - ContractPaybackDistributor: ${contractPaybackDistributorAddress}`); + } + ); ////// STEP 1.5: INITIALIZE SILO PAYBACK ////// // Initialize the SiloPayback contract with unripe BDV data @@ -236,7 +248,10 @@ module.exports = function () { // - npx hardhat initializeContractPaybackDistributor --network base // Resume parameters: // - npx hardhat initializeContractPaybackDistributor --start-chunk 3 --network base - task("initializeContractPaybackDistributor", "Initialize ContractPaybackDistributor with account data") + task( + "initializeContractPaybackDistributor", + "Initialize ContractPaybackDistributor with account data" + ) .addOptionalParam("startChunk", "Resume from chunk number (0-indexed)", 0, types.int) .setAction(async (taskArgs) => { const mock = true; @@ -307,8 +322,7 @@ module.exports = function () { 0, types.int ) - .setAction( - async (taskArgs) => { + .setAction(async (taskArgs) => { // params const mock = true; const verbose = true; @@ -338,8 +352,7 @@ module.exports = function () { startFromChunk: taskArgs.fieldStartChunk }); console.log(" Beanstalk field initialized\n"); - } - ); + }); ////// STEP 4: FINALIZE THE BEANSTALK SHIPMENTS ////// // The PCM will need to remove the TempRepaymentFieldFacet from the diamond since it is no longer needed @@ -426,11 +439,30 @@ module.exports = function () { deployer = (await ethers.getSigners())[0]; } - const siloPaybackContract = await ethers.getContractAt("SiloPayback", BEANSTALK_SILO_PAYBACK); - const barnPaybackContract = await ethers.getContractAt("BarnPayback", BEANSTALK_BARN_PAYBACK); + // Get addresses from cache + const cachedAddresses = getDeployedAddresses(); + if ( + !cachedAddresses || + !cachedAddresses.siloPayback || + !cachedAddresses.barnPayback || + !cachedAddresses.contractPaybackDistributor + ) { + throw new Error( + "Contract addresses not found in cache. Run 'npx hardhat deployPaybackContracts' first." + ); + } + + const siloPaybackContract = await ethers.getContractAt( + "SiloPayback", + cachedAddresses.siloPayback + ); + const barnPaybackContract = await ethers.getContractAt( + "BarnPayback", + cachedAddresses.barnPayback + ); const contractPaybackDistributorContract = await ethers.getContractAt( "ContractPaybackDistributor", - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR + cachedAddresses.contractPaybackDistributor ); await transferContractOwnership({ @@ -462,11 +494,24 @@ module.exports = function () { ) .setAction(async (taskArgs, hre) => { const step = taskArgs.step; - const validSteps = ["0", "1", "1.5", "1.6", "1.7", "2", "3", "4", "5", "all", "deploy", "init"]; + const validSteps = [ + "0", + "1", + "1.5", + "1.6", + "1.7", + "2", + "3", + "4", + "5", + "all", + "deploy", + "init" + ]; // Step group definitions const stepGroups = { - deploy: ["1"], // Deploy all payback contracts + deploy: ["1"], // Deploy all payback contracts init: ["1.5", "1.6", "1.7"] // Initialize all payback contracts }; @@ -553,7 +598,9 @@ module.exports = function () { console.log("\nšŸ”§ Running Step 2: Deploy Temp Field Facet"); await hre.run("deployTempFieldFacet"); if (step === "all") { - console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); + console.log( + "\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution" + ); await pauseIfNeeded( "Press Ctrl+C to stop, or press Enter to continue after multisig execution..." ); @@ -579,7 +626,9 @@ module.exports = function () { console.log("\nšŸŽÆ Running Step 4: Finalize Beanstalk Shipments"); await hre.run("finalizeBeanstalkShipments"); if (step === "all") { - console.log("\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution"); + console.log( + "\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution" + ); await pauseIfNeeded( "Press Ctrl+C to stop, or press Enter to continue after multisig execution..." ); diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index a01dac20..645f9eb3 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -148,9 +148,6 @@ module.exports = { // Expected proxy address of the barn payback contract from deployer at nonce 3 BEANSTALK_BARN_PAYBACK: "0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b", BEANSTALK_BARN_PAYBACK_IMPLEMENTATION: "0xeB447cE47107f0c7406716d60Ede2107CE73e5f2", - // Expected address of the contract payback distributor contract from deployer at nonce 4 - BEANSTALK_CONTRACT_PAYBACK_DISTRIBUTOR: "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - // EOA that will populate the repayment field BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR: "0xc4c66c8b199443a8dea5939ce175c3592e349791", From dc83a4c9408c1ccbf131f25d6ad70d503546e375 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 01:58:49 -0500 Subject: [PATCH 258/270] Refactor shipment scripts with production addresses and dynamic address caching --- hardhat.config.js | 4 +- .../data/beanstalkAccountFertilizer.json | 296 +- .../data/beanstalkPlots.json | 29939 ++++++++-------- .../data/contractAccountDistributorInit.json | 2664 +- .../data/contractAccounts.json | 165 +- .../data/productionAddresses.json | 11 + .../data/unripeBdvTokens.json | 524 +- .../initializeBarnPayback.js | 23 +- .../initializeContractPaybackDistributor.js | 26 +- .../initializeSiloPayback.js | 23 +- .../beanstalkShipments/utils/addressCache.js | 61 +- tasks/beanstalk-shipments.js | 64 +- 12 files changed, 17513 insertions(+), 16287 deletions(-) create mode 100644 scripts/beanstalkShipments/data/productionAddresses.json diff --git a/hardhat.config.js b/hardhat.config.js index dfb3ac42..b2263983 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -74,7 +74,7 @@ module.exports = { chainId: 1337, url: "http://127.0.0.1:8545/", timeout: 100000000000000000, - accounts: [process.env.PINTO_PK] + accounts: "remote" }, mainnet: { chainId: 1, @@ -90,7 +90,7 @@ module.exports = { chainId: 8453, url: process.env.BASE_RPC || "", timeout: 100000000, - accounts: [process.env.PINTO_PK] + accounts: [] }, custom: { chainId: 41337, diff --git a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json index 42a93267..c364304e 100644 --- a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json @@ -113,7 +113,7 @@ "1338731", [ [ - "0xCF0dCc80F6e15604E258138cca455A040ecb4605", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "116", "340802" ] @@ -218,7 +218,7 @@ "2313052", [ [ - "0xF7d48932f456e98d2FF824E38830E8F59De13f4A", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "912", "340802" ] @@ -288,7 +288,7 @@ "2502666", [ [ - "0xF7d48932f456e98d2FF824E38830E8F59De13f4A", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "20", "340802" ] @@ -328,7 +328,7 @@ "2811995", [ [ - "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "45", "340802" ] @@ -438,7 +438,7 @@ "3015555", [ [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "0x3800645f556ee583E20D6491c3a60E9c32744376", "997", "340802" ] @@ -533,7 +533,7 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "500", "340802" ] @@ -663,7 +663,7 @@ "3398029", [ [ - "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "476", "340802" ] @@ -703,7 +703,7 @@ "340802" ], [ - "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "1095", "340802" ] @@ -858,7 +858,7 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "4", "340802" ] @@ -882,11 +882,6 @@ "220", "340802" ], - [ - "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", - "1000", - "340802" - ], [ "0x96D48b045C9F825f2999C533Ad56B6B0fCa91F92", "1681", @@ -901,6 +896,11 @@ "0x11e2497AA81E45E824a4A4Ea8FD941a1059eD333", "1676", "340802" + ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "1000", + "340802" ] ] ], @@ -1352,6 +1352,11 @@ "10000", "340802" ], + [ + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", + "1031", + "340802" + ], [ "0x17372637a937f7427871573a85e6FaC2400D147f", "1500", @@ -1361,11 +1366,6 @@ "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", "105", "340802" - ], - [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - "1031", - "340802" ] ] ], @@ -1442,11 +1442,6 @@ "1", "340802" ], - [ - "0xb490aC9d599C2d4Fc24cC902ea4cd5af95EfF6e9", - "5110", - "340802" - ], [ "0xf96A5d6c20872a7DdCacdDE4e825249040250d66", "1", @@ -1466,6 +1461,11 @@ "0x876133657F5356e376B7ae27d251444727cE9488", "1010", "340802" + ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "5110", + "340802" ] ] ], @@ -1587,11 +1587,6 @@ "309", "340802" ], - [ - "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", - "7000", - "340802" - ], [ "0xE84c01208c4868d5615FCCf0b98f8c90f460d2b6", "285", @@ -1607,6 +1602,11 @@ "250", "340802" ], + [ + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", + "2213", + "340802" + ], [ "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", "10055", @@ -1647,6 +1647,11 @@ "457", "340802" ], + [ + "0x36DeF8a94e727A0Ff7B01d2f50780F0a28Fb74b6", + "130", + "340802" + ], [ "0xf4C586A2DCD0Afb8718F830C31de0c3C5c91b90C", "5000", @@ -1678,8 +1683,8 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - "545110", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "549767", "340802" ] ] @@ -1713,7 +1718,7 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "56044", "340802" ] @@ -1767,11 +1772,6 @@ "2805", "340802" ], - [ - "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", - "439", - "340802" - ], [ "0xc0fCfD732d6eD4aD1aFb182A080F31e74Fc0f28D", "118", @@ -1831,6 +1831,11 @@ "0x90030396F05AA263776c15e418a908Da4B018157", "169", "340802" + ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "439", + "340802" ] ] ], @@ -1932,11 +1937,6 @@ "970", "340802" ], - [ - "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", - "4645", - "340802" - ], [ "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", "1001", @@ -1981,6 +1981,11 @@ "0xb8EEa697890dceFe14Be1c1C457Db0f436DCcF7a", "105", "340802" + ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "4645", + "340802" ] ] ], @@ -2027,11 +2032,6 @@ "1216", "340802" ], - [ - "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", - "373", - "340802" - ], [ "0x264c1cBEC44F201d0eBe67b269D16B3edc909C61", "633", @@ -2076,6 +2076,11 @@ "0x4626751B194018B6848797EA3eA40a9252eE86EE", "286", "340802" + ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "373", + "340802" ] ] ], @@ -2187,11 +2192,6 @@ "5000", "340802" ], - [ - "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", - "1989", - "340802" - ], [ "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", "999", @@ -2232,11 +2232,6 @@ "1000", "340802" ], - [ - "0x25F69051858D6a8f9a6E54dAfb073e8eF3a94C1E", - "1764", - "340802" - ], [ "0xCCF00d42bdEA5Fff0b46DD18a5e23FC8ac85a4AA", "30019", @@ -2261,6 +2256,11 @@ "0x5ab404ab63831bFcf824F53B4ac3737b9d155d90", "1710", "340802" + ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "3753", + "340802" ] ] ], @@ -2302,11 +2302,6 @@ "37", "340802" ], - [ - "0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F", - "3152", - "340802" - ], [ "0xc1F80163cC753f460A190643d8FCbb7755a48409", "1863", @@ -2351,6 +2346,11 @@ "0x8623b240830fD2c33B1b5C8449f98fd606de88A8", "338", "340802" + ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "3152", + "340802" ] ] ], @@ -2457,11 +2457,6 @@ "451", "340802" ], - [ - "0xb490aC9d599C2d4Fc24cC902ea4cd5af95EfF6e9", - "5000", - "340802" - ], [ "0xf466dE56882df65f6bbB9a614Ed79C0e3E3bA18F", "122", @@ -2558,8 +2553,8 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - "291896", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "296896", "340802" ] ] @@ -2763,7 +2758,7 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", "10", "340802" ] @@ -2802,6 +2797,11 @@ "329", "340802" ], + [ + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", + "416", + "340802" + ], [ "0xD54fDf2c1a19bB5Abe5Bd4C32623f0dDD1752709", "1990", @@ -2817,11 +2817,6 @@ "10000", "340802" ], - [ - "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", - "1420", - "340802" - ], [ "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", "1000", @@ -2903,8 +2898,8 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - "1270", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "2274", "340802" ] ] @@ -2952,11 +2947,6 @@ "10020", "340802" ], - [ - "0xA5F158e596D0e4051e70631D5d72a8Ee9d5A3B8A", - "2500", - "340802" - ], [ "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", "686", @@ -2971,6 +2961,11 @@ "0x9241089cf848cB30c6020EE25Cd6a2b28c626744", "146", "340802" + ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "2500", + "340802" ] ] ], @@ -3062,11 +3057,6 @@ "500", "340802" ], - [ - "0xaD63E4d4Be2229B080d20311c1402A2e45Cf7E75", - "508", - "340802" - ], [ "0xE2bDaE527f99a68724B9D5C271438437FC2A4695", "33", @@ -3078,8 +3068,8 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - "964", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "1472", "340802" ] ] @@ -3157,6 +3147,11 @@ "85", "340802" ], + [ + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", + "500", + "340802" + ], [ "0x31b6020CeF40b72D1e53562229c1F9200d00CC12", "1920", @@ -3223,8 +3218,8 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - "40749", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "40249", "340802" ] ] @@ -3247,11 +3242,6 @@ "533", "340802" ], - [ - "0xCF0dCc80F6e15604E258138cca455A040ecb4605", - "108", - "340802" - ], [ "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", "19732", @@ -3277,11 +3267,6 @@ "125", "340802" ], - [ - "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", - "641", - "340802" - ], [ "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", "793", @@ -3372,11 +3357,6 @@ "7945", "340802" ], - [ - "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF", - "1006", - "340802" - ], [ "0xf7a7ae64Cf9E9dd26Fd2530a9B6fC571A31e75A1", "166667", @@ -3422,11 +3402,6 @@ "5973", "340802" ], - [ - "0x78fd06A971d8bd1CcF3BA2E16CD2D5EA451933E2", - "1988", - "340802" - ], [ "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", "6378", @@ -3607,11 +3582,6 @@ "1", "340802" ], - [ - "0xb490aC9d599C2d4Fc24cC902ea4cd5af95EfF6e9", - "20", - "340802" - ], [ "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", "143210", @@ -3687,11 +3657,6 @@ "6561", "340802" ], - [ - "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", - "10463", - "340802" - ], [ "0x41922873B405216bb5a7751c5289f9DF853D9a9E", "2772", @@ -3732,11 +3697,6 @@ "3100", "340802" ], - [ - "0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F", - "25000", - "340802" - ], [ "0xc1F80163cC753f460A190643d8FCbb7755a48409", "14783", @@ -3892,6 +3852,11 @@ "1243", "340802" ], + [ + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", + "500", + "340802" + ], [ "0x74E096E78789F31061Fc47F6950279A55C03288c", "192", @@ -3997,11 +3962,6 @@ "15048", "340802" ], - [ - "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", - "84990", - "340802" - ], [ "0xdE08f4eb43A835E7B1Fe782dD502D77274C8135E", "12544", @@ -4182,11 +4142,6 @@ "50000", "340802" ], - [ - "0x8D06Ffb1500343975571cC0240152C413d803778", - "50000", - "340802" - ], [ "0x1d264de8264a506Ed0E88E5E092131915913Ed17", "10015", @@ -4257,11 +4212,6 @@ "10753", "340802" ], - [ - "0x334f12F269213371fb59b328BB6e182C875e04B2", - "5002", - "340802" - ], [ "0xB1fe6937a51870ea66B863BE76d668Fc98694f25", "9593", @@ -4392,11 +4342,6 @@ "5364", "340802" ], - [ - "0x6E93e171C5223493Ad5434ac406140E89BD606De", - "4057", - "340802" - ], [ "0x82F402847051BDdAAb0f5D4b481417281837c424", "4427", @@ -4412,11 +4357,6 @@ "4000", "340802" ], - [ - "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", - "5068", - "340802" - ], [ "0xd53Adf794E2915b4F414BE1AB2282cA8DA56dCfD", "4679", @@ -4587,11 +4527,6 @@ "1848", "340802" ], - [ - "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", - "1911", - "340802" - ], [ "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", "3705", @@ -4652,11 +4587,6 @@ "3050", "340802" ], - [ - "0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56", - "2260", - "340802" - ], [ "0xe066684F0fF25A746aa51d63BA676bFc1D38442D", "2418", @@ -4742,11 +4672,6 @@ "1689", "340802" ], - [ - "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d", - "2005", - "340802" - ], [ "0x877cEA592fd83Dcc76243636dedC31CA7ce46cE1", "1917", @@ -4842,11 +4767,6 @@ "1746", "340802" ], - [ - "0x2F0424705Ab89E72c6b9fAebfF6D4265F9d25fA2", - "1996", - "340802" - ], [ "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", "1680", @@ -5137,11 +5057,6 @@ "1008", "340802" ], - [ - "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15", - "1005", - "340802" - ], [ "0xA3e1b60002a24f6cFf3f74E2AA260b8C17bbdF7D", "1386", @@ -5262,11 +5177,6 @@ "747", "340802" ], - [ - "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241", - "500", - "340802" - ], [ "0x7Df40fde5E8680c45BFEdAFCf61dD6962e688562", "1000", @@ -5282,6 +5192,11 @@ "512", "340802" ], + [ + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", + "942", + "340802" + ], [ "0xA1ae22c9744baceC7f321bE8F29B3eE6eF075205", "523", @@ -5297,6 +5212,11 @@ "468", "340802" ], + [ + "0x44db0002349036164dD46A04327201Eb7698A53e", + "444", + "340802" + ], [ "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", "780", @@ -5587,11 +5507,6 @@ "100", "340802" ], - [ - "0xb03F5438f9A243De5C3B830B7841EC315034cD5f", - "184", - "340802" - ], [ "0x32C7006B7E287eBb972194B40135e0D15870Ab5E", "104", @@ -5772,11 +5687,6 @@ "1", "340802" ], - [ - "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a", - "69", - "340802" - ], [ "0xD81a2cC2596E37Ae49322eDB198D84dc3986A3ed", "1", @@ -5908,8 +5818,8 @@ "340802" ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - "8124741", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "8321128", "340802" ] ] diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json index d80a8d05..722e91dd 100644 --- a/scripts/beanstalkShipments/data/beanstalkPlots.json +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -497,15 +497,6 @@ ] ] ], - [ - "0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122", - [ - [ - "227504823719295", - "18305090101" - ] - ] - ], [ "0x07f7cA325221752380d6CdFBcFF9B5E5E9EC058F", [ @@ -1547,25159 +1538,25132 @@ ] ], [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", + "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", [ [ - "462646168927", - "1666666666" - ], + "361234476058040", + "2406000000" + ] + ] + ], + [ + "0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0", + [ [ - "28368015360976", - "10000000000" - ], + "267806966956864", + "18402625318" + ] + ] + ], + [ + "0x11D86e9F9C2a1cF597b974E50C660316c92215AA", + [ [ - "28385711672356", - "4000000000" - ], + "574157923216400", + "18405369858" + ] + ] + ], + [ + "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D", + [ [ - "28553316405699", - "56203360846" + "190956833027662", + "37217588263" ], [ - "31590227810128", - "15764212654" + "632405487158023", + "1362130095" ], [ - "31772724860478", - "43540239232" - ], + "634781609311398", + "796726164" + ] + ] + ], + [ + "0x120Be1406E6B46dDD7878EDC06069C811f608844", + [ [ - "32013293099710", - "15000000000" + "495258518671796", + "67814142769" ], [ - "33106872744841", - "6434958505" - ], + "585014816613448", + "44928801374" + ] + ] + ], + [ + "0x122de1514670141D4c22e5675010B6D65386a9F6", + [ [ - "33262951017861", - "9375000000" + "633445875835283", + "88383049000" ], [ - "33290510627174", - "565390687" + "634054370395803", + "5577741477" ], [ - "38722543672289", - "250000000" + "634067673151832", + "56964081161" ], [ - "61000878716919", - "789407727" + "634208127647444", + "49547619666" ], [ - "72536373875278", - "200000000" + "648313723414461", + "6009716700" ], [ - "75784287632794", - "2935934380" + "668314224811239", + "15374981070" ], [ - "75995951619880", - "5268032293" + "675086678410802", + "69815285464" ], [ - "76202249214022", - "8000000000" + "677494138932275", + "17365876628" ], [ - "86790953888750", - "38576992385" + "679748272866001", + "2338515960" ], [ - "118322555232226", - "5892426278" - ], + "742201769028015", + "48039789791" + ] + ] + ], + [ + "0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b", + [ [ - "180071240663041", - "81992697619" - ], + "582532990593085", + "9392558210" + ] + ] + ], + [ + "0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303", + [ [ - "190509412911548", - "44590358778" - ], + "59999867425096", + "354422482014" + ] + ] + ], + [ + "0x1298751f99f2f715178Cc58fB3779C55e91C26bC", + [ [ - "200625410465815", - "27121737219" - ], + "648537251637637", + "31971947" + ] + ] + ], + [ + "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", + [ [ - "203337173447397", - "44485730835" + "681678394686893", + "7527748761" ], [ - "207234905273707", - "17459074945" - ], + "742249933817806", + "375414" + ] + ] + ], + [ + "0x12B9D75389409d119Dd9a96DF1D41092204e8f32", + [ [ - "207270328594324", - "49984112432" - ], + "31566901757266", + "11663342444" + ] + ] + ], + [ + "0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186", + [ [ - "208172233828826", - "26535963154" - ], + "564785303930728", + "1165879450" + ] + ] + ], + [ + "0x12f1412fECBf2767D10031f01D772d618594Ea28", + [ [ - "209057370939437", - "19654542435" + "406186663275278", + "1685616675" ], [ - "209905911270631", - "51680614449" + "406188348891953", + "1685577968" ], [ - "209957591885080", - "193338988216" - ], + "452060678873257", + "27897692308" + ] + ] + ], + [ + "0x1348EA8E35236AA0769b91ae291e7291117bf15C", + [ [ - "212591835915023", - "94239272075" - ], + "489737823532", + "616643076" + ] + ] + ], + [ + "0x136e6F25117aF5e5ff5d353dC41A0e91F013D461", + [ [ - "213229524257532", - "56443162240" - ], + "143944826482554", + "122522870889" + ] + ] + ], + [ + "0x13b1ddb38c80327257Bdcb0e321c834401399967", + [ [ - "213336723478778", - "46929014315" - ], + "644382876705008", + "2502367588" + ] + ] + ], + [ + "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", + [ [ - "213383652493093", - "46820732322" + "145498413266148", + "42841247573" ], [ - "213658788094189", - "46596908794" - ], + "145541254513721", + "42783848059" + ] + ] + ], + [ + "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", + [ [ - "214949047240394", - "135385700183" - ], + "61084721727512", + "2500000000" + ] + ] + ], + [ + "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", + [ [ - "215084432940577", - "135094592523" + "624243091995454", + "203615000" ], [ - "215439620132931", - "89335158945" + "634772027987253", + "1040000000" ], [ - "215528955291876", - "89207795460" + "646732029674264", + "2437432840" ], [ - "215618163087336", - "89080704286" + "672251516338595", + "2387375166" ], [ - "215707243791622", - "88953884657" + "672351094760624", + "421577971" ], [ - "217010587764381", - "46290484227" + "681986234524446", + "291165686" ], [ - "217474381338301", - "1293174476" + "738155444487185", + "20323399607" ], [ - "217563869893679", - "55156826488" + "760471037973169", + "1145095488" ], [ - "220144194502828", - "47404123300" - ], + "840552181305501", + "1108572912315" + ] + ] + ], + [ + "0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b", + [ [ - "221813776173855", - "37911640587" - ], + "158530779405767", + "1610099875" + ] + ] + ], + [ + "0x14A9034C185f04a82FdB93926787f713024c1d04", + [ [ - "233377524301320", - "80126513749" - ], + "859976582989678", + "122609442232" + ] + ] + ], + [ + "0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED", + [ [ - "234363994367301", - "101810011675" + "335857741482697", + "3482540346" ], [ - "237867225757655", - "94970341987" - ], + "335861224023043", + "3782897627" + ] + ] + ], + [ + "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", + [ [ - "238323426120979", - "141765636262" + "782454543582055", + "64162381017" ], [ - "238513085414760", - "141406044017" - ], + "828593773626551", + "157785618045" + ] + ] + ], + [ + "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248", + [ [ - "239248004001388", - "46885972163" + "41353532120650", + "16752841008" ], [ - "239294889973551", - "24269363626" + "41372978028598", + "66903217" ], [ - "240291234403735", - "27327225251" - ], + "264270149653239", + "19569741057" + ] + ] + ], + [ + "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", + [ [ - "240589084672177", - "187694536015" + "489713229332", + "24594200" ], [ - "241109044343173", - "186820539992" + "33226393240138", + "903943566" ], [ - "247641838339634", - "101040572048" - ], + "798286961231309", + "8915991349" + ] + ] + ], + [ + "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", + [ [ - "316297504741935", - "1134976125606" - ], + "646991286880723", + "18" + ] + ] + ], + [ + "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", + [ [ - "317859517384357", - "291195415400" + "611728295781189", + "10622053659968" ], [ - "333622810114113", - "200755943301" - ], + "623644302297490", + "529063312964" + ] + ] + ], + [ + "0x15682A522C149029F90108e2792A114E94AB4187", + [ [ - "338910099578361", - "72913082044" + "201115507781971", + "9954888600" ], [ - "344618618497376", - "81000597500" + "201125462670571", + "20006708080" + ] + ] + ], + [ + "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", + [ + [ + "12908130692247", + "69000000000" ], [ - "378227726508635", - "645363133" + "27663859276277", + "11430287315" ], [ - "400534613369686", - "132789821695" + "151982845144538", + "102043966209" ], [ - "401401284712966", - "133555430770" + "202189968549333", + "109329481723" ], [ - "409557925200195", - "13862188950" + "216890054194355", + "109550000000" ], [ - "411664283436334", - "13677512381" + "221296963314728", + "303606880000" ], [ - "411709178648065", - "13606320365" + "223966850287188", + "215672515793" ], [ - "411722784968430", - "33820000000" + "250110190299545", + "136745811108" ], [ - "411756604968430", - "33820000000" + "259103817552461", + "213600000000" ], [ - "415230639081557", - "16910000000" + "326600447749933", + "56701527977" ], [ - "415247549081557", - "16910000000" + "331820011408947", + "77550000000" ], [ - "415264459081557", - "16915000000" + "337312629850712", + "524000000000" ], [ - "415281374081557", - "16915000000" + "532596882341520", + "74008715512" ], [ - "415314425991557", - "13544000000" + "550767344271171", + "154323271198" ], [ - "415327969991557", - "10158000000" + "550963442752539", + "77710549315" ], [ - "415338127991557", - "6772000000" + "551147545041854", + "77448372715" ], [ - "415344899991557", - "16930000000" + "580467264306437", + "385627368167" ], [ - "415383569069219", - "13548000000" + "588844255968994", + "7190333320" ], [ - "415397117069219", - "13548000000" + "588851446302314", + "24416902119" ], [ - "415476876421248", - "13564000000" + "591553190653012", + "192654267895" ], [ - "415552624743282", - "13389422861" + "643053831916029", + "6077435843" ], [ - "415566014166143", - "14725577338" + "643671783551535", + "6908969226" ], [ - "415580739743481", - "17399191046" + "643678692520761", + "6721846521" ], [ - "415598138934527", - "13381218325" - ], + "643685414367282", + "9539096044" + ] + ] + ], + [ + "0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB", + [ [ - "415611520152852", - "13378806625" - ], + "272758111777231", + "10810000000" + ] + ] + ], + [ + "0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21", + [ [ - "415624898959477", - "13380333313" - ], + "227831611065108", + "45528525078" + ] + ] + ], + [ + "0x15e6e23b97D513ac117807bb88366f00fE6d6e17", + [ [ - "415638279292790", - "14715582102" + "498236313145011", + "437186238884" ], [ - "415652994874892", - "16050036235" + "521083859244841", + "1766705104317" ], [ - "415669044911127", - "16046566435" + "530421557497402", + "35719340050" ], [ - "415685091477562", - "16043097791" - ], + "530478666236974", + "125209382874" + ] + ] + ], + [ + "0x15e83602FDE900DdDdafC07bB67E18F64437b21e", + [ [ - "415701134575353", - "13593121522" - ], + "264704722565446", + "47834854016" + ] + ] + ], + [ + "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", + [ [ - "415714727696875", - "13370532569" + "72575956226539", + "357542100000" ], [ - "428524210780265", - "13268338278" + "89241731539000", + "1175500000023" ], [ - "444973868346640", - "61560768641" + "365422620670212", + "1865083098796" ], [ - "477195175494445", - "29857571563" + "389039821567282", + "1434547698166" ], [ - "562785223802308", - "31631000000" + "605868357905297", + "390832131713" ], [ - "564739070155208", - "31631250000" - ], + "748316175461834", + "2915005876762" + ] + ] + ], + [ + "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", + [ [ - "566121962403477", - "31631250000" + "109546800679552", + "200302309" ], [ - "569039352660815", - "31631250000" + "635843453941744", + "920876600" ], [ - "570064713013715", - "31631250000" + "635887570024580", + "8122037505" ], [ - "572117326695253", - "31631250000" + "646819721059395", + "4169534646" ], [ - "573818581461780", - "41982081237" + "705891222986739", + "622068" ], [ - "574387565763701", - "55857695832" - ], + "767503022441087", + "48133673" + ] + ] + ], + [ + "0x16785ca8422Cb4008CB9792fcD756ADbEe42878E", + [ [ - "575626349616280", - "53257255812" - ], + "267302406877711", + "20209787690" + ] + ] + ], + [ + "0x168c6aC0268a29c3C0645917a4510ccd73F4D923", + [ [ - "575679606872092", - "38492647384" - ], + "672650193633312", + "29376243060" + ] + ] + ], + [ + "0x16942d62E8ad78A9026E41Fab484C265FC90b228", + [ [ - "577679606726120", - "74848126691" - ], + "160756595271818", + "3293294269" + ] + ] + ], + [ + "0x16b5e68f83684740b2DA481DB60EAb42362884b9", + [ [ - "595338144020334", - "47102200000" - ], + "267337779284239", + "10134945528" + ] + ] + ], + [ + "0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7", + [ [ - "626184530707078", - "90718871797" + "222734022200750", + "13846186217" ], [ - "634031481420456", - "3170719864" + "223632980545856", + "53707306278" ], [ - "634034652140320", - "1827630964" + "261159862360092", + "767049891172" ], [ - "643938854351013", - "228851828" - ], + "274482355441400", + "3457786919155" + ] + ] + ], + [ + "0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb", + [ [ - "644156421132344", - "3789921580" - ], + "282548680821223", + "19176051379" + ] + ] + ], + [ + "0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f", + [ [ - "644278837940540", - "631861553" - ], + "332106534097640", + "325699631169" + ] + ] + ], + [ + "0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5", + [ [ - "644373889298847", - "3084780492" + "159510980748318", + "69370798116" ], [ - "644415322342082", - "6773000000" - ], + "340408059304271", + "57935578436" + ] + ] + ], + [ + "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d", + [ [ - "647175726076112", - "16711431033" + "859906883476476", + "2259704612" ], [ - "647388734023467", - "9748779666" + "859973554233311", + "3028756367" ], [ - "648110674034173", - "2331841959" + "860324021288753", + "3253278012" ], [ - "648277210832933", - "20187647" - ], + "916943532304574", + "14518741904" + ] + ] + ], + [ + "0x183be3011809A2D41198e528d2b20Cc91b4C9665", + [ [ - "648277231020580", - "5001904811" + "213937858611219", + "791280000" ], [ - "650020393573072", - "1098667202" + "213938649891219", + "27839621824" ], [ - "657971448171764", - "15036330875" - ], + "215796197676279", + "266104007323" + ] + ] + ], + [ + "0x184CbD89E91039E6B1EF94753B3fD41c55e40888", + [ [ - "670156602457239", - "16663047211" - ], + "768598545236540", + "3341098908" + ] + ] + ], + [ + "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", + [ [ - "680095721530457", - "10113856826" + "177625575170087", + "338347529204" ], [ - "706133899990342", - "2720589483246" - ], + "178531672699291", + "206297640000" + ] + ] + ], + [ + "0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE", + [ [ - "720495305315880", - "55569209804" - ], + "278872415587020", + "5337" + ] + ] + ], + [ + "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", + [ [ - "721225229970053", - "55487912201" - ], + "768088349260906", + "329449782" + ] + ] + ], + [ + "0x18D467c40568dE5D1Ca2177f576d589c2504dE73", + [ [ - "721409921103392", - "4415003338706" - ], + "767126479253709", + "5921542512" + ] + ] + ], + [ + "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD", + [ [ - "726480740731617", - "2047412139790" + "258082732262740", + "167225426282" ], [ - "729812277370084", - "5650444595733" - ], + "259604231361612", + "361835231607" + ] + ] + ], + [ + "0x1904e56D521aC77B05270caefB55E18033b9b520", + [ [ - "735554122237517", - "2514215964115" + "141486185118672", + "50461870885" ], [ - "740648921884436", - "39104687507" - ], + "158936502760340", + "149268238078" + ] + ] + ], + [ + "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", + [ [ - "741007335527824", - "48848467587" + "33215450796739", + "221122" ], [ - "741131517296797", - "95195568422" + "167688132852087", + "7229528214" ], [ - "743270084189585", - "44269246366" + "319075687721742", + "251763737525" ], [ - "743356388661755", - "284047664" + "325660782915205", + "87903418092" ], [ - "743356672709419", - "804932236" + "337948671929972", + "30560719176" ], [ - "743357477641655", - "744601051" + "406165758407037", + "20904868241" ], [ - "743358222242706", - "636559806" + "484393115998796", + "25643572670" ], [ - "743358858802512", - "569027210" + "507664641811907", + "72403522735" ], [ - "743359427829722", - "616622839" + "523525792584925", + "42093860151" ], [ - "743360044452561", - "590416341" + "531743475414269", + "42662135276" ], [ - "743360634868902", - "576948243" + "565670483245977", + "18978750000" ], [ - "743361211817145", - "347174290" + "567485763782146", + "9489375000" ], [ - "743361558991435", - "112939223481" + "567697693157146", + "9489375000" ], [ - "743474498214916", - "37245408077" + "570996126104484", + "9489375000" ], [ - "743511743622993", - "27738836042" + "571208055479484", + "9489375000" ], [ - "743539482459035", - "36180207225" + "579663431710697", + "76688553531" ], [ - "743575662666260", - "9251544878" + "589010494454925", + "54681668957" ], [ - "743600698167087", - "4239282" + "606259190037010", + "65298375971" ], [ - "743630495498696", - "25004744107" + "624604559266391", + "39404468562" ], [ - "743655500242803", - "27838968460" + "645423885109546", + "386055000000" ], [ - "743683339211263", - "1045028130" + "647867951570440", + "13807475000" + ] + ] + ], + [ + "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", + [ + [ + "420828345506", + "1377517" ], [ - "743715232207665", - "154091444" + "76028661799786", + "19169818" ], [ - "743715386299109", - "356610619" + "636825631243466", + "17394829" ], [ - "743715742909728", - "792560930" + "649774091964491", + "225355921" ], [ - "743716535470658", - "930442023" + "741725221579960", + "841394646" ], [ - "743717465912681", - "930527887" + "741726881642106", + "1383738266" ], [ - "743718396440568", - "930718264" + "741728265380372", + "1485847896" ], [ - "743719327158832", - "900100878" + "741904037383620", + "10245498" ], [ - "743720227259710", - "886888605" + "741904047629118", + "10465635" ], [ - "743721114148315", - "1195569000" + "741904058094753", + "5645699" ], [ - "743722931420691", - "332343086" + "741941609515479", + "92153878" ], [ - "743723263763777", - "983775747" + "741941701669357", + "92867236" ], [ - "743724247539524", - "409861551" + "741949293105425", + "569000000" ], [ - "743724657401075", - "97298663" + "742042342168349", + "435226" ], [ - "743724754699738", - "86768693" + "742491364647261", + "568300000" ], [ - "743724841468431", - "33509916350" + "742542583035629", + "114364635" ], [ - "743758351384781", - "69774513803" + "742542697400264", + "717824824" ], [ - "743828125898584", - "21981814788" + "742543415225088", + "372130074" ], [ - "743850107713372", - "43182294" + "742543787355162", + "270820" ], [ - "743850150895666", - "37264237" + "742543787625982", + "1418750000" ], [ - "743850188159903", - "247711" + "742545206375982", + "1258079286" ], [ - "743850188407614", - "417946" + "742546464455268", + "549510" ], [ - "743850188825560", - "120504819738" + "742546465004778", + "10795914" ], [ - "743970693645298", - "178855695867" + "742546475800692", + "13800216" ], [ - "744149549341165", - "125886081790" + "742559245319507", + "23574" ], [ - "744819318753537", - "98324836380" + "742559245343081", + "1417000000" ], [ - "759669831627157", - "91465441036" + "743356379364153", + "5992389" ], [ - "759761297451604", - "12346431080" + "743356385356542", + "3305213" ], [ - "759773643882684", - "1557369578" + "743713785812675", + "470214653" ], [ - "759775201252262", - "18264975890" + "743714256027328", + "748372634" ], [ - "759793466228152", - "133677" + "743715004399962", + "227807703" ], [ - "759794285432848", - "26613224094" + "743722309717315", + "620891431" ], [ - "759820979493945", - "70435190" + "743722930608746", + "811945" ], [ - "759821049929135", - "64820367" + "744405511195504", + "26480430" ], [ - "759821114749502", - "315142246" + "744405537675934", + "28404548" ], [ - "759821772251897", - "342469548" + "744405566080482", + "26650792" ], [ - "759822114721445", - "22786793078" + "744732788119609", + "1401250000" ], [ - "759844955449185", - "62362349" + "744762226700609", + "1401250000" ], [ - "759845017811534", - "79862410" + "744763627950609", + "1402000000" ], [ - "759845097673944", - "78350903" + "759761297068193", + "383411" ], [ - "759845176024847", - "81575013" + "759793466361829", + "819071019" ], [ - "759845257599860", - "81611843" + "759820898656942", + "80837003" ], [ - "759845339211703", - "79874694" + "759821429891748", + "342360149" ], [ - "759845419086397", - "79925681" + "759844901514523", + "53934662" ], [ - "759845499012078", - "79231634" + "759845712799584", + "53840934" ], [ - "759845578243712", - "73291169" + "759845970911102", + "87772583" ], [ - "759845651534881", - "61264703" + "759846649887836", + "304771266" ], [ - "759845766640518", - "56977225" + "759848400175498", + "195479514" ], [ - "759845823617743", - "71386527" + "759849907168404", + "16253699" ], [ - "759845895004270", - "75906832" + "759864586657374", + "4116617" ], [ - "759846058683685", - "75729409" + "759864590773991", + "5213812" ], [ - "759846134413094", - "27722926" + "759864595987803", + "5976553" ], [ - "759846162136020", - "30197986" + "759864601964356", + "21553814" ], [ - "759846192334006", - "158241812" + "759864757676067", + "33837399" ], [ - "759846350575818", - "123926293" + "759864791513466", + "2739149" ], [ - "759846474502111", - "124139589" + "759865147227268", + "42017555" ], [ - "759846598641700", - "25193251" + "759865263825653", + "45526410" ], [ - "759846623834951", - "25387540" + "759865449369451", + "53414936" ], [ - "759846649222491", - "665345" + "759865544782499", + "993492" ], [ - "759846954659102", - "631976394" + "759935125236365", + "45905339" ], [ - "759847586635496", - "66958527" + "759940012120851", + "23725468" ], [ - "759847653594023", - "44950580" + "759940393217964", + "38630505" ], [ - "759847698544603", - "46547201" + "759940503415698", + "26325085" ], [ - "759847745091804", - "18839036" + "759940595592986", + "107661120" ], [ - "759847763930840", - "270669443" + "759940800175842", + "40606663" ], [ - "759848034600283", - "365575215" + "759940840782505", + "24689186" ], [ - "759848595655012", - "187295653" + "759940865471691", + "1297000000" ], [ - "759848782950665", - "25295452" + "759942162471691", + "1897738286" ], [ - "759848808246117", - "173058283" + "759944060209977", + "241078908" ], [ - "759848981304400", - "63821133" + "759944450213180", + "36627516" ], [ - "759849045125533", - "25336780" + "759944486840696", + "37991124" ], [ - "759849070462313", - "29081391" + "759944619765922", + "11358356" ], [ - "759849099543704", - "29122172" + "759944631124278", + "51906" ], [ - "759849128665876", - "28706993" + "759944631617600", + "33378" ], [ - "759849157372869", - "13456201" + "759944631650978", + "59927806" ], [ - "759849170829070", - "36511282" + "759944691578784", + "129787486" ], [ - "759849207340352", - "41243780" + "759944821366270", + "25686" ], [ - "759849248584132", - "33852678" + "759944821391956", + "68819" ], [ - "759849282436810", - "33956125" + "759944821460775", + "1560798" ], [ - "759849316392935", - "34132617" + "759944823021573", + "53380815" ], [ - "759849350525552", - "17041223" + "759944963133585", + "87037848" ], [ - "759849367566775", - "20273897" + "759945050171433", + "87607044" ], [ - "759849387840672", - "9037475" + "759945137778477", + "87055460" ], [ - "759849396878147", - "45923781" + "759945224833937", + "12027360" ], [ - "759849442801928", - "52882809" + "759945236898415", + "64214208" ], [ - "759849495684737", - "71491609" + "759945301112623", + "91379524" ], [ - "759849567176346", - "39781360" + "759945392492147", + "42108896" ], [ - "759849606957706", - "35612937" + "759945434601043", + "42970660" ], [ - "759849642570643", - "45789959" + "759945477571703", + "38516379" ], [ - "759849688360602", - "46291324" + "759945516088082", + "36709909" ], [ - "759849734651926", - "46416554" + "759945552797991", + "37022875" ], [ - "759849781068480", - "46480026" + "759945589820866", + "37059712" ], [ - "759849827548506", - "28909947" + "759945626880578", + "37098116" ], [ - "759849856458453", - "20566561" + "759945697126264", + "9283973" ], [ - "759849877025014", - "20612970" + "759945706410237", + "174300" ], [ - "759849897637984", - "9530420" + "759945706584537", + "18717450" ], [ - "759849923422103", - "43423401" + "759945725301987", + "136593205" ], [ - "759849966845504", - "11714877" + "759945861895192", + "6795443" ], [ - "759864364377919", - "13050269" + "759945868690635", + "7586684" ], [ - "759864377428188", - "28949561" + "759945876277319", + "20897127" ], [ - "759864451656441", - "45362892" + "759945897174446", + "20964956" ], [ - "759864497019333", - "45386397" + "759945918139402", + "17764676" ], [ - "759864542405730", - "44251644" + "759945935904078", + "19702291" ], [ - "759864623518170", - "16029726" + "759945955606369", + "17689777" ], [ - "759864639547896", - "27422448" + "759945973296146", + "19315364" ], [ - "759864666970344", - "45324196" + "759945992611510", + "19419665" ], [ - "759864712294540", - "45381527" + "759946012031175", + "19518970" ], [ - "759864794252615", - "45249060" + "759946031550145", + "19798295" ], [ - "759864839501675", - "38552197" + "759946051348440", + "38327918" ], [ - "759864878053872", - "45325980" + "759946089676358", + "1264250000" ], [ - "759864923379852", - "45332668" + "759967002196227", + "1067960" ], [ - "759864968712520", - "14947041" + "759967003264187", + "5797992" ], [ - "759864983659561", - "44411176" + "759967009062179", + "5871934" ], [ - "759865028070737", - "45841550" + "759967014934113", + "20249217" ], [ - "759865073912287", - "37491304" + "759967035183330", + "191466067" ], [ - "759865111403591", - "35823677" + "759967226649397", + "89244217" ], [ - "759865189244823", - "45959807" + "759967432417085", + "84963582" ], [ - "759865235204630", - "28621023" + "759967517380667", + "73240421" ], [ - "759865309352063", - "54352361" + "759967590621088", + "19970712" ], [ - "759865363704424", - "37604905" + "759967610591800", + "40621903" ], [ - "759865401309329", - "48060122" + "759967651213703", + "53101794" ], [ - "759865502784387", - "41998112" + "759967704315497", + "53110612" ], [ - "759865545775991", - "43017774" + "759967757426109", + "53161758" ], [ - "759865588793765", - "45709130" + "759967810587867", + "28296198" ], [ - "759865634502895", - "20672897" + "759967838884065", + "86512793" ], [ - "759865655175792", - "18088532" + "759967925396858", + "87139341" ], [ - "759865673264324", - "176142052" + "759968012536199", + "87943134" ], [ - "759865849406376", - "249729828" + "759968100479333", + "80701850" ], [ - "759866099136204", - "111218297" + "759968181181183", + "34810751" ], [ - "759866210354501", - "27934473" + "759968215991934", + "34868207" ], [ - "759866238288974", - "27468895" + "759968250860141", + "52891473" ], [ - "759866265757869", - "1914618989" + "759968477551165", + "87498268" ], [ - "759868180376858", - "45603693" + "759968622494844", + "84942957" ], [ - "759868225980551", - "45842728" + "759968707437801", + "85247514" ], [ - "759868271823279", - "46014440" + "759968792685315", + "77422809" ], [ - "759868317837719", - "46063229" + "759968870108124", + "79919576" ], [ - "759868363900948", - "2621289" + "759968950027700", + "80148595" ], [ - "759868366522237", - "53709228" + "759969030176295", + "53806658" ], [ - "759868420231465", - "52228978" + "759969083982953", + "11106068" ], [ - "759868472460443", - "66561157603" + "759969095089021", + "754844" ], [ - "759935033618046", - "45751501" + "759969095843865", + "86600675" ], [ - "759935079369547", - "45866818" + "759969268879963", + "44248597" ], [ - "759935171141704", - "45924323" + "759969391981569", + "85630651" ], [ - "759935217066027", - "27091944" + "759969477612220", + "53709030" ], [ - "759935244157971", - "47094028" + "759969531321250", + "88939198" ], [ - "759935291251999", - "4720868852" + "759969620260448", + "178428925" ], [ - "759940035846319", - "79415211" + "759969798689373", + "123574577" ], [ - "759940115261530", - "104887944" + "759970183422288", + "79928309" ], [ - "759940220149474", - "104422502" + "759970263350597", + "63434690" ], [ - "759940324571976", - "47123207" + "759970326785287", + "209399790" ], [ - "759940371695183", - "21522781" + "759970536185077", + "96930960" ], [ - "759940431848469", - "26567259" + "759970633116037", + "23891260" ], [ - "759940458415728", - "28464738" + "759970657007297", + "2958794" ], [ - "759940486880466", - "16535232" + "759970667003745", + "64376093" ], [ - "759940529740783", - "23798092" + "759970731379838", + "64736772" ], [ - "759940553538875", - "22130816" + "759970796116610", + "35583363" ], [ - "759940575669691", - "19923295" + "759970831699973", + "28787919" ], [ - "759940703254106", - "96921736" + "759970860487892", + "19771091" ], [ - "759944301288885", - "148924295" + "759970880258983", + "15686626" ], [ - "759944524831820", - "94934102" + "759970984286242", + "87374833" ], [ - "759944631176184", - "441416" + "759971071661075", + "100272607" ], [ - "759944876402388", - "86731197" + "759971275765356", + "104013769" ], [ - "759945236861297", - "37118" + "759971379779125", + "104148749" ], [ - "759945663978694", - "33147570" + "759971483927874", + "104457385" ], [ - "759947353926358", - "19648269869" + "759971588385259", + "39466456" ], [ - "759967315893614", - "43342636" + "759971627851715", + "54459743" ], [ - "759967359236250", - "73180835" + "759971682311458", + "54613470" ], [ - "759968303751614", - "86480048" + "759971736924928", + "55455079" ], [ - "759968390231662", - "87319503" + "759972161919679", + "54726591" ], [ - "759968565049433", - "57445411" + "759972216646270", + "53864309" ], [ - "759969182444540", - "86435423" + "760353418325910", + "21307875" ], [ - "759969313128560", - "78853009" + "760353439633785", + "2581143" ], [ - "759969922263950", - "86993082" + "760353442214928", + "935137" ], [ - "759970009257032", - "87071115" + "760353443150065", + "890707" ], [ - "759970096328147", - "87094141" + "760353444040772", + "934897" ], [ - "759970659966091", - "7037654" + "760353444975669", + "1008171" ], [ - "759970895945609", - "88340633" + "760353445983840", + "940412" ], [ - "759971171933682", - "103831674" + "760353446924252", + "444260593" ], [ - "759971792380007", - "55918771" + "760353891184845", + "18018938" ], [ - "759971848298778", - "51663688" + "760353909203783", + "53690506" ], [ - "759971899962466", - "51820149" + "760353962894289", + "22923031" ], [ - "759971951782615", - "53263163" + "760353985817320", + "21080639" ], [ - "759972005045778", - "46273362" + "760354006897959", + "19195962" ], [ - "759972051319140", - "11764053" + "760354026093921", + "45460514" ], [ - "759972063083193", - "44521152" + "760354071554435", + "45612372" ], [ - "759972107604345", - "54315334" + "760354117166807", + "36974408" ], [ - "759972270510579", - "52771216" + "760354154141215", + "19923401" ], [ - "759972378810991", - "53615733" + "760354174064616", + "17275264" ], [ - "759972432426724", - "54009683" + "760354191339880", + "696496" ], [ - "759972545991397", - "40392605" + "760354192036376", + "1303460" ], [ - "759972586384002", - "40570272" + "760354193339836", + "2298346" ], [ - "759972626954274", - "29991995" + "760354195638182", + "2606436" ], [ - "759972656946269", - "27715408" + "760354204355953", + "470384" ], [ - "759972684661677", - "10745158" + "760354204826337", + "11175759" ], [ - "759972695406835", - "53647337" + "760354216002096", + "11300466" ], [ - "759973067945793", - "43509245" + "760354227302562", + "11536310" ], [ - "760353358762258", - "10893874" + "760357512160486", + "53864562" ], [ - "760353369656132", - "992291" + "760357566025048", + "53933512" ], [ - "760353370648423", - "136316" + "760357619958560", + "53946887" ], [ - "760353370784739", - "147677" + "760357673905447", + "54141970" ], [ - "760353371573213", - "659890" + "760357728047417", + "69340215" ], [ - "760353372233103", - "46092807" + "760357797387632", + "70550823" ], [ - "760354201137939", - "3218014" + "760357867938455", + "70867493" ], [ - "760354238838872", - "3273321614" + "760357938805948", + "24481635" ], [ - "760357963287583", - "52520804" + "760358015808387", + "53846437" ], [ - "760358123735957", - "112541922486" + "760358069654824", + "54081133" ], [ - "760472183068657", - "71399999953" + "760470665658443", + "785942" ], [ - "760765586953427", - "195667368889" + "760470666444385", + "1144304" ], [ - "760961254322316", - "846285958415" + "760470667588689", + "1310135" ], [ - "761807542325030", - "712321671" + "761807540280731", + "160545" ], [ - "761808255104338", - "10685317968" + "761807540441276", + "429708" ], [ - "761818941407193", - "38669865140" + "761807540870984", + "618377" ], [ - "761858011206868", - "52031027" + "761807541489361", + "835669" ], [ - "761858211139284", - "53537634" + "761808254646701", + "457637" ], [ - "761858291968910", - "1954482199" + "761818940422306", + "984887" ], [ - "761860307483525", - "798157403" + "761857611272333", + "28944037" ], [ - "762237672060652", - "57392002182" + "761857640216370", + "22956002" ], [ - "762295918132248", - "68617976" + "761857663172372", + "23015051" ], [ - "762295986750224", - "181183510038" + "761857686187423", + "17079412" ], [ - "762477170260262", - "181104817321" + "761857703266835", + "34787792" ], [ - "762658275077583", - "181134595436" + "761857738054627", + "13476875" ], [ - "762928154263486", - "12718343972" + "761857751531502", + "13484900" ], [ - "762941373378458", - "61742453" + "761857765016402", + "27660968" ], [ - "762941584284511", - "53571451" + "761857792677370", + "43935728" ], [ - "762941637855962", - "53583667" + "761857836613098", + "53726319" ], [ - "762941691439629", - "503128696018" + "761857890339417", + "31567337" ], [ - "763444820135647", - "9452272123" + "761857921906754", + "19442054" ], [ - "763454275602361", - "24685659026" + "761857941348808", + "27655195" ], [ - "763478961261387", - "50245820668" + "761857969004003", + "27685781" ], [ - "763529207082055", - "45323986837" + "761857996689784", + "14517084" ], [ - "763574531068892", - "38976282600" + "761861153261453", + "17618940" ], [ - "763877196713494", - "54224527" + "761861170880393", + "52708112" ], [ - "763877250938021", - "54871543" + "761861223588505", + "1133750000" ], [ - "763877347112986", - "53640521" + "762295064062834", + "111320920" ], [ - "763879425886186", - "18918512681" + "762295175383754", + "53936630" ], [ - "763899542751244", - "4287074277" + "762295229320384", + "54010885" ], [ - "763904856308950", - "91042132" + "762295283331269", + "54033702" ], [ - "763904947351082", - "3672111531" + "762295337364971", + "54054047" ], [ - "763908632298791", - "1924103043" + "762295391419018", + "54159010" ], [ - "763910715862653", - "4104368630" + "762295445578028", + "53483677" ], [ - "763938664793385", - "889781905" + "762295580014262", + "86989838" ], [ - "763975977681622", - "85746574" + "762295667004100", + "29618432" ], [ - "763976127391221", - "54879926" + "762295696622532", + "53514750" ], [ - "763976238932410", - "67220754" + "762295750137282", + "79440408" ], [ - "763978572723857", - "2432585925" + "762295829577690", + "88554558" ], [ - "763983475557042", - "2433575022" + "762839409673019", + "1124000000" ], [ - "763985961279749", - "3362361779" + "762926916547751", + "98431377" ], [ - "763989323641528", - "66961666112" + "762927014979128", + "15784358" ], [ - "764117220398714", - "5082059700" + "762927030763486", + "1123500000" ], [ - "764448523798789", - "9214910" + "762940872607458", + "54177313" ], [ - "764448533013699", - "3175483736" + "762940926784771", + "55156263" ], [ - "764453314028098", - "886719471" + "762941003155084", + "52319596" ], [ - "766181126764911", - "110330114890" + "762941055474680", + "156457506" ], [ - "766291456879801", - "143444348214" + "762941211932186", + "53517184" ], [ - "767321251748842", - "180967833670" + "762941265449370", + "53566454" ], [ - "767502220600152", - "229602422" + "762941319015824", + "54362634" ], [ - "767507188351307", - "3345435335" + "762941435120911", + "100238373" ], [ - "767578297685072", - "595189970" + "762941535359284", + "2889658" ], [ - "767807852820920", - "5000266651" + "762941538248942", + "46035569" ], [ - "767824420446983", - "1158445599" + "763454272407770", + "3194591" ], [ - "767978192014986", - "1606680000" + "763707900610993", + "1115750000" ], [ - "767989215426960", - "14606754787" + "763792492493475", + "1116000000" ], [ - "768072180047322", - "2519675802" + "763803297529274", + "53478200" ], [ - "768418957212524", - "52886516686" + "763803351007474", + "54572785" ], [ - "771127544359367", - "12764830824" + "763876749529752", + "46564085" ], [ - "786826869494538", - "44336089227" + "763876796093837", + "53551433" ], [ - "790591093043508", - "71074869547" + "763876849645270", + "37834720" ], [ - "790662167913055", - "60917382823" + "763876887479990", + "390583" ], [ - "792657494145217", - "11153713894" + "763876887870573", + "55102196" ], [ - "845186146706783", - "62659298764" + "763876942972769", + "1578152" ], [ - "868345234814461", - "178880088846" + "763876946822805", + "18853190" ], [ - "869175887842680", - "80331618390" + "763876965675995", + "87811" ], [ - "869256219461070", - "87734515234" + "763876965763806", + "46267543" ], [ - "900352767003453", - "187169856894" + "763877012031349", + "59141147" ], [ - "912339955462822", - "95736000000" + "763877089726413", + "53473182" ], [ - "917463394063277", - "359610000000" - ] - ] - ], - [ - "0x11b197e2C61c2959Ae84bC7f9db8E3fEFe511043", - [ - [ - "361234476058040", - "2406000000" - ] - ] - ], - [ - "0x11C90869aC2a2Dde39B5DafeDc6C7fF48A8fDaE0", - [ - [ - "267806966956864", - "18402625318" - ] - ] - ], - [ - "0x11D86e9F9C2a1cF597b974E50C660316c92215AA", - [ - [ - "574157923216400", - "18405369858" - ] - ] - ], - [ - "0x11F3BAcAa1e4DEeB728A1c37f99694A8e026cF7D", - [ - [ - "190956833027662", - "37217588263" + "763877143199595", + "53513899" ], [ - "632405487158023", - "1362130095" + "763877305809564", + "9728992" ], [ - "634781609311398", - "796726164" - ] - ] - ], - [ - "0x120Be1406E6B46dDD7878EDC06069C811f608844", - [ - [ - "495258518671796", - "67814142769" + "763877315538556", + "28373" ], [ - "585014816613448", - "44928801374" - ] - ] - ], - [ - "0x122de1514670141D4c22e5675010B6D65386a9F6", - [ - [ - "633445875835283", - "88383049000" + "763877315566929", + "65545" ], [ - "634054370395803", - "5577741477" + "763877315632474", + "92711" ], [ - "634067673151832", - "56964081161" + "763877315725185", + "105827" ], [ - "634208127647444", - "49547619666" + "763877315831012", + "153650" ], [ - "648313723414461", - "6009716700" + "763877315984662", + "11924506" ], [ - "668314224811239", - "15374981070" + "763877327909168", + "19203818" ], [ - "675086678410802", - "69815285464" + "763877454434453", + "2130383" ], [ - "677494138932275", - "17365876628" + "763877456564836", + "43889485" ], [ - "679748272866001", - "2338515960" + "763877500454321", + "53637818" ], [ - "742201769028015", - "48039789791" - ] - ] - ], - [ - "0x1247Bb29f781A5a88A2c0a6D2F8271b43037c03b", - [ - [ - "582532990593085", - "9392558210" - ] - ] - ], - [ - "0x12849Ec7cB1a7B29FAFD3E16Dc5159b2F5D67303", - [ - [ - "59999867425096", - "354422482014" - ] - ] - ], - [ - "0x1298751f99f2f715178Cc58fB3779C55e91C26bC", - [ - [ - "648537251637637", - "31971947" - ] - ] - ], - [ - "0x12b1c89124aF9B720C1e3E8e31492d66662bf040", - [ - [ - "681678394686893", - "7527748761" + "763877554092139", + "4992987" ], [ - "742249933817806", - "375414" - ] - ] - ], - [ - "0x12B9D75389409d119Dd9a96DF1D41092204e8f32", - [ - [ - "31566901757266", - "11663342444" - ] - ] - ], - [ - "0x12C5EAcf06d71E7a13127E98CCb515b6B3c5f186", - [ - [ - "564785303930728", - "1165879450" - ] - ] - ], - [ - "0x12f1412fECBf2767D10031f01D772d618594Ea28", - [ - [ - "406186663275278", - "1685616675" + "763877559085126", + "78649" ], [ - "406188348891953", - "1685577968" + "763877561341934", + "53679679" ], [ - "452060678873257", - "27897692308" - ] - ] - ], - [ - "0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5", - [ - [ - "586069294420889", - "40303600000" - ] - ] - ], - [ - "0x1348EA8E35236AA0769b91ae291e7291117bf15C", - [ - [ - "489737823532", - "616643076" - ] - ] - ], - [ - "0x136e6F25117aF5e5ff5d353dC41A0e91F013D461", - [ - [ - "143944826482554", - "122522870889" - ] - ] - ], - [ - "0x13b1ddb38c80327257Bdcb0e321c834401399967", - [ - [ - "644382876705008", - "2502367588" - ] - ] - ], - [ - "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", - [ - [ - "145498413266148", - "42841247573" + "763877615021613", + "53699711" ], [ - "145541254513721", - "42783848059" - ] - ] - ], - [ - "0x144E8fe2e2052b7b6556790a06f001B56Ba033b3", - [ - [ - "61084721727512", - "2500000000" - ] - ] - ], - [ - "0x1477bBCE213F0b37b05E3Ba0238f45d658d9f8B1", - [ - [ - "624243091995454", - "203615000" + "763877668721324", + "2881442" ], [ - "634772027987253", - "1040000000" + "763877671602766", + "43770152" ], [ - "646732029674264", - "2437432840" + "763877715372918", + "60410828" ], [ - "672251516338595", - "2387375166" + "763877775783746", + "36230820" ], [ - "672351094760624", - "421577971" + "763877812014566", + "71702191" ], [ - "681986234524446", - "291165686" + "763879378249844", + "7153056" ], [ - "738155444487185", - "20323399607" + "763879385402900", + "7227368" ], [ - "760471037973169", - "1145095488" + "763879392630268", + "11477736" ], [ - "840552181305501", - "1108572912315" - ] - ] - ], - [ - "0x149B334Bed3fc1d615937B6C8cBfAD73c4DEDA3b", - [ - [ - "158530779405767", - "1610099875" - ] - ] - ], - [ - "0x14A9034C185f04a82FdB93926787f713024c1d04", - [ - [ - "859976582989678", - "122609442232" - ] - ] - ], - [ - "0x14b5B30014D11daA4b0dba48eC56AD2f1dF7a9ED", - [ - [ - "335857741482697", - "3482540346" + "763879404108004", + "10660055" ], [ - "335861224023043", - "3782897627" - ] - ] - ], - [ - "0x14F78BdCcCD12c4f963bd0457212B3517f974b2b", - [ - [ - "782454543582055", - "64162381017" + "763879414768059", + "11118127" ], [ - "828593773626551", - "157785618045" - ] - ] - ], - [ - "0x14FC66BeBdBe500D1ee86FA3cBDc4d201E644248", - [ - [ - "41353532120650", - "16752841008" + "763898344398867", + "63786254" ], [ - "41372978028598", - "66903217" + "763898408185121", + "64002031" ], [ - "264270149653239", - "19569741057" - ] - ] - ], - [ - "0x1525797dc406CcaCC8C044beCA3611882d5Bbd53", - [ - [ - "489713229332", - "24594200" + "763898506920948", + "861786" ], [ - "33226393240138", - "903943566" + "763898507782734", + "10162644" ], [ - "798286961231309", - "8915991349" - ] - ] - ], - [ - "0x15348Ef83CC7DDE3B8659AB946Cd5a31C9F63573", - [ - [ - "646991286880723", - "18" - ] - ] - ], - [ - "0x15390A3C98fa5Ba602F1B428bC21A3059362AFAF", - [ - [ - "611728295781189", - "10622053659968" + "763899495538368", + "9243915" ], [ - "623644302297490", - "529063312964" - ] - ] - ], - [ - "0x15682A522C149029F90108e2792A114E94AB4187", - [ - [ - "201115507781971", - "9954888600" + "763899504782283", + "37968961" ], [ - "201125462670571", - "20006708080" - ] - ] - ], - [ - "0x15884aBb6c5a8908294f25eDf22B723bAB36934F", - [ + "763904604592937", + "29092593" + ], [ - "12908130692247", - "69000000000" + "763904633685530", + "17984979" ], [ - "27663859276277", - "11430287315" + "763904651670509", + "18018550" ], [ - "151982845144538", - "102043966209" + "763904669689059", + "18842007" ], [ - "202189968549333", - "109329481723" + "763904688531066", + "16688868" ], [ - "216890054194355", - "109550000000" + "763904705219934", + "15727180" ], [ - "221296963314728", - "303606880000" + "763904720947114", + "15825494" ], [ - "223966850287188", - "215672515793" + "763904736772608", + "17883715" ], [ - "250110190299545", - "136745811108" + "763904754656323", + "12528228" ], [ - "259103817552461", - "213600000000" + "763904767184551", + "1918749" ], [ - "326600447749933", - "56701527977" + "763904769103300", + "10530035" ], [ - "331820011408947", - "77550000000" + "763904779633335", + "10728257" ], [ - "337312629850712", - "524000000000" + "763904790361592", + "4605084" ], [ - "532596882341520", - "74008715512" + "763904794966676", + "8970126" ], [ - "550767344271171", - "154323271198" + "763910595276884", + "8829644" ], [ - "550963442752539", - "77710549315" + "763910604106528", + "3311197" ], [ - "551147545041854", - "77448372715" + "763910607417725", + "12163802" ], [ - "580467264306437", - "385627368167" + "763910619581527", + "12428237" ], [ - "588844255968994", - "7190333320" + "763910632009764", + "10056575" ], [ - "588851446302314", - "24416902119" + "763910642066339", + "73796314" ], [ - "591553190653012", - "192654267895" + "763938649705538", + "15087847" ], [ - "643053831916029", - "6077435843" + "763944448544389", + "15498278" ], [ - "643671783551535", - "6908969226" + "763944464042667", + "24830243" ], [ - "643678692520761", - "6721846521" + "763944488872910", + "24944523" ], [ - "643685414367282", - "9539096044" - ] - ] - ], - [ - "0x15cdD0c3D5650A2FE14D5d1a85F6B1123b81A2DB", - [ - [ - "272758111777231", - "10810000000" - ] - ] - ], - [ - "0x15E0fd12e6Fb476Dc4A1EAFF3e02b572A6Ba6C21", - [ - [ - "227831611065108", - "45528525078" - ] - ] - ], - [ - "0x15e6e23b97D513ac117807bb88366f00fE6d6e17", - [ - [ - "498236313145011", - "437186238884" + "763953533706671", + "11007680" ], [ - "521083859244841", - "1766705104317" + "763953544714351", + "11282748" ], [ - "530421557497402", - "35719340050" + "763953555997099", + "11335662" ], [ - "530478666236974", - "125209382874" - ] - ] - ], - [ - "0x15e83602FDE900DdDdafC07bB67E18F64437b21e", - [ - [ - "264704722565446", - "47834854016" - ] - ] - ], - [ - "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", - [ - [ - "72575956226539", - "357542100000" + "763953567332761", + "11465066" ], [ - "89241731539000", - "1175500000023" + "763953578797827", + "11935751" ], [ - "365422620670212", - "1865083098796" + "763953590733578", + "12877546" ], [ - "389039821567282", - "1434547698166" + "763953603611124", + "12886748" ], [ - "605868357905297", - "390832131713" + "763953616497872", + "7982235" ], [ - "748316175461834", - "2915005876762" - ] - ] - ], - [ - "0x166bFBb7ECF7f70454950AE18f02a149d8d4B7cE", - [ - [ - "109546800679552", - "200302309" + "763953624480107", + "9765854" ], [ - "635843453941744", - "920876600" + "763953634245961", + "9797075" ], [ - "635887570024580", - "8122037505" + "763953644043036", + "1044500000" ], [ - "646819721059395", - "4169534646" + "763975806959978", + "85094056" ], [ - "705891222986739", - "622068" + "763975892054034", + "85627588" ], [ - "767503022441087", - "48133673" - ] - ] - ], - [ - "0x16785ca8422Cb4008CB9792fcD756ADbEe42878E", - [ - [ - "267302406877711", - "20209787690" - ] - ] - ], - [ - "0x168c6aC0268a29c3C0645917a4510ccd73F4D923", - [ - [ - "672650193633312", - "29376243060" - ] - ] - ], - [ - "0x16942d62E8ad78A9026E41Fab484C265FC90b228", - [ - [ - "160756595271818", - "3293294269" - ] - ] - ], - [ - "0x16b5e68f83684740b2DA481DB60EAb42362884b9", - [ - [ - "267337779284239", - "10134945528" - ] - ] - ], - [ - "0x17536a82E8721E8DC61Ab12a08c4BfE3fd7fD2C7", - [ - [ - "222734022200750", - "13846186217" + "763977822667370", + "3016979" ], [ - "223632980545856", - "53707306278" + "763977825684349", + "3091465" ], [ - "261159862360092", - "767049891172" + "763977828775814", + "557388194" ], [ - "274482355441400", - "3457786919155" - ] - ] - ], - [ - "0x17a9341a60EF47E861ea53E58e41250Fc9B55DFb", - [ - [ - "282548680821223", - "19176051379" - ] - ] - ], - [ - "0x17c41659Cbd3C2e18aC15D8278c937464Da45f8f", - [ - [ - "332106534097640", - "325699631169" - ] - ] - ], - [ - "0x17FA401eBAd908CC02bd2Cb2DC37A71c872B47e5", - [ - [ - "159510980748318", - "69370798116" + "763978386164008", + "8620088" ], [ - "340408059304271", - "57935578436" - ] - ] - ], - [ - "0x182f038B5b8FD9d9De5d616c9d85Fd9fba2A625d", - [ - [ - "859906883476476", - "2259704612" + "763978394784096", + "29342107" ], [ - "859973554233311", - "3028756367" + "763978424126203", + "9543362" ], [ - "860324021288753", - "3253278012" + "763978433669565", + "9611296" ], [ - "916943532304574", - "14518741904" - ] - ] - ], - [ - "0x183be3011809A2D41198e528d2b20Cc91b4C9665", - [ - [ - "213937858611219", - "791280000" + "763978443280861", + "9636433" ], [ - "213938649891219", - "27839621824" + "763978452917294", + "8046683" ], [ - "215796197676279", - "266104007323" - ] - ] - ], - [ - "0x184CbD89E91039E6B1EF94753B3fD41c55e40888", - [ - [ - "768598545236540", - "3341098908" - ] - ] - ], - [ - "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", - [ - [ - "177625575170087", - "338347529204" + "763978460963977", + "10828154" ], [ - "178531672699291", - "206297640000" - ] - ] - ], - [ - "0x18Ad8A3387aAc16C794F3b14451C591FeF0344fE", - [ - [ - "278872415587020", - "5337" - ] - ] - ], - [ - "0x18C6A47AcA1c6a237e53eD2fc3a8fB392c97169b", - [ - [ - "768088349260906", - "329449782" - ] - ] - ], - [ - "0x18D467c40568dE5D1Ca2177f576d589c2504dE73", - [ - [ - "767126479253709", - "5921542512" - ] - ] - ], - [ - "0x18E50551445F051970202E2b37Ac1F0cF7dD6ADD", - [ - [ - "258082732262740", - "167225426282" + "763978471792131", + "7543534" ], [ - "259604231361612", - "361835231607" - ] - ] - ], - [ - "0x18ED928719A8951729fBD4dbf617B7968D940c7B", - [ - [ - "371379048315869", - "1015130348413" + "763978479335665", + "4689652" ], [ - "375266078664282", - "1033269065963" - ] - ] - ], - [ - "0x1904e56D521aC77B05270caefB55E18033b9b520", - [ - [ - "141486185118672", - "50461870885" + "763978484025317", + "12897667" ], [ - "158936502760340", - "149268238078" - ] - ] - ], - [ - "0x19831b174e9deAbF9E4B355AadFD157F09E2af1F", - [ - [ - "33215450796739", - "221122" + "763978496922984", + "8815547" ], [ - "167688132852087", - "7229528214" + "763978514586346", + "9143544" ], [ - "319075687721742", - "251763737525" + "763978523729890", + "9413342" ], [ - "325660782915205", - "87903418092" + "763978533143232", + "9416885" ], [ - "337948671929972", - "30560719176" + "763978542560117", + "10373808" ], [ - "406165758407037", - "20904868241" + "763978552933925", + "19789932" ], [ - "484393115998796", - "25643572670" + "763981005309782", + "8883084" ], [ - "507664641811907", - "72403522735" + "763981014192866", + "8984999" ], [ - "523525792584925", - "42093860151" + "763981023177865", + "9076772" ], [ - "531743475414269", - "42662135276" + "763983162727275", + "10372838" ], [ - "565670483245977", - "18978750000" + "763983173100113", + "901279" ], [ - "567485763782146", - "9489375000" + "763983174001392", + "11304378" ], [ - "567697693157146", - "9489375000" + "763983185305770", + "11337518" ], [ - "570996126104484", - "9489375000" + "763983207512362", + "9837030" ], [ - "571208055479484", - "9489375000" + "763983217349392", + "1100829" ], [ - "579663431710697", - "76688553531" + "763983218450221", + "66658" ], [ - "589010494454925", - "54681668957" + "763983218516879", + "73073" ], [ - "606259190037010", - "65298375971" + "763983218589952", + "414078" ], [ - "624604559266391", - "39404468562" + "763983219004030", + "16583629" ], [ - "645423885109546", - "386055000000" + "763983235587659", + "75873" ], [ - "647867951570440", - "13807475000" - ] - ] - ], - [ - "0x19A4FE7D0C76490ccA77b45580846CDB38B9A406", - [ - [ - "420828345506", - "1377517" + "763983235663532", + "104758" ], [ - "76028661799786", - "19169818" + "763983235768290", + "319760" ], [ - "636825631243466", - "17394829" + "763983236088050", + "347778" ], [ - "649774091964491", - "225355921" + "763983305487564", + "10457152" ], [ - "741725221579960", - "841394646" + "763983315944716", + "10556364" ], [ - "741726881642106", - "1383738266" + "763983326501080", + "8290697" ], [ - "741728265380372", - "1485847896" + "763983334791777", + "5644455" ], [ - "741904037383620", - "10245498" + "763983340436232", + "7945168" ], [ - "741904047629118", - "10465635" + "763983348381400", + "13385894" ], [ - "741904058094753", - "5645699" + "763983361767294", + "45138194" ], [ - "741941609515479", - "92153878" + "763983406905488", + "1866587" ], [ - "741941701669357", - "92867236" + "763983408772075", + "9980195" ], [ - "741949293105425", - "569000000" + "763983418752270", + "5750227" ], [ - "742042342168349", - "435226" + "763983424502497", + "9795651" ], [ - "742491364647261", - "568300000" + "763983444147323", + "10906649" ], [ - "742542583035629", - "114364635" + "763983455053972", + "11996728" ], [ - "742542697400264", - "717824824" + "763983467050700", + "8506342" ], [ - "742543415225088", - "372130074" + "763985928672040", + "10937512" ], [ - "742543787355162", - "270820" + "763985939609552", + "11006773" ], [ - "742543787625982", - "1418750000" + "763985950616325", + "328433" ], [ - "742545206375982", - "1258079286" + "763985950944758", + "10334991" ], [ - "742546464455268", - "549510" + "764056285307640", + "9063092" ], [ - "742546465004778", - "10795914" + "764056313282603", + "12814935" ], [ - "742546475800692", - "13800216" + "764056326097538", + "13040915" ], [ - "742559245319507", - "23574" + "764056855356215", + "8019575" ], [ - "742559245343081", - "1417000000" + "764056863375790", + "12804398" ], [ - "743356379364153", - "5992389" + "764056876180188", + "14241010" ], [ - "743356385356542", - "3305213" + "764056890421198", + "10969416" ], [ - "743713785812675", - "470214653" + "764056901390614", + "2177420" ], [ - "743714256027328", - "748372634" + "764056903568034", + "9204085" ], [ - "743715004399962", - "227807703" + "764056912772119", + "9213207" ], [ - "743722309717315", - "620891431" + "764058367111510", + "11163969" ], [ - "743722930608746", - "811945" + "764058378275479", + "11300738" ], [ - "744405511195504", - "26480430" + "764058389576217", + "5496270" ], [ - "744405537675934", - "28404548" + "764058395072487", + "361195" ], [ - "744405566080482", - "26650792" + "764058395433682", + "772104" ], [ - "744732788119609", - "1401250000" + "764058396205786", + "696608867" ], [ - "744762226700609", - "1401250000" + "764059092814653", + "9050379" ], [ - "744763627950609", - "1402000000" + "764059101865032", + "4195172" ], [ - "759761297068193", - "383411" + "764059106060204", + "11535858" ], [ - "759793466361829", - "819071019" + "764059117596062", + "255180" ], [ - "759820898656942", - "80837003" + "764059117851242", + "8969278" ], [ - "759821429891748", - "342360149" + "764059126820520", + "9303793" ], [ - "759844901514523", - "53934662" + "764059136124313", + "9999166" ], [ - "759845712799584", - "53840934" + "764059146123479", + "10009538" ], [ - "759845970911102", - "87772583" + "764059156133017", + "1216684" ], [ - "759846649887836", - "304771266" + "764059157349701", + "33393007" ], [ - "759848400175498", - "195479514" + "764059190742708", + "735377" ], [ - "759849907168404", - "16253699" + "764059191478085", + "10266010" ], [ - "759864586657374", - "4116617" + "764060081853851", + "8204048" ], [ - "759864590773991", - "5213812" + "764060090057899", + "9732642" ], [ - "759864595987803", - "5976553" + "764060099790541", + "10150423" ], [ - "759864601964356", - "21553814" + "764100306041728", + "17982514" ], [ - "759864757676067", - "33837399" + "764100324024242", + "18573856" ], [ - "759864791513466", - "2739149" + "764111950239427", + "944000000" ], [ - "759865147227268", - "42017555" + "764113461776720", + "6235875" ], [ - "759865263825653", - "45526410" + "764113468012595", + "8992681" ], [ - "759865449369451", - "53414936" + "764113477005276", + "943500000" ], [ - "759865544782499", - "993492" + "764114420505276", + "943500000" ], [ - "759935125236365", - "45905339" + "764115364005276", + "35299689" ], [ - "759940012120851", - "23725468" + "764115399304965", + "6707115" ], [ - "759940393217964", - "38630505" + "764115406012080", + "10253563" ], [ - "759940503415698", - "26325085" + "764115416265643", + "52697117" ], [ - "759940595592986", - "107661120" + "764115468962760", + "940750000" ], [ - "759940800175842", - "40606663" + "764331262748162", + "945750000" ], [ - "759940840782505", - "24689186" + "764438000829295", + "946000000" ], [ - "759940865471691", - "1297000000" + "764451708497435", + "10007361" ], [ - "759942162471691", - "1897738286" + "764451718504796", + "10260665" ], [ - "759944060209977", - "241078908" + "764451728765461", + "10443811" ], [ - "759944450213180", - "36627516" + "764451739209272", + "10884086" ], [ - "759944486840696", - "37991124" + "764451750093358", + "895341231" ], [ - "759944619765922", - "11358356" + "764452645434589", + "3190831" ], [ - "759944631124278", - "51906" + "764452656731669", + "8125848" ], [ - "759944631617600", - "33378" + "764452664857517", + "8140742" ], [ - "759944631650978", - "59927806" + "764452672998259", + "8207851" ], [ - "759944691578784", - "129787486" + "764452681206110", + "5437824" ], [ - "759944821366270", - "25686" + "764452686643934", + "1634581" ], [ - "759944821391956", - "68819" + "764452688278515", + "30412" ], [ - "759944821460775", - "1560798" + "764452688308927", + "6680863" ], [ - "759944823021573", - "53380815" + "764452694989790", + "1390995" ], [ - "759944963133585", - "87037848" + "764452696380785", + "6703924" ], [ - "759945050171433", - "87607044" + "764452703084709", + "4836310" ], [ - "759945137778477", - "87055460" + "764452707921019", + "2347531" ], [ - "759945224833937", - "12027360" + "764452710268550", + "2444950" ], [ - "759945236898415", - "64214208" + "764452712713500", + "2595517" ], [ - "759945301112623", - "91379524" + "764452715309017", + "5693285" ], [ - "759945392492147", - "42108896" + "764452721002302", + "7659096" ], [ - "759945434601043", - "42970660" + "764452735085521", + "1617109" ], [ - "759945477571703", - "38516379" + "764452736702630", + "901875" ], [ - "759945516088082", - "36709909" + "764452737604505", + "8786495" ], [ - "759945552797991", - "37022875" + "764452746391000", + "8796994" ], [ - "759945589820866", - "37059712" + "764452755187994", + "483474928" ], [ - "759945626880578", - "37098116" + "764453238662922", + "9945879" ], [ - "759945697126264", - "9283973" + "764453248608801", + "9384752" ], [ - "759945706410237", - "174300" + "764453257993553", + "18030442" ], [ - "759945706584537", - "18717450" + "764453276023995", + "18998861" ], [ - "759945725301987", - "136593205" + "764453295022856", + "19005242" ], [ - "759945861895192", - "6795443" + "764454200747569", + "8013962" ], [ - "759945868690635", - "7586684" + "764454208761531", + "344483" ], [ - "759945876277319", - "20897127" + "764454209106014", + "3844352" ], [ - "759945897174446", - "20964956" + "764454213921411", + "8933515" ], [ - "759945918139402", - "17764676" + "764454222854926", + "9498746" ], [ - "759945935904078", - "19702291" + "764454232353672", + "9503988" ], [ - "759945955606369", - "17689777" + "764454241857660", + "10385991" ], [ - "759945973296146", - "19315364" + "764454252243651", + "10467439" ], [ - "759945992611510", - "19419665" + "764454262711090", + "9988705" ], [ - "759946012031175", - "19518970" + "764454272699795", + "8980636" ], [ - "759946031550145", - "19798295" + "764454281680431", + "9308598" ], [ - "759946051348440", - "38327918" + "764454290989029", + "9335269" ], [ - "759946089676358", - "1264250000" + "764454300324298", + "7550863" ], [ - "759967002196227", - "1067960" + "764454307875161", + "4906079" ], [ - "759967003264187", - "5797992" + "764454312781240", + "8991244" ], [ - "759967009062179", - "5871934" + "764454321772484", + "12424176" ], [ - "759967014934113", - "20249217" + "764454334196660", + "4683059" ], [ - "759967035183330", - "191466067" + "764454338879719", + "808524" ], [ - "759967226649397", - "89244217" + "764454339688243", + "16696896" ], [ - "759967432417085", - "84963582" + "764454356385139", + "188453" ], [ - "759967517380667", - "73240421" + "764454356573592", + "244246" ], [ - "759967590621088", - "19970712" + "764454356817838", + "399227" ], [ - "759967610591800", - "40621903" + "764454357217065", + "428167" ], [ - "759967651213703", - "53101794" + "764454357645232", + "436981" ], [ - "759967704315497", - "53110612" + "764454358082213", + "492999" ], [ - "759967757426109", - "53161758" + "764454358575212", + "591362" ], [ - "759967810587867", - "28296198" + "764457158712640", + "9556834" ], [ - "759967838884065", - "86512793" + "766112773148016", + "905500000" ], [ - "759967925396858", - "87139341" + "767983184669679", + "52737476" ], [ - "759968012536199", - "87943134" + "767983237407155", + "53575704" ], [ - "759968100479333", - "80701850" + "767983290982859", + "53768852" ], [ - "759968181181183", - "34810751" + "767983344751711", + "55352725" ], [ - "759968215991934", - "34868207" + "767983400104436", + "47061647" ], [ - "759968250860141", - "52891473" + "767983447166083", + "1110500000" ], [ - "759968477551165", - "87498268" + "767984557666083", + "88333125" ], [ - "759968622494844", - "84942957" + "767984645999208", + "129427752" ], [ - "759968707437801", - "85247514" + "768003822182998", + "1121250000" ], [ - "759968792685315", - "77422809" + "768004943433356", + "78186024" ], [ - "759968870108124", - "79919576" + "768005021619380", + "54621494" ], [ - "759968950027700", - "80148595" + "768005076240874", + "65591706" ], [ - "759969030176295", - "53806658" + "768005141832580", + "81397820" ], [ - "759969083982953", - "11106068" + "768005223230400", + "89638206" ], [ - "759969095089021", - "754844" + "768005312868606", + "88216460" ], [ - "759969095843865", - "86600675" + "768005401085066", + "85936196" ], [ - "759969268879963", - "44248597" + "768005487021262", + "88956801" ], [ - "759969391981569", - "85630651" + "768006108101322", + "88031169" ], [ - "759969477612220", - "53709030" + "768006196132491", + "88045520" ], [ - "759969531321250", - "88939198" + "768006284178011", + "88084070" ], [ - "759969620260448", - "178428925" + "768006372262081", + "88157182" ], [ - "759969798689373", - "123574577" + "768006460420859", + "1111500000" ], [ - "759970183422288", - "79928309" + "768055033287471", + "1118250000" ], [ - "759970263350597", - "63434690" + "768056151539394", + "128513841" ], [ - "759970326785287", - "209399790" + "768056280053235", + "127000562" ], [ - "759970536185077", - "96930960" + "768056407053797", + "132748869" ], [ - "759970633116037", - "23891260" + "768056539802666", + "124378256" ], [ - "759970657007297", - "2958794" + "768056664180922", + "119219224" ], [ - "759970667003745", - "64376093" + "768056783400146", + "120768946" ], [ - "759970731379838", - "64736772" + "768056904169092", + "128280239" ], [ - "759970796116610", - "35583363" + "768057160925595", + "129567688" ], [ - "759970831699973", - "28787919" + "768057290493283", + "129626968" ], [ - "759970860487892", - "19771091" + "768057420120251", + "131641826" ], [ - "759970880258983", - "15686626" + "768057551762077", + "132785034" ], [ - "759970984286242", - "87374833" + "768057684547111", + "149829249" ], [ - "759971071661075", - "100272607" + "768058524884871", + "83536024" ], [ - "759971275765356", - "104013769" + "768058608420895", + "87311253" ], [ - "759971379779125", - "104148749" + "768058695732148", + "88832233" ], [ - "759971483927874", - "104457385" + "768058784564381", + "86928993" ], [ - "759971588385259", - "39466456" + "768058871493374", + "86484069" ], [ - "759971627851715", - "54459743" + "768058957977443", + "87016874" ], [ - "759971682311458", - "54613470" + "768059044994317", + "88333175" ], [ - "759971736924928", - "55455079" + "768059133327492", + "91669405" ], [ - "759972161919679", - "54726591" + "768059224996897", + "87910416" ], [ - "759972216646270", - "53864309" + "768059312907313", + "87683732" ], [ - "760353418325910", - "21307875" + "768059400591045", + "86467952" ], [ - "760353439633785", - "2581143" + "768059487058997", + "86594113" ], [ - "760353442214928", - "935137" + "768059573653110", + "86619651" ], [ - "760353443150065", - "890707" + "768059660272761", + "87730086" ], [ - "760353444040772", - "934897" + "768059748002847", + "86397690" ], [ - "760353444975669", - "1008171" + "768059834400537", + "86441349" ], [ - "760353445983840", - "940412" + "768059920841886", + "88343548" ], [ - "760353446924252", - "444260593" + "768060009185434", + "88187255" ], [ - "760353891184845", - "18018938" + "768060097372689", + "123265068" ], [ - "760353909203783", - "53690506" + "845854664288223", + "3559343229" ], [ - "760353962894289", - "22923031" + "845858223631452", + "4963424782" ], [ - "760353985817320", - "21080639" + "845863187056234", + "3248663591" ], [ - "760354006897959", - "19195962" + "845866435719825", + "1723984401" ], [ - "760354026093921", - "45460514" + "859627528207302", + "22832250" ], [ - "760354071554435", - "45612372" + "859758703320142", + "1614400" ], [ - "760354117166807", - "36974408" + "859839403331480", + "161450" ], [ - "760354154141215", - "19923401" + "859839403492930", + "169491" ], [ - "760354174064616", - "17275264" + "859839403662421", + "1613900" ], [ - "760354191339880", - "696496" + "859839405276321", + "19836791" ], [ - "760354192036376", - "1303460" + "859839425113112", + "20285472" ], [ - "760354193339836", - "2298346" + "859839445398584", + "1613300" ], [ - "760354195638182", - "2606436" + "859839447011884", + "1695263" ], [ - "760354204355953", - "470384" + "859839448707147", + "1781388" ], [ - "760354204826337", - "11175759" + "859839450488535", + "9760866" ], [ - "760354216002096", - "11300466" + "859903168498760", + "1025355734" ], [ - "760354227302562", - "11536310" + "859905004526751", + "325809885" ], [ - "760357512160486", - "53864562" + "859909143181247", + "169472" ], [ - "760357566025048", - "53933512" + "860099248353783", + "168836" ], [ - "760357619958560", - "53946887" + "860099248522619", + "178837" ], [ - "760357673905447", - "54141970" + "860099248701456", + "189471" ], [ - "760357728047417", - "69340215" + "860106007379004", + "158770" ], [ - "760357797387632", - "70550823" + "860106007537774", + "168264" ], [ - "760357867938455", - "70867493" + "860106018269867", + "178231" ], [ - "760357938805948", - "24481635" - ], + "860106018448098", + "188829" + ] + ] + ], + [ + "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", + [ [ - "760358015808387", - "53846437" - ], + "212720660289097", + "405214898001" + ] + ] + ], + [ + "0x19CB3CfB44B052077E2c4dF7095900ce0b634056", + [ [ - "760358069654824", - "54081133" - ], + "76126854262565", + "9614320026" + ] + ] + ], + [ + "0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C", + [ [ - "760470665658443", - "785942" - ], + "720950939776219", + "15067225270" + ] + ] + ], + [ + "0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76", + [ [ - "760470666444385", - "1144304" - ], + "429681884991709", + "16666666666" + ] + ] + ], + [ + "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", + [ [ - "760470667588689", - "1310135" + "643132812995983", + "40000000000" ], [ - "761807540280731", - "160545" - ], + "643906455631587", + "3366190225" + ] + ] + ], + [ + "0x1a368885B299D51E477c2737E0330aB35529154a", + [ [ - "761807540441276", - "429708" - ], + "318979377505709", + "96310216033" + ] + ] + ], + [ + "0x1a5280B471024622714DEc80344E2AC2823fd841", + [ [ - "761807540870984", - "618377" - ], + "343556046384069", + "24488082083" + ] + ] + ], + [ + "0x1aA6F8B965d692c8162131F98219a6986DD10A83", + [ [ - "761807541489361", - "835669" - ], + "430080127673356", + "15368916223" + ] + ] + ], + [ + "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", + [ [ - "761808254646701", - "457637" + "76197765704929", + "4483509093" ], [ - "761818940422306", - "984887" + "624723028217150", + "131393988394" ], [ - "761857611272333", - "28944037" + "635895692062085", + "9135365741" ], [ - "761857640216370", - "22956002" + "636308866306005", + "8420726212" ], [ - "761857663172372", - "23015051" - ], + "639647047295076", + "24523740645" + ] + ] + ], + [ + "0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b", + [ [ - "761857686187423", - "17079412" - ], + "170254522172883", + "17764281739" + ] + ] + ], + [ + "0x1aD66517368179738f521AF62E1acFe8816c22a4", + [ [ - "761857703266835", - "34787792" + "38725058902818", + "4046506513" ], [ - "761857738054627", - "13476875" + "634197083749312", + "3652730115" ], [ - "761857751531502", - "13484900" + "634438435405713", + "6190991388" ], [ - "761857765016402", - "27660968" + "639424921077105", + "10000000000" ], [ - "761857792677370", - "43935728" + "640886662352708", + "43494915041" ], [ - "761857836613098", - "53726319" - ], + "680807511563555", + "7644571244" + ] + ] + ], + [ + "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", + [ [ - "761857890339417", - "31567337" + "153700721920471", + "531500000" ], [ - "761857921906754", - "19442054" + "220191598626128", + "187950000" ], [ - "761857941348808", - "27655195" + "229939110243935", + "6322304733" ], [ - "761857969004003", - "27685781" + "229945432548668", + "8363898233" ], [ - "761857996689784", - "14517084" + "279068417135852", + "3937395000" ], [ - "761861153261453", - "17618940" - ], + "279072354530852", + "5849480200" + ] + ] + ], + [ + "0x1B89a08D82079337740e1cef68c571069725306e", + [ [ - "761861170880393", - "52708112" - ], + "87019591255367", + "29419590331" + ] + ] + ], + [ + "0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E", + [ [ - "761861223588505", - "1133750000" - ], + "12977130692247", + "21105757579" + ] + ] + ], + [ + "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", + [ [ - "762295064062834", - "111320920" + "45739702462830", + "16499109105" ], [ - "762295175383754", - "53936630" + "87114876540897", + "188352182040" ], [ - "762295229320384", - "54010885" + "250563494637659", + "51857289010" ], [ - "762295283331269", - "54033702" + "267398540448510", + "101208590466" ], [ - "762295337364971", - "54054047" + "267499749038976", + "70064409829" ], [ - "762295391419018", - "54159010" + "573375993529429", + "36792124887" ], [ - "762295445578028", - "53483677" - ], + "870607247677965", + "2137555078286" + ] + ] + ], + [ + "0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4", + [ [ - "762295580014262", - "86989838" - ], + "353495072528037", + "320790778183" + ] + ] + ], + [ + "0x1d18B7E78a9a92a9DF8a1e3546b4B1fB825e012A", + [ [ - "762295667004100", - "29618432" - ], + "469496367277393", + "558419996300" + ] + ] + ], + [ + "0x1d264de8264a506Ed0E88E5E092131915913Ed17", + [ [ - "762295696622532", - "53514750" + "649244006768867", + "4669501379" ], [ - "762295750137282", - "79440408" - ], - [ - "762295829577690", - "88554558" - ], - [ - "762839409673019", - "1124000000" - ], + "796038682086854", + "84590167390" + ] + ] + ], + [ + "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", + [ [ - "762926916547751", - "98431377" - ], + "781813701764341", + "29578830513" + ] + ] + ], + [ + "0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E", + [ [ - "762927014979128", - "15784358" - ], + "327484450418198", + "123019710377" + ] + ] + ], + [ + "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714", + [ [ - "762927030763486", - "1123500000" + "159508675748318", + "2305000000" ], [ - "762940872607458", - "54177313" - ], + "159580351546434", + "4610000000" + ] + ] + ], + [ + "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974", + [ [ - "762940926784771", - "55156263" + "72498640963293", + "15344851129" ], [ - "762941003155084", - "52319596" + "254221973427847", + "134379000000" ], [ - "762941055474680", - "156457506" - ], + "531786137549545", + "52512241871" + ] + ] + ], + [ + "0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca", + [ [ - "762941211932186", - "53517184" - ], + "256709488442753", + "11960421970" + ] + ] + ], + [ + "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", + [ [ - "762941265449370", - "53566454" + "433393784368", + "736682080" ], [ - "762941319015824", - "54362634" + "160699226852463", + "19581291457" ], [ - "762941435120911", - "100238373" - ], + "401540811995625", + "5331732217" + ] + ] + ], + [ + "0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db", + [ [ - "762941535359284", - "2889658" - ], + "598199451554202", + "29744016905" + ] + ] + ], + [ + "0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b", + [ [ - "762941538248942", - "46035569" - ], + "32945625517253", + "161247227588" + ] + ] + ], + [ + "0x1FA517A273cC7e4305843DD136c09c8c370814be", + [ [ - "763454272407770", - "3194591" - ], + "408207040623818", + "67876110491" + ] + ] + ], + [ + "0x1faD27B543326E66185b7D1519C4E3d234D54A9C", + [ [ - "763707900610993", - "1115750000" + "3801746560076", + "1000000000" ], [ - "763792492493475", - "1116000000" - ], + "38060755842898", + "10000000000" + ] + ] + ], + [ + "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb", + [ [ - "763803297529274", - "53478200" + "331711562300586", + "14540205488" ], [ - "763803351007474", - "54572785" + "336163982041551", + "11093799305" ], [ - "763876749529752", - "46564085" + "336942217514274", + "6716741513" ], [ - "763876796093837", - "53551433" - ], + "338375415070333", + "12611715224" + ] + ] + ], + [ + "0x201ad214891136FC37750029A14008D99B9ab814", + [ [ - "763876849645270", - "37834720" - ], + "273830634179033", + "108850000718" + ] + ] + ], + [ + "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e", + [ [ - "763876887479990", - "390583" + "655813561952324", + "110759009" ], [ - "763876887870573", - "55102196" - ], + "742491932947261", + "50650088368" + ] + ] + ], + [ + "0x2032d6Fa962f05b05a648d0492936DCf879b0646", + [ [ - "763876942972769", - "1578152" + "167642878992324", + "21180650802" ], [ - "763876946822805", - "18853190" + "188809726173585", + "7159870568" ], [ - "763876965675995", - "87811" + "189165629280356", + "22812490844" ], [ - "763876965763806", - "46267543" - ], + "220191786590698", + "12020746267" + ] + ] + ], + [ + "0x20627f29B05c9ecd191542677492213aA51d9A61", + [ [ - "763877012031349", - "59141147" + "576941170319018", + "76781922750" ], [ - "763877089726413", - "53473182" + "577603149817417", + "46559625597" ], [ - "763877143199595", - "53513899" + "586328662020556", + "51897457000" ], [ - "763877305809564", - "9728992" + "592657295032714", + "378309194016" ], [ - "763877315538556", - "28373" + "595732510292240", + "90858470270" ], [ - "763877315566929", - "65545" + "595932363187550", + "903793388372" ], [ - "763877315632474", - "92711" + "596836156575922", + "629685276600" ], [ - "763877315725185", - "105827" + "597465841852522", + "464850000000" ], [ - "763877315831012", - "153650" + "599486968121300", + "259777962939" ], [ - "763877315984662", - "11924506" + "599746746084239", + "330494092479" ], [ - "763877327909168", - "19203818" - ], + "601738494764168", + "166149576292" + ] + ] + ], + [ + "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", + [ [ - "763877454434453", - "2130383" + "109584713085687", + "1273885350" ], [ - "763877456564836", - "43889485" - ], + "634819675697276", + "2308620655" + ] + ] + ], + [ + "0x214e02A853dCAd01B2ab341e7827a656655A1B81", + [ [ - "763877500454321", - "53637818" - ], + "904990242139002", + "3425838650831" + ] + ] + ], + [ + "0x215F97a79287BE4192990FCc4555F7a102a7D3DE", + [ [ - "763877554092139", - "4992987" - ], + "257934797532327", + "19124814552" + ] + ] + ], + [ + "0x21754dF1E545e836be345B0F56Cde2D8419a21B2", + [ [ - "763877559085126", - "78649" - ], + "465327248177676", + "39368282950" + ] + ] + ], + [ + "0x219312542D51cae86E47a1A18585f0bac6E6867B", + [ [ - "763877561341934", - "53679679" - ], + "92976132590563", + "20088923958" + ] + ] + ], + [ + "0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933", + [ [ - "763877615021613", - "53699711" - ], + "582395940698044", + "17931960176" + ] + ] + ], + [ + "0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa", + [ [ - "763877668721324", - "2881442" - ], + "637116380310734", + "3895753147" + ] + ] + ], + [ + "0x21D4Df25397446300C02338f334d0D219ABcc9C3", + [ [ - "763877671602766", - "43770152" + "470380807066345", + "411624219865" ], [ - "763877715372918", - "60410828" + "470792431286210", + "37602900897" ], [ - "763877775783746", - "36230820" + "495349607400223", + "382964380420" ], [ - "763877812014566", - "71702191" + "495732571780643", + "253709415566" ], [ - "763879378249844", - "7153056" + "534876703831999", + "93233987544" ], [ - "763879385402900", - "7227368" + "552735179318713", + "72606632304" ], [ - "763879392630268", - "11477736" + "552823996796902", + "637060677585" ], [ - "763879404108004", - "10660055" - ], + "573166828849535", + "173997222406" + ] + ] + ], + [ + "0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A", + [ [ - "763879414768059", - "11118127" - ], + "376332551455167", + "6429254333" + ] + ] + ], + [ + "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", + [ [ - "763898344398867", - "63786254" + "376477661392189", + "8428341425" ], [ - "763898408185121", - "64002031" + "681711033814749", + "10245080960" ], [ - "763898506920948", - "861786" + "726097732002229", + "14602599487" ], [ - "763898507782734", - "10162644" - ], + "859260757600987", + "16570064186" + ] + ] + ], + [ + "0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6", + [ [ - "763899495538368", - "9243915" - ], + "33126339744834", + "7" + ] + ] + ], + [ + "0x220c12268c6f1744553f456c3BF161bd8b423662", + [ [ - "763899504782283", - "37968961" - ], + "250615351926669", + "14754910654" + ] + ] + ], + [ + "0x224e69025A2f705C8f31EFB6694398f8Fd09ac5C", + [ [ - "763904604592937", - "29092593" - ], + "767578297685072", + "595189970" + ] + ] + ], + [ + "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", + [ [ - "763904633685530", - "17984979" + "634989491135365", + "93881590000" ], [ - "763904651670509", - "18018550" - ], + "635261553552881", + "89275000000" + ] + ] + ], + [ + "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", + [ [ - "763904669689059", - "18842007" + "141930229169149", + "14065000000" ], [ - "763904688531066", - "16688868" - ], + "626058811458059", + "125719249019" + ] + ] + ], + [ + "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", + [ [ - "763904705219934", - "15727180" - ], + "649732276779694", + "44876189" + ] + ] + ], + [ + "0x2342670674C652157c1282d7E7F1bD7460EFa9E2", + [ [ - "763904720947114", - "15825494" - ], + "358035739103727", + "19514795641" + ] + ] + ], + [ + "0x2352FDd9A457c549D822451B4cD43203580a29d1", + [ [ - "763904736772608", - "17883715" - ], - [ - "763904754656323", - "12528228" - ], - [ - "763904767184551", - "1918749" - ], - [ - "763904769103300", - "10530035" - ], - [ - "763904779633335", - "10728257" - ], - [ - "763904790361592", - "4605084" - ], - [ - "763904794966676", - "8970126" - ], - [ - "763910595276884", - "8829644" - ], - [ - "763910604106528", - "3311197" - ], - [ - "763910607417725", - "12163802" - ], - [ - "763910619581527", - "12428237" - ], - [ - "763910632009764", - "10056575" - ], - [ - "763910642066339", - "73796314" - ], - [ - "763938649705538", - "15087847" - ], - [ - "763944448544389", - "15498278" - ], - [ - "763944464042667", - "24830243" - ], - [ - "763944488872910", - "24944523" - ], - [ - "763953533706671", - "11007680" - ], - [ - "763953544714351", - "11282748" - ], - [ - "763953555997099", - "11335662" - ], - [ - "763953567332761", - "11465066" - ], - [ - "763953578797827", - "11935751" - ], - [ - "763953590733578", - "12877546" - ], - [ - "763953603611124", - "12886748" - ], - [ - "763953616497872", - "7982235" - ], - [ - "763953624480107", - "9765854" - ], - [ - "763953634245961", - "9797075" - ], - [ - "763953644043036", - "1044500000" - ], - [ - "763975806959978", - "85094056" - ], - [ - "763975892054034", - "85627588" - ], - [ - "763977822667370", - "3016979" - ], - [ - "763977825684349", - "3091465" - ], - [ - "763977828775814", - "557388194" - ], - [ - "763978386164008", - "8620088" - ], - [ - "763978394784096", - "29342107" - ], - [ - "763978424126203", - "9543362" - ], - [ - "763978433669565", - "9611296" - ], - [ - "763978443280861", - "9636433" - ], - [ - "763978452917294", - "8046683" - ], - [ - "763978460963977", - "10828154" - ], - [ - "763978471792131", - "7543534" - ], - [ - "763978479335665", - "4689652" - ], - [ - "763978484025317", - "12897667" - ], - [ - "763978496922984", - "8815547" - ], - [ - "763978514586346", - "9143544" - ], - [ - "763978523729890", - "9413342" - ], - [ - "763978533143232", - "9416885" - ], - [ - "763978542560117", - "10373808" - ], - [ - "763978552933925", - "19789932" - ], - [ - "763981005309782", - "8883084" - ], - [ - "763981014192866", - "8984999" - ], - [ - "763981023177865", - "9076772" - ], - [ - "763983162727275", - "10372838" - ], - [ - "763983173100113", - "901279" - ], - [ - "763983174001392", - "11304378" - ], - [ - "763983185305770", - "11337518" - ], - [ - "763983207512362", - "9837030" - ], - [ - "763983217349392", - "1100829" - ], - [ - "763983218450221", - "66658" - ], - [ - "763983218516879", - "73073" - ], - [ - "763983218589952", - "414078" - ], - [ - "763983219004030", - "16583629" - ], - [ - "763983235587659", - "75873" - ], - [ - "763983235663532", - "104758" - ], - [ - "763983235768290", - "319760" - ], - [ - "763983236088050", - "347778" - ], - [ - "763983305487564", - "10457152" - ], - [ - "763983315944716", - "10556364" - ], - [ - "763983326501080", - "8290697" - ], - [ - "763983334791777", - "5644455" - ], - [ - "763983340436232", - "7945168" - ], - [ - "763983348381400", - "13385894" - ], - [ - "763983361767294", - "45138194" - ], - [ - "763983406905488", - "1866587" - ], - [ - "763983408772075", - "9980195" - ], - [ - "763983418752270", - "5750227" - ], - [ - "763983424502497", - "9795651" - ], - [ - "763983444147323", - "10906649" - ], - [ - "763983455053972", - "11996728" - ], - [ - "763983467050700", - "8506342" - ], - [ - "763985928672040", - "10937512" - ], - [ - "763985939609552", - "11006773" - ], - [ - "763985950616325", - "328433" - ], - [ - "763985950944758", - "10334991" - ], - [ - "764056285307640", - "9063092" - ], - [ - "764056313282603", - "12814935" - ], - [ - "764056326097538", - "13040915" - ], - [ - "764056855356215", - "8019575" - ], - [ - "764056863375790", - "12804398" - ], - [ - "764056876180188", - "14241010" - ], - [ - "764056890421198", - "10969416" - ], - [ - "764056901390614", - "2177420" - ], - [ - "764056903568034", - "9204085" - ], - [ - "764056912772119", - "9213207" - ], - [ - "764058367111510", - "11163969" - ], - [ - "764058378275479", - "11300738" - ], - [ - "764058389576217", - "5496270" - ], - [ - "764058395072487", - "361195" - ], - [ - "764058395433682", - "772104" - ], - [ - "764058396205786", - "696608867" - ], - [ - "764059092814653", - "9050379" - ], - [ - "764059101865032", - "4195172" - ], - [ - "764059106060204", - "11535858" - ], - [ - "764059117596062", - "255180" - ], - [ - "764059117851242", - "8969278" - ], - [ - "764059126820520", - "9303793" - ], - [ - "764059136124313", - "9999166" - ], - [ - "764059146123479", - "10009538" - ], - [ - "764059156133017", - "1216684" - ], - [ - "764059157349701", - "33393007" - ], - [ - "764059190742708", - "735377" - ], - [ - "764059191478085", - "10266010" - ], - [ - "764060081853851", - "8204048" - ], - [ - "764060090057899", - "9732642" - ], - [ - "764060099790541", - "10150423" - ], - [ - "764100306041728", - "17982514" - ], - [ - "764100324024242", - "18573856" - ], - [ - "764111950239427", - "944000000" - ], - [ - "764113461776720", - "6235875" - ], - [ - "764113468012595", - "8992681" - ], - [ - "764113477005276", - "943500000" - ], + "299781959169774", + "468725307806" + ] + ] + ], + [ + "0x23b7413b721AB75FE7024E7782F9EdcE053f220C", + [ [ - "764114420505276", - "943500000" - ], + "606324488412981", + "1036783406" + ] + ] + ], + [ + "0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17", + [ [ - "764115364005276", - "35299689" - ], + "326225367529391", + "17549000000" + ] + ] + ], + [ + "0x23cAea94eB856767cf71a30824d72Ed5B93aA365", + [ [ - "764115399304965", - "6707115" - ], + "915418302913680", + "238900000000" + ] + ] + ], + [ + "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6", + [ [ - "764115406012080", - "10253563" + "201837808921554", + "262588887949" ], [ - "764115416265643", - "52697117" + "202394225136865", + "268265834079" ], [ - "764115468962760", - "940750000" - ], + "220191786576128", + "14570" + ] + ] + ], + [ + "0x24367F22624f739D7F8AB2976012FbDaB8dd33f4", + [ [ - "764331262748162", - "945750000" - ], + "26768674950508", + "427568784000" + ] + ] + ], + [ + "0x2437Db820DE92d8DD64B524954fA0D160767c471", + [ [ - "764438000829295", - "946000000" - ], + "344730632844876", + "14480118767" + ] + ] + ], + [ + "0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe", + [ [ - "764451708497435", - "10007361" - ], + "573460544800018", + "59926244178" + ] + ] + ], + [ + "0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3", + [ [ - "764451718504796", - "10260665" - ], + "919026220879929", + "1124719481" + ] + ] + ], + [ + "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2", + [ [ - "764451728765461", - "10443811" + "61869552594793", + "5201831386928" ], [ - "764451739209272", - "10884086" + "82817668297010", + "311908399084" ], [ - "764451750093358", - "895341231" - ], + "372394178664282", + "2871900000000" + ] + ] + ], + [ + "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d", + [ [ - "764452645434589", - "3190831" + "362140399162224", + "6273115407" ], [ - "764452656731669", - "8125848" - ], + "376426019903538", + "25515357603" + ] + ] + ], + [ + "0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a", + [ [ - "764452664857517", - "8140742" - ], + "298791493215442", + "85000000000" + ] + ] + ], + [ + "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", + [ [ - "764452672998259", - "8207851" - ], + "186583237080659", + "8569224376" + ] + ] + ], + [ + "0x25d5Eb0603f36c47A53529b6A745A0805467B21F", + [ [ - "764452681206110", - "5437824" - ], + "299296287064019", + "22010000022" + ] + ] + ], + [ + "0x2612C1bc597799dc2A468D6537720B245f956A22", + [ [ - "764452686643934", - "1634581" - ], + "649130529433065", + "220044920" + ] + ] + ], + [ + "0x262126FD37D04321D7f824c8984976542fCA2C36", + [ [ - "764452688278515", - "30412" - ], + "92555674061199", + "101864651658" + ] + ] + ], + [ + "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", + [ [ - "764452688308927", - "6680863" + "434130466448", + "27751913384" ], [ - "764452694989790", - "1390995" + "464312835593", + "25323470663" ], [ - "764452696380785", - "6703924" + "490607948331", + "9028357925" ], [ - "764452703084709", - "4836310" + "520071959814", + "9564346441" ], [ - "764452707921019", - "2347531" + "4931242977938", + "10898078686" ], [ - "764452710268550", - "2444950" + "343529476955892", + "26569428177" ], [ - "764452712713500", - "2595517" + "581145184712006", + "762766666666" ], [ - "764452715309017", - "5693285" + "644413986347346", + "32" ], [ - "764452721002302", - "7659096" + "644546638392929", + "32" ], [ - "764452735085521", - "1617109" + "647552815161015", + "80311" ], [ - "764452736702630", - "901875" + "647823489801690", + "15368221875" ], [ - "764452737604505", - "8786495" + "647953831875574", + "11699675781" ], [ - "764452746391000", - "8796994" + "648064641238285", + "12204390625" ], [ - "764452755187994", - "483474928" + "648143628178042", + "11488750000" ], [ - "764453238662922", - "9945879" + "648162303670466", + "13655200000" ], [ - "764453248608801", - "9384752" + "648218529970749", + "15127645459" ], [ - "764453257993553", - "18030442" + "648319733131161", + "9068714111" ], [ - "764453276023995", - "18998861" + "648390451720158", + "17199921875" ], [ - "764453295022856", - "19005242" + "648437018209889", + "15524432405" ], [ - "764454200747569", - "8013962" + "648537251303183", + "17" ], [ - "764454208761531", - "344483" + "648669852761603", + "17910660356" ], [ - "764454209106014", - "3844352" + "648703542243759", + "13031467277" ], [ - "764454213921411", - "8933515" + "649087464308065", + "13380625000" ], [ - "764454222854926", - "9498746" + "649130749477985", + "12668079062" ], [ - "764454232353672", - "9503988" + "654557370948114", + "213185000000" ], [ - "764454241857660", - "10385991" + "655483763856093", + "154938000000" ], [ - "764454252243651", - "10467439" + "663001818967242", + "28" ], [ - "764454262711090", - "9988705" + "664619505628960", + "22" ], [ - "764454272699795", - "8980636" + "665701343812538", + "20" ], [ - "764454281680431", - "9308598" + "666251093296344", + "277121831207" ], [ - "764454290989029", - "9335269" + "666528215127551", + "294971062419" ], [ - "764454300324298", - "7550863" + "669913176913700", + "168992222694" ], [ - "764454307875161", - "4906079" + "670265992890158", + "3760739846" ], [ - "764454312781240", - "8991244" + "670269753630004", + "195093286581" ], [ - "764454321772484", - "12424176" + "670708659416585", + "8315794130" ], [ - "764454334196660", - "4683059" + "671204344019292", + "9227239745" ], [ - "764454338879719", - "808524" + "673990119454246", + "387240" ], [ - "764454339688243", - "16696896" + "673990119841486", + "266985351613" ], [ - "764454356385139", - "188453" + "674290923945041", + "214257648238" ], [ - "764454356573592", - "244246" + "675271870072786", + "1265309093" ], [ - "764454356817838", - "399227" + "675939800999403", + "89647628696" ], [ - "764454357217065", - "428167" + "676546386034429", + "6694533342" ], [ - "764454357645232", - "436981" + "676553080567771", + "8499476521" ], [ - "764454358082213", - "492999" + "676561580044292", + "10140222821" ], [ - "764454358575212", - "591362" + "676571720267113", + "11668233878" ], [ - "764457158712640", - "9556834" + "676583388500991", + "13349099640" ], [ - "766112773148016", - "905500000" + "676596737600631", + "14641791657" ], [ - "767983184669679", - "52737476" + "676611379392288", + "16023438417" ], [ - "767983237407155", - "53575704" + "676627402830705", + "17794160449" ], [ - "767983290982859", - "53768852" + "676645196991154", + "19717534095" ], [ - "767983344751711", - "55352725" + "676686202345495", + "21015744781" ], [ - "767983400104436", - "47061647" + "676707218090276", + "21993061317" ], [ - "767983447166083", - "1110500000" + "676751492794865", + "125608" ], [ - "767984557666083", - "88333125" + "676751492920473", + "55278924469" ], [ - "767984645999208", - "129427752" + "676879462123907", + "722460698" ], [ - "768003822182998", - "1121250000" + "676961397323692", + "84887658705" ], [ - "768004943433356", - "78186024" + "677046284982397", + "75519741929" ], [ - "768005021619380", - "54621494" + "677172387770040", + "6131806238" ], [ - "768005076240874", - "65591706" + "677178519576278", + "59202430775" ], [ - "768005141832580", - "81397820" + "677237722007053", + "60660646377" ], [ - "768005223230400", - "89638206" + "677298382653430", + "55297098356" ], [ - "768005312868606", - "88216460" + "677353679751786", + "41809339114" ], [ - "768005401085066", - "85936196" + "677395489090900", + "36138699789" ], [ - "768005487021262", - "88956801" + "677463173067632", + "28108721786" ], [ - "768006108101322", - "88031169" + "677511504808903", + "3551817566" ], [ - "768006196132491", - "88045520" + "677515056626469", + "10550613290" ], [ - "768006284178011", - "88084070" + "677525607239759", + "4793787549" ], [ - "768006372262081", - "88157182" + "677530401027308", + "236335204805" ], [ - "768006460420859", - "1111500000" + "677766895578568", + "178586879475" ], [ - "768055033287471", - "1118250000" + "677945482458043", + "293860207608" ], [ - "768056151539394", - "128513841" + "678239342665651", + "675575202780" ], [ - "768056280053235", - "127000562" + "682826275044476", + "17833430647" ], [ - "768056407053797", - "132748869" + "682845259142899", + "85872956797" ], [ - "768056539802666", - "124378256" + "682931132099696", + "137696415333" ], [ - "768056664180922", - "119219224" + "683088991506904", + "102232834268" + ] + ] + ], + [ + "0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D", + [ + [ + "323262951431540", + "22464236574" + ] + ] + ], + [ + "0x26AFBbC659076B062548e8f46D424842Bc715064", + [ + [ + "258943234658706", + "94067068214" + ] + ] + ], + [ + "0x26C08ce60A17a130f5483D50C404bDE46985bCaf", + [ + [ + "325145004497070", + "113447201008" + ] + ] + ], + [ + "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5", + [ + [ + "682845256557823", + "2585076" ], [ - "768056783400146", - "120768946" + "741718653137282", + "111751582" + ] + ] + ], + [ + "0x26f781D7f59c67BBd16acED83dB4ba90d1e47689", + [ + [ + "109548569427007", + "2250551935" + ] + ] + ], + [ + "0x27320AAc0E3bbc165E6048aFc0F28500091dca73", + [ + [ + "240574257021760", + "14827650417" + ] + ] + ], + [ + "0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f", + [ + [ + "201441256822560", + "15818274887" + ] + ] + ], + [ + "0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9", + [ + [ + "266838658304301", + "216644999935" + ] + ] + ], + [ + "0x277FC128D042B081F3EE99881802538E05af8c43", + [ + [ + "267204322956411", + "8634054720" + ] + ] + ], + [ + "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", + [ + [ + "311015613569053", + "6238486940" + ] + ] + ], + [ + "0x2817a8dFe9DCff27449C8C66Fa02e05530859B73", + [ + [ + "495986281196209", + "327035406660" + ] + ] + ], + [ + "0x284A2d22620974fb416D866c18a1f3c848E7b7Bc", + [ + [ + "644367998960591", + "103407742" + ] + ] + ], + [ + "0x284f942F11a5046a5D11BCbEC9beCb46d1172512", + [ + [ + "51088313644799", + "41188549146" ], [ - "768056904169092", - "128280239" + "258469319874650", + "96515746089" + ] + ] + ], + [ + "0x2894457502751d0F92ed1e740e2c8935F879E8AE", + [ + [ + "18052754491380", + "1000000000" ], [ - "768057160925595", - "129567688" + "141944294169149", + "10000000000" ], [ - "768057290493283", - "129626968" + "744765029950609", + "18206372000" + ] + ] + ], + [ + "0x28A40076496E02a9A527D7323175b15050b6C67c", + [ + [ + "273700188355894", + "16557580124" ], [ - "768057420120251", - "131641826" + "325749068110199", + "19498214619" ], [ - "768057551762077", - "132785034" + "326472527780618", + "118292810725" ], [ - "768057684547111", - "149829249" + "406164449052348", + "405035690" ], [ - "768058524884871", - "83536024" + "406164854088038", + "499650000" ], [ - "768058608420895", - "87311253" + "406165353738038", + "404668999" + ] + ] + ], + [ + "0x28aB25Bf7A691416445A85290717260971151eD2", + [ + [ + "267322616665401", + "11510822108" + ] + ] + ], + [ + "0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4", + [ + [ + "7395832970393", + "10000000000" + ] + ] + ], + [ + "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", + [ + [ + "33186875353373", + "500000000" ], [ - "768058695732148", - "88832233" + "67435055994809", + "10000000000" ], [ - "768058784564381", - "86928993" + "153926655075128", + "838565448" ], [ - "768058871493374", - "86484069" + "282587028442772", + "17250582700" ], [ - "768058957977443", - "87016874" + "525672111796446", + "70060393479" ], [ - "768059044994317", - "88333175" + "595441968432834", + "80085100000" ], [ - "768059133327492", - "91669405" + "630893407534395", + "196063966" ], [ - "768059224996897", - "87910416" + "872761488129531", + "70125007621" + ] + ] + ], + [ + "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", + [ + [ + "18051338281355", + "50364336" ], [ - "768059312907313", - "87683732" + "18051388645691", + "1232512356" + ] + ] + ], + [ + "0x297751960DAD09c6d38b73538C1cce45457d796d", + [ + [ + "41373044931817", + "727522" ], [ - "768059400591045", - "86467952" + "67097307242511", + "15" ], [ - "768059487058997", - "86594113" + "87849021601047", + "80437" ], [ - "768059573653110", - "86619651" + "90975474968754", + "3" ], [ - "768059660272761", - "87730086" + "153701253420471", + "67407" ], [ - "768059748002847", - "86397690" + "232482126144006", + "5451263" ], [ - "768059834400537", - "86441349" - ], + "376489301622502", + "37387" + ] + ] + ], + [ + "0x29841AfFE231392BF0826B85488e411C3E5B9cC4", + [ [ - "768059920841886", - "88343548" - ], + "631794823129224", + "1314233166" + ] + ] + ], + [ + "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3", + [ [ - "768060009185434", - "88187255" + "160678430865357", + "18253993180" ], [ - "768060097372689", - "123265068" + "167558036125804", + "84842866520" ], [ - "845854664288223", - "3559343229" - ], + "634190283997794", + "1715232990" + ] + ] + ], + [ + "0x299e4B9591993c6001822baCF41aff63F9C1C93F", + [ [ - "845858223631452", - "4963424782" + "260069118609084", + "794705201763" ], [ - "845863187056234", - "3248663591" + "267656630501959", + "150336454905" ], [ - "845866435719825", - "1723984401" + "295137332480012", + "2607932412299" ], [ - "859627528207302", - "22832250" - ], + "297745264892311", + "766254121133" + ] + ] + ], + [ + "0x29e1A68927a46f42d3B82417A01645Ee23F86bD9", + [ [ - "859758703320142", - "1614400" - ], + "324911717326872", + "115438917" + ] + ] + ], + [ + "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20", + [ [ - "859839403331480", - "161450" + "51129502193945", + "25356695159" ], [ - "859839403492930", - "169491" + "202818106667533", + "17842441406" ], [ - "859839403662421", - "1613900" - ], + "408046817720715", + "10000317834" + ] + ] + ], + [ + "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", + [ [ - "859839405276321", - "19836791" + "76028680969604", + "604036207" ], [ - "859839425113112", - "20285472" + "680317702465922", + "5002669630" ], [ - "859839445398584", - "1613300" + "760184010820995", + "729833339" ], [ - "859839447011884", - "1695263" + "760470668898824", + "369074345" + ] + ] + ], + [ + "0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F", + [ + [ + "258032653899264", + "42247542366" + ] + ] + ], + [ + "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", + [ + [ + "59269854376843", + "29229453541" ], [ - "859839448707147", - "1781388" + "97271320489293", + "40869054933" ], [ - "859839450488535", - "9760866" + "157521724557081", + "21334750070" ], [ - "859903168498760", - "1025355734" + "159085770998418", + "46100000000" ], [ - "859905004526751", - "325809885" + "189188441771200", + "19872173070" ], [ - "859909143181247", - "169472" + "189208313944270", + "13412667204" + ] + ] + ], + [ + "0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C", + [ + [ + "186248277026701", + "1607000000" ], [ - "860099248353783", - "168836" + "634495210451551", + "1561000000" + ] + ] + ], + [ + "0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37", + [ + [ + "187153746256456", + "42281642936" + ] + ] + ], + [ + "0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C", + [ + [ + "598229195571107", + "175120144248" ], [ - "860099248522619", - "178837" + "598404315715355", + "706556073123" + ] + ] + ], + [ + "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65", + [ + [ + "75517881623550", + "38308339380" ], [ - "860099248701456", - "189471" + "118284988563198", + "23400000000" ], [ - "860106007379004", - "158770" + "243340907864513", + "5071931149" ], [ - "860106007537774", - "168264" + "244927756280795", + "46513491853" ], [ - "860106018269867", - "178231" + "319587273487138", + "99704140012" ], [ - "860106018448098", - "188829" + "331528394095863", + "121345718040" ] ] ], [ - "0x19c5baD4354e9a78A1CA0235Af29b9EAcF54fF2b", + "0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB", [ [ - "212720660289097", - "405214898001" + "595522053532834", + "168039500000" ] ] ], [ - "0x19CB3CfB44B052077E2c4dF7095900ce0b634056", + "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf", [ [ - "76126854262565", - "9614320026" + "786871494302699", + "450790656" + ], + [ + "786871945093355", + "932517247" ] ] ], [ - "0x19cF79e47C31464AC0B686913E02e2E70C01Bd5C", + "0x2bDB0cB25Db0012dF643041B3490d163A1809eE6", [ [ - "720950939776219", - "15067225270" + "157417754524248", + "84608203869" ] ] ], [ - "0x1A1d89a08366a3b7994704d5dF93C543c6aeFC76", + "0x2BeaB5818689309117AAfB0B89cd6F276C824D34", [ [ - "429681884991709", - "16666666666" + "344363859002519", + "25254232357" ] ] ], [ - "0x1A2d5fb134f5F2a9696dd9F47D2a8c735cDB490d", + "0x2BEe2D53261B16892733B448351a8Fd8c0f743e7", [ [ - "643132812995983", - "40000000000" - ], - [ - "643906455631587", - "3366190225" + "919414411428634", + "147996" ] ] ], [ - "0x1a368885B299D51E477c2737E0330aB35529154a", + "0x2bF046A052942B53Ca6746de4D3295d8f10d4562", [ [ - "318979377505709", - "96310216033" + "740992675275273", + "14660252551" ] ] ], [ - "0x1a5280B471024622714DEc80344E2AC2823fd841", + "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", [ [ - "343556046384069", - "24488082083" + "61022673231233", + "21700205805" + ], + [ + "91013305781059", + "21825144968" + ], + [ + "197758167416406", + "3504136084" + ], + [ + "213430473225415", + "19297575823" + ], + [ + "227257304826086", + "8838791596" + ], + [ + "227797101910617", + "34509154491" + ], + [ + "235855165427494", + "2631578947" + ], + [ + "648015664036231", + "1982509180" ] ] ], [ - "0x1aA6F8B965d692c8162131F98219a6986DD10A83", + "0x2C01E651a64387352EbAF860165778049031e190", [ [ - "430080127673356", - "15368916223" + "401140958523891", + "6000000000" ] ] ], [ - "0x1AAE1ADe46D699C0B71976Cb486546B2685b219C", + "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", [ [ - "76197765704929", - "4483509093" + "136612399855910", + "1516327182560" ], [ - "624723028217150", - "131393988394" + "180612996863780", + "58781595885" ], [ - "635895692062085", - "9135365741" + "564786469810178", + "14382502530" ], [ - "636308866306005", - "8420726212" + "566175469825977", + "30150907500" ], [ - "639647047295076", - "24523740645" + "568987325580815", + "30150907500" + ], + [ + "570096344263715", + "30150907500" + ], + [ + "572087175787753", + "30150907500" ] ] ], [ - "0x1AcA324b0Bd83e45Ca24Fc8ee5d66e72597A8c9b", + "0x2d0DDb67B7D551aFa7c8FA4D31F86DA9cc947450", [ [ - "170254522172883", - "17764281739" + "401401284712966", + "133555430770" ] ] ], [ - "0x1aD66517368179738f521AF62E1acFe8816c22a4", + "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", [ [ - "38725058902818", - "4046506513" + "13620320740040", + "2776257694900" ], [ - "634197083749312", - "3652730115" + "345351025418338", + "1509530400000" ], [ - "634438435405713", - "6190991388" + "347475827541041", + "1543861200000" ], [ - "639424921077105", - "10000000000" + "763876703327895", + "46201857" ], [ - "640886662352708", - "43494915041" + "763877400753507", + "53680946" ], [ - "680807511563555", - "7644571244" - ] - ] - ], - [ - "0x1B7eA7D42c476A1E2808f23e18D850C5A4692DF7", - [ + "763877883716757", + "1494533087" + ], [ - "153700721920471", - "531500000" + "763898520549826", + "974988542" ], [ - "220191598626128", - "187950000" + "763903829825521", + "684952219" ], [ - "229939110243935", - "6322304733" + "763904803936802", + "52372148" ], [ - "229945432548668", - "8363898233" + "763914820231283", + "23750326521" ], [ - "279068417135852", - "3937395000" + "763938570557804", + "79147734" ], [ - "279072354530852", - "5849480200" - ] - ] - ], - [ - "0x1B89a08D82079337740e1cef68c571069725306e", - [ + "763939554575290", + "4893969099" + ], [ - "87019591255367", - "29419590331" - ] - ] - ], - [ - "0x1B91e045e59c18AeFb02A29b38bCCD46323632EF", - [ + "763944513817433", + "9019889238" + ], + [ + "763954688543036", + "21118416942" + ], + [ + "763976072545528", + "54845693" + ], + [ + "763976182271147", + "52203689" + ], + [ + "763976306153164", + "51007458" + ], + [ + "763976388222525", + "1300355823" + ], + [ + "763981032254637", + "2130472638" + ], + [ + "763983236435828", + "69051736" + ], + [ + "764056339138453", + "516217762" + ], + [ + "764056921985326", + "1434013875" + ], + [ + "764059354079704", + "590245000" + ], + [ + "764454359166574", + "2799546066" + ], + [ + "764457168269474", + "797906392781" + ], + [ + "765255074662255", + "857156766102" + ], + [ + "767510533786724", + "123" + ], + [ + "767510533786847", + "165" + ], + [ + "767510533787012", + "206" + ], + [ + "767510533787218", + "288" + ], + [ + "767510533787506", + "330" + ], + [ + "767510533787836", + "371" + ], + [ + "767510533788207", + "413" + ], + [ + "767510533788620", + "454" + ], + [ + "767510533789074", + "495" + ], [ - "919414419371700", - "44905425998" - ] - ] - ], - [ - "0x1b9A6108D335e6E0E0325Ccc5b0164BFB65c6B9E", - [ + "767510533789569", + "537" + ], [ - "12977130692247", - "21105757579" - ] - ] - ], - [ - "0x1Bd6aAB7DCf6228D3Be0C244F1D36e23DAac3BAe", - [ + "767510533790106", + "578" + ], [ - "45739702462830", - "16499109105" + "767511386360882", + "620" ], [ - "87114876540897", - "188352182040" + "767511386361502", + "662" ], [ - "250563494637659", - "51857289010" + "767511386362164", + "703" ], [ - "267398540448510", - "101208590466" + "767511386362867", + "745" ], [ - "267499749038976", - "70064409829" + "767511386363612", + "786" ], [ - "573375993529429", - "36792124887" + "767511386364398", + "828" ], [ - "870607247677965", - "2137555078286" - ] - ] - ], - [ - "0x1c8F43572d68e398C41cD5bE1D9413A268A3b8A4", - [ + "767511386365226", + "870" + ], [ - "353495072528037", - "320790778183" - ] - ] - ], - [ - "0x1d18B7E78a9a92a9DF8a1e3546b4B1fB825e012A", - [ + "767511386366096", + "912" + ], [ - "469496367277393", - "558419996300" - ] - ] - ], - [ - "0x1d264de8264a506Ed0E88E5E092131915913Ed17", - [ + "767511386367008", + "954" + ], [ - "649244006768867", - "4669501379" + "767511386367962", + "996" ], [ - "796038682086854", - "84590167390" - ] - ] - ], - [ - "0x1D58E9c7B65b4F07afB58c72D49979D2F2c7A3F7", - [ + "767511386368958", + "1038" + ], [ - "781813701764341", - "29578830513" - ] - ] - ], - [ - "0x1D9329F4d69daf9e323177aBE998CBDe5063AA2E", - [ + "767511386369996", + "1081" + ], [ - "327484450418198", - "123019710377" - ] - ] - ], - [ - "0x1dE6844C76Fa59C5e7B4566044CC1Bb9ef958714", - [ + "767511386371077", + "1123" + ], [ - "159508675748318", - "2305000000" + "767511386372200", + "1165" ], [ - "159580351546434", - "4610000000" - ] - ] - ], - [ - "0x1ecAB1Ab48bf2e0A4332280E0531a8aad34bC974", - [ + "767511386373365", + "1208" + ], [ - "72498640963293", - "15344851129" + "767511386374573", + "1251" ], [ - "254221973427847", - "134379000000" + "767511386375824", + "1293" ], [ - "531786137549545", - "52512241871" - ] - ] - ], - [ - "0x1ef22E33287A5c26CF6b9Ffc49e902830180E3Ca", - [ + "767511386377117", + "1336" + ], [ - "256709488442753", - "11960421970" - ] - ] - ], - [ - "0x1F6cfC72fa4fc310Ce30bCBa68BBC0CcB9E1F9C8", - [ + "767511386378453", + "1379" + ], [ - "433393784368", - "736682080" + "767511386379832", + "1421" ], [ - "160699226852463", - "19581291457" + "767511386381253", + "1464" ], [ - "401540811995625", - "5331732217" - ] - ] - ], - [ - "0x1F7085DAdb1B95B3EfDb03d068E0Eeac79ce49db", - [ + "767511386382717", + "1507" + ], [ - "598199451554202", - "29744016905" - ] - ] - ], - [ - "0x1FA29B6DcBC5fA3B529fEecd46F57Ee46718716b", - [ + "767511386384265", + "83" + ], [ - "32945625517253", - "161247227588" - ] - ] - ], - [ - "0x1FA517A273cC7e4305843DD136c09c8c370814be", - [ + "767511386384348", + "125" + ], [ - "408207040623818", - "67876110491" - ] - ] - ], - [ - "0x1faD27B543326E66185b7D1519C4E3d234D54A9C", - [ + "767511386384473", + "167" + ], [ - "3801746560076", - "1000000000" + "767511386384640", + "209" ], [ - "38060755842898", - "10000000000" - ] - ] - ], - [ - "0x1fD26Fa8D4b39d49F8f8DF93A9063F5F02a80Ecb", - [ + "767511386384849", + "251" + ], [ - "331711562300586", - "14540205488" + "767511386385100", + "293" ], [ - "336163982041551", - "11093799305" + "767511386385393", + "335" ], [ - "336942217514274", - "6716741513" + "767511386385728", + "378" ], [ - "338375415070333", - "12611715224" - ] - ] - ], - [ - "0x201ad214891136FC37750029A14008D99B9ab814", - [ + "767511386386106", + "420" + ], [ - "273830634179033", - "108850000718" - ] - ] - ], - [ - "0x202eCa424A8Db90924a4DaA3e6BCECd9311F668e", - [ + "767511386386526", + "462" + ], [ - "655813561952324", - "110759009" + "767511386386988", + "504" ], [ - "742491932947261", - "50650088368" - ] - ] - ], - [ - "0x2032d6Fa962f05b05a648d0492936DCf879b0646", - [ + "767511386387492", + "546" + ], [ - "167642878992324", - "21180650802" + "767511386388038", + "589" ], [ - "188809726173585", - "7159870568" + "767511386388627", + "631" ], [ - "189165629280356", - "22812490844" + "767511386389258", + "673" ], [ - "220191786590698", - "12020746267" - ] - ] - ], - [ - "0x20627f29B05c9ecd191542677492213aA51d9A61", - [ + "767511386389931", + "716" + ], [ - "576941170319018", - "76781922750" + "767511386390647", + "758" ], [ - "577603149817417", - "46559625597" + "767511386391405", + "800" ], [ - "586328662020556", - "51897457000" + "767511386392205", + "843" ], [ - "592657295032714", - "378309194016" + "767511386393048", + "927" ], [ - "595732510292240", - "90858470270" + "767511386393975", + "1012" ], [ - "595932363187550", - "903793388372" + "767511386394987", + "1096" ], [ - "596836156575922", - "629685276600" + "767511386396083", + "1181" ], [ - "597465841852522", - "464850000000" + "767511386397264", + "1266" ], [ - "599486968121300", - "259777962939" + "767511386398530", + "1351" ], [ - "599746746084239", - "330494092479" + "767511386399881", + "1435" ], [ - "601738494764168", - "166149576292" - ] - ] - ], - [ - "0x20A2eaaDE4B9a1b63E4fDff483dB6e982c96681B", - [ + "767511386401316", + "1520" + ], [ - "109584713085687", - "1273885350" + "767511386402836", + "1605" ], [ - "634819675697276", - "2308620655" - ] - ] - ], - [ - "0x214e02A853dCAd01B2ab341e7827a656655A1B81", - [ + "767511386404441", + "1690" + ], [ - "904990242139002", - "3425838650831" - ] - ] - ], - [ - "0x215F97a79287BE4192990FCc4555F7a102a7D3DE", - [ + "767511386406131", + "1817" + ], [ - "257934797532327", - "19124814552" - ] - ] - ], - [ - "0x21754dF1E545e836be345B0F56Cde2D8419a21B2", - [ + "767511386407948", + "1944" + ], [ - "465327248177676", - "39368282950" - ] - ] - ], - [ - "0x219312542D51cae86E47a1A18585f0bac6E6867B", - [ + "767511386409892", + "2072" + ], [ - "92976132590563", - "20088923958" - ] - ] - ], - [ - "0x21BCe8eFb792909f9ddC5C5d326d2C198fb2E933", - [ + "767511386411964", + "2199" + ], [ - "582395940698044", - "17931960176" - ] - ] - ], - [ - "0x21C455c2a53e4bbDF21AB805E1E6CC687E3029Aa", - [ + "767511386414163", + "2327" + ], [ - "637116380310734", - "3895753147" - ] - ] - ], - [ - "0x21D4Df25397446300C02338f334d0D219ABcc9C3", - [ + "767511386416490", + "2454" + ], [ - "470380807066345", - "411624219865" + "767511386418944", + "2582" ], [ - "470792431286210", - "37602900897" + "767511386421526", + "2752" ], [ - "495349607400223", - "382964380420" + "767511386424278", + "2922" ], [ - "495732571780643", - "253709415566" + "767511386427200", + "3092" ], [ - "534876703831999", - "93233987544" + "767511386430292", + "3262" ], [ - "552735179318713", - "72606632304" + "767511386433554", + "3432" ], [ - "552823996796902", - "637060677585" + "767511386436986", + "3645" ], [ - "573166828849535", - "173997222406" - ] - ] - ], - [ - "0x21E5A9678fd7b56BCd93F73f5fCD77A689D65e1A", - [ + "767511386440631", + "3858" + ], [ - "376332551455167", - "6429254333" - ] - ] - ], - [ - "0x21fA512Af0cF5ab3057c7D6Fc3b9520Baa71833D", - [ + "767511386444489", + "4071" + ], [ - "376477661392189", - "8428341425" + "767511386448560", + "4284" ], [ - "681711033814749", - "10245080960" + "767511386452844", + "4540" ], [ - "726097732002229", - "14602599487" + "767511386457384", + "4795" ], [ - "859260757600987", - "16570064186" - ] - ] - ], - [ - "0x2206e33975EF5CBf8d0DE16e4c6574a3a3aC65B6", - [ + "767511386462179", + "5051" + ], + [ + "767511386467230", + "5349" + ], + [ + "767511386472579", + "5648" + ], [ - "33126339744834", - "7" - ] - ] - ], - [ - "0x220c12268c6f1744553f456c3BF161bd8b423662", - [ + "767511386478227", + "5947" + ], [ - "250615351926669", - "14754910654" - ] - ] - ], - [ - "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", - [ + "767511386484174", + "6288" + ], [ - "634989491135365", - "93881590000" + "767511386490462", + "6630" ], [ - "635261553552881", - "89275000000" - ] - ] - ], - [ - "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", - [ + "767511386497092", + "6971" + ], [ - "141930229169149", - "14065000000" + "767511386504063", + "7355" ], [ - "626058811458059", - "125719249019" - ] - ] - ], - [ - "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", - [ + "767511386511418", + "7740" + ], [ - "649732276779694", - "44876189" - ] - ] - ], - [ - "0x2342670674C652157c1282d7E7F1bD7460EFa9E2", - [ + "767511386519158", + "8167" + ], [ - "358035739103727", - "19514795641" - ] - ] - ], - [ - "0x2352FDd9A457c549D822451B4cD43203580a29d1", - [ + "767511386527325", + "8595" + ], [ - "299781959169774", - "468725307806" - ] - ] - ], - [ - "0x23b7413b721AB75FE7024E7782F9EdcE053f220C", - [ + "767511386535920", + "9065" + ], [ - "606324488412981", - "1036783406" - ] - ] - ], - [ - "0x23C58C2B6a51aF8AbB2F7D98FD10591976489F17", - [ + "767511386544985", + "9535" + ], [ - "326225367529391", - "17549000000" - ] - ] - ], - [ - "0x23cAea94eB856767cf71a30824d72Ed5B93aA365", - [ + "767511386554520", + "10048" + ], [ - "915418302913680", - "238900000000" - ] - ] - ], - [ - "0x23E59a5b174aB23B4D6b8a1b44e60b611B0397B6", - [ + "767511386564568", + "10604" + ], [ - "201837808921554", - "262588887949" + "767511386575172", + "11161" ], [ - "202394225136865", - "268265834079" + "767511386586333", + "12408" ], [ - "220191786576128", - "14570" - ] - ] - ], - [ - "0x24367F22624f739D7F8AB2976012FbDaB8dd33f4", - [ + "767511386598741", + "13050" + ], [ - "26768674950508", - "427568784000" - ] - ] - ], - [ - "0x2437Db820DE92d8DD64B524954fA0D160767c471", - [ + "767511386611791", + "13736" + ], [ - "344730632844876", - "14480118767" - ] - ] - ], - [ - "0x24D6f2aD3C2fcD1Bb4dA8143b2bd7E027da20Efe", - [ + "767511386625527", + "14465" + ], [ - "573460544800018", - "59926244178" - ] - ] - ], - [ - "0x24F8ecf02cd9e3B21cEB16a468096A5F7F319eF3", - [ + "767511386639992", + "15236" + ], [ - "919026220879929", - "1124719481" - ] - ] - ], - [ - "0x250192A4809194B5F5Bd4724270A7DE3376d0Bb2", - [ + "767511386655228", + "16051" + ], [ - "61869552594793", - "5201831386928" + "767511386671279", + "16909" ], [ - "82817668297010", - "311908399084" + "767511386688188", + "17810" ], [ - "372394178664282", - "2871900000000" - ] - ] - ], - [ - "0x25a7C06e48C9d025B0de3e0de3fcA5802698438d", - [ + "767511386705998", + "18754" + ], [ - "362140399162224", - "6273115407" + "767511386724752", + "19741" ], [ - "376426019903538", - "25515357603" - ] - ] - ], - [ - "0x25CD302E37a69D70a6Ef645dAea5A7de38c66E2a", - [ + "767511386744493", + "20771" + ], [ - "298791493215442", - "85000000000" - ] - ] - ], - [ - "0x25CFB95e1D64e271c1EdACc12B4C9032E2824905", - [ + "767511386765264", + "21845" + ], [ - "186583237080659", - "8569224376" - ] - ] - ], - [ - "0x25d5Eb0603f36c47A53529b6A745A0805467B21F", - [ + "767511386787109", + "23004" + ], [ - "299296287064019", - "22010000022" - ] - ] - ], - [ - "0x2612C1bc597799dc2A468D6537720B245f956A22", - [ + "767511386810113", + "24207" + ], [ - "649130529433065", - "220044920" - ] - ] - ], - [ - "0x262126FD37D04321D7f824c8984976542fCA2C36", - [ + "767511386834320", + "25454" + ], [ - "92555674061199", - "101864651658" - ] - ] - ], - [ - "0x26258096ADE7E73B0FCB7B5e2AC1006A854deEf6", - [ + "767511386859774", + "26786" + ], [ - "434130466448", - "27751913384" + "767511386886560", + "28162" ], [ - "464312835593", - "25323470663" + "767511386914722", + "29624" ], [ - "490607948331", - "9028357925" + "767548493417834", + "31172" ], [ - "520071959814", - "9564346441" + "767548493449006", + "32823" ], [ - "4931242977938", - "10898078686" + "767548493481829", + "32830" ], [ - "343529476955892", - "26569428177" + "767548493514659", + "34569" ], [ - "581145184712006", - "762766666666" + "767548493549228", + "36379" ], [ - "644413986347346", - "32" + "767548493585607", + "38275" ], [ - "644546638392929", - "32" + "767548493623882", + "40258" ], [ - "647552815161015", - "80311" + "767548493664140", + "42328" ], [ - "647823489801690", - "15368221875" + "767548493706468", + "44528" ], [ - "647953831875574", - "11699675781" + "767548493750996", + "46815" ], [ - "648064641238285", - "12204390625" + "767548493797811", + "49232" ], [ - "648143628178042", - "11488750000" + "767548493847043", + "51778" ], [ - "648162303670466", - "13655200000" + "767548493898821", + "54455" ], [ - "648218529970749", - "15127645459" + "767548493953276", + "57262" ], [ - "648319733131161", - "9068714111" + "767548494010538", + "60200" ], [ - "648390451720158", - "17199921875" + "767548494070738", + "63310" ], [ - "648437018209889", - "15524432405" + "767548494134048", + "66594" ], [ - "648537251303183", - "17" + "767549755547042", + "70009" ], [ - "648669852761603", - "17910660356" + "767549755617051", + "73632" ], [ - "648703542243759", - "13031467277" + "767578296825681", + "77439" ], [ - "649087464308065", - "13380625000" + "767578296903120", + "81459" ], [ - "649130749477985", - "12668079062" + "767578296984579", + "85659" ], [ - "654557370948114", - "213185000000" + "767578297070238", + "90077" ], [ - "655483763856093", - "154938000000" + "767578297160315", + "94713" ], [ - "663001818967242", - "28" + "767578297255028", + "99567" ], [ - "664619505628960", - "22" + "767578297354595", + "104681" ], [ - "665701343812538", - "20" + "767578297459276", + "110058" ], [ - "666251093296344", - "277121831207" + "767578297569334", + "115738" ], [ - "666528215127551", - "294971062419" + "767578892875042", + "121681" ], [ - "669913176913700", - "168992222694" + "767578892996723", + "127988" ], [ - "670265992890158", - "3760739846" + "767578893124711", + "134587" ], [ - "670269753630004", - "195093286581" + "767578893259298", + "141491" ], [ - "670708659416585", - "8315794130" + "767578893400789", + "148745" ], [ - "671204344019292", - "9227239745" + "767583217549534", + "156392" ], [ - "673990119454246", - "387240" + "767583217705926", + "164507" ], [ - "673990119841486", - "266985351613" + "767583217870433", + "172943" ], [ - "674290923945041", - "214257648238" + "767583218043376", + "181816" ], [ - "675271870072786", - "1265309093" + "767583218225192", + "191170" ], [ - "675939800999403", - "89647628696" + "767583218416362", + "201004" ], [ - "676546386034429", - "6694533342" + "767583218617366", + "211320" ], [ - "676553080567771", - "8499476521" + "767583218828686", + "222160" ], [ - "676561580044292", - "10140222821" + "767583219050846", + "233569" ], [ - "676571720267113", - "11668233878" + "767583219284415", + "245547" ], [ - "676583388500991", - "13349099640" + "767583219529962", + "258138" ], [ - "676596737600631", - "14641791657" + "767583219788100", + "271385" ], [ - "676611379392288", - "16023438417" + "767583220059485", + "285332" ], [ - "676627402830705", - "17794160449" + "767583220344817", + "299980" ], [ - "676645196991154", - "19717534095" + "767583220644797", + "315373" ], [ - "676686202345495", - "21015744781" + "767583220960170", + "331555" ], [ - "676707218090276", - "21993061317" + "767583221291725", + "348569" ], [ - "676751492794865", - "125608" + "767583221640294", + "366459" ], [ - "676751492920473", - "55278924469" + "767583222006753", + "385271" ], [ - "676879462123907", - "722460698" + "767583222392024", + "405047" ], [ - "676961397323692", - "84887658705" + "767583222797071", + "425832" ], [ - "677046284982397", - "75519741929" + "767583223222946", + "87" ], [ - "677172387770040", - "6131806238" + "767583223223033", + "130" ], [ - "677178519576278", - "59202430775" + "767583223223163", + "174" ], [ - "677237722007053", - "60660646377" + "767583223223337", + "217" ], [ - "677298382653430", - "55297098356" + "767583223223554", + "261" ], [ - "677353679751786", - "41809339114" + "767626793223815", + "305" ], [ - "677395489090900", - "36138699789" + "767626793224120", + "348" ], [ - "677463173067632", - "28108721786" + "767626793224468", + "392" ], [ - "677511504808903", - "3551817566" + "767626793224860", + "436" ], [ - "677515056626469", - "10550613290" + "767626793225296", + "480" ], [ - "677525607239759", - "4793787549" + "767626793225776", + "523" ], [ - "677530401027308", - "236335204805" + "767626793226299", + "567" ], [ - "677766895578568", - "178586879475" + "767626793226866", + "611" ], [ - "677945482458043", - "293860207608" + "767626793227477", + "655" ], [ - "678239342665651", - "675575202780" + "767626793228132", + "699" ], [ - "682826275044476", - "17833430647" + "767626793228831", + "742" ], [ - "682845259142899", - "85872956797" + "767626793229573", + "786" ], [ - "682931132099696", - "137696415333" + "767626793230359", + "830" ], [ - "683088991506904", - "102232834268" - ] - ] - ], - [ - "0x26631e82aa93DeDeFB15eDBF5574bd4E84D0FC2D", - [ + "767626793231189", + "874" + ], [ - "323262951431540", - "22464236574" - ] - ] - ], - [ - "0x26AFBbC659076B062548e8f46D424842Bc715064", - [ + "767626793232063", + "962" + ], [ - "258943234658706", - "94067068214" - ] - ] - ], - [ - "0x26C08ce60A17a130f5483D50C404bDE46985bCaf", - [ + "767642320933025", + "1050" + ], [ - "325145004497070", - "113447201008" - ] - ] - ], - [ - "0x26EDdf190Be39Cb4DAAb274651c0d42b03Ff74a5", - [ + "767642320934075", + "1138" + ], [ - "682845256557823", - "2585076" + "767642320935213", + "1226" ], [ - "741718653137282", - "111751582" - ] - ] - ], - [ - "0x26f781D7f59c67BBd16acED83dB4ba90d1e47689", - [ + "767642320936439", + "1314" + ], [ - "109548569427007", - "2250551935" - ] - ] - ], - [ - "0x27320AAc0E3bbc165E6048aFc0F28500091dca73", - [ + "767642320937753", + "1401" + ], [ - "240574257021760", - "14827650417" - ] - ] - ], - [ - "0x2745a1f9774FF3b59cbDfC139c6f19f003392e2C", - [ + "767642320939154", + "1490" + ], [ - "580465682607657", - "1581698780" + "767642320940644", + "1580" ], [ - "643046212115536", - "1220733194" + "767642320942224", + "1669" ], [ - "643059909351872", - "5072600938" + "767642320943893", + "1757" ], [ - "643616429319061", - "1117067455" + "767642320945650", + "1889" ], [ - "643630556511892", - "3144911832" + "767642320947539", + "2023" ], [ - "644440076885807", - "2439339467" + "767642320949562", + "2156" ], [ - "646983796131611", - "1010894641" - ] - ] - ], - [ - "0x27553635B0EA3E0d4b551c61Ea89c9c1b81e266f", - [ + "767642320951718", + "2290" + ], [ - "201441256822560", - "15818274887" - ] - ] - ], - [ - "0x27646656a06e4Eb964edfB1e1A185E5fB31c5ca9", - [ + "767642320954008", + "2422" + ], [ - "266838658304301", - "216644999935" - ] - ] - ], - [ - "0x277FC128D042B081F3EE99881802538E05af8c43", - [ + "767642320956430", + "2555" + ], [ - "267204322956411", - "8634054720" - ] - ] - ], - [ - "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", - [ + "767642320958985", + "2688" + ], [ - "311015613569053", - "6238486940" - ] - ] - ], - [ - "0x2817a8dFe9DCff27449C8C66Fa02e05530859B73", - [ + "767642320961673", + "2865" + ], [ - "495986281196209", - "327035406660" - ] - ] - ], - [ - "0x284A2d22620974fb416D866c18a1f3c848E7b7Bc", - [ + "767642320964538", + "3042" + ], [ - "644367998960591", - "103407742" - ] - ] - ], - [ - "0x284f942F11a5046a5D11BCbEC9beCb46d1172512", - [ + "767642320967580", + "3219" + ], [ - "51088313644799", - "41188549146" + "767642320970799", + "3396" ], [ - "258469319874650", - "96515746089" - ] - ] - ], - [ - "0x2894457502751d0F92ed1e740e2c8935F879E8AE", - [ + "767642320974195", + "3573" + ], [ - "18052754491380", - "1000000000" + "767642320977768", + "3795" ], [ - "141944294169149", - "10000000000" + "767642320981563", + "4016" ], [ - "744765029950609", - "18206372000" - ] - ] - ], - [ - "0x28A40076496E02a9A527D7323175b15050b6C67c", - [ + "767642883204174", + "4238" + ], [ - "273700188355894", - "16557580124" + "767642883208412", + "4462" ], [ - "325749068110199", - "19498214619" + "767642883212874", + "4728" ], [ - "326472527780618", - "118292810725" + "767642883217602", + "4994" ], [ - "406164449052348", - "405035690" + "767642883222596", + "5260" ], [ - "406164854088038", - "499650000" + "767682652111200", + "5571" ], [ - "406165353738038", - "404668999" - ] - ] - ], - [ - "0x28aB25Bf7A691416445A85290717260971151eD2", - [ + "767682652116771", + "5885" + ], [ - "267322616665401", - "11510822108" - ] - ] - ], - [ - "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", - [ + "767682652122656", + "6196" + ], [ - "160648337135830", - "30093729527" + "767682652128852", + "6551" ], [ - "637761302275033", - "380793557160" + "767682652135403", + "6907" ], [ - "766434901228015", - "15422132619" - ] - ] - ], - [ - "0x2920A3192613d8c42f21b64873dc0Ddfcbf018D4", - [ + "767682652142310", + "7263" + ], [ - "7395832970393", - "10000000000" - ] - ] - ], - [ - "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", - [ + "767682652149573", + "7663" + ], [ - "33186875353373", - "500000000" + "767682652157236", + "8064" ], [ - "67435055994809", - "10000000000" + "767682652165300", + "8509" ], [ - "153926655075128", - "838565448" + "767682652173809", + "8954" ], [ - "282587028442772", - "17250582700" + "767682652182763", + "9444" ], [ - "525672111796446", - "70060393479" + "767682652192207", + "9941" ], [ - "595441968432834", - "80085100000" + "767682652202148", + "10476" ], [ - "630893407534395", - "196063966" + "767682652212624", + "11055" ], [ - "872761488129531", - "70125007621" - ] - ] - ], - [ - "0x295EFA47F527b30B45e51E6F5b4f4b88CF77cA17", - [ + "767682652223679", + "11635" + ], [ - "18051338281355", - "50364336" + "767682652235314", + "12259" ], [ - "18051388645691", - "1232512356" - ] - ] - ], - [ - "0x297751960DAD09c6d38b73538C1cce45457d796d", - [ + "767682652247573", + "12929" + ], [ - "41373044931817", - "727522" + "767705524974897", + "13607" ], [ - "67097307242511", - "15" + "767705524988504", + "14322" ], [ - "87849021601047", - "80437" + "767705525002826", + "15082" ], [ - "90975474968754", - "3" + "767705525017908", + "15886" ], [ - "153701253420471", - "67407" + "767705525033794", + "16735" ], [ - "232482126144006", - "5451263" + "767705525050529", + "17629" ], [ - "376489301622502", - "37387" - ] - ] - ], - [ - "0x29841AfFE231392BF0826B85488e411C3E5B9cC4", - [ + "767705525068158", + "18569" + ], [ - "631794823129224", - "1314233166" - ] - ] - ], - [ - "0x2991e5C0aF1877C6AB782154f0dCF3c15e3dbEC3", - [ + "767705525086727", + "19553" + ], [ - "160678430865357", - "18253993180" + "767807852800338", + "20582" ], [ - "167558036125804", - "84842866520" + "767812853087571", + "21651" ], [ - "634190283997794", - "1715232990" - ] - ] - ], - [ - "0x299e4B9591993c6001822baCF41aff63F9C1C93F", - [ + "767812853109222", + "22780" + ], [ - "260069118609084", - "794705201763" + "767812853132002", + "23989" ], [ - "267656630501959", - "150336454905" + "767812853155991", + "25243" ], [ - "295137332480012", - "2607932412299" + "767824420255993", + "27944" ], [ - "297745264892311", - "766254121133" - ] - ] - ], - [ - "0x29e1A68927a46f42d3B82417A01645Ee23F86bD9", - [ + "767824420283937", + "29379" + ], [ - "324911717326872", - "115438917" - ] - ] - ], - [ - "0x2a1c4504a1dB71468dBD165CD0111d51Db12Db20", - [ + "767824420313316", + "30904" + ], [ - "51129502193945", - "25356695159" + "767824420344220", + "32519" ], [ - "202818106667533", - "17842441406" + "767824420376739", + "34224" ], [ - "408046817720715", - "10000317834" - ] - ] - ], - [ - "0x2A5c5E614AC54969790c8e383487289CBAA0aF82", - [ + "767824420410963", + "36020" + ], [ - "76028680969604", - "604036207" + "767825578892582", + "37871" ], [ - "680317702465922", - "5002669630" + "767825585879797", + "41900" ], [ - "760184010820995", - "729833339" + "767825585921697", + "44054" ], [ - "760470668898824", - "369074345" - ] - ] - ], - [ - "0x2A7685C8C01e99EB44f635591A7D40d3a344DA6F", - [ + "767825585965751", + "46343" + ], [ - "258032653899264", - "42247542366" - ] - ] - ], - [ - "0x2aa7f9f1018f026FF81a5b9C9E1283e4f5F2f01a", - [ + "767825586012094", + "48723" + ], [ - "59269854376843", - "29229453541" + "767825586060817", + "51237" ], [ - "97271320489293", - "40869054933" + "767825586112054", + "53887" ], [ - "157521724557081", - "21334750070" + "767825586165941", + "56672" ], [ - "159085770998418", - "46100000000" + "767825586222613", + "59593" ], [ - "189188441771200", - "19872173070" + "767848361131422", + "62650" ], [ - "189208313944270", - "13412667204" - ] - ] - ], - [ - "0x2Ac6f4E13a2023bad7D429995Bf07C6ecC1AC05C", - [ + "767848361194072", + "65916" + ], [ - "186248277026701", - "1607000000" + "767848361259988", + "69334" ], [ - "634495210451551", - "1561000000" - ] - ] - ], - [ - "0x2AdC396D8092D79Db0fA8a18fa7e3451Dc1dFB37", - [ + "767848361329322", + "72889" + ], [ - "187153746256456", - "42281642936" - ] - ] - ], - [ - "0x2B19fDE5d7377b48BE50a5D0A78398a496e8B15C", - [ + "767848361402211", + "76625" + ], [ - "598229195571107", - "175120144248" + "767848361478836", + "80586" ], [ - "598404315715355", - "706556073123" - ] - ] - ], - [ - "0x2B3C8C43FBc68C8aE38166294ec75A4622c94C65", - [ + "767848361559422", + "84728" + ], [ - "75517881623550", - "38308339380" + "767848361644150", + "89097" ], [ - "118284988563198", - "23400000000" + "767848361733247", + "93691" ], [ - "243340907864513", - "5071931149" + "767848361826938", + "98512" ], [ - "244927756280795", - "46513491853" + "767848361925450", + "103559" ], [ - "319587273487138", - "99704140012" + "767848362029009", + "108878" ], [ - "331528394095863", - "121345718040" - ] - ] - ], - [ - "0x2b816A1afb2CFA9Fb13e3f4d5487f0689187FBdB", - [ + "767848362137887", + "114469" + ], [ - "595522053532834", - "168039500000" - ] - ] - ], - [ - "0x2ba7e63FA4F30e18d71755DeB4f5385B9f0b7DCf", - [ + "767848362252356", + "120376" + ], [ - "786871494302699", - "450790656" + "767848362372732", + "126556" ], [ - "786871945093355", - "932517247" - ] - ] - ], - [ - "0x2bDB0cB25Db0012dF643041B3490d163A1809eE6", - [ + "767848362499288", + "133053" + ], [ - "157417754524248", - "84608203869" - ] - ] - ], - [ - "0x2BeaB5818689309117AAfB0B89cd6F276C824D34", - [ + "767848362632341", + "139912" + ], [ - "344363859002519", - "25254232357" - ] - ] - ], - [ - "0x2BEe2D53261B16892733B448351a8Fd8c0f743e7", - [ + "767848362772253", + "147088" + ], [ - "919414411428634", - "147996" - ] - ] - ], - [ - "0x2bF046A052942B53Ca6746de4D3295d8f10d4562", - [ + "767848362919341", + "154628" + ], [ - "740992675275273", - "14660252551" - ] - ] - ], - [ - "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", - [ + "767848363073969", + "162575" + ], [ - "61022673231233", - "21700205805" + "767848363236544", + "170930" ], [ - "91013305781059", - "21825144968" + "767848363407474", + "179695" ], [ - "197758167416406", - "3504136084" + "767848363587169", + "188913" ], [ - "213430473225415", - "19297575823" + "767848363776082", + "198630" ], [ - "227257304826086", - "8838791596" + "767848363974712", + "208846" ], [ - "227797101910617", - "34509154491" + "767848364183558", + "219562" ], [ - "235855165427494", - "2631578947" + "767848364403120", + "230823" ], [ - "648015664036231", - "1982509180" - ] - ] - ], - [ - "0x2C01E651a64387352EbAF860165778049031e190", - [ + "767848364633943", + "242675" + ], [ - "401140958523891", - "6000000000" - ] - ] - ], - [ - "0x2C4fE365db09aD149d9caeC5fd9a42f60A0cf1a3", - [ + "767848364876618", + "255118" + ], [ - "28059702904241", - "1259635749" + "767848365131736", + "268197" ], [ - "78570049172294", - "5603412867" + "767848365399933", + "281957" ], [ - "107446086823768", - "4363527272" - ] - ] - ], - [ - "0x2cD896e533983C61B0f72e6f4BbF809711AcC5CE", - [ + "767848365681890", + "296446" + ], [ - "136612399855910", - "1516327182560" + "767848365978336", + "311662" ], [ - "180612996863780", - "58781595885" + "767848366289998", + "327651" ], [ - "564786469810178", - "14382502530" + "767848366617649", + "344459" ], [ - "566175469825977", - "30150907500" + "767848366962108", + "362133" ], [ - "568987325580815", - "30150907500" + "767848367324241", + "380716" ], [ - "570096344263715", - "30150907500" + "767848367704957", + "400256" ], [ - "572087175787753", - "30150907500" - ] - ] - ], - [ - "0x2d4710a99D8DCBCDDf407c672c233c9B1b2F8bfb", - [ + "767848368105213", + "420798" + ], [ - "13620320740040", - "2776257694900" + "767848368526011", + "442387" ], [ - "345351025418338", - "1509530400000" + "767852884968443", + "90" ], [ - "347475827541041", - "1543861200000" + "767852884968533", + "135" ], [ - "763876703327895", - "46201857" + "767852884968668", + "181" ], [ - "763877400753507", - "53680946" + "767852884968849", + "226" ], [ - "763877883716757", - "1494533087" + "767852884969075", + "271" ], [ - "763898520549826", - "974988542" + "767852884969346", + "317" ], [ - "763903829825521", - "684952219" + "767852884969663", + "362" ], [ - "763904803936802", - "52372148" + "767852884970025", + "408" ], [ - "763914820231283", - "23750326521" + "767852884970433", + "453" ], [ - "763938570557804", - "79147734" + "767852884970886", + "498" ], [ - "763939554575290", - "4893969099" + "767852884971384", + "544" ], [ - "763944513817433", - "9019889238" + "767852884971928", + "589" ], [ - "763954688543036", - "21118416942" + "767852884972517", + "635" ], [ - "763976072545528", - "54845693" + "767852884973152", + "681" ], [ - "763976182271147", - "52203689" + "767852884973833", + "727" ], [ - "763976306153164", - "51007458" + "767863326337265", + "91" ], [ - "763976388222525", - "1300355823" + "767863362728577", + "18484478" ], [ - "763981032254637", - "2130472638" + "767863381213055", + "5167937" ], [ - "763983236435828", - "69051736" + "767863386380992", + "18280626" ], [ - "764056339138453", - "516217762" + "767863404661618", + "18414676" ], [ - "764056921985326", - "1434013875" + "767863423076294", + "18443046" ], [ - "764059354079704", - "590245000" + "767863441519340", + "18477486" ], [ - "764454359166574", - "2799546066" + "767863459996826", + "16131224" ], [ - "764457168269474", - "797906392781" + "767863476128050", + "16087207" ], [ - "765255074662255", - "857156766102" + "767863525316862", + "10937836" ], [ - "767510533786724", - "123" + "767863536254698", + "16385295" ], [ - "767510533786847", - "165" + "767863569071432", + "15950506" ], [ - "767510533787012", - "206" + "768114582705503", + "298231122" ], [ - "767510533787218", - "288" + "768114880936625", + "18672957" ], [ - "767510533787506", - "330" + "768114899609582", + "330845521" ], [ - "767510533787836", - "371" + "768115230455103", + "331324585" ], [ - "767510533788207", - "413" + "768115978889820", + "296676806" ], [ - "767510533788620", - "454" + "768116275566626", + "296728765" ], [ - "767510533789074", - "495" + "768116572295391", + "296762499" ], [ - "767510533789569", - "537" + "768117464966063", + "298343543" ], [ - "767510533790106", - "578" + "768117763309606", + "137124064" ], [ - "767511386360882", - "620" + "768117900433793", + "123" ], [ - "767511386361502", - "662" + "768118170560501", + "256642528" ], [ - "767511386362164", - "703" + "768119631748125", + "302761187" ], [ - "767511386362867", - "745" + "768119934509312", + "280418672" ], [ - "767511386363612", - "786" + "768120771960939", + "279694893" ], [ - "767511386364398", - "828" + "768121602995954", + "276767301" ], [ - "767511386365226", - "870" + "768122461859189", + "296600700" ], [ - "767511386366096", - "912" + "768123348981826", + "302369890" ], [ - "767511386367008", - "954" + "768123947537693", + "296342950" ], [ - "767511386367962", - "996" + "768124836569745", + "290541691" ], [ - "767511386368958", - "1038" + "768125127111556", + "291176686" ], [ - "767511386369996", - "1081" + "768295826854698", + "285816521" ], [ - "767511386371077", - "1123" + "768296112671219", + "285381250" ], [ - "767511386372200", - "1165" + "768296398052469", + "284997197" ], [ - "767511386373365", - "1208" + "768298198893914", + "68312976" ], [ - "767511386374573", - "1251" + "768298267207290", + "201" ], [ - "767511386375824", - "1293" + "768298267207491", + "273021877" ], [ - "767511386377117", - "1336" + "768298540229368", + "317530794" ], [ - "767511386378453", - "1379" + "768298857760162", + "322193785" ], [ - "767511386379832", - "1421" + "768299179953947", + "331229342" ], [ - "767511386381253", - "1464" + "768299511183289", + "331260558" ], [ - "767511386382717", - "1507" + "768300505169969", + "321182204" ], [ - "767511386384265", - "83" + "768301129935086", + "312207718" ], [ - "767511386384348", - "125" + "768301442142804", + "288907800" ], [ - "767511386384473", - "167" + "768302650177158", + "308531054" ], [ - "767511386384640", - "209" + "768303848319913", + "252106840" ], [ - "767511386384849", - "251" + "768304100426753", + "244186585" ], [ - "767511386385100", - "293" + "768304606652316", + "114725072" ], [ - "767511386385393", - "335" + "768308228492462", + "158" ], [ - "767511386385728", - "378" + "768308228492620", + "197" ], [ - "767511386386106", - "420" + "768308228493053", + "276" ], [ - "767511386386526", - "462" + "768308228493329", + "315" ], [ - "767511386386988", - "504" + "768308228493644", + "354" ], [ - "767511386387492", - "546" + "768308729405919", + "510" ], [ - "767511386388038", - "589" + "768308729406978", + "588" ], [ - "767511386388627", - "631" + "768309128949088", + "364833293" ], [ - "767511386389258", - "673" + "768310260215587", + "347953848" ], [ - "767511386389931", - "716" + "768310608169435", + "201082346" ], [ - "767511386390647", - "758" + "768310809251781", + "201245887" ], [ - "767511386391405", - "800" + "768311435453153", + "116" ], [ - "767511386392205", - "843" + "768311435453424", + "194" ], [ - "767511386393048", - "927" + "768311435453618", + "232" ], [ - "767511386393975", - "1012" + "768311435453850", + "271" ], [ - "767511386394987", - "1096" + "768311826167816", + "116" ], [ - "767511386396083", - "1181" + "768311826168087", + "193" ], [ - "767511386397264", - "1266" + "768311937992490", + "197071061" ], [ - "767511386398530", - "1351" + "768312135063782", + "155" ], [ - "767511386399881", - "1435" + "768312623349155", + "499719459" ], [ - "767511386401316", - "1520" + "768313123068614", + "210719422" ], [ - "767511386402836", - "1605" + "768313474127194", + "154" ], [ - "767511386404441", - "1690" + "768313474128044", + "309" ], [ - "767511386406131", - "1817" + "768313474128353", + "348" ], [ - "767511386407948", - "1944" + "768313474128701", + "387" ], [ - "767511386409892", - "2072" + "768313474129088", + "426" ], [ - "767511386411964", - "2199" + "768313474129514", + "465" ], [ - "767511386414163", - "2327" + "768313474129979", + "504" ], [ - "767511386416490", - "2454" + "768313474131026", + "582" ], [ - "767511386418944", - "2582" + "768313474132229", + "660" ], [ - "767511386421526", - "2752" + "768313474132889", + "699" ], [ - "767511386424278", - "2922" + "768313474134326", + "777" ], [ - "767511386427200", - "3092" + "768313474135958", + "933" ], [ - "767511386430292", - "3262" + "768313474137902", + "1089" ], [ - "767511386433554", - "3432" + "768313474138991", + "1167" ], [ - "767511386436986", - "3645" + "768313474140158", + "1245" ], [ - "767511386440631", - "3858" + "768313474144127", + "1480" ], [ - "767511386444489", - "4071" + "768313474145607", + "1558" ], [ - "767511386448560", - "4284" + "768313474147165", + "1675" ], [ - "767511386452844", - "4540" + "768313474150633", + "1910" ], [ - "767511386457384", - "4795" + "768313474152543", + "2028" ], [ - "767511386462179", - "5051" + "768313474154571", + "2145" ], [ - "767511386467230", - "5349" + "768313474156716", + "2263" ], [ - "767511386472579", - "5648" + "768314355726830", + "88909462" ], [ - "767511386478227", - "5947" + "768315901357256", + "339056370" ], [ - "767511386484174", - "6288" + "768316240413626", + "301378783" ], [ - "767511386490462", - "6630" - ], + "768316541792409", + "35791954" + ] + ] + ], + [ + "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", + [ [ - "767511386497092", - "6971" + "322290480743612", + "94607705314" + ] + ] + ], + [ + "0x2E34723A04B9bb5938373DCFdD61410F43189246", + [ + [ + "67381548202218", + "1447784544" + ] + ] + ], + [ + "0x2E40961fd5Abd053128D2e724a61260C30715934", + [ + [ + "658105711671123", + "41555431100" ], [ - "767511386504063", - "7355" + "658877005401946", + "136033474375" ], [ - "767511386511418", - "7740" + "671451812872345", + "20082877176" ], [ - "767511386519158", - "8167" + "676806771844942", + "22871716433" ], [ - "767511386527325", - "8595" + "676852872846308", + "12839897666" ], [ - "767511386535920", - "9065" + "679500898240401", + "150688818320" ], [ - "767511386544985", - "9535" + "679689278965321", + "33005857560" ], [ - "767511386554520", - "10048" + "720695437014319", + "243235296262" ], [ - "767511386564568", - "10604" + "720938672310581", + "12267465638" ], [ - "767511386575172", - "11161" + "725824924442098", + "269398121130" ], [ - "767511386586333", - "12408" + "744798716338245", + "9220124675" ], [ - "767511386598741", - "13050" + "860106144873359", + "79143367104" + ] + ] + ], + [ + "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", + [ + [ + "7415832970393", + "194762233747" ], [ - "767511386611791", - "13736" + "78648530626824", + "138292382101" ], [ - "767511386625527", - "14465" + "152208324465731", + "194272213416" ], [ - "767511386639992", - "15236" + "156096698259859", + "320440448951" ], [ - "767511386655228", - "16051" + "165896787517307", + "165634345762" ], [ - "767511386671279", - "16909" + "166062421863069", + "162668432277" ], [ - "767511386688188", - "17810" + "394996007186444", + "290768602971" ], [ - "767511386705998", - "18754" + "573762332985345", + "53986261284" ], [ - "767511386724752", - "19741" + "574794197119988", + "682695875" + ] + ] + ], + [ + "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872", + [ + [ + "76216082547355", + "7329461840" ], [ - "767511386744493", - "20771" + "157638542244933", + "60174119496" ], [ - "767511386765264", - "21845" + "213285967419772", + "21267206558" ], [ - "767511386787109", - "23004" + "634864361051387", + "70921562500" ], [ - "767511386810113", - "24207" + "647439464023467", + "15004452000" + ] + ] + ], + [ + "0x2e95A39eF19c5620887C0d9822916c0406E4E75e", + [ + [ + "159584961546434", + "99821724986" + ] + ] + ], + [ + "0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8", + [ + [ + "783376684764145", + "1000000" + ] + ] + ], + [ + "0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F", + [ + [ + "184026530861047", + "134623539909" + ] + ] + ], + [ + "0x2f89DB6B5E80C4849142789d777109D2F911F780", + [ + [ + "331726102506074", + "5251308075" + ] + ] + ], + [ + "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", + [ + [ + "326330661529391", + "16541491227" ], [ - "767511386834320", - "25454" + "465286109667912", + "41138509764" ], [ - "767511386859774", - "26786" + "531116209812109", + "109538139161" ], [ - "767511386886560", - "28162" + "561676842598316", + "57729458645" ], [ - "767511386914722", - "29624" + "574187702455863", + "199863307838" ], [ - "767548493417834", - "31172" + "577754454852811", + "150501595883" ], [ - "767548493449006", - "32823" + "591782385862752", + "164341630162" + ] + ] + ], + [ + "0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA", + [ + [ + "744297030626026", + "11165929503" ], [ - "767548493481829", - "32830" + "744308196555529", + "33745270881" ], [ - "767548493514659", - "34569" + "744341941826410", + "16872062514" + ] + ] + ], + [ + "0x30beFd253Ca972800150dBA8114F7A4EF53183D9", + [ + [ + "643649755203625", + "496254001" + ] + ] + ], + [ + "0x30d0DEb932b5535f792d359604D7341D1B357a35", + [ + [ + "92715335512140", + "260797078423" + ] + ] + ], + [ + "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", + [ + [ + "611709212072170", + "19083709019" + ] + ] + ], + [ + "0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F", + [ + [ + "344839852767681", + "1993933960" + ] + ] + ], + [ + "0x3103c84c86a534a4f10C3823606F2a5b90923924", + [ + [ + "350560995758670", + "1562442699" ], [ - "767548493549228", - "36379" - ], + "361237680058040", + "3203293071" + ] + ] + ], + [ + "0x31188536865De4593040fAfC4e175E190518e4Ef", + [ [ - "767548493585607", - "38275" + "70474963554843", + "42647602248" ], [ - "767548493623882", - "40258" + "87355264432269", + "23229244940" ], [ - "767548493664140", - "42328" + "159182841468143", + "25259530956" ], [ - "767548493706468", - "44528" + "159208100999099", + "75628998693" ], [ - "767548493750996", - "46815" + "247427787534240", + "39695519731" ], [ - "767548493797811", - "49232" - ], + "408397582477655", + "20847822433" + ] + ] + ], + [ + "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", + [ [ - "767548493847043", - "51778" + "185408194792894", + "19585490430" ], [ - "767548493898821", - "54455" + "199678543542300", + "10849956649" ], [ - "767548493953276", - "57262" + "201457075097447", + "6841999986" ], [ - "767548494010538", - "60200" + "656568060160113", + "1550661150" ], [ - "767548494070738", - "63310" - ], + "672612693625732", + "5000000000" + ] + ] + ], + [ + "0x31b9084568783Fd9D47c733F3799567379015e6D", + [ [ - "767548494134048", - "66594" - ], + "598066496589195", + "100033987828" + ] + ] + ], + [ + "0x3213977900A71e183818472e795c76aF8cbC3a3E", + [ [ - "767549755547042", - "70009" - ], + "209624708274640", + "2727243727" + ] + ] + ], + [ + "0x328e124cE7F35d9aCe181B2e2B4071f51779B363", + [ [ - "767549755617051", - "73632" - ], + "159684783271420", + "51108156265" + ] + ] + ], + [ + "0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39", + [ [ - "767578296825681", - "77439" - ], + "355785898656583", + "159354982035" + ] + ] + ], + [ + "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e", + [ [ - "767578296903120", - "81459" + "51154858889104", + "22097720000" ], [ - "767578296984579", - "85659" + "78544641460294", + "25407712000" ], [ - "767578297070238", - "90077" + "85869322903816", + "96590650000" ], [ - "767578297160315", - "94713" + "93193533981954", + "51428850000" ], [ - "767578297255028", - "99567" + "160729464951818", + "27130320000" ], [ - "767578297354595", - "104681" + "170334015806894", + "21861840000" ], [ - "767578297459276", - "110058" + "198205724465484", + "17204908500" ], [ - "767578297569334", - "115738" + "210838860371618", + "31699684500" ], [ - "767578892875042", - "121681" + "249470894900355", + "141114556811" ], [ - "767578892996723", - "127988" + "394957500386195", + "2656309347" ], [ - "767578893124711", - "134587" - ], + "451982392748406", + "3362213720" + ] + ] + ], + [ + "0x32ddCe808c77E45411CE3Bb28404499942db02a7", + [ [ - "767578893259298", - "141491" + "157572697483467", + "30301264175" ], [ - "767578893400789", - "148745" - ], + "672686690262012", + "9156068040" + ] + ] + ], + [ + "0x33033E306c89Dc5b662f01e74B12623f9a39CCE4", + [ [ - "767583217549534", - "156392" - ], + "401134958523891", + "6000000000" + ] + ] + ], + [ + "0x33314cF610C14460d3c184a55363f51d609aa076", + [ [ - "767583217705926", - "164507" + "189165629280352", + "4" ], [ - "767583217870433", - "172943" - ], + "250764687174527", + "6" + ] + ] + ], + [ + "0x334bdeAA1A66E199CE2067A205506Bf72de14593", + [ [ - "767583218043376", - "181816" - ], + "78581810315623", + "1" + ] + ] + ], + [ + "0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96", + [ [ - "767583218225192", - "191170" + "343800433705719", + "25762354710" ], [ - "767583218416362", - "201004" - ], + "355945253638618", + "61234325811" + ] + ] + ], + [ + "0x33c0BCac5c1835fe9D52D35079F6617A22c6C431", + [ [ - "767583218617366", - "211320" + "326347203020618", + "125324760000" ], [ - "767583218828686", - "222160" + "328066927799830", + "36648000000" ], [ - "767583219050846", - "233569" + "511268244803978", + "49788645972" ], [ - "767583219284415", - "245547" + "533229385997211", + "202654427854" ], [ - "767583219529962", - "258138" + "552807785951017", + "16210845885" ], [ - "767583219788100", - "271385" + "553548932420572", + "43736535200" ], [ - "767583220059485", - "285332" - ], + "575265144492570", + "31060210793" + ] + ] + ], + [ + "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", + [ [ - "767583220344817", - "299980" - ], + "28423496858037", + "1897354001" + ] + ] + ], + [ + "0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F", + [ [ - "767583220644797", - "315373" + "151059913817209", + "718187220626" ], [ - "767583220960170", - "331555" + "194136445740033", + "669600000000" ], [ - "767583221291725", - "348569" + "398058157938414", + "131956563555" ], [ - "767583221640294", - "366459" + "497621309855122", + "579087801478" ], [ - "767583222006753", - "385271" + "525752878043783", + "4019068358051" ], [ - "767583222392024", - "405047" + "574443423459533", + "291778458931" ], [ - "767583222797071", - "425832" - ], + "575412697794786", + "213651821494" + ] + ] + ], + [ + "0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91", + [ [ - "767583223222946", - "87" - ], + "700036877911620", + "6971971500" + ] + ] + ], + [ + "0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97", + [ [ - "767583223223033", - "130" - ], + "320197037442753", + "8912443926" + ] + ] + ], + [ + "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327", + [ [ - "767583223223163", - "174" + "202773340970944", + "44765696589" ], [ - "767583223223337", - "217" - ], + "274157284179751", + "130932379038" + ] + ] + ], + [ + "0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d", + [ [ - "767583223223554", - "261" - ], + "312543047721534", + "185860975995" + ] + ] + ], + [ + "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", + [ [ - "767626793223815", - "305" + "284272720466475", + "21940000000" ], [ - "767626793224120", - "348" - ], + "367354986456086", + "159350000000" + ] + ] + ], + [ + "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30", + [ [ - "767626793224468", - "392" + "326049910381759", + "24" ], [ - "767626793224860", - "436" - ], + "340162996725906", + "1695292297" + ] + ] + ], + [ + "0x3489B1E99537432acAe2DEaDd3C289408401d893", + [ [ - "767626793225296", - "480" - ], + "634664031419046", + "20000000000" + ] + ] + ], + [ + "0x349E8490C47f42AB633D9392a077D6F1aF4d4c85", + [ [ - "767626793225776", - "523" - ], + "250842519878117", + "25098501333" + ] + ] + ], + [ + "0x34a649fde43cE36882091A010aAe2805A9FcFf0d", + [ [ - "767626793226299", - "567" - ], + "634036479771284", + "5482892893" + ] + ] + ], + [ + "0x34Aec84391B6602e7624363Df85Efe02A1FF35f5", + [ [ - "767626793226866", - "611" - ], + "248138998423714", + "100498286663" + ] + ] + ], + [ + "0x34d81294A7cf6F794F660e02B468449B31cA45fb", + [ [ - "767626793227477", - "655" - ], + "895516510872318", + "3743357026612" + ] + ] + ], + [ + "0x34e642520F4487D7D0229c07f2EDe107966D385E", + [ [ - "767626793228132", - "699" - ], + "367351784090731", + "3202365355" + ] + ] + ], + [ + "0x354F7a379e9478Ad1734f5c48e856F89E309a597", + [ [ - "767626793228831", - "742" - ], + "152084889110747", + "12083942493" + ] + ] + ], + [ + "0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209", + [ [ - "767626793229573", - "786" - ], + "292260794541850", + "2182702092311" + ] + ] + ], + [ + "0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e", + [ [ - "767626793230359", - "830" - ], + "174758503486224", + "44765525061" + ] + ] + ], + [ + "0x358B8a97658648Bcf81103b397D571A2FED677eE", + [ [ - "767626793231189", - "874" - ], + "917235408231892", + "32949877099" + ] + ] + ], + [ + "0x35a386D9B7517467a419DeC4af6FaFC4c669E788", + [ [ - "767626793232063", - "962" - ], + "344823646308651", + "10024424157" + ] + ] + ], + [ + "0x362FFA9F404A14F4E805A39D4985042932D42aFe", + [ [ - "767642320933025", - "1050" - ], + "634133673151647", + "2420032442" + ] + ] + ], + [ + "0x3638570931B30FbBa478535A94D3f2ec1Cd802cB", + [ [ - "767642320934075", - "1138" + "197761671552490", + "327866270649" ], [ - "767642320935213", - "1226" - ], + "205770700307726", + "85677608975" + ] + ] + ], + [ + "0x368a5564F46Bd896C8b365A2Dd45536252008372", + [ [ - "767642320936439", - "1314" - ], + "212251016823450", + "186137117756" + ] + ] + ], + [ + "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", + [ [ - "767642320937753", - "1401" + "67075754733543", + "16604041484" ], [ - "767642320939154", - "1490" + "67428770424441", + "6285570368" ], [ - "767642320940644", - "1580" + "70451813250817", + "4716970693" ], [ - "767642320942224", - "1669" + "273939484179751", + "217800000000" ], [ - "767642320943893", - "1757" + "321517916923381", + "214258454662" ], [ - "767642320945650", - "1889" + "429133499005020", + "436815986689" ], [ - "767642320947539", - "2023" + "533603847212626", + "135734075338" ], [ - "767642320949562", - "2156" + "547809199075962", + "71050000000" ], [ - "767642320951718", - "2290" - ], + "645809940109546", + "188831250000" + ] + ] + ], + [ + "0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E", + [ [ - "767642320954008", - "2422" - ], + "768350362242073", + "34649098834" + ] + ] + ], + [ + "0x36C3094E86CB89e33a74F7e4c10659dd9366538C", + [ [ - "767642320956430", - "2555" + "634959436885365", + "19640500000" ], [ - "767642320958985", - "2688" - ], + "635245783302881", + "5356500000" + ] + ] + ], + [ + "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B", + [ [ - "767642320961673", - "2865" + "18115882730389", + "2184095098753" ], [ - "767642320964538", - "3042" + "465379361625193", + "3458705615800" ], [ - "767642320967580", - "3219" - ], + "470054787273693", + "227774351500" + ] + ] + ], + [ + "0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc", + [ [ - "767642320970799", - "3396" - ], + "531845211117628", + "3940485943" + ] + ] + ], + [ + "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", + [ [ - "767642320974195", - "3573" + "217264218398563", + "73188666066" ], [ - "767642320977768", - "3795" - ], + "664983563595345", + "75343043560" + ] + ] + ], + [ + "0x37435b30f92749e3083597E834d9c1D549e2494B", + [ [ - "767642320981563", - "4016" + "22131306224508", + "4637368726000" ], [ - "767642883204174", - "4238" + "32181495640124", + "8433459586" ], [ - "767642883208412", - "4462" + "38769863596589", + "1565234930" ], [ - "767642883212874", - "4728" + "76223412009195", + "178773400000" ], [ - "767642883217602", - "4994" + "86845698678511", + "62444029452" ], [ - "767642883222596", - "5260" + "86978458498127", + "27307181096" ], [ - "767682652111200", - "5571" + "88869752900177", + "12050549452" ], [ - "767682652116771", - "5885" + "93006185741954", + "23198240000" ], [ - "767682652122656", - "6196" + "118308388563198", + "14166669028" ], [ - "767682652128852", - "6551" + "141234198150981", + "17100712995" ], [ - "767682652135403", - "6907" + "183773660297853", + "252870563194" ], [ - "767682652142310", - "7263" + "186199081638585", + "49195388116" ], [ - "767682652149573", - "7663" + "271980436404190", + "296688083935" ], [ - "767682652157236", - "8064" + "352399758201369", + "1024763326668" ], [ - "767682652165300", - "8509" + "359928453899368", + "1288012208388" ], [ - "767682652173809", - "8954" + "363939676933011", + "1412385930810" ], [ - "767682652182763", - "9444" + "395593019554380", + "654800000000" ], [ - "767682652192207", - "9941" + "437070763478235", + "3840100000000" ], [ - "767682652202148", - "10476" + "460737759569063", + "4527500000000" ], [ - "767682652212624", - "11055" + "591966036774809", + "666686929557" ], [ - "767682652223679", - "11635" + "593409232970016", + "563728148057" ], [ - "767682652235314", - "12259" - ], + "764332208498162", + "105792331133" + ] + ] + ], + [ + "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", + [ [ - "767682652247573", - "12929" - ], + "340310565047777", + "2715874656" + ] + ] + ], + [ + "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", + [ [ - "767705524974897", - "13607" + "805406787392676", + "271427897935" ], [ - "767705524988504", - "14322" + "808841378952277", + "3741772811" ], [ - "767705525002826", - "15082" + "861085838494193", + "18080297788" ], [ - "767705525017908", - "15886" + "904804646944212", + "185595194790" ], [ - "767705525033794", - "16735" - ], + "917268358306518", + "195035742135" + ] + ] + ], + [ + "0x375C1DC69F05Ff526498C8aCa48805EeC52861d5", + [ [ - "767705525050529", - "17629" - ], + "624706749861385", + "1293514654" + ] + ] + ], + [ + "0x377f781195d494779a6CcC2AA5C9fF961C683A27", + [ [ - "767705525068158", - "18569" - ], + "677766884983003", + "10595565" + ] + ] + ], + [ + "0x3798AE2cbC444ed5B5f4fb38344044977066D13F", + [ [ - "767705525086727", - "19553" + "344843846701641", + "18931968095" ], [ - "767807852800338", - "20582" - ], + "376325075317086", + "7476138081" + ] + ] + ], + [ + "0x37d515Fa5DC710C588B93eC67DE42068090e3ED8", + [ [ - "767812853087571", - "21651" + "582564609492029", + "1539351282905" ], [ - "767812853109222", - "22780" + "584103960774934", + "910855838514" ], [ - "767812853132002", - "23989" + "585059745414822", + "387855469635" ], [ - "767812853155991", - "25243" + "589065176123882", + "721956082204" ], [ - "767824420255993", - "27944" + "589789721199545", + "700119128150" ], [ - "767824420283937", - "29379" - ], + "590489840327695", + "511974175317" + ] + ] + ], + [ + "0x3800645f556ee583E20D6491c3a60E9c32744376", + [ [ - "767824420313316", - "30904" - ], + "190509412911548", + "44590358778" + ] + ] + ], + [ + "0x3810EAcf5020D020B3317B559E59376c5d02dCB2", + [ [ - "767824420344220", - "32519" - ], + "309464729921305", + "87638844672" + ] + ] + ], + [ + "0x38293902871C8ee22720A6553585F24De019c78e", + [ [ - "767824420376739", - "34224" - ], + "632904420406334", + "6459298878" + ] + ] + ], + [ + "0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E", + [ [ - "767824420410963", - "36020" - ], + "227393755294232", + "90805720025" + ] + ] + ], + [ + "0x38AE800E603F61a43f3B02f5E429b44E32e01D84", + [ [ - "767825578892582", - "37871" + "649248685749729", + "12448041335" ], [ - "767825585879797", - "41900" + "650066211440274", + "883672882" ], [ - "767825585921697", - "44054" + "651485759293845", + "3572292465" ], [ - "767825585965751", - "46343" - ], + "735462721965817", + "38853572481" + ] + ] + ], + [ + "0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5", + [ [ - "767825586012094", - "48723" + "152135543630806", + "6119470222" ], [ - "767825586060817", - "51237" - ], + "207252364348652", + "17964245672" + ] + ] + ], + [ + "0x38f733Fb3180276bE19135B3878580126F32c5Ab", + [ [ - "767825586112054", - "53887" + "33291076017861", + "103108618" ], [ - "767825586165941", - "56672" + "767122453744233", + "2293110488" ], [ - "767825586222613", - "59593" - ], + "767642320985579", + "562218595" + ] + ] + ], + [ + "0x39167e20B785B46EBd856CC86DDc615FeFa51E76", + [ [ - "767848361131422", - "62650" - ], + "825748197827247", + "503880761345" + ] + ] + ], + [ + "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", + [ [ - "767848361194072", - "65916" + "31613511996035", + "1422751578" ], [ - "767848361259988", - "69334" + "56090190254115", + "11945702437" ], [ - "767848361329322", - "72889" - ], + "61070704728260", + "11265269800" + ] + ] + ], + [ + "0x3983b24542E637030af57a6Ca117B96Fc42Ace10", + [ [ - "767848361402211", - "76625" + "344971252855340", + "54716661232" ], [ - "767848361478836", - "80586" - ], + "357975339088994", + "60400014733" + ] + ] + ], + [ + "0x399baf8F9AD4B3289d905f416bD3e245792C5fA6", + [ [ - "767848361559422", - "84728" - ], + "31881074513162", + "2271791105" + ] + ] + ], + [ + "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608", + [ [ - "767848361644150", - "89097" + "38729105409331", + "4520835534" ], [ - "767848361733247", - "93691" + "75749856969161", + "8190484804" ], [ - "767848361826938", - "98512" + "75768702250033", + "2592066456" ], [ - "767848361925450", - "103559" + "544122918974124", + "90520524431" ], [ - "767848362029009", - "108878" + "569988798013715", + "75915000000" ], [ - "767848362137887", - "114469" + "634184272767738", + "4800266302" ], [ - "767848362252356", - "120376" + "634395165820350", + "4971925933" ], [ - "767848362372732", - "126556" + "637136003689549", + "5026085154" ], [ - "767848362499288", - "133053" + "641232825579881", + "6901957424" ], [ - "767848362632341", - "139912" + "644028956669800", + "6258715658" ], [ - "767848362772253", - "147088" + "644035215385458", + "3739040895" ], [ - "767848362919341", - "154628" + "644052141349672", + "5619908813" ], [ - "767848363073969", - "162575" + "644073507478345", + "8688260900" ], [ - "767848363236544", - "170930" + "644089221861766", + "9969767834" ], [ - "767848363407474", - "179695" + "644099191629600", + "5282898032" ], [ - "767848363587169", - "188913" + "644112169106375", + "11803118121" ], [ - "767848363776082", - "198630" + "644143887959668", + "6586391868" ], [ - "767848363974712", - "208846" + "644181540147936", + "5533430900" ], [ - "767848364183558", - "219562" + "644217945713915", + "9775619115" ], [ - "767848364403120", - "230823" + "644227721333030", + "7138145970" ], [ - "767848364633943", - "242675" + "644235138725690", + "11087897889" ], [ - "767848364876618", - "255118" + "644246424265017", + "9438007812" ], [ - "767848365131736", - "268197" + "644266109923013", + "12728017527" ], [ - "767848365399933", - "281957" + "648703066319944", + "475923815" ], [ - "767848365681890", - "296446" + "650452044643940", + "210712873" ], [ - "767848365978336", - "311662" - ], + "740444343886258", + "37039953396" + ] + ] + ], + [ + "0x3a1Bc767d7442355E96BA646Ff83706f70518dAA", + [ [ - "767848366289998", - "327651" + "60534460423689", + "37943648860" ], [ - "767848366617649", - "344459" + "60613921072549", + "337056974653" ], [ - "767848366962108", - "362133" + "384808251979965", + "221162082281" ], [ - "767848367324241", - "380716" + "385114975062246", + "68895138576" ], [ - "767848367704957", - "400256" + "428730219817416", + "346162069888" ], [ - "767848368105213", - "420798" + "444016501963211", + "63083410136" ], [ - "767848368526011", - "442387" + "460460113879903", + "200388674016" ], [ - "767852884968443", - "90" - ], + "510804923776436", + "196096790801" + ] + ] + ], + [ + "0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264", + [ [ - "767852884968533", - "135" - ], + "740644060961741", + "4860922695" + ] + ] + ], + [ + "0x3A529A643e5b89555712B02e911AEC6add0d3188", + [ [ - "767852884968668", - "181" - ], + "637148882075661", + "285714285" + ] + ] + ], + [ + "0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1", + [ [ - "767852884968849", - "226" - ], + "915394886313821", + "16285361281" + ] + ] + ], + [ + "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", + [ [ - "767852884969075", - "271" + "141910062421668", + "20166747481" ], [ - "767852884969346", - "317" + "147404101138230", + "19708496282" ], [ - "767852884969663", - "362" + "153213326271478", + "18867580234" ], [ - "767852884970025", - "408" + "160718808143920", + "10656807898" ], [ - "767852884970433", - "453" + "396504433540468", + "13250965252" ], [ - "767852884970886", - "498" - ], + "396517684505720", + "21196418023" + ] + ] + ], + [ + "0x3b55DF245d5350c4024Acc36259B3061d42140D2", + [ [ - "767852884971384", - "544" + "59303914981687", + "109032000000" ], [ - "767852884971928", - "589" + "395431577902828", + "61940000000" ], [ - "767852884972517", - "635" + "428517528130265", + "6682650000" ], [ - "767852884973152", - "681" + "430095496589579", + "1727500000" ], [ - "767852884973833", - "727" + "672251402712185", + "113626410" ], [ - "767863326337265", - "91" - ], + "768408426239740", + "10530972784" + ] + ] + ], + [ + "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", + [ [ - "767863362728577", - "18484478" + "33289326590234", + "1184036940" ], [ - "767863381213055", - "5167937" + "33386963858115", + "4658475375814" ], [ - "767863386380992", - "18280626" + "408425382414043", + "1123333332210" ], [ - "767863404661618", - "18414676" + "427517763505395", + "856500000000" ], [ - "767863423076294", - "18443046" + "477272425070829", + "3276576610442" ], [ - "767863441519340", - "18477486" - ], + "759127319086261", + "542512540896" + ] + ] + ], + [ + "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd", + [ [ - "767863459996826", - "16131224" + "561885444802308", + "194013000000" ], [ - "767863476128050", - "16087207" + "565476469810977", + "194013435000" ], [ - "767863525316862", - "10937836" + "567291750347146", + "194013435000" ], [ - "767863536254698", - "16385295" + "567707182532146", + "194013435000" ], [ - "767863569071432", - "15950506" + "570802112669484", + "192000000000" ], [ - "768114582705503", - "298231122" - ], + "571217544854484", + "194013435000" + ] + ] + ], + [ + "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", + [ [ - "768114880936625", - "18672957" + "70932687821992", + "142530400862" ], [ - "768114899609582", - "330845521" + "211163571688407", + "90969668386" ], [ - "768115230455103", - "331324585" + "544006850006260", + "10532744358" ], [ - "768115978889820", - "296676806" + "653296446968959", + "1462730442" ], [ - "768116275566626", - "296728765" + "653477602499401", + "2382078228" ], [ - "768116572295391", - "296762499" - ], + "848255254733335", + "2974087025" + ] + ] + ], + [ + "0x3BD142a93adC0554C69395AAE69433A74CFFc765", + [ [ - "768117464966063", - "298343543" + "267825806174639", + "10928727606" ], [ - "768117763309606", - "137124064" - ], + "325258451698078", + "141509657939" + ] + ] + ], + [ + "0x3BD4c721C1b547Ea42F728B5a19eB6233803963E", + [ [ - "768117900433793", - "123" - ], + "218781665879410", + "12034941079" + ] + ] + ], + [ + "0x3C087171AEBC50BE76A7C47cBB296928C32f5788", + [ [ - "768118170560501", - "256642528" + "170943059650826", + "148060901697" ], [ - "768119631748125", - "302761187" + "179705651830652", + "176957775656" ], [ - "768119934509312", - "280418672" + "212069776260061", + "14038264688" ], [ - "768120771960939", - "279694893" + "215219527533100", + "16507846329" ], [ - "768121602995954", - "276767301" + "230427008120352", + "1592559438" ], [ - "768122461859189", - "296600700" + "232479752844281", + "2373299725" ], [ - "768123348981826", - "302369890" + "327841336645705", + "13592654125" ], [ - "768123947537693", - "296342950" + "339831945732017", + "224290993889" ], [ - "768124836569745", - "290541691" + "340465994882707", + "17923920296" ], [ - "768125127111556", - "291176686" + "408359393519053", + "10089000000" ], [ - "768295826854698", - "285816521" + "648211808724006", + "6721246743" ], [ - "768296112671219", - "285381250" - ], + "743598654626181", + "2043540906" + ] + ] + ], + [ + "0x3C43674dfa916d791614827a50353fe65227B7f3", + [ [ - "768296398052469", - "284997197" + "86224790513977", + "18752048727" ], [ - "768298198893914", - "68312976" + "249683318820186", + "10002984280" ], [ - "768298267207290", - "201" + "683068828515029", + "20162991875" ], [ - "768298267207491", - "273021877" + "781843303488481", + "90638399996" ], [ - "768298540229368", - "317530794" + "808097236727089", + "112991072036" ], [ - "768298857760162", - "322193785" + "883534894985575", + "82087297170" ], [ - "768299179953947", - "331229342" + "886970218030110", + "80917313200" ], [ - "768299511183289", - "331260558" + "902311722381291", + "2492924562921" ], [ - "768300505169969", - "321182204" - ], + "911681851165911", + "148249317984" + ] + ] + ], + [ + "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", + [ [ - "768301129935086", - "312207718" - ], + "599117126788478", + "69159694993" + ] + ] + ], + [ + "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c", + [ [ - "768301442142804", - "288907800" + "562585978802308", + "48492000000" ], [ - "768302650177158", - "308531054" + "564921455942708", + "48492118269" ], [ - "768303848319913", - "252106840" + "566579274363477", + "48492118269" ], [ - "768304100426753", - "244186585" + "568565179832546", + "48492118269" ], [ - "768304606652316", - "114725072" + "570247098801215", + "48492118269" ], [ - "768308228492462", - "158" - ], + "571918080039484", + "48492118269" + ] + ] + ], + [ + "0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106", + [ [ - "768308228492620", - "197" - ], + "271881305006652", + "99131397538" + ] + ] + ], + [ + "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B", + [ [ - "768308228493053", - "276" + "7282639421137", + "107872082286" ], [ - "768308228493329", - "315" + "67130960801289", + "208750536344" ], [ - "768308228493644", - "354" + "197652637069875", + "79560142678" ], [ - "768308729405919", - "510" + "506176315739631", + "751200000000" ], [ - "768308729406978", - "588" + "507737045334642", + "256843090229" ], [ - "768309128949088", - "364833293" - ], + "551839541572649", + "464523649777" + ] + ] + ], + [ + "0x3Cdf2F8681b778E97D538DBa517bd614f2108647", + [ [ - "768310260215587", - "347953848" + "158637651631405", + "96662646688" ], [ - "768310608169435", - "201082346" + "258849054768509", + "94179890197" ], [ - "768310809251781", - "201245887" - ], + "265521940236427", + "70852648035" + ] + ] + ], + [ + "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", + [ [ - "768311435453153", - "116" + "239154025576778", + "93978424610" ], [ - "768311435453424", - "194" + "325815231767308", + "116109191366" ], [ - "768311435453618", - "232" - ], + "340483918803003", + "107540812013" + ] + ] + ], + [ + "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", + [ [ - "768311435453850", - "271" - ], + "31605992022782", + "4486265388" + ] + ] + ], + [ + "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", + [ [ - "768311826167816", - "116" - ], + "559909549098070", + "9516000000" + ] + ] + ], + [ + "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", + [ [ - "768311826168087", - "193" - ], + "644123972224496", + "18442405" + ] + ] + ], + [ + "0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5", + [ [ - "768311937992490", - "197071061" + "80481878020743", + "2335790276267" ], [ - "768312135063782", - "155" - ], + "131490207784127", + "4068458197507" + ] + ] + ], + [ + "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", + [ [ - "768312623349155", - "499719459" + "768326922278702", + "643659978" ], [ - "768313123068614", - "210719422" - ], + "911906996407371", + "24032791791" + ] + ] + ], + [ + "0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6", + [ [ - "768313474127194", - "154" - ], + "87489402650273", + "92067166902" + ] + ] + ], + [ + "0x3e2EfD7D46a1260b927f179bC9275f2377b00634", + [ [ - "768313474128044", - "309" - ], + "325399961356017", + "11508897293" + ] + ] + ], + [ + "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB", + [ [ - "768313474128353", - "348" + "562755073802308", + "30150000000" ], [ - "768313474128701", - "387" + "649506912428795", + "36390839843" ], [ - "768313474129088", - "426" - ], + "649853488667170", + "65015748" + ] + ] + ], + [ + "0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c", + [ [ - "768313474129514", - "465" - ], + "534857972611245", + "18731220754" + ] + ] + ], + [ + "0x3e763998E3c70B15347D68dC93a9CA021385675d", + [ [ - "768313474129979", - "504" - ], + "647229043503533", + "3184477709" + ] + ] + ], + [ + "0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC", + [ [ - "768313474131026", - "582" + "340708439500138", + "107810827136" ], [ - "768313474132229", - "660" - ], + "343181072805930", + "327389493912" + ] + ] + ], + [ + "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c", + [ [ - "768313474132889", - "699" + "141030334319023", + "70000039897" ], [ - "768313474134326", - "777" + "595385246220334", + "56722212500" ], [ - "768313474135958", - "933" + "644345312837307", + "5547402539" ], [ - "768313474137902", - "1089" + "647224666133056", + "4377370477" ], [ - "768313474138991", - "1167" + "647382462319478", + "6271703989" ], [ - "768313474140158", - "1245" + "647555129566838", + "7781608168" ], [ - "768313474144127", - "1480" + "742833918745520", + "14172500000" ], [ - "768313474145607", - "1558" - ], + "848237297659532", + "17957073803" + ] + ] + ], + [ + "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0", + [ [ - "768313474147165", - "1675" + "355636039477093", + "9985803845" ], [ - "768313474150633", - "1910" + "355646025280938", + "2373276277" ], [ - "768313474152543", - "2028" - ], + "355773362907086", + "12535749497" + ] + ] + ], + [ + "0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA", + [ [ - "768313474154571", - "2145" + "294677956974210", + "187420307596" ], [ - "768313474156716", - "2263" - ], + "298745403795012", + "21089420430" + ] + ] + ], + [ + "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", + [ [ - "768314355726830", - "88909462" + "41285039823287", + "521806033" ], [ - "768315901357256", - "339056370" + "235853631746968", + "1533680526" ], [ - "768316240413626", - "301378783" + "531838649791416", + "6561326212" ], [ - "768316541792409", - "35791954" + "662650407520724", + "57172076" ] ] ], [ - "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", + "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", [ [ - "322290480743612", - "94607705314" + "647725612230182", + "29699469080" + ], + [ + "768304721377388", + "3507114838" ] ] ], [ - "0x2E34723A04B9bb5938373DCFdD61410F43189246", + "0x400609FDd8FD4882B503a55aeb59c24a39d66555", [ [ - "67381548202218", - "1447784544" + "13424355740040", + "46140000000" + ], + [ + "385212837461278", + "12793000337" ] ] ], [ - "0x2E40961fd5Abd053128D2e724a61260C30715934", + "0x4034adD1a1A750AA19142218A177D509b7A5448F", [ [ - "658105711671123", - "41555431100" + "643088877454629", + "2992976846" ], [ - "658877005401946", - "136033474375" + "643091870431475", + "4644226944" ], [ - "671451812872345", - "20082877176" + "643125864984505", + "6948011478" ], [ - "676806771844942", - "22871716433" + "643617546386516", + "2736651405" ], [ - "676852872846308", - "12839897666" + "643629222103340", + "1334408552" ], [ - "679500898240401", - "150688818320" + "643653609485430", + "3361817827" ], [ - "679689278965321", - "33005857560" + "643656971303257", + "1840841812" ], [ - "720695437014319", - "243235296262" + "643658812145069", + "1886219723" ], [ - "720938672310581", - "12267465638" + "643660698364792", + "4196252501" ], [ - "725824924442098", - "269398121130" + "643664894617293", + "3945346023" ], [ - "744798716338245", - "9220124675" + "643697705822698", + "3069368803" ], [ - "860106144873359", - "79143367104" - ] - ] - ], - [ - "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", - [ + "643700775191501", + "2616399199" + ], [ - "7415832970393", - "194762233747" + "643704053550072", + "4354211152" ], [ - "78648530626824", - "138292382101" + "643715616535597", + "4120838084" ], [ - "152208324465731", - "194272213416" + "643735049573681", + "4950268423" ], [ - "156096698259859", - "320440448951" + "643739999842104", + "4592612954" ], [ - "165896787517307", - "165634345762" + "643751895992677", + "4449841152" ], [ - "166062421863069", - "162668432277" + "643756345833829", + "6933768558" ], [ - "394996007186444", - "290768602971" + "643774597107209", + "4927912318" ], [ - "573762332985345", - "53986261284" + "643856593003930", + "5819342790" ], [ - "574794197119988", - "682695875" - ] - ] - ], - [ - "0x2e6cbcFA99C5c164B0AF573Bc5B07c8beD18c872", - [ + "643882906499989", + "3569433363" + ], [ - "76216082547355", - "7329461840" + "643939083202841", + "2637229058" ], [ - "157638542244933", - "60174119496" + "643985406845033", + "5924684744" ], [ - "213285967419772", - "21267206558" + "643991331529777", + "2352760830" ], [ - "634864361051387", - "70921562500" + "643993684290607", + "1884171975" ], [ - "647439464023467", - "15004452000" - ] - ] - ], - [ - "0x2e95A39eF19c5620887C0d9822916c0406E4E75e", - [ + "643995568462582", + "3724339951" + ], [ - "159584961546434", - "99821724986" - ] - ] - ], - [ - "0x2ea48eF3C1287E950629FE4e4f5F110564dbD6c8", - [ + "644082195739245", + "2039061143" + ], [ - "783376684764145", - "1000000" - ] - ] - ], - [ - "0x2Efc14A5276bB2b6E32B913fFa8CEDa02552750F", - [ + "644168293016051", + "3645902617" + ], [ - "184026530861047", - "134623539909" - ] - ] - ], - [ - "0x2f89DB6B5E80C4849142789d777109D2F911F780", - [ + "644256136851915", + "6416440826" + ], [ - "331726102506074", - "5251308075" + "644279469802093", + "2923459312" ] ] ], [ - "0x2F8C6f2DaE4b1Fb3f357c63256Fe0543b0bD42Fb", + "0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB", [ [ - "326330661529391", - "16541491227" + "640996006666783", + "46563701848" ], [ - "465286109667912", - "41138509764" + "646739353301167", + "10228948233" ], [ - "531116209812109", - "109538139161" + "646772221095742", + "7915875000" ], [ - "561676842598316", - "57729458645" + "647311018597283", + "23870625000" ], [ - "574187702455863", - "199863307838" + "647458959804717", + "20307375000" + ], + [ + "647479267179717", + "26457093750" ], [ - "577754454852811", - "150501595883" + "647637605929338", + "30143670312" ], [ - "591782385862752", - "164341630162" - ] - ] - ], - [ - "0x2FB7E2a682dFd678F31ef75d8Ad455d86836bfbA", - [ + "647696885372209", + "28726857973" + ], [ - "744297030626026", - "11165929503" + "648474129091480", + "9060790481" ], [ - "744308196555529", - "33745270881" + "658068499502639", + "37212168484" ], [ - "744341941826410", - "16872062514" + "658229774319898", + "29767318612" ] ] ], [ - "0x30beFd253Ca972800150dBA8114F7A4EF53183D9", + "0x404a75f728D7e89197C61c284d782EC246425aa6", [ [ - "643649755203625", - "496254001" + "883958086238857", + "171169191653" ] ] ], [ - "0x30d0DEb932b5535f792d359604D7341D1B357a35", + "0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5", [ [ - "92715335512140", - "260797078423" - ] - ] - ], - [ - "0x30d85F3cAdCA1f00F1a21B75AD92074C0504dE26", - [ + "539608230930738", + "417347700552" + ], [ - "611709212072170", - "19083709019" + "553592668955772", + "222299277023" ] ] ], [ - "0x30Fcd505E2809Eab444dF63b02E9Ba069450fb3F", + "0x406874Ac226662369d23B4a2B76313f3Cb8da983", [ [ - "344839852767681", - "1993933960" + "153232193851712", + "462937279977" + ], + [ + "338018255707329", + "357159363004" ] ] ], [ - "0x3103c84c86a534a4f10C3823606F2a5b90923924", + "0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b", [ [ - "350560995758670", - "1562442699" - ], - [ - "361237680058040", - "3203293071" + "573650098517519", + "5734467826" ] ] ], [ - "0x31188536865De4593040fAfC4e175E190518e4Ef", + "0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22", [ [ - "70474963554843", - "42647602248" + "76099819242179", + "19406193406" ], [ - "87355264432269", - "23229244940" + "569797745263715", + "21159782439" ], [ - "159182841468143", - "25259530956" + "634041962664177", + "2442109027" ], [ - "159208100999099", - "75628998693" + "636931384475422", + "19937578021" ], [ - "247427787534240", - "39695519731" + "639795300300187", + "86043643136" ], [ - "408397582477655", - "20847822433" + "640684697352708", + "201965000000" ] ] ], [ - "0x317B157e02c3b5A16Efc3cc4eb26ACcC1cfF24e3", + "0x40Da1406EeB71083290e2e068926F5FC8D8e0264", [ [ - "258450328339971", - "18991534679" + "634461766777846", + "6291400830" + ], + [ + "679985260625921", + "71" + ], + [ + "742848091245520", + "1417250000" + ], + [ + "742849508495520", + "1417250000" ] ] ], [ - "0x31a9033E2C7231F2B3961aB8A275C69C182610b0", + "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", [ [ - "185408194792894", - "19585490430" - ], - [ - "199678543542300", - "10849956649" + "682116636977139", + "389208674898" ], [ - "201457075097447", - "6841999986" + "683765325492995", + "643482107799" ], [ - "656568060160113", - "1550661150" + "728528152871407", + "486415703664" ], [ - "672612693625732", - "5000000000" + "790320470681371", + "129057167288" ] ] ], [ - "0x31b9084568783Fd9D47c733F3799567379015e6D", + "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7", [ [ - "598066496589195", - "100033987828" - ] - ] - ], - [ - "0x3213977900A71e183818472e795c76aF8cbC3a3E", - [ + "75686171721947", + "63685247214" + ], [ - "209624708274640", - "2727243727" + "143377079152995", + "39159248155" + ], + [ + "564444697090208", + "27405315000" + ], + [ + "566108259745977", + "13702657500" + ], + [ + "569070983910815", + "13702657500" + ], + [ + "569784042606215", + "13702657500" + ], + [ + "572415925695253", + "13702657500" ] ] ], [ - "0x326481a3b0C792Cc7DF1df0c8e76490B5ccd7031", + "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8", [ [ - "636333094290438", - "233865679687" + "284294660466475", + "32606569800" + ], + [ + "644738977704474", + "427917192" ] ] ], [ - "0x328e124cE7F35d9aCe181B2e2B4071f51779B363", + "0x41954b53cFB5e4292223720cB3577d3ed885D4f7", [ [ - "159684783271420", - "51108156265" + "96865545670304", + "150940785067" ] ] ], [ - "0x32984c4e2B8d582771ADd9EC3FA219D07ca43F39", + "0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54", [ [ - "355785898656583", - "159354982035" + "230525695001648", + "46558365900" ] ] ], [ - "0x32a0d4eb7F312916473ea9bAFb8Db6b6f1b4C32e", + "0x41BF3C5167494cbCa4C08122237C1620A78267Ab", [ [ - "51154858889104", - "22097720000" + "67474986688534", + "125375746500" ], [ - "78544641460294", - "25407712000" + "624643963734953", + "14701274232" ], [ - "85869322903816", - "96590650000" + "630547945246894", + "2249157051" ], [ - "93193533981954", - "51428850000" + "630888770251188", + "4637283207" ], [ - "160729464951818", - "27130320000" + "631053204527095", + "1713785306" ], [ - "170334015806894", - "21861840000" + "631567031582009", + "2612709957" ], [ - "198205724465484", - "17204908500" + "631709202386668", + "1277169126" ], [ - "210838860371618", - "31699684500" + "631801066266314", + "3476565097" ], [ - "249470894900355", - "141114556811" + "631804542831411", + "5257772247" ], [ - "394957500386195", - "2656309347" + "631812869882326", + "7418551539" ], [ - "451982392748406", - "3362213720" - ] - ] - ], - [ - "0x32ddCe808c77E45411CE3Bb28404499942db02a7", - [ + "632715023362792", + "17060602162" + ], [ - "157572697483467", - "30301264175" + "632910879705212", + "9755905834" ], [ - "672686690262012", - "9156068040" - ] - ] - ], - [ - "0x33033E306c89Dc5b662f01e74B12623f9a39CCE4", - [ + "634018729724195", + "3815159692" + ], [ - "401134958523891", - "6000000000" - ] - ] - ], - [ - "0x33314cF610C14460d3c184a55363f51d609aa076", - [ + "634022544883887", + "4493860181" + ], [ - "189165629280352", - "4" + "634166749613035", + "4202744958" ], [ - "250764687174527", - "6" - ] - ] - ], - [ - "0x334bdeAA1A66E199CE2067A205506Bf72de14593", - [ + "634170952357993", + "6931782754" + ], [ - "78581810315623", - "1" - ] - ] - ], - [ - "0x334f12F269213371fb59b328BB6e182C875e04B2", - [ + "634194611311476", + "2472437836" + ], [ - "170459154928178", - "85849064810" + "634421333694120", + "6913927217" ], [ - "187225592453120", - "100639688860" + "634752629850619", + "1490458288" ], [ - "235248755463285", - "30184796751" + "634773085341398", + "8523970000" ], [ - "532670891057032", - "5098240000" - ] - ] - ], - [ - "0x3387f8c9e8F0cE90003272Bb2730c52a708e1A96", - [ + "635868338517102", + "3485021203" + ], [ - "343800433705719", - "25762354710" + "636068032409490", + "221549064473" ], [ - "355945253638618", - "61234325811" - ] - ] - ], - [ - "0x33c0BCac5c1835fe9D52D35079F6617A22c6C431", - [ + "641729133359289", + "8198117831" + ], [ - "326347203020618", - "125324760000" + "643744592455058", + "7303537619" ], [ - "328066927799830", - "36648000000" + "644282393261405", + "7914873408" ], [ - "511268244803978", - "49788645972" + "647553646266733", + "1483300105" ], [ - "533229385997211", - "202654427854" + "681835742516223", + "494751015" ], [ - "552807785951017", - "16210845885" + "682505845652037", + "1132140582" ], [ - "553548932420572", - "43736535200" + "706035819459340", + "98080531002" ], [ - "575265144492570", - "31060210793" - ] - ] - ], - [ - "0x340bc7511E4E6C1cDD9dCd8f02827fd08EDC6Fb2", - [ + "741718035195957", + "162218835" + ], [ - "28423496858037", - "1897354001" + "860392088596291", + "56073594" ] ] ], [ - "0x342Ba89a30Af6e785EBF651fb0EAd52752Ab1c9F", + "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B", [ [ - "151059913817209", - "718187220626" + "86790953888750", + "38576992385" ], [ - "194136445740033", - "669600000000" + "200625410465815", + "27121737219" ], [ - "398058157938414", - "131956563555" + "203337173447397", + "44485730835" ], [ - "497621309855122", - "579087801478" + "207234905273707", + "17459074945" ], [ - "525752878043783", - "4019068358051" + "207270328594324", + "49984112432" ], [ - "574443423459533", - "291778458931" + "208172233828826", + "26535963154" ], [ - "575412697794786", - "213651821494" - ] - ] - ], - [ - "0x344AD299696b37Ab1b2D81Ee19Ab382d606C8B91", - [ + "209057370939437", + "19654542435" + ], [ - "700036877911620", - "6971971500" - ] - ] - ], - [ - "0x344e50417D9D51Dbc9eA3247597d7Adc5f7b2F97", - [ + "209905911270631", + "51680614449" + ], [ - "320197037442753", - "8912443926" - ] - ] - ], - [ - "0x344F8339533E1F5070fb1d37F1d2726D9FDAf327", - [ + "209957591885080", + "193338988216" + ], [ - "202773340970944", - "44765696589" + "212591835915023", + "94239272075" ], [ - "274157284179751", - "130932379038" - ] - ] - ], - [ - "0x346aa548f2fB418a8c398D2bF879EbCc0A1f891d", - [ + "213229524257532", + "56443162240" + ], [ - "312543047721534", - "185860975995" - ] - ] - ], - [ - "0x347a5732541d3A8D935BeFC6553b7355b3e9C5ad", - [ + "213336723478778", + "46929014315" + ], [ - "284272720466475", - "21940000000" + "213383652493093", + "46820732322" ], [ - "367354986456086", - "159350000000" - ] - ] - ], - [ - "0x348788ae232F4e5F009d2e0481402Ce7e0d36E30", - [ + "213658788094189", + "46596908794" + ], [ - "326049910381759", - "24" + "214949047240394", + "135385700183" ], [ - "340162996725906", - "1695292297" - ] - ] - ], - [ - "0x3489B1E99537432acAe2DEaDd3C289408401d893", - [ + "215084432940577", + "135094592523" + ], [ - "634664031419046", - "20000000000" - ] - ] - ], - [ - "0x349E8490C47f42AB633D9392a077D6F1aF4d4c85", - [ + "215439620132931", + "89335158945" + ], + [ + "215528955291876", + "89207795460" + ], + [ + "215618163087336", + "89080704286" + ], + [ + "215707243791622", + "88953884657" + ], [ - "250842519878117", - "25098501333" - ] - ] - ], - [ - "0x34a649fde43cE36882091A010aAe2805A9FcFf0d", - [ + "217010587764381", + "46290484227" + ], [ - "634036479771284", - "5482892893" - ] - ] - ], - [ - "0x34Aec84391B6602e7624363Df85Efe02A1FF35f5", - [ + "217563869893679", + "55156826488" + ], [ - "248138998423714", - "100498286663" - ] - ] - ], - [ - "0x34d81294A7cf6F794F660e02B468449B31cA45fb", - [ + "221813776173855", + "37911640587" + ], [ - "895516510872318", - "3743357026612" - ] - ] - ], - [ - "0x34e642520F4487D7D0229c07f2EDe107966D385E", - [ + "233377524301320", + "80126513749" + ], [ - "367351784090731", - "3202365355" - ] - ] - ], - [ - "0x354F7a379e9478Ad1734f5c48e856F89E309a597", - [ + "237867225757655", + "94970341987" + ], [ - "152084889110747", - "12083942493" - ] - ] - ], - [ - "0x355C6d4ee23c2eA9345442f3Fe671Fa3C8612209", - [ + "238323426120979", + "141765636262" + ], [ - "292260794541850", - "2182702092311" - ] - ] - ], - [ - "0x3572F1b678f48C6a2145F5e5fF94159F3C99b01e", - [ + "238513085414760", + "141406044017" + ], [ - "174758503486224", - "44765525061" - ] - ] - ], - [ - "0x358B8a97658648Bcf81103b397D571A2FED677eE", - [ + "239248004001388", + "46885972163" + ], [ - "917235408231892", - "32949877099" - ] - ] - ], - [ - "0x35a386D9B7517467a419DeC4af6FaFC4c669E788", - [ + "239294889973551", + "24269363626" + ], [ - "344823646308651", - "10024424157" - ] - ] - ], - [ - "0x362FFA9F404A14F4E805A39D4985042932D42aFe", - [ + "240291234403735", + "27327225251" + ], [ - "634133673151647", - "2420032442" - ] - ] - ], - [ - "0x3638570931B30FbBa478535A94D3f2ec1Cd802cB", - [ + "240589084672177", + "187694536015" + ], [ - "197761671552490", - "327866270649" + "241109044343173", + "186820539992" ], [ - "205770700307726", - "85677608975" - ] - ] - ], - [ - "0x368a5564F46Bd896C8b365A2Dd45536252008372", - [ + "247641838339634", + "101040572048" + ], [ - "212251016823450", - "186137117756" - ] - ] - ], - [ - "0x36998Db3F9d958F0Ebaef7b0B6Bf11F3441b216F", - [ + "409557925200195", + "13862188950" + ], [ - "67075754733543", - "16604041484" + "411664283436334", + "13677512381" ], [ - "67428770424441", - "6285570368" + "411709178648065", + "13606320365" ], [ - "70451813250817", - "4716970693" + "411722784968430", + "33820000000" ], [ - "273939484179751", - "217800000000" + "411756604968430", + "33820000000" ], [ - "321517916923381", - "214258454662" + "415230639081557", + "16910000000" ], [ - "429133499005020", - "436815986689" + "415247549081557", + "16910000000" ], [ - "533603847212626", - "135734075338" + "415264459081557", + "16915000000" ], [ - "547809199075962", - "71050000000" + "415281374081557", + "16915000000" ], [ - "645809940109546", - "188831250000" - ] - ] - ], - [ - "0x36A00B5b1Fe482c51E726aB8F92b84499053bF7E", - [ + "415314425991557", + "13544000000" + ], [ - "768350362242073", - "34649098834" - ] - ] - ], - [ - "0x36C3094E86CB89e33a74F7e4c10659dd9366538C", - [ + "415327969991557", + "10158000000" + ], [ - "634959436885365", - "19640500000" + "415338127991557", + "6772000000" ], [ - "635245783302881", - "5356500000" - ] - ] - ], - [ - "0x36e5E80E7Fc5CE35A4e645B9A304109f684B5f4B", - [ + "415344899991557", + "16930000000" + ], [ - "18115882730389", - "2184095098753" + "415383569069219", + "13548000000" ], [ - "465379361625193", - "3458705615800" + "415397117069219", + "13548000000" ], [ - "470054787273693", - "227774351500" - ] - ] - ], - [ - "0x36EF6B0a3d234dc071B0e9B6a73c9E206B7c45fc", - [ + "415476876421248", + "13564000000" + ], [ - "531845211117628", - "3940485943" - ] - ] - ], - [ - "0x372c757349a5A81d8CF805f4d9cc88e8778228e6", - [ + "415552624743282", + "13389422861" + ], [ - "217264218398563", - "73188666066" + "415566014166143", + "14725577338" ], [ - "664983563595345", - "75343043560" - ] - ] - ], - [ - "0x37435b30f92749e3083597E834d9c1D549e2494B", - [ + "415580739743481", + "17399191046" + ], [ - "22131306224508", - "4637368726000" + "415598138934527", + "13381218325" ], [ - "32181495640124", - "8433459586" + "415611520152852", + "13378806625" ], [ - "38769863596589", - "1565234930" + "415624898959477", + "13380333313" ], [ - "76223412009195", - "178773400000" + "415638279292790", + "14715582102" ], [ - "86845698678511", - "62444029452" + "415652994874892", + "16050036235" ], [ - "86978458498127", - "27307181096" + "415669044911127", + "16046566435" ], [ - "88869752900177", - "12050549452" + "415685091477562", + "16043097791" ], [ - "93006185741954", - "23198240000" + "415701134575353", + "13593121522" ], [ - "118308388563198", - "14166669028" + "415714727696875", + "13370532569" ], [ - "141234198150981", - "17100712995" + "428524210780265", + "13268338278" ], [ - "183773660297853", - "252870563194" + "573818581461780", + "41982081237" ], [ - "186199081638585", - "49195388116" + "575626349616280", + "53257255812" ], [ - "271980436404190", - "296688083935" + "741131517296797", + "95195568422" ], [ - "352399758201369", - "1024763326668" + "767989215426960", + "14606754787" ], [ - "359928453899368", - "1288012208388" + "771127544359367", + "12764830824" ], [ - "363939676933011", - "1412385930810" + "790591093043508", + "71074869547" ], [ - "395593019554380", - "654800000000" + "868345234814461", + "178880088846" ], [ - "437070763478235", - "3840100000000" + "869175887842680", + "80331618390" ], [ - "460737759569063", - "4527500000000" + "869256219461070", + "87734515234" ], [ - "591966036774809", - "666686929557" + "900352767003453", + "187169856894" ], [ - "593409232970016", - "563728148057" + "912339955462822", + "95736000000" ], [ - "764332208498162", - "105792331133" + "917463394063277", + "359610000000" ] ] ], [ - "0x374E518f85aB75c116905Fc69f7e0dC9f0E2350C", + "0x41e2965406330A130e61B39d867c91fa86aA3bB8", [ [ - "340310565047777", - "2715874656" + "638304410283199", + "57972833670" ] ] ], [ - "0x3750c00525b6D1AEEE4575a4450E87E2795ee4C9", + "0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80", [ [ - "805406787392676", - "271427897935" - ], + "342977163712331", + "63975413862" + ] + ] + ], + [ + "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf", + [ [ - "808841378952277", - "3741772811" + "861104480251463", + "324510990839" ], [ - "861085838494193", - "18080297788" + "870558058147864", + "49189108815" ], [ - "904804646944212", - "185595194790" + "887051135343310", + "60164823097" ], [ - "917268358306518", - "195035742135" + "887243147406769", + "46252901321" ] ] ], [ - "0x375C1DC69F05Ff526498C8aCa48805EeC52861d5", + "0x4254e393674B85688414a2baB8C064FF96a408F1", [ [ - "624706749861385", - "1293514654" + "79244849356805", + "51965469308" + ], + [ + "143749224578097", + "195601904457" ] ] ], [ - "0x377f781195d494779a6CcC2AA5C9fF961C683A27", + "0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7", [ [ - "677766884983003", - "10595565" + "443860431104984", + "23385195001" ] ] ], [ - "0x3798AE2cbC444ed5B5f4fb38344044977066D13F", + "0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31", [ [ - "344843846701641", - "18931968095" - ], - [ - "376325075317086", - "7476138081" + "179882609606308", + "176238775506" ] ] ], [ - "0x37d515Fa5DC710C588B93eC67DE42068090e3ED8", + "0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569", [ [ - "582564609492029", - "1539351282905" - ], - [ - "584103960774934", - "910855838514" - ], - [ - "585059745414822", - "387855469635" - ], - [ - "589065176123882", - "721956082204" - ], - [ - "589789721199545", - "700119128150" - ], - [ - "590489840327695", - "511974175317" + "76402185409195", + "22516244343" ] ] ], [ - "0x3810EAcf5020D020B3317B559E59376c5d02dCB2", + "0x43816d942FA5977425D2aF2a4Fc5Adef907dE010", [ [ - "309464729921305", - "87638844672" + "744283423047316", + "5598000000" ] ] ], [ - "0x38293902871C8ee22720A6553585F24De019c78e", + "0x4384f7916e165F0d24Ab3935965492229dfd50ea", [ [ - "632904420406334", - "6459298878" + "649143417557047", + "5043054" ] ] ], [ - "0x382C29bB63Af1E6Bd3Fc818FeA85bd25Afb0E92E", + "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7", [ [ - "227393755294232", - "90805720025" + "190560408853579", + "17822553583" + ], + [ + "385200050200822", + "12787260456" ] ] ], [ - "0x38AE800E603F61a43f3B02f5E429b44E32e01D84", + "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", [ [ - "649248685749729", - "12448041335" + "420829723023", + "12564061345" ], [ - "650066211440274", - "883672882" + "4942141056624", + "1129385753" ], [ - "651485759293845", - "3572292465" + "4955774616406", + "85802365" ], [ - "735462721965817", - "38853572481" - ] - ] - ], - [ - "0x38Cf87B5d7B0672Ac544Ed279cbbff31Bb83b3D5", - [ + "28365015360976", + "1000000000" + ], [ - "152135543630806", - "6119470222" + "28366015360976", + "1000000000" ], [ - "207252364348652", - "17964245672" - ] - ] - ], - [ - "0x38f733Fb3180276bE19135B3878580126F32c5Ab", - [ + "28367015360976", + "1000000000" + ], [ - "33291076017861", - "103108618" + "28396822783467", + "2180869530" + ], + [ + "28399003652997", + "19090914955" + ], + [ + "28436831873163", + "1109129488" + ], + [ + "28437941002651", + "1206768540" ], [ - "767122453744233", - "2293110488" + "28439199913335", + "896325564" ], [ - "767642320985579", - "562218595" - ] - ] - ], - [ - "0x39167e20B785B46EBd856CC86DDc615FeFa51E76", - [ + "28456831873163", + "1000000000" + ], [ - "825748197827247", - "503880761345" - ] - ] - ], - [ - "0x394fEAe00CdF5eCB59728421DD7052b7654833A3", - [ + "28457831873163", + "1000000000" + ], [ - "31613511996035", - "1422751578" + "28476232963741", + "1000000000" ], [ - "56090190254115", - "11945702437" + "28477232963741", + "1000000000" ], [ - "61070704728260", - "11265269800" - ] - ] - ], - [ - "0x3983b24542E637030af57a6Ca117B96Fc42Ace10", - [ + "28861157837851", + "7671502446" + ], [ - "344971252855340", - "54716661232" + "31620980803307", + "25104421" ], [ - "357975339088994", - "60400014733" - ] - ] - ], - [ - "0x399baf8F9AD4B3289d905f416bD3e245792C5fA6", - [ + "32165371093183", + "5644256527" + ], [ - "31881074513162", - "2271791105" - ] - ] - ], - [ - "0x39af01c17261e106C17bAb73Bc3f69DFdaAE7608", - [ + "33155888849890", + "522412224" + ], [ - "38729105409331", - "4520835534" + "33178643999918", + "8231353455" ], [ - "75749856969161", - "8190484804" + "33253286873261", + "9664144600" ], [ - "75768702250033", - "2592066456" + "76006574486488", + "12000000000" ], [ - "544122918974124", - "90520524431" + "78617270835971", + "22778336323" ], [ - "569988798013715", - "75915000000" + "93244962831954", + "3466008022725" ], [ - "634184272767738", - "4800266302" + "860235430554267", + "12817228360" ], [ - "634395165820350", - "4971925933" + "861574350043908", + "4987547355" ], [ - "637136003689549", - "5026085154" + "861688842729623", + "6378966633" ], [ - "641232825579881", - "6901957424" + "866867341387950", + "1210047061" ], [ - "644028956669800", - "6258715658" + "883474337359063", + "55249364508" ], [ - "644035215385458", - "3739040895" + "883752711206313", + "17679122867" ], [ - "644052141349672", - "5619908813" + "884692363137944", + "20022518305" ], [ - "644073507478345", - "8688260900" + "886956426850400", + "13791046304" + ] + ] + ], + [ + "0x43b43aA7Ea873e8d7650f64ca24BeC007D6CD920", + [ + [ + "119938474317595", + "231684492403" ], [ - "644089221861766", - "9969767834" + "197112848801207", + "191819355151" ], [ - "644099191629600", - "5282898032" + "197304668156358", + "347968913517" ], [ - "644112169106375", - "11803118121" + "634297257454226", + "8643272696" ], [ - "644143887959668", - "6586391868" + "634318197219686", + "20000000000" ], [ - "644181540147936", - "5533430900" + "634389262085325", + "5903735025" ], [ - "644217945713915", - "9775619115" + "634951612625176", + "6468282284" ], [ - "644227721333030", - "7138145970" + "635130589958365", + "59209280000" ], [ - "644235138725690", - "11087897889" + "641243528586934", + "224172731213" ], [ - "644246424265017", - "9438007812" + "643113131975195", + "4579348454" ], [ - "644266109923013", - "12728017527" + "644402952187282", + "11034160064" ], [ - "648703066319944", - "475923815" + "644427143015560", + "10697128872" ], [ - "650452044643940", - "210712873" + "682720800766215", + "105474278261" ], [ - "740444343886258", - "37039953396" + "759973111455038", + "190360000000" ] ] ], [ - "0x3a1Bc767d7442355E96BA646Ff83706f70518dAA", + "0x4432e64624F4c64633466655de3D5132ad407343", [ [ - "60534460423689", - "37943648860" - ], - [ - "60613921072549", - "337056974653" + "489636306256", + "76923076" ], [ - "384808251979965", - "221162082281" + "499953138393", + "1624738693" ], [ - "385114975062246", - "68895138576" + "759972749054172", + "53680953" ], [ - "428730219817416", - "346162069888" + "761858063237895", + "53575113" ], [ - "444016501963211", - "63083410136" + "762840533673019", + "40875451574" ], [ - "460460113879903", - "200388674016" + "762881409124593", + "45392997396" ], [ - "510804923776436", - "196096790801" + "766112516278924", + "256869092" ] ] ], [ - "0x3A23A6198C256a57bEcFaC61C1B382AE31eF7264", + "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", [ [ - "740644060961741", - "4860922695" + "519636306256", + "435653558" + ], + [ + "28061198121035", + "18536597032" + ], + [ + "28425394212038", + "3071807226" + ], + [ + "28859391130925", + "1549632000" ] ] ], [ - "0x3A529A643e5b89555712B02e911AEC6add0d3188", + "0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545", [ [ - "637148882075661", - "285714285" + "33151381475806", + "1044633475" + ], + [ + "643087290738377", + "1586716252" ] ] ], [ - "0x3a81cCE57848C2B84D575805B75DBC7DC1F99Ab1", + "0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F", [ [ - "915394886313821", - "16285361281" + "516363563859602", + "772670414147" ] ] ], [ - "0x3B0f3233C6A02BEF203A8B23c647d460Dffc6aa7", + "0x448a549593020696455D9b5e25e0b0fB7a71201E", [ [ - "141910062421668", - "20166747481" + "507995893644699", + "48468507344" ], [ - "147404101138230", - "19708496282" + "529799210870675", + "13171499195" ], [ - "153213326271478", - "18867580234" - ], + "529862978616276", + "72277031524" + ] + ] + ], + [ + "0x4497aAbaa9C178dc1525827b1690a3b8f3647457", + [ [ - "160718808143920", - "10656807898" + "141593397391504", + "168801655493" + ] + ] + ], + [ + "0x44db0002349036164dD46A04327201Eb7698A53e", + [ + [ + "643938854351013", + "228851828" ], [ - "396504433540468", - "13250965252" + "644373889298847", + "3084780492" ], [ - "396517684505720", - "21196418023" + "768072180047322", + "2519675802" ] ] ], [ - "0x3b55DF245d5350c4024Acc36259B3061d42140D2", + "0x44E836EbFEF431e57442037b819B23fd29bc3B69", [ [ - "59303914981687", - "109032000000" + "585452484380922", + "590804533993" ], [ - "395431577902828", - "61940000000" + "634372867374605", + "167260560" ], [ - "428517528130265", - "6682650000" + "634373034635165", + "2955966531" ], [ - "430095496589579", - "1727500000" + "634384029519721", + "5232565604" ], [ - "672251402712185", - "113626410" + "634414601014386", + "6732679734" ], [ - "768408426239740", - "10530972784" - ] - ] - ], - [ - "0x3b70DaE598e7Aba567D2513A7C7676F7536CaDcb", - [ + "634471029687631", + "1144842671" + ], [ - "33289326590234", - "1184036940" + "634946964475864", + "4648149312" ], [ - "33386963858115", - "4658475375814" + "644729591640166", + "792144308" ], [ - "408425382414043", - "1123333332210" + "648094970693749", + "4657050598" ], [ - "427517763505395", - "856500000000" + "649184311283738", + "11312622545" ], [ - "477272425070829", - "3276576610442" + "649761686809083", + "11781355408" ], [ - "759127319086261", - "542512540896" + "652479040083562", + "3951780206" ] ] ], [ - "0x3Bbb4F4eAfd32689DaA395d77c423438938C40bd", + "0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB", [ [ - "561885444802308", - "194013000000" + "273550612806852", + "119672848374" + ] + ] + ], + [ + "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975", + [ + [ + "257953922346879", + "78731552385" ], [ - "565476469810977", - "194013435000" + "309552368765977", + "50532033501" ], [ - "567291750347146", - "194013435000" + "638949411896201", + "2100140818" ], [ - "567707182532146", - "194013435000" + "643118187155825", + "5070971174" ], [ - "570802112669484", - "192000000000" + "643811556089323", + "9000076282" ], [ - "571217544854484", - "194013435000" + "643969388479223", + "2093638974" ] ] ], [ - "0x3bD12E6C72B92C43BD1D2ACD65F8De2E0E335133", + "0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA", [ [ - "70932687821992", - "142530400862" - ], + "345230873758247", + "120151660091" + ] + ] + ], + [ + "0x4588a155d63CFFC23b3321b4F99E8d34128B227a", + [ [ - "211163571688407", - "90969668386" - ], + "256610609452753", + "98878990000" + ] + ] + ], + [ + "0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e", + [ [ - "544006850006260", - "10532744358" - ], + "300537735718283", + "9033860883" + ] + ] + ], + [ + "0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4", + [ [ - "653296446968959", - "1462730442" - ], + "767502219582512", + "1017640" + ] + ] + ], + [ + "0x46387563927595f5ef11952f74DcC2Ce2E871E73", + [ [ - "653477602499401", - "2382078228" + "768717602283351", + "10000000" ], [ - "848255254733335", - "2974087025" + "768717622283351", + "2694500000" ] ] ], [ - "0x3BD142a93adC0554C69395AAE69433A74CFFc765", + "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", [ [ - "267825806174639", - "10928727606" + "185586166390180", + "4605813333" + ] + ] + ], + [ + "0x46b7c8c6513818348beF33cc5638dDe99e5c9E74", + [ + [ + "408347529988115", + "11863530938" + ] + ] + ], + [ + "0x473812413b6A8267C62aB76095463546C1F65Dc7", + [ + [ + "767510533790684", + "852570198" ], [ - "325258451698078", - "141509657939" + "769134631191932", + "143341492" ] ] ], [ - "0x3BD4c721C1b547Ea42F728B5a19eB6233803963E", + "0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb", + [ + [ + "139632121602326", + "73702619695" + ] + ] + ], + [ + "0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88", [ [ - "218781665879410", - "12034941079" + "204109072732682", + "12907895307" + ] + ] + ], + [ + "0x47C2f43D7fE9604c0f9cd4F6D209648a4E8e0209", + [ + [ + "130708317757427", + "358852500300" + ] + ] + ], + [ + "0x48070111032FE753d1a72198d29b1811825A264e", + [ + [ + "665432395338264", + "268948474274" + ], + [ + "668538888477323", + "173806994620" + ], + [ + "669549803608896", + "188830987043" + ], + [ + "671213571259037", + "238241613308" + ], + [ + "671471895749521", + "224577013993" ] ] ], [ - "0x3C087171AEBC50BE76A7C47cBB296928C32f5788", + "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351", [ [ - "170943059650826", - "148060901697" + "194902848948000", + "678300326761" ], [ - "179705651830652", - "176957775656" + "198400769373984", + "522905317827" ], [ - "212069776260061", - "14038264688" + "220690466846146", + "526712108816" ], [ - "215219527533100", - "16507846329" + "234257642043144", + "86640000000" ], [ - "230427008120352", - "1592559438" + "237033531028709", + "216100000000" ], [ - "232479752844281", - "2373299725" + "239428834403735", + "862400000000" ], [ - "327841336645705", - "13592654125" + "245143778851644", + "240081188008" ], [ - "339831945732017", - "224290993889" + "248239496710377", + "209638678922" ], [ - "340465994882707", - "17923920296" + "248611315273600", + "643500000000" ], [ - "408359393519053", - "10089000000" + "249254815273600", + "216079626755" ], [ - "648211808724006", - "6721246743" + "252051631959570", + "859142789165" ], [ - "743598654626181", - "2043540906" + "252910774748735", + "1020962098385" + ], + [ + "254599239282940", + "351175706375" + ], + [ + "254950414989315", + "1019094463438" + ], + [ + "255969509452753", + "641100000000" + ], + [ + "257492898458484", + "188408991793" ] ] ], [ - "0x3C43674dfa916d791614827a50353fe65227B7f3", + "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", [ [ - "86224790513977", - "18752048727" + "264978511678838", + "7633129939" ], [ - "249683318820186", - "10002984280" + "311308648020422", + "23542648323" ], [ - "683068828515029", - "20162991875" + "430074784791709", + "5342881647" ], [ - "781843303488481", - "90638399996" + "458937267162882", + "1840684464" ], [ - "808097236727089", - "112991072036" + "477187476187107", + "1918866314" ], [ - "883534894985575", - "82087297170" + "477189395053421", + "1926694373" ], [ - "886970218030110", - "80917313200" + "477191321747794", + "1925324510" ], [ - "902311722381291", - "2492924562921" + "477193247072304", + "1928422141" ], [ - "911681851165911", - "148249317984" + "480549001681271", + "1936443717" + ], + [ + "507993888424871", + "2005219828" + ], + [ + "508044362152043", + "2021544393" + ], + [ + "638287014203068", + "6170341451" + ], + [ + "640681813289989", + "2884062719" + ], + [ + "643064981952810", + "5052470551" + ], + [ + "643862412346720", + "5109096170" + ], + [ + "647209674578671", + "10179109779" ] ] ], [ - "0x3c5Aac016EF2F178e8699D6208796A2D67557fe2", + "0x4888c0030b743c17C89A8AF875155cf75dCfd1E1", [ [ - "599117126788478", - "69159694993" + "767302481235981", + "5239462203" ] ] ], [ - "0x3c7cFaF3680953f8Ca3C7e319Ac2A4c35870E86c", + "0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91", [ [ - "562585978802308", - "48492000000" - ], - [ - "564921455942708", - "48492118269" - ], - [ - "566579274363477", - "48492118269" - ], - [ - "568565179832546", - "48492118269" - ], - [ - "570247098801215", - "48492118269" - ], + "586109598020889", + "5946000000" + ] + ] + ], + [ + "0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0", + [ [ - "571918080039484", - "48492118269" + "262708652965979", + "892676539" ] ] ], [ - "0x3C8cD5597ac98cB0871Db580d3C9A86a384B9106", + "0x48e9E2F211371bD2462e44Af3d2d1aA610437f82", [ [ - "271881305006652", - "99131397538" + "667085979405936", + "7331625468" ] ] ], [ - "0x3CAA62D9c62D78234E3075a746a3B7DB76a0A94B", + "0x48F8738386D62948148D0483a68D692492e53904", [ [ - "7282639421137", - "107872082286" - ], + "495222864611440", + "35654060356" + ] + ] + ], + [ + "0x4932Ad7cde36e2aD8724f86648dF772D0413c39E", + [ [ - "67130960801289", - "208750536344" - ], + "83129576696094", + "517995825113" + ] + ] + ], + [ + "0x49444e6d0b374f33c43D5d27c53d0504241B9553", + [ [ - "197652637069875", - "79560142678" + "228469619062286", + "4748040000" ], [ - "506176315739631", - "751200000000" + "264656791222470", + "47931342976" ], [ - "507737045334642", - "256843090229" + "272768921777231", + "49267287724" ], [ - "551839541572649", - "464523649777" + "311332190668745", + "92255508651" ] ] ], [ - "0x3Cdf2F8681b778E97D538DBa517bd614f2108647", + "0x4949D9db8Af71A063971a60F918e3C63C30663d7", [ [ - "158637651631405", - "96662646688" + "41140829546546", + "132215385271" ], [ - "258849054768509", - "94179890197" + "41373044931815", + "2" ], [ - "265521940236427", - "70852648035" + "170707469808407", + "15353990995" + ], + [ + "171091120552523", + "168884964002" + ], + [ + "260026533868529", + "42584740555" ] ] ], [ - "0x3D138E67dFaC9a7AF69d2694470b0B6D37721B06", + "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", [ [ - "239154025576778", - "93978424610" + "33227297183704", + "653834157" ], [ - "325815231767308", - "116109191366" + "212145439369214", + "1113699755" ], [ - "340483918803003", - "107540812013" + "279405653734695", + "9627840936" + ], + [ + "320205949886679", + "5543007376" ] ] ], [ - "0x3D156580d650cceDBA0157B1Fc13BB35e7a48542", + "0x49cE991352A44f7B50AF79b89a50db6289013633", [ [ - "31605992022782", - "4486265388" + "152187983101028", + "20341364703" + ], + [ + "152944600004612", + "25333867824" + ], + [ + "179694459833740", + "11191996912" + ], + [ + "189337100682911", + "32429850581" ] ] ], [ - "0x3D4FCd5E5FCB60Fca9dd4c5144aa970865325803", + "0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9", [ [ - "559909549098070", - "9516000000" + "323336011972704", + "240943746648" ] ] ], [ - "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", + "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", [ [ - "644123972224496", - "18442405" + "216246125608251", + "21731842340" + ], + [ + "235278940260036", + "30572743902" + ], + [ + "262709545642518", + "234423710407" + ], + [ + "262943969352925", + "856400000000" + ], + [ + "365352062863821", + "32075676524" ] ] ], [ - "0x3d860D1e938Ea003d12b9FC756Be12dBe1d5C4f5", + "0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256", [ [ - "80481878020743", - "2335790276267" - ], - [ - "131490207784127", - "4068458197507" + "339479065013191", + "22903272033" ] ] ], [ - "0x3E192315A9974c8Dc51Fb9Dde209692B270d7c49", + "0x4a52078E4706884fc899b2Df902c4D2d852BF527", [ [ - "768326922278702", - "643659978" - ], - [ - "911906996407371", - "24032791791" + "764116786012760", + "434385954" ] ] ], [ - "0x3E24c27F8fDCfC1f3E7E8683D9df0691AcE251C6", + "0x4A5867445A1Fa5F394268A521720D1d4E5609413", [ [ - "87489402650273", - "92067166902" + "484489924611440", + "2578100000000" ] ] ], [ - "0x3e2EfD7D46a1260b927f179bC9275f2377b00634", + "0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521", [ [ - "325399961356017", - "11508897293" + "640452235842856", + "37062339827" ] ] ], [ - "0x3E4D97C22571C5Ff22f0DAaBDa2d3835E67738EB", + "0x4AAE8E210F814916778259840d635AA3e73A4783", [ [ - "562755073802308", - "30150000000" - ], - [ - "649506912428795", - "36390839843" + "201153918156661", + "24321462040" ], [ - "649853488667170", - "65015748" + "648113005876132", + "16950613281" ] ] ], [ - "0x3E5ed320828B992Ab80d4A8b3d80b24c0F64b58c", + "0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0", [ [ - "534857972611245", - "18731220754" + "345025969516572", + "39817721136" ] ] ], [ - "0x3e763998E3c70B15347D68dC93a9CA021385675d", + "0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e", [ [ - "647229043503533", - "3184477709" + "636825648638295", + "1260667121" ] ] ], [ - "0x3E83E8c2734e1Af95CA426EfeFB757aa9df742CC", + "0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A", [ [ - "340708439500138", - "107810827136" - ], - [ - "343181072805930", - "327389493912" + "344862778669736", + "9133462996" ] ] ], [ - "0x3efcb1c1B64E2ddd3ff1CAB28aD4E5BA9CC90C1c", + "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", [ [ - "141030334319023", - "70000039897" + "164597798526063", + "2630224719" ], [ - "595385246220334", - "56722212500" + "265994631181050", + "8090890905" ], [ - "644345312837307", - "5547402539" + "378228371871768", + "1740766894" ], [ - "647224666133056", - "4377370477" + "551460280407903", + "25275274698" ], [ - "647382462319478", - "6271703989" + "562580496802308", + "5482000000" ], [ - "647555129566838", - "7781608168" + "566627766481746", + "5482750000" ], [ - "742833918745520", - "14172500000" + "568559697082546", + "5482750000" ], [ - "848237297659532", - "17957073803" + "570295590919484", + "5482750000" + ], + [ + "571912597289484", + "5482750000" + ], + [ + "818727201955775", + "160270131472" ] ] ], [ - "0x3F2719A6BaD38B4D6f72E969802f3404d0b76BF0", + "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", [ [ - "355636039477093", - "9985803845" + "20308652197223", + "42992538368" + ], + [ + "33128882677551", + "22434511734" + ], + [ + "38733626244865", + "36237351724" + ], + [ + "75851623491707", + "91376117280" + ], + [ + "97312189544226", + "962543493539" + ], + [ + "98274733037765", + "225761417993" + ], + [ + "109521368209337", + "25432470215" + ], + [ + "141107886434515", + "25140924405" + ], + [ + "164659166534057", + "656550874126" + ], + [ + "169398711509766", + "84912848439" + ], + [ + "182744208013826", + "594997480373" + ], + [ + "183339205494199", + "94951829258" + ], + [ + "184161154400956", + "57484083188" + ], + [ + "184684071457860", + "320813397796" + ], + [ + "203463090125887", + "277362737859" + ], + [ + "228695819280976", + "435400000000" + ], + [ + "229389778185936", + "59760464812" + ], + [ + "230333526120352", + "93482000000" + ], + [ + "230572253367548", + "434600000000" + ], + [ + "231006853367548", + "403315212327" + ], + [ + "231410168579875", + "434000000000" + ], + [ + "232256551893053", + "136081851228" + ], + [ + "234465804378976", + "433000000000" ], [ - "355646025280938", - "2373276277" + "245678239246970", + "429600000000" ], [ - "355773362907086", - "12535749497" - ] - ] - ], - [ - "0x3f73493ecb5b77fE96044a4c59d66C92B7D488cA", - [ + "246405622268848", + "429000000000" + ], [ - "294677956974210", - "187420307596" + "246834622268848", + "593165265392" ], [ - "298745403795012", - "21089420430" - ] - ] - ], - [ - "0x3f75F2AE3aE7dA0Fb7fF0571a99172926C3Bdac2", - [ + "266623247476225", + "31843087062" + ], [ - "41285039823287", - "521806033" + "400533285433272", + "1327936414" ], [ - "235853631746968", - "1533680526" + "524402842691769", + "277260761697" ], [ - "531838649791416", - "6561326212" + "548030249075962", + "2737095195209" ], [ - "662650407520724", - "57172076" - ] - ] - ], - [ - "0x3FDbEeDCBfd67Cbc00FC169FCF557F77ea4ad4Ed", - [ + "574794879815863", + "470264676707" + ], [ - "647725612230182", - "29699469080" + "576273196085064", + "475735746580" ], [ - "768304721377388", - "3507114838" - ] - ] - ], - [ - "0x400609FDd8FD4882B503a55aeb59c24a39d66555", - [ + "577250185805214", + "352964012203" + ], [ - "13424355740040", - "46140000000" + "577994078452897", + "428753685947" ], [ - "385212837461278", - "12793000337" - ] - ] - ], - [ - "0x4034adD1a1A750AA19142218A177D509b7A5448F", - [ + "578422832138844", + "621546025531" + ], [ - "643088877454629", - "2992976846" + "579151783632625", + "511648078072" ], [ - "643091870431475", - "4644226944" + "599186286483471", + "300681637829" ], [ - "643125864984505", - "6948011478" + "606325525196387", + "430288154881" ], [ - "643617546386516", - "2736651405" + "611048146529128", + "294537267480" ], [ - "643629222103340", - "1334408552" + "611342683796608", + "122585177924" ], [ - "643653609485430", - "3361817827" + "622350349441157", + "423020213781" ], [ - "643656971303257", - "1840841812" + "622773369654938", + "188613792398" ], [ - "643658812145069", - "1886219723" + "622976007236649", + "605799007104" ], [ - "643660698364792", - "4196252501" + "631737544692156", + "57278437068" ], [ - "643664894617293", - "3945346023" + "632737782810716", + "166637595618" ], [ - "643697705822698", - "3069368803" + "632923458328218", + "3562084461" ], [ - "643700775191501", - "2616399199" + "633174226086802", + "118340636454" ], [ - "643704053550072", - "4354211152" + "633293616127503", + "68451648885" ], [ - "643715616535597", - "4120838084" + "633362067776388", + "696785610" ], [ - "643735049573681", - "4950268423" + "634050042239925", + "2029010620" ], [ - "643739999842104", - "4592612954" + "634052071250545", + "1566534038" ], [ - "643751895992677", - "4449841152" + "634053637784583", + "732611220" ], [ - "643756345833829", - "6933768558" + "634200736479427", + "4790574316" ], [ - "643774597107209", - "4927912318" + "634205527053743", + "2600593701" ], [ - "643856593003930", - "5819342790" + "634433893789543", + "4541616170" ], [ - "643882906499989", - "3569433363" + "634444626397101", + "3241881404" ], [ - "643939083202841", - "2637229058" + "634447868278505", + "3785283994" ], [ - "643985406845033", - "5924684744" + "636303124680973", + "5741625032" ], [ - "643991331529777", - "2352760830" + "638269655222213", + "2789581992" ], [ - "643993684290607", - "1884171975" + "639434921077105", + "197428820134" ], [ - "643995568462582", - "3724339951" + "639687831454420", + "1841462496" ], [ - "644082195739245", - "2039061143" + "639714195158937", + "1002910636" ], [ - "644168293016051", - "3645902617" + "640275015971967", + "936457910" ], [ - "644256136851915", - "6416440826" + "641492720431748", + "6670046454" ], [ - "644279469802093", - "2923459312" - ] - ] - ], - [ - "0x403b18B0AfE3ab2dA1A7D53D6e5B7AFE5B146afB", - [ + "643047432848730", + "2168510045" + ], [ - "640996006666783", - "46563701848" + "643899647055493", + "6808576094" ], [ - "646739353301167", - "10228948233" + "643945769210064", + "6039028984" ], [ - "646772221095742", - "7915875000" + "644368102368333", + "5786930514" ], [ - "647311018597283", - "23870625000" + "647162978371458", + "3462235904" ], [ - "647458959804717", - "20307375000" + "648721663311036", + "508035028" ], [ - "647479267179717", - "26457093750" + "680142146935616", + "114648436337" ], [ - "647637605929338", - "30143670312" + "741722138870112", + "1341090085" ], [ - "647696885372209", - "28726857973" + "744371763079127", + "20897052664" ], [ - "648474129091480", - "9060790481" + "744392660131791", + "12851063713" ], [ - "658068499502639", - "37212168484" + "782518705963072", + "9770439640" ], [ - "658229774319898", - "29767318612" + "810089111571412", + "50684223342" ] ] ], [ - "0x404a75f728D7e89197C61c284d782EC246425aa6", + "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", [ [ - "883958086238857", - "171169191653" + "319932769634923", + "69289110000" ] ] ], [ - "0x4065A8cA3fD17A7EE02e23f260FCEefFD4806aF5", + "0x4C3C27eB0C01088348132d6139F6d51FC592dDBD", [ [ - "539608230930738", - "417347700552" - ], - [ - "553592668955772", - "222299277023" + "310797339658113", + "5564385258" ] ] ], [ - "0x406874Ac226662369d23B4a2B76313f3Cb8da983", + "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", [ [ - "153232193851712", - "462937279977" - ], - [ - "338018255707329", - "357159363004" + "212083814524749", + "53819165244" ] ] ], [ - "0x408B652d64b4670E0d0B00857e7e4b8FAd60a34b", + "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", [ [ - "573650098517519", - "5734467826" - ] - ] - ], - [ - "0x408fc5413Ea0D489D66acBc1BcB5369Fc9F32e22", - [ + "4905170401522", + "26072576416" + ], [ - "76099819242179", - "19406193406" + "106839237525292", + "4821011987" ], [ - "569797745263715", - "21159782439" + "106846924633216", + "1424576250" ], [ - "634041962664177", - "2442109027" + "127568340031921", + "929795062302" ], [ - "636931384475422", - "19937578021" + "128498135094223", + "929805062302" ], [ - "639795300300187", - "86043643136" + "129427940156525", + "10000000" ], [ - "640684697352708", - "201965000000" - ] - ] - ], - [ - "0x40Da1406EeB71083290e2e068926F5FC8D8e0264", - [ + "190477983853123", + "31429058425" + ], [ - "634461766777846", - "6291400830" + "278886678120078", + "16930293743" ], [ - "679985260625921", - "71" + "315294748069199", + "4230684000" ], [ - "742848091245520", - "1417250000" + "315298978753199", + "38949316540" ], [ - "742849508495520", - "1417250000" - ] - ] - ], - [ - "0x40E652fE0EC7329DC80282a6dB8f03253046eFde", - [ + "672771638984332", + "58636813154" + ], [ - "682116636977139", - "389208674898" + "675003539778787", + "83138632015" ], [ - "683765325492995", - "643482107799" + "679651587058721", + "17303169600" ], [ - "728528152871407", - "486415703664" + "742546489600908", + "12755718599" ], [ - "790320470681371", - "129057167288" + "744706441326176", + "26346793433" ] ] ], [ - "0x411bbd5BAf8eb2447611FF3Ac6E187fBBE0573A7", + "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", [ [ - "75686171721947", - "63685247214" + "148125503301315", + "613663117381" ], [ - "143377079152995", - "39159248155" + "148782143329299", + "676628312802" ], [ - "564444697090208", - "27405315000" + "152969933872436", + "202026433529" ], [ - "566108259745977", - "13702657500" + "157281617133575", + "136137390673" ], [ - "569070983910815", - "13702657500" + "160958961495278", + "49543800744" ], [ - "569784042606215", - "13702657500" + "166316667085303", + "492948149258" ], [ - "572415925695253", - "13702657500" + "167125029052537", + "433007073267" + ], + [ + "168960920980615", + "413035848007" + ], + [ + "172621356097887", + "637822580221" ] ] ], [ - "0x414a26eaA23583715d71b3294F0BF5eaBDd2EaA8", + "0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6", [ [ - "284294660466475", - "32606569800" - ], - [ - "644738977704474", - "427917192" + "75787223567174", + "8000000000" ] ] ], [ - "0x41954b53cFB5e4292223720cB3577d3ed885D4f7", + "0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315", [ [ - "96865545670304", - "150940785067" + "670256915967082", + "9076923076" ] ] ], [ - "0x41a93Eb81720F943FE52b7F72E4a7ac9620AcC54", + "0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1", [ [ - "230525695001648", - "46558365900" + "213167569962724", + "54975000000" ] ] ], [ - "0x41BF3C5167494cbCa4C08122237C1620A78267Ab", + "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45", [ [ - "67474986688534", - "125375746500" + "147423809634512", + "309692805971" ], [ - "624643963734953", - "14701274232" - ], + "829914755106014", + "216642349742" + ] + ] + ], + [ + "0x4d26976EC64f11ce10325297363862669fCaAaD5", + [ [ - "630547945246894", - "2249157051" - ], + "232161195486445", + "95356406608" + ] + ] + ], + [ + "0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E", + [ [ - "630888770251188", - "4637283207" - ], + "220231823417551", + "8388831222" + ] + ] + ], + [ + "0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59", + [ [ - "631053204527095", - "1713785306" + "632628975546639", + "9910714625" ], [ - "631567031582009", - "2612709957" + "635426328011968", + "6512126913" ], [ - "631709202386668", - "1277169126" - ], + "767307720698184", + "2572274214" + ] + ] + ], + [ + "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", + [ [ - "631801066266314", - "3476565097" + "31587707407402", + "1433039440" ], [ - "631804542831411", - "5257772247" + "680815156134799", + "3527890346" ], [ - "631812869882326", - "7418551539" + "811172285844826", + "7130903829" + ] + ] + ], + [ + "0x4E2572d9161Fc58743A4622046Ca30a1fB538670", + [ + [ + "185541048150117", + "45118240063" + ] + ] + ], + [ + "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a", + [ + [ + "167695362380301", + "28977789728" ], [ - "632715023362792", - "17060602162" + "171893729223786", + "47575900440" ], [ - "632910879705212", - "9755905834" + "189385728874825", + "1355785855" ], [ - "634018729724195", - "3815159692" + "244974269772648", + "42559348679" ], [ - "634022544883887", - "4493860181" - ], + "341968317849767", + "21768707480" + ] + ] + ], + [ + "0x4e6DA2D137281CaDa5E82372849CbA8D65fC88C7", + [ [ - "634166749613035", - "4202744958" + "819841240087247", + "2404456000000" ], [ - "634170952357993", - "6931782754" - ], + "825748187827247", + "10000000" + ] + ] + ], + [ + "0x4E7837928eD3E7AccF715da1aE86c0A0f5280DC0", + [ [ - "634194611311476", - "2472437836" + "818887472087247", + "953768000000" ], [ - "634421333694120", - "6913927217" - ], + "822245696087247", + "1681687000000" + ] + ] + ], + [ + "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79", + [ [ - "634752629850619", - "1490458288" + "70430142099789", + "21671151028" ], [ - "634773085341398", - "8523970000" + "141461024306948", + "25160811724" ], [ - "635868338517102", - "3485021203" + "181615502967276", + "256079218906" ], [ - "636068032409490", - "221549064473" + "182111406992128", + "540739337424" ], [ - "641729133359289", - "8198117831" + "190604505005626", + "148971205022" ], [ - "643744592455058", - "7303537619" + "218398796232609", + "371633895678" ], [ - "644282393261405", - "7914873408" + "356006487964429", + "1968851124565" ], [ - "647553646266733", - "1483300105" + "458578467162882", + "358800000000" ], [ - "681835742516223", - "494751015" + "562925665802308", + "496100000000" ], [ - "682505845652037", - "1132140582" - ], + "642621542329649", + "422340000000" + ] + ] + ], + [ + "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8", + [ [ - "706035819459340", - "98080531002" + "152096973053240", + "38570577566" ], [ - "741718035195957", - "162218835" + "168308503749870", + "17838668722" ], [ - "860392088596291", - "56073594" + "201024333624707", + "39603521290" ] ] ], [ - "0x41e2965406330A130e61B39d867c91fa86aA3bB8", + "0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9", [ [ - "638304410283199", - "57972833670" + "595305161120334", + "32982900000" ] ] ], [ - "0x422811e9Ca0493393a6C6bc8aF0718a0ec5eaa80", + "0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b", [ [ - "342977163712331", - "63975413862" + "595129885790334", + "12195297500" ] ] ], [ - "0x424687a2BB8B34F93c3DcB5E3Cdd2AD6A21163Bf", + "0x4fE52118aeF6CE3916a27310019af44bbc64cc31", [ [ - "861104480251463", - "324510990839" - ], + "668527480798265", + "11407679058" + ] + ] + ], + [ + "0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869", + [ [ - "870558058147864", - "49189108815" + "888282326308800", + "20896050000" ], [ - "887051135343310", - "60164823097" - ], + "911830101743081", + "61984567762" + ] + ] + ], + [ + "0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6", + [ [ - "887243147406769", - "46252901321" + "335865006920670", + "298975120881" ] ] ], [ - "0x4254e393674B85688414a2baB8C064FF96a408F1", + "0x5004Be84E3C40fAf175218a50779b333B7c84276", [ [ - "79244849356805", - "51965469308" + "106977570072731", + "28997073991" ], [ - "143749224578097", - "195601904457" + "221600570194728", + "78967589731" ] ] ], [ - "0x426b6cA100cCCDFBA2B7b472076CaFB84e750cE7", + "0x507165FF0417126930D7F79163961DE8Ff19c8b8", [ [ - "443860431104984", - "23385195001" + "299720079337431", + "61879832343" + ], + [ + "601480769346490", + "59538073434" ] ] ], [ - "0x427Dfd9661eaF494be14CAf5e84501DDF3d42d31", + "0x5084949C8f7bf350c646796B242010919f70898E", [ [ - "179882609606308", - "176238775506" + "310785629091202", + "11710566911" ] ] ], [ - "0x433770F8B8fA5272aa9d1Fe899FBEdD68e386569", + "0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91", [ [ - "76402185409195", - "22516244343" + "355452879506659", + "183159970434" ] ] ], [ - "0x43816d942FA5977425D2aF2a4Fc5Adef907dE010", + "0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE", [ [ - "744283423047316", - "5598000000" + "20300839138393", + "7813058830" + ], + [ + "56088817072755", + "1373181360" + ], + [ + "75850623491707", + "1000000000" + ], + [ + "190753476210648", + "20871314978" ] ] ], [ - "0x4384f7916e165F0d24Ab3935965492229dfd50ea", + "0x51b2Adf97650A8D732380f2D04f5922D740122E3", [ [ - "649143417557047", - "5043054" + "429986874393417", + "2598292" ] ] ], [ - "0x4389338CEaA410098b6bb9aD2cdd5E5e8687fBF7", + "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", [ [ - "190560408853579", - "17822553583" + "4955860418771", + "1" ], [ - "385200050200822", - "12787260456" + "31614934747613", + "1" ] ] ], [ - "0x43a9dA9bAde357843fBE7E5ee3Eedd910F9fAC1e", + "0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04", [ [ - "420829723023", - "12564061345" - ], - [ - "4942141056624", - "1129385753" + "160580454568520", + "48526305109" ], [ - "4955774616406", - "85802365" + "236912893424045", + "96525595990" ], [ - "28365015360976", - "1000000000" + "265652667275489", + "38978848813" ], [ - "28366015360976", - "1000000000" - ], + "265744121929071", + "75907148840" + ] + ] + ], + [ + "0x52c9A7E7D265A09Db125b7369BC7487c589a7604", + [ [ - "28367015360976", - "1000000000" + "78590049172294", + "25000000000" ], [ - "28396822783467", - "2180869530" + "78640049172294", + "8481454530" ], [ - "28399003652997", - "19090914955" + "189369530533492", + "16198341333" ], [ - "28436831873163", - "1109129488" - ], + "661983733769654", + "15472843550" + ] + ] + ], + [ + "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + [ [ - "28437941002651", - "1206768540" + "28363579478364", + "1435882612" ], [ - "28439199913335", - "896325564" + "28389816079096", + "1342441520" ], [ - "28456831873163", - "1000000000" + "28543316405699", + "10000000000" ], [ - "28457831873163", - "1000000000" + "31589140446842", + "1087363286" ], [ - "28476232963741", - "1000000000" + "31895311480935", + "37500000000" ], [ - "28477232963741", - "1000000000" + "33113307703346", + "1640314930" ], [ - "28861157837851", - "7671502446" + "33114948018276", + "11391726558" ], [ - "31620980803307", - "25104421" + "87847550743905", + "1470857142" ], [ - "32165371093183", - "5644256527" + "153927493640576", + "2840837091" ], [ - "33155888849890", - "522412224" + "218276915754234", + "4894741242" ], [ - "33178643999918", - "8231353455" + "656417747360113", + "150312800000" ], [ - "33253286873261", - "9664144600" + "659204039516835", + "162851173415" ], [ - "76006574486488", - "12000000000" + "664082221035166", + "109968508060" ], [ - "78617270835971", - "22778336323" + "680448990498012", + "15612748908" ], [ - "93244962831954", - "3466008022725" + "680583466401093", + "63765566607" ], [ - "860235430554267", - "12817228360" + "764084044302811", + "8432491225" ], [ - "861574350043908", - "4987547355" + "786445115477214", + "9733082256" ], [ - "861688842729623", - "6378966633" + "786465641333843", + "361176492977" ], [ - "866867341387950", - "1210047061" + "809741706356301", + "347405215111" ], [ - "883474337359063", - "55249364508" + "831150810027751", + "4961004225375" ], [ - "883752711206313", - "17679122867" + "849324103935428", + "22264686170" ], [ - "884692363137944", - "20022518305" + "860327274630651", + "64806240466" ], [ - "886956426850400", - "13791046304" - ] - ] - ], - [ - "0x43b43aA7Ea873e8d7650f64ca24BeC007D6CD920", - [ - [ - "119938474317595", - "231684492403" + "861428991246261", + "67915110484" ], [ - "197112848801207", - "191819355151" + "861519676698002", + "54673315682" ], [ - "197304668156358", - "347968913517" + "867913521988801", + "85134432163" ], [ - "634297257454226", - "8643272696" + "869671488793566", + "270561010095" ], [ - "634318197219686", - "20000000000" + "883314902543648", + "80750086384" ], [ - "634389262085325", - "5903735025" + "884197150881189", + "82735987498" ], [ - "634951612625176", - "6468282284" + "884544061894467", + "148297525258" ], [ - "635130589958365", - "59209280000" + "884712386053732", + "206866376884" ], [ - "641243528586934", - "224172731213" + "887289400595318", + "528457624315" ], [ - "643113131975195", - "4579348454" + "889130026620811", + "150451249816" ], [ - "644402952187282", - "11034160064" + "908416080789833", + "495671778827" ], [ - "644427143015560", - "10697128872" + "912103223076857", + "101489503304" ], [ - "682720800766215", - "105474278261" + "915936244419798", + "556151437225" ], [ - "759973111455038", - "190360000000" + "919459324797698", + "1874301801" ] ] ], [ - "0x4432e64624F4c64633466655de3D5132ad407343", + "0x52E03B19b1919867aC9fe7704E850287FC59d215", [ [ - "489636306256", - "76923076" + "127528827082220", + "23" ], [ - "499953138393", - "1624738693" + "273300100037798", + "21" + ] + ] + ], + [ + "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e", + [ + [ + "647535673796014", + "8956445312" ], [ - "759972749054172", - "53680953" + "649914737881786", + "1060562802" ], [ - "761858063237895", - "53575113" + "649961535629507", + "926753565" ], [ - "762840533673019", - "40875451574" + "650399504800190", + "50000000000" ], [ - "762881409124593", - "45392997396" + "664371001883072", + "100000000000" ], [ - "766112516278924", - "256869092" + "664669584727359", + "100000000000" ] ] ], [ - "0x4438767155537c3eD7696aeea2C758f9cF1DA82d", + "0x52f3F126342fca99AC76D7c8f364671C9bb3fC67", [ [ - "519636306256", - "435653558" + "28378489699267", + "3525661709" ], [ - "28061198121035", - "18536597032" + "28527337307937", + "8602703555" ], [ - "28425394212038", - "3071807226" + "682719567415141", + "1233351074" ], [ - "28859391130925", - "1549632000" - ] - ] - ], - [ - "0x44440AA675Ae3196E2614c1A9Ac897e5Cd6F8545", - [ + "794061190682938", + "105670000000" + ], + [ + "798295877222658", + "224080000000" + ], + [ + "802468945375515", + "612750000000" + ], + [ + "826629538553740", + "1000261800000" + ], + [ + "848319451171993", + "979453120800" + ], + [ + "859905651255175", + "304954128" + ], + [ + "859905956209303", + "308101440" + ], [ - "33151381475806", - "1044633475" + "859906264310743", + "159970000" ], [ - "643087290738377", - "1586716252" + "859906424280743", + "149236172" + ], + [ + "859906573516915", + "309959561" ] ] ], [ - "0x445fe76afD6f1c8292Bd232D2AA7B67f1a9da96F", + "0x532744D22891C4fccd5c4250D62894b3153667a7", [ [ - "516363563859602", - "772670414147" + "313016691552535", + "2278056516664" ] ] ], [ - "0x448a549593020696455D9b5e25e0b0fB7a71201E", + "0x533ac5848d57672399a281b65A834d88B0b2dF45", [ [ - "507995893644699", - "48468507344" - ], - [ - "529799210870675", - "13171499195" + "153772625926682", + "5169447509" ], [ - "529862978616276", - "72277031524" - ] - ] - ], - [ - "0x4497aAbaa9C178dc1525827b1690a3b8f3647457", - [ - [ - "141593397391504", - "168801655493" + "170545003992988", + "34261572899" ] ] ], [ - "0x44E836EbFEF431e57442037b819B23fd29bc3B69", + "0x533af56B4E0F3B278841748E48F61566E6C763D6", [ [ - "585452484380922", - "590804533993" - ], - [ - "634372867374605", - "167260560" + "50403384864418", + "684928780381" ], [ - "634373034635165", - "2955966531" + "55978695528887", + "98624652124" ], [ - "634384029519721", - "5232565604" + "71075218222854", + "1423422740439" ], [ - "634414601014386", - "6732679734" + "85965913553816", + "246473581350" ], [ - "634471029687631", - "1144842671" + "141984981846493", + "5305457400" ], [ - "634946964475864", - "4648149312" + "168838927569280", + "43399440000" ], [ - "644729591640166", - "792144308" + "213156661163524", + "10908799200" ], [ - "648094970693749", - "4657050598" + "395319335789415", + "10622166178" ], [ - "649184311283738", - "11312622545" + "396247819554380", + "6712778652" ], [ - "649761686809083", - "11781355408" + "396883196948187", + "9297374844" ], [ - "652479040083562", - "3951780206" + "404830849052348", + "1333600000000" ] ] ], [ - "0x44F57E6064A6dc13fdD709DE4a8dB1628c9EaceB", + "0x5355C2B0e056d032a4F11E096c235e9a59F5E6af", [ [ - "273550612806852", - "119672848374" + "408369482519053", + "28099958602" + ], + [ + "441066506534105", + "177042580917" ] ] ], [ - "0x4515957DAF1c5a1Cd2E24D000E909A0Ff6bE1975", + "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", [ [ - "257953922346879", - "78731552385" + "4962909295005", + "6537846472" ], [ - "309552368765977", - "50532033501" + "88686339837893", + "72107788456" ], [ - "638949411896201", - "2100140818" + "145481260679750", + "17152586398" ], [ - "643118187155825", - "5070971174" + "643820556165605", + "802012435" ], [ - "643811556089323", - "9000076282" + "669738634595939", + "93293333333" ], [ - "643969388479223", - "2093638974" - ] - ] - ], - [ - "0x456789ccc3813e8797c4B5C5BAB846ee4A47b0BA", - [ + "669838634595939", + "74368755714" + ], [ - "345230873758247", - "120151660091" - ] - ] - ], - [ - "0x4588a155d63CFFC23b3321b4F99E8d34128B227a", - [ + "677121804724326", + "50583045714" + ], [ - "256610609452753", - "98878990000" + "711185956536817", + "1734187672072" ] ] ], [ - "0x45E5d313030Be8E40FCeB8f03d55300DA6a8799e", + "0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0", [ [ - "300537735718283", - "9033860883" - ] - ] - ], - [ - "0x463095D9a9a5A3E6776b2Cd889B053998FC28Fb4", - [ + "109550819978942", + "29596581820" + ], [ - "767502219582512", - "1017640" + "664192189543226", + "178812339846" ] ] ], [ - "0x46387563927595f5ef11952f74DcC2Ce2E871E73", + "0x53dC93b33d63094770A623406277f3B83a265588", [ [ - "768717602283351", - "10000000" + "31610478288170", + "3033707865" ], [ - "768717622283351", - "2694500000" - ] - ] - ], - [ - "0x468325e9Ed9bbEF9e0B61F15BFfa3A349bf11719", - [ + "72528477491993", + "3333333333" + ], [ - "185586166390180", - "4605813333" - ] - ] - ], - [ - "0x46b7c8c6513818348beF33cc5638dDe99e5c9E74", - [ + "72531810825326", + "4063998521" + ], [ - "408347529988115", - "11863530938" - ] - ] - ], - [ - "0x473812413b6A8267C62aB76095463546C1F65Dc7", - [ + "88758447626349", + "20833333332" + ], [ - "767510533790684", - "852570198" + "88779280959681", + "29006615802" ], [ - "769134631191932", - "143341492" - ] - ] - ], - [ - "0x47635847a5bC731592F7EfB9a10f2461C2F5CdAb", - [ + "680936349640484", + "151308941294" + ], [ - "139632121602326", - "73702619695" - ] - ] - ], - [ - "0x4779c6a1cB190221Fc152AF4B6adB2eA5c5DBd88", - [ + "685845897019256", + "87924018978" + ], [ - "204109072732682", - "12907895307" - ] - ] - ], - [ - "0x47C2f43D7fE9604c0f9cd4F6D209648a4E8e0209", - [ + "699375941774655", + "57060000000" + ], [ - "130708317757427", - "358852500300" + "721168129970053", + "57100000000" ] ] ], [ - "0x48070111032FE753d1a72198d29b1811825A264e", + "0x540dC960E3e10304723bEC44D20F682258e705fC", [ [ - "665432395338264", - "268948474274" + "643867521442890", + "5230119599" ], [ - "668538888477323", - "173806994620" + "643941720431899", + "2570523222" ], [ - "669549803608896", - "188830987043" + "643971482118197", + "7816313681" ], [ - "671213571259037", - "238241613308" + "644041635442945", + "3961074335" ], [ - "671471895749521", - "224577013993" - ] - ] - ], - [ - "0x483CDC51a29Df38adeC82e1bb3f0AE197142a351", - [ + "644140807474986", + "474329513" + ], [ - "194902848948000", - "678300326761" + "644187073578869", + "1966296013" ], [ - "198400769373984", - "522905317827" + "644509728633115", + "5911843872" ], [ - "220690466846146", - "526712108816" + "644515640476987", + "4714730337" ], [ - "234257642043144", - "86640000000" + "644520355207324", + "4844042113" ], [ - "237033531028709", - "216100000000" + "644534799459665", + "3462430426" ], [ - "239428834403735", - "862400000000" + "644565379373403", + "2378948420" ], [ - "245143778851644", - "240081188008" + "644710856021943", + "4701268223" ], [ - "248239496710377", - "209638678922" + "646582538399546", + "4154745941" ], [ - "248611315273600", - "643500000000" + "646763711081949", + "3202908158" ], [ - "249254815273600", - "216079626755" + "648687763421959", + "19697985" ], [ - "252051631959570", - "859142789165" + "648731709846064", + "9695779077" ], [ - "252910774748735", - "1020962098385" + "664079793068081", + "2427967085" + ] + ] + ], + [ + "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d", + [ + [ + "632920635611046", + "2822717172" ], [ - "254599239282940", - "351175706375" + "634428247621337", + "5646168206" ], [ - "254950414989315", - "1019094463438" + "860392157865027", + "160" ], [ - "255969509452753", - "641100000000" + "860392157865187", + "160" ], [ - "257492898458484", - "188408991793" + "860392157865347", + "160" + ], + [ + "860392157865507", + "160" + ], + [ + "860392157865667", + "160" + ], + [ + "860392157865827", + "160" + ], + [ + "860392157865987", + "160" + ], + [ + "860392157882045", + "160" + ], + [ + "860392157882205", + "160" ] ] ], [ - "0x48493Cf5D4f5bbfe2a6a5498E1Da6aB1B00C7D39", + "0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235", [ [ - "264978511678838", - "7633129939" + "156417138708810", + "394484096414" ], [ - "311308648020422", - "23542648323" - ], + "181268415341323", + "347087625953" + ] + ] + ], + [ + "0x54CE05973cFadd3bbACf46497C08Fc6DAe156521", + [ [ - "430074784791709", - "5342881647" - ], + "150357663657575", + "3286403040" + ] + ] + ], + [ + "0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529", + [ [ - "458937267162882", - "1840684464" + "460662416079583", + "75343489480" + ] + ] + ], + [ + "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", + [ + [ + "743594952406230", + "3702219951" ], [ - "477187476187107", - "1918866314" + "744275435422955", + "7987624361" ], [ - "477189395053421", - "1926694373" + "744783236322609", + "5670211506" + ] + ] + ], + [ + "0x55179ffEFc2d49daB14BA15D25fb023408450409", + [ + [ + "28878829340297", + "26089431820" ], [ - "477191321747794", - "1925324510" + "224456428823174", + "10654918204" ], [ - "477193247072304", - "1928422141" + "224524060683299", + "8919410803" ], [ - "480549001681271", - "1936443717" + "224532980094102", + "6674611456" ], [ - "507993888424871", - "2005219828" + "232392633744281", + "6488496940" ], [ - "508044362152043", - "2021544393" + "232609461916521", + "12502396040" ], [ - "638287014203068", - "6170341451" + "249755146143756", + "4711804625" ], [ - "640681813289989", - "2884062719" + "250087971175726", + "5374122600" ], [ - "643064981952810", - "5052470551" + "511001020567237", + "58714000000" ], [ - "643862412346720", - "5109096170" + "764092476794036", + "1122048723" ], [ - "647209674578671", - "10179109779" + "766172653433120", + "8473331791" ] ] ], [ - "0x4888c0030b743c17C89A8AF875155cf75dCfd1E1", + "0x553114377d81bC47E316E238a5fE310D60a06418", [ [ - "767302481235981", - "5239462203" + "164636156534057", + "23010000000" + ] + ] + ], + [ + "0x5540D536A128F584A652aA2F82FF837BeE6f5790", + [ + [ + "201770194996450", + "17567638887" + ] + ] + ], + [ + "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", + [ + [ + "415410665069219", + "66211352029" + ] + ] + ], + [ + "0x558C4aFf233f17Ac0d25335410fAEa0453328da8", + [ + [ + "4943270442377", + "5311147809" + ] + ] + ], + [ + "0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df", + [ + [ + "726112334601716", + "9764435234" ] ] ], [ - "0x48c7e0db3DAd3FE4Eb0513b86fe5C38ebB4E0F91", + "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", [ [ - "586109598020889", - "5946000000" + "83666355470554", + "70656147044" + ], + [ + "87397034064037", + "92368586236" ] ] ], [ - "0x48Db1CF4A68FEfa5221B96A1626FE9950bd9BDF0", + "0x567dA563057BE92a42B0c14a765bFB1a3dD250be", [ [ - "262708652965979", - "892676539" + "198134260543486", + "44675770159" ] ] ], [ - "0x48e9E2F211371bD2462e44Af3d2d1aA610437f82", + "0x568092fb0aA37027a4B75CFf2492Dbe298FcE650", [ [ - "667085979405936", - "7331625468" + "322441410680368", + "320032018333" ] ] ], [ - "0x48F8738386D62948148D0483a68D692492e53904", + "0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE", [ [ - "495222864611440", - "35654060356" + "267055303304236", + "38563788377" ] ] ], [ - "0x4932Ad7cde36e2aD8724f86648dF772D0413c39E", + "0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95", [ [ - "83129576696094", - "517995825113" + "192545949837218", + "35159275827" ] ] ], [ - "0x49444e6d0b374f33c43D5d27c53d0504241B9553", + "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", [ [ - "228469619062286", - "4748040000" + "27558939982817", + "104919293460" ], [ - "264656791222470", - "47931342976" + "28704611676395", + "34985445810" ], [ - "272768921777231", - "49267287724" + "28810185690105", + "49205440820" ], [ - "311332190668745", - "92255508651" - ] - ] - ], - [ - "0x4949D9db8Af71A063971a60F918e3C63C30663d7", - [ + "60572404072549", + "16517000000" + ], [ - "41140829546546", - "132215385271" + "61001668124646", + "10999922556" ], [ - "41373044931815", - "2" + "67382995986762", + "45774437679" ], [ - "170707469808407", - "15353990995" + "67445055994809", + "29930693725" ], [ - "171091120552523", - "168884964002" + "86605154393710", + "164176600500" ], [ - "260026533868529", - "42584740555" - ] - ] - ], - [ - "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", - [ + "88448221835372", + "5000000000" + ], [ - "33227297183704", - "653834157" + "88950623419050", + "5174776280" ], [ - "212145439369214", - "1113699755" + "135558665981634", + "60968023969" ], [ - "279405653734695", - "9627840936" + "135619634005603", + "176852411011" ], [ - "320205949886679", - "5543007376" - ] - ] - ], - [ - "0x49cE991352A44f7B50AF79b89a50db6289013633", - [ + "135911624943885", + "11506814800" + ], [ - "152187983101028", - "20341364703" + "135923131758685", + "183632739945" ], [ - "152944600004612", - "25333867824" + "136106764498630", + "505635357280" ], [ - "179694459833740", - "11191996912" + "140140427866343", + "15229041840" ], [ - "189337100682911", - "32429850581" - ] - ] - ], - [ - "0x4a145964B45ad7C4b2028921aC54f1dC57aA9dA9", - [ + "153712262346661", + "12216139000" + ], [ - "323336011972704", - "240943746648" - ] - ] - ], - [ - "0x4a2D3C5B9b6dd06541cAE017F9957b0515CD65e2", - [ + "153724478485661", + "7868244366" + ], [ - "216246125608251", - "21731842340" + "180499904581500", + "18614866100" ], [ - "235278940260036", - "30572743902" + "180518519447600", + "94477416180" ], [ - "262709545642518", - "234423710407" + "185427780283324", + "113267866793" ], [ - "262943969352925", - "856400000000" + "185590772203513", + "67134250000" ], [ - "365352062863821", - "32075676524" - ] - ] - ], - [ - "0x4a4A24f4A0A71a004B55e027E37cfd4eDf684256", - [ + "185723300642827", + "45000000000" + ], [ - "339479065013191", - "22903272033" - ] - ] - ], - [ - "0x4a52078E4706884fc899b2Df902c4D2d852BF527", - [ + "190994050615925", + "156533816852" + ], [ - "764116786012760", - "434385954" - ] - ] - ], - [ - "0x4A5867445A1Fa5F394268A521720D1d4E5609413", - [ + "204121980627989", + "292114744200" + ], [ - "484489924611440", - "2578100000000" - ] - ] - ], - [ - "0x4A6c660B1EA3F599C785715CBA79d0aDfCC75521", - [ + "211474615401946", + "234173311666" + ], [ - "640452235842856", - "37062339827" - ] - ] - ], - [ - "0x4AAE8E210F814916778259840d635AA3e73A4783", - [ + "212437153941206", + "50896592466" + ], [ - "201153918156661", - "24321462040" + "212488050533672", + "36881868335" ], [ - "648113005876132", - "16950613281" - ] - ] - ], - [ - "0x4Ae4d0516cCEae76a419F9AB81eA6346Ae69Dea0", - [ + "215246589705839", + "19663672112" + ], [ - "345025969516572", - "39817721136" - ] - ] - ], - [ - "0x4B8734cDa37c4bB97Ae9e2dcFD1f6E6DB9Dc461e", - [ + "216146125608251", + "100000000000" + ], [ - "636825648638295", - "1260667121" - ] - ] - ], - [ - "0x4Bb6c4c184CcB6291408E4BF94db4495449FB24A", - [ + "218128970981269", + "85000000000" + ], [ - "344862778669736", - "9133462996" - ] - ] - ], - [ - "0x4bf44E0c856d096B755D54CA1e9CFdc0115ED2e6", - [ + "219566038129153", + "7309432177" + ], [ - "164597798526063", - "2630224719" + "223609195625824", + "23784920032" ], [ - "265994631181050", - "8090890905" + "224386670956527", + "69757866647" ], [ - "378228371871768", - "1740766894" + "224467083741378", + "56976941921" ], [ - "551460280407903", - "25275274698" + "224539654705558", + "91774095238" ], [ - "562580496802308", - "5482000000" + "229449538650748", + "40000000000" ], [ - "566627766481746", - "5482750000" + "230164010722177", + "19574398175" ], [ - "568559697082546", - "5482750000" + "230183585120352", + "79941000000" ], [ - "570295590919484", - "5482750000" + "230263526120352", + "70000000000" ], [ - "571912597289484", - "5482750000" + "232524752844281", + "84709072240" ], [ - "818727201955775", - "160270131472" - ] - ] - ], - [ - "0x4c180462A051ab67D8237EdE2c987590DF2FbbE6", - [ + "232624752844281", + "40000000000" + ], [ - "20308652197223", - "42992538368" + "235550743976314", + "89966016400" ], [ - "33128882677551", - "22434511734" + "249616082767406", + "67236052780" ], [ - "38733626244865", - "36237351724" + "249702012822236", + "33133321520" ], [ - "75851623491707", - "91376117280" + "249775146143756", + "10000000000" ], [ - "97312189544226", - "962543493539" + "249785146143756", + "235946386490" ], [ - "98274733037765", - "225761417993" + "250060921972456", + "27049203270" ], [ - "109521368209337", - "25432470215" + "250093345298326", + "16840000000" ], [ - "141107886434515", - "25140924405" + "250747526004490", + "17161170037" ], [ - "164659166534057", - "656550874126" + "258074901441630", + "7830821110" ], [ - "169398711509766", - "84912848439" + "258830805144696", + "14803898208" ], [ - "182744208013826", - "594997480373" + "264303602202615", + "9804554407" ], [ - "183339205494199", - "94951829258" + "270466945437103", + "26274622666" ], [ - "184161154400956", - "57484083188" + "300503468200478", + "34267517805" ], [ - "184684071457860", - "320813397796" + "312842343103991", + "40248448544" ], [ - "203463090125887", - "277362737859" + "322976729089818", + "26917828556" ], [ - "228695819280976", - "435400000000" + "338388026785557", + "443282416104" ], [ - "229389778185936", - "59760464812" + "376486089733614", + "3211888888" ], [ - "230333526120352", - "93482000000" + "376489301659889", + "8274303563" ], [ - "230572253367548", - "434600000000" + "376497575963452", + "18797185439" ], [ - "231006853367548", - "403315212327" + "648990230194838", + "19899717937" ], [ - "231410168579875", - "434000000000" + "657330275690372", + "153179376309" ], [ - "232256551893053", - "136081851228" + "658709788202512", + "167217199434" ], [ - "234465804378976", - "433000000000" + "659013038876321", + "33268342087" ], [ - "245678239246970", - "429600000000" + "663001818967270", + "379699841755" ], [ - "246405622268848", - "429000000000" + "664769584727359", + "98973775726" ], [ - "246834622268848", - "593165265392" + "665151735234090", + "280660104174" ], [ - "266623247476225", - "31843087062" + "668361111992693", + "103496806590" ], [ - "400533285433272", - "1327936414" + "668504381526555", + "23099271710" ], [ - "524402842691769", - "277260761697" + "669025371837989", + "82189769281" ], [ - "548030249075962", - "2737095195209" + "670213265504450", + "43650433333" ], [ - "574794879815863", - "470264676707" + "681836237267238", + "34376130558" ], [ - "576273196085064", - "475735746580" + "682519630375542", + "199937039599" ], [ - "577250185805214", - "352964012203" + "683191224341172", + "565341232663" ], [ - "577994078452897", - "428753685947" + "684408807600794", + "2150034146" ], [ - "578422832138844", - "621546025531" + "684410957634940", + "583900111083" ], [ - "579151783632625", - "511648078072" + "685282395588202", + "221013829371" + ], + [ + "685736066448290", + "109830570966" + ], + [ + "685933821038234", + "67873369400" + ], + [ + "686001694407634", + "178432547398" + ], + [ + "686180126955032", + "4714572065" + ], + [ + "699968832611949", + "68045299671" + ], + [ + "700043865765889", + "1122080009786" + ], + [ + "708854489473588", + "2331467063229" + ], + [ + "720550874525684", + "144562488635" + ], + [ + "721280717882254", + "114544305063" + ], + [ + "741445158783872", + "271967604583" + ], + [ + "741721605791225", + "533078887" + ], + [ + "742050186314922", + "151582713093" + ], + [ + "742267259580163", + "224105067098" + ], + [ + "759864406377749", + "45278692" ], [ - "599186286483471", - "300681637829" + "759972377216198", + "1594793" ], [ - "606325525196387", - "430288154881" + "759972486436407", + "34864069" ], [ - "611048146529128", - "294537267480" + "759972521300476", + "24690921" ], [ - "611342683796608", - "122585177924" + "759973028640596", + "39305197" ], [ - "622350349441157", - "423020213781" + "760196673266902", + "98401627464" ], [ - "622773369654938", - "188613792398" + "762926802121989", + "114425762" ], [ - "622976007236649", - "605799007104" + "763793608493475", + "9689035799" ], [ - "631737544692156", - "57278437068" + "764066849504423", + "17132148668" ], [ - "632737782810716", - "166637595618" + "764298360543842", + "32902204320" ], [ - "632923458328218", - "3562084461" + "766113678648016", + "58974785104" ], [ - "633174226086802", - "118340636454" + "767132401168095", + "168190067886" ], [ - "633293616127503", - "68451648885" + "828862490763473", + "1052264342541" ], [ - "633362067776388", - "696785610" + "849357802416126", + "207036916985" ], [ - "634050042239925", - "2029010620" + "868148430520173", + "107099547303" + ] + ] + ], + [ + "0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF", + [ + [ + "343678737441661", + "114019585" + ] + ] + ], + [ + "0x57068722592FeD292Aa9fdfA186A156D00A87a59", + [ + [ + "92388384975723", + "113668344638" + ] + ] + ], + [ + "0x5775b780006cBaC39aA84432BC6157E11BC5f672", + [ + [ + "325931340958674", + "25332961300" + ] + ] + ], + [ + "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", + [ + [ + "4839056178271", + "66114223251" ], [ - "634052071250545", - "1566534038" + "4969447141477", + "709218727" ], [ - "634053637784583", - "732611220" + "726122099036950", + "27741210361" + ] + ] + ], + [ + "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", + [ + [ + "786871206108027", + "177450395" + ] + ] + ], + [ + "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00", + [ + [ + "634754120308907", + "3618830978" ], [ - "634200736479427", - "4790574316" + "634821984317931", + "7385494623" + ] + ] + ], + [ + "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", + [ + [ + "33164487220396", + "11277021864" ], [ - "634205527053743", - "2600593701" + "87853421681484", + "90152601115" ], [ - "634433893789543", - "4541616170" + "191484262155819", + "9788460106" ], [ - "634444626397101", - "3241881404" + "193305911888160", + "42398880624" ], [ - "634447868278505", - "3785283994" + "209627435518367", + "42239183866" ], [ - "636303124680973", - "5741625032" + "209767630496078", + "138280774553" ], [ - "638269655222213", - "2789581992" + "217337407064629", + "26811333934" ], [ - "639434921077105", - "197428820134" + "659581106622223", + "150000000000" + ] + ] + ], + [ + "0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba", + [ + [ + "342111695751196", + "448608504781" + ] + ] + ], + [ + "0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746", + [ + [ + "195644797961898", + "2774320296" ], [ - "639687831454420", - "1841462496" + "767317356953914", + "3894794928" ], [ - "639714195158937", - "1002910636" + "767578893549534", + "4324000000" ], [ - "640275015971967", - "936457910" + "767848368968398", + "4516000000" ], [ - "641492720431748", - "6670046454" + "767885198281509", + "4525000000" + ] + ] + ], + [ + "0x58e4e9D30Da309624c785069A99709b16276B196", + [ + [ + "595179326638334", + "9510069500" + ] + ] + ], + [ + "0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9", + [ + [ + "495326332814565", + "12999411038" + ] + ] + ], + [ + "0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509", + [ + [ + "327321196340864", + "12175651681" + ] + ] + ], + [ + "0x59229eFD5206968301ed67D5b08E1C39e0179897", + [ + [ + "342943443750453", + "4560091570" ], [ - "643047432848730", - "2168510045" + "860664797310295", + "146130245088" + ] + ] + ], + [ + "0x59b9540ee2A8b2ab527a5312Ab622582b884749B", + [ + [ + "213449770801238", + "900000000" + ] + ] + ], + [ + "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", + [ + [ + "268214836546577", + "98936672471" + ] + ] + ], + [ + "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef", + [ + [ + "529636306256", + "3231807785977" ], [ - "643899647055493", - "6808576094" + "369554524035869", + "1824524280000" ], [ - "643945769210064", - "6039028984" + "508046383696436", + "2758540080000" + ] + ] + ], + [ + "0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F", + [ + [ + "506978128481636", + "138928506054" + ] + ] + ], + [ + "0x5A25455Cf1c5309FE746FD3904af00e766Eca65f", + [ + [ + "668107032501837", + "207192309402" + ] + ] + ], + [ + "0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79", + [ + [ + "328103575799830", + "1472314798598" ], [ - "644368102368333", - "5786930514" + "329599239087424", + "1929155008439" ], [ - "647162978371458", - "3462235904" + "341145726299533", + "435082846929" ], [ - "648721663311036", - "508035028" + "378591197691403", + "969373424488" ], [ - "680142146935616", - "114648436337" + "392591320788074", + "1062369645874" ], [ - "741722138870112", - "1341090085" + "544017382750618", + "105536223506" + ] + ] + ], + [ + "0x5A32038d9a3e6b7CffC28229bB214776bf50CE50", + [ + [ + "468838067240993", + "658300036400" + ] + ] + ], + [ + "0x5a34897A6c1607811Ae763350839720c02107682", + [ + [ + "768720422249176", + "56918125000" + ] + ] + ], + [ + "0x5a57107A58A0447066C376b211059352B617c3BA", + [ + [ + "579117588495464", + "2191004882" + ] + ] + ], + [ + "0x5A803cD039d7c427AD01875990f76886cC574339", + [ + [ + "242331279929909", + "1009627934604" ], [ - "744371763079127", - "20897052664" + "243539818135023", + "823622609198" + ] + ] + ], + [ + "0x5aB883168ab03c97239CEf348D5483FB2b57aFD9", + [ + [ + "319845777373781", + "86992261142" + ] + ] + ], + [ + "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", + [ + [ + "634142881550290", + "4848909225" ], [ - "744392660131791", - "12851063713" + "647192844826112", + "12287980322" ], [ - "782518705963072", - "9770439640" + "647667749599650", + "29135772559" ], [ - "810089111571412", - "50684223342" + "647819555574890", + "3934226800" ] ] ], [ - "0x4C19CB883A243D1F33a0dCdFA091bCba7Bf8e3dC", + "0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b", [ [ - "319932769634923", - "69289110000" + "575296204703363", + "831862117" ] ] ], [ - "0x4C3C27eB0C01088348132d6139F6d51FC592dDBD", + "0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725", [ [ - "310797339658113", - "5564385258" + "270493220059769", + "1070861106258" ] ] ], [ - "0x4C7b7Ba495F6Da17e3F07Ab134A9C2c79DF87507", + "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e", [ [ - "212083814524749", - "53819165244" + "87943574282599", + "14956941882" + ], + [ + "181871582186182", + "25944797737" + ], + [ + "202299298031056", + "16158945430" ] ] ], [ - "0x4Ca3E5bDf3823fEBbE18F9664cdEd14b7243971C", + "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", [ [ - "4905170401522", - "26072576416" + "76018574486488", + "10087313298" ], [ - "106839237525292", - "4821011987" + "84547875356697", + "12856872500" ], [ - "106846924633216", - "1424576250" + "86221799135166", + "2991378811" ], [ - "127568340031921", - "929795062302" + "86279752500167", + "1993398346" ], [ - "128498135094223", - "929805062302" + "164284645848934", + "77355000000" ], [ - "129427940156525", - "10000000" + "203382408914965", + "35447202880" ], [ - "190477983853123", - "31429058425" + "218213970981269", + "62944772965" ], [ - "278886678120078", - "16930293743" + "480550938124988", + "26915995911" ], [ - "315294748069199", - "4230684000" + "582542383151295", + "20467308746" ], [ - "315298978753199", - "38949316540" + "653082421968959", + "214025000000" ], [ - "672771638984332", - "58636813154" + "655813672711333", + "156683400000" ], [ - "675003539778787", - "83138632015" + "658409543724785", + "151481732090" ], [ - "679651587058721", - "17303169600" + "676839643561375", + "13229284933" ], [ - "742546489600908", - "12755718599" + "680256795371953", + "59389696996" ], [ - "744706441326176", - "26346793433" - ] - ] - ], - [ - "0x4CC19A7A359F2Ff54FF087F03B6887F436F08C11", - [ + "744358813888924", + "12949190203" + ], + [ + "764060109940964", + "6739563459" + ], + [ + "781933941888477", + "68619328543" + ], + [ + "786454848653590", + "10604585661" + ], + [ + "800170499585294", + "1303886596053" + ], + [ + "809008960598650", + "515797412273" + ], + [ + "859662074503513", + "96628816629" + ], + [ + "859758704934542", + "80698396938" + ], + [ + "860810927686506", + "25000733085" + ], [ - "148125503301315", - "613663117381" + "861600293087365", + "53711143255" ], [ - "148782143329299", - "676628312802" + "883395652630032", + "78684728679" ], [ - "152969933872436", - "202026433529" + "884314681255677", + "229380229313" ], [ - "157281617133575", - "136137390673" + "886077394374210", + "209848058617" ], [ - "160958961495278", - "49543800744" + "887111300166407", + "131847120287" ], [ - "166316667085303", - "492948149258" + "902015905173218", + "295817208073" ], [ - "167125029052537", - "433007073267" + "908911752569097", + "2098652407026" ], [ - "168960920980615", - "413035848007" + "912015746389452", + "50058887216" ], [ - "172621356097887", - "637822580221" - ] - ] - ], - [ - "0x4ceB640Af5c94eE784eeFae244245e34b48ec4f6", - [ + "916492395857023", + "451136446595" + ], [ - "75787223567174", - "8000000000" + "919403195205502", + "2028637197" ] ] ], [ - "0x4CeD6205D981bDEB8F75DAAbAfF56Cb187281315", + "0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4", [ [ - "670256915967082", - "9076923076" + "561775060168943", + "48462729763" ] ] ], [ - "0x4D038C36EfE6610F57eE84D8c0096DEbAB6dA2B1", + "0x5c0ed0a799c7025D3C9F10c561249A996502a62F", [ [ - "213167569962724", - "54975000000" + "768471843729210", + "13425961618" + ], + [ + "768485269690828", + "55862378283" + ], + [ + "768546538365412", + "16682055566" ] ] ], [ - "0x4d2010DFC88A89DD8479EEAb8e5f95B4cFfCDE45", + "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", [ [ - "147423809634512", - "309692805971" + "56102135956552", + "2287841173" ], [ - "829914755106014", - "216642349742" + "61081969998060", + "2751729452" + ], + [ + "648056768763062", + "3850108834" + ], + [ + "664471001883072", + "50493335822" ] ] ], [ - "0x4d26976EC64f11ce10325297363862669fCaAaD5", + "0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6", [ [ - "232161195486445", - "95356406608" + "561471319192178", + "6531451600" ] ] ], [ - "0x4DA9d25c0203Dc7Ce50c87Df2eb6C9068Eca256E", + "0x5C6cE0d90b085f29c089D054Ba816610a5d42371", [ [ - "220231823417551", - "8388831222" + "250867618379450", + "59395536292" ] ] ], [ - "0x4DaE7E6c0Ca196643012cDc526bBc6b445A2ca59", + "0x5c9d09716404556646B0B4567Cb4621C18581f94", [ [ - "632628975546639", - "9910714625" - ], - [ - "635426328011968", - "6512126913" - ], - [ - "767307720698184", - "2572274214" + "72555956226539", + "20000000000" ] ] ], [ - "0x4DDE0C41511d49E83ACE51c94E668828214D9C51", + "0x5D02957cF469342084e42F9f4132403Ea4c5fE01", [ [ - "31587707407402", - "1433039440" - ], - [ - "680815156134799", - "3527890346" + "767507188351307", + "3345435335" ], [ - "811172285844826", - "7130903829" + "786826869494538", + "44336089227" ] ] ], [ - "0x4E2572d9161Fc58743A4622046Ca30a1fB538670", + "0x5D177d3f4878038521936e6449C17BeCd2D10cBA", [ [ - "185541048150117", - "45118240063" + "240908580751005", + "28063592168" ] ] ], [ - "0x4E51f0a242bf6E98bE03Eb769CC5944831DcE87a", + "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", [ [ - "167695362380301", - "28977789728" - ], - [ - "171893729223786", - "47575900440" - ], - [ - "189385728874825", - "1355785855" - ], - [ - "244974269772648", - "42559348679" - ], - [ - "341968317849767", - "21768707480" + "157835643639028", + "20828898066" ] ] ], [ - "0x4e6DA2D137281CaDa5E82372849CbA8D65fC88C7", + "0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee", [ [ - "819841240087247", - "2404456000000" - ], - [ - "825748187827247", - "10000000" + "199564902491196", + "22657073802" ] ] ], [ - "0x4E7837928eD3E7AccF715da1aE86c0A0f5280DC0", + "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", [ [ - "818887472087247", - "953768000000" + "167759367131210", + "22900000000" ], [ - "822245696087247", - "1681687000000" - ] - ] - ], - [ - "0x4e864E0198739dAede35B3B1Fcb7aF8ce6DeBd79", - [ + "167888523131210", + "55944700000" + ], [ - "70430142099789", - "21671151028" + "237962196099642", + "100073216296" ], [ - "141461024306948", - "25160811724" + "310802904043371", + "14439424263" ], [ - "181615502967276", - "256079218906" + "325514674435893", + "12665494224" ], [ - "182111406992128", - "540739337424" + "326097719542277", + "39015199159" ], [ - "190604505005626", - "148971205022" + "331731353814149", + "12750000000" ], [ - "218398796232609", - "371633895678" + "394960156695542", + "13280063140" ], [ - "356006487964429", - "1968851124565" + "394973436758682", + "9294571287" ], [ - "458578467162882", - "358800000000" + "394982731329969", + "13275856475" ], [ - "562925665802308", - "496100000000" + "587176458056494", + "95701320000" ], [ - "642621542329649", - "422340000000" + "588122611316494", + "39546000000" + ], + [ + "588426431066494", + "39546000000" + ], + [ + "588730250816494", + "39546000000" ] ] ], [ - "0x4EF3324200B1f5DAB3620Ca96fa2538eA3F090C8", + "0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490", [ [ - "152096973053240", - "38570577566" - ], - [ - "168308503749870", - "17838668722" + "344363596850037", + "262152482" ], [ - "201024333624707", - "39603521290" + "643965943463481", + "3445015742" ] ] ], [ - "0x4f49D938c3Ad2437c52eb314F9bD7Bdb7FA58Da9", + "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B", [ [ - "595305161120334", - "32982900000" + "236244855469125", + "38237815837" + ], + [ + "245109370270781", + "34408580863" ] ] ], [ - "0x4fD8fEA6B3749E5bB0F90B8B3a809d344B51b17b", + "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6", [ [ - "595129885790334", - "12195297500" + "33152426109285", + "950000000" + ], + [ + "376451535261141", + "20462887750" + ], + [ + "402285929035461", + "12155421305" + ], + [ + "601721714889098", + "16779875070" + ], + [ + "634408726140467", + "5874873919" + ], + [ + "636816242727841", + "9388515625" + ], + [ + "640269368983719", + "5646988248" + ], + [ + "644531424959665", + "3374500000" ] ] ], [ - "0x4fE52118aeF6CE3916a27310019af44bbc64cc31", + "0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0", [ [ - "668527480798265", - "11407679058" + "38718513657669", + "4030014620" ] ] ], [ - "0x4Fea3B55ac16b67c279A042d10C0B7e81dE9c869", + "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", [ [ - "888282326308800", - "20896050000" + "229131219280976", + "258558904960" ], [ - "911830101743081", - "61984567762" - ] - ] - ], - [ - "0x4FF37892B9c7411Fd9d189533D3D4a2bf87f2EC6", - [ + "272277124488125", + "42383755833" + ], [ - "335865006920670", - "298975120881" + "312882591552535", + "134100000000" + ], + [ + "643668839963316", + "842769388" + ], + [ + "648155192736605", + "7110933861" + ], + [ + "650498612856813", + "471976956" ] ] ], [ - "0x5004Be84E3C40fAf175218a50779b333B7c84276", + "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2", [ [ - "106977570072731", - "28997073991" + "309775525497403", + "43672091722" ], [ - "221600570194728", - "78967589731" + "320003040403364", + "109484641436" ] ] ], [ - "0x507165FF0417126930D7F79163961DE8Ff19c8b8", + "0x5edd743E40c978590d987c74912b9424B7258677", [ [ - "299720079337431", - "61879832343" - ], - [ - "601480769346490", - "59538073434" + "221809097720471", + "4678453384" ] ] ], [ - "0x5084949C8f7bf350c646796B242010919f70898E", + "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391", [ [ - "310785629091202", - "11710566911" + "266751336572658", + "87321731643" + ], + [ + "868135118214992", + "13312303253" ] ] ], [ - "0x50b9e63661163dBAf926f5eeDAb61f9ae6c73f91", + "0x5F067841319aD19eD32c432ac69DcF32AC3a773F", [ [ - "355452879506659", - "183159970434" + "240506937851712", + "67319170048" ] ] ], [ - "0x510b301E8E4828E54ca5e5F466d8F31e5Ce83EbE", + "0x5F0f6F695FebF386AA93126237b48c424961797B", [ [ - "20300839138393", - "7813058830" - ], - [ - "56088817072755", - "1373181360" - ], - [ - "75850623491707", - "1000000000" - ], - [ - "190753476210648", - "20871314978" + "402409775526018", + "30263707163" ] ] ], [ - "0x51b2Adf97650A8D732380f2D04f5922D740122E3", + "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", [ [ - "429986874393417", - "2598292" + "187149515866713", + "4230389743" ] ] ], [ - "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", + "0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD", [ [ - "78582810315624", - "57126564" - ], - [ - "741720392463454", - "1213327771" - ], - [ - "741724318106214", - "903473746" - ], - [ - "768563220420978", - "624282480" - ], - [ - "848290002730558", - "29448441435" - ], - [ - "866984767069036", - "39504417438" + "782528476402712", + "75051323081" ] ] ], [ - "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", + "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA", [ [ - "4955860418771", - "1" + "529771946401834", + "27264468841" ], [ - "31614934747613", - "1" + "529812382369870", + "50596246406" ] ] ], [ - "0x5234e3A15a9b0F86C6E77c400dc4706A3DFC0A04", + "0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a", [ [ - "160580454568520", - "48526305109" - ], - [ - "236912893424045", - "96525595990" - ], - [ - "265652667275489", - "38978848813" - ], - [ - "265744121929071", - "75907148840" + "228358236830906", + "37513251466" ] ] ], [ - "0x52c9A7E7D265A09Db125b7369BC7487c589a7604", + "0x6040FDCa7f81540A89D39848dFC393DfE36efb92", [ [ - "78590049172294", - "25000000000" - ], - [ - "78640049172294", - "8481454530" - ], - [ - "189369530533492", - "16198341333" - ], - [ - "661983733769654", - "15472843550" + "120170158809998", + "32175706816" ] ] ], [ - "0x52d3aBa582A24eeB9c1210D83EC312487815f405", + "0x60A188efbC22bBC3aaB17084e2a0A26F85A640bC", [ [ - "28363579478364", - "1435882612" - ], - [ - "28389816079096", - "1342441520" - ], - [ - "28543316405699", - "10000000000" - ], - [ - "31589140446842", - "1087363286" - ], - [ - "31895311480935", - "37500000000" - ], - [ - "33113307703346", - "1640314930" - ], - [ - "33114948018276", - "11391726558" - ], - [ - "87847550743905", - "1470857142" - ], - [ - "153927493640576", - "2840837091" - ], - [ - "218276915754234", - "4894741242" - ], - [ - "656417747360113", - "150312800000" - ], - [ - "659204039516835", - "162851173415" - ], - [ - "664082221035166", - "109968508060" + "27810434645322", + "249268258919" ], [ - "680448990498012", - "15612748908" + "73925887383291", + "254078110756" ], [ - "680583466401093", - "63765566607" + "180671778459665", + "175568451420" ], [ - "764084044302811", - "8432491225" + "181897526983919", + "213880008209" ], [ - "786445115477214", - "9733082256" + "185004884855656", + "175801604856" ], [ - "786465641333843", - "361176492977" + "211719470709597", + "337001078730" ], [ - "809741706356301", - "347405215111" + "395329957955593", + "34024756793" ], [ - "831150810027751", - "4961004225375" + "561850511130774", + "15695221534" ], [ - "849324103935428", - "22264686170" + "562892769802308", + "32896000000" ], [ - "860327274630651", - "64806240466" + "572224872945253", + "32896500000" ], [ - "861428991246261", - "67915110484" + "579114950154306", + "2638341158" ], [ - "861519676698002", - "54673315682" + "587092346756494", + "84111300000" ], [ - "867913521988801", - "85134432163" + "603776314537146", + "3284158899" ], [ - "869671488793566", - "270561010095" + "634044404773204", + "5637466721" ], [ - "883314902543648", - "80750086384" + "634338197219686", + "28471528595" ], [ - "884197150881189", - "82735987498" + "634400137746283", + "8588394184" ], [ - "884544061894467", - "148297525258" + "634473649794302", + "7448178586" ], [ - "884712386053732", - "206866376884" + "637043244126036", + "72498841440" ], [ - "887289400595318", - "528457624315" + "643049601358775", + "4230557254" ], [ - "889130026620811", - "150451249816" + "643081736145350", + "5554593027" ], [ - "908416080789833", - "495671778827" + "643172812995983", + "131685951867" ], [ - "912103223076857", - "101489503304" + "644589920367054", + "11609907184" ], [ - "915936244419798", - "556151437225" - ], + "659543492088550", + "6350979273" + ] + ] + ], + [ + "0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9", + [ [ - "919459324797698", - "1874301801" + "611674338974532", + "34873097638" ] ] ], [ - "0x52E03B19b1919867aC9fe7704E850287FC59d215", + "0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF", [ [ - "127528827082220", - "23" - ], + "31704149901004", + "64000000000" + ] + ] + ], + [ + "0x61C562283B268F982ffa1334B643118eACF54480", + [ [ - "273300100037798", - "21" + "205756979635888", + "13720671838" ] ] ], [ - "0x52EAa3345a9b68d3b5d52DA2fD47EbFc5ed11d4e", + "0x61C95fe68834db2d1f323bb85F0590690002a06d", [ [ - "647535673796014", - "8956445312" - ], + "298766493215442", + "25000000000" + ] + ] + ], + [ + "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", + [ [ - "649914737881786", - "1060562802" + "69169795658552", + "1194000000000" ], [ - "649961535629507", - "926753565" + "350562558201369", + "1837200000000" ], [ - "650399504800190", - "50000000000" + "358055253899368", + "1873200000000" ], [ - "664371001883072", - "100000000000" + "367514336456086", + "1912200000000" ], [ - "664669584727359", - "100000000000" + "385786821567282", + "3253000000000" ] ] ], [ - "0x52f3F126342fca99AC76D7c8f364671C9bb3fC67", + "0x6223dd77dd5ED000592d7A8C745D68B2599C640D", [ [ - "28378489699267", - "3525661709" - ], + "595098019071334", + "7805953000" + ] + ] + ], + [ + "0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A", + [ [ - "28527337307937", - "8602703555" - ], + "648525331599001", + "1795068" + ] + ] + ], + [ + "0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12", + [ [ - "682719567415141", - "1233351074" + "763836703327895", + "897670384" + ] + ] + ], + [ + "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", + [ + [ + "199790557977382", + "20307567726" ], [ - "794061190682938", - "105670000000" + "203292613872621", + "44559574776" ], [ - "798295877222658", - "224080000000" + "208496431950430", + "135909962633" ], [ - "802468945375515", - "612750000000" + "222747868386967", + "432111595595" ], [ - "826629538553740", - "1000261800000" + "224182522802981", + "88646625543" ], [ - "848319451171993", - "979453120800" + "238654491458777", + "122335228001" ], [ - "859905651255175", - "304954128" + "243345979795662", + "193838339361" ], [ - "859905956209303", - "308101440" + "681329690104184", + "100824447648" ], [ - "859906264310743", - "159970000" + "766650786494524", + "466125005645" ], [ - "859906424280743", - "149236172" + "867024271662802", + "228905711977" ], [ - "859906573516915", - "309959561" + "882883404002569", + "255298540903" ] ] ], [ - "0x532744D22891C4fccd5c4250D62894b3153667a7", + "0x632f3c0548f656c8470e2882582d02602CfF821C", [ [ - "313016691552535", - "2278056516664" + "7390511503423", + "5321466970" ] ] ], [ - "0x533ac5848d57672399a281b65A834d88B0b2dF45", + "0x6343B307C288432BB9AD9003B4230B08B56b3b82", [ [ - "153772625926682", - "5169447509" + "190774347525626", + "3001979267" ], [ - "170545003992988", - "34261572899" - ] - ] - ], - [ - "0x533af56B4E0F3B278841748E48F61566E6C763D6", - [ + "227899892118673", + "9098821991" + ], [ - "50403384864418", - "684928780381" + "267222626735429", + "10019159841" ], [ - "55978695528887", - "98624652124" + "318350491352535", + "10004250325" ], [ - "71075218222854", - "1423422740439" + "338983012660405", + "10015549677" ], [ - "85965913553816", - "246473581350" + "361229466618475", + "5009439565" ], [ - "141984981846493", - "5305457400" + "400381174841304", + "3004757667" ], [ - "168838927569280", - "43399440000" + "400384179598971", + "2922196166" ], [ - "213156661163524", - "10908799200" + "408334868608585", + "1844177360" ], [ - "395319335789415", - "10622166178" + "408336712785945", + "1693453752" ], [ - "396247819554380", - "6712778652" + "547242764896211", + "10048376141" + ] + ] + ], + [ + "0x6384F5369d601992309c3102ac7670c62D33c239", + [ + [ + "86426430669928", + "93757812192" ], [ - "396883196948187", - "9297374844" + "120202334516814", + "76711875999" ], [ - "404830849052348", - "1333600000000" + "140665414631918", + "364919687105" ] ] ], [ - "0x5355C2B0e056d032a4F11E096c235e9a59F5E6af", + "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", [ [ - "408369482519053", - "28099958602" + "585447600884457", + "2534228224" ], [ - "441066506534105", - "177042580917" + "586646633174881", + "5673597364" ] ] ], [ - "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", + "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", [ [ - "4962909295005", - "6537846472" + "201178239618701", + "68900140210" ], [ - "88686339837893", - "72107788456" + "250715780766453", + "25000000000" ], [ - "145481260679750", - "17152586398" + "258249957689022", + "200370650949" ], [ - "643820556165605", - "802012435" + "258565835620739", + "183219147770" ], [ - "669738634595939", - "93293333333" + "258845609042904", + "3445725605" ], [ - "669838634595939", - "74368755714" + "637141029774703", + "5486788601" ], [ - "677121804724326", - "50583045714" + "646951101223564", + "1957663487" ], [ - "711185956536817", - "1734187672072" + "647219853688450", + "4812444606" + ], + [ + "648341533215584", + "11578312077" + ], + [ + "650128399980624", + "3108966478" ] ] ], [ - "0x53c92792E6C8Dad49568e8De3ea06888f4830Fe0", + "0x64e149a229fa88AaA2A2107359390F3b76E518AD", [ [ - "109550819978942", - "29596581820" - ], - [ - "664192189543226", - "178812339846" + "250672958372559", + "42822393894" ] ] ], [ - "0x53dC93b33d63094770A623406277f3B83a265588", + "0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287", [ [ - "31610478288170", - "3033707865" - ], - [ - "72528477491993", - "3333333333" - ], - [ - "72531810825326", - "4063998521" - ], - [ - "88758447626349", - "20833333332" - ], - [ - "88779280959681", - "29006615802" - ], - [ - "680936349640484", - "151308941294" - ], + "219577491138396", + "76644307685" + ] + ] + ], + [ + "0x6525e122975C19CE287997E9BBA41AD0738cFcE4", + [ [ - "685845897019256", - "87924018978" - ], + "408056818038549", + "78748758703" + ] + ] + ], + [ + "0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E", + [ [ - "699375941774655", - "57060000000" - ], + "28060962539990", + "233215974" + ] + ] + ], + [ + "0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8", + [ [ - "721168129970053", - "57100000000" + "408040736449697", + "6081271018" ] ] ], [ - "0x540dC960E3e10304723bEC44D20F682258e705fC", + "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a", [ [ - "643867521442890", - "5230119599" + "649773468164491", + "623800000" ], [ - "643941720431899", - "2570523222" + "650496758556813", + "1854300000" ], [ - "643971482118197", - "7816313681" + "650650384373882", + "1110960000" ], [ - "644041635442945", - "3961074335" + "650881433728485", + "3081500000" ], [ - "644140807474986", - "474329513" + "651225562512104", + "675422900" ], [ - "644187073578869", - "1966296013" + "651616768941819", + "3827342044" ], [ - "644509728633115", - "5911843872" + "651857559559538", + "1653185142" ], [ - "644515640476987", - "4714730337" + "653859484421522", + "1610442418" ], [ - "644520355207324", - "4844042113" + "654202995304304", + "1550473112" ], [ - "644534799459665", - "3462430426" - ], + "811198403550001", + "12682309008" + ] + ] + ], + [ + "0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3", + [ [ - "644565379373403", - "2378948420" + "767642883227856", + "39768883344" + ] + ] + ], + [ + "0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD", + [ + [ + "33204784130073", + "10666666666" + ] + ] + ], + [ + "0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60", + [ + [ + "245060804994381", + "1401270600" + ] + ] + ], + [ + "0x66B0115e839B954A6f6d8371DEe89dE90111C232", + [ + [ + "174758503486179", + "45" ], [ - "644710856021943", - "4701268223" + "190554003270326", + "5514286863" ], [ - "646582538399546", - "4154745941" + "190559517557189", + "891296390" ], [ - "646763711081949", - "3202908158" + "190578231407162", + "26273598464" ], [ - "648687763421959", - "19697985" + "194817411438496", + "85437509504" ], [ - "648731709846064", - "9695779077" + "201412155317743", + "29101504817" ], [ - "664079793068081", - "2427967085" - ] - ] - ], - [ - "0x54201e6A63794512a6CCbe9D4397f68B37C18D5d", - [ + "216687848171321", + "83474118399" + ], [ - "632920635611046", - "2822717172" + "237529097661776", + "81104453323" ], [ - "634428247621337", - "5646168206" + "342905708461958", + "33242114013" ], [ - "860392157865027", - "160" + "342948003842023", + "29159870308" ], [ - "860392157865187", - "160" + "355390284502004", + "62595004655" ], [ - "860392157865347", - "160" + "525442674564630", + "41624181591" ], [ - "860392157865507", - "160" + "562634470802308", + "120603000000" ], [ - "860392157865667", - "160" + "564800852312708", + "120603630000" ], [ - "860392157865827", - "160" + "566205620733477", + "120603630000" ], [ - "860392157865987", - "160" + "568866721950815", + "120603630000" ], [ - "860392157882045", - "160" + "570126495171215", + "120603630000" ], [ - "860392157882205", - "160" + "571966572157753", + "120603630000" ] ] ], [ - "0x54Af3F7c7dBb94293f94EE15dBFD819C572B9235", + "0x66D8293781eF24184aa9164878dfC0486cfa9Aac", [ [ - "156417138708810", - "394484096414" - ], - [ - "181268415341323", - "347087625953" + "343136977526193", + "2215279737" ] ] ], [ - "0x54CE05973cFadd3bbACf46497C08Fc6DAe156521", + "0x66F1089eD7D915bC7c7055d2d226487362347d39", [ [ - "150357663657575", - "3286403040" + "323154203825866", + "1110069378" ] ] ], [ - "0x54E6E97FAAE412bba0a42a8CCE362d66882Ff529", + "0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E", [ [ - "460662416079583", - "75343489480" + "84457530104959", + "209844262" ] ] ], [ - "0x54e7efC4817cEeE97b9C9a8E87d1cC6D3ec4D2E1", + "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD", [ [ - "743594952406230", - "3702219951" + "267825369582182", + "436592457" ], [ - "744275435422955", - "7987624361" + "273716745936018", + "6205732675" ], [ - "744783236322609", - "5670211506" + "315755940953422", + "929512985" ] ] ], [ - "0x55179ffEFc2d49daB14BA15D25fb023408450409", + "0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631", [ [ - "28878829340297", - "26089431820" - ], - [ - "224456428823174", - "10654918204" - ], - [ - "224524060683299", - "8919410803" - ], - [ - "224532980094102", - "6674611456" - ], - [ - "232392633744281", - "6488496940" - ], - [ - "232609461916521", - "12502396040" - ], - [ - "249755146143756", - "4711804625" + "627581126030410", + "272397265638" ], [ - "250087971175726", - "5374122600" + "779831387208671", + "1602671680567" ], [ - "511001020567237", - "58714000000" + "784127342017442", + "1392774986727" ], [ - "764092476794036", - "1122048723" + "790449527867009", + "141565176499" ], [ - "766172653433120", - "8473331791" + "869613014234285", + "58474432063" ] ] ], [ - "0x553114377d81bC47E316E238a5fE310D60a06418", + "0x676B0Add3De8d340201F3F58F486beFEDCD609cD", [ [ - "164636156534057", - "23010000000" + "506941790964613", + "36337517023" ] ] ], [ - "0x5540D536A128F584A652aA2F82FF837BeE6f5790", + "0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6", [ [ - "201770194996450", - "17567638887" + "866505232600864", + "362107628548" ] ] ], [ - "0x557ce3253eE8d0166cb65a7AB09d1C20D9B2B8C5", + "0x679AeE8b2fA079B23934A1afB2d7d48DD7244560", [ [ - "415410665069219", - "66211352029" + "648088003454438", + "6967239311" ] ] ], [ - "0x558C4aFf233f17Ac0d25335410fAEa0453328da8", + "0x679B4172E1698579d562D1d8b4774968305b80b2", [ [ - "4943270442377", - "5311147809" + "395530746048580", + "6726740160" ] ] ], [ - "0x559fb65c37ca2F546d869B6Ff03Cfb22dAfdE9Df", + "0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408", [ [ - "726112334601716", - "9764435234" + "631039934526101", + "11565611800" ] ] ], [ - "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", + "0x6820572d10F8eC5B48694294F3FCFa1A640CFf40", [ [ - "83666355470554", - "70656147044" + "229953796446901", + "10214275276" ], [ - "87397034064037", - "92368586236" + "278918417135852", + "150000000000" + ], + [ + "279078204011052", + "40213124800" ] ] ], [ - "0x567dA563057BE92a42B0c14a765bFB1a3dD250be", + "0x682864C9Bc8747c804A6137d6f0E8e087f49089e", [ [ - "198134260543486", - "44675770159" + "764116409712760", + "376300000" + ], + [ + "766112231428357", + "103950567" + ], + [ + "767877082644924", + "4494000" + ], + [ + "768720341081119", + "10972000" + ], + [ + "768720352053119", + "54860000" ] ] ], [ - "0x568092fb0aA37027a4B75CFf2492Dbe298FcE650", + "0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21", [ [ - "322441410680368", - "320032018333" + "237297173028709", + "34185829440" + ], + [ + "237610202115099", + "190472618512" + ], + [ + "257002346228995", + "490552229489" + ], + [ + "257720381137420", + "195286958683" ] ] ], [ - "0x5688aadC2C1c989BdA1086e1F0a7558Ef00c3CBE", + "0x686381d3D0162De16414A274ED5FbA9929d4B830", [ [ - "267055303304236", - "38563788377" + "344768619702251", + "55026606400" ] ] ], [ - "0x56a1472eB317d2E3f4f8d8E422e1218FE572cB95", + "0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3", [ [ - "192545949837218", - "35159275827" + "720451623201018", + "43682114862" ] ] ], [ - "0x56A201b872B50bBdEe0021ed4D1bb36359D291ED", + "0x688b3a3771011145519bd8db845d0D0739351C5D", [ [ - "27558939982817", - "104919293460" - ], - [ - "28704611676395", - "34985445810" - ], - [ - "28810185690105", - "49205440820" - ], - [ - "60572404072549", - "16517000000" - ], - [ - "61001668124646", - "10999922556" - ], - [ - "67382995986762", - "45774437679" - ], - [ - "67445055994809", - "29930693725" - ], - [ - "86605154393710", - "164176600500" - ], - [ - "88448221835372", - "5000000000" - ], - [ - "88950623419050", - "5174776280" - ], + "598166530577023", + "297938099" + ] + ] + ], + [ + "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07", + [ [ - "135558665981634", - "60968023969" + "637348332706520", + "3665297857" ], [ - "135619634005603", - "176852411011" - ], + "641239727537305", + "3801049629" + ] + ] + ], + [ + "0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe", + [ [ - "135911624943885", - "11506814800" - ], + "338993028210082", + "30086002693" + ] + ] + ], + [ + "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3", + [ [ - "135923131758685", - "183632739945" + "59447104921333", + "48580563120" ], [ - "136106764498630", - "505635357280" + "59495685484453", + "10000000" ], [ - "140140427866343", - "15229041840" + "175839043720271", + "639000700700" ], [ - "153712262346661", - "12216139000" + "326260465529391", + "17549000000" ], [ - "153724478485661", - "7868244366" + "327866927799830", + "200000000000" ], [ - "180499904581500", - "18614866100" + "458946849997346", + "1509444773173" ], [ - "180518519447600", - "94477416180" + "487104864611440", + "8118000000000" ], [ - "185427780283324", - "113267866793" + "529948130178467", + "60353499994" ], [ - "185590772203513", - "67134250000" + "540025578631290", + "1050580350517" ], [ - "185723300642827", - "45000000000" + "541230880735707", + "1053414238201" ], [ - "190994050615925", - "156533816852" + "676535948745205", + "2281535426" ], [ - "204121980627989", - "292114744200" - ], + "788056651665705", + "1423950000000" + ] + ] + ], + [ + "0x6974611c9e1437D74c07b5F031779Fb88f19923E", + [ [ - "211474615401946", - "234173311666" - ], + "808563031359360", + "138799301180" + ] + ] + ], + [ + "0x699095648BBc658450a22E90DF34BD7e168FCedB", + [ [ - "212437153941206", - "50896592466" - ], + "350526188741041", + "1867890780" + ] + ] + ], + [ + "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2", + [ [ - "212488050533672", - "36881868335" + "205856377916701", + "23473305765" ], [ - "215246589705839", - "19663672112" + "228443474467376", + "26144594910" ], [ - "216146125608251", - "100000000000" - ], + "229742216600874", + "196893643061" + ] + ] + ], + [ + "0x69e02D001146A86d4E2995F9eCf906265aA77d85", + [ [ - "218128970981269", - "85000000000" + "662653511432800", + "41531785" ], [ - "219566038129153", - "7309432177" + "740688026571943", + "293208703330" ], [ - "223609195625824", - "23784920032" + "831131397455690", + "19412572061" ], [ - "224386670956527", - "69757866647" - ], + "849564839333111", + "16363837424" + ] + ] + ], + [ + "0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B", + [ [ - "224467083741378", - "56976941921" + "156811622805224", + "6930000000" ], [ - "224539654705558", - "91774095238" + "156818552805224", + "462200000000" ], [ - "229449538650748", - "40000000000" + "430072033491709", + "1719000000" ], [ - "230164010722177", - "19574398175" - ], + "430073752491709", + "1032300000" + ] + ] + ], + [ + "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4", + [ [ - "230183585120352", - "79941000000" + "639689672916916", + "22501064889" ], [ - "230263526120352", - "70000000000" + "643650251457626", + "3358027804" ], [ - "232524752844281", - "84709072240" + "643834369008756", + "4844561817" ], [ - "232624752844281", - "40000000000" + "643839213570573", + "10208237564" ], [ - "235550743976314", - "89966016400" + "643944290955121", + "1478254943" ], [ - "249616082767406", - "67236052780" + "643953518951321", + "8390490226" ], [ - "249702012822236", - "33133321520" + "644024944088567", + "4012581233" ], [ - "249775146143756", - "10000000000" - ], + "644160211053924", + "6031653730" + ] + ] + ], + [ + "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", + [ [ - "249785146143756", - "235946386490" - ], + "767548494200642", + "1261346400" + ] + ] + ], + [ + "0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b", + [ [ - "250060921972456", - "27049203270" - ], + "650252699558669", + "893481478" + ] + ] + ], + [ + "0x6A7E0712838A0b257C20e042cf9b6C5E910F221F", + [ [ - "250093345298326", - "16840000000" - ], + "50390109547988", + "13275316430" + ] + ] + ], + [ + "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", + [ [ - "250747526004490", - "17161170037" + "32060163672752", + "28148676958" ], [ - "258074901441630", - "7830821110" + "150360950060615", + "242948254181" ], [ - "258830805144696", - "14803898208" + "160053122684606", + "20023987333" ], [ - "264303602202615", - "9804554407" + "161068340667787", + "20000000000" ], [ - "270466945437103", - "26274622666" + "342560304255977", + "333305645984" ], [ - "300503468200478", - "34267517805" + "344389113234876", + "51504000000" ], [ - "312842343103991", - "40248448544" + "344551768397376", + "66850100000" ], [ - "322976729089818", - "26917828556" + "361685681657312", + "62680000000" ], [ - "338388026785557", - "443282416104" + "363769394312766", + "102337151992" ], [ - "376486089733614", - "3211888888" + "369426536456086", + "127987579783" ], [ - "376489301659889", - "8274303563" + "378552709136790", + "38488554613" ], [ - "376497575963452", - "18797185439" + "395493517902828", + "6712331491" ], [ - "648990230194838", - "19899717937" + "396929743473580", + "66231437063" ], [ - "657330275690372", - "153179376309" + "402346745493273", + "26916949971" ], [ - "658709788202512", - "167217199434" + "530133483678461", + "281553523845" ], [ - "659013038876321", - "33268342087" + "576749818528380", + "128350847807" ], [ - "663001818967270", - "379699841755" + "595690093032834", + "42417259406" ], [ - "664769584727359", - "98973775726" + "624313265610454", + "235481948284" ], [ - "665151735234090", - "280660104174" + "630539882897389", + "5506646911" ], [ - "668361111992693", - "103496806590" + "630883526816254", + "5243434934" ], [ - "668504381526555", - "23099271710" + "634139460032971", + "3421517319" ], [ - "669025371837989", - "82189769281" + "634468058178676", + "2971508955" ], [ - "670213265504450", - "43650433333" + "634935371920999", + "4637078134" ], [ - "681836237267238", - "34376130558" + "639717387300187", + "77913000000" ], [ - "682519630375542", - "199937039599" + "640555043042177", + "126770247812" ], [ - "683191224341172", - "565341232663" + "643639272958859", + "7174635902" ], [ - "684408807600794", - "2150034146" + "646904567079253", + "9652153237" ], [ - "684410957634940", - "583900111083" + "680821347452730", + "115002187754" ], [ - "685282395588202", - "221013829371" + "681087658581778", + "242031522406" ], [ - "685736066448290", - "109830570966" + "792702109000794", + "102830000000" ], [ - "685933821038234", - "67873369400" + "828751559244596", + "110931518877" ], [ - "686001694407634", - "178432547398" - ], + "846523170952449", + "523488988207" + ] + ] + ], + [ + "0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3", + [ [ - "686180126955032", - "4714572065" - ], + "78446810994423", + "97830465871" + ] + ] + ], + [ + "0x6AB3E708231eBc450549B37f8DDF269E789ed322", + [ [ - "699968832611949", - "68045299671" + "139738901832021", + "217662351018" ], [ - "700043865765889", - "1122080009786" + "173645978954771", + "364480000000" ], [ - "708854489473588", - "2331467063229" + "177963922699291", + "567750000000" ], [ - "720550874525684", - "144562488635" + "193365582223281", + "558500000000" ], [ - "721280717882254", - "114544305063" + "198989464385361", + "323387400000" ], [ - "741445158783872", - "271967604583" + "385686708784542", + "8120000000" ], [ - "741721605791225", - "533078887" + "385698306894276", + "11608985252" ], [ - "742050186314922", - "151582713093" + "402298084456766", + "29146976013" ], [ - "742267259580163", - "224105067098" + "403324142505816", + "17337534783" ], [ - "759864406377749", - "45278692" + "525484298746221", + "68490328982" ], [ - "759972377216198", - "1594793" + "573159215088219", + "7613761316" ], [ - "759972486436407", - "34864069" + "588069376316494", + "53235000000" ], [ - "759972521300476", - "24690921" + "588373196066494", + "53235000000" ], [ - "759973028640596", - "39305197" + "588677015816494", + "53235000000" ], [ - "760196673266902", - "98401627464" + "635125146283365", + "5443675000" ], [ - "762926802121989", - "114425762" + "635372490238881", + "53837773087" ], [ - "763793608493475", - "9689035799" + "637610400582193", + "150901692840" ], [ - "764066849504423", - "17132148668" + "655777079955872", + "34680190734" ], [ - "764298360543842", - "32902204320" + "657007246656249", + "26448621220" ], [ - "766113678648016", - "58974785104" + "659046307218408", + "140966208215" ], [ - "767132401168095", - "168190067886" + "675881740999403", + "58060000000" ], [ - "828862490763473", - "1052264342541" + "676880184584605", + "81212739087" ], [ - "849357802416126", - "207036916985" + "682023052979739", + "49057997400" ], [ - "868148430520173", - "107099547303" - ] - ] - ], - [ - "0x56F6998154eBfcE37e3c5BcBdEEA1AfA0F25b0DF", - [ - [ - "343678737441661", - "114019585" - ] - ] - ], - [ - "0x57068722592FeD292Aa9fdfA186A156D00A87a59", - [ - [ - "92388384975723", - "113668344638" - ] - ] - ], - [ - "0x5775b780006cBaC39aA84432BC6157E11BC5f672", - [ - [ - "325931340958674", - "25332961300" + "744289021047316", + "8009578710" ] ] ], [ - "0x579De8E7dA10b45b43a24aC21dA8b1a3a9452D64", + "0x6ab4566Df630Be242D3CD48777aa4CA19C635f56", [ [ - "647334889222283", - "22379191354" + "339523096579827", + "66070456308" ] ] ], [ - "0x57B649E1E06FB90F4b3F04549A74619d6F56802e", + "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43", [ [ - "4839056178271", - "66114223251" - ], - [ - "4969447141477", - "709218727" + "67339711337633", + "38964529411" ], [ - "726122099036950", - "27741210361" + "826344351400868", + "285187152872" ] ] ], [ - "0x5853eD4f26A3fceA565b3FBC698bb19cdF6DEB85", + "0x6B7F8019390Aa85b4A8679f963295D568098Cf51", [ [ - "786871206108027", - "177450395" + "4970156360204", + "42435663718" ] ] ], [ - "0x5882aa5d97391Af0889dd4d16C3194e96A7Abe00", + "0x6b87460Ce18951D31A7175cAbE2f3fc449E54256", [ [ - "634754120308907", - "3618830978" + "298986493215464", + "38084213662" ], [ - "634821984317931", - "7385494623" + "341689788844501", + "46789171777" ] ] ], [ - "0x589b9549Dd7158f75BA43D8fCD25eFebb55F823F", + "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", [ [ - "33164487220396", - "11277021864" - ], - [ - "87853421681484", - "90152601115" - ], - [ - "191484262155819", - "9788460106" - ], - [ - "193305911888160", - "42398880624" - ], - [ - "209627435518367", - "42239183866" + "33151317189285", + "64286521" ], [ - "209767630496078", - "138280774553" + "576748931831644", + "886696736" ], [ - "217337407064629", - "26811333934" + "585450135112681", + "2349268241" ], [ - "659581106622223", - "150000000000" + "634472174530302", + "1475264000" ] ] ], [ - "0x58adF440dB094bDaD8c588Ad2f606F4C3464A4ba", + "0x6bDd8c55a23D432D34c276A87584b8A96C03717F", [ [ - "342111695751196", - "448608504781" + "52187916983200", + "19763851047" + ], + [ + "52207680834247", + "19747984525" ] ] ], [ - "0x58D9A499AC82D74b08b3Cb76E69d8f32e1395746", + "0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d", [ [ - "195644797961898", - "2774320296" - ], - [ - "767317356953914", - "3894794928" - ], - [ - "767578893549534", - "4324000000" - ], - [ - "767848368968398", - "4516000000" - ], - [ - "767885198281509", - "4525000000" + "861503972645416", + "15704000000" ] ] ], [ - "0x58e4e9D30Da309624c785069A99709b16276B196", + "0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F", [ [ - "595179326638334", - "9510069500" + "273007832358728", + "21" ] ] ], [ - "0x58fb0ecfb2d2b40ba4e826023f981aa36945aaf9", + "0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd", [ [ - "495326332814565", - "12999411038" + "631710479555794", + "27065136362" ] ] ], [ - "0x591f0E55fa6dc26737cDC550aA033FA5B1DC7509", + "0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09", [ [ - "327321196340864", - "12175651681" + "187326232141980", + "250596023597" ] ] ], [ - "0x59229eFD5206968301ed67D5b08E1C39e0179897", + "0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB", [ [ - "342943443750453", - "4560091570" + "326049910381783", + "22789160494" ], [ - "860664797310295", - "146130245088" - ] - ] - ], - [ - "0x59b9540ee2A8b2ab527a5312Ab622582b884749B", - [ + "340180819742396", + "88167423404" + ], [ - "213449770801238", - "900000000" + "635083372725365", + "41773558000" + ], + [ + "635350828552881", + "21661686000" ] ] ], [ - "0x59Cea9C7245276c06062d2fe3F79EE21fC70b53c", + "0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3", [ [ - "268214836546577", - "98936672471" + "195647572282194", + "827187570265" ] ] ], [ - "0x59D2324CFE0718Bac3842809173136Ea2d5912Ef", + "0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27", [ [ - "529636306256", - "3231807785977" + "535108406138660", + "1084177233275" ], [ - "369554524035869", - "1824524280000" + "536192583371935", + "1688110786406" ], [ - "508046383696436", - "2758540080000" - ] - ] - ], - [ - "0x59D8F21eA46a96d52a4eec72D2B2e7C2bEd0995F", - [ + "537880694158341", + "1727536772397" + ], [ - "506978128481636", - "138928506054" + "542568043607639", + "1438806398621" ] ] ], [ - "0x59dC1eaE22eEbD6CfbD144ee4b6f4048F8A59880", + "0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190", [ [ - "267569815164874", - "20246736273" - ] - ] - ], - [ - "0x5A25455Cf1c5309FE746FD3904af00e766Eca65f", - [ + "228441190352276", + "2284115100" + ], [ - "668107032501837", - "207192309402" + "264360680476760", + "16145852467" ] ] ], [ - "0x5a28b03C7fC7D1B51E72B1f9DF28A539173CAF79", + "0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674", [ [ - "328103575799830", - "1472314798598" - ], - [ - "329599239087424", - "1929155008439" - ], - [ - "341145726299533", - "435082846929" - ], - [ - "378591197691403", - "969373424488" + "769310460222539", + "1300464490557" ], [ - "392591320788074", - "1062369645874" + "771140309190191", + "3056591031171" ], [ - "544017382750618", - "105536223506" + "774579618067014", + "4504970931573" ] ] ], [ - "0x5A32038d9a3e6b7CffC28229bB214776bf50CE50", + "0x6D4ed8a1599DEe2655D51B245f786293E03d58f7", [ [ - "468838067240993", - "658300036400" + "768780574044414", + "4739952359" ] ] ], [ - "0x5a34897A6c1607811Ae763350839720c02107682", + "0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968", [ [ - "768720422249176", - "56918125000" + "273349081469206", + "22041535128" ] ] ], [ - "0x5a57107A58A0447066C376b211059352B617c3BA", + "0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06", [ [ - "579117588495464", - "2191004882" + "837305979426084", + "1501381879417" ] ] ], [ - "0x5A803cD039d7c427AD01875990f76886cC574339", + "0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B", [ [ - "242331279929909", - "1009627934604" - ], - [ - "243539818135023", - "823622609198" + "770929992347971", + "34510450293" ] ] ], [ - "0x5aB883168ab03c97239CEf348D5483FB2b57aFD9", + "0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10", [ [ - "319845777373781", - "86992261142" + "397022450164102", + "50261655503" ] ] ], [ - "0x5AcB8339D7b364dafa46746C1DB2e13BafCEAa87", + "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D", [ [ - "634142881550290", - "4848909225" + "805211526908643", + "72305318668" ], [ - "647192844826112", - "12287980322" + "883628500845473", + "82518671123" ], [ - "647667749599650", - "29135772559" + "911959750190927", + "55938224595" ], [ - "647819555574890", - "3934226800" + "919283383995914", + "76438100488" ] ] ], [ - "0x5aCbAA0Be2D2757c8B00a3A8399CD4A4565e300b", + "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E", [ [ - "575296204703363", - "831862117" + "565689461995977", + "151830000000" + ], + [ + "567495253157146", + "101220000000" + ], + [ + "567596473157146", + "101220000000" + ], + [ + "571005615479484", + "101220000000" + ], + [ + "571106835479484", + "101220000000" ] ] ], [ - "0x5AdCa33aFC3D57C1193Cc83D562aBFE523412725", + "0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4", [ [ - "270493220059769", - "1070861106258" + "324867132703136", + "44584623736" ] ] ], [ - "0x5b38C0fFd431500EBa7c8a7932FF4892F7edA64e", + "0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C", [ [ - "87943574282599", - "14956941882" - ], - [ - "181871582186182", - "25944797737" - ], - [ - "202299298031056", - "16158945430" + "636757155365094", + "22691440968" ] ] ], [ - "0x5b45b0A5C1e3D570282bDdfe01B0465c1b332430", + "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9", [ [ - "76018574486488", - "10087313298" - ], - [ - "84547875356697", - "12856872500" - ], - [ - "86221799135166", - "2991378811" - ], - [ - "86279752500167", - "1993398346" - ], - [ - "164284645848934", - "77355000000" + "199564902491192", + "4" ], [ - "203382408914965", - "35447202880" + "344839373651771", + "479115910" ], [ - "218213970981269", - "62944772965" + "641506736028021", + "2916178314" ], [ - "480550938124988", - "26915995911" + "641509652206335", + "2749595885" ], [ - "582542383151295", - "20467308746" + "643096514658419", + "5194777863" ], [ - "653082421968959", - "214025000000" + "643101709436282", + "4222978151" ], [ - "655813672711333", - "156683400000" + "643633701423724", + "5571535135" ], [ - "658409543724785", - "151481732090" + "643798096101417", + "3171247947" ], [ - "676839643561375", - "13229284933" + "643890241268202", + "4934195535" ], [ - "680256795371953", - "59389696996" + "643895175463737", + "4471591756" ], [ - "744358813888924", - "12949190203" + "644123990666901", + "8655423354" ], [ - "764060109940964", - "6739563459" + "644290308134813", + "6411168248" ], [ - "781933941888477", - "68619328543" + "644388265508089", + "8012158467" ], [ - "786454848653590", - "10604585661" + "644422095342082", + "5047673478" ], [ - "800170499585294", - "1303886596053" + "644442516225274", + "5546831538" ], [ - "809008960598650", - "515797412273" + "646729515149835", + "2514524429" ], [ - "859662074503513", - "96628816629" + "648197602149037", + "2827660397" ], [ - "859758704934542", - "80698396938" - ], + "648807271975686", + "17620350" + ] + ] + ], + [ + "0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4", + [ [ - "860810927686506", - "25000733085" - ], + "376299347730245", + "25727586841" + ] + ] + ], + [ + "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", + [ [ - "861600293087365", - "53711143255" + "635536095356615", + "1027219504" ], [ - "883395652630032", - "78684728679" + "635987453662106", + "880116472" ], [ - "884314681255677", - "229380229313" + "641512401802220", + "5493342645" ], [ - "886077394374210", - "209848058617" + "644555830955508", + "2808417895" ], [ - "887111300166407", - "131847120287" + "646749582249400", + "903060349" ], [ - "902015905173218", - "295817208073" + "646766913990107", + "1939941186" ], [ - "908911752569097", - "2098652407026" + "646945916373621", + "3045363522" ], [ - "912015746389452", - "50058887216" + "767125477756875", + "1001496834" ], [ - "916492395857023", - "451136446595" + "767300591235981", + "1890000000" ], [ - "919403195205502", - "2028637197" + "767972799745643", + "4444320090" ] ] ], [ - "0x5b8C24B5Fe50cf3A3bDDa9b9954F751788eb50E4", + "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", [ [ - "561775060168943", - "48462729763" + "403467977485669", + "4265691158" ] ] ], [ - "0x5c0ed0a799c7025D3C9F10c561249A996502a62F", + "0x6fBDc235B6f55755BE1c0B554469633108E60608", [ [ - "768471843729210", - "13425961618" - ], - [ - "768485269690828", - "55862378283" - ], - [ - "768546538365412", - "16682055566" + "191901677757094", + "262000796007" ] ] ], [ - "0x5c62FaB7897Ec68EcE66A64D7faDf5F0E139B1E7", + "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54", [ [ - "56102135956552", - "2287841173" - ], - [ - "61081969998060", - "2751729452" - ], - [ - "648056768763062", - "3850108834" + "331756528135803", + "61934486285" ], [ - "664471001883072", - "50493335822" + "408321036814023", + "6779928792" ] ] ], [ - "0x5c666Cb946c856238FE949c78Acb7fF2010f5eE6", + "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B", [ [ - "561471319192178", - "6531451600" - ] - ] - ], - [ - "0x5C6cE0d90b085f29c089D054Ba816610a5d42371", - [ + "420441198802", + "387146704" + ], [ - "250867618379450", - "59395536292" + "767889723281779", + "68608459317" ] ] ], [ - "0x5c9d09716404556646B0B4567Cb4621C18581f94", + "0x702aA86601aBc776bEA3A8241688085125D75AE2", [ [ - "72555956226539", - "20000000000" - ] - ] - ], - [ - "0x5D177d3f4878038521936e6449C17BeCd2D10cBA", - [ + "109497928877661", + "23439331676" + ], [ - "240908580751005", - "28063592168" - ] - ] - ], - [ - "0x5D9e54E3d89109Cf1953DE36A3E00e33420b94Be", - [ + "205879851222466", + "33943660000" + ], [ - "157835643639028", - "20828898066" + "506165499383895", + "3604981492" + ], + [ + "506169104365387", + "7211374244" + ], + [ + "542284294973908", + "10000615500" ] ] ], [ - "0x5d9f8ecA4a1d3eEB7B78002EF0D2Bb53ADF259ee", + "0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b", [ [ - "199564902491196", - "22657073802" + "385225630461615", + "15974580090" ] ] ], [ - "0x5dd28BD033C86e96365c2EC6d382d857751D8e00", + "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", [ [ - "167759367131210", - "22900000000" + "157553403132001", + "19294351466" ], [ - "167888523131210", - "55944700000" + "644387467914405", + "797593684" ], [ - "237962196099642", - "100073216296" + "648282232925391", + "5285515919" ], [ - "310802904043371", - "14439424263" + "649313442399124", + "18516226556" ], [ - "325514674435893", - "12665494224" - ], + "672632693625732", + "17500007580" + ] + ] + ], + [ + "0x70a9c497536E98F2DbB7C66911700fe2b2550900", + [ [ - "326097719542277", - "39015199159" + "643856074680084", + "518323846" ], [ - "331731353814149", - "12750000000" + "644234859479000", + "279246690" ], [ - "394960156695542", - "13280063140" + "644246226623579", + "197641438" ], [ - "394973436758682", - "9294571287" + "644255862272829", + "274579086" ], [ - "394982731329969", - "13275856475" + "644318860467072", + "289371263" ], [ - "587176458056494", - "95701320000" + "644344232569703", + "1080267604" ], [ - "588122611316494", - "39546000000" + "644350860239846", + "2255393372" ], [ - "588426431066494", - "39546000000" + "644353115633218", + "4452414623" ], [ - "588730250816494", - "39546000000" - ] - ] - ], - [ - "0x5dd948342E1243F8ee672a9a22EF1f6E5eC6F490", - [ + "677491281789418", + "2857142857" + ], [ - "344363596850037", - "262152482" + "681685922435654", + "25111379095" ], [ - "643965943463481", - "3445015742" + "917061939949695", + "32052786097" ] ] ], [ - "0x5E5fd9683f4010A6508eb53f46F718dba8B3AD5B", + "0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793", [ [ - "236244855469125", - "38237815837" - ], - [ - "245109370270781", - "34408580863" + "340164692018203", + "16127724193" ] ] ], [ - "0x5e93941A8f3Aede7788188b6CB8092b6e57d02A6", + "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", [ [ - "33152426109285", - "950000000" - ], - [ - "376451535261141", - "20462887750" + "33152426109281", + "4" ], [ - "402285929035461", - "12155421305" + "41333271497978", + "668874033" ], [ - "601721714889098", - "16779875070" + "41370284961658", + "2693066940" ], [ - "634408726140467", - "5874873919" + "88857695552777", + "1354378846" ], [ - "636816242727841", - "9388515625" + "647760366592966", + "25920905560" ], [ - "640269368983719", - "5646988248" + "648612566573043", + "33" ], [ - "644531424959665", - "3374500000" - ] - ] - ], - [ - "0x5Ea861872592804FF69847Dd73Eef2BD01A0dde0", - [ - [ - "38718513657669", - "4030014620" - ] - ] - ], - [ - "0x5EBfAaa6E3A87a9404f4Cf95A239b5bECbFfabB2", - [ - [ - "229131219280976", - "258558904960" + "648651086279479", + "22959268" ], [ - "272277124488125", - "42383755833" + "649184309005289", + "2278449" ], [ - "312882591552535", - "134100000000" + "649236453132845", + "19324702" ], [ - "643668839963316", - "842769388" + "649284881951220", + "48009418" ], [ - "648155192736605", - "7110933861" + "649682081565764", + "649539942" ], [ - "650498612856813", - "471976956" - ] - ] - ], - [ - "0x5EDC436170ecC4B1F0Bc1aa001c5D8F501EDB6b2", - [ - [ - "309775525497403", - "43672091722" + "649693481105706", + "448369312" ], [ - "320003040403364", - "109484641436" - ] - ] - ], - [ - "0x5edd743E40c978590d987c74912b9424B7258677", - [ + "649874764673718", + "2584832868" + ], [ - "221809097720471", - "4678453384" - ] - ] - ], - [ - "0x5EdF82a73e12bcA1518eA40867326fdDc01b4391", - [ + "739098370599205", + "19781032784" + ], [ - "266751336572658", - "87321731643" + "741941794536593", + "7498568832" ], [ - "868135118214992", - "13312303253" + "760171881624417", + "11891246578" ] ] ], [ - "0x5F067841319aD19eD32c432ac69DcF32AC3a773F", + "0x70c65accB3806917e0965C08A4a7D6c72F17651A", [ [ - "240506937851712", - "67319170048" + "767503070574842", + "4117776465" ] ] ], [ - "0x5F0f6F695FebF386AA93126237b48c424961797B", + "0x70F11dbD21809EbCd4C6604581103506A6a8443A", [ [ - "402409775526018", - "30263707163" + "324855687987034", + "11444716102" ] ] ], [ - "0x5fB8BC92A53722d5f59E8E0602084707Ac314B2C", + "0x7125B7C60Ec85F9aD33742D9362f6161d403EC92", [ [ - "187149515866713", - "4230389743" + "185793383994705", + "206785636228" ] ] ], [ - "0x600Dc52156585A7F18DbF1D9004cCE3Dc94627fD", + "0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22", [ [ - "782528476402712", - "75051323081" + "324806023022229", + "28234479163" + ], + [ + "397009213772846", + "13236391256" ] ] ], [ - "0x603898D099a3E16976E98595Fb9c47D1fa43FaeA", + "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", [ [ - "529771946401834", - "27264468841" + "59495695484453", + "504171940643" ], [ - "529812382369870", - "50596246406" - ] - ] - ], - [ - "0x6039675c6D83B0B26F647AE3d33F7C34B8Ea945a", - [ + "124490727082220", + "3038100000000" + ], [ - "228358236830906", - "37513251466" + "129427950156525", + "467400000000" + ], + [ + "202960513872621", + "332100000000" ] ] ], [ - "0x6040FDCa7f81540A89D39848dFC393DfE36efb92", + "0x7193b82899461a6aC45B528d48d74355F54E7F56", [ [ - "120170158809998", - "32175706816" + "409573727889316", + "100323000000" + ], + [ + "655166761861127", + "1629422984" + ], + [ + "679990486184882", + "101083948638" ] ] ], [ - "0x60A188efbC22bBC3aaB17084e2a0A26F85A640bC", + "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8", [ [ - "27810434645322", - "249268258919" - ], - [ - "73925887383291", - "254078110756" + "43977781538372", + "960392727042" ], [ - "180671778459665", - "175568451420" + "53415449139505", + "560000421094" ], [ - "181897526983919", - "213880008209" + "84043081856785", + "88783500000" ], [ - "185004884855656", - "175801604856" + "87737275673292", + "29174580000" ], [ - "211719470709597", - "337001078730" + "121055292369428", + "595350750000" ], [ - "395329957955593", - "34024756793" + "153930334477670", + "722113163135" ], [ - "561850511130774", - "15695221534" + "337103989850712", + "208640000000" ], [ - "562892769802308", - "32896000000" + "390858944448074", + "1732376340000" ], [ - "572224872945253", - "32896500000" + "425808292285395", + "1709471220000" ], [ - "579114950154306", - "2638341158" - ], + "747250339620613", + "1065835841221" + ] + ] + ], + [ + "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", + [ [ - "587092346756494", - "84111300000" + "312728908697529", + "60865019612" ], [ - "603776314537146", - "3284158899" + "396254532333032", + "26041274600" ], [ - "634044404773204", - "5637466721" + "517161961415705", + "28582806091" ], [ - "634338197219686", - "28471528595" + "525552789075203", + "119322721243" ], [ - "634400137746283", - "8588394184" + "547526923635099", + "70107880058" ], [ - "634473649794302", - "7448178586" + "561477850643778", + "198991954538" ], [ - "637043244126036", - "72498841440" + "562816854802308", + "75915000000" ], [ - "643049601358775", - "4230557254" + "564663155155208", + "75915000000" ], [ - "643081736145350", - "5554593027" + "566032344745977", + "75915000000" ], [ - "643172812995983", - "131685951867" + "569084686568315", + "75915000000" ], [ - "644589920367054", - "11609907184" + "572148957945253", + "75915000000" ], [ - "659543492088550", - "6350979273" + "672617693625732", + "15000000000" ] ] ], [ - "0x60Ac0b2f9760b24CcD0C6b03d2b9f2E19c283FF9", + "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", [ [ - "611674338974532", - "34873097638" + "258749054768509", + "81750376187" + ], + [ + "767116911500169", + "5542244064" ] ] ], [ - "0x619f2B95BFF359889b18359Ccf8Ff34790cc50fF", + "0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246", [ [ - "31704149901004", - "64000000000" + "495339332225603", + "10275174620" ] ] ], [ - "0x61C562283B268F982ffa1334B643118eACF54480", + "0x726C46B3E0d605ea8821712bD09686354175D448", [ [ - "205756979635888", - "13720671838" + "42578680325272", + "921515463464" + ], + [ + "308307791521525", + "1085880660191" ] ] ], [ - "0x61C95fe68834db2d1f323bb85F0590690002a06d", + "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2", [ [ - "298766493215442", - "25000000000" + "90975474968757", + "37830812302" + ], + [ + "185768300642827", + "25083351878" + ], + [ + "189669106071687", + "31883191886" + ], + [ + "199587559564998", + "35132497379" + ], + [ + "274439437731803", + "42917709597" + ], + [ + "331649739813903", + "61822486683" ] ] ], [ - "0x61e413DE4a40B8d03ca2f18026980e885ae2b345", + "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4", [ [ - "69169795658552", - "1194000000000" + "311021852055993", + "57433012261" ], [ - "350562558201369", - "1837200000000" + "311424446177396", + "1090720348401" ], [ - "358055253899368", - "1873200000000" + "315467930213071", + "136678730685" ], [ - "367514336456086", - "1912200000000" + "315662245991020", + "93694962402" ], [ - "385786821567282", - "3253000000000" + "393653690433948", + "40057990877" ] ] ], [ - "0x6223dd77dd5ED000592d7A8C745D68B2599C640D", + "0x72e864CF239cD6ce0116b78F9e1299A5948beD9A", [ [ - "595098019071334", - "7805953000" + "27196243734508", + "362696248309" ] ] ], [ - "0x627b1Bc25f2738040845266bf5e3A5D8a838bA4A", + "0x7310E238f2260ff111a941059B023B3eBCF2D54e", [ [ - "648525331599001", - "1795068" + "174098989199832", + "54763564665" + ], + [ + "190777349504893", + "37329428702" ] ] ], [ - "0x62A8fA898f6f58A0c59f67B0c2684849dE68bF12", + "0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14", [ [ - "763836703327895", - "897670384" + "340591459615016", + "116979885122" ] ] ], [ - "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", + "0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3", [ [ - "199790557977382", - "20307567726" - ], - [ - "203292613872621", - "44559574776" - ], - [ - "208496431950430", - "135909962633" - ], + "324758511737508", + "15676768579" + ] + ] + ], + [ + "0x73c09f642C4252f02a7a22801b5555f4f2b7B955", + [ [ - "222747868386967", - "432111595595" - ], + "595188836707834", + "12745012500" + ] + ] + ], + [ + "0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C", + [ [ - "224182522802981", - "88646625543" - ], + "157548809336026", + "4593795975" + ] + ] + ], + [ + "0x74231623D8058Afc0a62f919742e15Af0fb299e5", + [ [ - "238654491458777", - "122335228001" + "31883651774507", + "11659706427" ], [ - "243345979795662", - "193838339361" + "90940749954930", + "34725013824" ], [ - "681329690104184", - "100824447648" - ], + "235813231354853", + "30400392115" + ] + ] + ], + [ + "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347", + [ [ - "766650786494524", - "466125005645" + "272818189064955", + "165298148930" ], [ - "867024271662802", - "228905711977" + "278416305316531", + "240278890901" ], [ - "882883404002569", - "255298540903" + "299226867063944", + "69420000075" ] ] ], [ - "0x632f3c0548f656c8470e2882582d02602CfF821C", + "0x74382a61e2e053353BECBC71a45adD91c0C21347", [ [ - "7390511503423", - "5321466970" + "401546143727842", + "693694620220" ] ] ], [ - "0x6343B307C288432BB9AD9003B4230B08B56b3b82", + "0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6", [ [ - "190774347525626", - "3001979267" - ], - [ - "227899892118673", - "9098821991" - ], - [ - "267222626735429", - "10019159841" - ], + "601970356868999", + "4000480096" + ] + ] + ], + [ + "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", + [ [ - "318350491352535", - "10004250325" + "664669553141209", + "31586150" ], [ - "338983012660405", - "10015549677" + "669913003351653", + "173562047" ], [ - "361229466618475", - "5009439565" + "677766736232113", + "15476640" ], [ - "400381174841304", - "3004757667" - ], + "677766751708753", + "56970000" + ] + ] + ], + [ + "0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E", + [ [ - "400384179598971", - "2922196166" + "234344282043144", + "19712324157" ], [ - "408334868608585", - "1844177360" + "235154344754292", + "94410708993" ], [ - "408336712785945", - "1693453752" + "236283093284962", + "59063283900" ], [ - "547242764896211", - "10048376141" + "239409804111193", + "19030292542" ] ] ], [ - "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", + "0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362", [ [ - "429076381887304", - "39624686375" - ], - [ - "841660754217816", - "4019358849" + "402899271425864", + "33691850736" ] ] ], [ - "0x6384F5369d601992309c3102ac7670c62D33c239", + "0x74E096E78789F31061Fc47F6950279A55C03288c", [ [ - "86426430669928", - "93757812192" - ], - [ - "120202334516814", - "76711875999" + "680559945017520", + "366462731" ], [ - "140665414631918", - "364919687105" + "680818684025145", + "2663427585" ] ] ], [ - "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", + "0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81", [ [ - "585447600884457", - "2534228224" - ], - [ - "586646633174881", - "5673597364" + "227523128809396", + "273973101221" ] ] ], [ - "0x648fA93EA7f1820EF9291c3879B2E3C503e1AA61", + "0x7568614a27117EeEB6E06022D74540c3C5749B84", [ [ - "201178239618701", - "68900140210" + "209623483887840", + "1224386800" ], [ - "250715780766453", - "25000000000" + "312789773717141", + "7267067960" ], [ - "258249957689022", - "200370650949" + "344841846701641", + "2000000000" ], [ - "258565835620739", - "183219147770" + "646984807026252", + "6479854471" ], [ - "258845609042904", - "3445725605" - ], + "652726940100667", + "16139084611" + ] + ] + ], + [ + "0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3", + [ [ - "637141029774703", - "5486788601" + "362938922277631", + "76367829600" + ] + ] + ], + [ + "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515", + [ + [ + "75760702250033", + "8000000000" ], [ - "646951101223564", - "1957663487" + "143366130662199", + "10948490796" + ] + ] + ], + [ + "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", + [ + [ + "175146200354223", + "75138116495" ], [ - "647219853688450", - "4812444606" - ], + "187621160594244", + "16717595903" + ] + ] + ], + [ + "0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000", + [ [ - "648341533215584", - "11578312077" + "12684514908217", + "106416284126" + ] + ] + ], + [ + "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921", + [ + [ + "31614934747614", + "6046055693" ], [ - "650128399980624", - "3108966478" + "573520471044196", + "83338470769" ] ] ], [ - "0x64e149a229fa88AaA2A2107359390F3b76E518AD", + "0x76A63B4ffb5E4d342371e312eBe62078760E8589", [ [ - "250672958372559", - "42822393894" + "582285563910121", + "4410560000" ] ] ], [ - "0x651afE5D50d1cD8F7D891dd6bc2a3Db4A14E5287", + "0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc", [ [ - "219577491138396", - "76644307685" + "640275952429877", + "258412979" ] ] ], [ - "0x6525e122975C19CE287997E9BBA41AD0738cFcE4", + "0x76ce7A233804C5f662897bBfc469212d28D11613", [ [ - "408056818038549", - "78748758703" + "432591748956398", + "124843530190" ] ] ], [ - "0x652877AbA8812f976345FEf9ED3dd1Ab23268d5E", + "0x775B04CC1495447048313ddf868075f41F3bf3bB", [ [ - "28060962539990", - "233215974" + "323031012826145", + "49257554759" ] ] ], [ - "0x65B787b79aE9C0ba60d011A7D4519423c12F4dc8", + "0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B", [ [ - "408040736449697", - "6081271018" + "274388266066105", + "11429408683" ] ] ], [ - "0x65cd9979bEecad572A6081FB3EC9fa47Fca2427a", + "0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D", [ [ - "649773468164491", - "623800000" - ], - [ - "650496758556813", - "1854300000" - ], + "487068024611440", + "36840000000" + ] + ] + ], + [ + "0x77f2cC48fD7dD11211A64650938a0B4004eBe72b", + [ [ - "650650384373882", - "1110960000" - ], + "792668647859111", + "33461141683" + ] + ] + ], + [ + "0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5", + [ [ - "650881433728485", - "3081500000" + "603779598696045", + "571460608752" ], [ - "651225562512104", - "675422900" + "604351059304797", + "342600000000" ], [ - "651616768941819", - "3827342044" + "606755813351268", + "201835314760" ], [ - "651857559559538", - "1653185142" + "606957648666028", + "690100000000" ], [ - "653859484421522", - "1610442418" + "626836023224058", + "72923998967" ], [ - "654202995304304", - "1550473112" + "626908947223025", + "318351804364" ], [ - "811198403550001", - "12682309008" + "627227299027389", + "320953676893" ] ] ], [ - "0x65D0006B86BE8eb468eC7Dd73446E97D14eA1Fc3", + "0x78320e6082f9E831DD3057272F553e143dFe5b9c", [ [ - "767642883227856", - "39768883344" + "490546315924", + "61632407" ] ] ], [ - "0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22", + "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e", [ [ - "326213533536434", - "11833992957" - ] - ] - ], - [ - "0x6691fB80b87b89e3Ea3E7C9a4b19FDB2d75c6aaD", - [ + "496345360673944", + "488241871617" + ], [ - "33204784130073", - "10666666666" + "523278607555107", + "149423611243" + ], + [ + "531225747951270", + "311109277563" ] ] ], [ - "0x669E4aCd20Aa30ABA80483fc8B82aeD626e60B60", + "0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E", [ [ - "245060804994381", - "1401270600" + "87063919996383", + "31956558401" ] ] ], [ - "0x66B0115e839B954A6f6d8371DEe89dE90111C232", + "0x7893b13e58310cDAC183E5bA95774405CE373f83", [ [ - "174758503486179", - "45" + "648503987692687", + "6104653206" ], [ - "190554003270326", - "5514286863" + "648537251303200", + "11543" ], [ - "190559517557189", - "891296390" + "648537251314743", + "322894" ], [ - "190578231407162", - "26273598464" + "648651109238747", + "6969544474" ], [ - "194817411438496", - "85437509504" + "648658078783221", + "1319829324" ], [ - "201412155317743", - "29101504817" + "648687783119944", + "8278400000" ], [ - "216687848171321", - "83474118399" + "648696061519944", + "7004800000" ], [ - "237529097661776", - "81104453323" + "648716573711036", + "5089600000" ], [ - "342905708461958", - "33242114013" + "648722171346064", + "9538500000" ], [ - "342948003842023", - "29159870308" + "648931504537814", + "23555040000" ], [ - "355390284502004", - "62595004655" + "648955059577814", + "4875640000" ], [ - "525442674564630", - "41624181591" + "648959935217814", + "15070160000" ], [ - "562634470802308", - "120603000000" + "649010795462125", + "16447600000" ], [ - "564800852312708", - "120603630000" + "649027726170457", + "17894090000" ], [ - "566205620733477", - "120603630000" + "649046499968065", + "22636340000" ], [ - "568866721950815", - "120603630000" + "649069136308065", + "18328000000" ], [ - "570126495171215", - "120603630000" + "649100844933065", + "18319300000" ], [ - "571966572157753", - "120603630000" + "649119164233065", + "11365200000" + ], + [ + "649143422600101", + "11990900000" + ], + [ + "649284929960638", + "2827800000" + ], + [ + "649287827400680", + "15081600000" + ], + [ + "649398940602242", + "32614400000" + ], + [ + "649431555002242", + "33988820000" + ], + [ + "649573935073567", + "26412980000" + ], + [ + "649600986009465", + "17274840000" + ], + [ + "649618260849465", + "20654700000" + ], + [ + "649668950265764", + "13131300000" + ], + [ + "649832683807170", + "20804860000" + ], + [ + "649915798444588", + "18046700000" + ], + [ + "649933845144588", + "6658610000" + ], + [ + "649940503754588", + "4642174919" + ], + [ + "649962462383072", + "34628690000" + ], + [ + "651485759158523", + "135322" + ], + [ + "661338230306152", + "218560408342" + ], + [ + "808845120725088", + "163839873562" + ], + [ + "811211085859009", + "1285117945279" + ], + [ + "812496203804288", + "1246029256854" + ], + [ + "857581197479570", + "1634493779706" ] ] ], [ - "0x66D8293781eF24184aa9164878dfC0486cfa9Aac", + "0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50", [ [ - "343136977526193", - "2215279737" + "20360646192758", + "4967300995" + ], + [ + "859890207337852", + "11474760241" ] ] ], [ - "0x66F1089eD7D915bC7c7055d2d226487362347d39", + "0x78A0A1F1E055c4ceeBb658AdF0c4954ae925e944", [ [ - "323154203825866", - "1110069378" + "892341437280727", + "145860654491" + ], + [ + "892487297935218", + "3029212937100" ] ] ], [ - "0x66fA22aEfb2cF14c1fA45725c36C2542521C0d3E", + "0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21", [ [ - "84457530104959", - "209844262" + "409808938067549", + "84226188785" ] ] ], [ - "0x671ec816F329ddc7c78137522Ea52e6FBC8decCD", + "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54", [ [ - "267825369582182", - "436592457" + "227908990940664", + "435600000000" ], [ - "273716745936018", - "6205732675" - ], + "228474367102286", + "221452178690" + ] + ] + ], + [ + "0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c", + [ [ - "315755940953422", - "929512985" + "385257800041705", + "316578014158" ] ] ], [ - "0x67520b8c1d0869b0A8AdEf6F345Fd45B8f333631", + "0x7A1184786066077022F671957299A685b2850BD6", [ [ - "627581126030410", - "272397265638" + "635943922934682", + "525079813" ], [ - "779831387208671", - "1602671680567" - ], + "635988333778578", + "8627689764" + ] + ] + ], + [ + "0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b", + [ [ - "784127342017442", - "1392774986727" + "631796137362390", + "1440836515" + ] + ] + ], + [ + "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E", + [ + [ + "322952053290841", + "24675798977" ], [ - "790449527867009", - "141565176499" + "340056236725906", + "53380000000" ], [ - "869613014234285", - "58474432063" + "340109616725906", + "53380000000" ] ] ], [ - "0x676B0Add3De8d340201F3F58F486beFEDCD609cD", + "0x7A63D7813039000e52Be63299D1302F1e03C7a6A", [ [ - "506941790964613", - "36337517023" + "340313280922433", + "9750291736" ] ] ], [ - "0x676E288Fb3eB22376727Ddca3F01E96d9084D8F6", + "0x7A6530B0970397414192A8F86c91d1e1f870a5A6", [ [ - "866505232600864", - "362107628548" + "109585986971037", + "15454078646" + ], + [ + "644132646090255", + "8161384731" ] ] ], [ - "0x679AeE8b2fA079B23934A1afB2d7d48DD7244560", + "0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2", [ [ - "648088003454438", - "6967239311" + "681870613397796", + "211456338" + ], + [ + "681870824854134", + "205872420" + ], + [ + "681991801335911", + "19315015127" + ], + [ + "683756565573835", + "8759919160" ] ] ], [ - "0x679B4172E1698579d562D1d8b4774968305b80b2", + "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", [ [ - "395530746048580", - "6726740160" + "624665309966700", + "41439894685" ] ] ], [ - "0x67a8b97af47b6E582f472bBc9b49B03E4b0cd408", + "0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48", [ [ - "631039934526101", - "11565611800" + "319694369767515", + "36673342106" ] ] ], [ - "0x6820572d10F8eC5B48694294F3FCFa1A640CFf40", + "0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD", [ [ - "229953796446901", - "10214275276" - ], - [ - "278918417135852", - "150000000000" - ], - [ - "279078204011052", - "40213124800" + "264752557419462", + "8605989205" ] ] ], [ - "0x682864C9Bc8747c804A6137d6f0E8e087f49089e", + "0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E", [ [ - "764116409712760", - "376300000" - ], - [ - "766112231428357", - "103950567" - ], + "644746452171666", + "213353964" + ] + ] + ], + [ + "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + [ [ - "767877082644924", - "4494000" + "738175767886792", + "725867793824" ], [ - "768720341081119", - "10972000" + "739166585934609", + "997011405679" ], [ - "768720352053119", - "54860000" + "740163597340288", + "280746545970" ] ] ], [ - "0x682a4c54F9c9cE3a66700AE6f3b67f5984D85C21", + "0x7B2d2934868077d5E938EfE238De65E0830Cf186", [ [ - "237297173028709", - "34185829440" - ], - [ - "237610202115099", - "190472618512" - ], + "53975449560599", + "629903012456" + ] + ] + ], + [ + "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4", + [ [ - "257002346228995", - "490552229489" + "174459809952308", + "281091996530" ], [ - "257720381137420", - "195286958683" + "311079285068254", + "225639161016" ] ] ], [ - "0x686381d3D0162De16414A274ED5FbA9929d4B830", + "0x7bB955249d6f57345726569EA7131E2910CA9C0D", [ [ - "344768619702251", - "55026606400" + "277940142360555", + "98218175816" + ], + [ + "603576947611080", + "199366926066" + ], + [ + "604978961867797", + "45804202500" + ], + [ + "605358509270297", + "85487500000" + ], + [ + "605777739970297", + "85487500000" ] ] ], [ - "0x687f2E6baf351CA45594Fc8A06c72FD1CC6c06F3", + "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc", [ [ - "720451623201018", - "43682114862" + "672373244407056", + "22359930276" + ], + [ + "673932629258168", + "57490196078" ] ] ], [ - "0x688b3a3771011145519bd8db845d0D0739351C5D", + "0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0", [ [ - "598166530577023", - "297938099" + "175144400293594", + "1800060629" ] ] ], [ - "0x689d3d8f1083f789F70F1bC3C6f25726CD9aad07", + "0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F", [ [ - "637348332706520", - "3665297857" - ], - [ - "641239727537305", - "3801049629" + "337947415831374", + "1256098598" ] ] ], [ - "0x68C0b2aC21baBDAFbC42A837b2A259e21b825cDe", + "0x7c12222e79e1a2552CaF92ce8dA063e188a7234F", [ [ - "338993028210082", - "30086002693" + "327333371992545", + "151078425653" ] ] ], [ - "0x68ca44eD5d5Df216D10B14c13D18395a9151224a", + "0x7C28205352AD687348578f9cB2AB04DE1DcaA040", [ [ - "327022674019051", - "298522321813" + "107456319203211", + "248840212420" ] ] ], [ - "0x69189ED08D083Dd2807fb3be7f4F0fD8Fd988cC3", + "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F", [ [ - "59447104921333", - "48580563120" + "148739166418696", + "42976910603" ], [ - "59495685484453", - "10000000" + "149458771642101", + "17768345687" ], [ - "175839043720271", - "639000700700" + "150072245775067", + "101280926262" ], [ - "326260465529391", - "17549000000" - ], + "199700241341159", + "90316636223" + ] + ] + ], + [ + "0x7c9551322a2e259830A7357e436107565EA79205", + [ [ - "327866927799830", - "200000000000" + "209578881176990", + "44602710850" ], [ - "458946849997346", - "1509444773173" + "273679685585512", + "20502770382" ], [ - "487104864611440", - "8118000000000" + "430048399348994", + "21915642715" ], [ - "529948130178467", - "60353499994" + "564169770917708", + "253050000000" ], [ - "540025578631290", - "1050580350517" + "581983286394610", + "114580000000" ], [ - "541230880735707", - "1053414238201" - ], + "650979810428062", + "126027343719" + ] + ] + ], + [ + "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3", + [ [ - "676535948745205", - "2281535426" + "227166312100795", + "90992725291" ], [ - "788056651665705", - "1423950000000" + "229554049269178", + "188167331696" ] ] ], [ - "0x6974611c9e1437D74c07b5F031779Fb88f19923E", + "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16", [ [ - "808563031359360", - "138799301180" + "33126339744841", + "2542932710" + ], + [ + "647796025649944", + "2276035252" ] ] ], [ - "0x699095648BBc658450a22E90DF34BD7e168FCedB", + "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", [ [ - "350526188741041", - "1867890780" + "551487055682601", + "1270108409" ] ] ], [ - "0x69B971A22dbf469f94B34Bdbad9cd863bdd222a2", + "0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0", [ [ - "205856377916701", - "23473305765" - ], - [ - "228443474467376", - "26144594910" + "517136234273749", + "25727141956" ], [ - "229742216600874", - "196893643061" + "575297036565480", + "37469832650" ] ] ], [ - "0x69e02D001146A86d4E2995F9eCf906265aA77d85", + "0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb", [ [ - "662653511432800", - "41531785" - ], - [ - "740688026571943", - "293208703330" - ], - [ - "831131397455690", - "19412572061" - ], - [ - "849564839333111", - "16363837424" + "264289719394296", + "13882808319" ] ] ], [ - "0x6a12c8594c5C850d57612CA58810ABb8aeBbC04B", + "0x7D6261b4F9e117964210A8EE3a741499679438a0", [ [ - "156811622805224", - "6930000000" - ], - [ - "156818552805224", - "462200000000" - ], - [ - "430072033491709", - "1719000000" - ], - [ - "430073752491709", - "1032300000" + "193924082223281", + "212363516752" ] ] ], [ - "0x6a51C6d4Eaa88A5F05A920CF92a1C976250711B4", + "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", [ [ - "639689672916916", - "22501064889" - ], - [ - "643650251457626", - "3358027804" + "41331690648396", + "1580849582" ], [ - "643834369008756", - "4844561817" + "41333940372011", + "1537628217" ], [ - "643839213570573", - "10208237564" + "647755311699262", + "5054893704" ], [ - "643944290955121", - "1478254943" + "648155116928042", + "75808563" ], [ - "643953518951321", - "8390490226" + "656120433075312", + "50144887945" ], [ - "644024944088567", - "4012581233" + "656895275442629", + "48622222222" ], [ - "644160211053924", - "6031653730" + "660026375198031", + "42190522575" ] ] ], [ - "0x6A6d11cE4cCf2d43e61B7Db1918768c5FDC14559", + "0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af", [ [ - "767548494200642", - "1261346400" + "320112525044800", + "79896782500" ] ] ], [ - "0x6a78E13f5d20cb584Be28Fc31EAdB66dE499a60b", + "0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20", [ [ - "650252699558669", - "893481478" + "219573347561330", + "3194476000" ] ] ], [ - "0x6A7E0712838A0b257C20e042cf9b6C5E910F221F", + "0x7eaF877B409740afa24226D4A448c980896Be795", [ [ - "50390109547988", - "13275316430" + "609292089920626", + "20074904153" ] ] ], [ - "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", + "0x7eFaC69750cc933e7830829474F86149A7DD8e35", [ [ - "32060163672752", - "28148676958" - ], - [ - "150360950060615", - "242948254181" - ], - [ - "160053122684606", - "20023987333" - ], - [ - "161068340667787", - "20000000000" - ], - [ - "342560304255977", - "333305645984" - ], - [ - "344389113234876", - "51504000000" - ], - [ - "344551768397376", - "66850100000" - ], - [ - "361685681657312", - "62680000000" - ], - [ - "363769394312766", - "102337151992" - ], - [ - "369426536456086", - "127987579783" - ], - [ - "378552709136790", - "38488554613" - ], - [ - "395493517902828", - "6712331491" - ], - [ - "396929743473580", - "66231437063" - ], - [ - "402346745493273", - "26916949971" - ], - [ - "530133483678461", - "281553523845" - ], - [ - "576749818528380", - "128350847807" - ], - [ - "595690093032834", - "42417259406" - ], - [ - "624313265610454", - "235481948284" - ], - [ - "630539882897389", - "5506646911" - ], - [ - "630883526816254", - "5243434934" - ], - [ - "634139460032971", - "3421517319" - ], - [ - "634468058178676", - "2971508955" - ], - [ - "634935371920999", - "4637078134" - ], - [ - "639717387300187", - "77913000000" - ], - [ - "640555043042177", - "126770247812" - ], - [ - "643639272958859", - "7174635902" - ], - [ - "646904567079253", - "9652153237" - ], - [ - "680821347452730", - "115002187754" - ], - [ - "681087658581778", - "242031522406" - ], - [ - "792702109000794", - "102830000000" + "200844770244188", + "1000000" ], [ - "828751559244596", - "110931518877" + "200844771244188", + "179562380519" ], [ - "846523170952449", - "523488988207" + "210870560056118", + "293011632289" ] ] ], [ - "0x6ab075abfA7cdD7B19FA83663b1f2a83e4A957e3", + "0x7F82e84C2021a311131e894ceFf475047deD4673", [ [ - "78446810994423", - "97830465871" + "623581806243753", + "62496053737" ] ] ], [ - "0x6AB3E708231eBc450549B37f8DDF269E789ed322", + "0x7Fe78b37A3F8168Cd60C6860d176D22b81181555", [ [ - "139738901832021", - "217662351018" - ], - [ - "173645978954771", - "364480000000" - ], - [ - "177963922699291", - "567750000000" - ], - [ - "193365582223281", - "558500000000" - ], - [ - "198989464385361", - "323387400000" - ], - [ - "385686708784542", - "8120000000" - ], - [ - "385698306894276", - "11608985252" - ], - [ - "402298084456766", - "29146976013" - ], + "783115581867489", + "232497931186" + ] + ] + ], + [ + "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70", + [ [ - "403324142505816", - "17337534783" + "20300839138392", + "1" ], [ - "525484298746221", - "68490328982" + "141104093757416", + "2326237721" ], [ - "573159215088219", - "7613761316" + "141106419995137", + "1466439378" ], [ - "588069376316494", - "53235000000" + "157543059307151", + "3855741975" ], [ - "588373196066494", - "53235000000" - ], + "633362764561998", + "8976176800" + ] + ] + ], + [ + "0x80077CB3B35A6c30DC354469f63e0743eeff32D4", + [ [ - "588677015816494", - "53235000000" - ], + "417435849352728", + "4099200000000" + ] + ] + ], + [ + "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5", + [ [ - "635125146283365", - "5443675000" + "41340350884137", + "5263157894" ], [ - "635372490238881", - "53837773087" + "213307234626330", + "12500000000" ], [ - "637610400582193", - "150901692840" + "380613889185508", + "10461930383" ], [ - "655777079955872", - "34680190734" + "385650953907930", + "16235000000" ], [ - "657007246656249", - "26448621220" + "646795333940977", + "6300493418" ], [ - "659046307218408", - "140966208215" + "646842090324499", + "6350838475" ], [ - "675881740999403", - "58060000000" + "648299147129728", + "14576284733" ], [ - "676880184584605", - "81212739087" + "648377421210050", + "13030510108" ], [ - "682023052979739", - "49057997400" + "653297909699401", + "24458875511" ], [ - "744289021047316", - "8009578710" - ] - ] - ], - [ - "0x6ab4566Df630Be242D3CD48777aa4CA19C635f56", - [ - [ - "339523096579827", - "66070456308" - ] - ] - ], - [ - "0x6Ac3BDBB58D671f81563998dd9ca561d527E5F43", - [ - [ - "67339711337633", - "38964529411" + "653479984577629", + "119019649033" ], [ - "826344351400868", - "285187152872" - ] - ] - ], - [ - "0x6B7F8019390Aa85b4A8679f963295D568098Cf51", - [ - [ - "4970156360204", - "42435663718" + "662024206613204", + "79777206742" ] ] ], [ - "0x6b87460Ce18951D31A7175cAbE2f3fc449E54256", + "0x804Be57907807794D4982Bf60F8b86e9010A1639", [ [ - "298986493215464", - "38084213662" + "76424701653538", + "94753388776" ], [ - "341689788844501", - "46789171777" + "84731726100795", + "91448859303" ] ] ], [ - "0x6b99A6c6081068AA46a420FDB6CFbE906320Fa2D", + "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81", [ [ - "33151317189285", - "64286521" - ], - [ - "576748931831644", - "886696736" - ], - [ - "585450135112681", - "2349268241" + "74179965494047", + "25544672634" ], [ - "634472174530302", - "1475264000" + "166225090295346", + "87221043559" ] ] ], [ - "0x6bDd8c55a23D432D34c276A87584b8A96C03717F", + "0x80771B6DC16d2c8C291e84C8f6D820150567534C", [ [ - "52187916983200", - "19763851047" + "213457800486791", + "14257446361" ], [ - "52207680834247", - "19747984525" + "213472057933152", + "186730161037" ] ] ], [ - "0x6bf3dA4c5E343d9eF47B36548A67Ffb0B63CA74d", + "0x80915E89Ffe836216866d16Ec4F693053f205179", [ [ - "861503972645416", - "15704000000" + "599110873255821", + "6253532657" ] ] ], [ - "0x6bfAAF06C7828c34148B8d75e0BA22e4F832869F", + "0x80a2527A444C4f2b57a247191cDF1308c9EB210D", [ [ - "273007832358728", - "21" + "767511386944346", + "37106473488" ] ] ], [ - "0x6c76EDcD9B067F6867aea819b0B4103fF93779Fd", + "0x81696d556eeCDc42bED7C3b53b027de923cC5038", [ [ - "631710479555794", - "27065136362" + "319731043109621", + "14925453141" + ], + [ + "402373662443244", + "36113082774" ] ] ], [ - "0x6C8513a6C51C5F83C4E4DC53E0fabA45112c0E09", + "0x81704Bce89289F64a4295134791848AaCd975311", [ [ - "187326232141980", - "250596023597" + "644073460766211", + "46712134" + ], + [ + "644187073578836", + "33" ] ] ], [ - "0x6CA5b974aa4b7B08Ae62699b6CB2a5b8A52c4CdB", + "0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19", [ [ - "326049910381783", - "22789160494" - ], - [ - "340180819742396", - "88167423404" - ], - [ - "635083372725365", - "41773558000" - ], - [ - "635350828552881", - "21661686000" + "237009419020035", + "24112008674" ] ] ], [ - "0x6CC9b3940EB6d94cad1A25c437d9bE966Af821E3", + "0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b", [ [ - "195647572282194", - "827187570265" + "591001814503012", + "551376150000" ] ] ], [ - "0x6cE2381Df220609Fa80346E8c5CffF88bA0D6D27", + "0x81d8363845F96f94858Fac44A521117DADBfD837", [ [ - "535108406138660", - "1084177233275" - ], - [ - "536192583371935", - "1688110786406" - ], - [ - "537880694158341", - "1727536772397" - ], - [ - "542568043607639", - "1438806398621" + "332432233728809", + "324629738694" ] ] ], [ - "0x6d26C4f242971eaCCe5Dc1EAEd77a76F5705B190", + "0x81eee01e854EC8b498543d9C2586e6aDCa3E2006", [ [ - "228441190352276", - "2284115100" + "267836734902245", + "198456386297" ], [ - "264360680476760", - "16145852467" + "273007832358749", + "292267679049" ] ] ], [ - "0x6D2F46Eb9dcbDe2CE41E590b9aDF92C77B43E674", + "0x81F3C0A3115e4F115075eE079A48717c7dfdA800", [ [ - "769310460222539", - "1300464490557" - ], - [ - "771140309190191", - "3056591031171" + "85005128802664", + "17746542257" ], [ - "774579618067014", - "4504970931573" + "138205055379551", + "21229490022" ] ] ], [ - "0x6D4ed8a1599DEe2655D51B245f786293E03d58f7", + "0x821bb6973FdA779183d22C9891f566B2e59C8230", [ [ - "768780574044414", - "4739952359" + "218770430128287", + "11235751123" ] ] ], [ - "0x6D7e07990c35dEAC0cEb1104e4dC9301FE6b9968", + "0x8264EA7b0b15a7AD9339F06666D7E339129C9482", [ [ - "273349081469206", - "22041535128" + "321485895691147", + "32021232234" ] ] ], [ - "0x6d8Db35bC58c9cC930B0a65282e96C69d9715E06", + "0x829Ceb00fC74bD087b1e50d31ec628a90894cD52", [ [ - "837305979426084", - "1501381879417" + "323285415668114", + "50596304590" + ], + [ + "355313179311575", + "62470363029" + ], + [ + "367287703769008", + "64080321723" ] ] ], [ - "0x6dB2A4B208d03Ca20BC800D42e7f42ec1e54a86B", + "0x82a8409a264ea933405f5Fe0c4011c3327626D9B", [ [ - "770929992347971", - "34510450293" + "870103302085771", + "48730138326" ] ] ], [ - "0x6De028f0d58933C3c8d24A4c2f58eDD6D44DFE10", + "0x82CFf592c2D9238f05E0007F240c81990f17F764", [ [ - "397022450164102", - "50261655503" + "273671446460892", + "8239124620" ] ] ], [ - "0x6DFffF3149b626148C79ca36D97fe0219CB66a6D", + "0x82F402847051BDdAAb0f5D4b481417281837c424", [ [ - "805211526908643", - "72305318668" + "33153376109285", + "2512740605" ], [ - "883628500845473", - "82518671123" + "215241439378309", + "5150327530" ], [ - "911959750190927", - "55938224595" + "326072699542277", + "25020000000" ], [ - "919283383995914", - "76438100488" + "335847619702697", + "10121780000" ] ] ], [ - "0x6E4f97af46F4F9fc2C863567a2429f3BfA034c7E", + "0x82Ff15f5de70250a96FC07a0E831D3e391e47c48", [ [ - "565689461995977", - "151830000000" - ], - [ - "567495253157146", - "101220000000" - ], - [ - "567596473157146", - "101220000000" - ], - [ - "571005615479484", - "101220000000" - ], - [ - "571106835479484", - "101220000000" + "767984775426960", + "4440000000" ] ] ], [ - "0x6e59973B7A5Bc7221311f0511C57ecc09b7a54B4", + "0x8325D26d08DaBf644582D2a8da311D94DBD02A97", [ [ - "324867132703136", - "44584623736" + "153701253487878", + "11008858783" + ], + [ + "232621964312561", + "2641422510" ] ] ], [ - "0x6eBDbCAcfFDA2F78Be2B66395EE852DBF104E83C", + "0x832fBA673d712fd5bC698a3326073D6674e57DF5", [ [ - "636757155365094", - "22691440968" + "217540873751726", + "22996141953" + ], + [ + "265592792884462", + "23842558596" ] ] ], [ - "0x6F11CE836E5aD2117D69Aaa9295f172F554EA4C9", + "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751", [ [ - "199564902491192", - "4" + "581907954037154", + "1000000" ], [ - "344839373651771", - "479115910" + "581907955037154", + "9999000000" ], [ - "641506736028021", - "2916178314" + "665701343812558", + "272195102173" ], [ - "641509652206335", - "2749595885" + "669333969414822", + "215834194074" ], [ - "643096514658419", - "5194777863" + "677431627790689", + "31545276943" ], [ - "643101709436282", - "4222978151" + "678914917868431", + "570100000000" ], [ - "643633701423724", - "5571535135" + "759972802735125", + "63916929" ], [ - "643798096101417", - "3171247947" + "759972866652054", + "34919933" ], [ - "643890241268202", - "4934195535" + "759972901571987", + "44762503" ], [ - "643895175463737", - "4471591756" + "759972946334490", + "26506" ], [ - "644123990666901", - "8655423354" + "759972946360996", + "54603" ], [ - "644290308134813", - "6411168248" + "759972946415599", + "45639837" ], [ - "644388265508089", - "8012158467" + "759972992055436", + "36372829" ], [ - "644422095342082", - "5047673478" + "759973028428265", + "212331" ], [ - "644442516225274", - "5546831538" + "760183772870995", + "237950000" ], [ - "646729515149835", - "2514524429" + "760353370932416", + "640797" ], [ - "648197602149037", - "2827660397" + "761858118071390", + "18166203" ], [ - "648807271975686", - "17620350" - ] - ] - ], - [ - "0x6f65D11A3ce2dCA3b9AEb72e2aE8607b6F4e43f4", - [ + "761858136237593", + "33655130" + ], [ - "376299347730245", - "25727586841" - ] - ] - ], - [ - "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", - [ + "761858169892723", + "41246561" + ], [ - "635536095356615", - "1027219504" + "761858264676918", + "27291992" ], [ - "635987453662106", - "880116472" + "761860246451109", + "40407888" ], [ - "641512401802220", - "5493342645" + "761860286858997", + "20624528" ], [ - "644555830955508", - "2808417895" + "761861105640928", + "38655387" ], [ - "646749582249400", - "903060349" + "761861144296315", + "8965138" ], [ - "646766913990107", - "1939941186" + "762295499061705", + "29510736" ], [ - "646945916373621", - "3045363522" + "762295528572441", + "31584894" ], [ - "767125477756875", - "1001496834" + "762295560157335", + "35342" ], [ - "767300591235981", - "1890000000" + "762295560192677", + "19821585" ], [ - "767972799745643", - "4444320090" - ] - ] - ], - [ - "0x6fbc6481358BF5F0AF4b187fa5318245Ce5a6906", - [ + "762940981941034", + "21214050" + ], [ - "403467977485669", - "4265691158" - ] - ] - ], - [ - "0x6fBDc235B6f55755BE1c0B554469633108E60608", - [ + "763876944550921", + "126220" + ], [ - "191901677757094", - "262000796007" - ] - ] - ], - [ - "0x6Fe19A805dE17B43E971f1f0F6bA695968b2bF54", - [ + "763876944677141", + "2145664" + ], [ - "331756528135803", - "61934486285" + "763877071172496", + "18553917" ], [ - "408321036814023", - "6779928792" - ] - ] - ], - [ - "0x7003d82D2A6F07F07Fc0D140e39ebb464024C91B", - [ + "763877559163775", + "2178159" + ], [ - "420441198802", - "387146704" + "763898472187152", + "34733796" ], [ - "767889723281779", - "68608459317" - ] - ] - ], - [ - "0x702aA86601aBc776bEA3A8241688085125D75AE2", - [ + "763898517945378", + "2604448" + ], [ - "109497928877661", - "23439331676" + "763904514777740", + "12880451" ], [ - "205879851222466", - "33943660000" + "763904527658191", + "8645673" ], [ - "506165499383895", - "3604981492" + "763904536303864", + "5775330" ], [ - "506169104365387", - "7211374244" + "763904542079194", + "8086438" ], [ - "542284294973908", - "10000615500" - ] - ] - ], - [ - "0x703BacAbCC0F1729A92B33b98C3D53BCF022A51b", - [ + "763904550165632", + "8189602" + ], [ - "385225630461615", - "15974580090" - ] - ] - ], - [ - "0x706cf4Cc963e13fF6aDD75d3475dA00A27C8a565", - [ + "763904558355234", + "9042724" + ], [ - "157553403132001", - "19294351466" + "763904567397958", + "9831655" ], [ - "644387467914405", - "797593684" + "763904577229613", + "27363324" ], [ - "648282232925391", - "5285515919" + "763908619462613", + "12836178" ], [ - "649313442399124", - "18516226556" + "763910556401834", + "11888964" ], [ - "672632693625732", - "17500007580" - ] - ] - ], - [ - "0x70a9c497536E98F2DbB7C66911700fe2b2550900", - [ + "763910568290798", + "12803633" + ], [ - "643856074680084", - "518323846" + "763910581094431", + "5385691" ], [ - "644234859479000", - "279246690" + "763910586480122", + "8796762" + ], + [ + "763976063428196", + "9117332" + ], + [ + "763976234474836", + "4457574" + ], + [ + "763976357160622", + "7294661" ], [ - "644246226623579", - "197641438" + "763976364455283", + "7550783" ], [ - "644255862272829", - "274579086" + "763976372006066", + "7917327" ], [ - "644318860467072", - "289371263" + "763976379923393", + "8299132" ], [ - "644344232569703", - "1080267604" + "763977688578348", + "7313583" ], [ - "644350860239846", - "2255393372" + "763977695891931", + "8256505" ], [ - "644353115633218", - "4452414623" + "763977704148436", + "8272223" ], [ - "677491281789418", - "2857142857" + "763977712420659", + "8438801" ], [ - "681685922435654", - "25111379095" + "763977720859460", + "1226665" ], [ - "917061939949695", - "32052786097" - ] - ] - ], - [ - "0x70b1bCB7244fEDCaEa2C36dc939dA3a6f86aF793", - [ - [ - "340164692018203", - "16127724193" - ] - ] - ], - [ - "0x70C61c13CcEF8c8a7E74933DfB037aae0C2bEa31", - [ + "763977722086125", + "8329771" + ], [ - "33152426109281", - "4" + "763977730415896", + "9430332" ], [ - "41333271497978", - "668874033" + "763977739846228", + "9446755" ], [ - "41370284961658", - "2693066940" + "763977749292983", + "9551578" ], [ - "88857695552777", - "1354378846" + "763977758844561", + "12158603" ], [ - "647760366592966", - "25920905560" + "763977771003164", + "17003737" ], [ - "648612566573043", - "33" + "763977788006901", + "20306613" ], [ - "648651086279479", - "22959268" + "763977808313514", + "8074766" ], [ - "649184309005289", - "2278449" + "763977816388280", + "6279090" ], [ - "649236453132845", - "19324702" + "763978505738531", + "8847815" ], [ - "649284881951220", - "48009418" + "763983196643288", + "10869074" ], [ - "649682081565764", - "649539942" + "763983434298148", + "9849175" ], [ - "649693481105706", - "448369312" + "763985909132064", + "9752450" ], [ - "649874764673718", - "2584832868" + "763985918884514", + "9787526" ], [ - "739098370599205", - "19781032784" + "764056294370732", + "9351239" ], [ - "741941794536593", - "7498568832" + "764056303721971", + "9560632" ], [ - "760171881624417", - "11891246578" - ] - ] - ], - [ - "0x70c65accB3806917e0965C08A4a7D6c72F17651A", - [ + "764058355999201", + "11112309" + ], [ - "767503070574842", - "4117776465" - ] - ] - ], - [ - "0x70C8eE0223D10c150b0db98A0423EC18Ec5aCa89", - [ + "764059201744095", + "12584379" + ], [ - "317764819055205", - "94698329152" - ] - ] - ], - [ - "0x70F11dbD21809EbCd4C6604581103506A6a8443A", - [ + "764059214328474", + "15014610" + ], [ - "324855687987034", - "11444716102" - ] - ] - ], - [ - "0x7125B7C60Ec85F9aD33742D9362f6161d403EC92", - [ + "764059229343084", + "48861891" + ], [ - "185793383994705", - "206785636228" - ] - ] - ], - [ - "0x71603139a9781a8f412E0D955Dc020d0Aa2c2C22", - [ + "764059278204975", + "75874729" + ], [ - "324806023022229", - "28234479163" + "764059944324704", + "7505667" ], [ - "397009213772846", - "13236391256" - ] - ] - ], - [ - "0x718526D1A4a33C776DD745f220dd7EbC13c71e82", - [ + "764059951830371", + "7635979" + ], [ - "59495695484453", - "504171940643" + "764059959466350", + "7814413" ], [ - "124490727082220", - "3038100000000" + "764059967280763", + "7718713" ], [ - "129427950156525", - "467400000000" + "764059974999476", + "6432651" ], [ - "202960513872621", - "332100000000" - ] - ] - ], - [ - "0x7193b82899461a6aC45B528d48d74355F54E7F56", - [ + "764059981432127", + "6505670" + ], [ - "409573727889316", - "100323000000" + "764059987937797", + "5540593" ], [ - "655166761861127", - "1629422984" + "764059993478390", + "9367181" ], [ - "679990486184882", - "101083948638" - ] - ] - ], - [ - "0x7197225aDAD17EeCb4946480D4BA014f3C106EF8", - [ + "764060002845571", + "11137793" + ], [ - "43977781538372", - "960392727042" + "764060013983364", + "12401916" ], [ - "53415449139505", - "560000421094" + "764060026385280", + "9288929" ], [ - "84043081856785", - "88783500000" + "764060035674209", + "9390137" ], [ - "87737275673292", - "29174580000" + "764060045064346", + "1450847" ], [ - "121055292369428", - "595350750000" + "764060046515193", + "1501728" ], [ - "153930334477670", - "722113163135" + "764060048016921", + "2894840" ], [ - "337103989850712", - "208640000000" + "764060050911761", + "4941150" ], [ - "390858944448074", - "1732376340000" + "764060055852911", + "1301076" ], [ - "425808292285395", - "1709471220000" + "764060057153987", + "1700111" ], [ - "747250339620613", - "1065835841221" - ] - ] - ], - [ - "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", - [ + "764060058854098", + "1809338" + ], [ - "312728908697529", - "60865019612" + "764060060663436", + "2557221" ], [ - "396254532333032", - "26041274600" + "764060063220657", + "3319612" ], [ - "517161961415705", - "28582806091" + "764060066540269", + "7533814" ], [ - "525552789075203", - "119322721243" + "764060074074083", + "7779768" ], [ - "547526923635099", - "70107880058" + "764452648625420", + "8106249" ], [ - "561477850643778", - "198991954538" + "764452728661398", + "6424123" ], [ - "562816854802308", - "75915000000" + "764454212950366", + "971045" ], [ - "564663155155208", - "75915000000" + "767132400796221", + "371800" ], [ - "566032344745977", - "75915000000" + "767132401168021", + "37" ], [ - "569084686568315", - "75915000000" + "767132401168058", + "37" ], [ - "572148957945253", - "75915000000" + "767825578930453", + "409264" ], [ - "672617693625732", - "15000000000" - ] - ] - ], - [ - "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", - [ + "767825579339717", + "6540080" + ], [ - "670969471210715", - "112808577" + "767852884974560", + "16635629" ] ] ], [ - "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", + "0x8366bc75C14C481c93AaC21a11183807E1DE0630", [ [ - "258749054768509", - "81750376187" + "76001221652173", + "5352834315" ], [ - "767116911500169", - "5542244064" - ] - ] - ], - [ - "0x726358ab4296cb6A17eC2c0AB7CF8Cc9ae79b246", - [ - [ - "495339332225603", - "10275174620" - ] - ] - ], - [ - "0x726C46B3E0d605ea8821712bD09686354175D448", - [ + "153738842061438", + "31920948003" + ], [ - "42578680325272", - "921515463464" + "648175958870466", + "11538942187" ], [ - "308307791521525", - "1085880660191" + "657207189000929", + "22663915925" ] ] ], [ - "0x72D876bC63f62ed7bb70Ad82238827a2168b5fd2", + "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17", [ [ - "90975474968757", - "37830812302" - ], - [ - "185768300642827", - "25083351878" - ], - [ - "189669106071687", - "31883191886" - ], - [ - "199587559564998", - "35132497379" - ], - [ - "274439437731803", - "42917709597" + "218815689873725", + "90674071972" ], [ - "331649739813903", - "61822486683" + "511059734567237", + "208510236741" ] ] ], [ - "0x72e7212EF9d93244C93BF4DB64E69b582CcaC0D4", + "0x83C9EC651027e061BcC39485c1Fb369297bD428c", [ [ - "311021852055993", - "57433012261" + "41616804521094", + "961875804178" ], [ - "311424446177396", - "1090720348401" + "43500195788736", + "477585749636" ], [ - "315467930213071", - "136678730685" + "45436352397595", + "303350065235" ], [ - "315662245991020", - "93694962402" + "75054132455628", + "463749167922" ], [ - "393653690433948", - "40057990877" + "75556189962930", + "129981759017" ] ] ], [ - "0x72e864CF239cD6ce0116b78F9e1299A5948beD9A", + "0x843F293423895a837DBe3Dca561604e49410576C", [ [ - "27196243734508", - "362696248309" + "325979734145362", + "11660550051" ] ] ], [ - "0x7310E238f2260ff111a941059B023B3eBCF2D54e", + "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", [ [ - "174098989199832", - "54763564665" + "635972973747079", + "594161902" ], [ - "190777349504893", - "37329428702" - ] - ] - ], - [ - "0x737253bF1833A6AC51DCab69cFeDa5d5f3b11A14", - [ - [ - "340591459615016", - "116979885122" - ] - ] - ], - [ - "0x73a901A5712bc405892F5ab02dDf0Cf18a6413b3", - [ + "638302750599290", + "1659683909" + ], [ - "324758511737508", - "15676768579" + "649155413500101", + "12127559908" ] ] ], [ - "0x73c09f642C4252f02a7a22801b5555f4f2b7B955", + "0x8456f07Bed6156863C2020816063Be79E3bDAB88", [ [ - "595188836707834", - "12745012500" + "312515166525797", + "27881195737" ] ] ], [ - "0x73C28f0571ee437171E421c80a55Bdcc6c07cc5C", + "0x84649973923f8d3565E8520171618588508983aF", [ [ - "157548809336026", - "4593795975" + "76120188262565", + "6666000000" ] ] ], [ - "0x74231623D8058Afc0a62f919742e15Af0fb299e5", + "0x848aB321B59da42521D10c07c2453870b9850c8A", [ [ - "31883651774507", - "11659706427" - ], - [ - "90940749954930", - "34725013824" + "676683082878726", + "419955" ], [ - "235813231354853", - "30400392115" + "676686201559550", + "785945" ] ] ], [ - "0x7428eC5B1FAD2FFAdF855d0d2960b5D666d8e347", + "0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849", [ [ - "272818189064955", - "165298148930" + "84451783274191", + "5746830768" ], [ - "278416305316531", - "240278890901" + "644558639373403", + "6740000000" ], [ - "299226867063944", - "69420000075" + "644583603532321", + "6316834733" ] ] ], [ - "0x74382a61e2e053353BECBC71a45adD91c0C21347", + "0x849eA9003Ba70e64D0de047730d47907762174C3", [ [ - "401546143727842", - "693694620220" + "646770632841517", + "1588254225" ] ] ], [ - "0x7438CA839eDcCDA1CA75Fc1fD2b84f6c59D2DeC6", + "0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b", [ [ - "601970356868999", - "4000480096" + "408274916734309", + "46120079714" ] ] ], [ - "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", - [ - [ - "664669553141209", - "31586150" - ], - [ - "669913003351653", - "173562047" - ], - [ - "677766736232113", - "15476640" - ], + "0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C", + [ [ - "677766751708753", - "56970000" + "553461057474487", + "87874946085" ] ] ], [ - "0x74b0b7cEa336fBb34Bc23EB58F48AC5e4C04159E", + "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e", [ [ - "234344282043144", - "19712324157" - ], - [ - "235154344754292", - "94410708993" - ], - [ - "236283093284962", - "59063283900" + "319387499836221", + "99947794980" ], [ - "239409804111193", - "19030292542" + "319487447631201", + "99825855937" ] ] ], [ - "0x74C0A2891fdfb27C6C50D1bF43ba3fCB9c71F362", + "0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371", [ [ - "402899271425864", - "33691850736" + "4952867558328", + "11407582" ] ] ], [ - "0x74E096E78789F31061Fc47F6950279A55C03288c", + "0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2", [ [ - "680559945017520", - "366462731" - ], - [ - "680818684025145", - "2663427585" + "641528528201681", + "103236008" ] ] ], [ - "0x74fEd61c646B86c0BCd261EcfE69c7C7d5E16b81", + "0x85971eb6073d28edF8f013221071bDBB9DEdA1af", [ [ - "227523128809396", - "273973101221" + "195612355274761", + "16839687137" ] ] ], [ - "0x7568614a27117EeEB6E06022D74540c3C5749B84", + "0x85bBE859d13c5311520167AAD51482672EEa654b", [ [ - "209623483887840", - "1224386800" + "52088858820053", + "99058163147" ], [ - "312789773717141", - "7267067960" + "96762775283557", + "102770386747" ], [ - "344841846701641", - "2000000000" + "173386909282298", + "93706942656" ], [ - "646984807026252", - "6479854471" + "361560759321922", + "124922335390" ], [ - "652726940100667", - "16139084611" + "395500230234319", + "3355929998" + ], + [ + "395507210053015", + "1342546167" + ], + [ + "400387101795137", + "13305220778" + ], + [ + "408338406239697", + "2037424295" + ], + [ + "415550617895723", + "2006847559" + ], + [ + "443883816299985", + "132685663226" + ], + [ + "577904956448694", + "30085412412" + ], + [ + "836265440249827", + "101381274964" + ], + [ + "916958051049107", + "103888892461" ] ] ], [ - "0x75d8a359BA8D18194a77D3C6B48f30aA4e519dC3", + "0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a", [ [ - "362938922277631", - "76367829600" + "676879061041574", + "401082333" ] ] ], [ - "0x761B20137B4cE315AB9ea5fdbB82c3634c3F7515", + "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008", [ [ - "75760702250033", - "8000000000" + "16396578434940", + "1386508934563" ], [ - "143366130662199", - "10948490796" + "452122462229722", + "3565000000000" ] ] ], [ - "0x764Bd4Feb72cB6962E8446e9798AceC8A3ac1658", + "0x85Eada0D605d905262687Ad74314bc95837dB4F9", [ [ - "175146200354223", - "75138116495" + "680106747582914", + "8091023787" ], [ - "187621160594244", - "16717595903" + "681632124128030", + "7857742444" ] ] ], [ - "0x765E6Fbbe9434b5Fbaa97f59705e1a54390C0000", + "0x86642f87887c1313f284DBEc47E79Dc06593b82e", [ [ - "12684514908217", - "106416284126" + "768785503361939", + "2853000000" ] ] ], [ - "0x76a05Df20bFEF5EcE3eB16afF9cb10134199A921", + "0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5", [ [ - "31614934747614", - "6046055693" + "265691646124302", + "52475804769" ], [ - "573520471044196", - "83338470769" - ] - ] - ], - [ - "0x76A63B4ffb5E4d342371e312eBe62078760E8589", - [ + "266029676145669", + "95013616645" + ], [ - "582285563910121", - "4410560000" + "428383641973567", + "133886156698" ] ] ], [ - "0x76BFA643763EeD84dB053741c5a8CB6C731d55Bc", + "0x8675C7bc738b4771D29bd0d984c6f397326c9eC2", [ [ - "640275952429877", - "258412979" + "271861293951059", + "198152825" ] ] ], [ - "0x76ce7A233804C5f662897bBfc469212d28D11613", + "0x8687c54f8A431134cDE94Ae3782cB7cba9963D12", [ [ - "432591748956398", - "124843530190" + "646497940474546", + "84596400000" ] ] ], [ - "0x775B04CC1495447048313ddf868075f41F3bf3bB", + "0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c", [ [ - "323031012826145", - "49257554759" + "760184740654334", + "11932612568" ] ] ], [ - "0x7797b7C8244fDe678dA770b96e4EE396e10Ec60B", + "0x8709DD5FE0F07219D8d4cd60735B58E2C3009073", [ [ - "274388266066105", - "11429408683" + "173486508329974", + "159470624797" + ], + [ + "190814678933595", + "29696822758" ] ] ], [ - "0x77aB999d1e9F152156B4411E1f3E2A42Dab8CD6D", + "0x87104977d80256B00465d3411c6D93A63818723c", [ [ - "487068024611440", - "36840000000" + "886456591570583", + "134558229863" ] ] ], [ - "0x77f2cC48fD7dD11211A64650938a0B4004eBe72b", + "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", [ [ - "792668647859111", - "33461141683" + "740625640590276", + "3880736646" + ], + [ + "769309859020325", + "543636737" ] ] ], [ - "0x77FF47a946aed0f9b15b5Fa9365Bc3A261b3fdD5", + "0x87316f7261E140273F5fC4162da578389070879F", [ [ - "603779598696045", - "571460608752" + "33300451017861", + "86512840254" ], [ - "604351059304797", - "342600000000" + "61109178571450", + "122328394500" ], [ - "606755813351268", - "201835314760" + "634752629673424", + "177195" ], [ - "606957648666028", - "690100000000" + "650887494287222", + "91918750000" ], [ - "626836023224058", - "72923998967" + "662291967520724", + "358440000000" ], [ - "626908947223025", - "318351804364" + "665973538914731", + "277554381613" ], [ - "627227299027389", - "320953676893" - ] - ] - ], - [ - "0x78320e6082f9E831DD3057272F553e143dFe5b9c", - [ + "666823186189970", + "262793215966" + ], [ - "490546315924", - "61632407" + "667093311031404", + "218769177704" ] ] ], [ - "0x784616aa101D735b21d12Ba102b97fA2C8dE4C9e", + "0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D", [ [ - "496345360673944", - "488241871617" - ], - [ - "523278607555107", - "149423611243" + "318879364223287", + "100013282422" ], [ - "531225747951270", - "311109277563" + "325544608143106", + "116174772099" ] ] ], [ - "0x78861Fb7F1BA64b2b295Cf5e69DC480cFb929B0E", + "0x876133657F5356e376B7ae27d251444727cE9488", [ [ - "87063919996383", - "31956558401" + "768637502130744", + "6878063205" ] ] ], [ - "0x7893b13e58310cDAC183E5bA95774405CE373f83", + "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", [ [ - "648503987692687", - "6104653206" - ], - [ - "648537251303200", - "11543" - ], - [ - "648537251314743", - "322894" - ], - [ - "648651109238747", - "6969544474" - ], - [ - "648658078783221", - "1319829324" - ], - [ - "648687783119944", - "8278400000" - ], - [ - "648696061519944", - "7004800000" - ], - [ - "648716573711036", - "5089600000" - ], - [ - "648722171346064", - "9538500000" + "29414505086527", + "2152396670739" ], [ - "648931504537814", - "23555040000" + "32181015349710", + "480290414" ], [ - "648955059577814", - "4875640000" + "67097307242526", + "33653558763" ], [ - "648959935217814", - "15070160000" + "70363795658552", + "66346441237" ], [ - "649010795462125", - "16447600000" + "87581469817175", + "155805856117" ], [ - "649027726170457", - "17894090000" + "98500494455758", + "312782775000" ], [ - "649046499968065", - "22636340000" + "221217178954962", + "79784359766" ], [ - "649069136308065", - "18328000000" + "291950100636275", + "188949798464" ], [ - "649100844933065", - "18319300000" + "353439836528037", + "30660000000" ], [ - "649119164233065", - "11365200000" + "353470496528037", + "24576000000" ], [ - "649143422600101", - "11990900000" + "362146672277631", + "792250000000" ], [ - "649284929960638", - "2827800000" + "376516374904000", + "1617000000000" ], [ - "649287827400680", - "15081600000" + "390771216202303", + "27097995630" ], [ - "649398940602242", - "32614400000" + "390832166082933", + "26778365141" ], [ - "649431555002242", - "33988820000" + "394108244766547", + "716760000000" ], [ - "649573935073567", - "26412980000" + "396298286064032", + "26723534157" ], [ - "649600986009465", - "17274840000" + "396325009598189", + "26805960384" ], [ - "649618260849465", - "20654700000" + "396351815558573", + "19925216963" ], [ - "649668950265764", - "13131300000" + "396876559988498", + "6636959689" ], [ - "649832683807170", - "20804860000" + "403252895632721", + "26771365896" ], [ - "649915798444588", - "18046700000" + "507117056987690", + "1891500000" ], [ - "649933845144588", - "6658610000" + "551501858791010", + "4512000000" ], [ - "649940503754588", - "4642174919" + "573655832985345", + "106500000000" ], [ - "649962462383072", - "34628690000" + "588878841916038", + "131652538887" ], [ - "651485759158523", - "135322" + "600406655075849", + "2363527378" ], [ - "661338230306152", - "218560408342" + "639715198069573", + "2189230614" ], [ - "808845120725088", - "163839873562" + "705891223608807", + "144595850533" ], [ - "811211085859009", - "1285117945279" + "741729751228268", + "1456044898" ], [ - "812496203804288", - "1246029256854" + "741749288606424", + "32651685550" ], [ - "857581197479570", - "1634493779706" - ] - ] - ], - [ - "0x78a09C8B4FF4e5A73E3B7bf628BD30E6D67B0E50", - [ - [ - "20360646192758", - "4967300995" + "741781940291974", + "61004241338" ], [ - "859890207337852", - "11474760241" - ] - ] - ], - [ - "0x78A0A1F1E055c4ceeBb658AdF0c4954ae925e944", - [ - [ - "892341437280727", - "145860654491" + "742560662343081", + "273256402439" ], [ - "892487297935218", - "3029212937100" - ] - ] - ], - [ - "0x78d03BeEBEfB15EC912e4D6f7F89F571f33FaA21", - [ - [ - "409808938067549", - "84226188785" - ] - ] - ], - [ - "0x79645bfB4Ef32902F4ee436A23E4A10A50789e54", - [ - [ - "227908990940664", - "435600000000" + "743175173822909", + "94910366676" ], [ - "228474367102286", - "221452178690" - ] - ] - ], - [ - "0x79CB3A5eD6ff37ddA27533ef4fEbB9094b16e72c", - [ - [ - "385257800041705", - "316578014158" - ] - ] - ], - [ - "0x7A1184786066077022F671957299A685b2850BD6", - [ - [ - "635943922934682", - "525079813" + "743314353435951", + "26369949937" ], [ - "635988333778578", - "8627689764" - ] - ] - ], - [ - "0x7a1DbFc4a4294a08c9701B679A2F1038EA45a72b", - [ - [ - "631796137362390", - "1440836515" - ] - ] - ], - [ - "0x7a36E9f5A172Fc2a901b073b538CD23d51A07B8E", - [ - [ - "322952053290841", - "24675798977" + "743600702406369", + "29793092327" ], [ - "340056236725906", - "53380000000" + "743684384239393", + "29401573282" ], [ - "340109616725906", - "53380000000" + "744417709046481", + "288732279695" ] ] ], [ - "0x7A63D7813039000e52Be63299D1302F1e03C7a6A", + "0x87834847477c82d340FCD37BE6b5524b4dF5e7c5", [ [ - "340313280922433", - "9750291736" + "341736578016278", + "6454277235" ] ] ], [ - "0x7A6530B0970397414192A8F86c91d1e1f870a5A6", + "0x87A774178D49C919be273f1022de2ae106E2581e", [ [ - "109585986971037", - "15454078646" - ], - [ - "644132646090255", - "8161384731" + "634773067987253", + "17354145" ] ] ], [ - "0x7aa53F17456863D0FF495B46e84eEE2fE628cCd2", + "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", [ [ - "681870613397796", - "211456338" + "7610595204140", + "5073919704077" ], [ - "681870824854134", - "205872420" + "38787729222746", + "2131906543178" ], [ - "681991801335911", - "19315015127" + "57813809876489", + "1456044500354" ], [ - "683756565573835", - "8759919160" + "170272286454622", + "56571249769" + ], + [ + "349019688741041", + "1506500000000" + ], + [ + "380692001264631", + "3775193029045" + ], + [ + "441243549115022", + "2601287700000" + ], + [ + "517190544221796", + "3763750720000" + ], + [ + "632606217533439", + "22758013200" + ], + [ + "745015672951634", + "2234666668979" ] ] ], [ - "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", + "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", [ [ - "624665309966700", - "41439894685" + "167782267131210", + "106256000000" + ], + [ + "827629800353740", + "110783253508" + ], + [ + "827740583607248", + "853190019303" ] ] ], [ - "0x7aBe5fE607c3E3Df7009B023a4db1eb03e1A6b48", + "0x880bba07fA004b948D22f4492808b255d853DFFe", [ [ - "319694369767515", - "36673342106" + "550921667542369", + "41775210170" ] ] ], [ - "0x7b05f19dEfd150303Ad5E537629eB20b1813bfaD", + "0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b", [ [ - "264752557419462", - "8605989205" + "801693742643965", + "99999995904" ] ] ], [ - "0x7b06c6d2c6e246d8Ec94223Cf50973B81C6D206E", + "0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F", [ [ - "644746452171666", - "213353964" + "644166242707654", + "2050308397" ] ] ], [ - "0x7b2366996A64effE1aF089fA64e9cf4361FddC6e", + "0x88F09Bdc8e99272588242a808052eb32702f88D0", [ [ - "738175767886792", - "725867793824" + "85029199936365", + "840122967451" ], [ - "739166585934609", - "997011405679" + "88453221835372", + "233118002521" ], [ - "740163597340288", - "280746545970" + "153171960305965", + "41365965513" + ], + [ + "154999547640805", + "375222322618" + ], + [ + "165315717408183", + "439812976881" + ], + [ + "171503540188858", + "351737246973" + ], + [ + "218906363945697", + "267770208367" ] ] ], [ - "0x7B2d2934868077d5E938EfE238De65E0830Cf186", + "0x88F667664E61221160ddc0414868eF2f40e83324", [ [ - "53975449560599", - "629903012456" + "350528056631821", + "31369126849" ] ] ], [ - "0x7B75d3E80A34A905e8e9F0c273fe8Ccfd5a2F6F4", + "0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1", [ [ - "174459809952308", - "281091996530" - ], - [ - "311079285068254", - "225639161016" + "344900298455340", + "70954400000" ] ] ], [ - "0x7bB955249d6f57345726569EA7131E2910CA9C0D", + "0x891768B90Ea274e95B40a3a11437b0e98ae96493", [ [ - "277940142360555", - "98218175816" + "542384825883218", + "183217724421" ], [ - "603576947611080", - "199366926066" + "580263603894911", + "202078712746" ], [ - "604978961867797", - "45804202500" + "580852891674604", + "240857146192" ], [ - "605358509270297", - "85487500000" + "643546658124727", + "67704306110" ], [ - "605777739970297", - "85487500000" - ] - ] - ], - [ - "0x7BD6AeE303c6A2a85B3Cf36c4046A53c0464E4dc", - [ + "646848441162974", + "13082343750" + ], [ - "672373244407056", - "22359930276" + "646861523506724", + "9963000000" ], [ - "673932629258168", - "57490196078" - ] - ] - ], - [ - "0x7bE74966867b552dd2CE1F09E71b1CA92C321Af0", - [ + "647064793304491", + "19836000000" + ], [ - "175144400293594", - "1800060629" - ] - ] - ], - [ - "0x7bE9b89B0c18ec7eC1630680Ca0E146665A1f08F", - [ + "647361422909783", + "10074093750" + ], [ - "337947415831374", - "1256098598" - ] - ] - ], - [ - "0x7c12222e79e1a2552CaF92ce8dA063e188a7234F", - [ + "647416263710967", + "9033750000" + ], [ - "327333371992545", - "151078425653" - ] - ] - ], - [ - "0x7C28205352AD687348578f9cB2AB04DE1DcaA040", - [ + "647580506034299", + "7345791596" + ], [ - "107456319203211", - "248840212420" - ] - ] - ], - [ - "0x7c3049d3B4103D244c59C5e53f807808EFBfc97F", - [ + "648573161562432", + "8173059019" + ], [ - "148739166418696", - "42976910603" + "652685809874501", + "41130226166" ], [ - "149458771642101", - "17768345687" + "653461600264912", + "16002234489" ], [ - "150072245775067", - "101280926262" + "654979952361127", + "23536146483" ], [ - "199700241341159", - "90316636223" + "699140429441765", + "235512332890" + ], + [ + "810139795794754", + "1021515561753" ] ] ], [ - "0x7c9551322a2e259830A7357e436107565EA79205", + "0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df", [ [ - "209578881176990", - "44602710850" + "400667403191381", + "202636723695" ], [ - "273679685585512", - "20502770382" + "408340443663992", + "1766184702" ], [ - "430048399348994", - "21915642715" + "408342209848694", + "1766821870" ], [ - "564169770917708", - "253050000000" + "408343976670564", + "1776377083" ], [ - "581983286394610", - "114580000000" + "408345753047647", + "1776940468" ], [ - "650979810428062", - "126027343719" - ] - ] - ], - [ - "0x7cA6d184a19AE164d4bc4Ad9fbb6123236ea03B3", - [ + "409571787389145", + "1940500171" + ], [ - "227166312100795", - "90992725291" + "411707409641311", + "1769006754" ], [ - "229554049269178", - "188167331696" + "460456294770519", + "1909649071" + ], + [ + "460458204419590", + "1909460313" + ], + [ + "460660502553919", + "1913525664" ] ] ], [ - "0x7cC0ec6e5b074fB42114750C9748463C4ac6CD16", + "0x89979246e8764D8DCB794fC45F826437fDeC23b2", [ [ - "33126339744841", - "2542932710" - ], - [ - "647796025649944", - "2276035252" + "180499793470389", + "111111111" ] ] ], [ - "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", + "0x8a178306ffF20fd120C6d96666F08AC7c8b31ded", [ [ - "551487055682601", - "1270108409" + "341743032293513", + "96491602264" ] ] ], [ - "0x7d3a9a4F82766285102f5C44731b974e6a5F5DD0", + "0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A", [ [ - "517136234273749", - "25727141956" - ], - [ - "575297036565480", - "37469832650" + "185180686460512", + "227508332382" ] ] ], [ - "0x7D575d5Fcf60bf3Ce92bb0A634277A1C05A273Cb", + "0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234", [ [ - "264289719394296", - "13882808319" + "657666540789773", + "75000000000" ] ] ], [ - "0x7D6261b4F9e117964210A8EE3a741499679438a0", + "0x8A1B804543404477C19034593aCA22Ab699f0B7D", [ [ - "193924082223281", - "212363516752" + "394825004766547", + "132495619648" ] ] ], [ - "0x7dA66C591BFC8d99291385b8221c69aB9b3e0f0E", + "0x8A30D3bb32291DBbB5F88F905433E499638387b7", [ [ - "41331690648396", - "1580849582" - ], - [ - "41333940372011", - "1537628217" - ], - [ - "647755311699262", - "5054893704" - ], - [ - "648155116928042", - "75808563" - ], - [ - "656120433075312", - "50144887945" + "624854422205544", + "365063359304" ], [ - "656895275442629", - "48622222222" + "720966007001489", + "172940224850" ], [ - "660026375198031", - "42190522575" + "790054047305179", + "266340074594" ] ] ], [ - "0x7E295c18FCa9DE63CF965cFCd3223909e1dBA6af", + "0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9", [ [ - "320112525044800", - "79896782500" + "173480616224954", + "5892105020" ] ] ], [ - "0x7e53AF93688908D67fc3ddcE3f4B033dBc257C20", + "0x8a6EEb9b64EEBA8D3B4404bF67A7c262c555e25B", [ [ - "219573347561330", - "3194476000" + "764117220398714", + "5082059700" ] ] ], [ - "0x7eaF877B409740afa24226D4A448c980896Be795", + "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", [ [ - "609292089920626", - "20074904153" + "31876165099710", + "4909413452" + ], + [ + "324785641390123", + "20381632106" + ], + [ + "337836629850712", + "110785980662" ] ] ], [ - "0x7eFaC69750cc933e7830829474F86149A7DD8e35", + "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", [ [ - "200844770244188", - "1000000" + "4952878965910", + "25693" ], [ - "200844771244188", - "179562380519" + "75795223567174", + "55399924533" ], [ - "210870560056118", - "293011632289" - ] - ] - ], - [ - "0x7F82e84C2021a311131e894ceFf475047deD4673", - [ + "270425564599223", + "6167341566" + ], [ - "623581806243753", - "62496053737" + "634279320795686", + "1458416574" + ], + [ + "634375990601696", + "8038918025" + ], + [ + "634684031419046", + "14524410119" + ], + [ + "636910709575795", + "43996256" + ], + [ + "636951322053443", + "5949833624" ] ] ], [ - "0x7Fe78b37A3F8168Cd60C6860d176D22b81181555", + "0x8a9C930896e453cA3D87f1918996423A589Dd529", [ [ - "783115581867489", - "232497931186" + "599110871788478", + "1467343" ] ] ], [ - "0x7fFA930D3F4774a0ba1d1fBB5b26000BBb90cA70", + "0x8b08CA521FFbb87263Af2C6145E173c16576802d", [ [ - "20300839138392", - "1" - ], - [ - "141104093757416", - "2326237721" - ], - [ - "141106419995137", - "1466439378" - ], - [ - "157543059307151", - "3855741975" - ], - [ - "633362764561998", - "8976176800" + "273422474556206", + "86252721548" ] ] ], [ - "0x80077CB3B35A6c30DC354469f63e0743eeff32D4", + "0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d", [ [ - "417435849352728", - "4099200000000" + "582413872658220", + "312333420" ] ] ], [ - "0x8018564A1d746bd6d35b2c9F5b3afba7471F9Ba5", + "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", [ [ - "41340350884137", - "5263157894" - ], - [ - "213307234626330", - "12500000000" - ], - [ - "380613889185508", - "10461930383" - ], - [ - "385650953907930", - "16235000000" - ], - [ - "646795333940977", - "6300493418" - ], - [ - "646842090324499", - "6350838475" - ], - [ - "648299147129728", - "14576284733" - ], - [ - "648377421210050", - "13030510108" + "648003472838380", + "12191197851" ], [ - "653297909699401", - "24458875511" + "653322368574912", + "1500000000" ], [ - "653479984577629", - "119019649033" + "656881019664829", + "5000000000" ], [ - "662024206613204", - "79777206742" + "656943897664851", + "10000000000" ] ] ], [ - "0x804Be57907807794D4982Bf60F8b86e9010A1639", + "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048", [ [ - "76424701653538", - "94753388776" + "647544630241326", + "8159246655" + ], + [ + "656973507284806", + "14666666666" ], [ - "84731726100795", - "91448859303" + "679488933480560", + "10109491684" ] ] ], [ - "0x8076c8e69B80AaD32dcBB77B860c23FeaE47Db81", + "0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5", [ [ - "74179965494047", - "25544672634" - ], - [ - "166225090295346", - "87221043559" + "273822660112045", + "7974066988" ] ] ], [ - "0x80771B6DC16d2c8C291e84C8f6D820150567534C", + "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", [ [ - "213457800486791", - "14257446361" + "918986387237878", + "39771142560" ], [ - "213472057933152", - "186730161037" + "919359990785000", + "42954878920" ] ] ], [ - "0x80915E89Ffe836216866d16Ec4F693053f205179", + "0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F", [ [ - "599110873255821", - "6253532657" + "534969937819543", + "135093374272" ] ] ], [ - "0x80a2527A444C4f2b57a247191cDF1308c9EB210D", + "0x8BB07e694B421433c9545C0F3d75d99cc763d74A", [ [ - "767511386944346", - "37106473488" - ] - ] - ], - [ - "0x81696d556eeCDc42bED7C3b53b027de923cC5038", - [ + "201066794771608", + "25133316533" + ], [ - "319731043109621", - "14925453141" + "262064136145414", + "3613514390" ], [ - "402373662443244", - "36113082774" + "429986876991709", + "54054054054" ] ] ], [ - "0x81704Bce89289F64a4295134791848AaCd975311", + "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", [ [ - "644073460766211", - "46712134" + "201109552307211", + "5955474760" ], [ - "644187073578836", - "33" + "217487565268538", + "44350084857" + ], + [ + "239366783598110", + "43020513083" + ], + [ + "299402420990124", + "221104866853" + ], + [ + "326242916529391", + "17549000000" + ], + [ + "326313112529391", + "17549000000" + ], + [ + "361863180975181", + "277218187043" + ], + [ + "522905481908356", + "367508589170" + ], + [ + "867419292286175", + "168927430163" + ], + [ + "869942050156433", + "161251868752" ] ] ], [ - "0x8191A2e4721CA4f2f4533c3c12B628f141fF2c19", + "0x8bFe70E2D583f512E7248D67ACE918116B892aeA", [ [ - "237009419020035", - "24112008674" + "278038360536371", + "43467727584" ] ] ], [ - "0x81cFc7E4E973EAf18Cc6d8553b2cDD3B7467b99b", + "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", [ [ - "591001814503012", - "551376150000" + "193207655597753", + "21615842337" ] ] ], [ - "0x81d8363845F96f94858Fac44A521117DADBfD837", + "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1", [ [ - "332432233728809", - "324629738694" + "236244833829125", + "21640000" + ], + [ + "247467483053971", + "97017435775" + ], + [ + "268035191288542", + "43140000000" + ], + [ + "385713611898436", + "6012500000" ] ] ], [ - "0x81eee01e854EC8b498543d9C2586e6aDCa3E2006", + "0x8C35933C469406C8899882f5C2119649cD5B617f", [ [ - "267836734902245", - "198456386297" - ], - [ - "273007832358749", - "292267679049" + "738068338201632", + "87106285553" ] ] ], [ - "0x81F3C0A3115e4F115075eE079A48717c7dfdA800", + "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9", [ [ - "85005128802664", - "17746542257" + "320002058744923", + "981658441" ], [ - "138205055379551", - "21229490022" + "396538880923743", + "3278000000" ] ] ], [ - "0x821bb6973FdA779183d22C9891f566B2e59C8230", + "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b", [ [ - "218770430128287", - "11235751123" + "634147730459515", + "19019153520" + ], + [ + "639381458599755", + "43462477350" + ], + [ + "640267729343515", + "1639640204" + ], + [ + "643109436914433", + "3695060762" + ], + [ + "656886019664829", + "9255777800" ] ] ], [ - "0x8264EA7b0b15a7AD9339F06666D7E339129C9482", + "0x8D02496FA58682DB85034bCCCfE7Dd190000422e", [ [ - "321485895691147", - "32021232234" + "343580534466152", + "26811409430" ] ] ], [ - "0x829Ceb00fC74bD087b1e50d31ec628a90894cD52", + "0x8d4122ffE442De3574871b9648868c1C3396A0AF", [ [ - "323285415668114", - "50596304590" + "741717634585957", + "400610000" ], [ - "355313179311575", - "62470363029" + "741718197414792", + "455722490" ], [ - "367287703769008", - "64080321723" + "741726062974606", + "818667500" + ], + [ + "741731207273166", + "819222700" + ], + [ + "743584914211138", + "4590853221" ] ] ], [ - "0x82a8409a264ea933405f5Fe0c4011c3327626D9B", + "0x8d5380a08b8010F14DC13FC1cFF655152e30998A", [ [ - "870103302085771", - "48730138326" + "547597031515157", + "77364415010" ] ] ], [ - "0x82CFf592c2D9238f05E0007F240c81990f17F764", + "0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D", [ [ - "273671446460892", - "8239124620" + "44938174265414", + "58533046674" ] ] ], [ - "0x82F402847051BDdAAb0f5D4b481417281837c424", + "0x8d9261369E3BFba715F63303236C324D2E3C44eC", [ [ - "33153376109285", - "2512740605" + "56104423797726", + "5555555555" ], [ - "215241439378309", - "5150327530" + "56128647277576", + "115480969665" ], [ - "326072699542277", - "25020000000" + "593991444075917", + "1088800000000" ], [ - "335847619702697", - "10121780000" + "809590710610923", + "69000002695" ] ] ], [ - "0x82Ff15f5de70250a96FC07a0E831D3e391e47c48", + "0x8d98fFF066733b1867e83D1E9563dbe2ad93d933", [ [ - "767984775426960", - "4440000000" + "682012823032558", + "229947181" + ], + [ + "726480239479153", + "501252464" ] ] ], [ - "0x8325D26d08DaBf644582D2a8da311D94DBD02A97", + "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8", [ [ - "153701253487878", - "11008858783" + "76139269514624", + "1990740993" ], [ - "232621964312561", - "2641422510" + "76141260255617", + "5973245960" ] ] ], [ - "0x832fBA673d712fd5bC698a3326073D6674e57DF5", + "0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c", [ [ - "217540873751726", - "22996141953" + "759849978560381", + "14385817538" + ] + ] + ], + [ + "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051", + [ + [ + "161830593337837", + "115150000000" ], [ - "265592792884462", - "23842558596" + "202662490970944", + "110850000000" ] ] ], [ - "0x8342e88C58aA3E0a63B7cF94B6D56589fd19F751", + "0x8E22B0945051f9ca957923490FffC42732A602bb", [ [ - "581907954037154", - "1000000" + "634788539076470", + "6276203466" ], [ - "581907955037154", - "9999000000" + "634794815279936", + "9827545588" ], [ - "665701343812558", - "272195102173" + "635904827427826", + "9070037632" ], [ - "669333969414822", - "215834194074" + "636030747598704", + "5542323541" ], [ - "677431627790689", - "31545276943" + "637155158025776", + "5119268057" ], [ - "678914917868431", - "570100000000" + "637160277293833", + "4699403170" ], [ - "759972802735125", - "63916929" + "638272444804205", + "4087299849" ], [ - "759972866652054", - "34919933" + "638517747611099", + "59892617241" ], [ - "759972901571987", - "44762503" + "638577640228340", + "369705124715" ], [ - "759972946334490", - "26506" + "639881343943323", + "3286401254" ], [ - "759972946360996", - "54603" + "639884630344577", + "355774647137" ], [ - "759972946415599", - "45639837" + "640240404991714", + "27324351801" ], [ - "759972992055436", - "36372829" + "643614362430837", + "2066888224" ], [ - "759973028428265", - "212331" + "643620283037921", + "8939065419" ], [ - "760183772870995", - "237950000" + "643694953463326", + "2752359372" ], [ - "760353370932416", - "640797" + "643703391590700", + "661959372" ], [ - "761858118071390", - "18166203" + "643708407761224", + "7208774373" ], [ - "761858136237593", - "33655130" + "643719737373681", + "5569600000" ], [ - "761858169892723", - "41246561" + "643725306973681", + "9742600000" ], [ - "761858264676918", - "27291992" + "643779525019527", + "3820850000" ], [ - "761860246451109", - "40407888" + "643783345869527", + "1707040042" ], [ - "761860286858997", - "20624528" + "643785052909569", + "5763520000" ], [ - "761861105640928", - "38655387" + "643821358178040", + "7971800000" ], [ - "761861144296315", - "8965138" + "643829329978040", + "5039030716" ], [ - "762295499061705", - "29510736" + "644476737396027", + "16895000000" ], [ - "762295528572441", - "31584894" + "644493632396027", + "1504381620" ], [ - "762295560157335", - "35342" + "644546930195508", + "8900760000" ], [ - "762295560192677", - "19821585" + "644630911863012", + "11699760000" ], [ - "762940981941034", - "21214050" + "644654861253846", + "10623920000" ], [ - "763876944550921", - "126220" + "644665485173846", + "17638053943" ], [ - "763876944677141", - "2145664" + "644683123227789", + "9745450000" ], [ - "763877071172496", - "18553917" + "644715557290166", + "7386500000" + ], + [ + "644722943790166", + "6647850000" + ], + [ + "644730383784474", + "8593920000" + ], + [ + "644739405621666", + "7046550000" + ], + [ + "646586693145487", + "7647120000" + ], + [ + "646594340265487", + "7107300000" + ], + [ + "646601447565487", + "10325700000" + ], + [ + "646649283926819", + "13915200000" + ], + [ + "648975005377814", + "14240250000" + ], + [ + "649465991359682", + "39499055600" + ], + [ + "649543350358696", + "30370700000" + ], + [ + "649638915549465", + "17829600000" + ], + [ + "649682731105706", + "10750000000" + ], + [ + "649732321655883", + "29365153200" + ], + [ + "649853553682918", + "21210990800" + ], + [ + "649877349506586", + "37388375200" + ], + [ + "649945145929507", + "16389700000" + ], + [ + "649997091073072", + "23302500000" + ], + [ + "650021492240274", + "44719200000" + ], + [ + "650106319488124", + "22080492500" + ], + [ + "650180188928485", + "39053700000" + ], + [ + "650221099958669", + "31599600000" + ], + [ + "650253593040147", + "33458400000" + ], + [ + "650288534678033", + "30655350000" + ], + [ + "650320795125561", + "45806000000" + ], + [ + "650366601125561", + "30935000000" + ], + [ + "650452255356813", + "44503200000" + ], + [ + "650551388583982", + "35815000000" + ], + [ + "650651519952014", + "67859000000" + ], + [ + "650721535280868", + "77075000000" + ], + [ + "650801314728485", + "80119000000" ], [ - "763877559163775", - "2178159" + "651106116712104", + "119445800000" ], [ - "763898472187152", - "34733796" + "651226237935004", + "123080000000" ], [ - "763898517945378", - "2604448" + "651352897558523", + "132861600000" ], [ - "763904514777740", - "12880451" + "651490734941819", + "126034000000" ], [ - "763904527658191", - "8645673" + "651859212744680", + "131988500000" ], [ - "763904536303864", - "5775330" + "651994987597920", + "92040000000" ], [ - "763904542079194", - "8086438" + "652092559809813", + "106100900000" ], [ - "763904550165632", - "8189602" + "652200893903770", + "110340000000" ], [ - "763904558355234", - "9042724" + "652314223783562", + "164816300000" ], [ - "763904567397958", - "9831655" + "652482991863768", + "199030000000" ], [ - "763904577229613", - "27363324" + "656273596415795", + "139472000000" ], [ - "763908619462613", - "12836178" + "656726385959559", + "145320000000" ], [ - "763910556401834", - "11888964" + "657483455066681", + "147980000000" ], [ - "763910568290798", - "12803633" + "660094725857615", + "275770000000" ], [ - "763910581094431", - "5385691" + "663738170468081", + "341622600000" ], [ - "763910586480122", - "8796762" + "667521733568321", + "189440000000" ], [ - "763976063428196", - "9117332" + "667713496616813", + "185793800000" ], [ - "763976234474836", - "4457574" + "667901436175266", + "198119000000" ], [ - "763976357160622", - "7294661" + "668712695471943", + "188864000000" ], [ - "763976364455283", - "7550783" + "670464846916585", + "243812500000" ], [ - "763976372006066", - "7917327" + "670716975210715", + "252496000000" ], [ - "763976379923393", - "8299132" - ], + "743136696323798", + "38477499111" + ] + ] + ], + [ + "0x8E32736429d2F0a39179214C826DeeF5B8A37861", + [ [ - "763977688578348", - "7313583" + "217364218398563", + "2286050992" ], [ - "763977695891931", - "8256505" + "235843631746968", + "10000000000" + ] + ] + ], + [ + "0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9", + [ + [ + "533811200182803", + "10832666996" + ] + ] + ], + [ + "0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1", + [ + [ + "294885031008106", + "214939119695" + ] + ] + ], + [ + "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", + [ + [ + "33289238004194", + "88586040" + ] + ] + ], + [ + "0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f", + [ + [ + "261926912251264", + "43323014052" ], [ - "763977704148436", - "8272223" + "267608940617108", + "47689884851" + ] + ] + ], + [ + "0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E", + [ + [ + "228395750082372", + "40000269904" + ] + ] + ], + [ + "0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1", + [ + [ + "250822439474701", + "20080403416" + ] + ] + ], + [ + "0x8ED057F90b2442813136066C8D1F1C54A64f6bFa", + [ + [ + "823927383087247", + "1820804740000" + ] + ] + ], + [ + "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3", + [ + [ + "647923615594199", + "3641357127" ], [ - "763977712420659", - "8438801" + "656957870028532", + "10106346172" ], [ - "763977720859460", - "1226665" + "740606283858594", + "19356731682" ], [ - "763977722086125", - "8329771" + "763837600998279", + "7849710807" + ] + ] + ], + [ + "0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab", + [ + [ + "644084234800388", + "4987061378" + ] + ] + ], + [ + "0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3", + [ + [ + "298728570869450", + "16832925562" + ] + ] + ], + [ + "0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3", + [ + [ + "661958706677690", + "25027091964" ], [ - "763977730415896", - "9430332" + "763845450709086", + "30629325526" ], [ - "763977739846228", - "9446755" + "768080691689073", + "4437963" + ] + ] + ], + [ + "0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd", + [ + [ + "143431239052286", + "274715000000" ], [ - "763977749292983", - "9551578" + "160171656111929", + "64458305378" ], [ - "763977758844561", - "12158603" + "166312311338905", + "4355746398" ], [ - "763977771003164", - "17003737" + "283231288673626", + "85392080830" ], [ - "763977788006901", - "20306613" + "428537479118543", + "192740698873" + ] + ] + ], + [ + "0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E", + [ + [ + "636957271887067", + "7101122035" + ] + ] + ], + [ + "0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf", + [ + [ + "279415281575631", + "21362369519" + ] + ] + ], + [ + "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", + [ + [ + "634067048999317", + "624152515" ], [ - "763977808313514", - "8074766" + "634313671519967", + "2917389996" ], [ - "763977816388280", - "6279090" + "634316588909963", + "1608309723" + ] + ] + ], + [ + "0x905B2Eb4B731B395E7517a4763CD829F6EC2f510", + [ + [ + "318867707803280", + "11656420007" + ] + ] + ], + [ + "0x90777294a457DDe6F7d297F66cCf30e1aD728997", + [ + [ + "635851055266738", + "6942682548" ], [ - "763978505738531", - "8847815" + "635865859827411", + "591391110" ], [ - "763983196643288", - "10869074" + "635866451218521", + "1887298581" ], [ - "763983434298148", - "9849175" + "635913897465458", + "4889469871" ], [ - "763985909132064", - "9752450" + "635924362730406", + "5619208960" ], [ - "763985918884514", - "9787526" + "635933837379991", + "466964066" ], [ - "764056294370732", - "9351239" + "635944448014495", + "11358834076" ], [ - "764056303721971", - "9560632" + "635955806848571", + "8964889758" ], [ - "764058355999201", - "11112309" + "636007716379648", + "11412961016" ], [ - "764059201744095", - "12584379" + "636019129340664", + "5321360246" ], [ - "764059214328474", - "15014610" + "636024450700910", + "6296897794" ], [ - "764059229343084", - "48861891" + "636036289922245", + "4024217651" ], [ - "764059278204975", - "75874729" + "636040314139896", + "7156191386" ], [ - "764059944324704", - "7505667" + "640489298182683", + "25062802988" ], [ - "764059951830371", - "7635979" + "640514360985671", + "40682056506" + ] + ] + ], + [ + "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", + [ + [ + "32880713693820", + "64911823433" + ] + ] + ], + [ + "0x90a69b1a180f60c0059f149577919c778cE2b9e1", + [ + [ + "768076090723695", + "4151494524" ], [ - "764059959466350", - "7814413" + "768080242218597", + "449469381" ], [ - "764059967280763", - "7718713" + "768317482790786", + "557834029" ], [ - "764059974999476", - "6432651" + "768563844703458", + "1171046769" ], [ - "764059981432127", - "6505670" + "883616982283453", + "11518551564" + ] + ] + ], + [ + "0x90B113Cf662039394D28505f51f0B1B4678Cc3b5", + [ + [ + "219654135446081", + "12564997296" + ] + ] + ], + [ + "0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50", + [ + [ + "580032854468122", + "88320699942" + ] + ] + ], + [ + "0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F", + [ + [ + "558624634802147", + "1237233093659" + ] + ] + ], + [ + "0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96", + [ + [ + "84457739949221", + "34043324970" + ] + ] + ], + [ + "0x922d012c7E8fCe3C46ac761179Bdb6d16246782D", + [ + [ + "88955798195330", + "25000000000" ], [ - "764059987937797", - "5540593" + "624243295610454", + "69069767441" + ] + ] + ], + [ + "0x923CC3D985cE69a254458001097012cb33FAb601", + [ + [ + "249612009457166", + "4073310240" ], [ - "764059993478390", - "9367181" + "322124343236298", + "166137507314" ], [ - "764060002845571", - "11137793" + "483902259120899", + "107641561256" ], [ - "764060013983364", - "12401916" + "744791150134115", + "7566204130" + ] + ] + ], + [ + "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", + [ + [ + "28489123737390", + "4974815" ], [ - "764060026385280", - "9288929" + "343041139126193", + "95838400000" + ] + ] + ], + [ + "0x925a3A49f8F831879ee7A848524cEfb558921874", + [ + [ + "789556545675975", + "477950000000" + ] + ] + ], + [ + "0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36", + [ + [ + "201091928088141", + "17624219070" + ] + ] + ], + [ + "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA", + [ + [ + "217366504449555", + "302171" ], [ - "764060035674209", - "9390137" + "217531915353395", + "8958398331" ], [ - "764060045064346", - "1450847" + "218296843888721", + "80071865513" ], [ - "764060046515193", - "1501728" + "224631428800796", + "22378" ], [ - "764060048016921", - "2894840" + "231844168579875", + "306052702649" ], [ - "764060050911761", - "4941150" + "376516373148891", + "1755109" ], [ - "764060055852911", - "1301076" + "380624351115891", + "67650148740" ], [ - "764060057153987", - "1700111" + "395424902256127", + "6675646701" ], [ - "764060058854098", - "1809338" + "401212958523891", + "54089424183" ], [ - "764060060663436", - "2557221" + "643927624780761", + "11229570252" ], [ - "764060063220657", - "3319612" + "644546638392961", + "291802547" ], [ - "764060066540269", - "7533814" + "646780136970742", + "8953406250" ], [ - "764060074074083", - "7779768" + "646810991621895", + "8729437500" ], [ - "764452648625420", - "8106249" + "647028402460741", + "18406312500" ], [ - "764452728661398", - "6424123" + "647238526691033", + "17103187500" ], [ - "764454212950366", - "971045" + "647587851825895", + "11928928125" ], [ - "767132400796221", - "371800" + "650150114947102", + "30073981383" ], [ - "767132401168021", - "37" + "654554821960398", + "2548987716" ], [ - "767132401168058", - "37" + "654977582470147", + "2369890980" ], [ - "767825578930453", - "409264" + "664868558503085", + "115005092260" ], [ - "767825579339717", - "6540080" + "667337080209108", + "100000000000" ], [ - "767852884974560", - "16635629" + "667437080209108", + "84653359213" ] ] ], [ - "0x8366bc75C14C481c93AaC21a11183807E1DE0630", + "0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB", [ [ - "76001221652173", - "5352834315" - ], - [ - "153738842061438", - "31920948003" - ], - [ - "648175958870466", - "11538942187" - ], - [ - "657207189000929", - "22663915925" + "299318297064041", + "56184744549" ] ] ], [ - "0x8368545412A7D32df7DAEB85399Fe1CC0284CF17", + "0x92e8E8760aBa91467A321230EF3ba081aD3998Fb", [ [ - "218815689873725", - "90674071972" + "638142095832193", + "89554550" ], [ - "511059734567237", - "208510236741" + "638276532104054", + "5326837099" ] ] ], [ - "0x83C9EC651027e061BcC39485c1Fb369297bD428c", + "0x930836bA4242071FEa039732ff8bf18B8401403E", [ [ - "41616804521094", - "961875804178" + "78615049172294", + "2221663677" ], [ - "43500195788736", - "477585749636" + "217475674512777", + "11890755761" ], [ - "45436352397595", - "303350065235" + "299133073539652", + "93793524292" ], [ - "75054132455628", - "463749167922" + "866979581798975", + "5154270000" ], [ - "75556189962930", - "129981759017" + "912080623426716", + "22562763887" ] ] ], [ - "0x843F293423895a837DBe3Dca561604e49410576C", + "0x9336a604077688Ae5bB9e18EbDF305d81d474817", [ [ - "325979734145362", - "11660550051" + "507627505426137", + "16376776057" ] ] ], [ - "0x8450E3092b2c1C4AafD37cB6965cFCe03cd5fB6D", + "0x9383E26556018f0E14D8255C5020d58b3f480Dac", [ [ - "635972973747079", - "594161902" - ], + "221721022666875", + "88075053596" + ] + ] + ], + [ + "0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228", + [ [ - "638302750599290", - "1659683909" + "415361829991557", + "21739077662" + ] + ] + ], + [ + "0x9399943298b25632b21f4d1FA75DB0C5b8d457C5", + [ + [ + "342893609901961", + "12098559997" ], [ - "649155413500101", - "12127559908" + "344871912132732", + "28386322608" ] ] ], [ - "0x8456f07Bed6156863C2020816063Be79E3bDAB88", + "0x93A185CD1579c015043Af80da2D88C90240Ab3a9", [ [ - "312515166525797", - "27881195737" + "363871731464758", + "67603779457" + ], + [ + "470298210971887", + "82596094458" + ], + [ + "582132866585744", + "152697324377" ] ] ], [ - "0x84649973923f8d3565E8520171618588508983aF", + "0x93b34d74a134b403450f993e3f2fb75B751fa3d6", [ [ - "76120188262565", - "6666000000" + "235668949340980", + "139782800000" ] ] ], [ - "0x848aB321B59da42521D10c07c2453870b9850c8A", + "0x93C950E36f3C155B2141f1516b7ea5B6D15eD981", [ [ - "676683082878726", - "419955" + "768601886344092", + "32526495264" ], [ - "676686201559550", - "785945" + "860250156865870", + "35738780868" + ], + [ + "868255530067476", + "89704746985" ] ] ], [ - "0x8496e1b0aAd23e70Ef76F390518Cf2b4CC4a4849", + "0x93d4E7442F62028ca0a44df7712c2d202dc214B9", [ [ - "84451783274191", - "5746830768" - ], + "153777795374191", + "148859700937" + ] + ] + ], + [ + "0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb", + [ [ - "644558639373403", - "6740000000" + "76137278825671", + "1990688953" ], [ - "644583603532321", - "6316834733" + "643070034423361", + "6711451596" ] ] ], [ - "0x849eA9003Ba70e64D0de047730d47907762174C3", + "0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f", [ [ - "646770632841517", - "1588254225" + "118268129285100", + "16859278098" ] ] ], [ - "0x84aB24F1e3DF6791f81F9497ce0f6d9200b5B46b", + "0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74", [ [ - "408274916734309", - "46120079714" + "343508462299842", + "21014656050" ] ] ], [ - "0x84cDbf180F2da2ae752820bb6041E4D39E7FF74C", + "0x94cf16A6C45474B05d383d8779479C69f0c5a07A", [ [ - "553461057474487", - "87874946085" + "580121175168064", + "85134042441" ] ] ], [ - "0x84D990D0BE2f9BFe8430D71e8fe413A224f2B63e", + "0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB", [ [ - "319387499836221", - "99947794980" + "83647572521207", + "18782949347" ], [ - "319487447631201", - "99825855937" + "271861492103884", + "19812902768" ] ] ], [ - "0x854e4406b9C2CFdC36a8992f1718e09E5F0D2371", + "0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa", [ [ - "4952867558328", - "11407582" + "38045439233929", + "14316608969" ] ] ], [ - "0x858Bb5148ec21b5212c1ccF9b5cc2705ca9787E2", + "0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95", [ [ - "641528528201681", - "103236008" + "203417856117845", + "45234008042" ] ] ], [ - "0x85971eb6073d28edF8f013221071bDBB9DEdA1af", + "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5", [ [ - "195612355274761", - "16839687137" + "76194265704929", + "3500000000" + ], + [ + "646832204344041", + "177292448" + ], + [ + "646841938136489", + "152188010" ] ] ], [ - "0x85bBE859d13c5311520167AAD51482672EEa654b", + "0x9558d273A81CF0b41931C78B502c4CB2Bd3deb42", [ [ - "52088858820053", - "99058163147" - ], + "131067170257727", + "423037526400" + ] + ] + ], + [ + "0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6", + [ [ - "96762775283557", - "102770386747" + "355295604996220", + "17574315355" ], [ - "173386909282298", - "93706942656" + "559861867895806", + "7681062381" ], [ - "361560759321922", - "124922335390" - ], + "588875863204433", + "2978711605" + ] + ] + ], + [ + "0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13", + [ [ - "395500230234319", - "3355929998" + "563601797802308", + "150555000000" + ] + ] + ], + [ + "0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e", + [ + [ + "321946865430555", + "17115881788" + ] + ] + ], + [ + "0x96b793d04E0D068083792E4D6E7780EEE50755Fa", + [ + [ + "402932963276600", + "30982753569" + ] + ] + ], + [ + "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", + [ + [ + "563752352802308", + "102495000000" ], [ - "395507210053015", - "1342546167" + "566326224363477", + "253050000000" ], [ - "400387101795137", - "13305220778" + "568613671950815", + "253050000000" ], [ - "408338406239697", - "2037424295" + "569509116433715", + "253050000000" ], [ - "415550617895723", - "2006847559" + "572451504525253", + "253050000000" ], [ - "443883816299985", - "132685663226" + "595080378032834", + "10000000000" ], [ - "577904956448694", - "30085412412" + "672201516338595", + "49886373590" ], [ - "836265440249827", - "101381274964" + "742850925745520", + "13729367592" ], [ - "916958051049107", - "103888892461" + "742864655113112", + "272041210686" ] ] ], [ - "0x85C1F25EFebE8391403e7C50DFd7fBA7199BaC0a", + "0x96E4FD50CD0A761528626fc072Da54ADFD2F8593", [ [ - "676879061041574", - "401082333" + "741719419577984", + "1466608" ] ] ], [ - "0x85C8BDE4cF6b364Da0f7F2fF24489FEC81892008", + "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC", [ [ - "16396578434940", - "1386508934563" + "340404094520260", + "3964784011" ], [ - "452122462229722", - "3565000000000" + "646482350566546", + "15589908000" ] ] ], [ - "0x85Eada0D605d905262687Ad74314bc95837dB4F9", + "0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6", [ [ - "680106747582914", - "8091023787" + "282819759198190", + "269171533434" + ] + ] + ], + [ + "0x9728444E6414E39d0F7F5389ca129B8abb4cB492", + [ + [ + "480577854120899", + "3324405000000" ], [ - "681632124128030", - "7857742444" + "631799252766314", + "1813500000" + ], + [ + "643804834253676", + "6721835647" ] ] ], [ - "0x86642f87887c1313f284DBEc47E79Dc06593b82e", + "0x97Ada2E26C06C263c68ECCe43756708d0f03D94A", [ [ - "768785503361939", - "2853000000" + "220240212248773", + "104797064592" ] ] ], [ - "0x8665E6A5c02FF4fCbE83d998982E4c08791b54e5", + "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", [ [ - "265691646124302", - "52475804769" + "679499042972244", + "1010851037" ], [ - "266029676145669", - "95013616645" + "679985431655992", + "5054528890" ], [ - "428383641973567", - "133886156698" + "911892086318462", + "14908452858" ] ] ], [ - "0x8675C7bc738b4771D29bd0d984c6f397326c9eC2", + "0x97b60488997482C29748d6f4EdC8665AF4A131B5", [ [ - "271861293951059", - "198152825" + "18053754491380", + "122517511" ] ] ], [ - "0x8687c54f8A431134cDE94Ae3782cB7cba9963D12", + "0x97c46EeC87a51320c05291286f36689967834854", [ [ - "646497940474546", - "84596400000" + "415490440421248", + "60177474475" ] ] ], [ - "0x86dcc2325b1c9d6D63D59B35eBAb90607EAd7c6c", + "0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672", [ [ - "760184740654334", - "11932612568" + "826335238626477", + "9112774391" ] ] ], [ - "0x8709DD5FE0F07219D8d4cd60735B58E2C3009073", + "0x97E89f88407d375cCF90eC1B710B5A914eB784Af", [ [ - "173486508329974", - "159470624797" + "201768350656481", + "1844339969" ], [ - "190814678933595", - "29696822758" + "220224852015278", + "6971402273" + ], + [ + "264821742218510", + "14054479986" + ], + [ + "310876801024927", + "8504661454" ] ] ], [ - "0x87104977d80256B00465d3411c6D93A63818723c", + "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", [ [ - "886456591570583", - "134558229863" + "428374263505395", + "9378468172" + ], + [ + "586115544020889", + "50921590468" + ], + [ + "595214601590334", + "15218730000" ] ] ], [ - "0x87263a1AC2C342a516989124D0dBA63DF6D0E790", + "0x981793123af0E6126BEf8c8277Fdffec80eB13fd", [ [ - "740625640590276", - "3880736646" + "649010129912775", + "665549350" ], [ - "769309859020325", - "543636737" + "649027243062125", + "483108332" + ], + [ + "649287757760638", + "69640042" + ] + ] + ], + [ + "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", + [ + [ + "668901559471943", + "2552486513" + ] + ] + ], + [ + "0x988fB2064B42a13eb556DF79077e23AA4924aF20", + [ + [ + "96723333293899", + "17313210068" + ], + [ + "217902719272293", + "226251708976" ] ] ], [ - "0x87316f7261E140273F5fC4162da578389070879F", + "0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60", [ [ - "33300451017861", - "86512840254" - ], - [ - "61109178571450", - "122328394500" - ], - [ - "634752629673424", - "177195" - ], - [ - "650887494287222", - "91918750000" - ], - [ - "662291967520724", - "358440000000" - ], - [ - "665973538914731", - "277554381613" - ], - [ - "666823186189970", - "262793215966" - ], - [ - "667093311031404", - "218769177704" + "318373329094766", + "101752513973" ] ] ], [ - "0x8756e7c68221969812d5DaC9B5FB1e59a32a5b1D", + "0x989c235D8302fe906A84D076C24e51c1A7D44E3C", [ [ - "318879364223287", - "100013282422" + "656118292039843", + "2141035469" ], [ - "325544608143106", - "116174772099" + "659821030952031", + "142619335500" ] ] ], [ - "0x876133657F5356e376B7ae27d251444727cE9488", + "0x990cf47831822275a365e0C9239DC534b833922D", [ [ - "768637502130744", - "6878063205" + "267334127487509", + "3651796730" ] ] ], [ - "0x877bDc0E7Aaa8775c1dBf7025Cf309FE30C3F3fA", + "0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a", [ [ - "29414505086527", - "2152396670739" + "562079457802308", + "379575000000" ], [ - "32181015349710", - "480290414" + "565096894810977", + "379575000000" ], [ - "67097307242526", - "33653558763" + "566912175347146", + "379575000000" ], [ - "70363795658552", - "66346441237" + "567901195967146", + "379575000000" ], [ - "87581469817175", - "155805856117" + "570422537669484", + "379575000000" ], [ - "98500494455758", - "312782775000" - ], + "571411558289484", + "379575000000" + ] + ] + ], + [ + "0x992C5a47F13AB085de76BD598ED3842c995bDf1c", + [ [ - "221217178954962", - "79784359766" - ], + "770897210700702", + "32781647269" + ] + ] + ], + [ + "0x995D1e4e2807Ef2A8d7614B607A89be096313916", + [ [ - "291950100636275", - "188949798464" + "141100334358920", + "3759398496" ], [ - "353439836528037", - "30660000000" + "157546915049126", + "1894286900" ], [ - "353470496528037", - "24576000000" + "167724340170029", + "7142857142" ], [ - "362146672277631", - "792250000000" + "201063937145997", + "2857625611" ], [ - "376516374904000", - "1617000000000" + "217470159827742", + "4221510559" ], [ - "390771216202303", - "27097995630" + "262000538295619", + "1941820772" ], [ - "390832166082933", - "26778365141" + "429969815360084", + "6469033333" ], [ - "394108244766547", - "716760000000" + "430040931045763", + "7468303231" ], [ - "396298286064032", - "26723534157" + "634268733708050", + "10587087636" ], [ - "396325009598189", - "26805960384" + "634481097972888", + "857142857" ], [ - "396351815558573", - "19925216963" + "634485782133373", + "1788298206" ], [ - "396876559988498", - "6636959689" + "636910753572051", + "20630903371" ], [ - "403252895632721", - "26771365896" + "641737331477120", + "4335852529" ], [ - "507117056987690", - "1891500000" + "648129956489413", + "12056682276" ], [ - "551501858791010", - "4512000000" + "672730845984332", + "4306282320" ], [ - "573655832985345", - "106500000000" + "679500053823281", + "844417120" ], [ - "588878841916038", - "131652538887" + "741257694168719", + "95204051" ], [ - "600406655075849", - "2363527378" + "757912612741718", + "38494858016" ], [ - "639715198069573", - "2189230614" + "763876080034612", + "623293283" ], [ - "705891223608807", - "144595850533" + "764083981653091", + "62649720" ], [ - "741729751228268", - "1456044898" + "764093598842759", + "6707198969" ], [ - "741749288606424", - "32651685550" + "768095325828979", + "19256876112" ], [ - "741781940291974", - "61004241338" + "848062102251836", + "58373882896" ], [ - "742560662343081", - "273256402439" + "848140906334524", + "96391325008" ], [ - "743175173822909", - "94910366676" - ], + "860099248890927", + "6689760000" + ] + ] + ], + [ + "0x997563ba8058E80f1E4dd5b7f695b5C2B065408e", + [ [ - "743314353435951", - "26369949937" - ], + "250927013915742", + "25000000000" + ] + ] + ], + [ + "0x9980234b18408E07C0F74aCE3dF940B02DD4095c", + [ [ - "743600702406369", - "29793092327" - ], + "883529586723571", + "5308261827" + ] + ] + ], + [ + "0x99997957BF3c202446b1DCB1CAc885348C5b2222", + [ [ - "743684384239393", - "29401573282" + "224631428823174", + "22606820288" ], [ - "744417709046481", - "288732279695" + "237800674733611", + "66551024044" ] ] ], [ - "0x87834847477c82d340FCD37BE6b5524b4dF5e7c5", + "0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b", [ [ - "341736578016278", - "6454277235" + "767310292972398", + "1824412499" ] ] ], [ - "0x87A774178D49C919be273f1022de2ae106E2581e", + "0x99e8845841BDe89e148663A6420a98C47e15EbCe", [ [ - "634773067987253", - "17354145" + "667899290416813", + "2145758453" ] ] ], [ - "0x87C9E571ae1657b19030EEe27506c5D7e66ac29e", + "0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221", [ [ - "7610595204140", - "5073919704077" + "190844375756353", + "112457271309" + ] + ] + ], + [ + "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + [ + [ + "27675714415954", + "28428552478" ], [ - "38787729222746", - "2131906543178" + "28382015360976", + "3696311380" ], [ - "57813809876489", - "1456044500354" + "31670582016164", + "10000000000" ], [ - "170272286454622", - "56571249769" + "31768149901004", + "1262870028" ], [ - "349019688741041", - "1506500000000" + "32346871499710", + "3745346177" ], [ - "380692001264631", - "3775193029045" + "32350616845887", + "279480420" ], [ - "441243549115022", - "2601287700000" + "32374040679120", + "10949720000" ], [ - "517190544221796", - "3763750720000" + "38665412577552", + "24234066624" ], [ - "632606217533439", - "22758013200" + "38689646644176", + "25000000000" ], [ - "745015672951634", - "2234666668979" - ] - ] - ], - [ - "0x87d5EcBfC46E3b17B50b3ED69D97F0Ec7D663B45", - [ + "38771428831519", + "765933376" + ], [ - "167782267131210", - "106256000000" + "38772194764895", + "15534457850" ], [ - "827629800353740", - "110783253508" + "41290690886174", + "33333333333" ], [ - "827740583607248", - "853190019303" - ] - ] - ], - [ - "0x880bba07fA004b948D22f4492808b255d853DFFe", - [ + "41373045659339", + "23121000000" + ], [ - "550921667542369", - "41775210170" - ] - ] - ], - [ - "0x88ad88c5b3beaE06a248E286d1ed08C27E8B043b", - [ + "41397566242672", + "22053409145" + ], [ - "801693742643965", - "99999995904" - ] - ] - ], - [ - "0x88b5c5F3EcdC3b7853fB9D24F32b9362D609EF5F", - [ + "60450977817664", + "25794401425" + ], [ - "644166242707654", - "2050308397" - ] - ] - ], - [ - "0x88F09Bdc8e99272588242a808052eb32702f88D0", - [ + "60476772219089", + "57688204600" + ], [ - "85029199936365", - "840122967451" + "70456530221510", + "18433333333" ], [ - "88453221835372", - "233118002521" + "72513985814422", + "14491677571" ], [ - "153171960305965", - "41365965513" + "76155330934072", + "31663342271" ], [ - "154999547640805", - "375222322618" + "76210249214022", + "5833333333" ], [ - "165315717408183", - "439812976881" + "78786823008925", + "60000000000" ], [ - "171503540188858", - "351737246973" + "86769330994210", + "21622894540" ], [ - "218906363945697", - "267770208367" - ] - ] - ], - [ - "0x88F667664E61221160ddc0414868eF2f40e83324", - [ + "88930464353484", + "20159065566" + ], [ - "350528056631821", - "31369126849" - ] - ] - ], - [ - "0x88FFF68c3ee825a7a59f20bFEA3C80D1aC09bef1", - [ + "107758212738194", + "26283248584" + ], [ - "344900298455340", - "70954400000" - ] - ] - ], - [ - "0x891768B90Ea274e95B40a3a11437b0e98ae96493", - [ + "107784495986778", + "73418207324" + ], [ - "542384825883218", - "183217724421" + "164387799728437", + "209998797626" ], [ - "580263603894911", - "202078712746" + "167679367131210", + "584126946" ], [ - "580852891674604", - "240857146192" + "171855277435831", + "38451787955" ], [ - "643546658124727", - "67704306110" + "185657906453513", + "65394189314" ], [ - "646848441162974", - "13082343750" + "228435750352276", + "5440000000" ], [ - "646861523506724", - "9963000000" + "245016829121327", + "43975873054" ], [ - "647064793304491", - "19836000000" + "272983487213885", + "24345144843" ], [ - "647361422909783", - "10074093750" + "278810931077752", + "61482926829" ], [ - "647416263710967", - "9033750000" + "345065787237708", + "11163284655" ], [ - "647580506034299", - "7345791596" + "384698308395580", + "109943584385" ], [ - "648573161562432", - "8173059019" + "385029414062246", + "85561000000" ], [ - "652685809874501", - "41130226166" + "409893164256334", + "1771119180000" ], [ - "653461600264912", - "16002234489" + "470830034187107", + "6357442000000" ], [ - "654979952361127", - "23536146483" + "634257675267110", + "11058440940" ], [ - "699140429441765", - "235512332890" + "634663980396176", + "51022870" ], [ - "810139795794754", - "1021515561753" - ] - ] - ], - [ - "0x897512dFC6F2417b9f7b4bd21cdb7a4Fbb4939Df", - [ + "679984678617121", + "582008800" + ], [ - "400667403191381", - "202636723695" + "686252659342435", + "12828436637551" ], [ - "408340443663992", - "1766184702" + "701165945775675", + "4725277211064" ], [ - "408342209848694", - "1766821870" + "712925633754929", + "7525989446089" ], [ - "408343976670564", - "1776377083" + "742249808817806", + "125000000" ], [ - "408345753047647", - "1776940468" + "760295074894366", + "58283867892" ], [ - "409571787389145", - "1940500171" + "761862357338505", + "193914722147" ], [ - "411707409641311", - "1769006754" + "764182912505930", + "110218533197" + ], + [ + "862566363552351", + "3470058078836" ], [ - "460456294770519", - "1909649071" + "873232203687519", + "875826549" ], [ - "460458204419590", - "1909460313" + "873233079514068", + "1" ], [ - "460660502553919", - "1913525664" + "873233079514069", + "8767124173450" ] ] ], [ - "0x89979246e8764D8DCB794fC45F826437fDeC23b2", + "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", [ [ - "180499793470389", - "111111111" - ] - ] - ], - [ - "0x89AA0D7EBdCc58D230aF421676A8F62cA168d57a", - [ + "28079737718067", + "38853754100" + ], [ - "228344590940664", - "13645890242" + "28524969242262", + "2368065675" ], [ - "404814012582428", - "13502469920" + "649543303268638", + "47090058" ] ] ], [ - "0x8a178306ffF20fd120C6d96666F08AC7c8b31ded", + "0x9A5d202C5384a032473b2370D636DcA39adcC28f", [ [ - "341743032293513", - "96491602264" + "41274338068902", + "10701754385" ] ] ], [ - "0x8A17B7aF6d76f7348deb9C324AbF98f873b6691A", + "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", [ [ - "185180686460512", - "227508332382" - ] - ] - ], - [ - "0x8A18C0eAB00Ceca669116ca956B1528Ca2D11234", - [ + "28389711672356", + "104406740" + ], [ - "657666540789773", - "75000000000" - ] - ] - ], - [ - "0x8A1B804543404477C19034593aCA22Ab699f0B7D", - [ + "33289034812134", + "202192060" + ], [ - "394825004766547", - "132495619648" - ] - ] - ], - [ - "0x8A30D3bb32291DBbB5F88F905433E499638387b7", - [ + "33289237004194", + "1000000" + ], [ - "624854422205544", - "365063359304" + "33300426361001", + "1000000" ], [ - "720966007001489", - "172940224850" + "33300427361001", + "5000000" ], [ - "790054047305179", - "266340074594" - ] - ] - ], - [ - "0x8A3fA37b0f64CE9abb61936Dbc05bf2cCBA7a5a9", - [ + "33300432361001", + "5000000" + ], [ - "173480616224954", - "5892105020" - ] - ] - ], - [ - "0x8a7C6a1027566e217ab28D8cAA9c8Eddf1Feb02B", - [ + "33300437361001", + "13656860" + ], [ - "31876165099710", - "4909413452" + "61044373437038", + "25689347322" ], [ - "324785641390123", - "20381632106" + "76147233501577", + "6856167984" ], [ - "337836629850712", - "110785980662" - ] - ] - ], - [ - "0x8A8b65aF44aDf126faF6e98ca02174DfF2d452DF", - [ + "429960272856509", + "9542503575" + ], [ - "4952878965910", - "25693" + "561871994522568", + "13450279740" ], [ - "75795223567174", - "55399924533" + "643790816429569", + "7279671848" ], [ - "270425564599223", - "6167341566" + "646935480690670", + "6157413604" ], [ - "634279320795686", - "1458416574" + "647192437507145", + "407318967" ], [ - "634375990601696", - "8038918025" + "649248676270246", + "9479483" ], [ - "634684031419046", - "14524410119" + "650449504800190", + "2539843750" ], [ - "636910709575795", - "43996256" + "651725675783863", + "1673375675" ], [ - "636951322053443", - "5949833624" + "653079279087019", + "3142881940" + ], + [ + "668346065728228", + "1702871488" + ], + [ + "676865712743974", + "13348297600" + ], + [ + "700043849883120", + "15882769" + ], + [ + "741061075495092", + "11965994685" + ], + [ + "741274318742427", + "170840041445" + ], + [ + "768308228493998", + "500910625" ] ] ], [ - "0x8a9C930896e453cA3D87f1918996423A589Dd529", + "0x9af623bE3d125536929F8978233622A7BFc3feF4", [ [ - "599110871788478", - "1467343" + "79296814826113", + "1185063194630" + ], + [ + "188132972372439", + "634988906630" ] ] ], [ - "0x8b08CA521FFbb87263Af2C6145E173c16576802d", + "0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2", [ [ - "273422474556206", - "86252721548" + "67661612435034", + "7500000000" + ], + [ + "326657149277910", + "365524741141" + ], + [ + "327607470128575", + "221232078910" ] ] ], [ - "0x8b371d0683bF058D6569CF6A9d95f01Df9121A3d", + "0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0", [ [ - "582413872658220", - "312333420" + "201260587940851", + "66013841091" ] ] ], [ - "0x8B5A4f93c883680Ee4f2C595D54A073c22dF6c72", + "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F", [ [ - "648003472838380", - "12191197851" - ], - [ - "653322368574912", - "1500000000" - ], - [ - "656881019664829", - "5000000000" + "561734572056961", + "18261807412" ], [ - "656943897664851", - "10000000000" + "561752833864373", + "22055244259" ] ] ], [ - "0x8B77edDCa6A168D90f456BE6b8E00877D4fd6048", + "0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52", [ [ - "647544630241326", - "8159246655" - ], - [ - "656973507284806", - "14666666666" - ], - [ - "679488933480560", - "10109491684" + "141778150492051", + "8228218644" ] ] ], [ - "0x8bA4B376f2979A53Bd89Ef971A5fC63046f6C3E5", + "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", [ [ - "273822660112045", - "7974066988" + "661999206613204", + "25000000000" ] ] ], [ - "0x8ba536EF6b8cC79362C2Bcb2fc922eB1b367c612", + "0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E", [ [ - "918986387237878", - "39771142560" - ], - [ - "919359990785000", - "42954878920" + "343608586695690", + "6294220121" ] ] ], [ - "0x8bAe34f16d991B0F2d76fD734Db1d318f420F34F", + "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C", [ [ - "534969937819543", - "135093374272" + "647881759045440", + "106457720" + ], + [ + "647898572853160", + "795636" ] ] ], [ - "0x8BB07e694B421433c9545C0F3d75d99cc763d74A", + "0x9c211891aFFB1ce6CF8A3e537efbF2f948162204", [ [ - "201066794771608", - "25133316533" - ], - [ - "262064136145414", - "3613514390" - ], - [ - "429986876991709", - "54054054054" + "577935041861106", + "59036591791" ] ] ], [ - "0x8be275DE1AF323ec3b146aB683A3aCd772A13648", + "0x9c695f16975b57f730727F30f399d110cFc71f10", [ [ - "201109552307211", - "5955474760" + "461882379832", + "763789095" ], [ - "217487565268538", - "44350084857" + "501577877086", + "8058429169" ], [ - "239366783598110", - "43020513083" + "28378015360976", + "474338291" ], [ - "299402420990124", - "221104866853" + "632732083964954", + "1303739940" ], [ - "326242916529391", - "17549000000" + "633969304929591", + "49424794604" ], [ - "326313112529391", - "17549000000" + "634191999230784", + "2612080692" ], [ - "361863180975181", - "277218187043" + "699433001774655", + "535830837294" ], [ - "522905481908356", - "367508589170" + "721395262187317", + "14658916075" ], [ - "867419292286175", - "168927430163" + "740509548356246", + "96735502348" ], [ - "869942050156433", - "161251868752" + "826252078588592", + "16970820644" + ], + [ + "885461415329976", + "566999495822" ] ] ], [ - "0x8bFe70E2D583f512E7248D67ACE918116B892aeA", + "0x9C6f40999C82cd18f31421596Ca3b1C5C5083048", [ [ - "278038360536371", - "43467727584" + "644385379072596", + "2088841809" ] ] ], [ - "0x8c1c2349a8FBF0Fb8f04600a27c88aA0129dbAaE", + "0x9c7ac7abbD3EC00E1d4b330C497529166db84f63", [ [ - "193207655597753", - "21615842337" + "323003646918374", + "27365907771" ] ] ], [ - "0x8C2B368ABcf6FFfA703266d1AA7486267CF25Ad1", + "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753", [ [ - "236244833829125", - "21640000" - ], - [ - "247467483053971", - "97017435775" + "28868829340297", + "1785516900" ], [ - "268035191288542", - "43140000000" + "28870614857197", + "266145543" ], [ - "385713611898436", - "6012500000" + "76029285005811", + "2" ] ] ], [ - "0x8C35933C469406C8899882f5C2119649cD5B617f", + "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b", [ [ - "738068338201632", - "87106285553" - ] - ] - ], - [ - "0x8C83e4A0C17070263966A8208d20c0D7F72C44C9", - [ + "385694828784542", + "3478109734" + ], [ - "320002058744923", - "981658441" + "385719624398436", + "3179294885" ], [ - "396538880923743", - "3278000000" - ] - ] - ], - [ - "0x8C93ea0DDaAa29b053e935Ff2AcD6D888272470b", - [ + "395508552599182", + "2015623893" + ], [ - "634147730459515", - "19019153520" + "605147868070297", + "210641200000" ], [ - "639381458599755", - "43462477350" + "632638886261264", + "76135000000" ], [ - "640267729343515", - "1639640204" + "664655112978280", + "14440162929" ], [ - "643109436914433", - "3695060762" + "675156678410802", + "83910292215" ], [ - "656886019664829", - "9255777800" + "676829643561375", + "10000000000" ] ] ], [ - "0x8D02496FA58682DB85034bCCCfE7Dd190000422e", + "0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8", [ [ - "343580534466152", - "26811409430" + "141954294169149", + "30687677344" ] ] ], [ - "0x8D06Ffb1500343975571cC0240152C413d803778", + "0x9D1334De1c51a46a9289D6258b986A267b09Ac18", [ [ - "28904918772117", - "509586314410" - ], - [ - "149476539987788", - "595705787279" - ], - [ - "150623260553725", - "436653263484" - ], - [ - "161092113186340", - "738480151497" - ], - [ - "162734759646450", - "737048150894" - ], - [ - "163471807797344", - "717665153748" - ], - [ - "174803269011285", - "323070981235" - ], - [ - "210525931443438", - "62132577144" - ], - [ - "232704752844281", - "204706266628" - ], - [ - "247742878911682", - "275332296988" - ], - [ - "253931736847120", - "290236580727" - ], - [ - "261970235265316", - "30303030303" - ], - [ - "272319508243958", - "438603533273" - ], - [ - "335529346845329", - "13913764863" - ], - [ - "340276769047777", - "33796000000" - ], - [ - "344515718397376", - "18025000000" - ], - [ - "344533743397376", - "18025000000" - ], - [ - "344833670732808", - "5702918963" - ], - [ - "429976284393417", - "10590000000" - ], - [ - "628854228397766", - "372857584031" - ], - [ - "629227085981797", - "216873485917" - ], - [ - "634643031419046", - "20948977130" - ], + "624548747558738", + "15810994142" + ] + ] + ], + [ + "0x9D496BA09C9dDAE8de72F146DE012701a10400CC", + [ [ - "637149167789946", - "4910026986" - ], + "298511519013444", + "217051856006" + ] + ] + ], + [ + "0x9d5b2a8Ad23E7d870CFa7c7B88A74C64FA098b46", + [ [ - "637351998004377", - "258192517612" + "32028293099710", + "14856250000" ], [ - "639180990676042", - "199438094194" + "84597875356697", + "133850744098" ], [ - "641522728201681", - "5800000000" + "97016486455371", + "254834033922" ], [ - "641574417641439", - "154715717850" + "158734314278093", + "202188482247" ], [ - "643909821821812", - "6902000000" + "171941305124226", + "512087118743" ], [ - "643916723821812", - "10900958949" + "172453392242969", + "167963854918" ], [ - "643999292802533", - "8204345668" + "250740780766453", + "6745238037" ], [ - "644007497148201", - "11854871050" + "395286775789415", + "32560000000" ], [ - "644045596517280", - "6544832392" + "564630258655208", + "32896500000" ], [ - "644057761258485", - "8182865200" + "565841291995977", + "32896500000" ], [ - "644065944123685", - "7516642526" + "569318757818315", + "32896500000" ], [ - "644171938918668", - "9601229268" + "569955901513715", + "32896500000" ], [ - "644306806412385", - "12054054687" + "635871823538305", + "8232935488" ], [ - "644319149838335", - "10735050747" + "636053162040032", + "971681987" ], [ - "644329884889082", - "14347680621" + "637126106210329", + "3549072302" ], [ - "644396277666556", - "6674520726" + "637129677608084", + "6326081465" ], [ - "644525199249437", - "6225710228" + "638142185386743", + "70301972656" ], [ - "644616712009539", - "14199853473" + "638293184544519", + "3222535993" ], [ - "644642611623012", - "12249630834" + "638952019925396", + "53884687500" ], [ - "646758741417842", - "4969664107" + "644463766708048", + "12970687979" ], [ - "646871486506724", - "17642812500" + "644495136777647", + "14591855468" ], [ - "646914219232490", - "8605864430" + "645998771359546", + "402840000000" ], [ - "647002050880741", - "9799080000" + "646991286880741", + "10764000000" ], [ - "647046808773241", - "17984531250" + "648593843684716", + "9515295236" ], [ - "647084629304491", - "23544562500" + "659752492504115", + "68538447916" ], [ - "647119660778668", - "15762838323" - ], + "682072110977139", + "44526000000" + ] + ] + ], + [ + "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", + [ [ - "647151216777708", - "11761593750" + "531849151603571", + "116351049553" ], [ - "647166440607362", - "9285468750" + "533550128922703", + "19753556385" ], [ - "647371497003533", - "6381630000" - ], + "544213439498555", + "93587607857" + ] + ] + ], + [ + "0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C", + [ [ - "647505902133654", - "6953600000" + "465366616460626", + "12745164567" ], [ - "647527562675656", - "8111120358" - ], + "534838741555277", + "19231055968" + ] + ] + ], + [ + "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196", + [ [ - "647617732404338", - "19873525000" + "145457231580719", + "24029099031" ], [ - "647798301685196", - "7654771125" - ], + "187576828165577", + "27608467355" + ] + ] + ], + [ + "0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A", + [ [ - "647838858023565", - "29093546875" + "189397241850520", + "74656417530" ], [ - "647908205457926", - "12756105568" - ], + "634499611419046", + "143420000000" + ] + ] + ], + [ + "0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d", + [ [ - "647978638361818", - "24834476562" + "151778101037835", + "204744106703" ], [ - "648017646545411", - "10268964843" - ], + "430070314991709", + "1718500000" + ] + ] + ], + [ + "0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4", + [ [ - "648034585438303", - "11688871093" - ], + "886028414825798", + "48979547469" + ] + ] + ], + [ + "0x9eD25251826C88122E16428CbB70e65a33E85B19", + [ [ - "648106773674125", - "3568208882" - ], + "790034495675975", + "19551629204" + ] + ] + ], + [ + "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", + [ [ - "648187497812653", - "10104336384" + "236911541186226", + "1352237819" ], [ - "648233657616208", - "10357224170" + "408418430300088", + "1389648589" ], [ - "648244014840378", - "8114610976" - ], + "634458769639996", + "2997137850" + ] + ] + ], + [ + "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE", + [ [ - "648252129451354", - "8545778006" + "142090287304002", + "17901404645" ], [ - "648262194812840", - "8952959614" - ], + "429116006573679", + "11930700081" + ] + ] + ], + [ + "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", + [ [ - "648271147772454", - "6063060479" - ], + "76154089669561", + "1241264511" + ] + ] + ], + [ + "0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1", + [ [ - "648287518441310", - "7377849726" - ], + "279436643945150", + "3073743220711" + ] + ] + ], + [ + "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", + [ [ - "648416302604421", - "20715605468" + "88808287575483", + "30000000000" ], [ - "648452542642294", - "21586449186" + "96740646503967", + "17128687218" ], [ - "648483189881961", - "20797810726" + "229489538650748", + "32886283743" ], [ - "648510092345893", - "15239253108" + "401152958523891", + "60000000000" ], [ - "648616078919292", - "8718470609" - ], + "609312164824779", + "1735981704349" + ] + ] + ], + [ + "0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402", + [ [ - "648629542096134", - "21544183345" - ], + "636566959970125", + "151773247545" + ] + ] + ], + [ + "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8", + [ [ - "648750501960130", - "10150581160" + "660690919212731", + "289575171383" ], [ - "648760652541290", - "23321057117" + "661622790183905", + "239200000000" ], [ - "648783994477207", - "23277498479" + "668099555175266", + "7477326571" ], [ - "648807289596036", - "20989718750" + "670969584019292", + "234760000000" ], [ - "648828279314786", - "20297082735" + "674505181593279", + "234450921461" ], [ - "648889660439973", - "41844097841" + "674739632514740", + "263907264047" ], [ - "649214012945345", - "22440187500" + "675273135381879", + "259861322259" ], [ - "649236472457547", - "7534311320" + "675532996704138", + "197622058472" ], [ - "649261133791064", - "23748160156" + "675730618762610", + "151122236793" ], [ - "649656745149465", - "12205116299" + "676029448628099", + "156891853803" ], [ - "649693929475018", - "11667351669" - ], + "676355375239188", + "179430599503" + ] + ] + ], + [ + "0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151", + [ [ - "657232832610979", - "97443079393" - ], + "92502053320361", + "53620740838" + ] + ] + ], + [ + "0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc", + [ [ - "657631435066681", - "35105723092" - ], + "632158717283728", + "132492430252" + ] + ] + ], + [ + "0xa03E8d9688844146867dEcb457A7308853699016", + [ [ - "657741540789773", - "84888584622" - ], + "637610190521989", + "210060204" + ] + ] + ], + [ + "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", + [ [ - "657986484502639", - "80000000000" - ], + "808559640519864", + "3390839496" + ] + ] + ], + [ + "0xA0df63b73f3B8D4a8cE353833848D672e65Ad818", + [ [ - "658147267102223", - "82507217675" - ], + "202835949108939", + "22" + ] + ] + ], + [ + "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", + [ [ - "659366890690250", - "174474635475" + "282604279025472", + "19163060173" ], [ - "665058906638905", - "92828595185" - ], + "395376016689151", + "26717740160" + ] + ] + ], + [ + "0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7", + [ [ - "676664914525249", - "18043478260" - ], + "764293131039127", + "5229504715" + ] + ] + ], + [ + "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf", + [ [ - "676683083298681", - "3118260869" + "523468438510750", + "57354074175" ], [ - "679750611381961", - "234067235160" + "525245705716340", + "196968848290" ], [ - "681871200072623", - "12689035666" + "530603875619848", + "61988431714" ], [ - "682844108475123", - "1148082700" + "531536857228833", + "206618185436" ], [ - "741732026495866", - "17262110558" + "586955456756494", + "136890000000" ], [ - "741842944533312", - "61092850308" + "587932486316494", + "136890000000" ], [ - "763709016360993", - "44972105263" + "588236306066494", + "136890000000" ], [ - "763803405580259", - "33297747636" + "588540125816494", + "136890000000" ], [ - "768649803857758", - "67782688750" + "634979077385365", + "10413750000" ], [ - "912555361492019", - "2704904821499" + "635251139802881", + "10413750000" ] ] ], [ - "0x8d4122ffE442De3574871b9648868c1C3396A0AF", + "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", [ [ - "741717634585957", - "400610000" - ], - [ - "741718197414792", - "455722490" + "85026199936365", + "3000000000" ], [ - "741726062974606", - "818667500" + "88852883837163", + "4811715614" ], [ - "741731207273166", - "819222700" + "96710970854679", + "12362439220" ], [ - "743584914211138", - "4590853221" - ] - ] - ], - [ - "0x8d5380a08b8010F14DC13FC1cFF655152e30998A", - [ + "106834324920574", + "4912604718" + ], [ - "547597031515157", - "77364415010" + "643886475933352", + "3765334850" ] ] ], [ - "0x8D84aA16d6852ee8E744a453a20f67eCcF6C019D", + "0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0", [ [ - "44938174265414", - "58533046674" + "845407075505547", + "149022357044" ] ] ], [ - "0x8d9261369E3BFba715F63303236C324D2E3C44eC", + "0xA256Aa181aF9046995aF92506498E31E620C747a", [ [ - "56104423797726", - "5555555555" - ], - [ - "56128647277576", - "115480969665" - ], - [ - "593991444075917", - "1088800000000" + "211328028616940", + "48907133253" ], [ - "809590710610923", - "69000002695" + "250772216022849", + "50223451852" ] ] ], [ - "0x8d98fFF066733b1867e83D1E9563dbe2ad93d933", + "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6", [ [ - "682012823032558", - "229947181" + "635189799238365", + "55984064516" ], [ - "726480239479153", - "501252464" + "635432840138881", + "96417000000" ] ] ], [ - "0x8DAd2194396eA9F00DD70606c0011e5e035FFCB8", + "0xa31CFf6aA0af969b6d9137690CF1557908df861B", [ [ - "76139269514624", - "1990740993" + "676729211151593", + "22234228333" ], [ - "76141260255617", - "5973245960" - ] - ] - ], - [ - "0x8Dbd580E34a9ae2f756f14251BFF64c14D32124c", - [ + "682011116351038", + "122067507" + ], [ - "759849978560381", - "14385817538" + "682012314843498", + "508189060" + ], + [ + "686184845909654", + "67813432781" ] ] ], [ - "0x8DdE0B1d21669c5EaaC2088A04452fE307BAE051", + "0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714", [ [ - "161830593337837", - "115150000000" - ], - [ - "202662490970944", - "110850000000" + "355648398557215", + "124964349871" ] ] ], [ - "0x8E22B0945051f9ca957923490FffC42732A602bb", + "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e", [ [ - "634788539076470", - "6276203466" + "12998236449826", + "426119290214" ], [ - "634794815279936", - "9827545588" + "73062201497306", + "639498343615" ], [ - "635904827427826", - "9070037632" + "145584038361780", + "447994980945" ], [ - "636030747598704", - "5542323541" + "146717193948896", + "349624513178" ], [ - "637155158025776", - "5119268057" + "147733502440483", + "358107845085" ], [ - "637160277293833", - "4699403170" + "161945743337837", + "789016308613" ], [ - "638272444804205", - "4087299849" + "187637878190147", + "382459205759" ], [ - "638517747611099", - "59892617241" + "192336527239129", + "209422598089" ], [ - "638577640228340", - "369705124715" + "204912402135128", + "844577500760" ], [ - "639881343943323", - "3286401254" + "220380031906084", + "231048083326" ], [ - "639884630344577", - "355774647137" + "262067749659804", + "640903306175" ], [ - "640240404991714", - "27324351801" + "306964647833074", + "338382661514" ], [ - "643614362430837", - "2066888224" + "523998966576689", + "403876115080" ], [ - "643620283037921", - "8939065419" + "644357568047841", + "2333969425" ], [ - "643694953463326", - "2752359372" + "760721375485603", + "44211467824" ], [ - "643703391590700", - "661959372" + "768308729410302", + "399538786" ], [ - "643708407761224", - "7208774373" + "774509663364768", + "69954674028" ], [ - "643719737373681", - "5569600000" + "860392158116449", + "34095737422" ], [ - "643725306973681", - "9742600000" - ], + "861654004231708", + "3679385472" + ] + ] + ], + [ + "0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c", + [ [ - "643779525019527", - "3820850000" + "575718099519476", + "32762422300" ], [ - "643783345869527", - "1707040042" + "605567098770297", + "210641200000" ], [ - "643785052909569", - "5763520000" + "836111814253126", + "153625996701" ], [ - "643821358178040", - "7971800000" + "845020731525698", + "149234921085" ], [ - "643829329978040", - "5039030716" - ], + "859277327665173", + "150200542274" + ] + ] + ], + [ + "0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797", + [ [ - "644476737396027", - "16895000000" - ], + "267140974896619", + "10071394154" + ] + ] + ], + [ + "0xA46322948459845Bb5d895ED9C1fdd798692a1dA", + [ [ - "644493632396027", - "1504381620" + "157856472537094", + "4473579144" ], [ - "644546930195508", - "8900760000" - ], + "220203807336965", + "10453702941" + ] + ] + ], + [ + "0xa48E7B26036360695be458D6904DE0892a5dB116", + [ [ - "644630911863012", - "11699760000" - ], + "300546769579166", + "360670112242" + ] + ] + ], + [ + "0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5", + [ [ - "644654861253846", - "10623920000" + "267569813448805", + "1716069" ], [ - "644665485173846", - "17638053943" - ], + "589787132206086", + "2588993459" + ] + ] + ], + [ + "0xa4f79238d3c5b146054C8221A85DC442Ad87b45D", + [ [ - "644683123227789", - "9745450000" - ], + "650651495333882", + "24618132" + ] + ] + ], + [ + "0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302", + [ [ - "644715557290166", - "7386500000" - ], + "344745112963643", + "23506738608" + ] + ] + ], + [ + "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", + [ [ - "644722943790166", - "6647850000" + "180058848381814", + "1317740918" ], [ - "644730383784474", - "8593920000" - ], + "180491055783453", + "8737686936" + ] + ] + ], + [ + "0xA5124bD6d445e23642F8D41c1ebf3Cd20FCe3056", + [ [ - "644739405621666", - "7046550000" + "448540020279257", + "424808836024" + ] + ] + ], + [ + "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", + [ + [ + "78581810315624", + "1000000000" + ] + ] + ], + [ + "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", + [ + [ + "177603077453261", + "22497716826" + ] + ] + ], + [ + "0xa714B49Ff1Bae62E141e6a05bb10356069C31518", + [ + [ + "860392158080817", + "160" ], [ - "646586693145487", - "7647120000" + "860392158080977", + "160" ], [ - "646594340265487", - "7107300000" + "860392158081137", + "160" ], [ - "646601447565487", - "10325700000" + "860392158081297", + "160" ], [ - "646649283926819", - "13915200000" + "860392158081457", + "160" ], [ - "648975005377814", - "14240250000" + "860392158081617", + "160" ], [ - "649465991359682", - "39499055600" + "860392158081777", + "160" ], [ - "649543350358696", - "30370700000" + "860392158081937", + "160" ], [ - "649638915549465", - "17829600000" + "860392158082097", + "160" ], [ - "649682731105706", - "10750000000" + "860392158082257", + "160" ], [ - "649732321655883", - "29365153200" + "860392158082417", + "160" ], [ - "649853553682918", - "21210990800" + "860392158110026", + "160" ], [ - "649877349506586", - "37388375200" + "860426253857405", + "160" ], [ - "649945145929507", - "16389700000" + "860426253857565", + "160" ], [ - "649997091073072", - "23302500000" + "860426253857725", + "160" ], [ - "650021492240274", - "44719200000" + "860426253857885", + "160" ], [ - "650106319488124", - "22080492500" + "860426253858045", + "160" ], [ - "650180188928485", - "39053700000" + "860426253858205", + "160" ], [ - "650221099958669", - "31599600000" + "860426253858365", + "160" ], [ - "650253593040147", - "33458400000" + "860426253858525", + "160" ], [ - "650288534678033", - "30655350000" + "860426253858685", + "160" ], [ - "650320795125561", - "45806000000" + "860426253858845", + "160" ], [ - "650366601125561", - "30935000000" + "860426253859005", + "160" ], [ - "650452255356813", - "44503200000" + "860426253859165", + "160" ], [ - "650551388583982", - "35815000000" + "860426253859325", + "160" ], [ - "650651519952014", - "67859000000" + "860426253859485", + "160" ], [ - "650721535280868", - "77075000000" + "860426253859645", + "160" ], [ - "650801314728485", - "80119000000" + "860426253859805", + "160" ], [ - "651106116712104", - "119445800000" + "860426253859965", + "160" ], [ - "651226237935004", - "123080000000" + "860426253860125", + "160" ], [ - "651352897558523", - "132861600000" + "860426253860285", + "160" ], [ - "651490734941819", - "126034000000" + "860426253860445", + "160" ], [ - "651859212744680", - "131988500000" + "860426253860605", + "160" ], [ - "651994987597920", - "92040000000" + "860426253860765", + "160" ], [ - "652092559809813", - "106100900000" + "860426253860925", + "159" ], [ - "652200893903770", - "110340000000" + "860426253861084", + "159" ], [ - "652314223783562", - "164816300000" + "860426253861243", + "159" ], [ - "652482991863768", - "199030000000" + "860426253861402", + "159" ], [ - "656273596415795", - "139472000000" + "860426253861561", + "159" ], [ - "656726385959559", - "145320000000" + "860426253861720", + "159" ], [ - "657483455066681", - "147980000000" + "860426253861879", + "159" ], [ - "660094725857615", - "275770000000" + "860426253862038", + "159" ], [ - "663738170468081", - "341622600000" + "860426253862197", + "159" ], [ - "667521733568321", - "189440000000" + "860426253862356", + "159" ], [ - "667713496616813", - "185793800000" + "860426253862515", + "159" ], [ - "667901436175266", - "198119000000" + "860426253862674", + "159" ], [ - "668712695471943", - "188864000000" + "860426253862833", + "159" ], [ - "670464846916585", - "243812500000" + "860426253862992", + "159" ], [ - "670716975210715", - "252496000000" + "860426253863151", + "159" ], [ - "743136696323798", - "38477499111" - ] - ] - ], - [ - "0x8E32736429d2F0a39179214C826DeeF5B8A37861", - [ + "860426253863310", + "159" + ], [ - "217364218398563", - "2286050992" + "860426253863469", + "159" ], [ - "235843631746968", - "10000000000" - ] - ] - ], - [ - "0x8E3f6FecF3C954ef166e9e0CEc56B283e6C729a9", - [ + "860426253863628", + "159" + ], [ - "533811200182803", - "10832666996" - ] - ] - ], - [ - "0x8e5465757BAC6235C32670a1eDF15c0437cA4fE1", - [ + "860426253863787", + "159" + ], [ - "294885031008106", - "214939119695" - ] - ] - ], - [ - "0x8e75ba859f299b66693388b925Bdb1af6EEc60d6", - [ + "860426253863946", + "159" + ], [ - "33289238004194", - "88586040" - ] - ] - ], - [ - "0x8e8357E84BCDbbA27dC0470cD9F84A9DFb86870f", - [ + "860426253864105", + "159" + ], [ - "261926912251264", - "43323014052" + "860426253864264", + "159" ], [ - "267608940617108", - "47689884851" - ] - ] - ], - [ - "0x8E8Ae083aC4455108829789e8ACb4DbdDe330e2E", - [ + "860426253864423", + "159" + ], [ - "228395750082372", - "40000269904" - ] - ] - ], - [ - "0x8eaA2d22eDd38E9769a9Ec7505bDe53933294DB1", - [ + "860426253864582", + "159" + ], [ - "250822439474701", - "20080403416" - ] - ] - ], - [ - "0x8ED057F90b2442813136066C8D1F1C54A64f6bFa", - [ + "860426254274753", + "159" + ], [ - "823927383087247", - "1820804740000" - ] - ] - ], - [ - "0x8eD2B62f6bC83BfbC3380E5Fa1271E95F38837E3", - [ + "860426254274912", + "159" + ], [ - "647923615594199", - "3641357127" + "860426254275071", + "159" ], [ - "656957870028532", - "10106346172" + "860426254275230", + "159" ], [ - "740606283858594", - "19356731682" + "860426254275389", + "159" ], [ - "763837600998279", - "7849710807" - ] - ] - ], - [ - "0x8f04Cb028B8A025bc4aCf3a193Db4a19d0de5bab", - [ + "860426254275548", + "159" + ], [ - "644084234800388", - "4987061378" - ] - ] - ], - [ - "0x8f2800A82ec05fEB0bcb8AD2A397FF0343C24dF3", - [ + "860426254275707", + "159" + ], [ - "298728570869450", - "16832925562" - ] - ] - ], - [ - "0x8f4dD575e8f6f6308163FbdeBFb650CB714535a3", - [ + "860426254275866", + "159" + ], [ - "661958706677690", - "25027091964" + "860426254276025", + "159" ], [ - "763845450709086", - "30629325526" + "860426254276184", + "158" ], [ - "768080691689073", - "4437963" - ] - ] - ], - [ - "0x8FA1E05245660E20df4e6DfDfB32Fcd2f2E1cAcd", - [ + "860426254276342", + "158" + ], [ - "143431239052286", - "274715000000" + "860426254276500", + "158" ], [ - "160171656111929", - "64458305378" + "860426254276658", + "158" ], [ - "166312311338905", - "4355746398" + "860426255123753", + "158" ], [ - "283231288673626", - "85392080830" + "860426260244926", + "158" ], [ - "428537479118543", - "192740698873" - ] - ] - ], - [ - "0x8Fc6F10C4476bEe6D5b5dcb7b7EB21EA99e7cF2E", - [ + "860426260245084", + "158" + ], [ - "636957271887067", - "7101122035" - ] - ] - ], - [ - "0x8fCC6548DE7c4A1e5F5c196dE1b62c423E61cdaf", - [ + "860426260245242", + "158" + ], [ - "279415281575631", - "21362369519" - ] - ] - ], - [ - "0x8fE8686b254E6685d38eaBdC88235d74bF0cbeaD", - [ + "860426260245400", + "158" + ], [ - "634067048999317", - "624152515" + "860426260245558", + "158" ], [ - "634313671519967", - "2917389996" + "860426260245716", + "158" ], [ - "634316588909963", - "1608309723" - ] - ] - ], - [ - "0x905B2Eb4B731B395E7517a4763CD829F6EC2f510", - [ + "860426260245874", + "158" + ], [ - "318867707803280", - "11656420007" - ] - ] - ], - [ - "0x90777294a457DDe6F7d297F66cCf30e1aD728997", - [ + "860426260246032", + "158" + ], [ - "635851055266738", - "6942682548" + "860810927572524", + "158" ], [ - "635865859827411", - "591391110" + "860810927572682", + "158" ], [ - "635866451218521", - "1887298581" + "860810927572840", + "158" ], [ - "635913897465458", - "4889469871" + "860810927572998", + "158" ], [ - "635924362730406", - "5619208960" + "860810927573156", + "158" ], [ - "635933837379991", - "466964066" + "860810927573314", + "158" ], [ - "635944448014495", - "11358834076" + "860810927573472", + "158" ], [ - "635955806848571", - "8964889758" + "860810927573630", + "158" ], [ - "636007716379648", - "11412961016" + "860810927573788", + "158" ], [ - "636019129340664", - "5321360246" + "860810927685874", + "158" ], [ - "636024450700910", - "6296897794" + "860810927686032", + "158" ], [ - "636036289922245", - "4024217651" + "860810927686190", + "158" ], [ - "636040314139896", - "7156191386" + "860810927686348", + "158" ], [ - "640489298182683", - "25062802988" + "861085838112763", + "158" ], [ - "640514360985671", - "40682056506" - ] - ] - ], - [ - "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", - [ + "861085838112921", + "158" + ], [ - "32880713693820", - "64911823433" - ] - ] - ], - [ - "0x90a69b1a180f60c0059f149577919c778cE2b9e1", - [ + "861085838113079", + "158" + ], [ - "768076090723695", - "4151494524" + "861085838113237", + "158" ], [ - "768080242218597", - "449469381" + "861085838113395", + "158" ], [ - "768317482790786", - "557834029" + "861085838113711", + "158" ], [ - "768563844703458", - "1171046769" + "861085838113869", + "158" ], [ - "883616982283453", - "11518551564" - ] - ] - ], - [ - "0x90B113Cf662039394D28505f51f0B1B4678Cc3b5", - [ + "861085838114027", + "158" + ], [ - "219654135446081", - "12564997296" - ] - ] - ], - [ - "0x90e28DcF9b8ADED9405b2270E6Ff8eBC5d399C50", - [ + "861085838114185", + "158" + ], [ - "580032854468122", - "88320699942" - ] - ] - ], - [ - "0x913c72456D6e3CeEa44Aa49a76B2DF494CED008F", - [ + "861085838114343", + "158" + ], [ - "558624634802147", - "1237233093659" - ] - ] - ], - [ - "0x921Ed81DeE5099d700D447a5Acb33fC65Ba6bf96", - [ + "861085838114501", + "158" + ], [ - "84457739949221", - "34043324970" - ] - ] - ], - [ - "0x922d012c7E8fCe3C46ac761179Bdb6d16246782D", - [ + "861085838114659", + "158" + ], [ - "88955798195330", - "25000000000" + "861085838114817", + "158" ], [ - "624243295610454", - "69069767441" - ] - ] - ], - [ - "0x923CC3D985cE69a254458001097012cb33FAb601", - [ + "861085838114975", + "158" + ], [ - "249612009457166", - "4073310240" + "861085838115133", + "158" ], [ - "322124343236298", - "166137507314" + "861085838115291", + "158" ], [ - "483902259120899", - "107641561256" + "861085838115449", + "158" ], [ - "744791150134115", - "7566204130" - ] - ] - ], - [ - "0x925753106FCdB6D2f30C3db295328a0A1c5fD1D1", - [ + "861085838115607", + "158" + ], [ - "28489123737390", - "4974815" + "861085838115765", + "158" ], [ - "343041139126193", - "95838400000" - ] - ] - ], - [ - "0x925a3A49f8F831879ee7A848524cEfb558921874", - [ + "861085838115923", + "158" + ], [ - "789556545675975", - "477950000000" - ] - ] - ], - [ - "0x925D19C24fa0b14e4eFfBE6349E387f0751f8f36", - [ + "861085838116081", + "158" + ], [ - "201091928088141", - "17624219070" - ] - ] - ], - [ - "0x9260ae742F44b7a2e9472f5C299aa0432B3502FA", - [ + "861085838446610", + "160" + ], [ - "217366504449555", - "302171" + "861085838446770", + "160" ], [ - "217531915353395", - "8958398331" + "861085838446930", + "160" ], [ - "218296843888721", - "80071865513" + "861085838447090", + "159" ], [ - "224631428800796", - "22378" + "861085838447249", + "159" ], [ - "231844168579875", - "306052702649" + "861085838447408", + "159" ], [ - "376516373148891", - "1755109" + "861085838447567", + "159" ], [ - "380624351115891", - "67650148740" + "861085838447726", + "159" ], [ - "395424902256127", - "6675646701" + "861085838447885", + "159" ], [ - "401212958523891", - "54089424183" + "861085838448044", + "159" ], [ - "643927624780761", - "11229570252" + "861085838448203", + "159" ], [ - "644546638392961", - "291802547" + "861085838448362", + "159" ], [ - "646780136970742", - "8953406250" + "861085838448521", + "159" ], [ - "646810991621895", - "8729437500" + "861085838448680", + "159" ], [ - "647028402460741", - "18406312500" + "861085838448839", + "159" ], [ - "647238526691033", - "17103187500" + "861085838448998", + "159" ], [ - "647587851825895", - "11928928125" + "861085838449157", + "159" ], [ - "650150114947102", - "30073981383" + "861085838449316", + "159" ], [ - "654554821960398", - "2548987716" + "861085838449475", + "159" ], [ - "654977582470147", - "2369890980" + "861085838449634", + "159" ], [ - "664868558503085", - "115005092260" + "861085838449793", + "159" ], [ - "667337080209108", - "100000000000" + "861085838480292", + "160" ], [ - "667437080209108", - "84653359213" - ] - ] - ], - [ - "0x92aCE159E05d64AfcB6F574CB76CeCE8da0C91aB", - [ + "861085838480452", + "160" + ], [ - "299318297064041", - "56184744549" - ] - ] - ], - [ - "0x92e8E8760aBa91467A321230EF3ba081aD3998Fb", - [ + "861085838480612", + "159" + ], [ - "638142095832193", - "89554550" + "861085838480771", + "159" ], [ - "638276532104054", - "5326837099" - ] - ] - ], - [ - "0x930836bA4242071FEa039732ff8bf18B8401403E", - [ + "861085838480930", + "159" + ], [ - "78615049172294", - "2221663677" + "861085838481089", + "159" ], [ - "217475674512777", - "11890755761" + "861085838481248", + "159" ], [ - "299133073539652", - "93793524292" + "861085838481407", + "159" ], [ - "866979581798975", - "5154270000" + "861085838481566", + "159" ], [ - "912080623426716", - "22562763887" - ] - ] - ], - [ - "0x9336a604077688Ae5bB9e18EbDF305d81d474817", - [ + "861104013698685", + "158" + ], [ - "507627505426137", - "16376776057" - ] - ] - ], - [ - "0x9383E26556018f0E14D8255C5020d58b3f480Dac", - [ + "861104013698843", + "158" + ], [ - "221721022666875", - "88075053596" - ] - ] - ], - [ - "0x9389dD268Bb9758Bc73E9715d7C129b5A7dAa228", - [ + "861104013699001", + "158" + ], [ - "415361829991557", - "21739077662" - ] - ] - ], - [ - "0x9399943298b25632b21f4d1FA75DB0C5b8d457C5", - [ + "861104013699159", + "476" + ], [ - "342893609901961", - "12098559997" + "861104013699635", + "634" ], [ - "344871912132732", - "28386322608" - ] - ] - ], - [ - "0x93A185CD1579c015043Af80da2D88C90240Ab3a9", - [ + "861104013700269", + "793" + ], [ - "363871731464758", - "67603779457" + "861104013701062", + "952" ], [ - "470298210971887", - "82596094458" + "861104013702172", + "1110" ], [ - "582132866585744", - "152697324377" - ] - ] - ], - [ - "0x93b34d74a134b403450f993e3f2fb75B751fa3d6", - [ + "861104480230238", + "1268" + ], [ - "235668949340980", - "139782800000" - ] - ] - ], - [ - "0x93C950E36f3C155B2141f1516b7ea5B6D15eD981", - [ + "861104480232140", + "1427" + ], [ - "768601886344092", - "32526495264" + "861104480234359", + "1585" ], [ - "860250156865870", - "35738780868" + "861104480236895", + "1743" ], [ - "868255530067476", - "89704746985" - ] - ] - ], - [ - "0x93d4E7442F62028ca0a44df7712c2d202dc214B9", - [ + "861104480239747", + "1902" + ], [ - "153777795374191", - "148859700937" - ] - ] - ], - [ - "0x93E4c75ff6e0C7BC4Bcfc7CA2F19e6733d6009Eb", - [ + "861104480242916", + "2060" + ], [ - "76137278825671", - "1990688953" + "861104480246401", + "2218" ], [ - "643070034423361", - "6711451596" - ] - ] - ], - [ - "0x943B339eBa71F8B3a26ab6d9E7A997C56E2C886f", - [ + "861104480248619", + "158" + ], [ - "118268129285100", - "16859278098" - ] - ] - ], - [ - "0x94877DA8371d17C72fFE0Ab659A7e0B3bAad1a74", - [ + "861104480248935", + "158" + ], [ - "343508462299842", - "21014656050" - ] - ] - ], - [ - "0x94cf16A6C45474B05d383d8779479C69f0c5a07A", - [ + "861104480249251", + "158" + ], [ - "580121175168064", - "85134042441" - ] - ] - ], - [ - "0x94Ff138F71b8B4214e70d3bf6CcF73b3eb4581cB", - [ + "861104480249883", + "316" + ], [ - "83647572521207", - "18782949347" + "861104480250199", + "158" ], [ - "271861492103884", - "19812902768" + "861104480250515", + "158" ] ] ], [ - "0x9532Af5d585941a15fDd399aA0Ecc0eF2a665DAa", + "0xa73329C4be0B6aD3b3640753c459526880E6C4a7", [ [ - "38045439233929", - "14316608969" + "342007094123381", + "5537799063" ] ] ], [ - "0x953Ba402AE27a6561e09edFDF12A2F5D4e7e9C95", + "0xa7be8b7C4819eC8edd05178673575F76974B4EaA", [ [ - "203417856117845", - "45234008042" + "643105932414433", + "3504500000" ] ] ], [ - "0x954C057227b227f56B3e1D8C3c279F6aF016d0e5", + "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2", [ [ - "76194265704929", - "3500000000" - ], - [ - "646832204344041", - "177292448" + "227302500823517", + "91254470715" ], [ - "646841938136489", - "152188010" + "240936644343173", + "172400000000" ] ] ], [ - "0x9558d273A81CF0b41931C78B502c4CB2Bd3deb42", + "0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85", [ [ - "131067170257727", - "423037526400" + "647522463818695", + "70976639" ] ] ], [ - "0x955Ebe20Caf60CdCD877b1A22B16143C8A30C6b6", + "0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7", [ [ - "355295604996220", - "17574315355" + "524680103453466", + "565602262874" ], [ - "559861867895806", - "7681062381" + "531965502653124", + "631379688396" ], [ - "588875863204433", - "2978711605" - ] - ] - ], - [ - "0x95B422fBe8c6f3a70cEA4d15F178A9d45e5DAB13", - [ - [ - "563601797802308", - "150555000000" + "533822032849799", + "1016708705478" ] ] ], [ - "0x96154551Aca106BEb4179EFA04cDCCAfB0d31C1e", + "0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5", [ [ - "321946865430555", - "17115881788" + "322943294893160", + "8758397681" ] ] ], [ - "0x96b793d04E0D068083792E4D6E7780EEE50755Fa", + "0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe", [ [ - "402932963276600", - "30982753569" + "624708043376039", + "5666343221" ] ] ], [ - "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", + "0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c", [ [ - "563752352802308", - "102495000000" - ], - [ - "566326224363477", - "253050000000" - ], - [ - "568613671950815", - "253050000000" - ], - [ - "569509116433715", - "253050000000" - ], - [ - "572451504525253", - "253050000000" + "28391158520616", + "5664262851" ], [ - "595080378032834", - "10000000000" + "31624276642782", + "827500000" ], [ - "672201516338595", - "49886373590" + "32010465599710", + "2827500000" ], [ - "742850925745520", - "13729367592" + "32163187849710", + "827500000" ], [ - "742864655113112", - "272041210686" - ] - ] - ], - [ - "0x96E4FD50CD0A761528626fc072Da54ADFD2F8593", - [ - [ - "741719419577984", - "1466608" + "32180546599710", + "468750000" ] ] ], [ - "0x96e5aAcf14E93E6Bd747C403159526fa484F71dC", + "0xA92b09947ab93529687d937eDf92A2B44D2fD204", [ [ - "340404094520260", - "3964784011" + "174457557935439", + "2252016869" ], [ - "646482350566546", - "15589908000" + "217090244886952", + "100017300000" ] ] ], [ - "0x96e6c919DCb6A3aD6Bb770cE5e95Bc0dB9b827d6", + "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", [ [ - "282819759198190", - "269171533434" + "647552789487981", + "25673034" ] ] ], [ - "0x9728444E6414E39d0F7F5389ca129B8abb4cB492", + "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", [ [ - "480577854120899", - "3324405000000" - ], - [ - "631799252766314", - "1813500000" - ], - [ - "643804834253676", - "6721835647" + "342102180028527", + "9515722669" ] ] ], [ - "0x97Ada2E26C06C263c68ECCe43756708d0f03D94A", + "0xA97661df0380FF3eB6214709A6926526E38a3f68", [ [ - "220240212248773", - "104797064592" + "579063492093806", + "43896808582" ] ] ], [ - "0x97B10F1d005C8edee0FB004af3Bb6E7B47c954fF", + "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", [ [ - "679499042972244", - "1010851037" + "189133019330752", + "32609949600" ], [ - "679985431655992", - "5054528890" + "237255472873302", + "41700155407" ], [ - "911892086318462", - "14908452858" - ] - ] - ], - [ - "0x97b60488997482C29748d6f4EdC8665AF4A131B5", - [ - [ - "18053754491380", - "122517511" - ] - ] - ], - [ - "0x97c46EeC87a51320c05291286f36689967834854", - [ + "650798610280868", + "2704447617" + ], [ - "415490440421248", - "60177474475" - ] - ] - ], - [ - "0x97DaE5976eE1D6409f44906bEa9Bf88FEE0bF672", - [ + "652198660709813", + "2233193957" + ], [ - "826335238626477", - "9112774391" + "661861990183905", + "96716493785" ] ] ], [ - "0x97E89f88407d375cCF90eC1B710B5A914eB784Af", + "0xa9b13316697dEb755cd86585dE872ea09894EF0f", [ [ - "201768350656481", - "1844339969" - ], - [ - "220224852015278", - "6971402273" + "140155656908183", + "4149923574" ], [ - "264821742218510", - "14054479986" + "198971377368461", + "18087016900" ], [ - "310876801024927", - "8504661454" - ] - ] - ], - [ - "0x97FDC50342C11A29Cc27F2799Cd87CcF395FE49A", - [ - [ - "428374263505395", - "9378468172" + "211708788713612", + "10681995985" ], [ - "586115544020889", - "50921590468" + "241399390159934", + "842071924045" ], [ - "595214601590334", - "15218730000" - ] - ] - ], - [ - "0x981793123af0E6126BEf8c8277Fdffec80eB13fd", - [ - [ - "649010129912775", - "665549350" + "384563894405801", + "115228517177" ], [ - "649027243062125", - "483108332" + "563854847802308", + "18284000000" ], [ - "649287757760638", - "69640042" - ] - ] - ], - [ - "0x9832eE476D66B58d185b7bD46D05CBCbE4e543e1", - [ + "564151486302308", + "18284615400" + ], [ - "668901559471943", - "2552486513" - ] - ] - ], - [ - "0x988fB2064B42a13eb556DF79077e23AA4924aF20", - [ + "566633249231746", + "18284615400" + ], [ - "96723333293899", - "17313210068" + "569490831818315", + "18284615400" ], [ - "217902719272293", - "226251708976" - ] - ] - ], - [ - "0x9893360c45EF5A51c3B38dcBDfe0039C80fd6f60", - [ + "572704554525253", + "18284615400" + ], [ - "318373329094766", - "101752513973" + "595117800435834", + "12085354500" + ], + [ + "640930157267749", + "65849399034" ] ] ], [ - "0x989c235D8302fe906A84D076C24e51c1A7D44E3C", + "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c", [ [ - "656118292039843", - "2141035469" + "31816265099710", + "59900000000" ], [ - "659821030952031", - "142619335500" - ] - ] - ], - [ - "0x990cf47831822275a365e0C9239DC534b833922D", - [ + "31935590099710", + "74875500000" + ], [ - "267334127487509", - "3651796730" - ] - ] - ], - [ - "0x9913DBA3ABcc837Ec9DABea34F49b3FbE431685a", - [ + "32088312349710", + "74875500000" + ], [ - "562079457802308", - "379575000000" + "563579921802308", + "21876000000" ], [ - "565096894810977", - "379575000000" + "564422820917708", + "21876172500" ], [ - "566912175347146", - "379575000000" + "566153593653477", + "21876172500" ], [ - "567901195967146", - "379575000000" + "569017476488315", + "21876172500" ], [ - "570422537669484", - "379575000000" + "569762166433715", + "21876172500" ], [ - "571411558289484", - "379575000000" + "572429628352753", + "21876172500" ] ] ], [ - "0x992C5a47F13AB085de76BD598ED3842c995bDf1c", + "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", [ [ - "770897210700702", - "32781647269" - ] - ] - ], - [ - "0x995D1e4e2807Ef2A8d7614B607A89be096313916", - [ + "28870881002740", + "7927293103" + ], [ - "141100334358920", - "3759398496" + "33175764242262", + "2879757656" ], [ - "157546915049126", - "1894286900" + "33287034809521", + "2000002613" ], [ - "167724340170029", - "7142857142" + "67071383981721", + "4370751822" ], [ - "201063937145997", - "2857625611" + "76001219652173", + "2000000" ], [ - "217470159827742", - "4221510559" + "224377827434669", + "8843521858" ], [ - "262000538295619", - "1941820772" + "227266143617682", + "36357205835" ], [ - "429969815360084", - "6469033333" + "346980492268033", + "299504678878" ], [ - "430040931045763", - "7468303231" + "390489917323118", + "30009118039" ], [ - "634268733708050", - "10587087636" + "390714321832800", + "15011668209" ], [ - "634481097972888", - "857142857" + "496313316602869", + "14480945853" ], [ - "634485782133373", - "1788298206" + "496327797548722", + "17563125222" ], [ - "636910753572051", - "20630903371" + "574176328586258", + "11373869605" ], [ - "641737331477120", - "4335852529" + "581926056394610", + "57230000000" ], [ - "648129956489413", - "12056682276" + "582414831630740", + "58387156830" ], [ - "672730845984332", - "4306282320" + "646758540482222", + "200935620" ], [ - "679500053823281", - "844417120" + "648099627744347", + "7145929778" ], [ - "741257694168719", - "95204051" + "768350264491863", + "97750210" ], [ - "757912612741718", - "38494858016" + "799970499717615", + "199999867679" ], [ - "763876080034612", - "623293283" + "859839460259246", + "49999681340" ], [ - "764083981653091", - "62649720" + "861579337591263", + "20955496102" ], [ - "764093598842759", - "6707198969" + "866501316671921", + "3915489816" ], [ - "768095325828979", - "19256876112" + "867998656653702", + "3760487192" ], [ - "848062102251836", - "58373882896" + "868004210064042", + "11148893919" ], [ - "848140906334524", - "96391325008" + "868717458995563", + "137089560126" ], [ - "860099248890927", - "6689760000" + "882380209424876", + "25123931061" ] ] ], [ - "0x997563ba8058E80f1E4dd5b7f695b5C2B065408e", + "0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f", [ [ - "250927013915742", - "25000000000" + "553814968232795", + "1000000" + ], + [ + "553814969232795", + "4769665935949" ] ] ], [ - "0x9980234b18408E07C0F74aCE3dF940B02DD4095c", + "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", [ [ - "883529586723571", - "5308261827" + "86212387135166", + "9412000000" ] ] ], [ - "0x99997957BF3c202446b1DCB1CAc885348C5b2222", + "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", [ [ - "224631428823174", - "22606820288" + "31662554742782", + "21750" ], [ - "237800674733611", - "66551024044" + "790724858318681", + "201654015884" + ], + [ + "805283832227311", + "122955165365" ] ] ], [ - "0x99cAEE05b2293264cf8476b7B8ad5e14B9818a3b", + "0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01", [ [ - "767310292972398", - "1824412499" + "270431731940789", + "35213496314" ] ] ], [ - "0x99e8845841BDe89e148663A6420a98C47e15EbCe", + "0xaaEB726768606079484aa6b3715efEEC7E901D13", [ [ - "667899290416813", - "2145758453" + "164232302945961", + "52342902973" ] ] ], [ - "0x99f39AE0Af0D01614b73737D7A9aa4e2bf0D1221", + "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3", [ [ - "190844375756353", - "112457271309" + "396371740775536", + "132692764932" + ], + [ + "595154386328334", + "12415183500" ] ] ], [ - "0x9A00BEFfa3fc064104b71f6B7EA93bAbDC44D9dA", + "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", [ [ - "27675714415954", - "28428552478" + "78583733231186", + "1178558112" ], [ - "28382015360976", - "3696311380" + "87051010845698", + "12909150685" ], [ - "31670582016164", - "10000000000" + "87849021681484", + "3600000000" ], [ - "31768149901004", - "1262870028" - ], + "87852621681484", + "800000000" + ] + ] + ], + [ + "0xABC508DdA7517F195e416d77C822A4861961947a", + [ [ - "32346871499710", - "3745346177" + "611465268974532", + "5766000000" ], [ - "32350616845887", - "279480420" + "611565632974532", + "108706000000" ], [ - "32374040679120", - "10949720000" - ], + "859912145350487", + "61408881869" + ] + ] + ], + [ + "0xAbe1ee131c420b5687893518043C5df21E7Da28f", + [ [ - "38665412577552", - "24234066624" - ], + "219174134154064", + "257767294743" + ] + ] + ], + [ + "0xaBe78350f850924bAfF4B7139c17932d4c0560C5", + [ [ - "38689646644176", - "25000000000" + "170355877646894", + "103277281284" ], [ - "38771428831519", - "765933376" - ], + "186591806305035", + "119796085879" + ] + ] + ], + [ + "0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2", + [ [ - "38772194764895", - "15534457850" - ], + "532675989297032", + "13095000100" + ] + ] + ], + [ + "0xac34CF8CF7497a570C9462F16C4eceb95750dd26", + [ [ - "41290690886174", - "33333333333" - ], + "558584635168744", + "8664709191" + ] + ] + ], + [ + "0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE", + [ [ - "41373045659339", - "23121000000" + "143354831843541", + "653648140" ], [ - "41397566242672", - "22053409145" + "267347914229767", + "50626218743" ], [ - "60450977817664", - "25794401425" - ], + "595274550370334", + "30610750000" + ] + ] + ], + [ + "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", + [ [ - "60476772219089", - "57688204600" + "70537827998930", + "394859823062" ], [ - "70456530221510", - "18433333333" + "181019314406176", + "26533824991" ], [ - "72513985814422", - "14491677571" + "191825120066350", + "32755674081" ], [ - "76155330934072", - "31663342271" + "204414095372189", + "466944255800" ], [ - "76210249214022", - "5833333333" - ], + "918515480200659", + "103418450000" + ] + ] + ], + [ + "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", + [ [ - "78786823008925", - "60000000000" + "167664059643126", + "10271881722" ], [ - "86769330994210", - "21622894540" + "173335964650235", + "50944632063" ], [ - "88930464353484", - "20159065566" + "174153752764497", + "51388130513" ], [ - "107758212738194", - "26283248584" - ], + "340816250327274", + "13849594030" + ] + ] + ], + [ + "0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8", + [ [ - "107784495986778", - "73418207324" - ], + "634757739139885", + "1075350000" + ] + ] + ], + [ + "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0", + [ [ - "164387799728437", - "209998797626" + "396280573607632", + "1310000000" ], [ - "167679367131210", - "584126946" - ], + "547738448758023", + "2624259160" + ] + ] + ], + [ + "0xaDd2955F0efC871902A7E421054DA7E6734d3DCA", + [ [ - "171855277435831", - "38451787955" + "278872415592357", + "1605049904" ], [ - "185657906453513", - "65394189314" - ], + "278874020642261", + "1605019105" + ] + ] + ], + [ + "0xae0aAF5E7135058919aB10756C6CdD574a92e557", + [ [ - "228435750352276", - "5440000000" - ], + "143154831843541", + "200000000000" + ] + ] + ], + [ + "0xae5c0ff6738cE54598C00ca3d14dC71176a9d929", + [ [ - "245016829121327", - "43975873054" - ], + "266124689762314", + "14563973655" + ] + ] + ], + [ + "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", + [ [ - "272983487213885", - "24345144843" + "150202730332467", + "98095645584" ], [ - "278810931077752", - "61482926829" - ], + "496833602545561", + "787707309561" + ] + ] + ], + [ + "0xAeB2914f66222Fa7Ad138e128a0575048Bc76032", + [ [ - "345065787237708", - "11163284655" - ], + "643849421808137", + "6652871947" + ] + ] + ], + [ + "0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e", + [ + [ + "443844836815022", + "15594289962" + ] + ] + ], + [ + "0xAf93048424E9DBE29326AD1e1B00686760318f0D", + [ [ - "384698308395580", - "109943584385" + "325970651658765", + "9082486597" ], [ - "385029414062246", - "85561000000" - ], + "542294295589408", + "17206071534" + ] + ] + ], + [ + "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", + [ [ - "409893164256334", - "1771119180000" + "657182189000929", + "25000000000" ], [ - "470830034187107", - "6357442000000" + "657229852916854", + "2979694125" ], [ - "634257675267110", - "11058440940" + "658066484502639", + "2015000000" ], [ - "634663980396176", - "51022870" + "664619505628982", + "15403726711" ], [ - "679984678617121", - "582008800" + "667312080209108", + "25000000000" ], [ - "686252659342435", - "12828436637551" + "670173265504450", + "40000000000" ], [ - "701165945775675", - "4725277211064" - ], + "672719969501772", + "10876482560" + ] + ] + ], + [ + "0xafaAa25675447563a093BFae2d3Db5662ADf9593", + [ [ - "712925633754929", - "7525989446089" - ], + "637115742967476", + "637343258" + ] + ] + ], + [ + "0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0", + [ [ - "742249808817806", - "125000000" - ], + "396925635091619", + "2200000000" + ] + ] + ], + [ + "0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A", + [ [ - "760295074894366", - "58283867892" + "507127205293221", + "60620015754" ], [ - "761862357338505", - "193914722147" + "516313933449950", + "49630409652" ], [ - "764182912505930", - "110218533197" - ], + "533061821284421", + "60249402002" + ] + ] + ], + [ + "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f", + [ [ - "862566363552351", - "3470058078836" + "769134792577607", + "1295600000" ], [ - "873232203687519", - "875826549" + "770964524215275", + "10866330177" ], [ - "873233079514068", - "1" + "782603527725793", + "19357500000" ], [ - "873233079514069", - "8767124173450" + "783356308498157", + "20255000000" ] ] ], [ - "0x9A428d7491ec6A669C7fE93E1E331fe881e9746f", + "0xb0226e96c71F94C44d998CE1b34F6a47c3A82404", [ [ - "28079737718067", - "38853754100" - ], - [ - "28524969242262", - "2368065675" - ], + "336175075840856", + "767141673418" + ] + ] + ], + [ + "0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A", + [ [ - "649543303268638", - "47090058" + "570994112669484", + "2013435000" ] ] ], [ - "0x9A5d202C5384a032473b2370D636DcA39adcC28f", + "0xB0827d21e58354aa7ac05adFeb60861f85562376", [ [ - "41274338068902", - "10701754385" + "648060618871896", + "108280308" ] ] ], [ - "0x9ADA95Ce2a188C51824Ef76Dd49850330AF7545F", + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", [ [ - "28389711672356", - "104406740" + "462646168927", + "1666666666" ], [ - "33289034812134", - "202192060" + "28059702904241", + "1259635749" ], [ - "33289237004194", - "1000000" + "28368015360976", + "10000000000" ], [ - "33300426361001", - "1000000" + "28385711672356", + "4000000000" ], [ - "33300427361001", - "5000000" + "28553316405699", + "56203360846" ], [ - "33300432361001", - "5000000" + "28904918772117", + "509586314410" ], [ - "33300437361001", - "13656860" + "31590227810128", + "15764212654" ], [ - "61044373437038", - "25689347322" + "31772724860478", + "43540239232" ], [ - "76147233501577", - "6856167984" + "32013293099710", + "15000000000" ], [ - "429960272856509", - "9542503575" + "32350896326307", + "22543240" ], [ - "561871994522568", - "13450279740" + "33106872744841", + "6434958505" ], [ - "643790816429569", - "7279671848" + "33262951017861", + "9375000000" ], [ - "646935480690670", - "6157413604" + "33290510627174", + "565390687" ], [ - "647192437507145", - "407318967" + "38722543672289", + "250000000" ], [ - "649248676270246", - "9479483" + "61000878716919", + "789407727" ], [ - "650449504800190", - "2539843750" + "61252565809868", + "616986784925" ], [ - "651725675783863", - "1673375675" + "72536373875278", + "200000000" ], [ - "653079279087019", - "3142881940" + "75784287632794", + "2935934380" ], [ - "668346065728228", - "1702871488" + "75995951619880", + "5268032293" ], [ - "676865712743974", - "13348297600" + "76202249214022", + "8000000000" ], [ - "700043849883120", - "15882769" + "78570049172294", + "5603412867" ], [ - "741061075495092", - "11965994685" + "78582810315624", + "57126564" ], [ - "741274318742427", - "170840041445" + "87378493677209", + "18540386828" ], [ - "768308228493998", - "500910625" - ] - ] - ], - [ - "0x9af623bE3d125536929F8978233622A7BFc3feF4", - [ - [ - "79296814826113", - "1185063194630" + "107446086823768", + "4363527272" ], [ - "188132972372439", - "634988906630" - ] - ] - ], - [ - "0x9B1AC8E6d08053C55713d9aA8fDE1c53e9a929e2", - [ - [ - "67661612435034", - "7500000000" + "118322555232226", + "5892426278" ], [ - "326657149277910", - "365524741141" + "149476539987788", + "595705787279" ], [ - "327607470128575", - "221232078910" - ] - ] - ], - [ - "0x9B6425F32361eE115C7A2170349a8f5a3A51b0F0", - [ - [ - "201260587940851", - "66013841091" - ] - ] - ], - [ - "0x9b69b0e48832479B970bF65F73F9CcD125E09d0F", - [ - [ - "561734572056961", - "18261807412" + "150623260553725", + "436653263484" ], [ - "561752833864373", - "22055244259" - ] - ] - ], - [ - "0x9b8dB915fA36e5d9Fb65974183172E720fDf3B52", - [ + "157789513042632", + "46130596396" + ], [ - "141778150492051", - "8228218644" - ] - ] - ], - [ - "0x9BB4B2b03d3cD045a4C693E8a4cF131f9C923Acb", - [ + "160648337135830", + "30093729527" + ], [ - "661999206613204", - "25000000000" - ] - ] - ], - [ - "0x9C0BefD611fb07C46eCbA0D790816a8A14045C0E", - [ + "161092113186340", + "738480151497" + ], [ - "343608586695690", - "6294220121" - ] - ] - ], - [ - "0x9c176634A121A588F78B3E5Dc59e2382398a0C3C", - [ + "162734759646450", + "737048150894" + ], [ - "647881759045440", - "106457720" + "163471807797344", + "717665153748" ], [ - "647898572853160", - "795636" - ] - ] - ], - [ - "0x9c211891aFFB1ce6CF8A3e537efbF2f948162204", - [ + "170459154928178", + "85849064810" + ], [ - "577935041861106", - "59036591791" - ] - ] - ], - [ - "0x9c695f16975b57f730727F30f399d110cFc71f10", - [ + "174803269011285", + "323070981235" + ], [ - "461882379832", - "763789095" + "180071240663041", + "81992697619" ], [ - "501577877086", - "8058429169" + "186580654253728", + "2582826931" ], [ - "28378015360976", - "474338291" + "187225592453120", + "100639688860" ], [ - "632732083964954", - "1303739940" + "193229271440090", + "76640448070" ], [ - "633969304929591", - "49424794604" + "203381659178232", + "749736733" ], [ - "634191999230784", - "2612080692" + "210525931443438", + "62132577144" ], [ - "699433001774655", - "535830837294" + "214537269214618", + "22947230644" ], [ - "721395262187317", - "14658916075" + "214926241229465", + "22806010929" ], [ - "740509548356246", - "96735502348" + "217474381338301", + "1293174476" ], [ - "826252078588592", - "16970820644" + "220144194502828", + "47404123300" ], [ - "885461415329976", - "566999495822" - ] - ] - ], - [ - "0x9C6f40999C82cd18f31421596Ca3b1C5C5083048", - [ + "227504823719295", + "18305090101" + ], [ - "644385379072596", - "2088841809" - ] - ] - ], - [ - "0x9c7ac7abbD3EC00E1d4b330C497529166db84f63", - [ + "228344590940664", + "13645890242" + ], [ - "323003646918374", - "27365907771" - ] - ] - ], - [ - "0x9c88cD7743FBb32d07ED6DD064aC71c6C4E70753", - [ + "232704752844281", + "204706266628" + ], [ - "28868829340297", - "1785516900" + "234363994367301", + "101810011675" ], [ - "28870614857197", - "266145543" + "235248755463285", + "30184796751" ], [ - "76029285005811", - "2" - ] - ] - ], - [ - "0x9c8fc7e1BEaA9152B555D081C4bcC326cB13C72b", - [ + "247742878911682", + "275332296988" + ], [ - "385694828784542", - "3478109734" + "253931736847120", + "290236580727" ], [ - "385719624398436", - "3179294885" + "258450328339971", + "18991534679" ], [ - "395508552599182", - "2015623893" + "261970235265316", + "30303030303" ], [ - "605147868070297", - "210641200000" + "267569815164874", + "20246736273" ], [ - "632638886261264", - "76135000000" + "272319508243958", + "438603533273" ], [ - "664655112978280", - "14440162929" + "316297504741935", + "1134976125606" ], [ - "675156678410802", - "83910292215" + "317764819055205", + "94698329152" ], [ - "676829643561375", - "10000000000" - ] - ] - ], - [ - "0x9cFD5052DC827c11a6B3Ab2BB5091773765ea2c8", - [ + "317859517384357", + "291195415400" + ], [ - "141954294169149", - "30687677344" - ] - ] - ], - [ - "0x9D1334De1c51a46a9289D6258b986A267b09Ac18", - [ + "326213533536434", + "11833992957" + ], [ - "624548747558738", - "15810994142" - ] - ] - ], - [ - "0x9D496BA09C9dDAE8de72F146DE012701a10400CC", - [ + "327022674019051", + "298522321813" + ], [ - "298511519013444", - "217051856006" - ] - ] - ], - [ - "0x9d5b2a8Ad23E7d870CFa7c7B88A74C64FA098b46", - [ + "333622810114113", + "200755943301" + ], [ - "32028293099710", - "14856250000" + "335529346845329", + "13913764863" ], [ - "84597875356697", - "133850744098" + "338910099578361", + "72913082044" ], [ - "97016486455371", - "254834033922" + "340276769047777", + "33796000000" ], [ - "158734314278093", - "202188482247" + "344515718397376", + "18025000000" ], [ - "171941305124226", - "512087118743" + "344533743397376", + "18025000000" ], [ - "172453392242969", - "167963854918" + "344618618497376", + "81000597500" ], [ - "250740780766453", - "6745238037" + "344699619094876", + "31013750000" ], [ - "395286775789415", - "32560000000" + "344833670732808", + "5702918963" ], [ - "564630258655208", - "32896500000" + "371379048315869", + "1015130348413" ], [ - "565841291995977", - "32896500000" + "375266078664282", + "1033269065963" ], [ - "569318757818315", - "32896500000" + "378227726508635", + "645363133" ], [ - "569955901513715", - "32896500000" + "400534613369686", + "132789821695" ], [ - "635871823538305", - "8232935488" + "404814012582428", + "13502469920" ], [ - "636053162040032", - "971681987" + "429076381887304", + "39624686375" ], [ - "637126106210329", - "3549072302" + "429976284393417", + "10590000000" ], [ - "637129677608084", - "6326081465" + "444973868346640", + "61560768641" ], [ - "638142185386743", - "70301972656" + "477195175494445", + "29857571563" ], [ - "638293184544519", - "3222535993" + "532670891057032", + "5098240000" ], [ - "638952019925396", - "53884687500" + "532689084297132", + "625506" ], [ - "644463766708048", - "12970687979" + "574387565763701", + "55857695832" ], [ - "644495136777647", - "14591855468" + "575679606872092", + "38492647384" ], [ - "645998771359546", - "402840000000" + "577679606726120", + "74848126691" ], [ - "646991286880741", - "10764000000" + "580465682607657", + "1581698780" ], [ - "648593843684716", - "9515295236" + "586069294420889", + "40303600000" ], [ - "659752492504115", - "68538447916" + "595338144020334", + "47102200000" ], [ - "682072110977139", - "44526000000" - ] - ] - ], - [ - "0x9d6019484f10D28e6A9E9C2304B9B0eDcb9ac698", - [ + "626184530707078", + "90718871797" + ], [ - "531849151603571", - "116351049553" + "628854228397766", + "372857584031" ], [ - "533550128922703", - "19753556385" + "629227085981797", + "216873485917" ], [ - "544213439498555", - "93587607857" - ] - ] - ], - [ - "0x9d71b1903F84a7f154D56E4EcA31245CfA8ff49C", - [ + "632733387704894", + "4395105822" + ], [ - "465366616460626", - "12745164567" + "633292566723256", + "391574385" ], [ - "534838741555277", - "19231055968" - ] - ] - ], - [ - "0x9e16025a87B5431AE1371dE2Da7DcA4047C64196", - [ + "634031481420456", + "3170719864" + ], [ - "145457231580719", - "24029099031" + "634034652140320", + "1827630964" ], [ - "187576828165577", - "27608467355" - ] - ] - ], - [ - "0x9e1e2beD5271a08a8E2Acc8d5ECF99eC5382cf7A", - [ + "634643031419046", + "20948977130" + ], [ - "189397241850520", - "74656417530" + "636333094290438", + "233865679687" ], [ - "634499611419046", - "143420000000" - ] - ] - ], - [ - "0x9eB97e6aee08EF7AC5F6b523886E10bb1Cd8DE9d", - [ + "637149167789946", + "4910026986" + ], [ - "151778101037835", - "204744106703" + "637351998004377", + "258192517612" ], [ - "430070314991709", - "1718500000" - ] - ] - ], - [ - "0x9ec0CF5fA0bD8754FDF2C3E827a8d0a87b50F6a4", - [ + "637761302275033", + "380793557160" + ], [ - "886028414825798", - "48979547469" - ] - ] - ], - [ - "0x9ec255F1AF4D3e4a813AadAB8ff0497398037d56", - [ + "639180990676042", + "199438094194" + ], [ - "682506977792619", - "12652582923" - ] - ] - ], - [ - "0x9eD25251826C88122E16428CbB70e65a33E85B19", - [ + "641522728201681", + "5800000000" + ], [ - "790034495675975", - "19551629204" - ] - ] - ], - [ - "0x9F083538a30e6bFe1c9E644C47D9E22cCC5cE56E", - [ + "641574417641439", + "154715717850" + ], [ - "236911541186226", - "1352237819" + "643046212115536", + "1220733194" ], [ - "408418430300088", - "1389648589" + "643059909351872", + "5072600938" ], [ - "634458769639996", - "2997137850" - ] - ] - ], - [ - "0x9f5F1f4dDbE827E531715Ee13C20A0C27451E3eE", - [ + "643616429319061", + "1117067455" + ], [ - "142090287304002", - "17901404645" + "643630556511892", + "3144911832" ], [ - "429116006573679", - "11930700081" - ] - ] - ], - [ - "0x9fA7fbA664a08E5b07231d2cB8E3d7D1E5f4641c", - [ + "643909821821812", + "6902000000" + ], [ - "76154089669561", - "1241264511" - ] - ] - ], - [ - "0x9Fa8cd4FacBeb2a9A706864cBE4c0170D6D3caE1", - [ + "643916723821812", + "10900958949" + ], [ - "279436643945150", - "3073743220711" - ] - ] - ], - [ - "0x9fbB12Ea7DC6dE6503b35dA4389DB3aecf8E4282", - [ + "643999292802533", + "8204345668" + ], [ - "88808287575483", - "30000000000" + "644007497148201", + "11854871050" ], [ - "96740646503967", - "17128687218" + "644045596517280", + "6544832392" ], [ - "229489538650748", - "32886283743" + "644057761258485", + "8182865200" ], [ - "401152958523891", - "60000000000" + "644065944123685", + "7516642526" ], [ - "609312164824779", - "1735981704349" - ] - ] - ], - [ - "0x9FbCB5a7d1132bF96E72268C24ef29b7433f7402", - [ + "644156421132344", + "3789921580" + ], [ - "636566959970125", - "151773247545" - ] - ] - ], - [ - "0xA00776576Ce1749a9A75Ca5bB7C6aE259b518Ca8", - [ + "644171938918668", + "9601229268" + ], [ - "660690919212731", - "289575171383" + "644278837940540", + "631861553" ], [ - "661622790183905", - "239200000000" + "644306806412385", + "12054054687" ], [ - "668099555175266", - "7477326571" + "644319149838335", + "10735050747" ], [ - "670969584019292", - "234760000000" + "644329884889082", + "14347680621" ], [ - "674505181593279", - "234450921461" + "644396277666556", + "6674520726" ], [ - "674739632514740", - "263907264047" + "644415322342082", + "6773000000" ], [ - "675273135381879", - "259861322259" + "644440076885807", + "2439339467" ], [ - "675532996704138", - "197622058472" + "644525199249437", + "6225710228" ], [ - "675730618762610", - "151122236793" + "644616712009539", + "14199853473" ], [ - "676029448628099", - "156891853803" + "644642611623012", + "12249630834" ], [ - "676355375239188", - "179430599503" - ] - ] - ], - [ - "0xa01b14d9fA355178408Dd873CB7C1F7aFd3C2151", - [ + "646758741417842", + "4969664107" + ], [ - "92502053320361", - "53620740838" - ] - ] - ], - [ - "0xa03BaeB1D8CcfdD1c5a72Bb44C11F7dcC89Ec0bc", - [ + "646871486506724", + "17642812500" + ], [ - "632158717283728", - "132492430252" - ] - ] - ], - [ - "0xa03E8d9688844146867dEcb457A7308853699016", - [ + "646914219232490", + "8605864430" + ], [ - "637610190521989", - "210060204" - ] - ] - ], - [ - "0xA09DEa781E503b6717BC28fA1254de768c6e1C4e", - [ + "646983796131611", + "1010894641" + ], [ - "808559640519864", - "3390839496" - ] - ] - ], - [ - "0xA0df63b73f3B8D4a8cE353833848D672e65Ad818", - [ + "647002050880741", + "9799080000" + ], [ - "202835949108939", - "22" - ] - ] - ], - [ - "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", - [ + "647046808773241", + "17984531250" + ], [ - "282604279025472", - "19163060173" + "647084629304491", + "23544562500" ], [ - "395376016689151", - "26717740160" - ] - ] - ], - [ - "0xA13b66B3dF4AF1c42c1F54b06b7FbCFd68962eD7", - [ + "647119660778668", + "15762838323" + ], [ - "764293131039127", - "5229504715" - ] - ] - ], - [ - "0xA17Afbe564BAE46352d01eCdC52682ffdBB7EAdf", - [ + "647151216777708", + "11761593750" + ], [ - "523468438510750", - "57354074175" + "647166440607362", + "9285468750" ], [ - "525245705716340", - "196968848290" + "647175726076112", + "16711431033" ], [ - "530603875619848", - "61988431714" + "647334889222283", + "22379191354" ], [ - "531536857228833", - "206618185436" + "647371497003533", + "6381630000" ], [ - "586955456756494", - "136890000000" + "647388734023467", + "9748779666" ], [ - "587932486316494", - "136890000000" + "647505902133654", + "6953600000" ], [ - "588236306066494", - "136890000000" + "647527562675656", + "8111120358" ], [ - "588540125816494", - "136890000000" + "647617732404338", + "19873525000" ], [ - "634979077385365", - "10413750000" + "647798301685196", + "7654771125" ], [ - "635251139802881", - "10413750000" - ] - ] - ], - [ - "0xA1c83E4f6975646E6a7bFE486a1193e2Fe736655", - [ + "647838858023565", + "29093546875" + ], [ - "85026199936365", - "3000000000" + "647908205457926", + "12756105568" ], [ - "88852883837163", - "4811715614" + "647978638361818", + "24834476562" ], [ - "96710970854679", - "12362439220" + "648017646545411", + "10268964843" + ], + [ + "648034585438303", + "11688871093" ], [ - "106834324920574", - "4912604718" + "648106773674125", + "3568208882" ], [ - "643886475933352", - "3765334850" - ] - ] - ], - [ - "0xa22f4c8E89070Ab2fa3EC5975DBcE143D8924Cd0", - [ - [ - "845407075505547", - "149022357044" - ] - ] - ], - [ - "0xA256Aa181aF9046995aF92506498E31E620C747a", - [ + "648110674034173", + "2331841959" + ], [ - "211328028616940", - "48907133253" + "648187497812653", + "10104336384" ], [ - "250772216022849", - "50223451852" - ] - ] - ], - [ - "0xa30BE96bb800aDB53B10eDDc4FE2844f824A26F6", - [ + "648233657616208", + "10357224170" + ], [ - "635189799238365", - "55984064516" + "648244014840378", + "8114610976" ], [ - "635432840138881", - "96417000000" - ] - ] - ], - [ - "0xa31CFf6aA0af969b6d9137690CF1557908df861B", - [ + "648252129451354", + "8545778006" + ], [ - "676729211151593", - "22234228333" + "648262194812840", + "8952959614" ], [ - "682011116351038", - "122067507" + "648271147772454", + "6063060479" ], [ - "682012314843498", - "508189060" + "648277210832933", + "20187647" ], [ - "686184845909654", - "67813432781" - ] - ] - ], - [ - "0xA32305d464D0C2F23aa3ce7f8aE08cc04a380714", - [ + "648277231020580", + "5001904811" + ], [ - "355648398557215", - "124964349871" - ] - ] - ], - [ - "0xA33be425a086dB8899c33a357d5aD53Ca3a6046e", - [ + "648287518441310", + "7377849726" + ], [ - "12998236449826", - "426119290214" + "648416302604421", + "20715605468" ], [ - "73062201497306", - "639498343615" + "648452542642294", + "21586449186" ], [ - "145584038361780", - "447994980945" + "648483189881961", + "20797810726" ], [ - "146717193948896", - "349624513178" + "648510092345893", + "15239253108" ], [ - "147733502440483", - "358107845085" + "648616078919292", + "8718470609" ], [ - "161945743337837", - "789016308613" + "648629542096134", + "21544183345" ], [ - "187637878190147", - "382459205759" + "648750501960130", + "10150581160" ], [ - "192336527239129", - "209422598089" + "648760652541290", + "23321057117" ], [ - "204912402135128", - "844577500760" + "648783994477207", + "23277498479" ], [ - "220380031906084", - "231048083326" + "648807289596036", + "20989718750" ], [ - "262067749659804", - "640903306175" + "648828279314786", + "20297082735" ], [ - "306964647833074", - "338382661514" + "648889660439973", + "41844097841" ], [ - "523998966576689", - "403876115080" + "649214012945345", + "22440187500" ], [ - "644357568047841", - "2333969425" + "649236472457547", + "7534311320" ], [ - "760721375485603", - "44211467824" + "649261133791064", + "23748160156" ], [ - "768308729410302", - "399538786" + "649656745149465", + "12205116299" ], [ - "774509663364768", - "69954674028" + "649693929475018", + "11667351669" ], [ - "860392158116449", - "34095737422" + "657232832610979", + "97443079393" ], [ - "861654004231708", - "3679385472" - ] - ] - ], - [ - "0xA36Aa9dbdB7bbC2c986a5e30386a057f8Aa38d9c", - [ + "657631435066681", + "35105723092" + ], [ - "575718099519476", - "32762422300" + "657741540789773", + "84888584622" ], [ - "605567098770297", - "210641200000" + "657971448171764", + "15036330875" ], [ - "836111814253126", - "153625996701" + "657986484502639", + "80000000000" ], [ - "845020731525698", - "149234921085" + "658147267102223", + "82507217675" ], [ - "859277327665173", - "150200542274" - ] - ] - ], - [ - "0xA371bDFc449B2770cc560A6BD2E2176c6E2dc797", - [ + "659366890690250", + "174474635475" + ], [ - "267140974896619", - "10071394154" - ] - ] - ], - [ - "0xA46322948459845Bb5d895ED9C1fdd798692a1dA", - [ + "665058906638905", + "92828595185" + ], [ - "157856472537094", - "4473579144" + "670156602457239", + "16663047211" ], [ - "220203807336965", - "10453702941" - ] - ] - ], - [ - "0xa48E7B26036360695be458D6904DE0892a5dB116", - [ + "670969471210715", + "112808577" + ], [ - "300546769579166", - "360670112242" - ] - ] - ], - [ - "0xa4BaD700438B907A781d5362bB3dEb7c0dC29dC5", - [ + "676535946061485", + "2683720" + ], [ - "267569813448805", - "1716069" + "676664914525249", + "18043478260" ], [ - "589787132206086", - "2588993459" - ] - ] - ], - [ - "0xa4f79238d3c5b146054C8221A85DC442Ad87b45D", - [ + "676683083298681", + "3118260869" + ], [ - "650651495333882", - "24618132" - ] - ] - ], - [ - "0xa4F7C258fD6c06ae54E19475A836Daf1c0D9A302", - [ + "679750611381961", + "234067235160" + ], [ - "344745112963643", - "23506738608" - ] - ] - ], - [ - "0xa50a686BcFcdd1Eb5b052C6E22c370EA1153cC15", - [ + "680095721530457", + "10113856826" + ], [ - "180058848381814", - "1317740918" + "680560311480251", + "10364574980" ], [ - "180491055783453", - "8737686936" - ] - ] - ], - [ - "0xA5124bD6d445e23642F8D41c1ebf3Cd20FCe3056", - [ + "681871200072623", + "12689035666" + ], [ - "448540020279257", - "424808836024" - ] - ] - ], - [ - "0xA5a8AC5d57a2831Db4Fb5c7988a88af25Eb34191", - [ + "682506977792619", + "12652582923" + ], [ - "78581810315624", - "1000000000" - ] - ] - ], - [ - "0xA5Cc7F3c81681429b8e4Fc074847083446CfDb99", - [ + "682844108475123", + "1148082700" + ], [ - "177603077453261", - "22497716826" - ] - ] - ], - [ - "0xa714B49Ff1Bae62E141e6a05bb10356069C31518", - [ + "706133899990342", + "2720589483246" + ], [ - "860392158080817", - "160" + "720495305315880", + "55569209804" ], [ - "860392158080977", - "160" + "721225229970053", + "55487912201" ], [ - "860392158081137", - "160" + "721409921103392", + "4415003338706" ], [ - "860392158081297", - "160" + "726480740731617", + "2047412139790" ], [ - "860392158081457", - "160" + "729812277370084", + "5650444595733" ], [ - "860392158081617", - "160" + "735554122237517", + "2514215964115" ], [ - "860392158081777", - "160" + "740648921884436", + "39104687507" ], [ - "860392158081937", - "160" + "741007335527824", + "48848467587" ], [ - "860392158082097", - "160" + "741720392463454", + "1213327771" ], [ - "860392158082257", - "160" + "741724318106214", + "903473746" ], [ - "860392158082417", - "160" + "741732026495866", + "17262110558" ], [ - "860392158110026", - "160" + "741842944533312", + "61092850308" ], [ - "860426253857405", - "160" + "743270084189585", + "44269246366" ], [ - "860426253857565", - "160" + "743356388661755", + "284047664" ], [ - "860426253857725", - "160" + "743356672709419", + "804932236" ], [ - "860426253857885", - "160" + "743357477641655", + "744601051" ], [ - "860426253858045", - "160" + "743358222242706", + "636559806" ], [ - "860426253858205", - "160" + "743358858802512", + "569027210" ], [ - "860426253858365", - "160" + "743359427829722", + "616622839" ], [ - "860426253858525", - "160" + "743360044452561", + "590416341" ], [ - "860426253858685", - "160" + "743360634868902", + "576948243" ], [ - "860426253858845", - "160" + "743361211817145", + "347174290" ], [ - "860426253859005", - "160" + "743361558991435", + "112939223481" ], [ - "860426253859165", - "160" + "743474498214916", + "37245408077" ], [ - "860426253859325", - "160" + "743511743622993", + "27738836042" ], [ - "860426253859485", - "160" + "743539482459035", + "36180207225" ], [ - "860426253859645", - "160" + "743575662666260", + "9251544878" ], [ - "860426253859805", - "160" + "743600698167087", + "4239282" ], [ - "860426253859965", - "160" + "743630495498696", + "25004744107" ], [ - "860426253860125", - "160" + "743655500242803", + "27838968460" ], [ - "860426253860285", - "160" + "743683339211263", + "1045028130" ], [ - "860426253860445", - "160" + "743715232207665", + "154091444" ], [ - "860426253860605", - "160" + "743715386299109", + "356610619" ], [ - "860426253860765", - "160" + "743715742909728", + "792560930" ], [ - "860426253860925", - "159" + "743716535470658", + "930442023" ], [ - "860426253861084", - "159" + "743717465912681", + "930527887" ], [ - "860426253861243", - "159" + "743718396440568", + "930718264" ], [ - "860426253861402", - "159" + "743719327158832", + "900100878" ], [ - "860426253861561", - "159" + "743720227259710", + "886888605" ], [ - "860426253861720", - "159" + "743721114148315", + "1195569000" ], [ - "860426253861879", - "159" + "743722931420691", + "332343086" ], [ - "860426253862038", - "159" + "743723263763777", + "983775747" ], [ - "860426253862197", - "159" + "743724247539524", + "409861551" ], [ - "860426253862356", - "159" + "743724657401075", + "97298663" ], [ - "860426253862515", - "159" + "743724754699738", + "86768693" ], [ - "860426253862674", - "159" + "743724841468431", + "33509916350" ], [ - "860426253862833", - "159" + "743758351384781", + "69774513803" ], [ - "860426253862992", - "159" + "743828125898584", + "21981814788" ], [ - "860426253863151", - "159" + "743850107713372", + "43182294" ], [ - "860426253863310", - "159" + "743850150895666", + "37264237" ], [ - "860426253863469", - "159" + "743850188159903", + "247711" ], [ - "860426253863628", - "159" + "743850188407614", + "417946" ], [ - "860426253863787", - "159" + "743850188825560", + "120504819738" ], [ - "860426253863946", - "159" + "743970693645298", + "178855695867" ], [ - "860426253864105", - "159" + "744149549341165", + "125886081790" ], [ - "860426253864264", - "159" + "744819318753537", + "98324836380" ], [ - "860426253864423", - "159" + "759669831627157", + "91465441036" ], [ - "860426253864582", - "159" + "759761297451604", + "12346431080" ], [ - "860426254274753", - "159" + "759773643882684", + "1557369578" ], [ - "860426254274912", - "159" + "759775201252262", + "18264975890" ], [ - "860426254275071", - "159" + "759793466228152", + "133677" ], [ - "860426254275230", - "159" + "759794285432848", + "26613224094" ], [ - "860426254275389", - "159" + "759820979493945", + "70435190" ], [ - "860426254275548", - "159" + "759821049929135", + "64820367" ], [ - "860426254275707", - "159" + "759821114749502", + "315142246" ], [ - "860426254275866", - "159" + "759821772251897", + "342469548" ], [ - "860426254276025", - "159" + "759822114721445", + "22786793078" ], [ - "860426254276184", - "158" + "759844955449185", + "62362349" ], [ - "860426254276342", - "158" + "759845017811534", + "79862410" ], [ - "860426254276500", - "158" + "759845097673944", + "78350903" ], [ - "860426254276658", - "158" + "759845176024847", + "81575013" ], [ - "860426255123753", - "158" + "759845257599860", + "81611843" ], [ - "860426260244926", - "158" + "759845339211703", + "79874694" ], [ - "860426260245084", - "158" + "759845419086397", + "79925681" ], [ - "860426260245242", - "158" + "759845499012078", + "79231634" ], [ - "860426260245400", - "158" + "759845578243712", + "73291169" ], [ - "860426260245558", - "158" + "759845651534881", + "61264703" ], [ - "860426260245716", - "158" + "759845766640518", + "56977225" ], [ - "860426260245874", - "158" + "759845823617743", + "71386527" ], [ - "860426260246032", - "158" + "759845895004270", + "75906832" ], [ - "860810927572524", - "158" + "759846058683685", + "75729409" ], [ - "860810927572682", - "158" + "759846134413094", + "27722926" ], [ - "860810927572840", - "158" + "759846162136020", + "30197986" ], [ - "860810927572998", - "158" + "759846192334006", + "158241812" ], [ - "860810927573156", - "158" + "759846350575818", + "123926293" ], [ - "860810927573314", - "158" + "759846474502111", + "124139589" ], [ - "860810927573472", - "158" + "759846598641700", + "25193251" ], [ - "860810927573630", - "158" + "759846623834951", + "25387540" ], [ - "860810927573788", - "158" + "759846649222491", + "665345" ], [ - "860810927685874", - "158" + "759846954659102", + "631976394" ], [ - "860810927686032", - "158" + "759847586635496", + "66958527" ], [ - "860810927686190", - "158" + "759847653594023", + "44950580" ], [ - "860810927686348", - "158" + "759847698544603", + "46547201" ], [ - "861085838112763", - "158" + "759847745091804", + "18839036" ], [ - "861085838112921", - "158" + "759847763930840", + "270669443" ], [ - "861085838113079", - "158" + "759848034600283", + "365575215" ], [ - "861085838113237", - "158" + "759848595655012", + "187295653" ], [ - "861085838113395", - "158" + "759848782950665", + "25295452" ], [ - "861085838113711", - "158" + "759848808246117", + "173058283" ], [ - "861085838113869", - "158" + "759848981304400", + "63821133" ], [ - "861085838114027", - "158" + "759849045125533", + "25336780" ], [ - "861085838114185", - "158" + "759849070462313", + "29081391" ], [ - "861085838114343", - "158" + "759849099543704", + "29122172" ], [ - "861085838114501", - "158" + "759849128665876", + "28706993" ], [ - "861085838114659", - "158" + "759849157372869", + "13456201" ], [ - "861085838114817", - "158" + "759849170829070", + "36511282" ], [ - "861085838114975", - "158" + "759849207340352", + "41243780" ], [ - "861085838115133", - "158" + "759849248584132", + "33852678" ], [ - "861085838115291", - "158" + "759849282436810", + "33956125" ], [ - "861085838115449", - "158" + "759849316392935", + "34132617" ], [ - "861085838115607", - "158" + "759849350525552", + "17041223" ], [ - "861085838115765", - "158" + "759849367566775", + "20273897" ], [ - "861085838115923", - "158" + "759849387840672", + "9037475" ], [ - "861085838116081", - "158" + "759849396878147", + "45923781" ], [ - "861085838446610", - "160" + "759849442801928", + "52882809" ], [ - "861085838446770", - "160" + "759849495684737", + "71491609" ], [ - "861085838446930", - "160" + "759849567176346", + "39781360" ], [ - "861085838447090", - "159" + "759849606957706", + "35612937" ], [ - "861085838447249", - "159" + "759849642570643", + "45789959" ], [ - "861085838447408", - "159" + "759849688360602", + "46291324" ], [ - "861085838447567", - "159" + "759849734651926", + "46416554" ], [ - "861085838447726", - "159" + "759849781068480", + "46480026" ], [ - "861085838447885", - "159" + "759849827548506", + "28909947" ], [ - "861085838448044", - "159" + "759849856458453", + "20566561" ], [ - "861085838448203", - "159" + "759849877025014", + "20612970" ], [ - "861085838448362", - "159" + "759849897637984", + "9530420" ], [ - "861085838448521", - "159" + "759849923422103", + "43423401" ], [ - "861085838448680", - "159" + "759849966845504", + "11714877" ], [ - "861085838448839", - "159" + "759864364377919", + "13050269" ], [ - "861085838448998", - "159" + "759864377428188", + "28949561" ], [ - "861085838449157", - "159" + "759864451656441", + "45362892" ], [ - "861085838449316", - "159" + "759864497019333", + "45386397" ], [ - "861085838449475", - "159" + "759864542405730", + "44251644" ], [ - "861085838449634", - "159" + "759864623518170", + "16029726" ], [ - "861085838449793", - "159" + "759864639547896", + "27422448" ], [ - "861085838480292", - "160" + "759864666970344", + "45324196" ], [ - "861085838480452", - "160" + "759864712294540", + "45381527" ], [ - "861085838480612", - "159" + "759864794252615", + "45249060" ], [ - "861085838480771", - "159" + "759864839501675", + "38552197" ], [ - "861085838480930", - "159" + "759864878053872", + "45325980" ], [ - "861085838481089", - "159" + "759864923379852", + "45332668" ], [ - "861085838481248", - "159" + "759864968712520", + "14947041" ], [ - "861085838481407", - "159" + "759864983659561", + "44411176" ], [ - "861085838481566", - "159" + "759865028070737", + "45841550" ], [ - "861104013698685", - "158" + "759865073912287", + "37491304" ], [ - "861104013698843", - "158" + "759865111403591", + "35823677" ], [ - "861104013699001", - "158" + "759865189244823", + "45959807" ], [ - "861104013699159", - "476" + "759865235204630", + "28621023" ], [ - "861104013699635", - "634" + "759865309352063", + "54352361" ], [ - "861104013700269", - "793" + "759865363704424", + "37604905" ], [ - "861104013701062", - "952" + "759865401309329", + "48060122" ], [ - "861104013702172", - "1110" + "759865502784387", + "41998112" ], [ - "861104480230238", - "1268" + "759865545775991", + "43017774" ], [ - "861104480232140", - "1427" + "759865588793765", + "45709130" ], [ - "861104480234359", - "1585" + "759865634502895", + "20672897" ], [ - "861104480236895", - "1743" + "759865655175792", + "18088532" ], [ - "861104480239747", - "1902" + "759865673264324", + "176142052" ], [ - "861104480242916", - "2060" + "759865849406376", + "249729828" ], [ - "861104480246401", - "2218" + "759866099136204", + "111218297" ], [ - "861104480248619", - "158" + "759866210354501", + "27934473" ], [ - "861104480248935", - "158" + "759866238288974", + "27468895" ], [ - "861104480249251", - "158" + "759866265757869", + "1914618989" ], [ - "861104480249883", - "316" + "759868180376858", + "45603693" ], [ - "861104480250199", - "158" + "759868225980551", + "45842728" ], [ - "861104480250515", - "158" - ] - ] - ], - [ - "0xa73329C4be0B6aD3b3640753c459526880E6C4a7", - [ + "759868271823279", + "46014440" + ], [ - "342007094123381", - "5537799063" - ] - ] - ], - [ - "0xa7be8b7C4819eC8edd05178673575F76974B4EaA", - [ + "759868317837719", + "46063229" + ], [ - "643105932414433", - "3504500000" - ] - ] - ], - [ - "0xA8977359f9da8CFC72145b95Bf3eDB04c0192aB2", - [ + "759868363900948", + "2621289" + ], [ - "227302500823517", - "91254470715" + "759868366522237", + "53709228" ], [ - "240936644343173", - "172400000000" - ] - ] - ], - [ - "0xA8D9Ff69724C66dA3fD239C2D5459BD924372d85", - [ + "759868420231465", + "52228978" + ], [ - "647522463818695", - "70976639" - ] - ] - ], - [ - "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E", - [ + "759868472460443", + "66561157603" + ], [ - "87378493677209", - "18540386828" + "759935033618046", + "45751501" ], [ - "157789513042632", - "46130596396" - ] - ] - ], - [ - "0xA8dFD30f66FeE7cC504b4605E9C3f5e27e4a78F7", - [ + "759935079369547", + "45866818" + ], [ - "524680103453466", - "565602262874" + "759935171141704", + "45924323" ], [ - "531965502653124", - "631379688396" + "759935217066027", + "27091944" ], [ - "533822032849799", - "1016708705478" - ] - ] - ], - [ - "0xA8e54179AD4A4a844Cc7e941F60dF9393d0AD7a5", - [ + "759935244157971", + "47094028" + ], [ - "322943294893160", - "8758397681" - ] - ] - ], - [ - "0xA908Af6fD5E61360e24FcA8C8fa6755786409cCe", - [ + "759935291251999", + "4720868852" + ], [ - "624708043376039", - "5666343221" - ] - ] - ], - [ - "0xA92aB746eaC03E5eC31Cd3A879014a7D1e04640c", - [ + "759940035846319", + "79415211" + ], [ - "28391158520616", - "5664262851" + "759940115261530", + "104887944" ], [ - "31624276642782", - "827500000" + "759940220149474", + "104422502" ], [ - "32010465599710", - "2827500000" + "759940324571976", + "47123207" ], [ - "32163187849710", - "827500000" + "759940371695183", + "21522781" ], [ - "32180546599710", - "468750000" - ] - ] - ], - [ - "0xA92b09947ab93529687d937eDf92A2B44D2fD204", - [ + "759940431848469", + "26567259" + ], [ - "174457557935439", - "2252016869" + "759940458415728", + "28464738" ], [ - "217090244886952", - "100017300000" - ] - ] - ], - [ - "0xA96FC7f4468359045D355c8c6eB79C03aAc9fB22", - [ + "759940486880466", + "16535232" + ], [ - "647552789487981", - "25673034" - ] - ] - ], - [ - "0xA970FEEBCFbCCf89f9a15323e4feBb4D7cf20e34", - [ + "759940529740783", + "23798092" + ], [ - "342102180028527", - "9515722669" - ] - ] - ], - [ - "0xA97661df0380FF3eB6214709A6926526E38a3f68", - [ + "759940553538875", + "22130816" + ], [ - "579063492093806", - "43896808582" - ] - ] - ], - [ - "0xa9a01Cf812DA74e3100E1fb9B28224902D403ed7", - [ + "759940575669691", + "19923295" + ], [ - "189133019330752", - "32609949600" + "759940703254106", + "96921736" ], [ - "237255472873302", - "41700155407" + "759944301288885", + "148924295" ], [ - "650798610280868", - "2704447617" + "759944524831820", + "94934102" ], [ - "652198660709813", - "2233193957" + "759944631176184", + "441416" ], [ - "661861990183905", - "96716493785" - ] - ] - ], - [ - "0xa9b13316697dEb755cd86585dE872ea09894EF0f", - [ + "759944876402388", + "86731197" + ], [ - "140155656908183", - "4149923574" + "759945236861297", + "37118" ], [ - "198971377368461", - "18087016900" + "759945663978694", + "33147570" ], [ - "211708788713612", - "10681995985" + "759947353926358", + "19648269869" ], [ - "241399390159934", - "842071924045" + "759967315893614", + "43342636" ], [ - "384563894405801", - "115228517177" + "759967359236250", + "73180835" ], [ - "563854847802308", - "18284000000" + "759968303751614", + "86480048" ], [ - "564151486302308", - "18284615400" + "759968390231662", + "87319503" ], [ - "566633249231746", - "18284615400" + "759968565049433", + "57445411" ], [ - "569490831818315", - "18284615400" + "759969182444540", + "86435423" ], [ - "572704554525253", - "18284615400" + "759969313128560", + "78853009" ], [ - "595117800435834", - "12085354500" + "759969922263950", + "86993082" ], [ - "640930157267749", - "65849399034" - ] - ] - ], - [ - "0xA9Ce5196181c0e1Eb196029FF27d61A45a0C0B2c", - [ + "759970009257032", + "87071115" + ], [ - "31816265099710", - "59900000000" + "759970096328147", + "87094141" ], [ - "31935590099710", - "74875500000" + "759970659966091", + "7037654" ], [ - "32088312349710", - "74875500000" + "759970895945609", + "88340633" ], [ - "563579921802308", - "21876000000" + "759971171933682", + "103831674" ], [ - "564422820917708", - "21876172500" + "759971792380007", + "55918771" ], [ - "566153593653477", - "21876172500" + "759971848298778", + "51663688" ], [ - "569017476488315", - "21876172500" + "759971899962466", + "51820149" ], [ - "569762166433715", - "21876172500" + "759971951782615", + "53263163" ], [ - "572429628352753", - "21876172500" - ] - ] - ], - [ - "0xAa24a2AB55b4F1B6af343261d71c98376084BA73", - [ + "759972005045778", + "46273362" + ], [ - "28870881002740", - "7927293103" + "759972051319140", + "11764053" ], [ - "33175764242262", - "2879757656" + "759972063083193", + "44521152" ], [ - "33287034809521", - "2000002613" + "759972107604345", + "54315334" ], [ - "67071383981721", - "4370751822" + "759972270510579", + "52771216" ], [ - "76001219652173", - "2000000" + "759972378810991", + "53615733" ], [ - "224377827434669", - "8843521858" + "759972432426724", + "54009683" ], [ - "227266143617682", - "36357205835" + "759972545991397", + "40392605" ], [ - "346980492268033", - "299504678878" + "759972586384002", + "40570272" ], [ - "390489917323118", - "30009118039" + "759972626954274", + "29991995" ], [ - "390714321832800", - "15011668209" + "759972656946269", + "27715408" ], [ - "496313316602869", - "14480945853" + "759972684661677", + "10745158" ], [ - "496327797548722", - "17563125222" + "759972695406835", + "53647337" ], [ - "574176328586258", - "11373869605" + "759973067945793", + "43509245" ], [ - "581926056394610", - "57230000000" + "760353358762258", + "10893874" ], [ - "582414831630740", - "58387156830" + "760353369656132", + "992291" ], [ - "646758540482222", - "200935620" + "760353370648423", + "136316" ], [ - "648099627744347", - "7145929778" + "760353370784739", + "147677" ], [ - "768350264491863", - "97750210" + "760353371573213", + "659890" ], [ - "799970499717615", - "199999867679" + "760353372233103", + "46092807" ], [ - "859839460259246", - "49999681340" + "760354201137939", + "3218014" ], [ - "861579337591263", - "20955496102" + "760354238838872", + "3273321614" ], [ - "866501316671921", - "3915489816" + "760357963287583", + "52520804" ], [ - "867998656653702", - "3760487192" + "760358123735957", + "112541922486" ], [ - "868004210064042", - "11148893919" + "760472183068657", + "71399999953" ], [ - "868717458995563", - "137089560126" + "760765586953427", + "195667368889" ], [ - "882380209424876", - "25123931061" - ] - ] - ], - [ - "0xaA3eaFD722A326b80F4BF8c1F97445ac57850D5f", - [ + "760961254322316", + "846285958415" + ], [ - "553814968232795", - "1000000" + "761807542325030", + "712321671" ], [ - "553814969232795", - "4769665935949" - ] - ] - ], - [ - "0xaa44cAc4777DcB5019160A96Fbf05a39b41edD15", - [ + "761808255104338", + "10685317968" + ], [ - "767312117384897", - "5239569017" + "761818941407193", + "38669865140" ], [ - "790723454198851", - "1404119830" - ] - ] - ], - [ - "0xaa75c70b7ce3A00cdFa1Bf401756bdf5C70889Cc", - [ + "761858011206868", + "52031027" + ], [ - "86212387135166", - "9412000000" - ] - ] - ], - [ - "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", - [ + "761858211139284", + "53537634" + ], [ - "31662554742782", - "21750" + "761858291968910", + "1954482199" ], [ - "790724858318681", - "201654015884" + "761860307483525", + "798157403" ], [ - "805283832227311", - "122955165365" - ] - ] - ], - [ - "0xAA940d97Bd90B74991AB6029d35bf5Fc3BfEdB01", - [ + "762237672060652", + "57392002182" + ], [ - "270431731940789", - "35213496314" - ] - ] - ], - [ - "0xaaEB726768606079484aa6b3715efEEC7E901D13", - [ + "762295918132248", + "68617976" + ], [ - "164232302945961", - "52342902973" - ] - ] - ], - [ - "0xab2b4e053Ceb42B50f39c4C172B79E86A5e217c3", - [ + "762295986750224", + "181183510038" + ], [ - "396371740775536", - "132692764932" + "762477170260262", + "181104817321" ], [ - "595154386328334", - "12415183500" - ] - ] - ], - [ - "0xAB9497dE5d2D768Ca9D65C4eFb19b538927F6732", - [ + "762658275077583", + "181134595436" + ], [ - "78583733231186", - "1178558112" + "762928154263486", + "12718343972" ], [ - "87051010845698", - "12909150685" + "762941373378458", + "61742453" ], [ - "87849021681484", - "3600000000" + "762941584284511", + "53571451" ], [ - "87852621681484", - "800000000" - ] - ] - ], - [ - "0xABC508DdA7517F195e416d77C822A4861961947a", - [ + "762941637855962", + "53583667" + ], [ - "611465268974532", - "5766000000" + "762941691439629", + "503128696018" ], [ - "611565632974532", - "108706000000" + "763444820135647", + "9452272123" + ], + [ + "763454275602361", + "24685659026" + ], + [ + "763478961261387", + "50245820668" ], [ - "859912145350487", - "61408881869" - ] - ] - ], - [ - "0xAbe1ee131c420b5687893518043C5df21E7Da28f", - [ + "763529207082055", + "45323986837" + ], [ - "219174134154064", - "257767294743" - ] - ] - ], - [ - "0xaBe78350f850924bAfF4B7139c17932d4c0560C5", - [ + "763574531068892", + "38976282600" + ], [ - "170355877646894", - "103277281284" + "763709016360993", + "44972105263" ], [ - "186591806305035", - "119796085879" - ] - ] - ], - [ - "0xAc0D2CB9BC2488Da7Db1dd13321b5d01A0ae90c2", - [ + "763803405580259", + "33297747636" + ], [ - "532675989297032", - "13095000100" - ] - ] - ], - [ - "0xac34CF8CF7497a570C9462F16C4eceb95750dd26", - [ + "763877196713494", + "54224527" + ], [ - "558584635168744", - "8664709191" - ] - ] - ], - [ - "0xAc4c5952231a86E8ba3107F2C5e9C5b6b303C0EE", - [ + "763877250938021", + "54871543" + ], [ - "143354831843541", - "653648140" + "763877347112986", + "53640521" ], [ - "267347914229767", - "50626218743" + "763879425886186", + "18918512681" ], [ - "595274550370334", - "30610750000" - ] - ] - ], - [ - "0xaCc53F19851ce116d52B730aeE8772F7Bd568821", - [ + "763899542751244", + "4287074277" + ], [ - "70537827998930", - "394859823062" + "763904856308950", + "91042132" ], [ - "181019314406176", - "26533824991" + "763904947351082", + "3672111531" ], [ - "191825120066350", - "32755674081" + "763908632298791", + "1924103043" ], [ - "204414095372189", - "466944255800" + "763910715862653", + "4104368630" ], [ - "918515480200659", - "103418450000" - ] - ] - ], - [ - "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", - [ + "763938664793385", + "889781905" + ], [ - "167664059643126", - "10271881722" + "763975977681622", + "85746574" ], [ - "173335964650235", - "50944632063" + "763976127391221", + "54879926" ], [ - "174153752764497", - "51388130513" + "763976238932410", + "67220754" ], [ - "340816250327274", - "13849594030" - ] - ] - ], - [ - "0xaD54FFCd24B2a2d48f3BCe3209b50E8CA1AfC1a8", - [ + "763978572723857", + "2432585925" + ], [ - "634757739139885", - "1075350000" - ] - ] - ], - [ - "0xaD7D6831973483EeC313F57e8dcb57F07aA7d7E0", - [ + "763983475557042", + "2433575022" + ], [ - "396280573607632", - "1310000000" + "763985961279749", + "3362361779" ], [ - "547738448758023", - "2624259160" - ] - ] - ], - [ - "0xaDd2955F0efC871902A7E421054DA7E6734d3DCA", - [ + "763989323641528", + "66961666112" + ], [ - "278872415592357", - "1605049904" + "764448523798789", + "9214910" ], [ - "278874020642261", - "1605019105" - ] - ] - ], - [ - "0xae0aAF5E7135058919aB10756C6CdD574a92e557", - [ + "764448533013699", + "3175483736" + ], [ - "143154831843541", - "200000000000" - ] - ] - ], - [ - "0xae5c0ff6738cE54598C00ca3d14dC71176a9d929", - [ + "764453314028098", + "886719471" + ], [ - "266124689762314", - "14563973655" - ] - ] - ], - [ - "0xae6288A5B124bEB1620c0D5b374B8329882C07B6", - [ + "766181126764911", + "110330114890" + ], [ - "150202730332467", - "98095645584" + "766291456879801", + "143444348214" ], [ - "496833602545561", - "787707309561" - ] - ] - ], - [ - "0xAeB2914f66222Fa7Ad138e128a0575048Bc76032", - [ + "766434901228015", + "15422132619" + ], [ - "643849421808137", - "6652871947" - ] - ] - ], - [ - "0xAF7879aE0aBAC1de3e8E31A47856AAE481DE0B9e", - [ + "767312117384897", + "5239569017" + ], [ - "443844836815022", - "15594289962" - ] - ] - ], - [ - "0xAf93048424E9DBE29326AD1e1B00686760318f0D", - [ + "767321251748842", + "180967833670" + ], [ - "325970651658765", - "9082486597" + "767502220600152", + "229602422" ], [ - "542294295589408", - "17206071534" - ] - ] - ], - [ - "0xAFA2137602A8FA29Ae81D2F9d1357F1358c3E758", - [ + "767502450202574", + "572238513" + ], [ - "657182189000929", - "25000000000" + "767807852820920", + "5000266651" ], [ - "657229852916854", - "2979694125" + "767824420446983", + "1158445599" ], [ - "658066484502639", - "2015000000" + "767842406169239", + "5954962183" ], [ - "664619505628982", - "15403726711" + "767978192014986", + "1606680000" ], [ - "667312080209108", - "25000000000" + "768090558981612", + "1708733210" ], [ - "670173265504450", - "40000000000" + "768418957212524", + "52886516686" ], [ - "672719969501772", - "10876482560" - ] - ] - ], - [ - "0xafaAa25675447563a093BFae2d3Db5662ADf9593", - [ + "768563220420978", + "624282480" + ], [ - "637115742967476", - "637343258" - ] - ] - ], - [ - "0xAFb3aC7EEC7e683734f81affBC3ee24C786ef2d0", - [ + "768649803857758", + "67782688750" + ], [ - "396925635091619", - "2200000000" - ] - ] - ], - [ - "0xAFE1f61f9848477E45E5c7eF832451e4d1a6f21A", - [ + "790662167913055", + "60917382823" + ], [ - "507127205293221", - "60620015754" + "790723454198851", + "1404119830" ], [ - "516313933449950", - "49630409652" + "792657494145217", + "11153713894" ], [ - "533061821284421", - "60249402002" - ] - ] - ], - [ - "0xAFFA4d2BA07F854F3dC34D2C4ce3c1602731043f", - [ + "841660754217816", + "4019358849" + ], [ - "769134792577607", - "1295600000" + "845186146706783", + "62659298764" ], [ - "770964524215275", - "10866330177" + "848290002730558", + "29448441435" ], [ - "782603527725793", - "19357500000" + "866984767069036", + "39504417438" ], [ - "783356308498157", - "20255000000" - ] - ] - ], - [ - "0xb0226e96c71F94C44d998CE1b34F6a47c3A82404", - [ + "912204712982716", + "3541650000" + ], [ - "336175075840856", - "767141673418" - ] - ] - ], - [ - "0xB04E6891e584F2884Ad2ee90b6545ba44F843c4A", - [ + "912555361492019", + "2704904821499" + ], [ - "570994112669484", - "2013435000" - ] - ] - ], - [ - "0xB0827d21e58354aa7ac05adFeb60861f85562376", - [ + "919027354019614", + "3344108" + ], [ - "648060618871896", - "108280308" + "919414419371700", + "44905425998" ] ] ], @@ -27024,15 +26988,6 @@ ] ] ], - [ - "0xb3F7DF25CB052052dF6d73d83EdBF6a2238c67de", - [ - [ - "532689084297132", - "625506" - ] - ] - ], [ "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", [ @@ -27417,23 +27372,6 @@ ] ] ], - [ - "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", - [ - [ - "61252565809868", - "616986784925" - ], - [ - "186580654253728", - "2582826931" - ], - [ - "193229271440090", - "76640448070" - ] - ] - ], [ "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5", [ @@ -30431,6 +30369,15 @@ ] ] ], + [ + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", + [ + [ + "650020393573072", + "1098667202" + ] + ] + ], [ "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", [ @@ -31619,35 +31566,6 @@ ] ] ], - [ - "0xCF0dCc80F6e15604E258138cca455A040ecb4605", - [ - [ - "203381659178232", - "749736733" - ], - [ - "633292566723256", - "391574385" - ], - [ - "767502450202574", - "572238513" - ], - [ - "768090558981612", - "1708733210" - ], - [ - "912204712982716", - "3541650000" - ], - [ - "919027354019614", - "3344108" - ] - ] - ], [ "0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0", [ @@ -32386,15 +32304,6 @@ ] ] ], - [ - "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241", - [ - [ - "767842406169239", - "5954962183" - ] - ] - ], [ "0xD5bFBD8FCD5eD15d3df952b0D34edA81FF04Dabe", [ @@ -35031,6 +34940,35 @@ ] ] ], + [ + "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc", + [ + [ + "562785223802308", + "31631000000" + ], + [ + "564739070155208", + "31631250000" + ], + [ + "566121962403477", + "31631250000" + ], + [ + "569039352660815", + "31631250000" + ], + [ + "570064713013715", + "31631250000" + ], + [ + "572117326695253", + "31631250000" + ] + ] + ], [ "0xE48436022460c33e32FC98391CD6442d55CD1c69", [ @@ -35489,15 +35427,6 @@ ] ] ], - [ - "0xe8AB75921D5F00cC982bE1e8A5Cf435e137319e9", - [ - [ - "632733387704894", - "4395105822" - ] - ] - ], [ "0xE8c22A092593061D49d3Fbc2B5Ab733E82a66352", [ @@ -36485,19 +36414,6 @@ ] ] ], - [ - "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d", - [ - [ - "676535946061485", - "2683720" - ], - [ - "680560311480251", - "10364574980" - ] - ] - ], [ "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5", [ @@ -37051,15 +36967,6 @@ ] ] ], - [ - "0xF75e363F695Eb259d00BFa90E2c2A35d3bFd585f", - [ - [ - "344699619094876", - "31013750000" - ] - ] - ], [ "0xf783F1faD5Bc0Aad1A4975bc7567c6a61faE1765", [ @@ -37078,15 +36985,6 @@ ] ] ], - [ - "0xF7d48932f456e98d2FF824E38830E8F59De13f4A", - [ - [ - "32350896326307", - "22543240" - ] - ] - ], [ "0xF7f1dAEc57991db325a4d24Ca72E96a2EdF3683d", [ @@ -37819,19 +37717,6 @@ ] ] ], - [ - "0xFf4A6b6F1016695551355737d4F1236141ec018D", - [ - [ - "214537269214618", - "22947230644" - ], - [ - "214926241229465", - "22806010929" - ] - ] - ], [ "0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7", [ diff --git a/scripts/beanstalkShipments/data/contractAccountDistributorInit.json b/scripts/beanstalkShipments/data/contractAccountDistributorInit.json index f2bddae9..d93c10e4 100644 --- a/scripts/beanstalkShipments/data/contractAccountDistributorInit.json +++ b/scripts/beanstalkShipments/data/contractAccountDistributorInit.json @@ -1,230 +1,252 @@ [ { - "address": "0x00000000003e04625c9001717346dd811ae5eba2", + "address": "0x0000000000003f5e74c1ba8a66b48e6f3d71ae82", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "59368526", + "siloPaybackTokensOwed": "1", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x0245934a930544c7046069968eb4339b03addfcf", + "address": "0x0000000000007f150bd6f54c40a34d7c3d5e9f56", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "3", + "siloPaybackTokensOwed": "1", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x04dc1bdcb450ea6734f5001b9cecb0cd09690f4f", + "address": "0x000000000035b5e5ad9019092c665357240f594e", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "84666648086", + "siloPaybackTokensOwed": "87", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x0519064e3216cf6d6643cc65db1c39c20abe50e0", + "address": "0x00000000003b3cc22af3ae1eac0440bcee416b40", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "875658037", + "siloPaybackTokensOwed": "4397", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x08e0f0de1e81051826464043e7ae513457b27a86", + "address": "0x00000000003e04625c9001717346dd811ae5eba2", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", + "siloPaybackTokensOwed": "59368526", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["648110674034173"], - "plotAmounts": ["2331841959"] + "plotIds": [], + "plotAmounts": [] }, { - "address": "0x0f9548165c4960624debb7e38b504e9fd524d6af", + "address": "0x00000000500e2fece27a7600435d0c48d64e0c00", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["1002"], + "siloPaybackTokensOwed": "35019", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "address": "0x000000005736775feb0c8568e7dee77222a26880", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1210864256332", + "siloPaybackTokensOwed": "27", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x19dde5f247155293fb8c905d4a400021c12fb6f0", + "address": "0x00000000a1f2d3063ed639d19a6a56be87e25b1a", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "170175680", + "siloPaybackTokensOwed": "5", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x19dfdc194bb5cf599af78b1967dbb3783c590720", + "address": "0x01ff6318440f7d5553a82294d78262d5f5084eff", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["5000"], + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", + "address": "0x0245934a930544c7046069968eb4339b03addfcf", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "79602267187", + "siloPaybackTokensOwed": "3", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x04dc1bdcb450ea6734f5001b9cecb0cd09690f4f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "84666648086", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x224e69025a2f705c8f31efb6694398f8fd09ac5c", + "address": "0x0536f43136d5479310c01f82de2c04c0115217a6", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", + "siloPaybackTokensOwed": "6000000000", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["767578297685072"], - "plotAmounts": ["595189970"] + "plotIds": [], + "plotAmounts": [] }, { - "address": "0x234831d4cff3b7027e0424e23f019657005635e1", + "address": "0x07197a25bf7297c2c41dd09a79160d05b6232bcf", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "389763280", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["44"], - "plotIds": ["767502220600152"], - "plotAmounts": ["229602422"] + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { - "address": "0x251fae8f687545bdd462ba4fcdd7581051740463", + "address": "0x078ad2aa3b4527e4996d087906b2a3da51bba122", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1290863", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "227504823719295" + ], + "plotAmounts": [ + "18305090101" + ] + }, + { + "address": "0x08e0f0de1e81051826464043e7ae513457b27a86", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [ - "28368015360976", - "38722543672289", - "33106872744841", - "61000878716919", - "72536373875278", - "75995951619880", - "75784287632794", - "217474381338301", - "220144194502828", - "333622810114113", - "378227726508635", - "574387565763701", - "575679606872092", - "626184530707078", - "634034652140320", - "680095721530457", - "767824420446983", - "767978192014986", - "792657494145217", - "790662167913055", - "845186146706783" + "648110674034173" ], "plotAmounts": [ - "10000000000", - "250000000", - "6434958505", - "789407727", - "200000000", - "5268032293", - "2935934380", - "1293174476", - "47404123300", - "200755943301", - "645363133", - "55857695832", - "38492647384", - "90718871797", - "1827630964", - "10113856826", - "1158445599", - "1606680000", - "11153713894", - "60917382823", - "62659298764" + "2331841959" ] }, { - "address": "0x25f030d68e56f831011c8821913ced6248dd0676", + "address": "0x0c565f3a167df783cf6bb9fcf174e6c7d0d3892b", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x0f9548165c4960624debb7e38b504e9fd524d6af", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["618"], + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "1002" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0x2a40aaf3e076187b67ccce82e20da5ce27caa2a7", + "address": "0x10e1439455bd2624878b243819e31cfee9eb721c", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "235604312", + "siloPaybackTokensOwed": "20000000", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x2bf9b1b8cc4e6864660708498fb004e594efc0b8", + "address": "0x1202fba35cc425c07202baa4b17fa9a37d2dbebb", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "5984096636", + "siloPaybackTokensOwed": "117603362911", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "address": "0x1223fb83511d643cd2f1e6257f8b77fe282e8699", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1918965278639", + "siloPaybackTokensOwed": "23287185", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x2d0ddb67b7d551afa7c8fa4d31f86da9cc947450", + "address": "0x130ffd7485a0459fb34b9adbecf1a6dda4a497d5", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", + "siloPaybackTokensOwed": "8205939", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "586069294420889" + ], + "plotAmounts": [ + "40303600000" + ] + }, + { + "address": "0x141b5a59b40efcfe77d411cad4812813f44a7254", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "127477596807", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1210864256332", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["401401284712966"], - "plotAmounts": ["133555430770"] + "plotIds": [], + "plotAmounts": [] }, { - "address": "0x2e4145a204598534ea12b772853c08e736248e7b", + "address": "0x162852f5d4007b76d3cdc432945516b9bbf1a01f", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "1", @@ -234,770 +256,1984 @@ "plotAmounts": [] }, { - "address": "0x2f65904d227c3d7e4bbbb7ea10cfc36cd2522405", + "address": "0x16cfa7ca52268cfc6d701b0d47f86bfc152694f3", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "604108560", + "siloPaybackTokensOwed": "2654304111", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x305b0ecf72634825f7231058444c65d885e1f327", + "address": "0x1860a5c708c1e982e293aa4338bdbcafb7cb90ac", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "8952303501", + "siloPaybackTokensOwed": "4269000000", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x33ee1fa9ed670001d1740419192142931e088e79", + "address": "0x18ed928719a8951729fbd4dbf617b7968d940c7b", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "416969887", + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "375266078664282", + "371379048315869" + ], + "plotAmounts": [ + "1033269065963", + "1015130348413" + ] + }, + { + "address": "0x19dde5f247155293fb8c905d4a400021c12fb6f0", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "170175680", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x36def8a94e727a0ff7b01d2f50780f0a28fb74b6", + "address": "0x19dfdc194bb5cf599af78b1967dbb3783c590720", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": ["3458512"], - "fertilizerAmounts": ["130"], + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "5000" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0x3800645f556ee583e20d6491c3a60e9c32744376", + "address": "0x1b91e045e59c18aefb02a29b38bccd46323632ef", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "19806759068", - "fertilizerIds": ["3015555"], - "fertilizerAmounts": ["997"], - "plotIds": ["190509412911548"], - "plotAmounts": ["44590358778"] + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3413005", + "6000000" + ], + "fertilizerAmounts": [ + "1095", + "1006" + ], + "plotIds": [ + "919414419371700" + ], + "plotAmounts": [ + "44905425998" + ] }, { - "address": "0x3cc6cc687870c972127e073e05b956a1ee270164", + "address": "0x1d0a4fee04892d90e2b8a4c1836598b081bb949f", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "2", + "siloPaybackTokensOwed": "276154236", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "address": "0x1d6e8bac6ea3730825bde4b005ed7b2b39a2932d", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1129291156", + "siloPaybackTokensOwed": "1", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x4088e870e785320413288c605fd1bd6bd9d5bdae", + "address": "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["3495000"], - "fertilizerAmounts": ["964"], + "siloPaybackTokensOwed": "79602267187", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x40ca67ba095c038b711ad37bbebad8a586ae6f38", + "address": "0x21194d506ab47c531a7874b563dfa3787b3938a5", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1648097", + "siloPaybackTokensOwed": "318631452", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x226cb5b4f8aae44fbc4374a2be35b3070403e9da", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2079878", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x22aa1f4173b826451763ebfce22cf54a0603163c", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "627861", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x22f92b5cb630524af4e6c5031249931a77c43845", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x23444f470c8760bef7424c457c30dc2d4378974b", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "5670131987", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x234831d4cff3b7027e0424e23f019657005635e1", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "389763280", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "44" + ], + "plotIds": [ + "767502220600152" + ], + "plotAmounts": [ + "229602422" + ] + }, + { + "address": "0x251fae8f687545bdd462ba4fcdd7581051740463", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], + "plotIds": [ + "28368015360976", + "38722543672289", + "33106872744841", + "61000878716919", + "72536373875278", + "75995951619880", + "75784287632794", + "217474381338301", + "220144194502828", + "333622810114113", + "378227726508635", + "574387565763701", + "575679606872092", + "626184530707078", + "634034652140320", + "680095721530457", + "767824420446983", + "767978192014986", + "792657494145217", + "790662167913055", + "845186146706783" + ], + "plotAmounts": [ + "10000000000", + "250000000", + "6434958505", + "789407727", + "200000000", + "5268032293", + "2935934380", + "1293174476", + "47404123300", + "200755943301", + "645363133", + "55857695832", + "38492647384", + "90718871797", + "1827630964", + "10113856826", + "1158445599", + "1606680000", + "11153713894", + "60917382823", + "62659298764" + ] + }, + { + "address": "0x25f030d68e56f831011c8821913ced6248dd0676", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "618" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x25f69051858d6a8f9a6e54dafb073e8ef3a94c1e", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3467650" + ], + "fertilizerAmounts": [ + "1764" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x2745a1f9774ff3b59cbdfc139c6f19f003392e2c", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "643616429319061", + "643630556511892", + "643059909351872", + "643046212115536", + "580465682607657", + "644440076885807", + "646983796131611" + ], + "plotAmounts": [ + "1117067455", + "3144911832", + "5072600938", + "1220733194", + "1581698780", + "2439339467", + "1010894641" + ] + }, + { + "address": "0x2800b279e11e268d9d74af01c551a9c52eab1be3", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1290998707760", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x28a23f0679d435fa70d41a5a9f782f04134cd0d4", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "498700937", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x2908a0379cbafe2e8e523f735717447579fc3c37", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "136257580592", + "fertilizerIds": [ + "3463060", + "3467650", + "3472026", + "6000000" + ], + "fertilizerAmounts": [ + "4645", + "1989", + "1420", + "10463" + ], + "plotIds": [ + "766434901228015", + "160648337135830", + "637761302275033" + ], + "plotAmounts": [ + "15422132619", + "30093729527", + "380793557160" + ] + }, + { + "address": "0x2a40aaf3e076187b67ccce82e20da5ce27caa2a7", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "235604312", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x2bf9b1b8cc4e6864660708498fb004e594efc0b8", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "5984096636", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x2c4fe365db09ad149d9caec5fd9a42f60a0cf1a3", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3398029" + ], + "fertilizerAmounts": [ + "476" + ], + "plotIds": [ + "107446086823768", + "78570049172294", + "28059702904241" + ], + "plotAmounts": [ + "4363527272", + "5603412867", + "1259635749" + ] + }, + { + "address": "0x2c6a44918f12fdea9cd14c951e7b71df824fdba4", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "18258", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1918965278639", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x2f0424705ab89e72c6b9faebff6d4265f9d25fa2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "1996" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x2f65904d227c3d7e4bbbb7ea10cfc36cd2522405", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "604108560", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x305b0ecf72634825f7231058444c65d885e1f327", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "8952303501", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x317b157e02c3b5a16efc3cc4eb26accc1cff24e3", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "258450328339971" + ], + "plotAmounts": [ + "18991534679" + ] + }, + { + "address": "0x326481a3b0c792cc7df1df0c8e76490b5ccd7031", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "636333094290438" + ], + "plotAmounts": [ + "233865679687" + ] + }, + { + "address": "0x334f12f269213371fb59b328bb6e182c875e04b2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "327126090709", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "5002" + ], + "plotIds": [ + "235248755463285", + "170459154928178", + "187225592453120", + "532670891057032" + ], + "plotAmounts": [ + "30184796751", + "85849064810", + "100639688860", + "5098240000" + ] + }, + { + "address": "0x33ee1fa9ed670001d1740419192142931e088e79", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "416969887", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x3cc6cc687870c972127e073e05b956a1ee270164", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x3d93420aa8512e2bc7d77cb9352d752881706638", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "95422611", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x3f9208f556735504e985ff1a369af2e8ff6240a3", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1129291156", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x4088e870e785320413288c605fd1bd6bd9d5bdae", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3495000" + ], + "fertilizerAmounts": [ + "964" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x40ca67ba095c038b711ad37bbebad8a586ae6f38", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1648097", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x42b2c65db7f9e3b6c26bc6151ccf30cce0fb99ea", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x46c4128981525aa446e02ffb2ff762f1d6a49170", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x47b2efa18736c6c211505aefd321bec3ac3e8779", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "400534613369686" + ], + "plotAmounts": [ + "132789821695" + ] + }, + { + "address": "0x49072cd3bf4153da87d5eb30719bb32bda60884b", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "10646036906", + "fertilizerIds": [ + "3500000" + ], + "fertilizerAmounts": [ + "249" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x499dd900f800fd0a2ed300006000a57f00fa009b", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x4c22f22547855855b837b84cf5a73b4c875320cb", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "4192635750", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x4c366e92d46796d14d658e690de9b1f54bfb632f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3906876161", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x4f70ffddab3c60ad12487b2906e3e46d8bc72970", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "18845049718", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x5136a9a5d077ae4247c7706b577f77153c32a01c", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "72", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x51aad11e5a5bd05b3409358853d0d6a66aa60c40", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3439448", + "6000000" + ], + "fertilizerAmounts": [ + "4", + "10" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x51cf86829ed08be4ab9ebe48630f4d2ed9f54f56", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "647219930", + "fertilizerIds": [ + "2811995", + "6000000" + ], + "fertilizerAmounts": [ + "45", + "641" + ], + "plotIds": [ + "741720392463454", + "768563220420978", + "741724318106214", + "848290002730558", + "78582810315624", + "866984767069036" + ], + "plotAmounts": [ + "1213327771", + "624282480", + "903473746", + "29448441435", + "57126564", + "39504417438" + ] + }, + { + "address": "0x51e7b8564f50ec4ad91877e39274bda7e6eb880a", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "4101549406", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x52d4d46e28dc72b1cef2cb8eb5ec75dd12bc4df3", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "749302147", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x538c3fe98a11fba5d7c70fd934c7299bffcfe4de", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "13111", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x53ba90071ff3224adca6d3c7960ad924796fed03", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "1000" + ], + "plotIds": [ + "767807852820920" + ], + "plotAmounts": [ + "5000266651" + ] + }, + { + "address": "0x542a94e6f4d9d15aae550f7097d089f273e38f85", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1351212", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "53" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x55038f72943144983baab03a0107c9a237bd0da9", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "13872315", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x554b1bd47b7d180844175ca4635880da8a3c70b9", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "12894039148", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "31590227810128" + ], + "plotAmounts": [ + "15764212654" + ] + }, + { + "address": "0x562f223a5847daae5faa56a0883ed4d5e8ee0ee0", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x579de8e7da10b45b43a24ac21da8b1a3a9452d64", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "647334889222283" + ], + "plotAmounts": [ + "22379191354" + ] + }, + { + "address": "0x59dc1eae22eebd6cfbd144ee4b6f4048f8a59880", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "267569815164874" + ], + "plotAmounts": [ + "20246736273" + ] + }, + { + "address": "0x5e4c21c30c968f1d1ee37c2701b99b193b89d3f3", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "62672894779", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "230057326178", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x609a7742acb183f5a365c2d40d80e0f30007a597", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "147340046", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x61e193e514de408f57a648a641d9fcd412cded82", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "316297504741935" + ], + "plotAmounts": [ + "1134976125606" + ] + }, + { + "address": "0x6301add4fb128de9778b8651a2a9278b86761423", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "26963291792", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x6363f3da9d28c1310c2eabdd8e57593269f03ff8", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2963074788", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "1911" + ], + "plotIds": [ + "429076381887304", + "841660754217816" + ], + "plotAmounts": [ + "39624686375", + "4019358849" + ] + }, + { + "address": "0x63a7255c515041fd243440e3db0d10f62f9936ae", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3268426" + ], + "fertilizerAmounts": [ + "500" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x647bc16dcc2a3092a59a6b9f7944928d94301042", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "5802103979", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "234363994367301", + "595338144020334" + ], + "plotAmounts": [ + "101810011675", + "47102200000" + ] + }, + { + "address": "0x6609dfa1cb75d74f4ff39c8a5057bd111fba5b22", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "988268302", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "326213533536434" + ], + "plotAmounts": [ + "11833992957" + ] + }, + { + "address": "0x66f049111958809841bbe4b81c034da2d953aa0c", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "9", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x68781516d80ec9339ecdf5996dfbcafb8afe8e22", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "4500000000", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x68ca44ed5d5df216d10b14c13d18395a9151224a", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "327022674019051" + ], + "plotAmounts": [ + "298522321813" + ] + }, + { + "address": "0x6a9d63cbb02b6a7d5d09ce11d0a4b981bb1a221d", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1965220435", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x6e93e171c5223493ad5434ac406140e89bd606de", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "4057" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x6f98da2d5098604239c07875c6b7fd583bc520b9", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "81825207835", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x6f9cee855cb1f362f31256c65e1709222e0f2037", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "642055137257", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x70c8ee0223d10c150b0db98a0423ec18ec5aca89", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "317764819055205" + ], + "plotAmounts": [ + "94698329152" + ] + }, + { + "address": "0x71f9ccd68bf1f5f9b571f509e0765a04ca4ffad2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "435297010767", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "84990" + ], + "plotIds": [ + "670969471210715" + ], + "plotAmounts": [ + "112808577" + ] + }, + { + "address": "0x735cab9b02fd153174763958ffb4e0a971dd7f29", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3458512", + "3458531", + "3470220", + "6000000" + ], + "fertilizerAmounts": [ + "542767", + "56044", + "291896", + "8046712" + ], + "plotIds": [ + "28553316405699", + "33290510627174", + "32013293099710", + "33262951017861", + "118322555232226", + "180071240663041", + "317859517384357", + "338910099578361", + "444973868346640", + "477195175494445", + "706133899990342", + "726480740731617", + "721409921103392", + "735554122237517", + "729812277370084", + "744819318753537", + "760472183068657" + ], + "plotAmounts": [ + "56203360846", + "565390687", + "15000000000", + "9375000000", + "5892426278", + "81992697619", + "291195415400", + "72913082044", + "61560768641", + "29857571563", + "2720589483246", + "2047412139790", + "4415003338706", + "2514215964115", + "5650444595733", + "98324836380", + "71399999953" + ] + }, + { + "address": "0x73cbc02516f5f4945ce2f2facf002b2c6aa359e7", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "22003048972", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x78fd06a971d8bd1ccf3ba2e16cd2d5ea451933e2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3441470", + "3458512", + "3462428", + "3465205", + "6000000" + ], + "fertilizerAmounts": [ + "1000", + "7000", + "439", + "373", + "1988" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x7ac34681f6aaeb691e150c43ee494177c0e2c183", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1026", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3500000", + "6000000" + ], + "fertilizerAmounts": [ + "40000", + "51100" + ], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x7ca44c05aa9fcb723741cbf8d5c837931c08971a", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x7cd222530d4d10e175c939f55c5dc394d51aadaa", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1941428197938", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "22023088835", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "3025" + ], + "plotIds": [ + "462646168927", + "647175726076112", + "720495305315880" + ], + "plotAmounts": [ + "1666666666", + "16711431033", + "55569209804" + ] + }, + { + "address": "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3471974" + ], + "fertilizerAmounts": [ + "10" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0x41dd131e460e18befd262cf4fe2e2b2f43f6fb7b", + "address": "0x83a758a6a24fe27312c1f8bda7f3277993b64783", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "671413640603", + "siloPaybackTokensOwed": "99437500", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [ - "86790953888750", - "207234905273707", - "209057370939437", - "207270328594324", - "200625410465815", - "208172233828826", - "209957591885080", - "203337173447397", - "209905911270631", - "212591835915023", - "213229524257532", - "213658788094189", - "214949047240394", - "213383652493093", - "213336723478778", - "215084432940577", - "215439620132931", - "215618163087336", - "215707243791622", - "215528955291876", - "217010587764381", - "217563869893679", - "221813776173855", - "233377524301320", - "238323426120979", - "238513085414760", - "239248004001388", - "237867225757655", - "240291234403735", - "239294889973551", - "240589084672177", - "247641838339634", - "241109044343173", - "411709178648065", - "411722784968430", - "415230639081557", - "415397117069219", - "415476876421248", - "415247549081557", - "411756604968430", - "409557925200195", - "415264459081557", - "415338127991557", - "415383569069219", - "415566014166143", - "415611520152852", - "415652994874892", - "415327969991557", - "415580739743481", - "415685091477562", - "415552624743282", - "415624898959477", - "415714727696875", - "411664283436334", - "415314425991557", - "415701134575353", - "415344899991557", - "415281374081557", - "415669044911127", - "415638279292790", - "428524210780265", - "415598138934527", - "575626349616280", - "573818581461780", - "741131517296797", - "767989215426960", - "790591093043508", - "771127544359367", - "869175887842680", - "868345234814461", - "900352767003453", - "869256219461070", - "912339955462822", - "917463394063277" + "344618618497376" ], "plotAmounts": [ - "38576992385", - "17459074945", - "19654542435", - "49984112432", - "27121737219", - "26535963154", - "193338988216", - "44485730835", - "51680614449", - "94239272075", - "56443162240", - "46596908794", - "135385700183", - "46820732322", - "46929014315", - "135094592523", - "89335158945", - "89080704286", - "88953884657", - "89207795460", - "46290484227", - "55156826488", - "37911640587", - "80126513749", - "141765636262", - "141406044017", - "46885972163", - "94970341987", - "27327225251", - "24269363626", - "187694536015", - "101040572048", - "186820539992", - "13606320365", - "33820000000", - "16910000000", - "13548000000", - "13564000000", - "16910000000", - "33820000000", - "13862188950", - "16915000000", - "6772000000", - "13548000000", - "14725577338", - "13378806625", - "16050036235", - "10158000000", - "17399191046", - "16043097791", - "13389422861", - "13380333313", - "13370532569", - "13677512381", - "13544000000", - "13593121522", - "16930000000", - "16915000000", - "16046566435", - "14715582102", - "13268338278", - "13381218325", - "53257255812", - "41982081237", - "95195568422", - "14606754787", - "71074869547", - "12764830824", - "80331618390", - "178880088846", - "187169856894", - "87734515234", - "95736000000", - "359610000000" + "81000597500" ] }, { - "address": "0x44db0002349036164dd46a04327201eb7698a53e", - "whitelisted": true, - "claimed": false, - "siloPaybackTokensOwed": "3597838114", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["444"], - "plotIds": ["643938854351013", "644373889298847", "768072180047322"], - "plotAmounts": ["228851828", "3084780492", "2519675802"] - }, - { - "address": "0x4733a76e10819ff1fa603e52621e73df2ce5c30a", + "address": "0x843f2c19bc6df9e32b482e2f9ad6c078001088b1", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "17", + "siloPaybackTokensOwed": "33054062713", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x47b2efa18736c6c211505aefd321bec3ac3e8779", + "address": "0x8525664820c549864982d4965a41f83a7d26af58", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["400534613369686"], - "plotAmounts": ["132789821695"] - }, - { - "address": "0x49072cd3bf4153da87d5eb30719bb32bda60884b", - "whitelisted": true, - "claimed": false, - "siloPaybackTokensOwed": "10646036906", - "fertilizerIds": ["3500000"], - "fertilizerAmounts": ["249"], - "plotIds": [], - "plotAmounts": [] + "plotIds": [ + "28385711672356" + ], + "plotAmounts": [ + "4000000000" + ] }, { - "address": "0x4c22f22547855855b837b84cf5a73b4c875320cb", + "address": "0x85312d6a50928f3ffc7a192444601e6e04a428a2", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "4192635750", - "fertilizerIds": [], - "fertilizerAmounts": [], + "siloPaybackTokensOwed": "1179375906", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "1002" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0x4c366e92d46796d14d658e690de9b1f54bfb632f", + "address": "0x85789dab691cfb2f95118642d459e3301ac88aba", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "3906876161", + "siloPaybackTokensOwed": "13082483", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x4f70ffddab3c60ad12487b2906e3e46d8bc72970", + "address": "0x86a41524cb61edd8b115a72ad9735f8068996688", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "18845049718", + "siloPaybackTokensOwed": "22676193096", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x504c11bdbe6e29b46e23e9a15d9c8d2e2e795709", + "address": "0x87b6c8734180d89a7c5497ab91854165d71fad60", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1325826360", + "siloPaybackTokensOwed": "7873358244", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x512e3eb472d53df71db0252cb8dccd25cd05e9e9", + "address": "0x897f27d11c2dd9f4e80770d33b681232e93e2b62", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "19375570094", + "siloPaybackTokensOwed": "116901663", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x51aad11e5a5bd05b3409358853d0d6a66aa60c40", + "address": "0x89aa0d7ebdcc58d230af421676a8f62ca168d57a", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": ["3439448", "6000000"], - "fertilizerAmounts": ["4", "10"], - "plotIds": [], - "plotAmounts": [] + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "69" + ], + "plotIds": [ + "228344590940664", + "404814012582428" + ], + "plotAmounts": [ + "13645890242", + "13502469920" + ] }, { - "address": "0x52d4d46e28dc72b1cef2cb8eb5ec75dd12bc4df3", + "address": "0x8b2dbfded8802a1af686fef45dd9f7babfd936a2", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "749302147", + "siloPaybackTokensOwed": "81753677", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x53ba90071ff3224adca6d3c7960ad924796fed03", - "whitelisted": true, - "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["1000"], - "plotIds": ["767807852820920"], - "plotAmounts": ["5000266651"] - }, - { - "address": "0x542a94e6f4d9d15aae550f7097d089f273e38f85", + "address": "0x8bea73aac4f7ef9daded46359a544f0bb2d1364f", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1351212", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["53"], + "siloPaybackTokensOwed": "882175042", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x554b1bd47b7d180844175ca4635880da8a3c70b9", + "address": "0x8d06ffb1500343975571cc0240152c413d803778", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "12894039148", - "fertilizerIds": [], - "fertilizerAmounts": [], - "plotIds": ["31590227810128"], - "plotAmounts": ["15764212654"] + "siloPaybackTokensOwed": "209653369867", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "50000" + ], + "plotIds": [ + "28904918772117", + "150623260553725", + "162734759646450", + "149476539987788", + "163471807797344", + "174803269011285", + "161092113186340", + "210525931443438", + "232704752844281", + "247742878911682", + "253931736847120", + "261970235265316", + "272319508243958", + "335529346845329", + "340276769047777", + "344533743397376", + "344515718397376", + "344833670732808", + "429976284393417", + "629227085981797", + "637149167789946", + "628854228397766", + "634643031419046", + "637351998004377", + "641574417641439", + "641522728201681", + "639180990676042", + "643909821821812", + "643916723821812", + "644007497148201", + "644065944123685", + "644057761258485", + "644045596517280", + "643999292802533", + "644171938918668", + "644306806412385", + "644319149838335", + "644329884889082", + "644396277666556", + "644525199249437", + "644616712009539", + "644642611623012", + "646758741417842", + "646914219232490", + "646871486506724", + "647371497003533", + "647002050880741", + "647119660778668", + "647527562675656", + "647166440607362", + "647617732404338", + "647151216777708", + "647505902133654", + "647908205457926", + "647838858023565", + "647046808773241", + "647978638361818", + "647084629304491", + "648034585438303", + "647798301685196", + "648106773674125", + "648017646545411", + "648187497812653", + "648616078919292", + "648233657616208", + "648252129451354", + "648510092345893", + "648262194812840", + "648483189881961", + "648452542642294", + "648244014840378", + "648416302604421", + "648271147772454", + "648783994477207", + "648629542096134", + "648750501960130", + "648287518441310", + "648760652541290", + "648889660439973", + "648807289596036", + "648828279314786", + "649261133791064", + "649214012945345", + "649693929475018", + "649656745149465", + "649236472457547", + "658147267102223", + "659366890690250", + "657631435066681", + "657986484502639", + "657741540789773", + "676683083298681", + "657232832610979", + "665058906638905", + "676664914525249", + "682844108475123", + "679750611381961", + "741842944533312", + "681871200072623", + "763803405580259", + "741732026495866", + "768649803857758", + "763709016360993", + "912555361492019" + ], + "plotAmounts": [ + "509586314410", + "436653263484", + "737048150894", + "595705787279", + "717665153748", + "323070981235", + "738480151497", + "62132577144", + "204706266628", + "275332296988", + "290236580727", + "30303030303", + "438603533273", + "13913764863", + "33796000000", + "18025000000", + "18025000000", + "5702918963", + "10590000000", + "216873485917", + "4910026986", + "372857584031", + "20948977130", + "258192517612", + "154715717850", + "5800000000", + "199438094194", + "6902000000", + "10900958949", + "11854871050", + "7516642526", + "8182865200", + "6544832392", + "8204345668", + "9601229268", + "12054054687", + "10735050747", + "14347680621", + "6674520726", + "6225710228", + "14199853473", + "12249630834", + "4969664107", + "8605864430", + "17642812500", + "6381630000", + "9799080000", + "15762838323", + "8111120358", + "9285468750", + "19873525000", + "11761593750", + "6953600000", + "12756105568", + "29093546875", + "17984531250", + "24834476562", + "23544562500", + "11688871093", + "7654771125", + "3568208882", + "10268964843", + "10104336384", + "8718470609", + "10357224170", + "8545778006", + "15239253108", + "8952959614", + "20797810726", + "21586449186", + "8114610976", + "20715605468", + "6063060479", + "23277498479", + "21544183345", + "10150581160", + "7377849726", + "23321057117", + "41844097841", + "20989718750", + "20297082735", + "23748160156", + "22440187500", + "11667351669", + "12205116299", + "7534311320", + "82507217675", + "174474635475", + "35105723092", + "80000000000", + "84888584622", + "3118260869", + "97443079393", + "92828595185", + "18043478260", + "1148082700", + "234067235160", + "61092850308", + "12689035666", + "33297747636", + "17262110558", + "67782688750", + "44972105263", + "2704904821499" + ] }, { - "address": "0x5d02957cf469342084e42f9f4132403ea4c5fe01", + "address": "0x8f21151d98052ec4250f41632798716695fb6f52", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", + "siloPaybackTokensOwed": "74624182595", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["786826869494538", "767507188351307"], - "plotAmounts": ["44336089227", "3345435335"] + "plotIds": [], + "plotAmounts": [] }, { - "address": "0x5dfbb2344727462039eb18845a911c3396d91cf2", + "address": "0x8fe7261b58a691e40f7a21d38d27965e2d3afd6e", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "2513", + "siloPaybackTokensOwed": "117884705851", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", + "address": "0x9008d19f58aabd9ed0d60971565aa8510560ab41", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "62672894779", + "siloPaybackTokensOwed": "291524996", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "address": "0x90746a1393a772af40c9f396b730a4ffd024bb63", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "230057326178", + "siloPaybackTokensOwed": "244153356", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x61e193e514de408f57a648a641d9fcd412cded82", + "address": "0x90f15e09b8fb5bc080b968170c638920db3a3446", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", + "siloPaybackTokensOwed": "10480461744", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["316297504741935"], - "plotAmounts": ["1134976125606"] - }, - { - "address": "0x63a7255c515041fd243440e3db0d10f62f9936ae", - "whitelisted": true, - "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["3268426"], - "fertilizerAmounts": ["500"], "plotIds": [], "plotAmounts": [] }, { - "address": "0x64298a72f4e3e23387efc409fc424a3f17356fc4", + "address": "0x9362c5f4fd3fa3989e88268fb3e0d69e9eeb1705", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "2806", + "siloPaybackTokensOwed": "324094915", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x647bc16dcc2a3092a59a6b9f7944928d94301042", + "address": "0x96d4f9d8f23eadee78fc6824fc60b8c1ce578443", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "5802103979", + "siloPaybackTokensOwed": "1", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["234363994367301", "595338144020334"], - "plotAmounts": ["101810011675", "47102200000"] + "plotIds": [], + "plotAmounts": [] }, { - "address": "0x735cab9b02fd153174763958ffb4e0a971dd7f29", + "address": "0x9ec255f1af4d3e4a813aadab8ff0497398037d56", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "0", - "fertilizerIds": ["3458512", "3458531", "3470220", "6000000"], - "fertilizerAmounts": ["542767", "56044", "291896", "8046712"], + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "2260" + ], "plotIds": [ - "28553316405699", - "33290510627174", - "32013293099710", - "33262951017861", - "118322555232226", - "180071240663041", - "317859517384357", - "338910099578361", - "444973868346640", - "477195175494445", - "706133899990342", - "726480740731617", - "721409921103392", - "735554122237517", - "729812277370084", - "744819318753537", - "760472183068657" + "682506977792619" ], "plotAmounts": [ - "56203360846", - "565390687", - "15000000000", - "9375000000", - "5892426278", - "81992697619", - "291195415400", - "72913082044", - "61560768641", - "29857571563", - "2720589483246", - "2047412139790", - "4415003338706", - "2514215964115", - "5650444595733", - "98324836380", - "71399999953" + "12652582923" ] }, { - "address": "0x73cbc02516f5f4945ce2f2facf002b2c6aa359e7", + "address": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "22003048972", + "siloPaybackTokensOwed": "2852385621956", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x749461444e750f2354cf33543c941e87d747f12f", + "address": "0xa1006d0051a35b0000f961a8000000009ea8d2db", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "14940730270", + "siloPaybackTokensOwed": "240", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", + "address": "0xa10fca31a2cb432c9ac976779dc947cfdb003ef0", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["3500000", "6000000"], - "fertilizerAmounts": ["40000", "51100"], + "siloPaybackTokensOwed": "10086331", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x7d31bf47dda62c185a057b4002f1235fc3c8ae82", + "address": "0xa405e822d1c3a8568c6b82eb6e570fca0136f802", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "400442104", + "siloPaybackTokensOwed": "514", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", + "address": "0xa5f158e596d0e4051e70631d5d72a8ee9d5a3b8a", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "22023088835", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["3025"], - "plotIds": ["462646168927", "647175726076112", "720495305315880"], - "plotAmounts": ["1666666666", "16711431033", "55569209804"] + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3476597" + ], + "fertilizerAmounts": [ + "2500" + ], + "plotIds": [], + "plotAmounts": [] }, { - "address": "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", + "address": "0xa6b2876743d22a11d6941d84738abda7669fcacf", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["3471974"], - "fertilizerAmounts": ["10"], + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x83a758a6a24fe27312c1f8bda7f3277993b64783", + "address": "0xa8dc7990450cf6a9d40371ef71b6fa132eeabb0e", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "99437500", + "siloPaybackTokensOwed": "2059837403", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["344618618497376"], - "plotAmounts": ["81000597500"] + "plotIds": [ + "87378493677209", + "157789513042632" + ], + "plotAmounts": [ + "18540386828", + "46130596396" + ] }, { - "address": "0x843f2c19bc6df9e32b482e2f9ad6c078001088b1", + "address": "0xa8ecaf8745c56d5935c232d2c5b83b9cd3de1f6a", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "33054062713", + "siloPaybackTokensOwed": "1", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x8525664820c549864982d4965a41f83a7d26af58", + "address": "0xaa420e97534ab55637957e868b658193b112a551", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", + "siloPaybackTokensOwed": "20754000000", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["28385711672356"], - "plotAmounts": ["4000000000"] + "plotIds": [ + "31772724860478" + ], + "plotAmounts": [ + "43540239232" + ] }, { - "address": "0x85312d6a50928f3ffc7a192444601e6e04a428a2", + "address": "0xaa44cac4777dcb5019160a96fbf05a39b41edd15", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1179375906", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["1002"], - "plotIds": [], - "plotAmounts": [] + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "1005" + ], + "plotIds": [ + "790723454198851", + "767312117384897" + ], + "plotAmounts": [ + "1404119830", + "5239569017" + ] }, { - "address": "0x85789dab691cfb2f95118642d459e3301ac88aba", + "address": "0xad503b72fc36a699bf849bb2ed4c3db1967a73da", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "13082483", + "siloPaybackTokensOwed": "2", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x8950d9117c136b29a9b1ae8cd38db72226404243", + "address": "0xad63e4d4be2229b080d20311c1402a2e45cf7e75", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "10502638743", - "fertilizerIds": [], - "fertilizerAmounts": [], + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3495000" + ], + "fertilizerAmounts": [ + "508" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0x8a6eeb9b64eeba8d3b4404bf67a7c262c555e25b", - "whitelisted": true, - "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["3500000", "6000000"], - "fertilizerAmounts": ["500", "500"], - "plotIds": ["764117220398714"], - "plotAmounts": ["5082059700"] - }, - { - "address": "0x8b2dbfded8802a1af686fef45dd9f7babfd936a2", + "address": "0xae7861c80d03826837a50b45aecf11ec677f6586", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "81753677", + "siloPaybackTokensOwed": "1", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x8bea73aac4f7ef9daded46359a544f0bb2d1364f", + "address": "0xaeb9a1fddc21b1624f5ed6acc22d659fc0e381ca", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "882175042", + "siloPaybackTokensOwed": "42565165976", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x8fe7261b58a691e40f7a21d38d27965e2d3afd6e", + "address": "0xb02f6c30bcf0d42e64712c28b007b85c199db43f", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "117884705851", + "siloPaybackTokensOwed": "3", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0x9008d19f58aabd9ed0d60971565aa8510560ab41", + "address": "0xb03f5438f9a243de5c3b830b7841ec315034cd5f", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "291524996", - "fertilizerIds": [], - "fertilizerAmounts": [], + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "184" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "address": "0xb1720612d0131839dc489fcf20398ea925282fca", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "2852385621956", + "siloPaybackTokensOwed": "3827819", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xaa420e97534ab55637957e868b658193b112a551", + "address": "0xb3f7df25cb052052df6d73d83edbf6a2238c67de", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "20754000000", + "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["31772724860478"], - "plotAmounts": ["43540239232"] + "plotIds": [ + "532689084297132" + ], + "plotAmounts": [ + "625506" + ] }, { - "address": "0xaab4dfe6d735c4ac46217216fe883a39fbfe8284", + "address": "0xb3fcd22ffd34d75c979d49e2e5fb3a3405644831", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "11278869500", + "siloPaybackTokensOwed": "1", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xae7861c80d03826837a50b45aecf11ec677f6586", + "address": "0xb423a1e013812fcc9ab47523297e6be42fb6157e", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1", - "fertilizerIds": [], - "fertilizerAmounts": [], + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "95" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0xb02f6c30bcf0d42e64712c28b007b85c199db43f", + "address": "0xb490ac9d599c2d4fc24cc902ea4cd5af95eff6e9", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "3", - "fertilizerIds": [], - "fertilizerAmounts": [], + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "3452735", + "3470220", + "6000000" + ], + "fertilizerAmounts": [ + "5110", + "5000", + "20" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0xb1720612d0131839dc489fcf20398ea925282fca", + "address": "0xb651078d1856eb206fb090fd9101f537c33589c2", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "3827819", + "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": [], - "plotAmounts": [] + "plotIds": [ + "670156602457239" + ], + "plotAmounts": [ + "16663047211" + ] }, { - "address": "0xb423a1e013812fcc9ab47523297e6be42fb6157e", + "address": "0xb788d42d5f9b50eacbf04253135e9dd73a790bb4", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["95"], + "siloPaybackTokensOwed": "5194914245", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xb651078d1856eb206fb090fd9101f537c33589c2", + "address": "0xb9919d9b5609328f1ab7b2a9202d4d4bbe3be202", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "181639411413", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "5068" + ], + "plotIds": [ + "186580654253728", + "61252565809868", + "193229271440090" + ], + "plotAmounts": [ + "2582826931", + "616986784925", + "76640448070" + ] + }, + { + "address": "0xba9d7bdc69d77b15427346d30796e0353fa245dc", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", + "siloPaybackTokensOwed": "370410744", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["670156602457239"], - "plotAmounts": ["16663047211"] + "plotIds": [], + "plotAmounts": [] }, { "address": "0xbab04a0614a1747f6f27403450038123942cf87b", @@ -1560,45 +2796,73 @@ ] }, { - "address": "0xbe9998830c38910ef83e85eb33c90dd301d5516e", + "address": "0xbcc7f6355bc08f6b7d3a41322ce4627118314763", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "0", + "siloPaybackTokensOwed": "14", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["577679606726120"], - "plotAmounts": ["74848126691"] + "plotIds": [], + "plotAmounts": [] }, { - "address": "0xbf912cb4d1c3f93e51622fae0bfa28be1b4b6c6c", + "address": "0xbe7395d579cba0e3d7813334ff5e2d3cfe1311ba", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "34791226", + "siloPaybackTokensOwed": "8", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", + "address": "0xbe9998830c38910ef83e85eb33c90dd301d5516e", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "6922721398", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["500"], + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "577679606726120" + ], + "plotAmounts": [ + "74848126691" + ] + }, + { + "address": "0xbf3f6477dbd514ef85b7d3ec6ac2205fd0962039", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xc08f967ed52dcffd5687b56485ee6497502ef91d", + "address": "0xbf912cb4d1c3f93e51622fae0bfa28be1b4b6c6c", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "10098440738", + "siloPaybackTokensOwed": "34791226", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, + { + "address": "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "6922721398", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "500" + ], + "plotIds": [], + "plotAmounts": [] + }, { "address": "0xc1146f4a68538a35f70c70434313fef3c4456c33", "whitelisted": true, @@ -1610,70 +2874,76 @@ "plotAmounts": [] }, { - "address": "0xc16aa2e25f2868fea5c33e6a0b276dce7ee1ee47", + "address": "0xc1d1f253e40d2796fb652f9494f2cee8255a0a4f", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "30171401851", - "fertilizerIds": [], - "fertilizerAmounts": [], + "siloPaybackTokensOwed": "6", + "fertilizerIds": [ + "3468402", + "6000000" + ], + "fertilizerAmounts": [ + "3152", + "25000" + ], "plotIds": [], "plotAmounts": [] }, { - "address": "0xc18676501a23a308191690262be4b5d287104564", + "address": "0xc8801ffaaa9dfcce7299e7b4eb616741ea01f5de", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "6352015813", + "siloPaybackTokensOwed": "2327110514", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xc3391169cbbaa16b86c625b0305cfdf0ccbba40f", + "address": "0xc896e266368d3eb26219c5cc74a4941339218d86", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1369600757", + "siloPaybackTokensOwed": "22334685", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xc51fefb9ef83f2d300448b22db6fac032f96df3f", + "address": "0xcaf0cdbf6fd201ce4f673f5c232d21dd8225f437", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "9", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["942"], - "plotIds": ["650020393573072"], - "plotAmounts": ["1098667202"] + "siloPaybackTokensOwed": "5409765207", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] }, { - "address": "0xc896e266368d3eb26219c5cc74a4941339218d86", + "address": "0xcb1667b6f0cd39c9a38edadcfa743de95cb65368", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "22334685", + "siloPaybackTokensOwed": "2", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xc93678ec2b974a7ae280341cefeb85984a29fff7", + "address": "0xcd1d766aa27655cba70d10723bcc9f03a3fe489a", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "314563805", + "siloPaybackTokensOwed": "71359777", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xca4a31c7ebcb126c60fab495a4d7b545422f3aaf", + "address": "0xcd5561b1be55c1fa4bba4749919a03219497b6ef", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "5595353830", + "siloPaybackTokensOwed": "2862022204", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], @@ -1689,36 +2959,100 @@ "plotIds": [], "plotAmounts": [] }, + { + "address": "0xcf0dcc80f6e15604e258138cca455a040ecb4605", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "2", + "fertilizerIds": [ + "1338731", + "6000000" + ], + "fertilizerAmounts": [ + "116", + "108" + ], + "plotIds": [ + "767502450202574", + "203381659178232", + "912204712982716", + "768090558981612", + "633292566723256", + "919027354019614" + ], + "plotAmounts": [ + "572238513", + "749736733", + "3541650000", + "1708733210", + "391574385", + "3344108" + ] + }, { "address": "0xd15b5fa5370f0c3cc068f107b7691e6dab678799", "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "41244612991", - "fertilizerIds": ["3472026", "6000000"], - "fertilizerAmounts": ["854", "7662"], - "plotIds": ["644156421132344", "648277210832933", "644278837940540", "648277231020580"], - "plotAmounts": ["3789921580", "20187647", "631861553", "5001904811"] + "fertilizerIds": [ + "3472026", + "6000000" + ], + "fertilizerAmounts": [ + "854", + "7662" + ], + "plotIds": [ + "644156421132344", + "648277210832933", + "644278837940540", + "648277231020580" + ], + "plotAmounts": [ + "3789921580", + "20187647", + "631861553", + "5001904811" + ] }, { - "address": "0xd20b976584bf506baf5cc604d1f0a1b8d07138da", + "address": "0xd1818a80dac94fa1db124b9b1a1bb71dc20f228d", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "100000000", + "siloPaybackTokensOwed": "25738445409", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xdbab0b75921e3008fd0bb621a8248d969d2d2f0d", + "address": "0xd20b976584bf506baf5cc604d1f0a1b8d07138da", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "741733199", + "siloPaybackTokensOwed": "100000000", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, + { + "address": "0xd5ae1639e5ef6ecf241389894a289a7c0c398241", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "54337229968", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "500" + ], + "plotIds": [ + "767842406169239" + ], + "plotAmounts": [ + "5954962183" + ] + }, { "address": "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", "whitelisted": true, @@ -1746,124 +3080,158 @@ "siloPaybackTokensOwed": "1440847299", "fertilizerIds": [], "fertilizerAmounts": [], - "plotIds": ["768418957212524"], - "plotAmounts": ["52886516686"] + "plotIds": [ + "768418957212524" + ], + "plotAmounts": [ + "52886516686" + ] }, { - "address": "0xdff24806405f62637e0b44cc2903f1dfc7c111cd", + "address": "0xe596607344348723aa3e9a1a8551577dcca6c5b5", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "78016072001", - "fertilizerIds": ["3452316", "3458512", "3472026"], - "fertilizerAmounts": ["1031", "2213", "416"], + "siloPaybackTokensOwed": "5457350695", + "fertilizerIds": [], + "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xe4452cb39ad3faa39434b9d768677b34dc90d5dc", + "address": "0xe8ab75921d5f00cc982be1e8a5cf435e137319e9", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "20310337401", + "siloPaybackTokensOwed": "0", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [ - "569039352660815", - "564739070155208", - "562785223802308", - "566121962403477", - "572117326695253", - "570064713013715" + "632733387704894" + ], + "plotAmounts": [ + "4395105822" + ] + }, + { + "address": "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "63462001011", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "3180" + ], + "plotIds": [ + "634031481420456", + "647388734023467", + "721225229970053", + "741007335527824", + "743270084189585" ], "plotAmounts": [ - "31631250000", - "31631250000", - "31631000000", - "31631250000", - "31631250000", - "31631250000" + "3170719864", + "9748779666", + "55487912201", + "48848467587", + "44269246366" ] }, { - "address": "0xe57384b12a2b73767cdb5d2eaddfd96cc74753a6", + "address": "0xec62e790d671439812a9958973acadb017d5ff4d", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "230700000", + "siloPaybackTokensOwed": "52880745297", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xe596607344348723aa3e9a1a8551577dcca6c5b5", + "address": "0xed0f30677c760ea8f0bff70c76eafc79d5f7c3c8", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "5457350695", + "siloPaybackTokensOwed": "10332383424", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xe83120c1d336896de42dea2f5fd58fef1b6b9934", + "address": "0xeef86c2e49e11345f1a693675df9a38f7d880c8f", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "26132575726", + "siloPaybackTokensOwed": "44975655", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xea3154098a58eebfa89d705f563e6c5ac924959e", + "address": "0xf115d93a31e79cca4697b9683c856326e0bed3c3", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "63462001011", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["3180"], + "siloPaybackTokensOwed": "246154267", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xf1fced5b0475a935b49b95786adbda2d40794d2d", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "125407334940", + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "2005" + ], "plotIds": [ - "634031481420456", - "647388734023467", - "721225229970053", - "741007335527824", - "743270084189585" + "680560311480251", + "676535946061485" ], - "plotAmounts": ["3170719864", "9748779666", "55487912201", "48848467587", "44269246366"] + "plotAmounts": [ + "10364574980", + "2683720" + ] }, { - "address": "0xefd09cc91a34659b4da25bc22bd0d1380cbc47ec", + "address": "0xf25ba658b15a49d66b5b414f7718c2e579950aac", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "22059802", + "siloPaybackTokensOwed": "1", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xf115d93a31e79cca4697b9683c856326e0bed3c3", + "address": "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "246154267", + "siloPaybackTokensOwed": "1893551014", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", + "address": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "1893551014", + "siloPaybackTokensOwed": "23959976085", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], "plotAmounts": [] }, { - "address": "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", + "address": "0xf55f7118fa68ae5a52e0b2d519bffcbdb7387afa", "whitelisted": true, "claimed": false, - "siloPaybackTokensOwed": "23959976085", + "siloPaybackTokensOwed": "3038420250", "fertilizerIds": [], "fertilizerAmounts": [], "plotIds": [], @@ -1889,6 +3257,80 @@ "plotIds": [], "plotAmounts": [] }, + { + "address": "0xf6cca4d94772fff831bf3a250a29de413d304fc5", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "72915448", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xf6fbdecb1193f6b15659ce747bfc561e06f1214a", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xf75e363f695eb259d00bfa90e2c2a35d3bfd585f", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "344699619094876" + ], + "plotAmounts": [ + "31013750000" + ] + }, + { + "address": "0xf7d4699bb387bc4152855fcd22a1031511c6e9b6", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "4771504043", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xf7d48932f456e98d2ff824e38830e8f59de13f4a", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "0", + "fertilizerIds": [ + "2313052", + "2502666" + ], + "fertilizerAmounts": [ + "912", + "20" + ], + "plotIds": [ + "32350896326307" + ], + "plotAmounts": [ + "22543240" + ] + }, + { + "address": "0xf8aa30a3acfad49efbb6837f8fea8225d66e993b", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "101291627622", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, { "address": "0xf90a01af91468f5418cda5ed6b19c51550eb5352", "whitelisted": true, @@ -1904,9 +3346,79 @@ "whitelisted": true, "claimed": false, "siloPaybackTokensOwed": "25836910088", - "fertilizerIds": ["6000000"], - "fertilizerAmounts": ["1852"], - "plotIds": ["740648921884436", "657971448171764", "76202249214022", "644415322342082"], - "plotAmounts": ["39104687507", "15036330875", "8000000000", "6773000000"] + "fertilizerIds": [ + "6000000" + ], + "fertilizerAmounts": [ + "1852" + ], + "plotIds": [ + "740648921884436", + "657971448171764", + "76202249214022", + "644415322342082" + ], + "plotAmounts": [ + "39104687507", + "15036330875", + "8000000000", + "6773000000" + ] + }, + { + "address": "0xfba3ca5d207872ed1984eae82e0d3c8074e971c1", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3200000000", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xfcf6a3d7eb8c62a5256a020e48f153c6d5dd6909", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "96", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xfe84ced1581a0943abea7d57ac47e2d01d132c98", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "1", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xfefe31009b95c04e062aa89c975fb61b5bd9e785", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "3558492484", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [], + "plotAmounts": [] + }, + { + "address": "0xff4a6b6f1016695551355737d4f1236141ec018d", + "whitelisted": true, + "claimed": false, + "siloPaybackTokensOwed": "42899504913", + "fertilizerIds": [], + "fertilizerAmounts": [], + "plotIds": [ + "214537269214618", + "214926241229465" + ], + "plotAmounts": [ + "22947230644", + "22806010929" + ] } -] +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/contractAccounts.json b/scripts/beanstalkShipments/data/contractAccounts.json index 34e1ed29..13e288d9 100644 --- a/scripts/beanstalkShipments/data/contractAccounts.json +++ b/scripts/beanstalkShipments/data/contractAccounts.json @@ -1,60 +1,114 @@ [ + "0x0000000000003f5e74c1ba8a66b48e6f3d71ae82", + "0x0000000000007f150bd6f54c40a34d7c3d5e9f56", + "0x000000000035b5e5ad9019092c665357240f594e", + "0x00000000003b3cc22af3ae1eac0440bcee416b40", "0x00000000003e04625c9001717346dd811ae5eba2", + "0x00000000500e2fece27a7600435d0c48d64e0c00", + "0x000000005736775feb0c8568e7dee77222a26880", + "0x00000000a1f2d3063ed639d19a6a56be87e25b1a", + "0x01ff6318440f7d5553a82294d78262d5f5084eff", "0x0245934a930544c7046069968eb4339b03addfcf", "0x04dc1bdcb450ea6734f5001b9cecb0cd09690f4f", - "0x0519064e3216cf6d6643cc65db1c39c20abe50e0", + "0x0536f43136d5479310c01f82de2c04c0115217a6", + "0x07197a25bf7297c2c41dd09a79160d05b6232bcf", + "0x078ad2aa3b4527e4996d087906b2a3da51bba122", "0x08e0f0de1e81051826464043e7ae513457b27a86", + "0x0c565f3a167df783cf6bb9fcf174e6c7d0d3892b", "0x0f9548165c4960624debb7e38b504e9fd524d6af", + "0x10e1439455bd2624878b243819e31cfee9eb721c", + "0x1202fba35cc425c07202baa4b17fa9a37d2dbebb", + "0x1223fb83511d643cd2f1e6257f8b77fe282e8699", + "0x130ffd7485a0459fb34b9adbecf1a6dda4a497d5", + "0x141b5a59b40efcfe77d411cad4812813f44a7254", "0x153072c11d6dffc0f1e5489bc7c996c219668c67", + "0x162852f5d4007b76d3cdc432945516b9bbf1a01f", + "0x16cfa7ca52268cfc6d701b0d47f86bfc152694f3", + "0x1860a5c708c1e982e293aa4338bdbcafb7cb90ac", + "0x18ed928719a8951729fbd4dbf617b7968d940c7b", "0x19dde5f247155293fb8c905d4a400021c12fb6f0", "0x19dfdc194bb5cf599af78b1967dbb3783c590720", + "0x1b91e045e59c18aefb02a29b38bccd46323632ef", + "0x1d0a4fee04892d90e2b8a4c1836598b081bb949f", + "0x1d6e8bac6ea3730825bde4b005ed7b2b39a2932d", "0x20db9f8c46f9cd438bfd65e09297350a8cdb0f95", - "0x224e69025a2f705c8f31efb6694398f8fd09ac5c", + "0x21194d506ab47c531a7874b563dfa3787b3938a5", + "0x226cb5b4f8aae44fbc4374a2be35b3070403e9da", + "0x22aa1f4173b826451763ebfce22cf54a0603163c", + "0x22f92b5cb630524af4e6c5031249931a77c43845", + "0x23444f470c8760bef7424c457c30dc2d4378974b", "0x234831d4cff3b7027e0424e23f019657005635e1", "0x251fae8f687545bdd462ba4fcdd7581051740463", "0x25f030d68e56f831011c8821913ced6248dd0676", + "0x25f69051858d6a8f9a6e54dafb073e8ef3a94c1e", + "0x2745a1f9774ff3b59cbdfc139c6f19f003392e2c", + "0x2800b279e11e268d9d74af01c551a9c52eab1be3", + "0x28a23f0679d435fa70d41a5a9f782f04134cd0d4", + "0x2908a0379cbafe2e8e523f735717447579fc3c37", "0x2a40aaf3e076187b67ccce82e20da5ce27caa2a7", "0x2bf9b1b8cc4e6864660708498fb004e594efc0b8", + "0x2c4fe365db09ad149d9caec5fd9a42f60a0cf1a3", + "0x2c6a44918f12fdea9cd14c951e7b71df824fdba4", "0x2d0ba6af26c6738feaacb6d85da29d3fadda1706", - "0x2d0ddb67b7d551afa7c8fa4d31f86da9cc947450", - "0x2e4145a204598534ea12b772853c08e736248e7b", + "0x2f0424705ab89e72c6b9faebff6d4265f9d25fa2", "0x2f65904d227c3d7e4bbbb7ea10cfc36cd2522405", "0x305b0ecf72634825f7231058444c65d885e1f327", + "0x317b157e02c3b5a16efc3cc4eb26accc1cff24e3", + "0x326481a3b0c792cc7df1df0c8e76490b5ccd7031", + "0x334f12f269213371fb59b328bb6e182c875e04b2", "0x33ee1fa9ed670001d1740419192142931e088e79", - "0x36def8a94e727a0ff7b01d2f50780f0a28fb74b6", - "0x3800645f556ee583e20d6491c3a60e9c32744376", "0x3cc6cc687870c972127e073e05b956a1ee270164", + "0x3d93420aa8512e2bc7d77cb9352d752881706638", "0x3f9208f556735504e985ff1a369af2e8ff6240a3", "0x4088e870e785320413288c605fd1bd6bd9d5bdae", "0x40ca67ba095c038b711ad37bbebad8a586ae6f38", - "0x41dd131e460e18befd262cf4fe2e2b2f43f6fb7b", - "0x44db0002349036164dd46a04327201eb7698a53e", - "0x4733a76e10819ff1fa603e52621e73df2ce5c30a", + "0x42b2c65db7f9e3b6c26bc6151ccf30cce0fb99ea", + "0x46c4128981525aa446e02ffb2ff762f1d6a49170", "0x47b2efa18736c6c211505aefd321bec3ac3e8779", "0x49072cd3bf4153da87d5eb30719bb32bda60884b", + "0x499dd900f800fd0a2ed300006000a57f00fa009b", "0x4c22f22547855855b837b84cf5a73b4c875320cb", "0x4c366e92d46796d14d658e690de9b1f54bfb632f", "0x4f70ffddab3c60ad12487b2906e3e46d8bc72970", - "0x504c11bdbe6e29b46e23e9a15d9c8d2e2e795709", - "0x512e3eb472d53df71db0252cb8dccd25cd05e9e9", + "0x5136a9a5d077ae4247c7706b577f77153c32a01c", "0x51aad11e5a5bd05b3409358853d0d6a66aa60c40", + "0x51cf86829ed08be4ab9ebe48630f4d2ed9f54f56", + "0x51e7b8564f50ec4ad91877e39274bda7e6eb880a", "0x52d4d46e28dc72b1cef2cb8eb5ec75dd12bc4df3", + "0x538c3fe98a11fba5d7c70fd934c7299bffcfe4de", "0x53ba90071ff3224adca6d3c7960ad924796fed03", "0x542a94e6f4d9d15aae550f7097d089f273e38f85", + "0x55038f72943144983baab03a0107c9a237bd0da9", "0x554b1bd47b7d180844175ca4635880da8a3c70b9", - "0x5d02957cf469342084e42f9f4132403ea4c5fe01", - "0x5dfbb2344727462039eb18845a911c3396d91cf2", + "0x562f223a5847daae5faa56a0883ed4d5e8ee0ee0", + "0x579de8e7da10b45b43a24ac21da8b1a3a9452d64", + "0x59dc1eae22eebd6cfbd144ee4b6f4048f8a59880", + "0x5e4c21c30c968f1d1ee37c2701b99b193b89d3f3", "0x5eefd9c64d8c35142b7611ae3a6decfc6d7a8a5e", "0x5fba3e7eeeb50a4dc3328e2f974e0d608b38913e", + "0x609a7742acb183f5a365c2d40d80e0f30007a597", "0x61e193e514de408f57a648a641d9fcd412cded82", + "0x6301add4fb128de9778b8651a2a9278b86761423", + "0x6363f3da9d28c1310c2eabdd8e57593269f03ff8", "0x63a7255c515041fd243440e3db0d10f62f9936ae", - "0x64298a72f4e3e23387efc409fc424a3f17356fc4", "0x647bc16dcc2a3092a59a6b9f7944928d94301042", + "0x6609dfa1cb75d74f4ff39c8a5057bd111fba5b22", + "0x66f049111958809841bbe4b81c034da2d953aa0c", + "0x68781516d80ec9339ecdf5996dfbcafb8afe8e22", + "0x68ca44ed5d5df216d10b14c13d18395a9151224a", + "0x6a9d63cbb02b6a7d5d09ce11d0a4b981bb1a221d", + "0x6e93e171c5223493ad5434ac406140e89bd606de", + "0x6f98da2d5098604239c07875c6b7fd583bc520b9", + "0x6f9cee855cb1f362f31256c65e1709222e0f2037", + "0x70c8ee0223d10c150b0db98a0423ec18ec5aca89", + "0x71f9ccd68bf1f5f9b571f509e0765a04ca4ffad2", "0x735cab9b02fd153174763958ffb4e0a971dd7f29", "0x73cbc02516f5f4945ce2f2facf002b2c6aa359e7", - "0x749461444e750f2354cf33543c941e87d747f12f", + "0x78fd06a971d8bd1ccf3ba2e16cd2d5ea451933e2", + "0x7ac34681f6aaeb691e150c43ee494177c0e2c183", "0x7bf4b9d4ec3b9aab1f00dad63ea58389b9f68909", - "0x7d31bf47dda62c185a057b4002f1235fc3c8ae82", + "0x7ca44c05aa9fcb723741cbf8d5c837931c08971a", + "0x7cd222530d4d10e175c939f55c5dc394d51aadaa", "0x7e04231a59c9589d17bcf2b0614bc86ad5df7c11", "0x81b9cfcb1dc180acaf7c187db5fe2c961f74d67e", "0x83a758a6a24fe27312c1f8bda7f3277993b64783", @@ -62,53 +116,96 @@ "0x8525664820c549864982d4965a41f83a7d26af58", "0x85312d6a50928f3ffc7a192444601e6e04a428a2", "0x85789dab691cfb2f95118642d459e3301ac88aba", - "0x8950d9117c136b29a9b1ae8cd38db72226404243", - "0x8a6eeb9b64eeba8d3b4404bf67a7c262c555e25b", + "0x86a41524cb61edd8b115a72ad9735f8068996688", + "0x87b6c8734180d89a7c5497ab91854165d71fad60", + "0x897f27d11c2dd9f4e80770d33b681232e93e2b62", + "0x89aa0d7ebdcc58d230af421676a8f62ca168d57a", "0x8b2dbfded8802a1af686fef45dd9f7babfd936a2", "0x8bea73aac4f7ef9daded46359a544f0bb2d1364f", + "0x8d06ffb1500343975571cc0240152c413d803778", + "0x8f21151d98052ec4250f41632798716695fb6f52", "0x8fe7261b58a691e40f7a21d38d27965e2d3afd6e", "0x9008d19f58aabd9ed0d60971565aa8510560ab41", + "0x90746a1393a772af40c9f396b730a4ffd024bb63", + "0x90f15e09b8fb5bc080b968170c638920db3a3446", + "0x9362c5f4fd3fa3989e88268fb3e0d69e9eeb1705", + "0x96d4f9d8f23eadee78fc6824fc60b8c1ce578443", + "0x9ec255f1af4d3e4a813aadab8ff0497398037d56", "0x9f15de1a169d3073f8fba8de79e4ba519b19c64d", + "0xa1006d0051a35b0000f961a8000000009ea8d2db", + "0xa10fca31a2cb432c9ac976779dc947cfdb003ef0", + "0xa405e822d1c3a8568c6b82eb6e570fca0136f802", + "0xa5f158e596d0e4051e70631d5d72a8ee9d5a3b8a", + "0xa6b2876743d22a11d6941d84738abda7669fcacf", + "0xa8dc7990450cf6a9d40371ef71b6fa132eeabb0e", + "0xa8ecaf8745c56d5935c232d2c5b83b9cd3de1f6a", "0xaa420e97534ab55637957e868b658193b112a551", - "0xaab4dfe6d735c4ac46217216fe883a39fbfe8284", + "0xaa44cac4777dcb5019160a96fbf05a39b41edd15", + "0xad503b72fc36a699bf849bb2ed4c3db1967a73da", + "0xad63e4d4be2229b080d20311c1402a2e45cf7e75", "0xae7861c80d03826837a50b45aecf11ec677f6586", + "0xaeb9a1fddc21b1624f5ed6acc22d659fc0e381ca", "0xb02f6c30bcf0d42e64712c28b007b85c199db43f", + "0xb03f5438f9a243de5c3b830b7841ec315034cd5f", "0xb1720612d0131839dc489fcf20398ea925282fca", + "0xb3f7df25cb052052df6d73d83edbf6a2238c67de", + "0xb3fcd22ffd34d75c979d49e2e5fb3a3405644831", "0xb423a1e013812fcc9ab47523297e6be42fb6157e", + "0xb490ac9d599c2d4fc24cc902ea4cd5af95eff6e9", "0xb651078d1856eb206fb090fd9101f537c33589c2", + "0xb788d42d5f9b50eacbf04253135e9dd73a790bb4", + "0xb9919d9b5609328f1ab7b2a9202d4d4bbe3be202", + "0xba9d7bdc69d77b15427346d30796e0353fa245dc", "0xbab04a0614a1747f6f27403450038123942cf87b", "0xbc7c5f21c632c5c7ca1bfde7cbff96254847d997", + "0xbcc7f6355bc08f6b7d3a41322ce4627118314763", + "0xbe7395d579cba0e3d7813334ff5e2d3cfe1311ba", "0xbe9998830c38910ef83e85eb33c90dd301d5516e", + "0xbf3f6477dbd514ef85b7d3ec6ac2205fd0962039", "0xbf912cb4d1c3f93e51622fae0bfa28be1b4b6c6c", "0xbfc7e3604c3bb518a4a15f8ceeaf06ed48ac0de2", - "0xc08f967ed52dcffd5687b56485ee6497502ef91d", "0xc1146f4a68538a35f70c70434313fef3c4456c33", - "0xc16aa2e25f2868fea5c33e6a0b276dce7ee1ee47", - "0xc18676501a23a308191690262be4b5d287104564", - "0xc3391169cbbaa16b86c625b0305cfdf0ccbba40f", - "0xc51fefb9ef83f2d300448b22db6fac032f96df3f", + "0xc1d1f253e40d2796fb652f9494f2cee8255a0a4f", + "0xc8801ffaaa9dfcce7299e7b4eb616741ea01f5de", "0xc896e266368d3eb26219c5cc74a4941339218d86", - "0xc93678ec2b974a7ae280341cefeb85984a29fff7", - "0xca4a31c7ebcb126c60fab495a4d7b545422f3aaf", + "0xcaf0cdbf6fd201ce4f673f5c232d21dd8225f437", + "0xcb1667b6f0cd39c9a38edadcfa743de95cb65368", + "0xcd1d766aa27655cba70d10723bcc9f03a3fe489a", + "0xcd5561b1be55c1fa4bba4749919a03219497b6ef", "0xceb15131d3c0adcffbfe229868b338ff24ed338a", + "0xcf0dcc80f6e15604e258138cca455a040ecb4605", "0xd15b5fa5370f0c3cc068f107b7691e6dab678799", + "0xd1818a80dac94fa1db124b9b1a1bb71dc20f228d", "0xd20b976584bf506baf5cc604d1f0a1b8d07138da", - "0xdbab0b75921e3008fd0bb621a8248d969d2d2f0d", + "0xd5ae1639e5ef6ecf241389894a289a7c0c398241", "0xdd9f24efc84d93deef3c8745c837ab63e80abd27", "0xdda42f12b8b2ccc6717c053a2b772bad24b08cbd", "0xde33e58f056ff0f23be3ef83ab6e1e0bec95506f", - "0xdff24806405f62637e0b44cc2903f1dfc7c111cd", - "0xe4452cb39ad3faa39434b9d768677b34dc90d5dc", - "0xe57384b12a2b73767cdb5d2eaddfd96cc74753a6", "0xe596607344348723aa3e9a1a8551577dcca6c5b5", - "0xe83120c1d336896de42dea2f5fd58fef1b6b9934", + "0xe8ab75921d5f00cc982be1e8a5cf435e137319e9", "0xea3154098a58eebfa89d705f563e6c5ac924959e", - "0xefd09cc91a34659b4da25bc22bd0d1380cbc47ec", + "0xec62e790d671439812a9958973acadb017d5ff4d", + "0xed0f30677c760ea8f0bff70c76eafc79d5f7c3c8", + "0xeef86c2e49e11345f1a693675df9a38f7d880c8f", "0xf115d93a31e79cca4697b9683c856326e0bed3c3", + "0xf1fced5b0475a935b49b95786adbda2d40794d2d", + "0xf25ba658b15a49d66b5b414f7718c2e579950aac", "0xf2d47e78dea8e0f96902c85902323d2a2012b0c0", "0xf33332d233de8b6b1340039c9d5f3b2a04823d93", + "0xf55f7118fa68ae5a52e0b2d519bffcbdb7387afa", "0xf58f3dbb422624fe0dd9e67de9767c149bf04fdd", "0xf62405e188bb9629ed623d60b7c70dcc4e2abd81", + "0xf6cca4d94772fff831bf3a250a29de413d304fc5", + "0xf6fbdecb1193f6b15659ce747bfc561e06f1214a", + "0xf75e363f695eb259d00bfa90e2c2a35d3bfd585f", + "0xf7d4699bb387bc4152855fcd22a1031511c6e9b6", + "0xf7d48932f456e98d2ff824e38830e8f59de13f4a", + "0xf8aa30a3acfad49efbb6837f8fea8225d66e993b", "0xf90a01af91468f5418cda5ed6b19c51550eb5352", - "0xfb5caae76af8d3ce730f3d62c6442744853d43ef" -] \ No newline at end of file + "0xfb5caae76af8d3ce730f3d62c6442744853d43ef", + "0xfba3ca5d207872ed1984eae82e0d3c8074e971c1", + "0xfcf6a3d7eb8c62a5256a020e48f153c6d5dd6909", + "0xfe84ced1581a0943abea7d57ac47e2d01d132c98", + "0xfefe31009b95c04e062aa89c975fb61b5bd9e785", + "0xff4a6b6f1016695551355737d4f1236141ec018d" +] diff --git a/scripts/beanstalkShipments/data/productionAddresses.json b/scripts/beanstalkShipments/data/productionAddresses.json new file mode 100644 index 00000000..a841411c --- /dev/null +++ b/scripts/beanstalkShipments/data/productionAddresses.json @@ -0,0 +1,11 @@ +{ + "siloPayback": "0xBa0534B16017E861bA15f1587D8A060e15F7f336", + "siloPaybackImplementation": "0xCebbDb437330a2f9049A4882918762Bc1A5fB582", + "barnPayback": "0x724c87b9A6Ea6BA7A7CF3bfc0309DE778fB28027", + "barnPaybackImplementation": "0xd5a8E2FF523Cb3dB614A669c4044E908Ebaad041", + "contractPaybackDistributor": "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "proxyAdmin": "0xF71f4d69D8Ad7eb6DCfb1c8ac36FDDa3D057500D", + "l1ContractMessenger": "0xD2abd9a7E7F10e3bF4376fb03A07fca729A55b6f", + "network": "base", + "description": "Production addresses for Base mainnet - DO NOT AUTO-INCREMENT" +} diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json index 58019827..b08987c3 100644 --- a/scripts/beanstalkShipments/data/unripeBdvTokens.json +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -3,42 +3,14 @@ "0x000000000000084e91743124a982076C59f10084", "1" ], - [ - "0x0000000000003f5e74C1ba8A66b48E6f3d71aE82", - "1" - ], - [ - "0x0000000000007F150Bd6f54c40A34d7C3d5e9f56", - "1" - ], - [ - "0x000000000035B5e5ad9019092C665357240f594e", - "87" - ], - [ - "0x00000000003b3cc22aF3aE1EAc0440BcEe416B40", - "4397" - ], [ "0x000000001ada84C06b7d1075f17228C34b307cFA", "1100048912" ], - [ - "0x00000000500e2fece27a7600435d0C48d64E0C00", - "35019" - ], - [ - "0x000000005736775Feb0C8568e7DEe77222a26880", - "27" - ], [ "0x000000009D3a9E5C7c620514e1f36905c4eb91E6", "245012495" ], - [ - "0x00000000a1F2d3063Ed639d19a6A56be87E25B1a", - "5" - ], [ "0x001AC61da3301BeFE1F94abc095Bb9732b69F362", "183711553" @@ -107,10 +79,6 @@ "0x01e82e6c90fa599067E1F59323064055F5007A26", "1262131520" ], - [ - "0x01FF6318440f7D5553a82294D78262D5f5084EFF", - "1" - ], [ "0x02009370Ff755704E9acbD96042C1ab832D6067e", "2" @@ -195,6 +163,10 @@ "0x04F095a8B608527B336DcfE5cC8A5Ac253007Dec", "1156086095" ], + [ + "0x0519064e3216cf6d6643Cc65dB1C39C20ABE50e0", + "875658037" + ], [ "0x051f77131b0ea6d149608021E06c7206317782CC", "585933144" @@ -203,10 +175,6 @@ "0x052E8fABDCE1dB054590664944B16e1df4B57898", "3440515" ], - [ - "0x0536f43136d5479310C01f82De2C04C0115217A6", - "6000000000" - ], [ "0x055C419F4841f6A3153E64a4E174a242A4fFA6f0", "467506679" @@ -263,10 +231,6 @@ "0x069e85D4F1010DD961897dC8C095FBB5FF297434", "45064782410" ], - [ - "0x07197a25bF7297C2c41dd09a79160D05b6232BcF", - "1" - ], [ "0x072Fa8a20fA621665B94745A8075073ceAdFE1DC", "3193805381" @@ -283,10 +247,6 @@ "0x07806c232D6F669Eb9cD33FD2834869aa14EE4F4", "2668103539" ], - [ - "0x078ad2Aa3B4527e4996D087906B2a3DA51BbA122", - "1290863" - ], [ "0x07A75Ba044cDAaa624aAbAD27CB95C42510AF4B5", "11739905179" @@ -407,10 +367,6 @@ "0x0C040E41b5b17374b060872295cBE10Ec8954550", "1" ], - [ - "0x0c565f3A167Df783cF6Bb9fcF174E6C7D0d3892B", - "3" - ], [ "0x0c722F3dCf2beBb50fCca45Cd6715EE31A2ad793", "10000000007" @@ -575,18 +531,10 @@ "0x10e03eB5950bEA08bb882e3FF01286665f209F97", "160343221044" ], - [ - "0x10E1439455BD2624878b243819E31CfEE9eb721C", - "20000000" - ], [ "0x10Ec8540E82f4e0bEE54d8c8B72e00609b6CaB38", "2518567350" ], - [ - "0x1152691C30aAd82eB9baE7e32d662B19391e34Db", - "7982716449900" - ], [ "0x1164fe7a76D22EAA66f6A0aDcE3E3a30d9957A5f", "266872905" @@ -623,14 +571,6 @@ "0x11eDedebF63bef0ea2d2D071bdF88F71543ec6fB", "164459514" ], - [ - "0x1202fBA35cc425c07202BAA4b17fA9a37D2dBeBb", - "117603362911" - ], - [ - "0x1223fB83511D643CD2f1e6257f8B77Fe282e8699", - "23287185" - ], [ "0x12263becBe8E1b30B5538b7E2626e47bDbB2585e", "422820831" @@ -679,10 +619,6 @@ "0x12f1412fECBf2767D10031f01D772d618594Ea28", "2413700405" ], - [ - "0x130FFD7485A0459fB34B9adbeCf1a6dDa4A497d5", - "8205939" - ], [ "0x132b0065386A4B750160573f618F3F657A8a370f", "1936" @@ -723,10 +659,6 @@ "0x1416C1FEd9c635ae1673118131c0880fCf71e3f3", "25208741316" ], - [ - "0x141B5A59B40EFCFE77D411cAd4812813F44A7254", - "127477596807" - ], [ "0x142Ae08b246845cec2386b5eACb2D3e98a1E04E3", "2268151086" @@ -803,10 +735,6 @@ "0x15F5BDDB6fC858d85cc3A4B42EFb7848A31499E3", "4092553218144" ], - [ - "0x162852F5D4007B76D3CDc432945516b9bBf1A01f", - "1" - ], [ "0x164d71EE20a76d5ED08A072E3d368346F72640a9", "541764530" @@ -843,10 +771,6 @@ "0x16af50FC999032b3Bc32B6bC1abe138B924b1B0C", "751226948" ], - [ - "0x16cfA7ca52268cFC6D701b0d47F86bFC152694F3", - "2654304111" - ], [ "0x17643ca0570f8f7a04FFf22CEa6a433531e465aE", "19337597662" @@ -875,10 +799,6 @@ "0x184CbD89E91039E6B1EF94753B3fD41c55e40888", "23842551002" ], - [ - "0x1860a5C708c1e982E293aA4338bdbCafB7Cb90aC", - "4269000000" - ], [ "0x18637e9C1f3bBf5D4492D541CE67Dcf39f1609A2", "359034500" @@ -1023,10 +943,6 @@ "0x1cac725Ed2e08F09F77c601D5D92d12d906C4003", "1996636405" ], - [ - "0x1D0a4fee04892d90E2b8a4C1836598b081bB949f", - "276154236" - ], [ "0x1d264de8264a506Ed0E88E5E092131915913Ed17", "409008469" @@ -1047,10 +963,6 @@ "0x1D634ce4e77863113734158C5aF8244567355452", "291413206" ], - [ - "0x1d6E8BAC6EA3730825bde4B005ed7B2B39A2932d", - "1" - ], [ "0x1D7603B4173D52188b37f493107870bC9b4Ce746", "5" @@ -1139,10 +1051,6 @@ "0x21145738198e34A7aF32866913855ce1968006Ef", "136966119136" ], - [ - "0x21194d506Ab47C531a7874B563dFA3787b3938a5", - "318631452" - ], [ "0x214c5645d54A27c66A46734515A8F32C57268Cd9", "31551" @@ -1211,18 +1119,10 @@ "0x22618bCFaCD8eDc20DdB4CC561728f0A56e28dc1", "29548344946" ], - [ - "0x226cb5b4F8Aae44Fbc4374a2be35B3070403e9da", - "2079878" - ], [ "0x2299BAFf6CCAA8b172e324Bcd5CDb756e7065C59", "4346218627" ], - [ - "0x22aA1F4173b826451763EbfCE22cf54A0603163c", - "627861" - ], [ "0x22B725c15c35A299b6e9Aa3b2060416EA2b2030c", "5306903881" @@ -1235,10 +1135,6 @@ "0x22f5413C075Ccd56D575A54763831C4c27A37Bdb", "13768883044" ], - [ - "0x22F92B5Cb630524aF4E6C5031249931a77c43845", - "1" - ], [ "0x2303fD39E04cf4D6471dF5ee945bD0E2CFb6C7a2", "29333388351" @@ -1247,10 +1143,6 @@ "0x2329d6d67Dc1D4dA1858e2fe839C20E7f5456081", "25923031143" ], - [ - "0x23444f470C8760bef7424C457c30DC2d4378974b", - "5670131987" - ], [ "0x237B45906A501102dFdd0cDccb1Fd3D7b869CF36", "175978742" @@ -1383,10 +1275,6 @@ "0x28009881f0Ffe85C90725B8B02be55773647C64a", "6536615" ], - [ - "0x2800B279e11e268d9D74AF01C551A9c52Eab1Be3", - "1290998707760" - ], [ "0x2814D655B6FAa4da36C8E58CCCBAEFDAfa051bE2", "769164273" @@ -1407,10 +1295,6 @@ "0x2894457502751d0F92ed1e740e2c8935F879E8AE", "104389202589" ], - [ - "0x28a23f0679D435fA70D41A5A9F782F04134cd0D4", - "498700937" - ], [ "0x28A40076496E02a9A527D7323175b15050b6C67c", "1663198454" @@ -1439,10 +1323,6 @@ "0x290420874BF65691b98B67D042c06bBC31f85f11", "26" ], - [ - "0x2908A0379cBaFe2E8e523F735717447579Fc3c37", - "136257580592" - ], [ "0x2936227dB7a813aDdeB329e8AD034c66A82e7dDE", "9194586659" @@ -1551,10 +1431,6 @@ "0x2BFB526403f27751d2333a866b1De0ac8D1b58e8", "16107986711" ], - [ - "0x2C6A44918f12fdeA9cd14c951E7b71Df824Fdba4", - "18258" - ], [ "0x2C90f88BE812349fdD5655c9bAd8288c03E7fB23", "12609280618" @@ -1595,6 +1471,10 @@ "0x2e316b0CcCDD0fd846C9e40e3c6BEBAEbA7812A0", "9689005089" ], + [ + "0x2e4145A204598534EA12b772853C08E736248E7B", + "1" + ], [ "0x2e5Ae37154e3F0684a02CC1324359b56592Ee1a8", "519964010798" @@ -1775,10 +1655,6 @@ "0x334bdeAA1A66E199CE2067A205506Bf72de14593", "6910399842" ], - [ - "0x334f12F269213371fb59b328BB6e182C875e04B2", - "327126090709" - ], [ "0x335750d1A6148329c3e2bcd18671cd594D383F9b", "2942785030" @@ -1983,6 +1859,10 @@ "0x37f8E3b0Dfc2A980Ec9CD2C233a054eAa99E9d8A", "7228030518" ], + [ + "0x3800645f556ee583E20D6491c3a60E9c32744376", + "19806759068" + ], [ "0x3804e244b0687A41619CdA590dA47ED0f9772C8B", "149246111387" @@ -2207,10 +2087,6 @@ "0x3d7cdE7EA3da7fDd724482f11174CbC0b389BD8b", "1878" ], - [ - "0x3D93420AA8512e2bC7d77cB9352D752881706638", - "95422611" - ], [ "0x3dc9c874fa91AB41DfA7A6b80aa02676E931aa9F", "71730886701" @@ -2359,6 +2235,10 @@ "0x41CC24B4E568715f33fE803a6C3419708205304d", "1173233856" ], + [ + "0x41DD131e460E18befD262cF4Fe2e2b2F43F6Fb7B", + "671413640603" + ], [ "0x41e2965406330A130e61B39d867c91fa86aA3bB8", "1198526094" @@ -2387,10 +2267,6 @@ "0x428a10825e3529D95dF8C5b841694318Ca95446f", "3786372833" ], - [ - "0x42B2C65dB7F9e3b6c26Bc6151CCf30CcE0fb99EA", - "1" - ], [ "0x42c28A2a06bcc8F647d49797d988732c2C613Ab1", "93580235" @@ -2499,6 +2375,10 @@ "0x44D812A7751AAeE2D517255794DAA3e3fc8117C2", "2896855520" ], + [ + "0x44db0002349036164dD46A04327201Eb7698A53e", + "3597838114" + ], [ "0x44E836EbFEF431e57442037b819B23fd29bc3B69", "5169298937" @@ -2539,10 +2419,6 @@ "0x46aD7865CbaB5387BD24d8842a1C74c8C12D208a", "1" ], - [ - "0x46C4128981525aA446e02FFb2FF762F1D6A49170", - "1" - ], [ "0x46ED8A6431d461C96f498398aa1ff61FC3D5dB7c", "770941958302" @@ -2555,6 +2431,10 @@ "0x47217E48daAf7fe61486b265f701D449a8660A94", "2" ], + [ + "0x4733A76e10819FF1Fa603E52621E73Df2CE5C30A", + "17" + ], [ "0x473812413b6A8267C62aB76095463546C1F65Dc7", "3812137339" @@ -2631,10 +2511,6 @@ "0x4950215d3cd07A71114F2dDDAFA1F845C2cD5360", "8857" ], - [ - "0x499dd900f800FD0A2eD300006000A57f00FA009b", - "1" - ], [ "0x49cE991352A44f7B50AF79b89a50db6289013633", "61392878866" @@ -2907,6 +2783,10 @@ "0x5039ed981CeDfCBBB12c4985Df321c1F9d222440", "102170250" ], + [ + "0x504C11bDBE6E29b46E23e9A15d9c8d2e2e795709", + "1325826360" + ], [ "0x5068aed87a97c063729329c2ebE84cfEd3177F83", "84993" @@ -2932,8 +2812,8 @@ "2117753346" ], [ - "0x5136a9A5D077aE4247C7706b577F77153C32A01C", - "72" + "0x512E3Eb472D53Df71Db0252cb8dccD25cd05E9e9", + "19375570094" ], [ "0x515755b2c5A209976CF0de869c30f45aC7495a60", @@ -2959,14 +2839,6 @@ "0x51cdDDC1Ec0eCb5686c6EA0bC75793A27573243d", "4539944867" ], - [ - "0x51Cf86829ed08BE4Ab9ebE48630F4d2Ed9f54F56", - "647219930" - ], - [ - "0x51E7b8564F50ec4ad91877e39274bdA7E6eb880A", - "4101549406" - ], [ "0x521415eEc0f5bec71704Aaaf9aE0aFe70323FfAB", "23391953092" @@ -3023,10 +2895,6 @@ "0x533af56B4E0F3B278841748E48F61566E6C763D6", "962729403418" ], - [ - "0x538c3fe98a11FBA5d7c70FD934C7299BffCFe4De", - "13111" - ], [ "0x53BD04892c7147E1126bC7bA68f2fB6bF5A43910", "637003184132" @@ -3055,10 +2923,6 @@ "0x5500aa1197f8B05D7cAA35138E22A7cf33F377D6", "5239" ], - [ - "0x55038f72943144983BAab03a0107C9a237bD0da9", - "13872315" - ], [ "0x550586FC064315b54af25024415786843131c8c1", "7388329662" @@ -3099,10 +2963,6 @@ "0x561Cbb53ba4d7912Dbf9969759725BD79D920e2C", "109466234157" ], - [ - "0x562f223a5847DaAe5Faa56a0883eD4d5e8EE0EE0", - "3" - ], [ "0x563F036896c19C6f4287fbE69c10bb63FAC717D6", "30406776882" @@ -3400,8 +3260,8 @@ "61901890" ], [ - "0x5e4c21c30c968F1D1eE37c2701b99B193B89d3f3", - "1" + "0x5dfbB2344727462039eb18845a911C3396d91cf2", + "2513" ], [ "0x5E4fa37a2308FE6152c0B0EbD29fb538A06332b8", @@ -3495,10 +3355,6 @@ "0x6040FDCa7f81540A89D39848dFC393DfE36efb92", "3511796108" ], - [ - "0x609A7742aCB183f5a365c2d40D80E0F30007a597", - "147340046" - ], [ "0x60D788A5267239951E9AFD1eB996B3d5EBff2948", "11943530402" @@ -3579,10 +3435,6 @@ "0x62F96Bcc36Dccf97e1E6c4D2654d864c95d76335", "9447252887" ], - [ - "0x6301Add4fb128de9778B8651a2a9278B86761423", - "26963291792" - ], [ "0x6313E266977CB9ac09fb3023fDE3F0eF2b5ee56d", "420694200000" @@ -3595,10 +3447,6 @@ "0x6343B307C288432BB9AD9003B4230B08B56b3b82", "14465653488" ], - [ - "0x6363F3dA9D28C1310C2EaBdD8e57593269F03fF8", - "2963074788" - ], [ "0x63B98C09120E4eF75b4C122d79b39875F28A6fCc", "2148610332" @@ -3607,6 +3455,10 @@ "0x63C2dc8AFEdB66c9C756834ee0570028933E919C", "2601366994" ], + [ + "0x64298A72F4E3e23387EFc409fc424a3f17356fC4", + "2806" + ], [ "0x642c9e3d3f649f9fcCB9f28707A0260Ba1E156B1", "546134745139" @@ -3647,10 +3499,6 @@ "0x65F992c16CB989B734A1d3CCAf13713391afa6d3", "63087845722" ], - [ - "0x6609DFA1cb75d74f4fF39c8a5057bD111FBA5B22", - "988268302" - ], [ "0x6631E82eDD9f7F209aEF9d2d09fFc2be47d8Ae43", "2851903358" @@ -3691,10 +3539,6 @@ "0x66e4c7e22667A6D80F0C726a160E5DeE9A37223C", "9946889240" ], - [ - "0x66f049111958809841Bbe4b81c034Da2D953AA0c", - "9" - ], [ "0x66F6Ac1E4c4c8aE7D84231451126f613bFE61D98", "5" @@ -3751,10 +3595,6 @@ "0x68575571E75D2CfA4222e0F8E7053F056EB91d6C", "385519014" ], - [ - "0x68781516d80eC9339ecDf5996DfBcafb8AfE8e22", - "4500000000" - ], [ "0x6887b5852847dD89d4C86dFAefaB5B0B236DCD8a", "6043664172" @@ -3819,10 +3659,6 @@ "0x6a93946254899A34FdcB7fBf92dfd2e4eC1399e7", "142552763288" ], - [ - "0x6A9D63cBb02B6A7D5d09ce11D0a4b981Bb1A221d", - "1965220435" - ], [ "0x6ab6828D97289c48C5E2eA59B8C5f99fffA1e3fd", "128324713" @@ -3959,14 +3795,6 @@ "0x6f77E3A2C7819C5DcF0b1f0d53264B65C4Cb7C5A", "92063509426" ], - [ - "0x6F98dA2D5098604239C07875C6B7Fd583BC520b9", - "81825207835" - ], - [ - "0x6F9ceE855cB1F362F31256C65e1709222E0f2037", - "642055137257" - ], [ "0x6fa54cbFDc9D70829Ac9F110BB2B16D8c64fA91C", "105290343631" @@ -4059,10 +3887,6 @@ "0x71ed04D8ee385CB1A9a20d6664d6FBcE6D6d3537", "5" ], - [ - "0x71F9CCd68bf1f5F9b571f509E0765A04ca4fFad2", - "435297010767" - ], [ "0x7211EEaD6c7DB1D1Ebd70F5CbCd8833935A04126", "1292004140900" @@ -4167,6 +3991,10 @@ "0x7482fe6A86C52D6eEb42E92A8F661f5b027d4397", "106405367" ], + [ + "0x749461444e750F2354Cf33543C941e87d747f12f", + "14940730270" + ], [ "0x74B654D9F99cC7cdB7861faD857A6c9b46CF868C", "246992571" @@ -4399,10 +4227,6 @@ "0x7AAEE144a14Ec3ba0E468C9Dcf4a89Fdb62C5AA6", "2" ], - [ - "0x7ac34681F6aAeb691E150c43ee494177C0e2c183", - "1026" - ], [ "0x7Ace5390CAa52Ea0c0D1aB408eE2D27DCE3f2711", "10389385804" @@ -4471,10 +4295,6 @@ "0x7c6236c2fBe586E0E8992160201635Db87B7E543", "1557398129" ], - [ - "0x7Ca44C05AA9fcb723741CBf8D5c837931c08971a", - "1" - ], [ "0x7CA6217b72B630A5fF23c725636Ec2daf385C524", "1941592599" @@ -4499,10 +4319,6 @@ "0x7Ccc734e367c8C3D85c8AF7886721433a30bD8e8", "1495650000" ], - [ - "0x7cd222530d4D10E175c939F55c5dC394d51AaDaA", - "1941428197938" - ], [ "0x7cd5F8291eeB36D2998c703E7db2f94997fCB1F9", "28657471412" @@ -4523,6 +4339,10 @@ "0x7D23f93e0E7722D40EaDa37d5AfB8BD9C6F57677", "6" ], + [ + "0x7D31bf47ddA62C185A057b4002f1235FC3c8ae82", + "400442104" + ], [ "0x7d50bfeAD43d4FDD47a8A61f32305b2dE21068Bd", "2385" @@ -4879,10 +4699,6 @@ "0x86a2059273FA831334F57887A0834c056d7D93A5", "52659438" ], - [ - "0x86A41524CB61edd8B115A72Ad9735F8068996688", - "22676193096" - ], [ "0x86d6facD0C3BD88C0e1e88b4802a8006ec46997b", "2" @@ -4939,10 +4755,6 @@ "0x87A774178D49C919be273f1022de2ae106E2581e", "1151920" ], - [ - "0x87b6c8734180d89A7c5497AB91854165d71fAD60", - "7873358244" - ], [ "0x87C5E5413d60E1419Fd70b17c6D299aA107EfB49", "140058000000" @@ -5007,6 +4819,10 @@ "0x8926E5956d3b3fA844F945b26855c9fB958Da269", "33184416" ], + [ + "0x8950D9117C136B29A9b1aE8cd38DB72226404243", + "10502638743" + ], [ "0x8953738233d6236c4d03bCe5372e20f58BdaAEfE", "90341955" @@ -5015,10 +4831,6 @@ "0x895EDB1B773DBCB90BF56C3D4573Bae65A6398B1", "109066975" ], - [ - "0x897F27d11c2DD9F4E80770D33b681232e93e2B62", - "116901663" - ], [ "0x898a3Af0b87DD21c3DbFDbd58E800c4BDe16a153", "3548309238" @@ -5163,10 +4975,6 @@ "0x8D02496FA58682DB85034bCCCfE7Dd190000422e", "17886959459" ], - [ - "0x8D06Ffb1500343975571cC0240152C413d803778", - "209653369867" - ], [ "0x8d1c3018d6EC8Dc3BFb8c85250787f0b4F745e43", "687930895" @@ -5275,10 +5083,6 @@ "0x8f1076Ad980585af2B207bF4f81eB2334f025f9b", "3317200480" ], - [ - "0x8F21151D98052eC4250f41632798716695Fb6F52", - "74624182595" - ], [ "0x8f3466B326F8A365e4193245255CC2A95DFF6406", "6818862174" @@ -5307,10 +5111,6 @@ "0x9023a931b49D21ba4e51803b584fAC9EA4d91f67", "76302312680" ], - [ - "0x90746A1393A772AF40c9F396b730a4fFd024bB63", - "244153356" - ], [ "0x908766a656D7b3f6fdB073Ee749a1d217bB5e2a2", "4731127660" @@ -5327,10 +5127,6 @@ "0x90Bd317F53EE82fe824eD077fe93d05EF7295d5c", "1731563657" ], - [ - "0x90F15E09B8Fb5BC080B968170C638920Db3A3446", - "10480461744" - ], [ "0x90Fe1AD4F312DCCE621389fc73A06dCcfD923211", "180814789337" @@ -5403,10 +5199,6 @@ "0x935A937903d18f98A705803DC3c5F07277fAb1B6", "1507499334" ], - [ - "0x9362c5f4fD3fA3989E88268fB3e0D69E9eeb1705", - "324094915" - ], [ "0x9383E26556018f0E14D8255C5020d58b3f480Dac", "157490205241" @@ -5535,10 +5327,6 @@ "0x96CF76Eaa90A79f8a69893de24f1cB7DD02d07fb", "30908177318" ], - [ - "0x96D4F9d8F23eadee78fc6824fc60b8c1CE578443", - "1" - ], [ "0x96D9eBF8c3440b91aD2b51bD5107A495ca0513E5", "3123605574" @@ -5915,14 +5703,6 @@ "0xA0Fc2753f42c4061EC37033ba26A179aD2BcaDfE", "7342730225" ], - [ - "0xA1006d0051a35b0000F961a8000000009eA8d2dB", - "240" - ], - [ - "0xa10FcA31A2Cb432C9Ac976779DC947CfDb003EF0", - "10086331" - ], [ "0xA14EDe51540df9d540CE6A9B5327bFDAfB2150e9", "2866" @@ -6027,10 +5807,6 @@ "0xA3e1b60002a24f6cFf3f74E2AA260b8C17bbdF7D", "1529363119" ], - [ - "0xa405e822d1C3A8568c6B82Eb6e570FcA0136F802", - "514" - ], [ "0xA40633dF77e6065C7545cd4fcD79F0Ce2fa42cF1", "5539723025" @@ -6107,10 +5883,6 @@ "0xa6A22bf9285F2B549CaA0A8A49EB7EA9dFd8D03E", "98919350" ], - [ - "0xa6b2876743D22A11d6941d84738Abda7669FcAcF", - "1" - ], [ "0xa6b4669f8A6486159CbeC31C7818877D1C92FB23", "361421485" @@ -6195,14 +5967,6 @@ "0xA8B969a61d87504bcD884e15A782E8F330C60Eda", "920000000" ], - [ - "0xa8DC7990450Cf6A9D40371Ef71B6fa132EeABB0E", - "2059837403" - ], - [ - "0xa8ecAf8745C56D5935c232D2c5b83B9CD3dE1f6a", - "1" - ], [ "0xa8eE3e3c264d6034147fA1F21d691BaC393c7D94", "231399957576" @@ -6271,6 +6035,10 @@ "0xAA790Bd825503b2007Ad11FAFF05978645A92a2C", "250502954658" ], + [ + "0xaAB4DfE6D735c4Ac46217216fE883a39fBFE8284", + "11278869500" + ], [ "0xaB13156930AB437897eF35287161051e92FC1c77", "402457331400" @@ -6343,10 +6111,6 @@ "0xaD42A3C9bFB1C3549C872e2AD05da79c3781f40B", "236767853" ], - [ - "0xAD503B72FC36A699BF849bB2ed4c3dB1967A73da", - "2" - ], [ "0xaD699032a6C129b7B6a8d1154d1d1592C006F7D2", "1" @@ -6383,10 +6147,6 @@ "0xAE94Fc8403B50E2d86A42Acc6565F8e0fa68A31B", "169035333" ], - [ - "0xAeB9A1fddC21b1624f5ed6AcC22D659fc0e381CA", - "42565165976" - ], [ "0xAED278C323a13fD284C5a40182C1aA14d93D87a4", "680082558" @@ -6471,6 +6231,10 @@ "0xB0dAfc466871c29662E5cbf4227322C96A8Ccbe9", "138263230" ], + [ + "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "13208116635058" + ], [ "0xb13c60ee3eCEC5f689469260322093870aA1e842", "1347383897" @@ -6579,10 +6343,6 @@ "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", "859688286973" ], - [ - "0xB3fCD22ffD34D75C979D49E2E5fb3a3405644831", - "1" - ], [ "0xB406e0817EE66AD8c9d8389bb94b4ED50c101431", "84180533980" @@ -6711,10 +6471,6 @@ "0xb78003FCB54444E289969154A27Ca3106B3f41f6", "22963014975" ], - [ - "0xB788D42d5F9B50EAcbF04253135E9DD73A790Bb4", - "5194914245" - ], [ "0xb78afC3695870310E7C337aFBA7925308C1D946f", "537" @@ -6783,10 +6539,6 @@ "0xb95A918186Fe3b016038f2Dd1d9Ce395710f30C0", "36273652" ], - [ - "0xB9919D9B5609328F1Ab7B2A9202D4D4BBE3be202", - "181639411413" - ], [ "0xB9A485811c6564F097fe832eC0F0AA6281997c7c", "1186765" @@ -6815,10 +6567,6 @@ "0xBA682E593784f7654e4F92D58213dc495f229Eec", "342774141" ], - [ - "0xbA9d7BDc69d77b15427346D30796e0353Fa245DC", - "370410744" - ], [ "0xBAe7A9B7Df36365Cb17004FD2372405773273a68", "22533142990" @@ -6915,10 +6663,6 @@ "0xbCC44956d70536bed17C146a4D9E66261BB701DD", "107774490707" ], - [ - "0xbcC7f6355bc08f6b7d3a41322CE4627118314763", - "14" - ], [ "0xBd01F3494FF4f5b6ACa5689CC6220E68d684F146", "1" @@ -6983,10 +6727,6 @@ "0xBE588f2f57A99Ca877a2d0fA59A0cAa3fFBFD4eb", "2257790144" ], - [ - "0xbe7395d579cBa0E3d7813334Ff5e2d3CFe1311Ba", - "8" - ], [ "0xbE8e93FF17304Ba941131539EFe6bE8e3df168aF", "5336372429" @@ -7031,10 +6771,6 @@ "0xBf3dBc90F1A522B4111c9E180FFAf77d65407E3e", "306185115" ], - [ - "0xBf3f6477Dbd514Ef85b7D3eC6ac2205Fd0962039", - "1" - ], [ "0xBf4Aa57563dB2A8185148EC874EA96dff82CeB13", "6608896440" @@ -7079,6 +6815,10 @@ "0xc07fd4632d5792516E2EDc25733e83B3b47ab9aa", "179268396" ], + [ + "0xc08F967ED52dCFfD5687b56485eE6497502ef91d", + "10098440738" + ], [ "0xc0985b8b744C63e23e4923264eFfaC7535E44f21", "415337740" @@ -7115,6 +6855,14 @@ "0xC13D06194E149Ea53f6c823d9446b100eED37042", "672" ], + [ + "0xc16Aa2E25F2868fea5C33E6A0b276dcE7EE1eE47", + "30171401851" + ], + [ + "0xc18676501a23A308191690262bE4B5d287104564", + "6352015813" + ], [ "0xC1877e530858F2fE9642b47c4e6583dec0d4e089", "77546171" @@ -7139,10 +6887,6 @@ "0xC1CeDc9707cAA9869Dca060FCF90054eA8571E42", "2335733788" ], - [ - "0xc1d1f253E40d2796Fb652f9494F2Cee8255A0a4F", - "6" - ], [ "0xC1E03E7f928083AcaC4FEd410cB0963bA61c8E0d", "1865373073" @@ -7207,6 +6951,10 @@ "0xc32e44288A51c864b9c194DFbab6Dc71139A3C4d", "7901011995" ], + [ + "0xC3391169cbbaa16B86c625b0305CfdF0CCbba40F", + "1369600757" + ], [ "0xC343B82Abcc6C0E60494a0F96a58f6F102B58F32", "1404714769" @@ -7275,6 +7023,10 @@ "0xc516f561098Cea752f06C4F7295d0827F1Ba0D6C", "100385471291" ], + [ + "0xC51feFB9eF83f2D300448b22Db6fac032F96DF3F", + "9" + ], [ "0xC52A0B002ac4E62bE0d269A948e55D126a48C767", "13850219367" @@ -7423,10 +7175,6 @@ "0xC85B16C4Da8d63125eCc2558938d7eF4D47EEb40", "2746626540" ], - [ - "0xC8801FFAaA9DfCce7299e7B4Eb616741EA01F5DE", - "2327110514" - ], [ "0xC88FC1f1136c3aC5FAC38b90f64c11Fe8E704962", "311489538" @@ -7447,6 +7195,10 @@ "0xc90923827d774955DC6798ffF540C4E2D29F2DBe", "80" ], + [ + "0xc93678EC2b974a7aE280341cEFeb85984a29FFF7", + "314563805" + ], [ "0xC95186f04B68cfec0D9F585D08C3b5697C858fe0", "1063309612454" @@ -7495,6 +7247,10 @@ "0xca2819B74C29A1eDe92133fdfbaf06D4F5a5Ad4c", "1090464891" ], + [ + "0xca4A31c7ebcb126C60Fab495a4D7b545422f3AAF", + "5595353830" + ], [ "0xCA754d7Fc19e0c3cD56375c584aB9E61443a276d", "5851468591" @@ -7503,14 +7259,6 @@ "0xcA968044EffFf14Bee263CA6Af3b9823f1968f37", "3548148114" ], - [ - "0xCaf0CDBf6FD201ce4f673f5c232D21Dd8225f437", - "5409765207" - ], - [ - "0xcB1667B6F0Cd39C9A38eDadcfA743dE95cB65368", - "2" - ], [ "0xcb1Fda8A2c50e57601aa129ba2981318E025F68E", "8154690" @@ -7603,18 +7351,10 @@ "0xcD181ad6f06cF7d0393D075242E9348dB027d62b", "1787032126" ], - [ - "0xCd1d766aa27655Cba70D10723bCC9f03A3FE489a", - "71359777" - ], [ "0xcd323d75aF5087a45c12229f64e1ef9fb8aAF143", "7952682" ], - [ - "0xcd5561b1be55C1Fa4BbA4749919A03219497B6eF", - "2862022204" - ], [ "0xcD6bA060694CFD27C17F23719de87116CbfE6107", "13252916384" @@ -7651,10 +7391,6 @@ "0xcEf5A94Bb413c8039B490Ef627e20D16db2fFCC3", "690218556" ], - [ - "0xCF0dCc80F6e15604E258138cca455A040ecb4605", - "2" - ], [ "0xCf0F8246F32E74b47F3443D2544f7Bc0d7d889e0", "29954982391" @@ -7735,10 +7471,6 @@ "0xD1720E80f9820a1e980E5F5F1B644cDe257B6bf0", "1912026726" ], - [ - "0xD1818A80DAc94Fa1dB124B9B1A1BB71Dc20f228d", - "25738445409" - ], [ "0xD1b9B5D009b636CCeC62664EB74d3b4EDbf9E691", "5725196187" @@ -7903,10 +7635,6 @@ "0xd582359cC7c463aAd628936d7D1E31A20d6996f3", "60618362079" ], - [ - "0xd5aE1639e5EF6Ecf241389894a289a7C0c398241", - "54337229968" - ], [ "0xd5d9aC9C658560071c66385E97c7387E7aeeB916", "19280071498" @@ -8163,6 +7891,10 @@ "0xdb97D72f8EA5Fb3a351EA2a7C6201b932d131661", "2215630589139" ], + [ + "0xdBab0B75921E3008Fd0bB621A8248D969d2d2F0d", + "741733199" + ], [ "0xdbB311A1A4f1c02989593Ca70BA6e75300F9F12D", "246595082116" @@ -8303,6 +8035,10 @@ "0xdfdF626Cd38e41c6F3Cc72B271fe13303A224934", "100000002" ], + [ + "0xdff24806405f62637E0b44cc2903F1DfC7c111Cd", + "78016072001" + ], [ "0xE02A25580b96BE0B9986181Fd0b4CF2b9FD75Ec2", "5" @@ -8443,6 +8179,10 @@ "0xe43e06794069FeF7A93c1Ab5ef918CfC65e86E00", "5732691529" ], + [ + "0xE4452Cb39ad3Faa39434b9D768677B34Dc90D5dc", + "20310337401" + ], [ "0xE44E071BFE771158a7660dc13daB67de94f8273c", "24322066229" @@ -8483,6 +8223,10 @@ "0xE558619863102240058d9784a0AdF7c886Fb92fC", "79348386" ], + [ + "0xe57384b12A2b73767cDb5d2eadDFD96cC74753a6", + "230700000" + ], [ "0xe58000ce4dd92a478959a24392d43D4c100C85Fd", "41275351494" @@ -8555,6 +8299,10 @@ "0xe82c4470c22ECD75393D508d709f6476043be567", "1036853231" ], + [ + "0xe83120C1D336896De42dEa2f5fD58Fef1b6b9934", + "26132575726" + ], [ "0xE8332043e54A2470e148f0c1ac0AF188d9D46524", "429169" @@ -8695,10 +8443,6 @@ "0xEC5b22756D0191fBbB4AFffDd5ae2A660538D196", "2118503375" ], - [ - "0xec62e790d671439812A9958973acADB017d5Ff4D", - "52880745297" - ], [ "0xEc89e2fc68D563595B82acBf1aaC1c7F1ECFe0dF", "1209478752" @@ -8715,10 +8459,6 @@ "0xED02cbe1BeEa0891cCfC565B839a947c3d2fAb5C", "2564156855" ], - [ - "0xED0f30677C760Ea8f0BfF70C76eaFc79D5f7C3c8", - "10332383424" - ], [ "0xeD131296C195a783d513EA8d439289f6Cf6295Fc", "57380404548" @@ -8779,10 +8519,6 @@ "0xEeCD7796c92978a7E0e8F6754367F365E6e7E1fd", "1177623569" ], - [ - "0xEef86c2E49E11345F1a693675dF9a38f7d880C8F", - "44975655" - ], [ "0xEf1335914A41F20805bF3b74C7B597aFc4dAFbee", "44995484859" @@ -8839,6 +8575,10 @@ "0xeFcc546826B5fa682c4931d0c83c49D208eC3B84", "3265858233" ], + [ + "0xefD09Cc91a34659B4Da25bc22Bd0D1380cBC47Ec", + "22059802" + ], [ "0xefE45908DfBEef7A00ED2e92d3b88afD7a32c95C", "18573515721" @@ -8919,18 +8659,10 @@ "0xF1F90739858584CEC5F198C2c9926c1d6Bfeb1BB", "57853394087" ], - [ - "0xf1FCeD5B0475a935b49B95786aDBDA2d40794D2d", - "125407334940" - ], [ "0xF230B3EDaD4bE957Cc23aB1e94024181f7df7aA4", "10453728" ], - [ - "0xf25ba658b15A49D66b5b414F7718c2E579950aac", - "1" - ], [ "0xF269a21A2440224DD5B9dACB4e0759eCAC1E7eF5", "17798035454" @@ -9039,10 +8771,6 @@ "0xF54fCb4859f10019AEdaB0eBc4BB8C5C99591666", "49" ], - [ - "0xf55F7118fa68ae5a52e0B2d519BfFcbDb7387AFA", - "3038420250" - ], [ "0xF5664196ce7d0714Ee400C4C239b29608c9314Cd", "7964683539" @@ -9103,18 +8831,10 @@ "0xF6aF57C78B8635f7a3413fBB477DE47cAd01DcCf", "2405300471" ], - [ - "0xf6cCa4d94772Fff831bf3a250A29dE413d304Fc5", - "72915448" - ], [ "0xF6f6d531ed0f7fa18cae2C73b21aa853c765c4d8", "4" ], - [ - "0xf6FbDeCb1193f6b15659cE747bfC561E06f1214a", - "3" - ], [ "0xf70A76bFC303AF23eC3CE34900aF9eA4df1407B7", "597994699" @@ -9143,10 +8863,6 @@ "0xf7acc9E4E4F82300b9A92Bc4D539C7928c23233B", "61481320286" ], - [ - "0xF7d4699Bb387bC4152855fcd22A1031511C6e9b6", - "4771504043" - ], [ "0xF808adAAb2B3A2dfa1d658cB9E187fF3b74CC0aC", "486532483681" @@ -9183,10 +8899,6 @@ "0xF88D3861f620699C4B3ec5D6191FFbF164CfbBC3", "202342870413" ], - [ - "0xf8aA30A3aCFaD49efbB6837f8fEa8225D66E993b", - "101291627622" - ], [ "0xf8BaC06C2D8AA828ebbB0e475ce72f07462f28e1", "47279833037" @@ -9291,10 +9003,6 @@ "0xFB8A7286FAbA378a15F321Cd82425B6B5E855B27", "90328046207" ], - [ - "0xFBa3CA5d207872eD1984eAe82e0D3c8074e971c1", - "3200000000" - ], [ "0xFbBE32689ED289EbCe46876F9946aA4F2d6b4f55", "48894648832" @@ -9331,10 +9039,6 @@ "0xfcce6CE62A8C9fa9D6647C953c26358B139C1679", "14428800691" ], - [ - "0xfcf6a3d7eb8c62a5256a020e48f153c6D5Dd6909", - "96" - ], [ "0xfcFAf5f45D86Fa16eC801a8DeFEd5D2cB196D242", "2440875253" @@ -9391,10 +9095,6 @@ "0xFE7A7F227967104299E2ED9c47ca28eADc3a7C5f", "2" ], - [ - "0xFe84Ced1581a0943aBEa7d57ac47E2d01D132c98", - "1" - ], [ "0xFE9FeE8A2Ebf2fF510a57bD6323903a659230F21", "37759189" @@ -9415,18 +9115,10 @@ "0xfEF6d723D51ed68C50A48F6A29F8F8bc15EF0943", "29705734263" ], - [ - "0xFeFE31009B95c04E062Aa89C975Fb61B5Bd9e785", - "3558492484" - ], [ "0xff266f62a0152F39FCf123B7086012cEb292516A", "4865144278" ], - [ - "0xFf4A6b6F1016695551355737d4F1236141ec018D", - "42899504913" - ], [ "0xFF5075E22D80C280cd8531bF2D72E19dFBC674B7", "12686867419" diff --git a/scripts/beanstalkShipments/initializeBarnPayback.js b/scripts/beanstalkShipments/initializeBarnPayback.js index ceab6661..7ed923e0 100644 --- a/scripts/beanstalkShipments/initializeBarnPayback.js +++ b/scripts/beanstalkShipments/initializeBarnPayback.js @@ -4,34 +4,43 @@ const { getContractAddress, verifyDeployedAddresses } = require("./utils/address /** * Initialize BarnPayback contract with fertilizer data * This is Step 1.6 of the Beanstalk Shipments deployment - * Reads deployed BarnPayback address from cache and mints fertilizers + * Reads deployed BarnPayback address from cache or production and mints fertilizers * * @param {Object} params - Initialization parameters * @param {Object} params.account - Account to use for transactions * @param {boolean} params.verbose - Enable verbose logging * @param {number} params.startFromChunk - Resume from chunk number (0-indexed) * @param {number} params.targetEntriesPerChunk - Entries per chunk (default: 300) + * @param {boolean} params.useDeployed - Use production addresses instead of dev addresses */ async function initializeBarnPayback({ account, verbose = true, startFromChunk = 0, - targetEntriesPerChunk = 300 + targetEntriesPerChunk = 300, + useDeployed = false }) { if (verbose) { console.log("\nšŸ“¦ STEP 1.6: INITIALIZING BARN PAYBACK CONTRACT"); console.log("-".repeat(50)); + if (useDeployed) { + console.log("šŸ­ Using production addresses (--use-deployed)"); + } } // Verify deployed addresses exist - if (!verifyDeployedAddresses()) { - throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + if (!verifyDeployedAddresses(useDeployed)) { + if (useDeployed) { + throw new Error("Production addresses not found. Check productionAddresses.json."); + } else { + throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + } } - // Get BarnPayback address from cache - const barnPaybackAddress = getContractAddress("barnPayback"); + // Get BarnPayback address from cache or production + const barnPaybackAddress = getContractAddress("barnPayback", useDeployed); if (!barnPaybackAddress) { - throw new Error("BarnPayback address not found in cache"); + throw new Error("BarnPayback address not found"); } if (verbose) { diff --git a/scripts/beanstalkShipments/initializeContractPaybackDistributor.js b/scripts/beanstalkShipments/initializeContractPaybackDistributor.js index 9b79b465..630b97ce 100644 --- a/scripts/beanstalkShipments/initializeContractPaybackDistributor.js +++ b/scripts/beanstalkShipments/initializeContractPaybackDistributor.js @@ -4,34 +4,46 @@ const { getContractAddress, verifyDeployedAddresses } = require("./utils/address /** * Initialize ContractPaybackDistributor contract with account data * This is Step 1.7 of the Beanstalk Shipments deployment - * Reads deployed ContractPaybackDistributor address from cache and initializes account data + * Reads deployed ContractPaybackDistributor address from cache or production and initializes account data * * @param {Object} params - Initialization parameters * @param {Object} params.account - Account to use for transactions * @param {boolean} params.verbose - Enable verbose logging * @param {number} params.startFromChunk - Resume from chunk number (0-indexed) * @param {number} params.targetEntriesPerChunk - Entries per chunk (default: 25) + * @param {boolean} params.useDeployed - Use production addresses instead of dev addresses */ async function initializeContractPaybackDistributor({ account, verbose = true, startFromChunk = 0, - targetEntriesPerChunk = 25 + targetEntriesPerChunk = 25, + useDeployed = false }) { if (verbose) { console.log("\nšŸ“¦ STEP 1.7: INITIALIZING CONTRACT PAYBACK DISTRIBUTOR"); console.log("-".repeat(50)); + if (useDeployed) { + console.log("šŸ­ Using production addresses (--use-deployed)"); + } } // Verify deployed addresses exist - if (!verifyDeployedAddresses()) { - throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + if (!verifyDeployedAddresses(useDeployed)) { + if (useDeployed) { + throw new Error("Production addresses not found. Check productionAddresses.json."); + } else { + throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + } } - // Get ContractPaybackDistributor address from cache - const contractPaybackDistributorAddress = getContractAddress("contractPaybackDistributor"); + // Get ContractPaybackDistributor address from cache or production + const contractPaybackDistributorAddress = getContractAddress( + "contractPaybackDistributor", + useDeployed + ); if (!contractPaybackDistributorAddress) { - throw new Error("ContractPaybackDistributor address not found in cache"); + throw new Error("ContractPaybackDistributor address not found"); } if (verbose) { diff --git a/scripts/beanstalkShipments/initializeSiloPayback.js b/scripts/beanstalkShipments/initializeSiloPayback.js index bc1d8769..a4d7ed60 100644 --- a/scripts/beanstalkShipments/initializeSiloPayback.js +++ b/scripts/beanstalkShipments/initializeSiloPayback.js @@ -4,34 +4,43 @@ const { getContractAddress, verifyDeployedAddresses } = require("./utils/address /** * Initialize SiloPayback contract with unripe BDV data * This is Step 1.5 of the Beanstalk Shipments deployment - * Reads deployed SiloPayback address from cache and batch mints unripe BDV tokens + * Reads deployed SiloPayback address from cache or production and batch mints unripe BDV tokens * * @param {Object} params - Initialization parameters * @param {Object} params.account - Account to use for transactions * @param {boolean} params.verbose - Enable verbose logging * @param {number} params.startFromChunk - Resume from chunk number (0-indexed) * @param {number} params.targetEntriesPerChunk - Entries per chunk (default: 300) + * @param {boolean} params.useDeployed - Use production addresses instead of dev addresses */ async function initializeSiloPayback({ account, verbose = true, startFromChunk = 0, - targetEntriesPerChunk = 300 + targetEntriesPerChunk = 300, + useDeployed = false }) { if (verbose) { console.log("\nšŸ“¦ STEP 1.5: INITIALIZING SILO PAYBACK CONTRACT"); console.log("-".repeat(50)); + if (useDeployed) { + console.log("šŸ­ Using production addresses (--use-deployed)"); + } } // Verify deployed addresses exist - if (!verifyDeployedAddresses()) { - throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + if (!verifyDeployedAddresses(useDeployed)) { + if (useDeployed) { + throw new Error("Production addresses not found. Check productionAddresses.json."); + } else { + throw new Error("Deployed addresses not found. Run deployPaybackContracts first."); + } } - // Get SiloPayback address from cache - const siloPaybackAddress = getContractAddress("siloPayback"); + // Get SiloPayback address from cache or production + const siloPaybackAddress = getContractAddress("siloPayback", useDeployed); if (!siloPaybackAddress) { - throw new Error("SiloPayback address not found in cache"); + throw new Error("SiloPayback address not found"); } if (verbose) { diff --git a/scripts/beanstalkShipments/utils/addressCache.js b/scripts/beanstalkShipments/utils/addressCache.js index 6ed281e5..40ccce88 100644 --- a/scripts/beanstalkShipments/utils/addressCache.js +++ b/scripts/beanstalkShipments/utils/addressCache.js @@ -4,6 +4,7 @@ const path = require("path"); const DATA_DIR = path.join(__dirname, "../data"); const FILE_PREFIX = "deployedAddresses_"; const FILE_EXTENSION = ".json"; +const PRODUCTION_FILE = "productionAddresses.json"; const NUM_CONTRACTS = 1; /** @@ -90,13 +91,18 @@ function getDeployedAddresses() { } /** - * Verifies that all required contract addresses are present in the cache + * Verifies that all required contract addresses are present in the cache or production file + * @param {boolean} useDeployed - If true, verify production addresses; if false, verify dev addresses * @returns {boolean} True if all addresses are present, false otherwise */ -function verifyDeployedAddresses() { - const addresses = getDeployedAddresses(); +function verifyDeployedAddresses(useDeployed = false) { + const addresses = getAddresses(useDeployed); if (!addresses) { - console.error("āŒ No deployed addresses found. Run deployPaybackContracts first."); + if (useDeployed) { + console.error("āŒ No production addresses found. Check productionAddresses.json."); + } else { + console.error("āŒ No deployed addresses found. Run deployPaybackContracts first."); + } return false; } @@ -112,12 +118,51 @@ function verifyDeployedAddresses() { } /** - * Gets a specific contract address from cache + * Gets production (mainnet) addresses from the canonical production file. + * These addresses are never auto-incremented and represent deployed mainnet contracts. + * @returns {Object|null} Object containing production contract addresses or null if not found + */ +function getProductionAddresses() { + const productionFilePath = path.join(DATA_DIR, PRODUCTION_FILE); + if (!fs.existsSync(productionFilePath)) { + console.error("āŒ Production addresses file not found:", productionFilePath); + return null; + } + + try { + const data = JSON.parse(fs.readFileSync(productionFilePath)); + return data; + } catch (error) { + console.error("Error reading production addresses:", error); + return null; + } +} + +/** + * Router function that returns either production addresses or latest dev addresses + * based on the useDeployed flag. + * @param {boolean} useDeployed - If true, return production addresses; if false, return latest dev addresses + * @returns {Object|null} Object containing contract addresses or null if not found + */ +function getAddresses(useDeployed = false) { + if (useDeployed) { + const productionAddresses = getProductionAddresses(); + if (productionAddresses) { + console.log("šŸ“ Using production addresses from productionAddresses.json"); + } + return productionAddresses; + } + return getDeployedAddresses(); +} + +/** + * Gets a specific contract address from cache or production * @param {string} contractName - Name of contract ("siloPayback", "barnPayback", or "contractPaybackDistributor") + * @param {boolean} useDeployed - If true, use production addresses; if false, use latest dev addresses * @returns {string|null} Contract address or null if not found */ -function getContractAddress(contractName) { - const addresses = getDeployedAddresses(); +function getContractAddress(contractName, useDeployed = false) { + const addresses = getAddresses(useDeployed); if (!addresses) { return null; } @@ -148,6 +193,8 @@ async function computeDistributorAddress(deployer) { module.exports = { saveDeployedAddresses, getDeployedAddresses, + getProductionAddresses, + getAddresses, verifyDeployedAddresses, getContractAddress, getLatestFilePath, diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index ea80bd99..45f78e9c 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -114,7 +114,7 @@ module.exports = function () { ////// STEP 1: DEPLOY PAYBACK CONTRACTS ////// // Deploy the payback contracts and the ContractPaybackDistributor contract (no initialization) // Data initialization is now handled by separate tasks (Steps 1.5, 1.6, 1.7) - // Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER at 0x47c365cc9ef51052651c2be22f274470ad6afc53 + // Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER // Set mock to false to deploy the payback contracts on base. // - npx hardhat deployPaybackContracts --network base task("deployPaybackContracts", "deploys the payback contracts (no initialization)").setAction( @@ -190,12 +190,19 @@ module.exports = function () { ////// STEP 1.5: INITIALIZE SILO PAYBACK ////// // Initialize the SiloPayback contract with unripe BDV data - // Must be run after deployPaybackContracts (Step 1) + // Must be run after deployPaybackContracts (Step 1) or with --use-deployed for production addresses // - npx hardhat initializeSiloPayback --network base + // - npx hardhat initializeSiloPayback --use-deployed --network base (use production addresses) // Resume parameters: // - npx hardhat initializeSiloPayback --start-chunk 5 --network base task("initializeSiloPayback", "Initialize SiloPayback with unripe BDV data") .addOptionalParam("startChunk", "Resume from chunk number (0-indexed)", 0, types.int) + .addOptionalParam( + "useDeployed", + "Use production addresses from productionAddresses.json instead of latest dev deployment", + false, + types.boolean + ) .setAction(async (taskArgs) => { const mock = true; const verbose = true; @@ -211,18 +218,26 @@ module.exports = function () { await initializeSiloPayback({ account: deployer, verbose, - startFromChunk: taskArgs.startChunk + startFromChunk: taskArgs.startChunk, + useDeployed: taskArgs.useDeployed }); }); ////// STEP 1.6: INITIALIZE BARN PAYBACK ////// // Initialize the BarnPayback contract with fertilizer data - // Must be run after deployPaybackContracts (Step 1) + // Must be run after deployPaybackContracts (Step 1) or with --use-deployed for production addresses // - npx hardhat initializeBarnPayback --network base + // - npx hardhat initializeBarnPayback --use-deployed --network base (use production addresses) // Resume parameters: // - npx hardhat initializeBarnPayback --start-chunk 10 --network base task("initializeBarnPayback", "Initialize BarnPayback with fertilizer data") .addOptionalParam("startChunk", "Resume from chunk number (0-indexed)", 0, types.int) + .addOptionalParam( + "useDeployed", + "Use production addresses from productionAddresses.json instead of latest dev deployment", + false, + types.boolean + ) .setAction(async (taskArgs) => { const mock = true; const verbose = true; @@ -238,14 +253,16 @@ module.exports = function () { await initializeBarnPayback({ account: deployer, verbose, - startFromChunk: taskArgs.startChunk + startFromChunk: taskArgs.startChunk, + useDeployed: taskArgs.useDeployed }); }); ////// STEP 1.7: INITIALIZE CONTRACT PAYBACK DISTRIBUTOR ////// // Initialize the ContractPaybackDistributor contract with account data - // Must be run after deployPaybackContracts (Step 1) + // Must be run after deployPaybackContracts (Step 1) or with --use-deployed for production addresses // - npx hardhat initializeContractPaybackDistributor --network base + // - npx hardhat initializeContractPaybackDistributor --use-deployed --network base (use production addresses) // Resume parameters: // - npx hardhat initializeContractPaybackDistributor --start-chunk 3 --network base task( @@ -253,6 +270,12 @@ module.exports = function () { "Initialize ContractPaybackDistributor with account data" ) .addOptionalParam("startChunk", "Resume from chunk number (0-indexed)", 0, types.int) + .addOptionalParam( + "useDeployed", + "Use production addresses from productionAddresses.json instead of latest dev deployment", + false, + types.boolean + ) .setAction(async (taskArgs) => { const mock = true; const verbose = true; @@ -268,7 +291,8 @@ module.exports = function () { await initializeContractPaybackDistributor({ account: deployer, verbose, - startFromChunk: taskArgs.startChunk + startFromChunk: taskArgs.startChunk, + useDeployed: taskArgs.useDeployed }); }); @@ -423,7 +447,7 @@ module.exports = function () { // The deployer will need to transfer ownership of the payback contracts to the PCM // - npx hardhat transferContractOwnership --network base // Set mock to false to transfer ownership of the payback contracts to the PCM on base. - // The owner is the deployer account at 0x47c365cc9ef51052651c2be22f274470ad6afc53 + // The owner is the deployer account. task( "transferPaybackContractOwnership", "transfers ownership of the payback contracts to the PCM" @@ -483,6 +507,7 @@ module.exports = function () { // - npx hardhat runBeanstalkShipments --step all --network base (run all steps) // - npx hardhat runBeanstalkShipments --step deploy --network base (deploy all payback contracts) // - npx hardhat runBeanstalkShipments --step init --network base (initialize all payback contracts) + // - npx hardhat runBeanstalkShipments --step init --use-deployed --network base (init with production addresses) // Available steps: 0, 1, 1.5, 1.6, 1.7, 2, 3, 4, 5, all, deploy, init task("runBeanstalkShipments", "Runs all beanstalk shipment deployment steps in sequential order") .addOptionalParam("skipPause", "Set to true to skip pauses between steps", false, types.boolean) @@ -492,6 +517,12 @@ module.exports = function () { "all", types.string ) + .addOptionalParam( + "useDeployed", + "Use production addresses from productionAddresses.json for init steps", + false, + types.boolean + ) .setAction(async (taskArgs, hre) => { const step = taskArgs.step; const validSteps = [ @@ -578,19 +609,30 @@ module.exports = function () { // Step 1.5: Initialize Silo Payback if (shouldRun("1.5")) { console.log("\n🌱 Running Step 1.5: Initialize Silo Payback"); - await hre.run("initializeSiloPayback"); + if (taskArgs.useDeployed) { + console.log(" Using production addresses (--use-deployed)"); + } + await hre.run("initializeSiloPayback", { useDeployed: taskArgs.useDeployed }); } // Step 1.6: Initialize Barn Payback if (shouldRun("1.6")) { console.log("\nšŸšļø Running Step 1.6: Initialize Barn Payback"); - await hre.run("initializeBarnPayback"); + if (taskArgs.useDeployed) { + console.log(" Using production addresses (--use-deployed)"); + } + await hre.run("initializeBarnPayback", { useDeployed: taskArgs.useDeployed }); } // Step 1.7: Initialize Contract Payback Distributor if (shouldRun("1.7")) { console.log("\nšŸ“‹ Running Step 1.7: Initialize Contract Payback Distributor"); - await hre.run("initializeContractPaybackDistributor"); + if (taskArgs.useDeployed) { + console.log(" Using production addresses (--use-deployed)"); + } + await hre.run("initializeContractPaybackDistributor", { + useDeployed: taskArgs.useDeployed + }); } // Step 2: Deploy Temp Field Facet From 2c368f677313455b6c8ff0d5dc1c723468b27a07 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 09:54:28 -0500 Subject: [PATCH 259/270] Add --mock and --log CLI params to shipment tasks and configure hardhat accounts --- hardhat.config.js | 4 +- tasks/beanstalk-shipments.js | 104 +++++++++++++++++++++++------------ 2 files changed, 71 insertions(+), 37 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index b2263983..dfb3ac42 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -74,7 +74,7 @@ module.exports = { chainId: 1337, url: "http://127.0.0.1:8545/", timeout: 100000000000000000, - accounts: "remote" + accounts: [process.env.PINTO_PK] }, mainnet: { chainId: 1, @@ -90,7 +90,7 @@ module.exports = { chainId: 8453, url: process.env.BASE_RPC || "", timeout: 100000000, - accounts: [] + accounts: [process.env.PINTO_PK] }, custom: { chainId: 41337, diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 45f78e9c..4ffa1669 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -54,9 +54,10 @@ module.exports = function () { // Requires: analyzeShipmentContracts (generates unclaimableContractAddresses.json) // Make sure account[0] in the hardhat config for mainnet is the L1_CONTRACT_MESSENGER_DEPLOYER at 0xbfb5d09ffcbe67fbed9970b893293f21778be0a6 // - npx hardhat deployL1ContractMessenger --network mainnet - task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract").setAction( - async (taskArgs) => { - const mock = true; + task("deployL1ContractMessenger", "deploys the L1ContractMessenger contract") + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .setAction(async (taskArgs) => { + const mock = taskArgs.mock; let deployer; if (mock) { deployer = await impersonateSigner(L1_CONTRACT_MESSENGER_DEPLOYER); @@ -117,11 +118,12 @@ module.exports = function () { // Make sure account[1] in the hardhat config for base is the BEANSTALK_SHIPMENTS_DEPLOYER // Set mock to false to deploy the payback contracts on base. // - npx hardhat deployPaybackContracts --network base - task("deployPaybackContracts", "deploys the payback contracts (no initialization)").setAction( - async (taskArgs, hre) => { - // params - const verbose = true; - const mock = false; + task("deployPaybackContracts", "deploys the payback contracts (no initialization)") + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .addOptionalParam("log", "Enable verbose logging", false, types.boolean) + .setAction(async (taskArgs, hre) => { + const verbose = taskArgs.log; + const mock = taskArgs.mock; // Use the shipments deployer to get correct addresses let deployer; @@ -203,9 +205,11 @@ module.exports = function () { false, types.boolean ) + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .addOptionalParam("log", "Enable verbose logging", false, types.boolean) .setAction(async (taskArgs) => { - const mock = true; - const verbose = true; + const mock = taskArgs.mock; + const verbose = taskArgs.log; let deployer; if (mock) { @@ -238,9 +242,11 @@ module.exports = function () { false, types.boolean ) + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .addOptionalParam("log", "Enable verbose logging", false, types.boolean) .setAction(async (taskArgs) => { - const mock = true; - const verbose = true; + const mock = taskArgs.mock; + const verbose = taskArgs.log; let deployer; if (mock) { @@ -276,9 +282,11 @@ module.exports = function () { false, types.boolean ) + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .addOptionalParam("log", "Enable verbose logging", false, types.boolean) .setAction(async (taskArgs) => { - const mock = true; - const verbose = true; + const mock = taskArgs.mock; + const verbose = taskArgs.log; let deployer; if (mock) { @@ -302,9 +310,10 @@ module.exports = function () { // Set mock to false to deploy the TempFieldFacet // - npx hardhat deployTempFieldFacet --network base // Grab the diamond cut, queue it in the multisig and wait for execution before proceeding to the next step. - task("deployTempFieldFacet", "deploys the TempFieldFacet").setAction(async (taskArgs) => { - // params - const mock = true; + task("deployTempFieldFacet", "deploys the TempFieldFacet") + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .setAction(async (taskArgs) => { + const mock = taskArgs.mock; // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field console.log( @@ -346,10 +355,11 @@ module.exports = function () { 0, types.int ) + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .addOptionalParam("log", "Enable verbose logging", false, types.boolean) .setAction(async (taskArgs) => { - // params - const mock = true; - const verbose = true; + const mock = taskArgs.mock; + const verbose = taskArgs.log; let repaymentFieldPopulator; if (mock) { @@ -383,10 +393,10 @@ module.exports = function () { // At the same time, the new shipment routes that include the payback contracts will need to be set. // Set mock to false to finalize the beanstalk shipments on base. // - npx hardhat finalizeBeanstalkShipments --network base - task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments").setAction( - async (taskArgs) => { - // params - const mock = true; + task("finalizeBeanstalkShipments", "finalizes the beanstalk shipments") + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .setAction(async (taskArgs) => { + const mock = taskArgs.mock; // Use any account for diamond cuts let owner; @@ -451,9 +461,12 @@ module.exports = function () { task( "transferPaybackContractOwnership", "transfers ownership of the payback contracts to the PCM" - ).setAction(async (taskArgs) => { - const mock = true; - const verbose = true; + ) + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .addOptionalParam("log", "Enable verbose logging", false, types.boolean) + .setAction(async (taskArgs) => { + const mock = taskArgs.mock; + const verbose = taskArgs.log; let deployer; if (mock) { @@ -523,6 +536,8 @@ module.exports = function () { false, types.boolean ) + .addOptionalParam("mock", "Use impersonated signer instead of real signer", true, types.boolean) + .addOptionalParam("log", "Enable verbose logging", false, types.boolean) .setAction(async (taskArgs, hre) => { const step = taskArgs.step; const validSteps = [ @@ -603,7 +618,10 @@ module.exports = function () { // Step 1: Deploy Payback Contracts if (shouldRun("1")) { console.log("\nšŸ“¦ Running Step 1: Deploy Payback Contracts"); - await hre.run("deployPaybackContracts"); + await hre.run("deployPaybackContracts", { + mock: taskArgs.mock, + verbose: taskArgs.log + }); } // Step 1.5: Initialize Silo Payback @@ -612,7 +630,11 @@ module.exports = function () { if (taskArgs.useDeployed) { console.log(" Using production addresses (--use-deployed)"); } - await hre.run("initializeSiloPayback", { useDeployed: taskArgs.useDeployed }); + await hre.run("initializeSiloPayback", { + useDeployed: taskArgs.useDeployed, + mock: taskArgs.mock, + verbose: taskArgs.log + }); } // Step 1.6: Initialize Barn Payback @@ -621,7 +643,11 @@ module.exports = function () { if (taskArgs.useDeployed) { console.log(" Using production addresses (--use-deployed)"); } - await hre.run("initializeBarnPayback", { useDeployed: taskArgs.useDeployed }); + await hre.run("initializeBarnPayback", { + useDeployed: taskArgs.useDeployed, + mock: taskArgs.mock, + verbose: taskArgs.log + }); } // Step 1.7: Initialize Contract Payback Distributor @@ -631,14 +657,16 @@ module.exports = function () { console.log(" Using production addresses (--use-deployed)"); } await hre.run("initializeContractPaybackDistributor", { - useDeployed: taskArgs.useDeployed + useDeployed: taskArgs.useDeployed, + mock: taskArgs.mock, + verbose: taskArgs.log }); } // Step 2: Deploy Temp Field Facet if (shouldRun("2")) { console.log("\nšŸ”§ Running Step 2: Deploy Temp Field Facet"); - await hre.run("deployTempFieldFacet"); + await hre.run("deployTempFieldFacet", { mock: taskArgs.mock }); if (step === "all") { console.log( "\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution" @@ -652,7 +680,10 @@ module.exports = function () { // Step 3: Populate Repayment Field if (shouldRun("3")) { console.log("\n🌾 Running Step 3: Populate Repayment Field"); - await hre.run("populateRepaymentField"); + await hre.run("populateRepaymentField", { + mock: taskArgs.mock, + verbose: taskArgs.log + }); if (step === "all") { console.log( "\nāš ļø PAUSE: Proceed with the multisig as needed before moving to the next step" @@ -666,7 +697,7 @@ module.exports = function () { // Step 4: Finalize Beanstalk Shipments if (shouldRun("4")) { console.log("\nšŸŽÆ Running Step 4: Finalize Beanstalk Shipments"); - await hre.run("finalizeBeanstalkShipments"); + await hre.run("finalizeBeanstalkShipments", { mock: taskArgs.mock }); if (step === "all") { console.log( "\nāš ļø PAUSE: Queue the diamond cut in the multisig and wait for execution" @@ -680,7 +711,10 @@ module.exports = function () { // Step 5: Transfer Contract Ownership if (shouldRun("5")) { console.log("\nšŸ” Running Step 5: Transfer Contract Ownership"); - await hre.run("transferPaybackContractOwnership"); + await hre.run("transferPaybackContractOwnership", { + mock: taskArgs.mock, + verbose: taskArgs.log + }); if (step === "all") { console.log( "\nāš ļø PAUSE: Ownership transfer completed. Proceed with validations as required." From 64bd1997a70f3af4750fa7fc46245063576a3502 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 10:41:19 -0500 Subject: [PATCH 260/270] Refactor ContractPaybackDistributor to upgradeable proxy pattern --- .../ContractPaybackDistributor.sol | 30 +++++++++++------ .../deployPaybackContracts.js | 14 ++++---- .../beanstalkShipments/utils/addressCache.js | 13 +++++--- .../ContractDistribution.t.sol | 33 ++++++++++++------- 4 files changed, 58 insertions(+), 32 deletions(-) diff --git a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol index 79db2db7..48000e0e 100644 --- a/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol +++ b/contracts/ecosystem/beanstalkShipments/contractDistribution/ContractPaybackDistributor.sol @@ -1,21 +1,22 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.20; -import {ReentrancyGuard} from "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; +import {ReentrancyGuardUpgradeable} from "@openzeppelin/contracts-upgradeable/utils/ReentrancyGuardUpgradeable.sol"; +import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; +import {Initializable} from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol"; import {IBeanstalk} from "contracts/interfaces/IBeanstalk.sol"; import {IBarnPayback} from "contracts/interfaces/IBarnPayback.sol"; import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; import {ICrossDomainMessenger} from "contracts/interfaces/ICrossDomainMessenger.sol"; import {IERC1155Receiver} from "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol"; -import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; import {IContractPaybackDistributor} from "contracts/interfaces/IContractPaybackDistributor.sol"; import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; /** * @title ContractPaybackDistributor * @notice Contract that distributes the beanstalk repayment assets to the contract accounts. - * After the distribution, this contract will custody and distrubute all assets for all eligible contract accounts. + * After the distribution, this contract will custody and distribute all assets for all eligible contract accounts. * * Contract accounts eligible for Beanstalk repayment assets can either: * @@ -33,8 +34,9 @@ import {LibTransfer} from "contracts/libraries/Token/LibTransfer.sol"; * 3. If an account has just delegated its code to a contract, they can just call claimDirect() and receive their assets. */ contract ContractPaybackDistributor is - ReentrancyGuard, - Ownable, + Initializable, + ReentrancyGuardUpgradeable, + OwnableUpgradeable, IERC1155Receiver, IContractPaybackDistributor { @@ -64,11 +66,11 @@ contract ContractPaybackDistributor is mapping(address => AccountData) public accounts; // Beanstalk protocol - IBeanstalk immutable pintoProtocol; + IBeanstalk public pintoProtocol; // Silo payback token - IERC20 immutable siloPayback; + IERC20 public siloPayback; // Barn payback token - IBarnPayback immutable barnPayback; + IBarnPayback public barnPayback; modifier onlyWhitelistedCaller(address caller) { require( @@ -95,16 +97,24 @@ contract ContractPaybackDistributor is _; } + /// @custom:oz-upgrades-unsafe-allow constructor + constructor() { + _disableInitializers(); + } + /** + * @notice Initializes the contract with the required addresses * @param _pintoProtocol The pinto protocol address * @param _siloPayback The silo payback token address * @param _barnPayback The barn payback token address */ - constructor( + function initialize( address _pintoProtocol, address _siloPayback, address _barnPayback - ) Ownable(msg.sender) { + ) public initializer { + __ReentrancyGuard_init(); + __Ownable_init(msg.sender); pintoProtocol = IBeanstalk(_pintoProtocol); siloPayback = IERC20(_siloPayback); barnPayback = IBarnPayback(_barnPayback); diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 685a0973..8d4e8985 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -53,16 +53,18 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru account ); - const contractPaybackDistributorContract = await contractPaybackDistributorFactory.deploy( - L2_PINTO, // address _pintoProtocol - siloPaybackContract.address, // address _siloPayback - barnPaybackContract.address // address _barnPayback + const contractPaybackDistributorContract = await upgrades.deployProxy( + contractPaybackDistributorFactory, + [L2_PINTO, siloPaybackContract.address, barnPaybackContract.address], + { + initializer: "initialize", + kind: "transparent" + } ); await contractPaybackDistributorContract.deployed(); await printContractAddresses( contractPaybackDistributorContract.address, - "ContractPaybackDistributor", - false + "ContractPaybackDistributor" ); return { diff --git a/scripts/beanstalkShipments/utils/addressCache.js b/scripts/beanstalkShipments/utils/addressCache.js index 40ccce88..0403e5d4 100644 --- a/scripts/beanstalkShipments/utils/addressCache.js +++ b/scripts/beanstalkShipments/utils/addressCache.js @@ -6,7 +6,7 @@ const FILE_PREFIX = "deployedAddresses_"; const FILE_EXTENSION = ".json"; const PRODUCTION_FILE = "productionAddresses.json"; -const NUM_CONTRACTS = 1; +const NUM_CONTRACTS = 2; /** * Gets all existing deployed address files and returns them sorted by counter * @returns {Array<{path: string, counter: number}>} Sorted array of file info @@ -170,12 +170,17 @@ function getContractAddress(contractName, useDeployed = false) { } /** - * Pre-computes the ContractPaybackDistributor address based on deployer nonce. + * Pre-computes the ContractPaybackDistributor proxy address based on deployer nonce. * Nonce consumption for transparent proxies: * - First proxy (SiloPayback): Implementation + ProxyAdmin + Proxy = 3 nonces * - Second proxy (BarnPayback): Implementation + Proxy = 2 nonces (reuses ProxyAdmin) - * - ContractPaybackDistributor: 1 nonce (regular deployment) - * Total offset from starting nonce: 5 + * - Third proxy (ContractPaybackDistributor): Implementation + Proxy = 2 nonces (reuses ProxyAdmin) + * + * This function is called AFTER SiloPayback deployment, so currentNonce already includes + * SiloPayback's 3 nonces. We need to add: + * - BarnPayback: 2 nonces + * - ContractPaybackDistributor implementation: 1 nonce (NUM_CONTRACTS accounts for this offset) + * The proxy address is at currentNonce + NUM_CONTRACTS after BarnPayback deployment. * * @param {Object} deployer - Ethers signer object * @returns {Promise<{distributorAddress: string, startingNonce: number}>} diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 04665d58..11c89812 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -57,23 +57,32 @@ contract ContractDistributionTest is TestHelper { bs.setActiveField(REPAYMENT_FIELD_ID, 100e6); vm.stopPrank(); - // Deploy the ContractPaybackDistributor contract - // get the constructor arguments - // Whitelisted contract accounts - address[] memory contractAccounts = new address[](2); - contractAccounts[0] = contractAccount1; - contractAccounts[1] = contractAccount2; - // Account data + // Deploy the ContractPaybackDistributor contract as transparent proxy + // 1. Deploy implementation + ContractPaybackDistributor distributorImpl = new ContractPaybackDistributor(); + + // 2. Encode initialization data + bytes memory initData = abi.encodeWithSelector( + ContractPaybackDistributor.initialize.selector, + address(bs), + address(siloPayback), + address(barnPayback) + ); + + // 3. Deploy proxy at expected address using deployCodeTo vm.prank(owner); deployCodeTo( - "ContractPaybackDistributor.sol:ContractPaybackDistributor", - abi.encode(address(bs), address(siloPayback), address(barnPayback)), + "TransparentUpgradeableProxy.sol:TransparentUpgradeableProxy", + abi.encode(address(distributorImpl), owner, initData), EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR ); - contractPaybackDistributor = ContractPaybackDistributor( - address(0x5dC8F2e4F47F36F5d20B6456F7993b65A7994000) - ); + contractPaybackDistributor = ContractPaybackDistributor(EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR); + + // Whitelisted contract accounts + address[] memory contractAccounts = new address[](2); + contractAccounts[0] = contractAccount1; + contractAccounts[1] = contractAccount2; // assert owner is correct assertEq(contractPaybackDistributor.owner(), owner, "distributor owner"); From 4e2172f4cded4a38f32f09ce6b49c03fd4d0128c Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 12 Feb 2026 15:44:23 +0000 Subject: [PATCH 261/270] auto-format: prettier formatting for Solidity files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .../ecosystem/beanstalkShipments/ContractDistribution.t.sol | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol index 11c89812..6c1cbbc5 100644 --- a/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol +++ b/test/foundry/ecosystem/beanstalkShipments/ContractDistribution.t.sol @@ -77,7 +77,9 @@ contract ContractDistributionTest is TestHelper { EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR ); - contractPaybackDistributor = ContractPaybackDistributor(EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR); + contractPaybackDistributor = ContractPaybackDistributor( + EXPECTED_CONTRACT_PAYBACK_DISTRIBUTOR + ); // Whitelisted contract accounts address[] memory contractAccounts = new address[](2); From 8f796678965f67c88e200c8e3d856e3b910cca5e Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 11:03:05 -0500 Subject: [PATCH 262/270] Update shipment routes with new distributor addresses and increment contract count --- scripts/beanstalkShipments/data/updatedShipmentRoutes.json | 6 +++--- scripts/beanstalkShipments/utils/addressCache.js | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index c20a2396..d115bf80 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -21,18 +21,18 @@ "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x6fc9267a", "recipient": "0x2", - "data": "0x000000000000000000000000ba0534b16017e861ba15f1587d8a060e15f7f336000000000000000000000000724c87b9a6ea6ba7a7cf3bfc0309de778fb280270000000000000000000000000000000000000000000000000000000000000001" + "data": "0x000000000000000000000000499a58cdc7cfd89791764faac6faebd9e8356b4b0000000000000000000000008a961e5c3e4c41b63ff1fb66ea8b55480f2344fa0000000000000000000000000000000000000000000000000000000000000001" }, { "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0xb34da3d2", "recipient": "0x5", - "data": "0x000000000000000000000000ba0534b16017e861ba15f1587d8a060e15f7f336000000000000000000000000724c87b9a6ea6ba7a7cf3bfc0309de778fb28027" + "data": "0x000000000000000000000000499a58cdc7cfd89791764faac6faebd9e8356b4b0000000000000000000000008a961e5c3e4c41b63ff1fb66ea8b55480f2344fa" }, { "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x5f6cc37d", "recipient": "0x6", - "data": "0x000000000000000000000000ba0534b16017e861ba15f1587d8a060e15f7f336000000000000000000000000724c87b9a6ea6ba7a7cf3bfc0309de778fb28027" + "data": "0x000000000000000000000000499a58cdc7cfd89791764faac6faebd9e8356b4b0000000000000000000000008a961e5c3e4c41b63ff1fb66ea8b55480f2344fa" } ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/utils/addressCache.js b/scripts/beanstalkShipments/utils/addressCache.js index 0403e5d4..ce8fb0fc 100644 --- a/scripts/beanstalkShipments/utils/addressCache.js +++ b/scripts/beanstalkShipments/utils/addressCache.js @@ -6,7 +6,7 @@ const FILE_PREFIX = "deployedAddresses_"; const FILE_EXTENSION = ".json"; const PRODUCTION_FILE = "productionAddresses.json"; -const NUM_CONTRACTS = 2; +const NUM_CONTRACTS = 3; /** * Gets all existing deployed address files and returns them sorted by counter * @returns {Array<{path: string, counter: number}>} Sorted array of file info From 071fe948e104fdc191a710363df4ec359699c7e1 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 11:57:43 -0500 Subject: [PATCH 263/270] Update shipment data with new distributor addresses and exclude Beanstalk contract account --- .../data/beanstalkAccountFertilizer.json | 48 +- .../data/beanstalkPlots.json | 3124 ++++++++--------- .../data/contractAccounts.json | 2 +- .../data/unripeBdvTokens.json | 8 +- .../data/updatedShipmentRoutes.json | 6 +- .../deployPaybackContracts.js | 4 + 6 files changed, 1598 insertions(+), 1594 deletions(-) diff --git a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json index c364304e..b9824838 100644 --- a/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json +++ b/scripts/beanstalkShipments/data/beanstalkAccountFertilizer.json @@ -113,7 +113,7 @@ "1338731", [ [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "116", "340802" ] @@ -218,7 +218,7 @@ "2313052", [ [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "912", "340802" ] @@ -288,7 +288,7 @@ "2502666", [ [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "20", "340802" ] @@ -328,7 +328,7 @@ "2811995", [ [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "45", "340802" ] @@ -533,7 +533,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "500", "340802" ] @@ -663,7 +663,7 @@ "3398029", [ [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "476", "340802" ] @@ -703,7 +703,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "1095", "340802" ] @@ -858,7 +858,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "4", "340802" ] @@ -898,7 +898,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "1000", "340802" ] @@ -1463,7 +1463,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "5110", "340802" ] @@ -1683,7 +1683,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "549767", "340802" ] @@ -1718,7 +1718,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "56044", "340802" ] @@ -1833,7 +1833,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "439", "340802" ] @@ -1983,7 +1983,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "4645", "340802" ] @@ -2078,7 +2078,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "373", "340802" ] @@ -2258,7 +2258,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "3753", "340802" ] @@ -2348,7 +2348,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "3152", "340802" ] @@ -2553,7 +2553,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "296896", "340802" ] @@ -2758,7 +2758,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "10", "340802" ] @@ -2898,7 +2898,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "2274", "340802" ] @@ -2963,7 +2963,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "2500", "340802" ] @@ -3068,7 +3068,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "1472", "340802" ] @@ -3218,7 +3218,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "40249", "340802" ] @@ -5818,7 +5818,7 @@ "340802" ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", "8321128", "340802" ] diff --git a/scripts/beanstalkShipments/data/beanstalkPlots.json b/scripts/beanstalkShipments/data/beanstalkPlots.json index 722e91dd..6ae2e64e 100644 --- a/scripts/beanstalkShipments/data/beanstalkPlots.json +++ b/scripts/beanstalkShipments/data/beanstalkPlots.json @@ -24647,2765 +24647,2765 @@ ] ], [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", + "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", [ [ - "462646168927", - "1666666666" + "680570676055231", + "12790345862" ], [ - "28059702904241", - "1259635749" + "741073041489777", + "58475807020" ], [ - "28368015360976", - "10000000000" + "811161311356507", + "10974488319" ], [ - "28385711672356", - "4000000000" + "811179416748655", + "18986801346" ], [ - "28553316405699", - "56203360846" + "849346368621598", + "11433794528" ], [ - "28904918772117", - "509586314410" - ], + "861496906364983", + "7066180139" + ] + ] + ], + [ + "0xb13c60ee3eCEC5f689469260322093870aA1e842", + [ [ - "31590227810128", - "15764212654" - ], + "264925932058496", + "11752493257" + ] + ] + ], + [ + "0xB17fC3D59de766b659644241Dba722546E32b163", + [ [ - "31772724860478", - "43540239232" - ], + "530457276837452", + "21389399522" + ] + ] + ], + [ + "0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106", + [ [ - "32013293099710", - "15000000000" - ], + "648783973598407", + "20878800" + ] + ] + ], + [ + "0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e", + [ [ - "32350896326307", - "22543240" + "602679309587183", + "74690241246" ], [ - "33106872744841", - "6434958505" - ], + "602753999828429", + "822947782651" + ] + ] + ], + [ + "0xb319c06c96F676110AcC674a2B608ddb3117f43B", + [ [ - "33262951017861", - "9375000000" + "611471034974532", + "94598000000" ], [ - "33290510627174", - "565390687" + "636826909305416", + "83800270379" ], [ - "38722543672289", - "250000000" + "650587203583982", + "2695189900" ], [ - "61000878716919", - "789407727" + "652743079185278", + "141663189223" ], [ - "61252565809868", - "616986784925" + "654431959023764", + "13424979052" ], [ - "72536373875278", - "200000000" + "654445384002816", + "109437957582" ], [ - "75784287632794", - "2935934380" + "655168391284111", + "167255000000" ], [ - "75995951619880", - "5268032293" + "656569610821263", + "155690600000" ], [ - "76202249214022", - "8000000000" + "657033695277469", + "148493723460" ], [ - "78570049172294", - "5603412867" + "657826429374395", + "145018797369" ], [ - "78582810315624", - "57126564" + "658259541638510", + "150002086275" ], [ - "87378493677209", - "18540386828" + "658561025456875", + "148762745637" ], [ - "107446086823768", - "4363527272" + "660384609944925", + "306309267806" ], [ - "118322555232226", - "5892426278" - ], + "660980494384114", + "322801544810" + ] + ] + ], + [ + "0xb338092f7eE37A5267642BaE60Ff514EB7088593", + [ [ - "149476539987788", - "595705787279" + "152402596679147", + "93039721219" ], [ - "150623260553725", - "436653263484" + "152657826400366", + "185210230255" ], [ - "157789513042632", - "46130596396" + "167944467831210", + "364035918660" ], [ - "160648337135830", - "30093729527" + "168326342418592", + "142183392268" ], [ - "161092113186340", - "738480151497" + "667711173568321", + "2323048492" ], [ - "162734759646450", - "737048150894" + "779534812787850", + "16116959741" ], [ - "163471807797344", - "717665153748" - ], + "859649522699248", + "12551804265" + ] + ] + ], + [ + "0xB345720Ab089A6748CCec3b59caF642583e308Bf", + [ [ - "170459154928178", - "85849064810" + "634496771451551", + "2768287495" ], [ - "174803269011285", - "323070981235" + "634746131014038", + "2338659386" ], [ - "180071240663041", - "81992697619" + "634804642825524", + "15032871752" ], [ - "186580654253728", - "2582826931" + "648328801845272", + "12731370312" ], [ - "187225592453120", - "100639688860" + "648353111527661", + "10493080827" ], [ - "193229271440090", - "76640448070" + "649167541060009", + "16767945280" ], [ - "203381659178232", - "749736733" + "649195623906283", + "18389039062" ], [ - "210525931443438", - "62132577144" + "654358595160398", + "29902100900" ], [ - "214537269214618", - "22947230644" + "654388497261298", + "43461762466" ], [ - "214926241229465", - "22806010929" + "656871705959559", + "9313705270" ], [ - "217474381338301", - "1293174476" + "660370495857615", + "14114087310" ], [ - "220144194502828", - "47404123300" + "671696472763514", + "231205357536" ], [ - "227504823719295", - "18305090101" + "671927678121050", + "252155202330" ], [ - "228344590940664", - "13645890242" + "672398260373775", + "214433251957" ], [ - "232704752844281", - "204706266628" + "672830275797486", + "210961749202" ], [ - "234363994367301", - "101810011675" + "673041237546688", + "205321095099" ], [ - "235248755463285", - "30184796751" + "673246558641787", + "240472769386" ], [ - "247742878911682", - "275332296988" + "673487031411173", + "273039002863" ], [ - "253931736847120", - "290236580727" + "673760070414036", + "172558844132" ], [ - "258450328339971", - "18991534679" - ], + "675240588703017", + "31281369769" + ] + ] + ], + [ + "0xB3561671651455D2E8BF99d2f9E2257f2a313a2c", + [ [ - "261970235265316", - "30303030303" + "262002480116391", + "61656029023" ], [ - "267569815164874", - "20246736273" + "299029773648836", + "103299890816" ], [ - "272319508243958", - "438603533273" + "299623525856977", + "96553480454" ], [ - "316297504741935", - "1134976125606" + "340830099921304", + "42326378229" ], [ - "317764819055205", - "94698329152" + "341635869146462", + "53919698039" ], [ - "317859517384357", - "291195415400" + "341990086557247", + "17007566134" ], [ - "326213533536434", - "11833992957" - ], + "343614880915811", + "56782954188" + ] + ] + ], + [ + "0xb3b0EFf26C982669a9BA47B31aC6b130A4721819", + [ [ - "327022674019051", - "298522321813" - ], + "679985260625992", + "171030000" + ] + ] + ], + [ + "0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e", + [ [ - "333622810114113", - "200755943301" + "107211387355694", + "152715666195" ], [ - "335529346845329", - "13913764863" - ], + "247564500489746", + "77337849888" + ] + ] + ], + [ + "0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F", + [ [ - "338910099578361", - "72913082044" - ], + "130196078661356", + "508123258818" + ] + ] + ], + [ + "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", + [ [ - "340276769047777", - "33796000000" - ], + "191771322130870", + "4" + ] + ] + ], + [ + "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", + [ [ - "344515718397376", - "18025000000" - ], + "164600428750782", + "35727783275" + ] + ] + ], + [ + "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", + [ [ - "344533743397376", - "18025000000" - ], + "680105835387283", + "912195631" + ] + ] + ], + [ + "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277", + [ [ - "344618618497376", - "81000597500" + "217894094937121", + "8624335172" ], [ - "344699619094876", - "31013750000" - ], + "729014568575071", + "291619601680" + ] + ] + ], + [ + "0xB5030cAc364bE50104803A49C30CCfA0d6A48629", + [ [ - "344833670732808", - "5702918963" - ], + "210588064020582", + "198112928750" + ] + ] + ], + [ + "0xb53031b8E67293dC17659338220599F4b1F15738", + [ [ - "371379048315869", - "1015130348413" + "219666700443377", + "55265901" ], [ - "375266078664282", - "1033269065963" - ], + "224654035643462", + "40771987379" + ] + ] + ], + [ + "0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714", + [ [ - "378227726508635", - "645363133" + "76119225435585", + "962826980" ], [ - "400534613369686", - "132789821695" + "579111175545954", + "3774608352" ], [ - "404814012582428", - "13502469920" - ], + "634748469673424", + "4160000000" + ] + ] + ], + [ + "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", + [ [ - "429076381887304", - "39624686375" + "83737011617598", + "306070239187" ], [ - "429976284393417", - "10590000000" - ], + "398321865655642", + "2054144320000" + ] + ] + ], + [ + "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", + [ [ - "444973868346640", - "61560768641" + "4955860418772", + "7048876233" ], [ - "477195175494445", - "29857571563" - ], + "655811760146606", + "1801805718" + ] + ] + ], + [ + "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393", + [ [ - "532670891057032", - "5098240000" + "631462636069759", + "104395512250" ], [ - "532689084297132", - "625506" + "631569644291966", + "139558094702" ], [ - "574387565763701", - "55857695832" - ], + "632291209713980", + "81489498170" + ] + ] + ], + [ + "0xB615e3E80f20beA214076c463D61B336f6676566", + [ [ - "575679606872092", - "38492647384" + "157631883911600", + "6658333333" ], [ - "577679606726120", - "74848126691" + "452052986565565", + "7692307692" ], [ - "580465682607657", - "1581698780" - ], + "646401611359546", + "35903115000" + ] + ] + ], + [ + "0xb63050875231622e99cd8eF32360f9c7084e50a7", + [ [ - "586069294420889", - "40303600000" + "146717188782725", + "5166171" ], [ - "595338144020334", - "47102200000" + "150200863181163", + "1867151304" ], [ - "626184530707078", - "90718871797" + "150300825978051", + "18112431039" ], [ - "628854228397766", - "372857584031" - ], - [ - "629227085981797", - "216873485917" - ], - [ - "632733387704894", - "4395105822" - ], + "155767639963423", + "99245868053" + ] + ] + ], + [ + "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", + [ [ - "633292566723256", - "391574385" + "153735131926682", + "3710134756" ], [ - "634031481420456", - "3170719864" + "679485017868431", + "3915612129" ], [ - "634034652140320", - "1827630964" + "680114838606701", + "27308328915" ], [ - "634643031419046", - "20948977130" + "685025137352998", + "25233193029" ], [ - "636333094290438", - "233865679687" - ], + "841664773576665", + "44866112401" + ] + ] + ], + [ + "0xB65a725e921f3feB83230Bd409683ff601881f68", + [ [ - "637149167789946", - "4910026986" + "250639941891472", + "3441975352" ], [ - "637351998004377", - "258192517612" - ], + "250643383866824", + "29574505735" + ] + ] + ], + [ + "0xb66924A7A23e22A87ac555c950019385A3438951", + [ [ - "637761302275033", - "380793557160" + "154652447640805", + "347100000000" ], [ - "639180990676042", - "199438094194" + "155374769963423", + "392870000000" ], [ - "641522728201681", - "5800000000" + "160285058311354", + "100671341995" ], [ - "641574417641439", - "154715717850" + "174205140895010", + "132445933047" ], [ - "643046212115536", - "1220733194" - ], + "202924952054531", + "35561818090" + ] + ] + ], + [ + "0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2", + [ [ - "643059909351872", - "5072600938" + "552304065222426", + "308085069906" ], [ - "643616429319061", - "1117067455" + "577017952241768", + "78820430185" ], [ - "643630556511892", - "3144911832" - ], + "577096772671953", + "153413133261" + ] + ] + ], + [ + "0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5", + [ [ - "643909821821812", - "6902000000" - ], + "158532389505642", + "22000000000" + ] + ] + ], + [ + "0xB6CC924486681a1ca489639200dcEB4c41C283d3", + [ [ - "643916723821812", - "10900958949" + "3761444092233", + "30919467843" ], [ - "643999292802533", - "8204345668" + "86557982815957", + "47171577753" ], [ - "644007497148201", - "11854871050" + "91035130926027", + "100278708038" ], [ - "644045596517280", - "6544832392" + "107705159415631", + "32372691975" ], [ - "644057761258485", - "8182865200" + "107737532107606", + "20680630588" ], [ - "644065944123685", - "7516642526" + "189221726611474", + "50441908776" ], [ - "644156421132344", - "3789921580" - ], + "331897561408947", + "208972688693" + ] + ] + ], + [ + "0xB73a795F4b55dC779658E11037e373d66b3094c7", + [ [ - "644171938918668", - "9601229268" + "363939335244215", + "341688796" ], [ - "644278837940540", - "631861553" + "390558902441157", + "134653071054" ], [ - "644306806412385", - "12054054687" + "401267047948074", + "134236764892" ], [ - "644319149838335", - "10735050747" - ], + "655972005039843", + "146287000000" + ] + ] + ], + [ + "0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D", + [ [ - "644329884889082", - "14347680621" - ], + "648110341883007", + "332151166" + ] + ] + ], + [ + "0xb78003FCB54444E289969154A27Ca3106B3f41f6", + [ [ - "644396277666556", - "6674520726" + "164189472951092", + "11278479258" ], [ - "644415322342082", - "6773000000" + "191781471592467", + "43648473883" ], [ - "644440076885807", - "2439339467" + "385711073784542", + "2538113894" ], [ - "644525199249437", - "6225710228" + "395411549090894", + "13353165233" ], [ - "644616712009539", - "14199853473" + "562459032802308", + "121464000000" ], [ - "644642611623012", - "12249630834" + "564975430810977", + "121464000000" ], [ - "646758741417842", - "4969664107" + "566651533847146", + "121464000000" ], [ - "646871486506724", - "17642812500" + "568419948467146", + "121464000000" ], [ - "646914219232490", - "8605864430" + "570301073669484", + "121464000000" ], [ - "646983796131611", - "1010894641" - ], + "571791133289484", + "121464000000" + ] + ] + ], + [ + "0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70", + [ [ - "647002050880741", - "9799080000" - ], + "191150584432777", + "327574162163" + ] + ] + ], + [ + "0xB81D739df194fA589e244C7FF5a15E5C04978D0D", + [ [ - "647046808773241", - "17984531250" - ], + "764122302458414", + "389659428" + ] + ] + ], + [ + "0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B", + [ [ - "647084629304491", - "23544562500" - ], + "321732175378043", + "214690052512" + ] + ] + ], + [ + "0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76", + [ [ - "647119660778668", - "15762838323" - ], + "199312851785361", + "21012816705" + ] + ] + ], + [ + "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5", + [ [ - "647151216777708", - "11761593750" + "88303018180293", + "145192655079" ], [ - "647166440607362", - "9285468750" + "88448210835372", + "10000000" ], [ - "647175726076112", - "16711431033" + "88448220835372", + "1000000" ], [ - "647334889222283", - "22379191354" + "152141663101028", + "46320000000" ], [ - "647371497003533", - "6381630000" + "201463917097433", + "98698631369" ], [ - "647388734023467", - "9748779666" + "340872426299533", + "273300000000" ], [ - "647505902133654", - "6953600000" + "638362383116869", + "152606794771" ], [ - "647527562675656", - "8111120358" + "640276210842856", + "176025000000" + ] + ] + ], + [ + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", + [ + [ + "462646168927", + "1666666666" ], [ - "647617732404338", - "19873525000" + "28059702904241", + "1259635749" ], [ - "647798301685196", - "7654771125" + "28368015360976", + "10000000000" ], [ - "647838858023565", - "29093546875" + "28385711672356", + "4000000000" ], [ - "647908205457926", - "12756105568" + "28553316405699", + "56203360846" ], [ - "647978638361818", - "24834476562" + "28904918772117", + "509586314410" ], [ - "648017646545411", - "10268964843" + "31590227810128", + "15764212654" ], [ - "648034585438303", - "11688871093" + "31772724860478", + "43540239232" ], [ - "648106773674125", - "3568208882" + "32013293099710", + "15000000000" ], [ - "648110674034173", - "2331841959" + "32350896326307", + "22543240" ], [ - "648187497812653", - "10104336384" + "33106872744841", + "6434958505" ], [ - "648233657616208", - "10357224170" + "33262951017861", + "9375000000" ], [ - "648244014840378", - "8114610976" + "33290510627174", + "565390687" ], [ - "648252129451354", - "8545778006" + "38722543672289", + "250000000" ], [ - "648262194812840", - "8952959614" + "61000878716919", + "789407727" ], [ - "648271147772454", - "6063060479" + "61252565809868", + "616986784925" ], [ - "648277210832933", - "20187647" + "72536373875278", + "200000000" ], [ - "648277231020580", - "5001904811" + "75784287632794", + "2935934380" ], [ - "648287518441310", - "7377849726" + "75995951619880", + "5268032293" ], [ - "648416302604421", - "20715605468" + "76202249214022", + "8000000000" ], [ - "648452542642294", - "21586449186" + "78570049172294", + "5603412867" ], [ - "648483189881961", - "20797810726" + "78582810315624", + "57126564" ], [ - "648510092345893", - "15239253108" + "87378493677209", + "18540386828" ], [ - "648616078919292", - "8718470609" + "107446086823768", + "4363527272" ], [ - "648629542096134", - "21544183345" + "118322555232226", + "5892426278" ], [ - "648750501960130", - "10150581160" + "149476539987788", + "595705787279" ], [ - "648760652541290", - "23321057117" + "150623260553725", + "436653263484" ], [ - "648783994477207", - "23277498479" + "157789513042632", + "46130596396" ], [ - "648807289596036", - "20989718750" + "160648337135830", + "30093729527" ], [ - "648828279314786", - "20297082735" + "161092113186340", + "738480151497" ], [ - "648889660439973", - "41844097841" + "162734759646450", + "737048150894" ], [ - "649214012945345", - "22440187500" + "163471807797344", + "717665153748" ], [ - "649236472457547", - "7534311320" + "170459154928178", + "85849064810" ], [ - "649261133791064", - "23748160156" + "174803269011285", + "323070981235" ], [ - "649656745149465", - "12205116299" + "180071240663041", + "81992697619" ], [ - "649693929475018", - "11667351669" + "186580654253728", + "2582826931" ], [ - "657232832610979", - "97443079393" + "187225592453120", + "100639688860" ], [ - "657631435066681", - "35105723092" + "193229271440090", + "76640448070" ], [ - "657741540789773", - "84888584622" + "203381659178232", + "749736733" ], [ - "657971448171764", - "15036330875" + "210525931443438", + "62132577144" ], [ - "657986484502639", - "80000000000" + "214537269214618", + "22947230644" ], [ - "658147267102223", - "82507217675" + "214926241229465", + "22806010929" ], [ - "659366890690250", - "174474635475" + "217474381338301", + "1293174476" ], [ - "665058906638905", - "92828595185" + "220144194502828", + "47404123300" ], [ - "670156602457239", - "16663047211" + "227504823719295", + "18305090101" ], [ - "670969471210715", - "112808577" + "228344590940664", + "13645890242" ], [ - "676535946061485", - "2683720" + "232704752844281", + "204706266628" ], [ - "676664914525249", - "18043478260" + "234363994367301", + "101810011675" ], [ - "676683083298681", - "3118260869" + "235248755463285", + "30184796751" ], [ - "679750611381961", - "234067235160" + "247742878911682", + "275332296988" ], [ - "680095721530457", - "10113856826" + "253931736847120", + "290236580727" ], [ - "680560311480251", - "10364574980" + "258450328339971", + "18991534679" ], [ - "681871200072623", - "12689035666" + "261970235265316", + "30303030303" ], [ - "682506977792619", - "12652582923" + "267569815164874", + "20246736273" ], [ - "682844108475123", - "1148082700" + "272319508243958", + "438603533273" ], [ - "706133899990342", - "2720589483246" + "316297504741935", + "1134976125606" ], [ - "720495305315880", - "55569209804" + "317764819055205", + "94698329152" ], [ - "721225229970053", - "55487912201" + "317859517384357", + "291195415400" ], [ - "721409921103392", - "4415003338706" + "326213533536434", + "11833992957" ], [ - "726480740731617", - "2047412139790" + "327022674019051", + "298522321813" ], [ - "729812277370084", - "5650444595733" + "333622810114113", + "200755943301" ], [ - "735554122237517", - "2514215964115" + "335529346845329", + "13913764863" ], [ - "740648921884436", - "39104687507" + "338910099578361", + "72913082044" ], [ - "741007335527824", - "48848467587" + "340276769047777", + "33796000000" ], [ - "741720392463454", - "1213327771" + "344515718397376", + "18025000000" ], [ - "741724318106214", - "903473746" + "344533743397376", + "18025000000" ], [ - "741732026495866", - "17262110558" + "344618618497376", + "81000597500" ], [ - "741842944533312", - "61092850308" + "344699619094876", + "31013750000" ], [ - "743270084189585", - "44269246366" + "344833670732808", + "5702918963" ], [ - "743356388661755", - "284047664" + "371379048315869", + "1015130348413" ], [ - "743356672709419", - "804932236" + "375266078664282", + "1033269065963" ], [ - "743357477641655", - "744601051" + "378227726508635", + "645363133" ], [ - "743358222242706", - "636559806" + "400534613369686", + "132789821695" ], [ - "743358858802512", - "569027210" + "404814012582428", + "13502469920" ], [ - "743359427829722", - "616622839" + "429076381887304", + "39624686375" ], [ - "743360044452561", - "590416341" + "429976284393417", + "10590000000" ], [ - "743360634868902", - "576948243" + "444973868346640", + "61560768641" ], [ - "743361211817145", - "347174290" + "477195175494445", + "29857571563" ], [ - "743361558991435", - "112939223481" + "532670891057032", + "5098240000" ], [ - "743474498214916", - "37245408077" + "532689084297132", + "625506" ], [ - "743511743622993", - "27738836042" + "574387565763701", + "55857695832" ], [ - "743539482459035", - "36180207225" + "575679606872092", + "38492647384" ], [ - "743575662666260", - "9251544878" + "577679606726120", + "74848126691" ], [ - "743600698167087", - "4239282" + "580465682607657", + "1581698780" ], [ - "743630495498696", - "25004744107" + "586069294420889", + "40303600000" ], [ - "743655500242803", - "27838968460" + "595338144020334", + "47102200000" ], [ - "743683339211263", - "1045028130" + "626184530707078", + "90718871797" ], [ - "743715232207665", - "154091444" + "628854228397766", + "372857584031" ], [ - "743715386299109", - "356610619" + "629227085981797", + "216873485917" ], [ - "743715742909728", - "792560930" + "632733387704894", + "4395105822" ], [ - "743716535470658", - "930442023" + "633292566723256", + "391574385" ], [ - "743717465912681", - "930527887" + "634031481420456", + "3170719864" ], [ - "743718396440568", - "930718264" + "634034652140320", + "1827630964" ], [ - "743719327158832", - "900100878" + "634643031419046", + "20948977130" ], [ - "743720227259710", - "886888605" + "636333094290438", + "233865679687" ], [ - "743721114148315", - "1195569000" + "637149167789946", + "4910026986" ], [ - "743722931420691", - "332343086" + "637351998004377", + "258192517612" ], [ - "743723263763777", - "983775747" + "637761302275033", + "380793557160" ], [ - "743724247539524", - "409861551" + "639180990676042", + "199438094194" ], [ - "743724657401075", - "97298663" + "641522728201681", + "5800000000" ], [ - "743724754699738", - "86768693" + "641574417641439", + "154715717850" ], [ - "743724841468431", - "33509916350" + "643046212115536", + "1220733194" ], [ - "743758351384781", - "69774513803" + "643059909351872", + "5072600938" ], [ - "743828125898584", - "21981814788" + "643616429319061", + "1117067455" ], [ - "743850107713372", - "43182294" + "643630556511892", + "3144911832" ], [ - "743850150895666", - "37264237" + "643909821821812", + "6902000000" ], [ - "743850188159903", - "247711" + "643916723821812", + "10900958949" ], [ - "743850188407614", - "417946" + "643999292802533", + "8204345668" ], [ - "743850188825560", - "120504819738" + "644007497148201", + "11854871050" ], [ - "743970693645298", - "178855695867" + "644045596517280", + "6544832392" ], [ - "744149549341165", - "125886081790" + "644057761258485", + "8182865200" ], [ - "744819318753537", - "98324836380" + "644065944123685", + "7516642526" ], [ - "759669831627157", - "91465441036" + "644156421132344", + "3789921580" ], [ - "759761297451604", - "12346431080" + "644171938918668", + "9601229268" ], [ - "759773643882684", - "1557369578" + "644278837940540", + "631861553" ], [ - "759775201252262", - "18264975890" + "644306806412385", + "12054054687" ], [ - "759793466228152", - "133677" + "644319149838335", + "10735050747" ], [ - "759794285432848", - "26613224094" + "644329884889082", + "14347680621" ], [ - "759820979493945", - "70435190" + "644396277666556", + "6674520726" ], [ - "759821049929135", - "64820367" + "644415322342082", + "6773000000" ], [ - "759821114749502", - "315142246" + "644440076885807", + "2439339467" ], [ - "759821772251897", - "342469548" + "644525199249437", + "6225710228" ], [ - "759822114721445", - "22786793078" + "644616712009539", + "14199853473" ], [ - "759844955449185", - "62362349" + "644642611623012", + "12249630834" ], [ - "759845017811534", - "79862410" + "646758741417842", + "4969664107" ], [ - "759845097673944", - "78350903" + "646871486506724", + "17642812500" ], [ - "759845176024847", - "81575013" + "646914219232490", + "8605864430" ], [ - "759845257599860", - "81611843" + "646983796131611", + "1010894641" ], [ - "759845339211703", - "79874694" + "647002050880741", + "9799080000" ], [ - "759845419086397", - "79925681" + "647046808773241", + "17984531250" ], [ - "759845499012078", - "79231634" + "647084629304491", + "23544562500" ], [ - "759845578243712", - "73291169" + "647119660778668", + "15762838323" ], [ - "759845651534881", - "61264703" + "647151216777708", + "11761593750" ], [ - "759845766640518", - "56977225" + "647166440607362", + "9285468750" ], [ - "759845823617743", - "71386527" + "647175726076112", + "16711431033" ], [ - "759845895004270", - "75906832" + "647334889222283", + "22379191354" ], [ - "759846058683685", - "75729409" + "647371497003533", + "6381630000" ], [ - "759846134413094", - "27722926" + "647388734023467", + "9748779666" ], [ - "759846162136020", - "30197986" + "647505902133654", + "6953600000" ], [ - "759846192334006", - "158241812" + "647527562675656", + "8111120358" ], [ - "759846350575818", - "123926293" + "647617732404338", + "19873525000" ], [ - "759846474502111", - "124139589" + "647798301685196", + "7654771125" ], [ - "759846598641700", - "25193251" + "647838858023565", + "29093546875" ], [ - "759846623834951", - "25387540" + "647908205457926", + "12756105568" ], [ - "759846649222491", - "665345" + "647978638361818", + "24834476562" ], [ - "759846954659102", - "631976394" + "648017646545411", + "10268964843" ], [ - "759847586635496", - "66958527" + "648034585438303", + "11688871093" ], [ - "759847653594023", - "44950580" + "648106773674125", + "3568208882" ], [ - "759847698544603", - "46547201" + "648110674034173", + "2331841959" ], [ - "759847745091804", - "18839036" + "648187497812653", + "10104336384" ], [ - "759847763930840", - "270669443" + "648233657616208", + "10357224170" ], [ - "759848034600283", - "365575215" + "648244014840378", + "8114610976" ], [ - "759848595655012", - "187295653" + "648252129451354", + "8545778006" ], [ - "759848782950665", - "25295452" + "648262194812840", + "8952959614" ], [ - "759848808246117", - "173058283" + "648271147772454", + "6063060479" ], [ - "759848981304400", - "63821133" + "648277210832933", + "20187647" ], [ - "759849045125533", - "25336780" + "648277231020580", + "5001904811" ], [ - "759849070462313", - "29081391" + "648287518441310", + "7377849726" ], [ - "759849099543704", - "29122172" + "648416302604421", + "20715605468" ], [ - "759849128665876", - "28706993" + "648452542642294", + "21586449186" ], [ - "759849157372869", - "13456201" + "648483189881961", + "20797810726" ], [ - "759849170829070", - "36511282" + "648510092345893", + "15239253108" ], [ - "759849207340352", - "41243780" + "648616078919292", + "8718470609" ], [ - "759849248584132", - "33852678" + "648629542096134", + "21544183345" ], [ - "759849282436810", - "33956125" + "648750501960130", + "10150581160" ], [ - "759849316392935", - "34132617" + "648760652541290", + "23321057117" ], [ - "759849350525552", - "17041223" + "648783994477207", + "23277498479" ], [ - "759849367566775", - "20273897" + "648807289596036", + "20989718750" ], [ - "759849387840672", - "9037475" + "648828279314786", + "20297082735" ], [ - "759849396878147", - "45923781" + "648889660439973", + "41844097841" ], [ - "759849442801928", - "52882809" + "649214012945345", + "22440187500" ], [ - "759849495684737", - "71491609" + "649236472457547", + "7534311320" ], [ - "759849567176346", - "39781360" + "649261133791064", + "23748160156" ], [ - "759849606957706", - "35612937" + "649656745149465", + "12205116299" ], [ - "759849642570643", - "45789959" + "649693929475018", + "11667351669" ], [ - "759849688360602", - "46291324" + "657232832610979", + "97443079393" ], [ - "759849734651926", - "46416554" + "657631435066681", + "35105723092" ], [ - "759849781068480", - "46480026" + "657741540789773", + "84888584622" ], [ - "759849827548506", - "28909947" + "657971448171764", + "15036330875" ], [ - "759849856458453", - "20566561" + "657986484502639", + "80000000000" ], [ - "759849877025014", - "20612970" + "658147267102223", + "82507217675" ], [ - "759849897637984", - "9530420" + "659366890690250", + "174474635475" ], [ - "759849923422103", - "43423401" + "665058906638905", + "92828595185" ], [ - "759849966845504", - "11714877" + "670156602457239", + "16663047211" ], [ - "759864364377919", - "13050269" + "670969471210715", + "112808577" ], [ - "759864377428188", - "28949561" + "676535946061485", + "2683720" ], [ - "759864451656441", - "45362892" + "676664914525249", + "18043478260" ], [ - "759864497019333", - "45386397" + "676683083298681", + "3118260869" ], [ - "759864542405730", - "44251644" + "679750611381961", + "234067235160" ], [ - "759864623518170", - "16029726" + "680095721530457", + "10113856826" ], [ - "759864639547896", - "27422448" + "680560311480251", + "10364574980" ], [ - "759864666970344", - "45324196" + "681871200072623", + "12689035666" ], [ - "759864712294540", - "45381527" + "682506977792619", + "12652582923" ], [ - "759864794252615", - "45249060" + "682844108475123", + "1148082700" ], [ - "759864839501675", - "38552197" + "706133899990342", + "2720589483246" ], [ - "759864878053872", - "45325980" + "720495305315880", + "55569209804" ], [ - "759864923379852", - "45332668" + "721225229970053", + "55487912201" ], [ - "759864968712520", - "14947041" + "721409921103392", + "4415003338706" ], [ - "759864983659561", - "44411176" + "726480740731617", + "2047412139790" ], [ - "759865028070737", - "45841550" + "729812277370084", + "5650444595733" ], [ - "759865073912287", - "37491304" + "735554122237517", + "2514215964115" ], [ - "759865111403591", - "35823677" + "740648921884436", + "39104687507" ], [ - "759865189244823", - "45959807" + "741007335527824", + "48848467587" ], [ - "759865235204630", - "28621023" + "741720392463454", + "1213327771" ], [ - "759865309352063", - "54352361" + "741724318106214", + "903473746" ], [ - "759865363704424", - "37604905" + "741732026495866", + "17262110558" ], [ - "759865401309329", - "48060122" + "741842944533312", + "61092850308" ], [ - "759865502784387", - "41998112" + "743270084189585", + "44269246366" ], [ - "759865545775991", - "43017774" + "743356388661755", + "284047664" ], [ - "759865588793765", - "45709130" + "743356672709419", + "804932236" ], [ - "759865634502895", - "20672897" + "743357477641655", + "744601051" ], [ - "759865655175792", - "18088532" + "743358222242706", + "636559806" ], [ - "759865673264324", - "176142052" + "743358858802512", + "569027210" ], [ - "759865849406376", - "249729828" + "743359427829722", + "616622839" ], [ - "759866099136204", - "111218297" + "743360044452561", + "590416341" ], [ - "759866210354501", - "27934473" + "743360634868902", + "576948243" ], [ - "759866238288974", - "27468895" + "743361211817145", + "347174290" ], [ - "759866265757869", - "1914618989" + "743361558991435", + "112939223481" ], [ - "759868180376858", - "45603693" + "743474498214916", + "37245408077" ], [ - "759868225980551", - "45842728" + "743511743622993", + "27738836042" ], [ - "759868271823279", - "46014440" + "743539482459035", + "36180207225" ], [ - "759868317837719", - "46063229" + "743575662666260", + "9251544878" ], [ - "759868363900948", - "2621289" + "743600698167087", + "4239282" ], [ - "759868366522237", - "53709228" + "743630495498696", + "25004744107" ], [ - "759868420231465", - "52228978" + "743655500242803", + "27838968460" ], [ - "759868472460443", - "66561157603" + "743683339211263", + "1045028130" ], [ - "759935033618046", - "45751501" + "743715232207665", + "154091444" ], [ - "759935079369547", - "45866818" + "743715386299109", + "356610619" ], [ - "759935171141704", - "45924323" + "743715742909728", + "792560930" ], [ - "759935217066027", - "27091944" + "743716535470658", + "930442023" ], [ - "759935244157971", - "47094028" + "743717465912681", + "930527887" ], [ - "759935291251999", - "4720868852" + "743718396440568", + "930718264" ], [ - "759940035846319", - "79415211" + "743719327158832", + "900100878" ], [ - "759940115261530", - "104887944" + "743720227259710", + "886888605" ], [ - "759940220149474", - "104422502" + "743721114148315", + "1195569000" ], [ - "759940324571976", - "47123207" + "743722931420691", + "332343086" ], [ - "759940371695183", - "21522781" + "743723263763777", + "983775747" ], [ - "759940431848469", - "26567259" + "743724247539524", + "409861551" ], [ - "759940458415728", - "28464738" + "743724657401075", + "97298663" ], [ - "759940486880466", - "16535232" + "743724754699738", + "86768693" ], [ - "759940529740783", - "23798092" + "743724841468431", + "33509916350" ], [ - "759940553538875", - "22130816" + "743758351384781", + "69774513803" ], [ - "759940575669691", - "19923295" + "743828125898584", + "21981814788" ], [ - "759940703254106", - "96921736" + "743850107713372", + "43182294" ], [ - "759944301288885", - "148924295" + "743850150895666", + "37264237" ], [ - "759944524831820", - "94934102" + "743850188159903", + "247711" ], [ - "759944631176184", - "441416" + "743850188407614", + "417946" ], [ - "759944876402388", - "86731197" + "743850188825560", + "120504819738" ], [ - "759945236861297", - "37118" + "743970693645298", + "178855695867" ], [ - "759945663978694", - "33147570" + "744149549341165", + "125886081790" ], [ - "759947353926358", - "19648269869" + "744819318753537", + "98324836380" ], [ - "759967315893614", - "43342636" + "759669831627157", + "91465441036" ], [ - "759967359236250", - "73180835" + "759761297451604", + "12346431080" ], [ - "759968303751614", - "86480048" + "759773643882684", + "1557369578" ], [ - "759968390231662", - "87319503" + "759775201252262", + "18264975890" ], [ - "759968565049433", - "57445411" + "759793466228152", + "133677" ], [ - "759969182444540", - "86435423" + "759794285432848", + "26613224094" ], [ - "759969313128560", - "78853009" + "759820979493945", + "70435190" ], [ - "759969922263950", - "86993082" + "759821049929135", + "64820367" ], [ - "759970009257032", - "87071115" + "759821114749502", + "315142246" ], [ - "759970096328147", - "87094141" + "759821772251897", + "342469548" ], [ - "759970659966091", - "7037654" + "759822114721445", + "22786793078" ], [ - "759970895945609", - "88340633" + "759844955449185", + "62362349" ], [ - "759971171933682", - "103831674" + "759845017811534", + "79862410" ], [ - "759971792380007", - "55918771" + "759845097673944", + "78350903" ], [ - "759971848298778", - "51663688" + "759845176024847", + "81575013" ], [ - "759971899962466", - "51820149" + "759845257599860", + "81611843" ], [ - "759971951782615", - "53263163" + "759845339211703", + "79874694" ], [ - "759972005045778", - "46273362" + "759845419086397", + "79925681" ], [ - "759972051319140", - "11764053" + "759845499012078", + "79231634" ], [ - "759972063083193", - "44521152" + "759845578243712", + "73291169" ], [ - "759972107604345", - "54315334" + "759845651534881", + "61264703" ], [ - "759972270510579", - "52771216" + "759845766640518", + "56977225" ], [ - "759972378810991", - "53615733" + "759845823617743", + "71386527" ], [ - "759972432426724", - "54009683" + "759845895004270", + "75906832" ], [ - "759972545991397", - "40392605" + "759846058683685", + "75729409" ], [ - "759972586384002", - "40570272" + "759846134413094", + "27722926" ], [ - "759972626954274", - "29991995" + "759846162136020", + "30197986" ], [ - "759972656946269", - "27715408" + "759846192334006", + "158241812" ], [ - "759972684661677", - "10745158" + "759846350575818", + "123926293" ], [ - "759972695406835", - "53647337" + "759846474502111", + "124139589" ], [ - "759973067945793", - "43509245" + "759846598641700", + "25193251" ], [ - "760353358762258", - "10893874" + "759846623834951", + "25387540" ], [ - "760353369656132", - "992291" + "759846649222491", + "665345" ], [ - "760353370648423", - "136316" + "759846954659102", + "631976394" ], [ - "760353370784739", - "147677" + "759847586635496", + "66958527" ], [ - "760353371573213", - "659890" + "759847653594023", + "44950580" ], [ - "760353372233103", - "46092807" + "759847698544603", + "46547201" ], [ - "760354201137939", - "3218014" + "759847745091804", + "18839036" ], [ - "760354238838872", - "3273321614" + "759847763930840", + "270669443" ], [ - "760357963287583", - "52520804" + "759848034600283", + "365575215" ], [ - "760358123735957", - "112541922486" + "759848595655012", + "187295653" ], [ - "760472183068657", - "71399999953" + "759848782950665", + "25295452" ], [ - "760765586953427", - "195667368889" + "759848808246117", + "173058283" ], [ - "760961254322316", - "846285958415" + "759848981304400", + "63821133" ], [ - "761807542325030", - "712321671" + "759849045125533", + "25336780" ], [ - "761808255104338", - "10685317968" + "759849070462313", + "29081391" ], [ - "761818941407193", - "38669865140" + "759849099543704", + "29122172" ], [ - "761858011206868", - "52031027" + "759849128665876", + "28706993" ], [ - "761858211139284", - "53537634" + "759849157372869", + "13456201" ], [ - "761858291968910", - "1954482199" + "759849170829070", + "36511282" ], [ - "761860307483525", - "798157403" + "759849207340352", + "41243780" ], [ - "762237672060652", - "57392002182" + "759849248584132", + "33852678" ], [ - "762295918132248", - "68617976" + "759849282436810", + "33956125" ], [ - "762295986750224", - "181183510038" + "759849316392935", + "34132617" ], [ - "762477170260262", - "181104817321" + "759849350525552", + "17041223" ], [ - "762658275077583", - "181134595436" + "759849367566775", + "20273897" ], [ - "762928154263486", - "12718343972" + "759849387840672", + "9037475" ], [ - "762941373378458", - "61742453" + "759849396878147", + "45923781" ], [ - "762941584284511", - "53571451" + "759849442801928", + "52882809" ], [ - "762941637855962", - "53583667" + "759849495684737", + "71491609" ], [ - "762941691439629", - "503128696018" + "759849567176346", + "39781360" ], [ - "763444820135647", - "9452272123" + "759849606957706", + "35612937" ], [ - "763454275602361", - "24685659026" + "759849642570643", + "45789959" ], [ - "763478961261387", - "50245820668" + "759849688360602", + "46291324" ], [ - "763529207082055", - "45323986837" + "759849734651926", + "46416554" ], [ - "763574531068892", - "38976282600" + "759849781068480", + "46480026" ], [ - "763709016360993", - "44972105263" + "759849827548506", + "28909947" ], [ - "763803405580259", - "33297747636" + "759849856458453", + "20566561" ], [ - "763877196713494", - "54224527" + "759849877025014", + "20612970" ], [ - "763877250938021", - "54871543" + "759849897637984", + "9530420" ], [ - "763877347112986", - "53640521" + "759849923422103", + "43423401" ], [ - "763879425886186", - "18918512681" + "759849966845504", + "11714877" ], [ - "763899542751244", - "4287074277" + "759864364377919", + "13050269" ], [ - "763904856308950", - "91042132" + "759864377428188", + "28949561" ], [ - "763904947351082", - "3672111531" + "759864451656441", + "45362892" ], [ - "763908632298791", - "1924103043" + "759864497019333", + "45386397" ], [ - "763910715862653", - "4104368630" + "759864542405730", + "44251644" ], [ - "763938664793385", - "889781905" + "759864623518170", + "16029726" ], [ - "763975977681622", - "85746574" + "759864639547896", + "27422448" ], [ - "763976127391221", - "54879926" + "759864666970344", + "45324196" ], [ - "763976238932410", - "67220754" + "759864712294540", + "45381527" ], [ - "763978572723857", - "2432585925" + "759864794252615", + "45249060" ], [ - "763983475557042", - "2433575022" + "759864839501675", + "38552197" ], [ - "763985961279749", - "3362361779" + "759864878053872", + "45325980" ], [ - "763989323641528", - "66961666112" + "759864923379852", + "45332668" ], [ - "764448523798789", - "9214910" + "759864968712520", + "14947041" ], [ - "764448533013699", - "3175483736" + "759864983659561", + "44411176" ], [ - "764453314028098", - "886719471" + "759865028070737", + "45841550" ], [ - "766181126764911", - "110330114890" + "759865073912287", + "37491304" ], [ - "766291456879801", - "143444348214" + "759865111403591", + "35823677" ], [ - "766434901228015", - "15422132619" + "759865189244823", + "45959807" ], [ - "767312117384897", - "5239569017" + "759865235204630", + "28621023" ], [ - "767321251748842", - "180967833670" + "759865309352063", + "54352361" ], [ - "767502220600152", - "229602422" + "759865363704424", + "37604905" ], [ - "767502450202574", - "572238513" + "759865401309329", + "48060122" ], [ - "767807852820920", - "5000266651" + "759865502784387", + "41998112" ], [ - "767824420446983", - "1158445599" + "759865545775991", + "43017774" ], [ - "767842406169239", - "5954962183" + "759865588793765", + "45709130" ], [ - "767978192014986", - "1606680000" + "759865634502895", + "20672897" ], [ - "768090558981612", - "1708733210" + "759865655175792", + "18088532" ], [ - "768418957212524", - "52886516686" + "759865673264324", + "176142052" ], [ - "768563220420978", - "624282480" + "759865849406376", + "249729828" ], [ - "768649803857758", - "67782688750" + "759866099136204", + "111218297" ], [ - "790662167913055", - "60917382823" + "759866210354501", + "27934473" ], [ - "790723454198851", - "1404119830" + "759866238288974", + "27468895" ], [ - "792657494145217", - "11153713894" + "759866265757869", + "1914618989" ], [ - "841660754217816", - "4019358849" + "759868180376858", + "45603693" ], [ - "845186146706783", - "62659298764" + "759868225980551", + "45842728" ], [ - "848290002730558", - "29448441435" + "759868271823279", + "46014440" ], [ - "866984767069036", - "39504417438" + "759868317837719", + "46063229" ], [ - "912204712982716", - "3541650000" + "759868363900948", + "2621289" ], [ - "912555361492019", - "2704904821499" + "759868366522237", + "53709228" ], [ - "919027354019614", - "3344108" + "759868420231465", + "52228978" ], [ - "919414419371700", - "44905425998" - ] - ] - ], - [ - "0xb11903Ec9E1036F1a3FaFe5815E84D8c1f62e254", - [ + "759868472460443", + "66561157603" + ], [ - "680570676055231", - "12790345862" + "759935033618046", + "45751501" ], [ - "741073041489777", - "58475807020" + "759935079369547", + "45866818" ], [ - "811161311356507", - "10974488319" + "759935171141704", + "45924323" ], [ - "811179416748655", - "18986801346" + "759935217066027", + "27091944" ], [ - "849346368621598", - "11433794528" + "759935244157971", + "47094028" ], [ - "861496906364983", - "7066180139" - ] - ] - ], - [ - "0xb13c60ee3eCEC5f689469260322093870aA1e842", - [ - [ - "264925932058496", - "11752493257" - ] - ] - ], - [ - "0xB17fC3D59de766b659644241Dba722546E32b163", - [ - [ - "530457276837452", - "21389399522" - ] - ] - ], - [ - "0xB2d818649dB5D5fD462cEc1F063dd1B8B8b7E106", - [ - [ - "648783973598407", - "20878800" - ] - ] - ], - [ - "0xb2dDD631015D5AA8edcbD38dD9bfa0ca8a7f109e", - [ - [ - "602679309587183", - "74690241246" + "759935291251999", + "4720868852" ], [ - "602753999828429", - "822947782651" - ] - ] - ], - [ - "0xb319c06c96F676110AcC674a2B608ddb3117f43B", - [ - [ - "611471034974532", - "94598000000" + "759940035846319", + "79415211" ], [ - "636826909305416", - "83800270379" + "759940115261530", + "104887944" ], [ - "650587203583982", - "2695189900" + "759940220149474", + "104422502" ], [ - "652743079185278", - "141663189223" + "759940324571976", + "47123207" ], [ - "654431959023764", - "13424979052" + "759940371695183", + "21522781" ], [ - "654445384002816", - "109437957582" + "759940431848469", + "26567259" ], [ - "655168391284111", - "167255000000" + "759940458415728", + "28464738" ], [ - "656569610821263", - "155690600000" + "759940486880466", + "16535232" ], [ - "657033695277469", - "148493723460" + "759940529740783", + "23798092" ], [ - "657826429374395", - "145018797369" + "759940553538875", + "22130816" ], [ - "658259541638510", - "150002086275" + "759940575669691", + "19923295" ], [ - "658561025456875", - "148762745637" + "759940703254106", + "96921736" ], [ - "660384609944925", - "306309267806" + "759944301288885", + "148924295" ], [ - "660980494384114", - "322801544810" - ] - ] - ], - [ - "0xb338092f7eE37A5267642BaE60Ff514EB7088593", - [ - [ - "152402596679147", - "93039721219" + "759944524831820", + "94934102" ], [ - "152657826400366", - "185210230255" + "759944631176184", + "441416" ], [ - "167944467831210", - "364035918660" + "759944876402388", + "86731197" ], [ - "168326342418592", - "142183392268" + "759945236861297", + "37118" ], [ - "667711173568321", - "2323048492" + "759945663978694", + "33147570" ], [ - "779534812787850", - "16116959741" + "759947353926358", + "19648269869" ], [ - "859649522699248", - "12551804265" - ] - ] - ], - [ - "0xB345720Ab089A6748CCec3b59caF642583e308Bf", - [ - [ - "634496771451551", - "2768287495" + "759967315893614", + "43342636" ], [ - "634746131014038", - "2338659386" + "759967359236250", + "73180835" ], [ - "634804642825524", - "15032871752" + "759968303751614", + "86480048" ], [ - "648328801845272", - "12731370312" + "759968390231662", + "87319503" ], [ - "648353111527661", - "10493080827" + "759968565049433", + "57445411" ], [ - "649167541060009", - "16767945280" + "759969182444540", + "86435423" ], [ - "649195623906283", - "18389039062" + "759969313128560", + "78853009" ], [ - "654358595160398", - "29902100900" + "759969922263950", + "86993082" ], [ - "654388497261298", - "43461762466" + "759970009257032", + "87071115" ], [ - "656871705959559", - "9313705270" + "759970096328147", + "87094141" ], [ - "660370495857615", - "14114087310" + "759970659966091", + "7037654" ], [ - "671696472763514", - "231205357536" + "759970895945609", + "88340633" ], [ - "671927678121050", - "252155202330" + "759971171933682", + "103831674" ], [ - "672398260373775", - "214433251957" + "759971792380007", + "55918771" ], [ - "672830275797486", - "210961749202" + "759971848298778", + "51663688" ], [ - "673041237546688", - "205321095099" + "759971899962466", + "51820149" ], [ - "673246558641787", - "240472769386" + "759971951782615", + "53263163" ], [ - "673487031411173", - "273039002863" + "759972005045778", + "46273362" ], [ - "673760070414036", - "172558844132" + "759972051319140", + "11764053" ], [ - "675240588703017", - "31281369769" - ] - ] - ], - [ - "0xB3561671651455D2E8BF99d2f9E2257f2a313a2c", - [ - [ - "262002480116391", - "61656029023" + "759972063083193", + "44521152" ], [ - "299029773648836", - "103299890816" + "759972107604345", + "54315334" ], [ - "299623525856977", - "96553480454" + "759972270510579", + "52771216" ], [ - "340830099921304", - "42326378229" + "759972378810991", + "53615733" ], [ - "341635869146462", - "53919698039" + "759972432426724", + "54009683" ], [ - "341990086557247", - "17007566134" + "759972545991397", + "40392605" ], [ - "343614880915811", - "56782954188" - ] - ] - ], - [ - "0xb3b0EFf26C982669a9BA47B31aC6b130A4721819", - [ + "759972586384002", + "40570272" + ], [ - "679985260625992", - "171030000" - ] - ] - ], - [ - "0xB3B6757364eCa9Cd74f46A587F8775b832d72D2e", - [ + "759972626954274", + "29991995" + ], [ - "107211387355694", - "152715666195" + "759972656946269", + "27715408" ], [ - "247564500489746", - "77337849888" - ] - ] - ], - [ - "0xB3CE85DF372271F37DBB40C21aCA38aCACbB315F", - [ + "759972684661677", + "10745158" + ], [ - "130196078661356", - "508123258818" - ] - ] - ], - [ - "0xb3F3658bF332ba6c9c0Cc5bc1201cABA7ada819B", - [ + "759972695406835", + "53647337" + ], [ - "191771322130870", - "4" - ] - ] - ], - [ - "0xb4215b0781cf49817Dc31fe8A189c5f6EBEB2E88", - [ + "759973067945793", + "43509245" + ], [ - "164600428750782", - "35727783275" - ] - ] - ], - [ - "0xb47b228a5c8B3Be5c18e4A09d31E00F8Be26014c", - [ + "760353358762258", + "10893874" + ], [ - "680105835387283", - "912195631" - ] - ] - ], - [ - "0xB4D12acf58C79C23Af491f2eF0039f1c57ABE277", - [ + "760353369656132", + "992291" + ], [ - "217894094937121", - "8624335172" + "760353370648423", + "136316" ], [ - "729014568575071", - "291619601680" - ] - ] - ], - [ - "0xB5030cAc364bE50104803A49C30CCfA0d6A48629", - [ + "760353370784739", + "147677" + ], [ - "210588064020582", - "198112928750" - ] - ] - ], - [ - "0xb53031b8E67293dC17659338220599F4b1F15738", - [ + "760353371573213", + "659890" + ], [ - "219666700443377", - "55265901" + "760353372233103", + "46092807" ], [ - "224654035643462", - "40771987379" - ] - ] - ], - [ - "0xb5566c4F8ee35E46c397CECf963Bfe9F8798F714", - [ + "760354201137939", + "3218014" + ], [ - "76119225435585", - "962826980" + "760354238838872", + "3273321614" ], [ - "579111175545954", - "3774608352" + "760357963287583", + "52520804" ], [ - "634748469673424", - "4160000000" - ] - ] - ], - [ - "0xb57Fd427c7a816853b280D8c445184e95Fe8f61A", - [ + "760358123735957", + "112541922486" + ], [ - "83737011617598", - "306070239187" + "760472183068657", + "71399999953" ], [ - "398321865655642", - "2054144320000" - ] - ] - ], - [ - "0xB58A0c101dd4dD9c29B965F944191023949A6fd0", - [ + "760765586953427", + "195667368889" + ], [ - "4955860418772", - "7048876233" + "760961254322316", + "846285958415" ], [ - "655811760146606", - "1801805718" - ] - ] - ], - [ - "0xb58BaD9271f652bb1cCCc654E71162cFB0fF6393", - [ + "761807542325030", + "712321671" + ], [ - "631462636069759", - "104395512250" + "761808255104338", + "10685317968" ], [ - "631569644291966", - "139558094702" + "761818941407193", + "38669865140" ], [ - "632291209713980", - "81489498170" - ] - ] - ], - [ - "0xB615e3E80f20beA214076c463D61B336f6676566", - [ + "761858011206868", + "52031027" + ], [ - "157631883911600", - "6658333333" + "761858211139284", + "53537634" ], [ - "452052986565565", - "7692307692" + "761858291968910", + "1954482199" ], [ - "646401611359546", - "35903115000" - ] - ] - ], - [ - "0xb63050875231622e99cd8eF32360f9c7084e50a7", - [ + "761860307483525", + "798157403" + ], [ - "146717188782725", - "5166171" + "762237672060652", + "57392002182" ], [ - "150200863181163", - "1867151304" + "762295918132248", + "68617976" ], [ - "150300825978051", - "18112431039" + "762295986750224", + "181183510038" ], [ - "155767639963423", - "99245868053" - ] - ] - ], - [ - "0xB64F17d47aDf05fE3691EbbDfcecdF0AA5dE98D6", - [ + "762477170260262", + "181104817321" + ], [ - "153735131926682", - "3710134756" + "762658275077583", + "181134595436" ], [ - "679485017868431", - "3915612129" + "762928154263486", + "12718343972" ], [ - "680114838606701", - "27308328915" + "762941373378458", + "61742453" ], [ - "685025137352998", - "25233193029" + "762941584284511", + "53571451" ], [ - "841664773576665", - "44866112401" - ] - ] - ], - [ - "0xB65a725e921f3feB83230Bd409683ff601881f68", - [ + "762941637855962", + "53583667" + ], [ - "250639941891472", - "3441975352" + "762941691439629", + "503128696018" ], [ - "250643383866824", - "29574505735" - ] - ] - ], - [ - "0xb66924A7A23e22A87ac555c950019385A3438951", - [ + "763444820135647", + "9452272123" + ], + [ + "763454275602361", + "24685659026" + ], + [ + "763478961261387", + "50245820668" + ], + [ + "763529207082055", + "45323986837" + ], + [ + "763574531068892", + "38976282600" + ], + [ + "763709016360993", + "44972105263" + ], + [ + "763803405580259", + "33297747636" + ], + [ + "763877196713494", + "54224527" + ], + [ + "763877250938021", + "54871543" + ], [ - "154652447640805", - "347100000000" + "763877347112986", + "53640521" ], [ - "155374769963423", - "392870000000" + "763879425886186", + "18918512681" ], [ - "160285058311354", - "100671341995" + "763899542751244", + "4287074277" ], [ - "174205140895010", - "132445933047" + "763904856308950", + "91042132" ], [ - "202924952054531", - "35561818090" - ] - ] - ], - [ - "0xb68F761056eF1044eDf8E15646c8412FB86Cf6F2", - [ + "763904947351082", + "3672111531" + ], [ - "552304065222426", - "308085069906" + "763908632298791", + "1924103043" ], [ - "577017952241768", - "78820430185" + "763910715862653", + "4104368630" ], [ - "577096772671953", - "153413133261" - ] - ] - ], - [ - "0xb69D09d54bF5a489Ca9F0d8E0D50d2c958aE55C5", - [ + "763938664793385", + "889781905" + ], [ - "158532389505642", - "22000000000" - ] - ] - ], - [ - "0xB6CC924486681a1ca489639200dcEB4c41C283d3", - [ + "763975977681622", + "85746574" + ], [ - "3761444092233", - "30919467843" + "763976127391221", + "54879926" ], [ - "86557982815957", - "47171577753" + "763976238932410", + "67220754" ], [ - "91035130926027", - "100278708038" + "763978572723857", + "2432585925" ], [ - "107705159415631", - "32372691975" + "763983475557042", + "2433575022" ], [ - "107737532107606", - "20680630588" + "763985961279749", + "3362361779" ], [ - "189221726611474", - "50441908776" + "763989323641528", + "66961666112" ], [ - "331897561408947", - "208972688693" - ] - ] - ], - [ - "0xB73a795F4b55dC779658E11037e373d66b3094c7", - [ + "764448523798789", + "9214910" + ], [ - "363939335244215", - "341688796" + "764448533013699", + "3175483736" ], [ - "390558902441157", - "134653071054" + "764453314028098", + "886719471" ], [ - "401267047948074", - "134236764892" + "766181126764911", + "110330114890" ], [ - "655972005039843", - "146287000000" - ] - ] - ], - [ - "0xb74e5e06f50fa9e4eF645eFDAD9d996D33cc2d9D", - [ + "766291456879801", + "143444348214" + ], [ - "648110341883007", - "332151166" - ] - ] - ], - [ - "0xb78003FCB54444E289969154A27Ca3106B3f41f6", - [ + "766434901228015", + "15422132619" + ], [ - "164189472951092", - "11278479258" + "767312117384897", + "5239569017" ], [ - "191781471592467", - "43648473883" + "767321251748842", + "180967833670" ], [ - "385711073784542", - "2538113894" + "767502220600152", + "229602422" ], [ - "395411549090894", - "13353165233" + "767502450202574", + "572238513" ], [ - "562459032802308", - "121464000000" + "767807852820920", + "5000266651" ], [ - "564975430810977", - "121464000000" + "767824420446983", + "1158445599" ], [ - "566651533847146", - "121464000000" + "767842406169239", + "5954962183" ], [ - "568419948467146", - "121464000000" + "767978192014986", + "1606680000" ], [ - "570301073669484", - "121464000000" + "768090558981612", + "1708733210" ], [ - "571791133289484", - "121464000000" - ] - ] - ], - [ - "0xB817bCfa60f2a4c9cE7E900cc1a0B1bd5f45bb70", - [ + "768418957212524", + "52886516686" + ], [ - "191150584432777", - "327574162163" - ] - ] - ], - [ - "0xB81D739df194fA589e244C7FF5a15E5C04978D0D", - [ + "768563220420978", + "624282480" + ], [ - "764122302458414", - "389659428" - ] - ] - ], - [ - "0xB8Bf70d4479f169C8EAb396E2A17Ff6A0E8CD74B", - [ + "768649803857758", + "67782688750" + ], [ - "321732175378043", - "214690052512" - ] - ] - ], - [ - "0xB8eCEcF183e45D6EB8A06E2F27354d1c3940aA76", - [ + "790662167913055", + "60917382823" + ], [ - "199312851785361", - "21012816705" - ] - ] - ], - [ - "0xb9c3Dd8fee9A4ACe100f8cC0B8239AB49B021fA5", - [ + "790723454198851", + "1404119830" + ], [ - "88303018180293", - "145192655079" + "792657494145217", + "11153713894" ], [ - "88448210835372", - "10000000" + "841660754217816", + "4019358849" ], [ - "88448220835372", - "1000000" + "845186146706783", + "62659298764" ], [ - "152141663101028", - "46320000000" + "848290002730558", + "29448441435" ], [ - "201463917097433", - "98698631369" + "866984767069036", + "39504417438" ], [ - "340872426299533", - "273300000000" + "912204712982716", + "3541650000" ], [ - "638362383116869", - "152606794771" + "912555361492019", + "2704904821499" ], [ - "640276210842856", - "176025000000" + "919027354019614", + "3344108" + ], + [ + "919414419371700", + "44905425998" ] ] ], diff --git a/scripts/beanstalkShipments/data/contractAccounts.json b/scripts/beanstalkShipments/data/contractAccounts.json index 13e288d9..6d983c23 100644 --- a/scripts/beanstalkShipments/data/contractAccounts.json +++ b/scripts/beanstalkShipments/data/contractAccounts.json @@ -208,4 +208,4 @@ "0xfe84ced1581a0943abea7d57ac47e2d01d132c98", "0xfefe31009b95c04e062aa89c975fb61b5bd9e785", "0xff4a6b6f1016695551355737d4f1236141ec018d" -] +] \ No newline at end of file diff --git a/scripts/beanstalkShipments/data/unripeBdvTokens.json b/scripts/beanstalkShipments/data/unripeBdvTokens.json index b08987c3..a1e0f9c3 100644 --- a/scripts/beanstalkShipments/data/unripeBdvTokens.json +++ b/scripts/beanstalkShipments/data/unripeBdvTokens.json @@ -6231,10 +6231,6 @@ "0xB0dAfc466871c29662E5cbf4227322C96A8Ccbe9", "138263230" ], - [ - "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", - "13208116635058" - ], [ "0xb13c60ee3eCEC5f689469260322093870aA1e842", "1347383897" @@ -6567,6 +6563,10 @@ "0xBA682E593784f7654e4F92D58213dc495f229Eec", "342774141" ], + [ + "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", + "13208116635058" + ], [ "0xBAe7A9B7Df36365Cb17004FD2372405773273a68", "22533142990" diff --git a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json index d115bf80..a04e02b1 100644 --- a/scripts/beanstalkShipments/data/updatedShipmentRoutes.json +++ b/scripts/beanstalkShipments/data/updatedShipmentRoutes.json @@ -21,18 +21,18 @@ "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x6fc9267a", "recipient": "0x2", - "data": "0x000000000000000000000000499a58cdc7cfd89791764faac6faebd9e8356b4b0000000000000000000000008a961e5c3e4c41b63ff1fb66ea8b55480f2344fa0000000000000000000000000000000000000000000000000000000000000001" + "data": "0x000000000000000000000000525c94754c51946a7a3b72580ce0df36922e1e6400000000000000000000000068bdbb0402a3ca89c7c4af8e41c021635102d1580000000000000000000000000000000000000000000000000000000000000001" }, { "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0xb34da3d2", "recipient": "0x5", - "data": "0x000000000000000000000000499a58cdc7cfd89791764faac6faebd9e8356b4b0000000000000000000000008a961e5c3e4c41b63ff1fb66ea8b55480f2344fa" + "data": "0x000000000000000000000000525c94754c51946a7a3b72580ce0df36922e1e6400000000000000000000000068bdbb0402a3ca89c7c4af8e41c021635102d158" }, { "planContract": "0x0000000000000000000000000000000000000000", "planSelector": "0x5f6cc37d", "recipient": "0x6", - "data": "0x000000000000000000000000499a58cdc7cfd89791764faac6faebd9e8356b4b0000000000000000000000008a961e5c3e4c41b63ff1fb66ea8b55480f2344fa" + "data": "0x000000000000000000000000525c94754c51946a7a3b72580ce0df36922e1e6400000000000000000000000068bdbb0402a3ca89c7c4af8e41c021635102d158" } ] \ No newline at end of file diff --git a/scripts/beanstalkShipments/deployPaybackContracts.js b/scripts/beanstalkShipments/deployPaybackContracts.js index 8d4e8985..e56a66f3 100644 --- a/scripts/beanstalkShipments/deployPaybackContracts.js +++ b/scripts/beanstalkShipments/deployPaybackContracts.js @@ -33,6 +33,10 @@ async function deployShipmentContracts({ PINTO, L2_PINTO, account, verbose = tru // get the initialization args from the json file const barnPaybackArgsPath = "./scripts/beanstalkShipments/data/beanstalkGlobalFertilizer.json"; const barnPaybackArgs = JSON.parse(fs.readFileSync(barnPaybackArgsPath)); + + // note: `distributorAddress` is heavily nonce based. The openZeppelin package, for transparent proxies, + // will attempt to reuse the proxy admin address for the next contract. Thus, multiple executions would use a different amount of nonces. + // this script should be used with a fresh implementation every time. const distributorAddress = (await computeDistributorAddress(account)).distributorAddress; console.log(`\nšŸ“ Using pre-computed ContractPaybackDistributor address: ${distributorAddress}`); const barnPaybackContract = await upgrades.deployProxy( From ef9f95fb7c4c15e71f97a4d3a828f005990145e5 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 12:14:21 -0500 Subject: [PATCH 264/270] Exclude Beanstalk contract account from shipment distribution --- .../beanstalkShipments/data/productionAddresses.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/scripts/beanstalkShipments/data/productionAddresses.json b/scripts/beanstalkShipments/data/productionAddresses.json index a841411c..b93ddc70 100644 --- a/scripts/beanstalkShipments/data/productionAddresses.json +++ b/scripts/beanstalkShipments/data/productionAddresses.json @@ -1,10 +1,10 @@ { - "siloPayback": "0xBa0534B16017E861bA15f1587D8A060e15F7f336", - "siloPaybackImplementation": "0xCebbDb437330a2f9049A4882918762Bc1A5fB582", - "barnPayback": "0x724c87b9A6Ea6BA7A7CF3bfc0309DE778fB28027", - "barnPaybackImplementation": "0xd5a8E2FF523Cb3dB614A669c4044E908Ebaad041", - "contractPaybackDistributor": "0xB0e3DC9066C7aFC90065008e8d7a3c6Cb1F66B37", - "proxyAdmin": "0xF71f4d69D8Ad7eb6DCfb1c8ac36FDDa3D057500D", + "siloPayback": "0x525C94754C51946a7a3B72580Ce0DF36922E1E64", + "siloPaybackImplementation": "0xDbb10C0cE795FFd3A4003CF0EcC849b25a788EB1", + "barnPayback": "0x68bDbb0402a3Ca89C7C4af8e41C021635102d158", + "barnPaybackImplementation": "0x5bb2b891496F9f4db1467755eDc240329EA08E2C", + "contractPaybackDistributor": "0xbA941Af3292c49b585f4EC5C8164c1dfc893EEdC", + "proxyAdmin": "0xE5A707d49968937C860762fB256CE9dC7B1370F0", "l1ContractMessenger": "0xD2abd9a7E7F10e3bF4376fb03A07fca729A55b6f", "network": "base", "description": "Production addresses for Base mainnet - DO NOT AUTO-INCREMENT" From 685c3ff19c4cbd775f0dfa0a5c59f5b5cbc46d2a Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 13:50:57 -0500 Subject: [PATCH 265/270] Implement TempRepaymentFieldFacet for temporary PI-15 field repayment functionality --- contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol index f7afdc29..4608118e 100644 --- a/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol +++ b/contracts/beanstalk/tempFacets/TempRepaymentFieldFacet.sol @@ -14,7 +14,7 @@ import {LibAppStorage} from "contracts/libraries/LibAppStorage.sol"; * After the initialization is complete, this facet will be removed. */ contract TempRepaymentFieldFacet is ReentrancyGuard { - address public constant REPAYMENT_FIELD_POPULATOR = 0xc4c66c8b199443a8deA5939ce175C3592e349791; + address public constant REPAYMENT_FIELD_POPULATOR = 0x00000015EE13a3C1fD0e8Dc2e8C2c8590D5B440B; uint256 public constant REPAYMENT_FIELD_ID = 1; event RepaymentPlotAdded(address indexed account, uint256 indexed plotIndex, uint256 pods); From ca72ccdade6219feb6b9b23bd5ed1b8f74b4f97c Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 14:13:05 -0500 Subject: [PATCH 266/270] Refactor Beanstalk shipment task to use external JSON configuration file --- tasks/beanstalk-shipments.js | 133 +++++++++++++++++------------------ 1 file changed, 64 insertions(+), 69 deletions(-) diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index 4ffa1669..d404e282 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -89,8 +89,7 @@ module.exports = function () { await l1Messenger.deployed(); console.log("L1ContractMessenger deployed to:", l1Messenger.address); - } - ); + }); ////// STEP 0: PARSE EXPORT DATA ////// // Parses the export data and detects contract addresses using direct RPC calls @@ -187,8 +186,7 @@ module.exports = function () { console.log(` - SiloPayback: ${siloPaybackAddress}`); console.log(` - BarnPayback: ${barnPaybackAddress}`); console.log(` - ContractPaybackDistributor: ${contractPaybackDistributorAddress}`); - } - ); + }); ////// STEP 1.5: INITIALIZE SILO PAYBACK ////// // Initialize the SiloPayback contract with unripe BDV data @@ -304,7 +302,7 @@ module.exports = function () { }); }); - ////// STEP 2: DEPLOY TEMP_FIELD_FACET AND TOKEN_HOOK_FACET ////// + ////// STEP 2: DEPLOY TEMP_FIELD_FACET ////// // To minimize the number of transaction the PCM multisig has to sign, we deploy the TempFieldFacet // that allows an EOA to add plots to the repayment field. // Set mock to false to deploy the TempFieldFacet @@ -315,31 +313,29 @@ module.exports = function () { .setAction(async (taskArgs) => { const mock = taskArgs.mock; - // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field - console.log( - "STEP 2: ADDING NEW TEMP_REPAYMENT_FIELD_FACET AND THE TOKEN_HOOK_FACET TO THE PINTO DIAMOND" - ); - console.log("-".repeat(50)); - - let deployer; - if (mock) { - deployer = await impersonateSigner(L2_PCM); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[0]; - } + // Step 2: Create the new TempRepaymentFieldFacet via diamond cut and populate the repayment field + console.log("STEP 2: ADDING NEW TEMP_REPAYMENT_FIELD_FACET TO THE PINTO DIAMOND"); + console.log("-".repeat(50)); - await upgradeWithNewFacets({ - diamondAddress: L2_PINTO, - facetNames: ["TempRepaymentFieldFacet"], - libraryNames: [], - facetLibraries: {}, - initArgs: [], - verbose: true, - object: !mock, - account: deployer + let deployer; + if (mock) { + deployer = await impersonateSigner(L2_PCM); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } + + await upgradeWithNewFacets({ + diamondAddress: L2_PINTO, + facetNames: ["TempRepaymentFieldFacet"], + libraryNames: [], + facetLibraries: {}, + initArgs: [], + verbose: true, + object: !mock, + account: deployer + }); }); - }); ////// STEP 3: POPULATE THE BEANSTALK FIELD WITH DATA ////// // After the initialization of the repayment field is done and the shipments have been deployed @@ -450,8 +446,7 @@ module.exports = function () { account: owner }); console.log(" Shipment routes updated and new field created\n"); - } - ); + }); ////// STEP 5: TRANSFER OWNERSHIP OF PAYBACK CONTRACTS TO THE PCM ////// // The deployer will need to transfer ownership of the payback contracts to the PCM @@ -468,49 +463,49 @@ module.exports = function () { const mock = taskArgs.mock; const verbose = taskArgs.log; - let deployer; - if (mock) { - deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); - await mintEth(deployer.address); - } else { - deployer = (await ethers.getSigners())[0]; - } + let deployer; + if (mock) { + deployer = await impersonateSigner(BEANSTALK_SHIPMENTS_DEPLOYER); + await mintEth(deployer.address); + } else { + deployer = (await ethers.getSigners())[0]; + } - // Get addresses from cache - const cachedAddresses = getDeployedAddresses(); - if ( - !cachedAddresses || - !cachedAddresses.siloPayback || - !cachedAddresses.barnPayback || - !cachedAddresses.contractPaybackDistributor - ) { - throw new Error( - "Contract addresses not found in cache. Run 'npx hardhat deployPaybackContracts' first." + // Get addresses from cache + const cachedAddresses = getDeployedAddresses(); + if ( + !cachedAddresses || + !cachedAddresses.siloPayback || + !cachedAddresses.barnPayback || + !cachedAddresses.contractPaybackDistributor + ) { + throw new Error( + "Contract addresses not found in cache. Run 'npx hardhat deployPaybackContracts' first." + ); + } + + const siloPaybackContract = await ethers.getContractAt( + "SiloPayback", + cachedAddresses.siloPayback + ); + const barnPaybackContract = await ethers.getContractAt( + "BarnPayback", + cachedAddresses.barnPayback + ); + const contractPaybackDistributorContract = await ethers.getContractAt( + "ContractPaybackDistributor", + cachedAddresses.contractPaybackDistributor ); - } - const siloPaybackContract = await ethers.getContractAt( - "SiloPayback", - cachedAddresses.siloPayback - ); - const barnPaybackContract = await ethers.getContractAt( - "BarnPayback", - cachedAddresses.barnPayback - ); - const contractPaybackDistributorContract = await ethers.getContractAt( - "ContractPaybackDistributor", - cachedAddresses.contractPaybackDistributor - ); - - await transferContractOwnership({ - siloPaybackContract: siloPaybackContract, - barnPaybackContract: barnPaybackContract, - contractPaybackDistributorContract: contractPaybackDistributorContract, - deployer: deployer, - newOwner: L2_PCM, - verbose: verbose + await transferContractOwnership({ + siloPaybackContract: siloPaybackContract, + barnPaybackContract: barnPaybackContract, + contractPaybackDistributorContract: contractPaybackDistributorContract, + deployer: deployer, + newOwner: L2_PCM, + verbose: verbose + }); }); - }); ////// SEQUENTIAL ORCHESTRATION TASK ////// // Runs all beanstalk shipment tasks in the correct sequential order From f89955d019ff080b076f0ac205c54f1e90207250 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 22:35:18 -0500 Subject: [PATCH 267/270] Update repayment field populator address and add explicit gas limit for plot initialization --- scripts/beanstalkShipments/populateBeanstalkField.js | 11 ++++++++++- tasks/beanstalk-shipments.js | 2 +- test/hardhat/utils/constants.js | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/scripts/beanstalkShipments/populateBeanstalkField.js b/scripts/beanstalkShipments/populateBeanstalkField.js index 494769ac..9c65a61e 100644 --- a/scripts/beanstalkShipments/populateBeanstalkField.js +++ b/scripts/beanstalkShipments/populateBeanstalkField.js @@ -59,10 +59,19 @@ async function populateBeanstalkField({ diamondAddress, account, verbose, startF console.log("-----------------------------------"); } + // // Log accounts in this chunk for verification + // const chunkAccounts = plotChunks[i].map(entry => entry[0]); + // console.log(`\nšŸ“‹ Chunk ${i + 1} contains ${chunkAccounts.length} accounts:`); + // console.log(` First: ${chunkAccounts[0]}`); + // console.log(` Last: ${chunkAccounts[chunkAccounts.length - 1]}`); + // if (verbose) { + // console.log(` All accounts: ${chunkAccounts.join(', ')}`); + // } + try { await retryOperation( async () => { - const tx = await pintoDiamond.initializeRepaymentPlots(plotChunks[i]); + const tx = await pintoDiamond.initializeRepaymentPlots(plotChunks[i], { gasLimit: 15000000 }); const receipt = await verifyTransaction(tx, `Repayment plots chunk ${i + 1}`); if (verbose) { console.log(`⛽ Gas used: ${receipt.gasUsed.toString()}`); diff --git a/tasks/beanstalk-shipments.js b/tasks/beanstalk-shipments.js index d404e282..cfa378f0 100644 --- a/tasks/beanstalk-shipments.js +++ b/tasks/beanstalk-shipments.js @@ -364,7 +364,7 @@ module.exports = function () { ); await mintEth(repaymentFieldPopulator.address); } else { - repaymentFieldPopulator = (await ethers.getSigners())[2]; + repaymentFieldPopulator = (await ethers.getSigners())[0]; } // Populate the repayment field with data diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index 645f9eb3..5c4b6440 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -149,7 +149,7 @@ module.exports = { BEANSTALK_BARN_PAYBACK: "0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b", BEANSTALK_BARN_PAYBACK_IMPLEMENTATION: "0xeB447cE47107f0c7406716d60Ede2107CE73e5f2", // EOA that will populate the repayment field - BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR: "0xc4c66c8b199443a8dea5939ce175c3592e349791", + BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR: "0x00000015EE13a3C1fD0e8Dc2e8C2c8590D5B440B", // Contract Messenger // L1 Contract Messenger deployer From f47b0f426be2167bd4bd2c0a42f3fedfc6874ae4 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 22:38:12 -0500 Subject: [PATCH 268/270] Switch localhost to remote accounts and remove hardcoded private key from base network config --- hardhat.config.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index dfb3ac42..701d6a00 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -74,7 +74,7 @@ module.exports = { chainId: 1337, url: "http://127.0.0.1:8545/", timeout: 100000000000000000, - accounts: [process.env.PINTO_PK] + accounts: "remote" }, mainnet: { chainId: 1, @@ -89,8 +89,7 @@ module.exports = { base: { chainId: 8453, url: process.env.BASE_RPC || "", - timeout: 100000000, - accounts: [process.env.PINTO_PK] + timeout: 100000000 }, custom: { chainId: 41337, From 598db3fee4bef963a563aa9117ed95354ad12241 Mon Sep 17 00:00:00 2001 From: fr1j0 Date: Thu, 12 Feb 2026 22:47:40 -0500 Subject: [PATCH 269/270] Update payback contract addresses and refactor runLatestUpgrade task --- hardhat.config.js | 10 +++++++++- test/hardhat/utils/constants.js | 8 ++++---- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/hardhat.config.js b/hardhat.config.js index 701d6a00..02cebbe4 100644 --- a/hardhat.config.js +++ b/hardhat.config.js @@ -26,11 +26,19 @@ require("./tasks")(); // 4) at a block number (to make subsequent deployments faster). // - anvil --fork-url -disable-gas-limit --no-rate-limit --threads 0 --fork-block-number task("runLatestUpgrade", "Compiles the contracts").setAction(async function () { + setMock = true; // compile contracts. await hre.run("compile"); // run beanstalk shipments - await hre.run("runBeanstalkShipments", { skipPause: false, runStep0: false, step: "deploy" }); + await hre.run("finalizeBeanstalkShipments", { + mock: setMock + }); + + await hre.run("transferPaybackContractOwnership", { + mock: setMock, + log: true + }); }); task("callSunriseAndTestMigration", "Calls the sunrise function and tests the migration").setAction( diff --git a/test/hardhat/utils/constants.js b/test/hardhat/utils/constants.js index 5c4b6440..131b6a08 100644 --- a/test/hardhat/utils/constants.js +++ b/test/hardhat/utils/constants.js @@ -143,11 +143,11 @@ module.exports = { // EOA That will deploy the beanstalk shipment related contracts on base BEANSTALK_SHIPMENTS_DEPLOYER: "0x00000015EE13a3C1fD0e8Dc2e8C2c8590D5B440B", // Expected proxy address of the silo payback contract from deployer at nonce 1 - BEANSTALK_SILO_PAYBACK: "0x9E449a18155D4B03C2E08A4E28b2BcAE580efC4E", - BEANSTALK_SILO_PAYBACK_IMPLEMENTATION: "0x3E0635B980714303351DAeE305dB1A380C56ed38", + BEANSTALK_SILO_PAYBACK: "0xBa0534B16017E861bA15f1587D8A060e15F7f336", + BEANSTALK_SILO_PAYBACK_IMPLEMENTATION: "0xCebbDb437330a2f9049A4882918762Bc1A5fB582", // Expected proxy address of the barn payback contract from deployer at nonce 3 - BEANSTALK_BARN_PAYBACK: "0x71ad4dCd54B1ee0FA450D7F389bEaFF1C8602f9b", - BEANSTALK_BARN_PAYBACK_IMPLEMENTATION: "0xeB447cE47107f0c7406716d60Ede2107CE73e5f2", + BEANSTALK_BARN_PAYBACK: "0x724c87b9A6Ea6BA7A7CF3bfc0309DE778fB28027", + BEANSTALK_BARN_PAYBACK_IMPLEMENTATION: "0xd5a8E2FF523Cb3dB614A669c4044E908Ebaad041", // EOA that will populate the repayment field BEANSTALK_SHIPMENTS_REPAYMENT_FIELD_POPULATOR: "0x00000015EE13a3C1fD0e8Dc2e8C2c8590D5B440B", From 8416c98397885b7bbd0f3296097d853f25250562 Mon Sep 17 00:00:00 2001 From: "claude[bot]" <209825114+claude[bot]@users.noreply.github.com> Date: Sat, 14 Feb 2026 00:12:53 +0000 Subject: [PATCH 270/270] Rename convert capacity variables to reflect delta semantics MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changed variable names in the convert capacity call chain to better reflect that they now represent delta values (incremental amounts) rather than cumulative totals after the double-counting fix: - overallConvertCapacityUsed → overallCapacityDelta - inputTokenAmountUsed → inputTokenCapacityDelta - outputTokenAmountUsed → outputTokenCapacityDelta This addresses the naming confusion identified in code review where variables suggested cumulative semantics but actually contained deltas. šŸ¤– Generated with [Claude Code](https://claude.ai/code) Co-authored-by: frijo --- contracts/libraries/Convert/LibConvert.sol | 24 +++++++++++----------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/contracts/libraries/Convert/LibConvert.sol b/contracts/libraries/Convert/LibConvert.sol index a537e0eb..e8af0dda 100644 --- a/contracts/libraries/Convert/LibConvert.sol +++ b/contracts/libraries/Convert/LibConvert.sol @@ -195,15 +195,15 @@ library LibConvert { address outputToken ) internal returns (uint256 stalkPenaltyBdv) { AppStorage storage s = LibAppStorage.diamondStorage(); - uint256 overallConvertCapacityUsed; - uint256 inputTokenAmountUsed; - uint256 outputTokenAmountUsed; + uint256 overallCapacityDelta; + uint256 inputTokenCapacityDelta; + uint256 outputTokenCapacityDelta; ( stalkPenaltyBdv, - overallConvertCapacityUsed, - inputTokenAmountUsed, - outputTokenAmountUsed + overallCapacityDelta, + inputTokenCapacityDelta, + outputTokenCapacityDelta ) = calculateStalkPenalty( dbs, bdvConverted, @@ -215,14 +215,14 @@ library LibConvert { // Update penalties in storage. ConvertCapacity storage convertCap = s.sys.convertCapacity[block.number]; convertCap.overallConvertCapacityUsed = convertCap.overallConvertCapacityUsed.add( - overallConvertCapacityUsed + overallCapacityDelta ); convertCap.wellConvertCapacityUsed[inputToken] = convertCap .wellConvertCapacityUsed[inputToken] - .add(inputTokenAmountUsed); + .add(inputTokenCapacityDelta); convertCap.wellConvertCapacityUsed[outputToken] = convertCap .wellConvertCapacityUsed[outputToken] - .add(outputTokenAmountUsed); + .add(outputTokenCapacityDelta); } ////// Stalk Penalty Calculations ////// @@ -241,9 +241,9 @@ library LibConvert { view returns ( uint256 stalkPenaltyBdv, - uint256 overallConvertCapacityUsed, - uint256 inputTokenAmountUsed, - uint256 outputTokenAmountUsed + uint256 overallCapacityDelta, + uint256 inputTokenCapacityDelta, + uint256 outputTokenCapacityDelta ) { StalkPenaltyData memory spd;